/* Sitewide editorial shell — body.wia-editorial (after site.css + mobile-menu.css) */

body.wia-editorial {
    scroll-padding-top: 96px;
}

body.wia-editorial ::selection {
    background: rgba(250, 248, 245, 0.25);
    color: inherit;
}

body.wia-editorial .skip-link:focus {
    outline: 2px solid rgba(250, 248, 245, 0.95);
    outline-offset: 3px;
}

/* Marca en el header — más compacta para dejar aire al menú */
body.wia-editorial .site-logo {
    font-size: clamp(0.92rem, 1.65vw, 1.08rem);
    line-height: 1.15;
}

/*
 * Barra oscura global (páginas internas): logo serif claro, HOME pastilla oscura,
 * VILLAS crema, BOOK oscura, resto texto claro — la home sobre vídeo sigue en home.css;
 * al hacer scroll la home usa el mismo sistema (home.css .site-header--scrolled).
 */
body.wia-editorial:not(.home-page) .site-header {
    background: linear-gradient(180deg, #0c0a09 0%, #141110 48%, #0d0b0a 100%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

body.wia-editorial:not(.home-page) .site-logo {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #faf8f5;
    text-shadow: 0 2px 24px rgba(0, 0, 0, 0.45);
}

/* Base menú desktop */
body.wia-editorial:not(.home-page) .site-header .site-menu a {
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    border-radius: 999px;
    padding: 10px 14px;
}

/* Enlaces planos (Destinations, Services, About, FAQ, Contact, …) */
body.wia-editorial:not(.home-page) .site-header .site-menu > a:not([href="index.html"]):not([href="villas.html"]):not(.nav-book) {
    background: transparent !important;
    color: rgba(250, 248, 245, 0.94) !important;
    border: 1px solid transparent !important;
    box-shadow: none !important;
}

body.wia-editorial:not(.home-page) .site-header .site-menu > a:not([href="index.html"]):not([href="villas.html"]):not(.nav-book):hover,
body.wia-editorial:not(.home-page) .site-header .site-menu > a:not([href="index.html"]):not([href="villas.html"]):not(.nav-book)[aria-current="page"] {
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
}

/* HOME — pastilla oscura semitransparente */
body.wia-editorial:not(.home-page) .site-header .site-menu > a[href="index.html"] {
    background: rgba(255, 255, 255, 0.11) !important;
    color: #fff !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.25) !important;
}

body.wia-editorial:not(.home-page) .site-header .site-menu > a[href="index.html"]:hover,
body.wia-editorial:not(.home-page) .site-header .site-menu > a[href="index.html"][aria-current="page"] {
    background: rgba(255, 255, 255, 0.16) !important;
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.22) !important;
}

/* VILLAS — pastilla crema */
body.wia-editorial:not(.home-page) .site-header .site-menu > a[href="villas.html"] {
    background: #fffef9 !important;
    color: #1a1512 !important;
    border: 1px solid rgba(255, 255, 255, 0.42) !important;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.22) !important;
}

body.wia-editorial:not(.home-page) .site-header .site-menu > a[href="villas.html"]:hover,
body.wia-editorial:not(.home-page) .site-header .site-menu > a[href="villas.html"][aria-current="page"] {
    background: #ffffff !important;
    color: #1a1512 !important;
    border-color: rgba(255, 255, 255, 0.55) !important;
}

/* BOOK — pastilla oscura sólida */
body.wia-editorial:not(.home-page) .site-header .site-menu .nav-book {
    background: #1a1512 !important;
    color: #faf8f5 !important;
    border: 1px solid rgba(0, 0, 0, 0.45) !important;
    box-shadow: 0 10px 32px rgba(0, 0, 0, 0.35) !important;
}

body.wia-editorial:not(.home-page) .site-header .site-menu .nav-book:hover {
    background: #2a221d !important;
    color: #faf8f5 !important;
}

/* About hero: texto + video en dos columnas */
body.wia-editorial .page-hero-content--about {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 520px);
    gap: 28px;
    align-items: start;
}

body.wia-editorial .about-hero-copy {
    min-width: 0;
}

body.wia-editorial .about-hero-copy h1 {
    margin-bottom: clamp(22px, 2.8vw, 34px);
}

body.wia-editorial .about-hero-copy p {
    margin-top: 0;
}

body.wia-editorial .about-hero-copy p + p {
    margin-top: 18px;
}

