@font-face {
    font-family: 'Kapra';
    src: url('fonts/Kapra/Kapra-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Kapra';
    src: url('fonts/Kapra/Kapra-RegularItalic.otf') format('opentype');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Kapra';
    src: url('fonts/Kapra/Kapra-Bold.otf') format('opentype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Kapra';
    src: url('fonts/Kapra/Kapra-ExtraBold.otf') format('opentype');
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: 'Mark Pro';
    src: url('fonts/Mark Pro/MarkPro.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Mark Pro';
    src: url('fonts/Mark Pro/MarkPro-Book.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Mark Pro';
    src: url('fonts/Mark Pro/MarkPro-BoldItalic.otf') format('opentype');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Mark Pro';
    src: url('fonts/Mark Pro/MarkPro-Black 2.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Mark Pro';
    src: url('fonts/Mark Pro/MarkPro-BlackItalic.otf') format('opentype');
    font-weight: 900;
    font-style: italic;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: #000;
    color: #fff;
    overflow-x: hidden;
}

.parallax-section {
    position: relative;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), var(--bg-image);
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 4rem 2rem;
}

.content {
    text-align: center;
    padding: 2rem;
    max-width: 800px;
    width: 100%;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 10px;
    backdrop-filter: blur(8px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    z-index: 1;
    /* Ensure content is on top */
}

h1 {
    font-size: 4rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
    letter-spacing: 5px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Kapra', sans-serif;
}

p {
    font-family: 'Mark Pro', sans-serif;
    font-size: 1.5rem;
    line-height: 1.6;
}

.columns {
    display: flex;
    justify-content: center;
    gap: 5rem;
    text-align: left;
    margin-top: 1rem;
}

.column {
    flex: 1;
    max-width: 500px;
}

.column h2 {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    border-bottom: 2px solid white;
    padding-bottom: 0.5rem;
    text-transform: uppercase;
    letter-spacing: 2px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    h1 {
        font-size: 2.5rem;
    }

    p {
        font-size: 1.2rem;
    }

    .columns {
        flex-direction: column;
        gap: 2rem;
    }

    .column h2 {
        font-size: 2rem;
    }

    .parallax-section::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        /* Oscurecer el fondo */
        z-index: 0;
        pointer-events: none;
    }

    .parallax-section .content,
    .parallax-section .bottom-logos {
        position: relative;
        z-index: 1;
    }
}

/* Custom styling for the Enlace hero section */
#enlace {
    background-image: var(--bg-image);
    /* Remove the dark gradient overlay for this specific slide */
    justify-content: flex-start;
    padding-left: 10%;
}

#enlace .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 500px;
    padding: 0;
}

#enlace h1 {
    text-align: left;
    margin-bottom: 0.5rem;
}

#enlace h1 img {
    max-width: 100%;
    height: auto;
}

#enlace p {
    font-size: 1.4rem;
    line-height: 1.3;
}

@media (max-width: 768px) {
    #enlace {
        padding-left: 5%;
        padding-right: 5%;
    }

    #enlace .content {
        max-width: 100%;
    }
}

/* Custom styling for the Why Enlace section */
#why-enlace {
    background-image: var(--bg-image);
    justify-content: flex-end;
    padding-right: 10%;
}

#why-enlace .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 650px;
    padding: 0;
}

#why-enlace h1 {
    font-size: 5rem;
    font-weight: 500;
    letter-spacing: 2px;
    margin-bottom: 1.5rem;
    text-align: left;
}

#why-enlace .points p {
    font-size: 1.1rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

#why-enlace .points strong {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.5;
}

#why-enlace .quote {
    font-size: 1rem;
    line-height: 1.4;
    margin-top: 2rem;
}

@media (max-width: 768px) {
    #why-enlace {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #why-enlace h1 {
        font-size: 3rem;
    }

    #why-enlace .content {
        max-width: 100%;
    }
}

/* Custom styling for the Join the Vision section */
#join-the-vision {
    background-image: var(--bg-image);
    justify-content: flex-start;
    padding-left: 10%;
}

