/* =========================================================
   HOTEL MONARCA — HABITACIÓN EJECUTIVA A/C
   Archivo exclusivo. No modifica header/footer global.
========================================================= */

.ejecutiva-ac-eyebrow{margin:0 0 18px;font-size:9px;font-weight:700;letter-spacing:.22em;color:#e0c79e}
.ejecutiva-ac-eyebrow--dark{color:#a17d4b}

/* HERO */
.ejecutiva-ac-hero{position:relative;height:calc(100vh - var(--topbar-height) - var(--header-height));min-height:700px;max-height:900px;overflow:hidden;color:#fff;background:#26332e}
.ejecutiva-ac-hero__media,.ejecutiva-ac-hero__overlay{position:absolute;inset:0}
.ejecutiva-ac-hero__media img{width:100%;height:100%;object-fit:cover}
.ejecutiva-ac-hero__overlay{background:linear-gradient(90deg,rgba(20,30,26,.83),rgba(20,30,26,.32) 58%,rgba(20,30,26,.08)),linear-gradient(0deg,rgba(20,30,26,.7),transparent 48%)}
.ejecutiva-ac-hero__container{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:70px}
.ejecutiva-ac-hero__back{position:absolute;top:32px;left:var(--container-padding);display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.78);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ejecutiva-ac-hero__index{position:absolute;right:var(--container-padding);top:25px;font-family:"Playfair Display",serif;font-size:76px;line-height:1;color:rgba(255,255,255,.22)}
.ejecutiva-ac-hero__content{max-width:850px}
.ejecutiva-ac-hero h1{margin:0;font-family:"Playfair Display",serif;font-size:clamp(68px,8vw,124px);font-weight:500;line-height:.86;letter-spacing:-.05em}
.ejecutiva-ac-hero h1 em{font-weight:500;color:#e5d2b2}
.ejecutiva-ac-hero__lead{max-width:520px;margin:28px 0 0;font-size:14px;line-height:1.85;color:rgba(255,255,255,.7)}
.ejecutiva-ac-hero__facts{position:absolute;right:var(--container-padding);bottom:72px;width:min(430px,38%);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.28);border-bottom:1px solid rgba(255,255,255,.28)}
.ejecutiva-ac-hero__facts div{padding:18px 15px;border-right:1px solid rgba(255,255,255,.18)}
.ejecutiva-ac-hero__facts div:last-child{border-right:0}
.ejecutiva-ac-hero__facts span{display:block;margin-bottom:5px;font-size:7px;font-weight:700;letter-spacing:.14em;color:rgba(255,255,255,.52)}
.ejecutiva-ac-hero__facts strong{font-size:12px;font-weight:600}

/* INTRO */
.ejecutiva-ac-intro{padding:92px 0;background:#f1e8dd}
.ejecutiva-ac-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) 350px 320px;gap:55px;align-items:start}
.ejecutiva-ac-intro h2,.ejecutiva-ac-gallery h2,.ejecutiva-ac-amenities h2,.ejecutiva-ac-note h2,.ejecutiva-ac-cta h2{margin:0;font-family:"Playfair Display",serif;font-weight:500;line-height:.97;color:#293832}
.ejecutiva-ac-intro h2{font-size:clamp(48px,5vw,72px)}
.ejecutiva-ac-intro h2 span,.ejecutiva-ac-gallery h2 span,.ejecutiva-ac-amenities h2 span{color:#788e82}
.ejecutiva-ac-intro__copy{padding-top:33px}
.ejecutiva-ac-intro__copy p{margin:0;font-size:14px;line-height:1.95;color:#6f7b74}
.ejecutiva-ac-book{padding:28px;border:1px solid rgba(41,56,50,.13);border-radius:20px;background:rgba(255,255,255,.52)}
.ejecutiva-ac-book__label{font-size:8px;font-weight:700;letter-spacing:.15em;color:#9c855f}
.ejecutiva-ac-book__price{display:flex;align-items:end;gap:8px;margin:8px 0 15px}
.ejecutiva-ac-book__price strong{font-family:"Playfair Display",serif;font-size:40px;color:#293832}
.ejecutiva-ac-book__price small{padding-bottom:8px;color:#7e8983}
.ejecutiva-ac-book p{margin:0 0 20px;font-size:11px;line-height:1.7;color:#7b8580}

/* GALERÍA */
.ejecutiva-ac-gallery{padding:100px 0 110px;background:#f9f7f2}
.ejecutiva-ac-gallery__head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:46px}
.ejecutiva-ac-gallery h2{font-size:clamp(45px,5vw,70px)}
.ejecutiva-ac-gallery__counter{text-align:right}
.ejecutiva-ac-gallery__counter strong{display:block;font-family:"Playfair Display",serif;font-size:52px;font-weight:500;color:#9aaa9f}
.ejecutiva-ac-gallery__counter span{font-size:8px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8c9690}
.ejecutiva-ac-gallery__grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:235px;gap:14px}
.ejecutiva-ac-photo{position:relative;padding:0;border:0;border-radius:16px;overflow:hidden;background:#dfe5df;cursor:pointer}
.ejecutiva-ac-photo--hero{grid-column:span 2;grid-row:span 2}
.ejecutiva-ac-photo--wide{grid-column:span 2}
.ejecutiva-ac-photo--last{grid-column:span 2}
.ejecutiva-ac-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1),filter .4s ease}
.ejecutiva-ac-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(20,30,26,.4))}
.ejecutiva-ac-photo:hover img{transform:scale(1.045)}
.ejecutiva-ac-photo>span{position:absolute;z-index:2;left:15px;bottom:13px;color:#fff;font-size:8px;font-weight:700;letter-spacing:.12em}
.ejecutiva-ac-photo>strong{position:absolute;z-index:2;right:17px;bottom:13px;display:flex;align-items:center;gap:8px;color:#fff;font-size:9px;letter-spacing:.08em}

/* AMENIDADES */
.ejecutiva-ac-amenities{padding:105px 0;background:#dfe7df}
.ejecutiva-ac-amenities__grid{display:grid;grid-template-columns:390px 1fr;gap:90px;align-items:start}
.ejecutiva-ac-amenities__heading{position:sticky;top:140px}
.ejecutiva-ac-amenities h2{font-size:clamp(48px,5vw,70px)}
.ejecutiva-ac-amenities__heading>p:last-child{margin:27px 0 0;max-width:350px;font-size:13px;line-height:1.85;color:#68776f}
.ejecutiva-ac-amenities__list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(41,56,50,.14)}
.ejecutiva-ac-amenity{min-height:145px;padding:25px 22px;border-right:1px solid rgba(41,56,50,.14);border-bottom:1px solid rgba(41,56,50,.14)}
.ejecutiva-ac-amenity:nth-child(even){border-right:0}
.ejecutiva-ac-amenity i{display:block;margin-bottom:20px;font-size:19px;color:#8e7149}
.ejecutiva-ac-amenity span{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.14em;color:#829087;text-transform:uppercase}
.ejecutiva-ac-amenity strong{font-family:"Playfair Display",serif;font-size:20px;font-weight:500;color:#293832}

/* NOTA */
.ejecutiva-ac-note{padding:95px 0;color:#fff;background:#34443d}
.ejecutiva-ac-note__grid{display:grid;grid-template-columns:100px minmax(0,1fr) 440px;gap:55px;align-items:start}
.ejecutiva-ac-note__number{font-family:"Playfair Display",serif;font-size:58px;color:rgba(255,255,255,.22)}
.ejecutiva-ac-note h2{font-size:clamp(48px,5vw,68px);color:#fff}
.ejecutiva-ac-note h2 span{color:#d9c39d}
.ejecutiva-ac-note__copy p{margin:0 0 18px;font-size:13px;line-height:1.85;color:rgba(255,255,255,.66)}
.ejecutiva-ac-note__copy p:last-child{margin-bottom:0}

/* CTA */
.ejecutiva-ac-cta{position:relative;min-height:570px;display:flex;align-items:center;overflow:hidden;color:#fff;background:#26332e}
.ejecutiva-ac-cta__media,.ejecutiva-ac-cta__overlay{position:absolute;inset:0}
.ejecutiva-ac-cta__media img{width:100%;height:100%;object-fit:cover}
.ejecutiva-ac-cta__overlay{background:linear-gradient(90deg,rgba(22,31,27,.86),rgba(22,31,27,.44),rgba(22,31,27,.18))}
.ejecutiva-ac-cta__content{position:relative;z-index:2}
.ejecutiva-ac-cta h2{font-size:clamp(54px,6vw,86px);color:#fff}
.ejecutiva-ac-cta h2 span{color:#e0c79e}
.ejecutiva-ac-cta__actions{display:flex;align-items:center;gap:28px;margin-top:34px}
.ejecutiva-ac-cta__back{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.07em}
.ejecutiva-ac-cta__back i{transition:transform .3s ease}
.ejecutiva-ac-cta__back:hover i{transform:translateX(5px)}

/* REVEAL */
.ejecutiva-ac-reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .85s cubic-bezier(.22,1,.36,1)}
.ejecutiva-ac-reveal.is-visible{opacity:1;transform:none}

/* LIGHTBOX */
.ejecutiva-ac-lightbox{position:fixed;inset:0;z-index:1300;display:grid;place-items:center;padding:28px;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .3s ease,visibility .3s ease}
.ejecutiva-ac-lightbox.is-open{visibility:visible;opacity:1;pointer-events:auto}
.ejecutiva-ac-lightbox__backdrop{position:absolute;inset:0;background:rgba(20,29,25,.95);backdrop-filter:blur(12px)}
.ejecutiva-ac-lightbox__dialog{position:relative;z-index:2;width:min(1150px,100%);color:#fff}
.ejecutiva-ac-lightbox__top,.ejecutiva-ac-lightbox__bottom{display:flex;align-items:center;justify-content:space-between}
.ejecutiva-ac-lightbox__top{margin-bottom:15px}
.ejecutiva-ac-lightbox__top>div{display:flex;flex-direction:column}
.ejecutiva-ac-lightbox__top span{font-size:7px;letter-spacing:.16em;color:rgba(255,255,255,.48)}
.ejecutiva-ac-lightbox__top strong{font-family:"Playfair Display",serif;font-size:22px;font-weight:500}
.ejecutiva-ac-lightbox__top button{width:44px;height:44px;border:1px solid rgba(255,255,255,.25);border-radius:50%;color:#fff;background:transparent;cursor:pointer}
.ejecutiva-ac-lightbox__stage{position:relative;height:min(72vh,720px);overflow:hidden;border-radius:18px;background:#151d19}
.ejecutiva-ac-lightbox__stage img{width:100%;height:100%;object-fit:contain}
.ejecutiva-ac-lightbox__arrow{position:absolute;z-index:3;top:50%;width:50px;height:50px;border:1px solid rgba(255,255,255,.32);border-radius:50%;color:#fff;background:rgba(20,29,25,.45);cursor:pointer;transform:translateY(-50%)}
.ejecutiva-ac-lightbox__arrow--prev{left:16px}.ejecutiva-ac-lightbox__arrow--next{right:16px}
.ejecutiva-ac-lightbox__bottom{min-height:55px;font-size:9px;letter-spacing:.12em;color:rgba(255,255,255,.55)}
.ejecutiva-ac-lightbox__dots{display:flex;gap:6px}
.ejecutiva-ac-lightbox__dots button{width:20px;height:2px;padding:0;border:0;background:rgba(255,255,255,.22);cursor:pointer}
.ejecutiva-ac-lightbox__dots button.is-active{background:#dfc79d}
body.ejecutiva-ac-lightbox-open{overflow:hidden}

/* RESPONSIVE */
@media(max-width:1050px){
    .ejecutiva-ac-hero__facts{width:45%}
    .ejecutiva-ac-intro__grid{grid-template-columns:1fr 1fr}
    .ejecutiva-ac-book{grid-column:1/-1;display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:20px}
    .ejecutiva-ac-book__price{margin:0}
    .ejecutiva-ac-book p{margin:0}
    .ejecutiva-ac-amenities__grid{grid-template-columns:310px 1fr;gap:50px}
    .ejecutiva-ac-note__grid{grid-template-columns:70px 1fr}.ejecutiva-ac-note__copy{grid-column:2}
}
@media(max-width:800px){
    .ejecutiva-ac-hero{height:78vh;min-height:650px}
    .ejecutiva-ac-hero__container{padding-bottom:55px}
    .ejecutiva-ac-hero__facts{position:static;width:100%;margin-top:32px}
    .ejecutiva-ac-hero__index{font-size:58px}
    .ejecutiva-ac-intro{padding:68px 0}
    .ejecutiva-ac-intro__grid{grid-template-columns:1fr;gap:28px}
    .ejecutiva-ac-intro__copy{padding-top:0}
    .ejecutiva-ac-book{grid-column:auto;display:block}
    .ejecutiva-ac-book__price{margin:8px 0 15px}
    .ejecutiva-ac-gallery{padding:70px 0 80px}
    .ejecutiva-ac-gallery__grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}
    .ejecutiva-ac-photo--hero{grid-column:span 2}
    .ejecutiva-ac-photo--wide,.ejecutiva-ac-photo--last{grid-column:span 2}
    .ejecutiva-ac-amenities{padding:75px 0}
    .ejecutiva-ac-amenities__grid{grid-template-columns:1fr;gap:42px}
    .ejecutiva-ac-amenities__heading{position:static}
    .ejecutiva-ac-note__grid{grid-template-columns:1fr;gap:25px}.ejecutiva-ac-note__copy{grid-column:auto}
}
@media(max-width:560px){
    .ejecutiva-ac-hero{min-height:650px;height:auto;padding-top:0}
    .ejecutiva-ac-hero__container{min-height:650px}
    .ejecutiva-ac-hero__back{top:22px}
    .ejecutiva-ac-hero__index{top:18px;font-size:46px}
    .ejecutiva-ac-hero h1{font-size:58px}
    .ejecutiva-ac-hero__facts div{padding:15px 8px}
    .ejecutiva-ac-hero__facts strong{font-size:10px}
    .ejecutiva-ac-intro h2,.ejecutiva-ac-gallery h2,.ejecutiva-ac-amenities h2,.ejecutiva-ac-note h2{font-size:43px}
    .ejecutiva-ac-gallery__head{align-items:start;flex-direction:column}
    .ejecutiva-ac-gallery__counter{text-align:left}
    .ejecutiva-ac-gallery__grid{grid-auto-rows:175px;gap:9px}
    .ejecutiva-ac-photo--hero{grid-row:span 2}
    .ejecutiva-ac-amenities__list{grid-template-columns:1fr}
    .ejecutiva-ac-amenity{border-right:0}
    .ejecutiva-ac-cta{min-height:540px}
    .ejecutiva-ac-cta h2{font-size:49px}
    .ejecutiva-ac-cta__actions{align-items:flex-start;flex-direction:column}
    .ejecutiva-ac-lightbox{padding:16px}
    .ejecutiva-ac-lightbox__stage{height:62vh}
    .ejecutiva-ac-lightbox__arrow{width:43px;height:43px}
    .ejecutiva-ac-lightbox__arrow--prev{left:8px}.ejecutiva-ac-lightbox__arrow--next{right:8px}
}