body.wia-editorial .page-hero--about h1,
body.wia-editorial .page-hero--about p {
    overflow-wrap: anywhere;
}

body.wia-editorial .about-hero-video {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    background: #0d0b0a;
    border: 1px solid rgba(26, 21, 18, 0.12);
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.18);
    aspect-ratio: 9 / 16;
}

body.wia-editorial .about-hero-video iframe {
    position: absolute;
    left: 0;
    top: -11%;
    width: 100%;
    height: 122%;
    border: 0;
    display: block;
    pointer-events: none;
}

body.wia-editorial .about-hero-video::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.35) 8%, transparent 16%),
        linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.35) 8%, transparent 16%);
}

/* Destinations hero: texto + video */
body.wia-editorial .page-hero-content--destinos {
    display: grid;
    max-width: 1220px;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 560px);
    gap: clamp(28px, 4vw, 62px);
    align-items: start;
}

body.wia-editorial .destinos-hero-copy {
    min-width: 0;
}

body.wia-editorial .destinos-hero-copy h1 {
    max-width: 9.2ch;
    font-size: clamp(3rem, 5.5vw, 5.2rem);
    line-height: 0.9;
    margin-bottom: clamp(20px, 2.8vw, 34px);
}

body.wia-editorial .destinos-hero-copy p {
    margin-top: 0;
    max-width: 58ch;
}

body.wia-editorial .destinos-hero-copy p + .pill-nav {
    margin-top: 18px;
}

body.wia-editorial .destinos-hero-video {
    position: relative;
    overflow: hidden;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
    background: #0d0b0a;
    border: 1px solid rgba(26, 21, 18, 0.12);
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.16);
    max-width: 560px;
    width: 100%;
    justify-self: end;
    transform: translateX(12px);
}

body.wia-editorial .destinos-hero-video iframe {
    position: absolute;
    left: 50%;
    top: 45%;
    width: 164%;
    height: 116%;
    transform: translate(-50%, -50%) scale(1);
    border: 0;
    display: block;
    pointer-events: none;
    z-index: 0;
}

body.wia-editorial .destinos-hero-video::before {
    content: "WIA";
    position: absolute;
    bottom: -12px;
    left: 50%;
    width: 92px;
    height: 48px;
    transform: translateX(-50%);
    display: grid;
    place-items: center;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: #ffffff;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.55);
    z-index: 2;
    pointer-events: none;
}

body.wia-editorial .destination-layout {
    gap: clamp(26px, 3vw, 38px);
}

body.wia-editorial .destination-block {
    gap: clamp(22px, 2.6vw, 34px);
    align-items: center;
}

body.wia-editorial .destination-block img {
    border-radius: 18px;
}

body.wia-editorial .map-card {
    border-radius: 18px;
}

body.wia-editorial .destinos-hero-video::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(circle at center, transparent 72%, rgba(0, 0, 0, 0.08) 100%);
    z-index: 1;
}