#join-the-vision .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 100%;
    width: 100%;
    padding: 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 4rem;
}

#join-the-vision .text-block {
    flex: 1;
    max-width: 500px;
}

#join-the-vision .form-block {
    flex: 1;
    max-width: 500px;
    background: rgba(255, 255, 255, 0.1);
    padding: 2.5rem;
    border-radius: 10px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

#join-the-vision .form-group {
    margin-bottom: 1.5rem;
}

#join-the-vision label {
    display: block;
    font-size: 1.1rem;
    margin-bottom: 0.5rem;
    font-weight: bold;
    color: white;
}

#join-the-vision .required {
    color: #ef9a9a;
}

#join-the-vision input[type="text"],
#join-the-vision input[type="tel"],
#join-the-vision input[type="email"],
#join-the-vision textarea {
    width: 100%;
    padding: 0.8rem;
    border: none;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.9);
    font-family: inherit;
    font-size: 1rem;
    color: #333;
    box-sizing: border-box;
}

#join-the-vision textarea {
    resize: vertical;
}

#join-the-vision .submit-btn {
    background-color: rgba(69, 39, 160, 0.9);
    color: white;
    border: 2px solid transparent;
    padding: 1rem 2rem;
    font-size: 1.2rem;
    font-weight: bold;
    font-style: italic;
    cursor: pointer;
    border-radius: 5px;
    transition: all 0.3s ease;
    width: 100%;
    text-transform: uppercase;
}

#join-the-vision .submit-btn:hover {
    background-color: transparent;
    border-color: white;
}

#join-the-vision h1 {
    font-size: 4.5rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    /* Try to match the condensed, bold font from the image */
    text-transform: uppercase;
    line-height: 1.1;
    margin-bottom: 2rem;
    letter-spacing: 1px;
}

#join-the-vision p {
    font-size: 1.3rem;
    line-height: 1.4;
    margin-bottom: 0.5rem;
}

#join-the-vision .contact-box {
    background-color: rgba(69, 39, 160, 0.8);
    /* Dark purple background */
    display: inline-block;
    padding: 0.5rem 1.5rem;
    margin: 1rem 0 2rem;
}

#join-the-vision .contact-box a {
    color: white;
    font-size: 1.5rem;
    font-weight: bold;
    font-style: italic;
    text-decoration: none;
}

@media (max-width: 768px) {
    #join-the-vision {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #join-the-vision h1 {
        font-size: 3rem;
    }

    #join-the-vision .content {
        max-width: 100%;
        flex-direction: column;
        gap: 3rem;
    }

    #join-the-vision .form-block,
    #join-the-vision .text-block {
        max-width: 100%;
        width: 100%;
    }
}

/* Custom styling for Partnership Opportunities section */
#partnerships-opportunities {
    background-image: var(--bg-image);
    justify-content: flex-end;
    padding-right: 5%;
}

#partnerships-opportunities .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 600px;
    padding: 0;
}

#partnerships-opportunities h1 {
    font-size: 4.5rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 1;
    margin-bottom: 1.5rem;
    letter-spacing: 1px;
}

#partnerships-opportunities>.content>p:first-of-type {
    font-size: 1.15rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

#partnerships-opportunities .list-section h2 {
    font-size: 1.15rem;
    font-weight: bold;
    margin-top: 0.5rem;
    margin-bottom: 0.1rem;
}

#partnerships-opportunities .list-section ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0.5rem;
}

#partnerships-opportunities .list-section ul li {
    font-size: 1.15rem;
    line-height: 1.3;
}

#partnerships-opportunities .list-section ul li::before {
    content: "• ";
}

#partnerships-opportunities .list-section p {
    font-size: 1.15rem;
    line-height: 1.3;
    margin-top: 0.2rem;
    margin-bottom: 0;
}

@media (max-width: 768px) {
    #partnerships-opportunities {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #partnerships-opportunities h1 {
        font-size: 3rem;
    }

    #partnerships-opportunities .content {
        max-width: 100%;
    }
}

