/* Header desktop final:
   - glass blur transparente
   - texto blanco por defecto
   - texto oscuro SOLO en páginas claras: Jets y VIP Services
   - sin cambio global a oscuro al hacer scroll
*/

@media (min-width: 769px) {
    body .main-header,
    html body .main-header#mainHeader,
    body .main-header.scrolled,
    html body .main-header#mainHeader.scrolled {
        height: auto !important;
        min-height: 96px !important;

        /* blur transparente neutral, sin azul sólido */
        background: rgba(0,0,0,0.10) !important;
        background-image: none !important;

        backdrop-filter: blur(18px) saturate(118%) !important;
        -webkit-backdrop-filter: blur(18px) saturate(118%) !important;

        border-bottom: 1px solid rgba(255,255,255,0.12) !important;
        box-shadow: 0 8px 28px rgba(0,0,0,0.08) !important;
        overflow: visible !important;
    }

    body .main-header .container.header-inner,
    html body .main-header#mainHeader .container.header-inner {
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
        min-height: 96px !important;
        padding: .42rem clamp(1.5rem, 4vw, 5rem) .36rem !important;

        display: grid !important;
        grid-template-columns: auto 1fr auto !important;
        grid-template-areas:
            "logo top right"
            "nav nav nav" !important;

        align-items: center !important;
        align-content: center !important;
        column-gap: 1rem !important;
        row-gap: .12rem !important;
        overflow: visible !important;

        background: transparent !important;
        box-shadow: none !important;
    }

    body .main-header .logo,
    body .main-header .logo-text,
    body .main-header .logo-with-icon {
        grid-area: logo !important;
        justify-self: start !important;
        align-self: center !important;
        white-space: nowrap !important;
        margin: 0 !important;
        flex: none !important;
    }

    body .main-header .header-logo-icon {
        width: 32px !important;
        height: 32px !important;
        flex: 0 0 32px !important;
        opacity: .92 !important;
        filter: none !important;
    }

    body .main-header .logo-with-icon span {
        font-size: clamp(1.08rem, 1.35vw, 1.45rem) !important;
        letter-spacing: .08em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body .main-header .header-right {
        grid-area: right !important;
        justify-self: end !important;
        align-self: center !important;
        display: flex !important;
        align-items: center !important;
        gap: .55rem !important;
        margin: 0 !important;
        flex: none !important;
        white-space: nowrap !important;
    }

    body .main-header .lang-switcher,
    body .main-header .lang-switcher a,
    body .main-header .lang-switcher span {
        font-size: .76rem !important;
        line-height: 1 !important;
        letter-spacing: .08em !important;
        white-space: nowrap !important;
    }

    body .main-header .btn-header-wa {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        font-size: .9rem !important;
    }

    body .main-header .main-nav {
        grid-area: nav !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 auto !important;
        padding: 0 !important;
        overflow: visible !important;
        background: transparent !important;
    }

    body .main-header .main-nav ul {
        width: min(100%, 1620px) !important;
        margin: 0 auto !important;
        padding: 0 !important;

        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: center !important;

        gap: .08rem .14rem !important;
        row-gap: .10rem !important;
        overflow: visible !important;

        background: transparent !important;
    }

    body .main-header .main-nav li {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: 0 0 auto !important;
        background: transparent !important;
    }

    body .main-header .main-nav a {
        display: block !important;
        font-size: clamp(.60rem, .65vw, .75rem) !important;
        line-height: 1 !important;
        letter-spacing: .04em !important;
        font-weight: 600 !important;
        padding: .36rem .36rem !important;
        white-space: nowrap !important;
        border-radius: 0 !important;
        position: relative !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    body .main-header .main-nav a::after {
        content: "" !important;
        position: absolute !important;
        left: .36rem !important;
        right: .36rem !important;
        bottom: .13rem !important;
        height: 1px !important;
        transform: scaleX(0) !important;
        transform-origin: center !important;
        transition: transform .22s ease !important;
        opacity: .95 !important;
    }

    body .main-header .main-nav a:hover::after,
    body .main-header .main-nav a.active::after {
        transform: scaleX(1) !important;
    }
}

/* DEFAULT GENERAL: texto blanco para todo el sitio */
@media (min-width: 769px) {
    body .main-header .logo-with-icon span,
    body .main-header .main-nav a,
    body .main-header .lang-switcher,
    body .main-header .lang-switcher a,
    body .main-header .lang-switcher span,
    body.header-scrolled .main-header .logo-with-icon span,
    body.header-scrolled .main-header .main-nav a,
    body.header-scrolled .main-header .lang-switcher,
    body.header-scrolled .main-header .lang-switcher a,
    body.header-scrolled .main-header .lang-switcher span,
    body .main-header.scrolled .logo-with-icon span,
    body .main-header.scrolled .main-nav a,
    body .main-header.scrolled .lang-switcher,
    body .main-header.scrolled .lang-switcher a,
    body .main-header.scrolled .lang-switcher span {
        color: rgba(255,255,255,.92) !important;
        text-shadow: 0 1px 14px rgba(0,0,0,.55) !important;
    }

    body .main-header .main-nav a::after,
    body.header-scrolled .main-header .main-nav a::after,
    body .main-header.scrolled .main-nav a::after {
        background: var(--tva-gold) !important;
    }

    body .main-header .main-nav a:hover,
    body .main-header .main-nav a.active,
    body .main-header .lang-switcher a.active,
    body.header-scrolled .main-header .main-nav a:hover,
    body.header-scrolled .main-header .main-nav a.active,
    body.header-scrolled .main-header .lang-switcher a.active,
    body .main-header.scrolled .main-nav a:hover,
    body .main-header.scrolled .main-nav a.active,
    body .main-header.scrolled .lang-switcher a.active {
        color: var(--tva-gold) !important;
        background: transparent !important;
    }
}

/* PÁGINAS CLARAS: solo aquí texto oscuro */
@media (min-width: 769px) {
    body.page-jets .main-header,
    body.page-vip-services .main-header {
        background: rgba(255,255,255,.18) !important;
        backdrop-filter: blur(20px) saturate(120%) !important;
        -webkit-backdrop-filter: blur(20px) saturate(120%) !important;
        border-bottom: 1px solid rgba(7,24,39,.08) !important;
        box-shadow: 0 8px 26px rgba(7,24,39,.05) !important;
    }

    body.page-jets .main-header .logo-with-icon span,
    body.page-jets .main-header .main-nav a,
    body.page-jets .main-header .lang-switcher,
    body.page-jets .main-header .lang-switcher a,
    body.page-jets .main-header .lang-switcher span,
    body.page-vip-services .main-header .logo-with-icon span,
    body.page-vip-services .main-header .main-nav a,
    body.page-vip-services .main-header .lang-switcher,
    body.page-vip-services .main-header .lang-switcher a,
    body.page-vip-services .main-header .lang-switcher span {
        color: rgba(7,24,39,.78) !important;
        text-shadow: 0 1px 12px rgba(255,255,255,.86) !important;
    }

    body.page-jets .main-header .header-logo-icon,
    body.page-vip-services .main-header .header-logo-icon {
        filter: brightness(0) saturate(100%) invert(9%) sepia(32%) saturate(1380%) hue-rotate(169deg) brightness(90%) contrast(98%) !important;
        opacity: .82 !important;
    }

    body.page-jets .main-header .main-nav a::after,
    body.page-vip-services .main-header .main-nav a::after {
        background: #0f4c81 !important;
    }

    body.page-jets .main-header .main-nav a:hover,
    body.page-jets .main-header .main-nav a.active,
    body.page-jets .main-header .lang-switcher a.active,
    body.page-vip-services .main-header .main-nav a:hover,
    body.page-vip-services .main-header .main-nav a.active,
    body.page-vip-services .main-header .lang-switcher a.active {
        color: #0f4c81 !important;
        background: transparent !important;
    }
}

/* Pantallas grandes */
@media (min-width: 1500px) {
    body .main-header,
    html body .main-header#mainHeader {
        min-height: 98px !important;
    }

    body .main-header .container.header-inner,
    html body .main-header#mainHeader .container.header-inner {
        min-height: 98px !important;
        padding-top: .46rem !important;
        padding-bottom: .38rem !important;
    }

    body .main-header .main-nav a {
        font-size: .72rem !important;
        padding-left: .46rem !important;
        padding-right: .46rem !important;
    }
}

/* Laptops */
@media (min-width: 769px) and (max-width: 1280px) {
    body .main-header,
    html body .main-header#mainHeader {
        min-height: 114px !important;
    }

    body .main-header .container.header-inner,
    html body .main-header#mainHeader .container.header-inner {
        min-height: 114px !important;
        padding-left: 1.2rem !important;
        padding-right: 1.2rem !important;
        row-gap: .12rem !important;
    }

    body .main-header .logo-with-icon span {
        font-size: 1rem !important;
        letter-spacing: .07em !important;
    }

    body .main-header .header-logo-icon {
        width: 29px !important;
        height: 29px !important;
        flex-basis: 29px !important;
    }

    body .main-header .main-nav a {
        font-size: .57rem !important;
        padding: .31rem .25rem !important;
        letter-spacing: .035em !important;
    }
}