/* Móvil — páginas internas: tipografía y espaciado coherentes con el tema (menú en mobile-menu.css) */
@media (max-width: 992px) {
    body.wia-editorial .page-hero-content--about {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    body.wia-editorial .about-hero-video {
        max-width: 460px;
        width: 100%;
        justify-self: start;
    }

    body.wia-editorial .page-hero-content--destinos {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    body.wia-editorial .destinos-hero-video {
        max-width: min(420px, 100%);
        justify-self: center;
        transform: none;
        margin-inline: auto;
    }

    body.wia-editorial .page-hero--about h1 {
        font-size: clamp(2.3rem, 8.8vw, 3.8rem) !important;
        line-height: 0.98 !important;
        letter-spacing: -0.02em;
        margin-bottom: clamp(18px, 3.2vw, 28px);
        max-width: 10ch;
    }

    body.wia-editorial .page-hero--about p {
        font-size: clamp(1rem, 3.7vw, 1.22rem) !important;
        line-height: 1.56 !important;
        max-width: 62ch;
    }

    body.wia-editorial:not(.home-page) .page-hero h1,
    body.wia-editorial:not(.home-page) .section-heading,
    body.wia-editorial:not(.home-page) .results-meta h1 {
        font-family: "Cormorant Garamond", Georgia, serif;
        font-weight: 600;
        letter-spacing: -0.02em;
        color: #1a1512;
    }

    body.wia-editorial:not(.home-page) .section {
        padding-top: 72px;
        padding-bottom: 72px;
    }

    body.wia-editorial .container {
        padding-left: max(20px, env(safe-area-inset-left));
        padding-right: max(20px, env(safe-area-inset-right));
    }
}

@media (max-width: 768px) {
    body.wia-editorial:not(.home-page) .page-hero {
        padding-top: 40px;
        padding-bottom: 36px;
    }

    body.wia-editorial:not(.home-page) .section {
        padding-top: 56px;
        padding-bottom: 56px;
    }

    body.wia-editorial .about-hero-video {
        max-width: min(360px, 100%);
        border-radius: 16px;
    }

    body.wia-editorial .destinos-hero-video {
        border-radius: 50%;
        max-width: min(312px, 100%);
        justify-self: center;
        margin-inline: auto;
    }

    body.wia-editorial .destinos-hero-video::before {
        bottom: -8px;
        left: 50%;
        width: 68px;
        height: 34px;
        font-size: 0.96rem;
    }

    body.wia-editorial .destinos-hero-video iframe {
        top: 47%;
        width: 168%;
        height: 118%;
    }

    body.wia-editorial .about-hero-video iframe {
        top: -16%;
        height: 136%;
    }

    body.wia-editorial .about-hero-video::after {
        background:
            linear-gradient(180deg, rgba(0, 0, 0, 0.88) 0%, rgba(0, 0, 0, 0.46) 11%, transparent 23%),
            linear-gradient(0deg, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.32) 8%, transparent 18%);
    }

    body.wia-editorial .page-hero--about h1 {
        font-size: clamp(2.05rem, 12vw, 3.15rem) !important;
        line-height: 0.96 !important;
        max-width: 8.5ch;
    }

    body.wia-editorial .page-hero--about p {
        font-size: clamp(0.98rem, 5vw, 1.16rem) !important;
        line-height: 1.52 !important;
    }

    body.wia-editorial:not(.home-page) .site-footer,
    body.wia-editorial:not(.home-page) .footer-rich {
        padding-left: max(20px, env(safe-area-inset-left));
        padding-right: max(20px, env(safe-area-inset-right));
    }

    /* Footer mobile alignment: iPhone/Android readable rhythm */
    body.wia-editorial .site-footer {
        text-align: left;
    }

    body.wia-editorial .footer-rich {
        display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
        padding-top: 30px;
        padding-bottom: 24px;
    }

    body.wia-editorial .footer-logo {
        font-size: clamp(1.28rem, 6.2vw, 1.6rem);
        line-height: 1.12;
    }

    body.wia-editorial .footer-tagline {
        max-width: none;
        margin-top: 10px;
        margin-bottom: 0;
        font-size: clamp(0.94rem, 4.1vw, 1.03rem);
        line-height: 1.58;
    }

    body.wia-editorial .footer-heading {
        margin-top: 8px;
        margin-bottom: 8px;
        font-size: 0.74rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    body.wia-editorial .footer-list {
        margin: 0;
        padding: 0;
    }

    body.wia-editorial .footer-list li + li {
        margin-top: 8px;
    }

    body.wia-editorial .footer-list a {
        font-size: 0.96rem;
        line-height: 1.45;
    }

    body.wia-editorial .footer-bottom {
        padding-top: 14px;
        padding-bottom: max(22px, env(safe-area-inset-bottom, 0px));
        text-align: left;
    }

    body.wia-editorial .footer-bottom p {
        margin: 0;
        font-size: 0.88rem;
        line-height: 1.45;
    }

    body.wia-editorial:not(.home-page) .btn,
    body.wia-editorial:not(.home-page) .villa-link-book,
    body.wia-editorial:not(.home-page) .results-search-go {
        min-height: 48px;
    }

    body.wia-editorial.home-page .home-band__inner {
        padding-left: max(24px, env(safe-area-inset-left));
        padding-right: max(24px, env(safe-area-inset-right));
    }

    body.wia-editorial.home-page .home-close {
        padding-left: max(24px, env(safe-area-inset-left));
        padding-right: max(24px, env(safe-area-inset-right));
    }
}

@media (max-width: 480px) {
    body.wia-editorial .footer-rich {
        gap: 16px;
    }

    body.wia-editorial .footer-list a {
        font-size: 0.93rem;
    }
}