/* Custom styling for Smart Devices section */
#smart-devices {
    background-image: var(--bg-image);
    justify-content: flex-end;
    padding-left: 0;
    padding-right: 5%;
}

#smart-devices .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: right;
    max-width: 100%;
    width: 100%;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

#smart-devices .text-block {
    flex: 0 0 600px;
    /* Limit the max width of text block */
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    /* Align right */
}

#smart-devices .image-block {
    flex: 1;
    /* Take up the remaining space */
    display: flex;
    justify-content: flex-start;
    /* Align image completely to the left */
    align-items: center;
}

#smart-devices .devices-image {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    max-height: 80vh;
    margin-left: 0;
    /* Align left */
}

#smart-devices .bottom-logos {
    position: absolute;
    bottom: 2%;
    left: 50%;
    transform: translateX(calc(-50% + 240px));
    width: 80%;
    text-align: center;
    z-index: 2;
}

#smart-devices .platform-logos-img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

#smart-devices h1 {
    font-size: 6rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 0.9;
    margin-bottom: 2rem;
    letter-spacing: 2px;
}

#smart-devices p {
    font-size: 1.25rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

#smart-devices strong {
    font-weight: bold;
}

@media (max-width: 768px) {
    #smart-devices {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
        flex-direction: column;
        align-items: center;
    }

    #smart-devices h1 {
        font-size: 3.5rem;
    }

    #smart-devices .content {
        max-width: 100%;
        flex-direction: column-reverse;
        /* Put image above text or below? Let's keep it below text or above. Usually text then image on mobile, so column-reverse makes image at bottom. Wait, column-reverse makes the first item (image) go to bottom. Or just column to let image stay on top. Let's use column. */
        text-align: center;
        gap: 2rem;
    }

    #smart-devices .text-block {
        align-items: center;
        flex: 1;
    }

    #smart-devices .image-block {
        justify-content: center;
    }

    #smart-devices .bottom-logos {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        width: 100%;
        margin-top: 2rem;
    }
}

/* Custom styling for Enlace Plus section */
#enlace-plus {
    background-image: var(--bg-image);
    justify-content: flex-end;
    padding-left: 0;
    padding-right: 5%;
}

#enlace-plus .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 100%;
    width: 100%;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4rem;
}

#enlace-plus .image-block {
    flex: 1.2;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
}

#enlace-plus .text-block {
    flex: 0 0 520px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

#enlace-plus .enlace-plus-image {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    max-height: 85vh;
    margin-left: 31%;
    /* Pull it towards the left edge */
}

#enlace-plus h1 {
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
    justify-content: flex-start;
}

#enlace-plus h1 img {
    height: 5rem;
    width: auto;
}

#enlace-plus h1 sup {
    font-size: 4rem;
    font-weight: bold;
    line-height: 0;
    margin-left: -0.2rem;
    margin-top: -3.5rem;
}

#enlace-plus p {
    font-size: 1.35rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

#enlace-plus strong {
    font-weight: bold;
}

@media (max-width: 768px) {
    #enlace-plus {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #enlace-plus .content {
        max-width: 100%;
        flex-direction: column-reverse;
        /* Image above text on mobile */
        text-align: center;
        gap: 2rem;
    }

    #enlace-plus .text-block {
        align-items: center;
        flex: 1;
    }

    #enlace-plus .image-block {
        justify-content: center;
    }

    #enlace-plus .enlace-plus-image {
        margin-left: 0;
    }
}

/* Custom styling for Reach section */
#reach {
    background-image: var(--bg-image);
    justify-content: flex-start;
    padding-left: 10%;
}

#reach .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    padding: 0;
    max-width: 550px;
}

#reach .text-block {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

#reach .subtitle {
    background-color: #4A148C;
    /* Deep purple matching image */
    color: white;
    padding: 0.3rem 1.2rem;
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.4rem;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

#reach h1 {
    font-size: 8rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 0.8;
    letter-spacing: 2px;
    margin-bottom: 1.5rem;
    width: 100%;
    text-align: right;
}

#reach .desc {
    align-self: flex-end;
    /* Push to the right edge of text-block */
    text-align: right;
    /* Right align the paragraph text */
    font-size: 1.35rem;
    line-height: 1.4;
}

#reach .desc strong {
    font-weight: bold;
}

@media (max-width: 768px) {
    #reach {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #reach h1 {
        font-size: 5rem;
        text-align: center;
    }

    #reach .content {
        max-width: 100%;
    }

    #reach .text-block {
        align-items: center;
    }

    #reach .desc {
        align-self: center;
        text-align: center;
    }
}

/* Custom styling for Trusted Partners section */
#trusted-partners {
    background-image: var(--bg-image);
    justify-content: flex-start;
    padding-left: 5%;
    padding-right: 30px;
}

#trusted-partners .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 100%;
    width: 100%;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

#trusted-partners .text-block {
    flex: 0 0 600px;
    /* Don't grow or shrink, stay at exactly 600px max */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

#trusted-partners .image-block {
    flex: 1;
    /* Take up the remaining space */
    display: flex;
    justify-content: flex-end;
    /* Align image completely to the right */
    align-items: center;
}

#trusted-partners .trusted-logos {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    max-height: 80vh;
    margin-right: 0;
    /* Pegado completamente a la derecha */
}

#trusted-partners h1 {
    font-size: 5.5rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 0.95;
    margin-bottom: 2rem;
    letter-spacing: 1px;
}

#trusted-partners p {
    font-size: 1.35rem;
    line-height: 1.4;
    margin-bottom: 1.5rem;
}

@media (max-width: 768px) {
    #trusted-partners {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #trusted-partners h1 {
        font-size: 3.5rem;
    }

    #trusted-partners .content {
        max-width: 100%;
        flex-direction: column;
        text-align: center;
        gap: 2rem;
    }

    #trusted-partners .text-block {
        align-items: center;
    }

    #trusted-partners .image-block {
        justify-content: center;
    }
}

/* Custom styling for Programming Overview section */
#programming-overview {
    background-image: var(--bg-image);
    justify-content: flex-start;
    padding-left: 10%;
}

#programming-overview .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 500px;
    padding: 0;
}

#programming-overview h1 {
    font-size: 6rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 0.95;
    margin-bottom: 2rem;
    letter-spacing: 1px;
}

#programming-overview p {
    font-size: 1.25rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

@media (max-width: 768px) {
    #programming-overview {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #programming-overview h1 {
        font-size: 4rem;
    }

    #programming-overview .content {
        max-width: 100%;
    }
}

/* Custom styling for Programming Focus section */
#programming-focus {
    background-image: var(--bg-image);
    justify-content: flex-start;
    padding-left: 10%;
}

#programming-focus .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 500px;
    padding: 0;
}

#programming-focus h1 {
    font-size: 6rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 0.95;
    margin-bottom: 1.5rem;
    letter-spacing: 1px;
}

#programming-focus p {
    font-size: 1.25rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

#programming-focus p.stats {
    font-size: 1.25rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

#programming-focus p.stats strong {
    font-weight: bold;
}

@media (max-width: 768px) {
    #programming-focus {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #programming-focus h1 {
        font-size: 4rem;
    }

    #programming-focus .content {
        max-width: 100%;
    }
}

/* Custom styling for Our Audience section */
#our-audience {
    background-image: var(--bg-image);
    justify-content: flex-start;
    padding-left: 10%;
}

#our-audience .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 550px;
    padding: 0;
}

#our-audience h1 {
    font-size: 5.5rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 0.95;
    margin-bottom: 2.5rem;
    letter-spacing: 1px;
}

#our-audience .list-section h2 {
    font-size: 1.15rem;
    font-weight: bold;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
}

#our-audience .list-section p {
    font-size: 1.15rem;
    line-height: 1.3;
    margin-bottom: 0.5rem;
}

#our-audience .list-section ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 1rem;
}

#our-audience .list-section ul li {
    font-size: 1.15rem;
    line-height: 1.3;
    margin-bottom: 0.2rem;
}

#our-audience .list-section ul li::before {
    content: "• ";
}

@media (max-width: 768px) {
    #our-audience {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #our-audience h1 {
        font-size: 3.5rem;
    }

    #our-audience .content {
        max-width: 100%;
    }
}

/* Custom styling for LA and US section */
#la-and-us {
    background-image: var(--bg-image);
}

#la-and-us .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 1100px;
    padding: 0;
    width: 100%;
}

#la-us-columns {
    align-items: flex-start;
    gap: 4rem;
    margin-top: 0;
}

#la-and-us h2 {
    font-size: 5rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 0.95;
    margin-bottom: 0.2rem;
    letter-spacing: 1px;
    border-bottom: none;
    padding-bottom: 0;
}

#la-and-us .highlight-bar {
    background-color: #c9af35;
    /* Gold/yellow matching the image */
    color: #1a1a1a;
    display: inline-block;
    padding: 0.1rem 0.5rem;
    font-size: 1.1rem;
    margin-bottom: 1.5rem;
}

#la-and-us p {
    font-size: 1.25rem;
    line-height: 1.3;
    margin-bottom: 1.5rem;
    font-weight: normal;
}

#la-and-us p strong {
    font-weight: bold;
}

@media (max-width: 768px) {
    #la-us-columns {
        gap: 2rem;
    }

    #la-and-us h2 {
        font-size: 3.5rem;
    }

    #la-and-us .content {
        max-width: 100%;
        padding: 0 5%;
    }
}

/* Custom styling for Coverage section */
#coverage {
    background-image: var(--bg-image);
    justify-content: flex-start;
    padding-left: 5%;
    padding-right: 0;
    overflow: hidden;
    /* Prevent horizontal scrolling from the large image */
}

#coverage .content {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    text-align: left;
    max-width: 100%;
    width: 100%;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

#coverage .text-block {
    flex: 0 0 500px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

#coverage .image-block {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

#coverage .coverage-image {
    width: 50vw;
    /* Make it depend on viewport width so it's consistently large */
    height: auto;
    object-fit: contain;
    margin-right: 4vw;
    /* Pull it to the right */
    transform: translateY(-2%);
    /* Adjust vertically */
}

#coverage h1 {
    font-size: 6.5rem;
    font-weight: bold;
    font-family: 'Kapra', sans-serif;
    text-transform: uppercase;
    line-height: 0.95;
    margin-bottom: 2rem;
    letter-spacing: 1px;
}

#coverage p {
    font-size: 1.45rem;
    line-height: 1.4;
}

#coverage p strong {
    font-weight: bold;
}

@media (max-width: 768px) {
    #coverage {
        padding-left: 5%;
        padding-right: 5%;
        justify-content: center;
    }

    #coverage h1 {
        font-size: 4rem;
    }

    #coverage .content {
        max-width: 100%;
        flex-direction: column;
        text-align: center;
        gap: 2rem;
    }

    #coverage .text-block {
        align-items: center;
        flex: 1;
    }

    #coverage .image-block {
        justify-content: center;
    }

    #coverage .coverage-image {
        width: 100%;
        margin-right: 0;
        transform: none;
    }
}

/* Scroll Animations */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.animate-on-scroll.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Language Switcher */
.language-switcher {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 10000;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 8px 16px;
    border-radius: 30px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.language-switcher:hover {
    background: rgba(0, 0, 0, 0.7);
    border-color: rgba(255, 255, 255, 0.4);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.5);
}

.lang-btn {
    color: rgba(255, 255, 255, 0.6);
    text-decoration: none;
    font-family: 'Mark Pro', sans-serif;
    font-weight: bold;
    font-size: 0.9rem;
    transition: color 0.3s ease;
}

.lang-btn:hover {
    color: #fff;
}

.lang-btn.active {
    color: #fff;
    pointer-events: none;
}

.lang-separator {
    color: rgba(255, 255, 255, 0.3);
    font-size: 0.9rem;
}

@media (max-width: 768px) {
    .language-switcher {
        top: 15px;
        right: 15px;
        padding: 6px 12px;
    }
}