/* =========================================================
   ACD HOTELS CHENNAI — Advanced Comfort Dwelling
   Black + gold capsule-hotel theme
   ========================================================= */

/* ---------- TOKENS ---------- */
:root{
  --black:#080808;
  --black-2:#0d0d0d;
  --panel:#121110;
  --panel-2:#181614;
  --line:rgba(201,168,76,.16);
  --line-soft:rgba(255,255,255,.08);

  --gold:#c9a84c;
  --gold-lt:#f5d78e;
  --gold-dk:#8b6020;
  --gold-grad:linear-gradient(135deg,#8b6020 0%,#c9a84c 32%,#f5d78e 55%,#c9a84c 78%,#a0742a 100%);

  --txt:#f2efe9;
  --txt-mute:#a9a49b;
  --txt-dim:#6f6a63;
  --wa:#25d366;

  --r-sm:10px;
  --r:16px;
  --r-lg:24px;
  --r-xl:32px;

  --shadow:0 20px 60px rgba(0,0,0,.55);
  --shadow-gold:0 18px 46px rgba(201,168,76,.22);

  --ease:cubic-bezier(.22,1,.36,1);
  --ease-io:cubic-bezier(.65,.05,.36,1);

  --hdr-h:74px;
  --wrap:1240px;
  --pad:clamp(18px,4.2vw,64px);
}

/* ---------- RESET ---------- */
*,*::before,*::after{box-sizing:border-box}
/* the overlays below set display on a class, which would otherwise beat the UA
   [hidden] rule and leave invisible full-screen layers eating every click */
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--hdr-h) + 14px)}
body{
  margin:0;
  background:var(--black);
  color:var(--txt);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:clamp(15px,.42vw + 14px,17px);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body.is-locked{overflow:hidden}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3,h4{margin:0;font-family:'Playfair Display',Georgia,serif;font-weight:900;line-height:1.06;letter-spacing:-.015em}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}
::selection{background:var(--gold);color:#000}

/* scrollbar */
::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-track{background:#0b0b0b}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--gold-dk),var(--gold));border-radius:9px}

/* ---------- HELPERS ---------- */
.wrap{width:min(100% - (var(--pad) * 2),var(--wrap));margin-inline:auto}
.gtext{
  background:var(--gold-grad);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;font-style:italic;
  background-size:220% 100%;
  animation:shimmer 7s linear infinite;
}
@keyframes shimmer{to{background-position:220% 0}}

.eyebrow{
  font-size:.72rem;font-weight:700;letter-spacing:.34em;text-transform:uppercase;
  color:var(--gold);margin-bottom:14px;
}
.eyebrow::before{
  content:"";display:inline-block;width:26px;height:1px;
  background:var(--gold);vertical-align:middle;margin-right:12px;
}

.section{padding:clamp(64px,9vw,132px) 0;position:relative}
.sec-head{text-align:center;max-width:760px;margin:0 auto clamp(38px,5vw,66px)}
.sec-head h2{font-size:clamp(2rem,5.4vw,3.6rem);margin-bottom:18px}
.sec-sub{color:var(--txt-mute);font-size:clamp(.95rem,1.4vw,1.08rem)}

/* ---------- BUTTONS ---------- */
.btn{
  --btn-py:13px;--btn-px:26px;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:var(--btn-py) var(--btn-px);
  border-radius:100px;font-weight:700;font-size:.92rem;letter-spacing:.02em;
  position:relative;overflow:hidden;isolation:isolate;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),color .3s;
  will-change:transform;text-align:center;
}
.btn svg{width:19px;height:19px;flex:none}
.btn-sm{--btn-py:10px;--btn-px:20px;font-size:.85rem}
.btn-lg{--btn-py:16px;--btn-px:34px;font-size:1rem}
.btn-block{width:100%}

.btn-gold{background:var(--gold-grad);background-size:200% 100%;color:#0a0a0a;box-shadow:var(--shadow-gold)}
.btn-gold::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);
  transform:translateX(-130%);transition:transform .75s var(--ease);
}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 24px 60px rgba(201,168,76,.4)}
.btn-gold:hover::after{transform:translateX(130%)}
.btn-gold:active{transform:translateY(-1px) scale(.985)}

.btn-ghost{border:1px solid var(--line);color:var(--txt);backdrop-filter:blur(10px);background:rgba(255,255,255,.04)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-lt);transform:translateY(-3px);background:rgba(201,168,76,.09)}

.btn-wa{background:linear-gradient(135deg,#1eb955,#25d366);color:#04240f;box-shadow:0 16px 40px rgba(37,211,102,.3)}
.btn-wa:hover{transform:translateY(-3px);box-shadow:0 22px 54px rgba(37,211,102,.45)}

/* ---------- PRELOADER ---------- */
.preloader{
  position:fixed;inset:0;z-index:9999;background:var(--black);
  display:grid;place-items:center;
  transition:opacity .7s var(--ease),visibility .7s;
}
.preloader.is-gone{opacity:0;visibility:hidden;pointer-events:none}
.pre-inner{display:grid;justify-items:center;gap:24px}
.pre-logo{width:clamp(96px,20vw,140px);animation:preFloat 2.4s ease-in-out infinite}
@keyframes preFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.03)}}
.pre-bar{width:min(210px,52vw);height:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
.pre-bar span{display:block;height:100%;width:0;background:var(--gold-grad);transition:width .3s linear}

/* ---------- SCROLL PROGRESS ---------- */
.scroll-progress{
  position:fixed;top:0;left:0;height:3px;width:0;z-index:1000;
  background:var(--gold-grad);box-shadow:0 0 14px rgba(201,168,76,.7);
  transition:width .1s linear;
}

/* ---------- CURSOR GLOW ---------- */
.cursor-glow{
  position:fixed;top:0;left:0;width:420px;height:420px;z-index:0;pointer-events:none;
  border-radius:50%;opacity:0;
  background:radial-gradient(circle,rgba(201,168,76,.13),transparent 62%);
  transform:translate(-50%,-50%);transition:opacity .5s;
  will-change:transform;
}
@media (hover:hover) and (pointer:fine){.cursor-glow.is-on{opacity:1}}

/* ---------- HEADER ---------- */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:900;height:var(--hdr-h);
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;padding-inline:var(--pad);
  padding-top:env(safe-area-inset-top);
  transition:background .45s var(--ease),box-shadow .45s var(--ease),height .45s var(--ease),border-color .45s;
  border-bottom:1px solid transparent;
}
.site-header.is-stuck{
  background:rgba(8,8,8,.82);backdrop-filter:blur(20px) saturate(140%);
  -webkit-backdrop-filter:blur(20px) saturate(140%);
  border-bottom-color:var(--line);
  box-shadow:0 10px 40px rgba(0,0,0,.5);
  --hdr-h:64px;
}
.site-header.is-hidden{transform:translateY(-105%)}
.site-header{transition:transform .5s var(--ease),background .45s var(--ease),box-shadow .45s,height .45s var(--ease)}

.brand{display:flex;align-items:center;gap:11px;min-width:0}
.brand img{width:clamp(38px,4.4vw,46px);height:auto;border-radius:10px;transition:transform .5s var(--ease)}
.brand:hover img{transform:rotate(-6deg) scale(1.08)}
.brand-txt{display:flex;flex-direction:column;line-height:1.15;min-width:0}
.brand-txt strong{font-family:'Playfair Display',serif;font-size:1.06rem;
  text-transform:uppercase;letter-spacing:.05em;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.brand-txt small{font-size:.56rem;letter-spacing:.24em;text-transform:uppercase;color:var(--txt-dim);white-space:nowrap}

.desk-nav{display:flex;align-items:center;gap:clamp(14px,2vw,32px)}
.nav-link{position:relative;font-size:.9rem;font-weight:500;color:var(--txt-mute);padding:6px 2px;transition:color .3s}
.nav-link::after{
  content:"";position:absolute;left:0;bottom:0;width:100%;height:1.5px;
  background:var(--gold-grad);transform:scaleX(0);transform-origin:right;
  transition:transform .45s var(--ease);
}
.nav-link:hover,.nav-link.is-active{color:var(--gold-lt)}
.nav-link:hover::after,.nav-link.is-active::after{transform:scaleX(1);transform-origin:left}

/* burger */
.mob-toggle{display:none;width:44px;height:44px;position:relative;z-index:960;border-radius:12px;border:1px solid var(--line)}
.mob-toggle span{
  position:absolute;left:12px;width:20px;height:2px;background:var(--gold);border-radius:2px;
  transition:transform .45s var(--ease),opacity .3s,width .45s var(--ease);
}
.mob-toggle span:nth-child(1){top:15px}
.mob-toggle span:nth-child(2){top:21px;width:14px}
.mob-toggle span:nth-child(3){top:27px}
.mob-toggle.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.mob-toggle.is-open span:nth-child(2){opacity:0}
.mob-toggle.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* ---------- MOBILE NAV ---------- */
.mob-nav{
  position:fixed;top:0;right:0;z-index:950;
  width:min(88vw,360px);height:100dvh;
  background:linear-gradient(160deg,#0f0e0d,#080808);
  border-left:1px solid var(--line);
  padding:calc(var(--hdr-h) + 30px + env(safe-area-inset-top)) 30px 34px;
  display:flex;flex-direction:column;gap:6px;
  transform:translateX(100%);
  transition:transform .6s var(--ease);
  overflow-y:auto;
}
.mob-nav.is-open{transform:translateX(0)}
.mob-nav a{
  padding:15px 0;font-size:1.22rem;font-family:'Playfair Display',serif;font-weight:700;
  border-bottom:1px solid var(--line-soft);
  opacity:0;transform:translateX(26px);
  transition:opacity .5s var(--ease),transform .5s var(--ease),color .3s;
}
.mob-nav.is-open a{opacity:1;transform:none}
.mob-nav.is-open a:nth-child(1){transition-delay:.1s}
.mob-nav.is-open a:nth-child(2){transition-delay:.16s}
.mob-nav.is-open a:nth-child(3){transition-delay:.22s}
.mob-nav.is-open a:nth-child(4){transition-delay:.28s}
.mob-nav a:hover,.mob-nav a:active{color:var(--gold-lt);padding-left:8px}
.mob-nav .btn{margin-top:22px}
.mob-nav-foot{margin-top:auto;padding-top:26px;display:grid;gap:8px;font-size:.82rem;color:var(--txt-dim)}
.mob-nav-foot a{font-family:'Inter',sans-serif;font-size:.82rem;font-weight:500;padding:0;border:0;opacity:1;transform:none;color:var(--txt-mute)}

.nav-scrim{
  position:fixed;inset:0;z-index:940;background:rgba(0,0,0,.7);
  backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity .5s,visibility .5s;
}
.nav-scrim.is-on{opacity:1;visibility:visible}

/* ---------- HERO ---------- */
.hero{
  position:relative;min-height:100svh;min-height:100dvh;
  display:flex;align-items:center;
  padding:calc(var(--hdr-h) + 40px) var(--pad) clamp(90px,13vh,140px);
  overflow:hidden;
}
.hero-slider{position:absolute;inset:0;z-index:0}
.hero-slide{
  position:absolute;inset:0;opacity:0;
  transition:opacity 1.5s var(--ease);
  will-change:opacity;
}
.hero-slide.is-active{opacity:1}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.06)}
.hero-slide.is-active img{animation:kenburns 8s linear forwards}
@keyframes kenburns{from{transform:scale(1.04)}to{transform:scale(1.15)}}

.hero-overlay{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(105deg,rgba(8,8,8,.94) 0%,rgba(8,8,8,.78) 38%,rgba(8,8,8,.34) 68%,rgba(8,8,8,.6) 100%),
    linear-gradient(to top,rgba(8,8,8,.96) 0%,transparent 42%);
}
.hero-grid-lines{
  position:absolute;inset:-10%;z-index:1;pointer-events:none;opacity:.28;
  background-image:linear-gradient(rgba(201,168,76,.09) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(201,168,76,.09) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse at 70% 40%,#000 10%,transparent 72%);
  -webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000 10%,transparent 72%);
}

.hero-content{position:relative;z-index:3;max-width:min(100%,720px)}
.hero-pill{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 18px;border-radius:100px;margin-bottom:26px;
  border:1px solid var(--line);background:rgba(201,168,76,.09);
  backdrop-filter:blur(10px);
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--gold-lt);
}
.ping{width:7px;height:7px;border-radius:50%;background:var(--gold);position:relative;flex:none}
.ping::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--gold);animation:ping 1.9s cubic-bezier(0,0,.2,1) infinite}
@keyframes ping{0%{transform:scale(1);opacity:.85}80%,100%{transform:scale(3.2);opacity:0}}

/* scales with the smaller of width/height so the CTA always stays above the fold */
.hero-title{font-size:clamp(2.6rem,min(10.5vw,10.5vh),7rem);margin-bottom:22px;letter-spacing:-.03em}
.hero-title .line{display:block;overflow:hidden}
.hero-title .line>*{display:inline-block;transform:translateY(105%);opacity:0}
.is-ready .hero-title .line>*{animation:lineUp 1.1s var(--ease) forwards}
.is-ready .hero-title .line:nth-child(1)>*{animation-delay:.15s}
.is-ready .hero-title .line:nth-child(2)>*{animation-delay:.28s}
.is-ready .hero-title .line:nth-child(3)>*{animation-delay:.41s}
@keyframes lineUp{to{transform:none;opacity:1}}

.hero-sub{color:#d8d3c9;font-size:clamp(.98rem,1.9vw,1.16rem);max-width:56ch;margin-bottom:28px;text-shadow:0 2px 14px rgba(0,0,0,.6)}

.hero-rating{display:flex;align-items:center;gap:14px;margin-bottom:34px}
.stars{display:flex;gap:3px}
.stars svg{width:17px;height:17px;fill:var(--gold);filter:drop-shadow(0 0 6px rgba(201,168,76,.5))}
.stars svg{animation:starPop .5s var(--ease) backwards}
.rate-txt{display:flex;flex-direction:column;line-height:1.2}
.rate-txt strong{font-size:1.06rem;color:var(--gold-lt)}
.rate-txt span{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--txt-dim)}
@keyframes starPop{from{transform:scale(0) rotate(-40deg);opacity:0}to{transform:none;opacity:1}}

.hero-cta{display:flex;flex-wrap:wrap;gap:14px}

/* hero arrows + dots */
.hero-arrow{
  position:absolute;top:50%;z-index:4;translate:0 -50%;
  width:clamp(40px,5vw,52px);aspect-ratio:1;border-radius:50%;
  display:grid;place-items:center;color:var(--gold-lt);
  border:1px solid var(--line);background:rgba(8,8,8,.42);backdrop-filter:blur(10px);
  opacity:0;transition:opacity .4s,background .3s,transform .3s var(--ease),border-color .3s;
}
.hero-arrow svg{width:44%;height:44%}
.hero:hover .hero-arrow{opacity:1}
.hero-arrow:hover{background:rgba(201,168,76,.22);border-color:var(--gold);transform:scale(1.12)}
.hero-prev{left:clamp(10px,2vw,28px)}
.hero-next{right:clamp(10px,2vw,28px)}

.hero-dots{position:absolute;bottom:clamp(26px,5vh,46px);right:var(--pad);z-index:4;display:flex;gap:8px}
.hero-dots button{
  width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.28);
  transition:all .45s var(--ease);
}
.hero-dots button.is-on{width:30px;border-radius:6px;background:var(--gold-grad);box-shadow:0 0 12px rgba(201,168,76,.6)}

.scroll-cue{
  position:absolute;left:50%;bottom:clamp(18px,3.4vh,34px);translate:-50% 0;z-index:4;
  display:grid;justify-items:center;gap:9px;
  font-size:.6rem;letter-spacing:.32em;text-transform:uppercase;color:var(--txt-dim);
}
.scroll-cue i{display:block;width:1px;height:38px;background:linear-gradient(var(--gold),transparent);position:relative;overflow:hidden}
.scroll-cue i::after{content:"";position:absolute;top:-40%;left:0;width:100%;height:40%;background:var(--gold-lt);animation:cueRun 1.9s var(--ease-io) infinite}
@keyframes cueRun{to{top:110%}}

/* ---------- ABOUT ---------- */
.about{background:linear-gradient(180deg,var(--black) 0%,#0b0a09 100%)}
.about-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,5vw,74px);align-items:center}
.about-copy h2{font-size:clamp(2rem,4.6vw,3.4rem);margin-bottom:22px}
.lead{color:var(--txt-mute);font-size:clamp(.98rem,1.5vw,1.1rem);margin-bottom:26px}
.lead strong{color:var(--gold-lt);font-weight:600}

.check-strip{
  display:flex;align-items:center;gap:20px;flex-wrap:wrap;
  padding:16px 22px;border-radius:var(--r);margin-bottom:26px;
  border:1px solid var(--line);background:rgba(201,168,76,.05);
}
.check-strip>div{display:grid;gap:2px}
.check-strip span{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--txt-dim)}
.check-strip strong{font-family:'Playfair Display',serif;font-size:1.16rem;color:var(--gold-lt)}
.check-strip i{width:1px;height:32px;background:var(--line)}

.chips{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:30px}
.chips li{
  padding:8px 16px;border-radius:100px;font-size:.79rem;font-weight:500;
  border:1px solid var(--line-soft);color:var(--txt-mute);
  background:rgba(255,255,255,.03);
  transition:all .4s var(--ease);cursor:default;
}
.chips li:hover{border-color:var(--gold);color:var(--gold-lt);transform:translateY(-3px);background:rgba(201,168,76,.1)}

.stat-row{display:flex;gap:clamp(18px,3vw,40px);flex-wrap:wrap}
.stat{display:grid;gap:2px}
.stat strong{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,3vw,2.2rem);
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat>span{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--txt-dim)}

/* about collage */
.about-gallery{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:14px;aspect-ratio:1/1.12;
}
.ag{margin:0;border-radius:var(--r-lg);overflow:hidden;position:relative;border:1px solid var(--line-soft)}
.ag::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,8,.45),transparent 55%);pointer-events:none}
.ag img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),filter .6s}
.ag:hover img{transform:scale(1.09);filter:saturate(1.12) brightness(1.06)}
.ag-1{grid-column:1;grid-row:1/3}
.ag-2{grid-column:2;grid-row:1}
.ag-3{grid-column:2;grid-row:2}
.ag-4{grid-column:1;grid-row:3}
.ag-5{grid-column:2;grid-row:3}

/* ---------- AMENITIES ---------- */
.amenities{background:var(--black-2);position:relative}
.amenities::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse at 50% 0%,rgba(201,168,76,.09),transparent 58%);
}
.amen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(14px,2vw,24px)}
.amen-card{
  position:relative;padding:clamp(24px,3vw,34px);border-radius:var(--r-lg);
  border:1px solid var(--line-soft);background:linear-gradient(160deg,var(--panel),var(--panel-2));
  overflow:hidden;transition:transform .5s var(--ease),border-color .5s,box-shadow .5s;
}
.amen-card::before{
  content:"";position:absolute;inset:0;opacity:0;transition:opacity .5s;
  background:radial-gradient(560px circle at var(--mx,50%) var(--my,50%),rgba(201,168,76,.14),transparent 42%);
}
.amen-card:hover{transform:translateY(-8px);border-color:var(--line);box-shadow:var(--shadow)}
.amen-card:hover::before{opacity:1}
.amen-ico{
  width:56px;height:56px;border-radius:16px;display:grid;place-items:center;margin-bottom:20px;
  color:var(--gold-lt);border:1px solid var(--line);background:rgba(201,168,76,.09);
  transition:transform .55s var(--ease),background .4s;
}
.amen-ico svg{width:26px;height:26px}
.amen-card:hover .amen-ico{transform:translateY(-3px) rotate(-7deg) scale(1.07);background:rgba(201,168,76,.18)}
.amen-card h3{font-size:1.24rem;margin-bottom:10px}
.amen-card p{color:var(--txt-mute);font-size:.92rem;margin-bottom:18px;position:relative}
.amen-tag{
  display:inline-block;padding:5px 14px;border-radius:100px;font-size:.66rem;
  letter-spacing:.18em;text-transform:uppercase;font-weight:700;
  color:var(--gold-lt);border:1px solid var(--line);background:rgba(201,168,76,.07);position:relative;
}

/* ---------- ROOMS ---------- */
.rooms{background:linear-gradient(180deg,var(--black-2),var(--black))}
.room-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:clamp(18px,2.6vw,30px)}
.room-card{
  border-radius:var(--r-xl);overflow:hidden;position:relative;
  border:1px solid var(--line-soft);background:linear-gradient(165deg,var(--panel),#0c0b0a);
  transition:transform .55s var(--ease),border-color .5s,box-shadow .55s;
  display:flex;flex-direction:column;
}
.room-card:hover{transform:translateY(-10px);border-color:var(--line);box-shadow:var(--shadow)}
.room-media{position:relative;aspect-ratio:16/10;overflow:hidden}
.room-media img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.room-card:hover .room-media img{transform:scale(1.08)}
.room-media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,9,8,.9),transparent 58%)}

.badge-count{
  position:absolute;bottom:16px;left:16px;z-index:2;
  padding:6px 14px;border-radius:100px;font-size:.68rem;font-weight:600;
  background:rgba(8,8,8,.6);color:var(--gold-lt);border:1px solid var(--line);
  backdrop-filter:blur(8px);
}

.room-body{padding:clamp(22px,3vw,30px);display:flex;flex-direction:column;gap:18px;flex:1}
.room-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
.room-top h3{font-size:1.5rem;margin-bottom:3px}
.room-type{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--txt-dim)}
.room-price{text-align:right;line-height:1.1}
.room-price strong{display:block;font-family:'Playfair Display',serif;font-size:clamp(1.6rem,3vw,2rem);
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.room-price span{font-size:.7rem;color:var(--txt-dim);letter-spacing:.1em}

.room-feats{display:flex;flex-wrap:wrap;gap:8px}
.room-feats li{
  padding:6px 13px;border-radius:8px;font-size:.76rem;color:var(--txt-mute);
  border:1px solid var(--line-soft);background:rgba(255,255,255,.025);
  transition:all .35s var(--ease);
}
.room-feats li:hover{color:var(--gold-lt);border-color:var(--line)}
.room-body .btn{margin-top:auto}

/* ---------- GALLERY ---------- */
.gallery{background:var(--black)}
.gal-grid{
  display:grid;gap:clamp(10px,1.4vw,16px);
  grid-template-columns:repeat(auto-fit,minmax(min(100%,268px),1fr));
  grid-auto-rows:200px;
}
.gal-item{
  margin:0;position:relative;overflow:hidden;border-radius:var(--r);cursor:zoom-in;
  border:1px solid var(--line-soft);
  transition:transform .55s var(--ease),border-color .45s,box-shadow .55s;
}
.gal-item:nth-child(1),.gal-item:nth-child(6){grid-row:span 2}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease),filter .55s}
.gal-item::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(to top,rgba(8,8,8,.92) 0%,rgba(8,8,8,.15) 45%,transparent 70%);
  opacity:.75;transition:opacity .5s;
}
.gal-item figcaption{
  position:absolute;left:16px;right:16px;bottom:14px;z-index:2;
  font-size:.84rem;font-weight:600;color:var(--txt);
  transform:translateY(8px);opacity:.9;
  transition:transform .5s var(--ease),color .4s;
}
.gal-item:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:var(--shadow)}
.gal-item:hover img{transform:scale(1.1);filter:saturate(1.15)}
.gal-item:hover::after{opacity:1}
.gal-item:hover figcaption{transform:none;color:var(--gold-lt)}
.gal-cta{text-align:center;margin-top:clamp(30px,4vw,52px)}

/* ---------- REVIEWS ---------- */
.reviews{background:linear-gradient(180deg,var(--black),#0b0a09);overflow:hidden}
.rev-score{display:grid;justify-items:center;gap:6px;margin-top:26px}
.rev-score strong{font-family:'Playfair Display',serif;font-size:clamp(2.6rem,6vw,4rem);
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1}
.rev-score>span{font-size:.9rem;color:var(--txt-dim);margin-top:-8px}
.rev-score p{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--txt-dim)}

.rev-marquee{
  position:relative;padding:8px 0 4px;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.rev-track{display:flex;gap:18px;width:max-content;animation:marquee 52s linear infinite;padding:14px 9px}
.rev-marquee:hover .rev-track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}

.rev-card{
  width:min(84vw,360px);flex:none;
  padding:26px;border-radius:var(--r-lg);
  border:1px solid var(--line-soft);background:linear-gradient(160deg,var(--panel),var(--panel-2));
  display:flex;flex-direction:column;gap:14px;
  transition:transform .5s var(--ease),border-color .5s;
}
.rev-card:hover{transform:translateY(-6px);border-color:var(--line)}
.rev-head{display:flex;align-items:center;gap:12px}
.rev-av{
  width:42px;height:42px;border-radius:50%;flex:none;display:grid;place-items:center;
  font-weight:800;font-size:.86rem;color:#0a0a0a;background:var(--gold-grad);
}
.rev-who{display:grid;line-height:1.3;min-width:0}
.rev-who strong{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rev-who span{font-size:.72rem;color:var(--txt-dim)}
.rev-card .stars svg{width:14px;height:14px;animation:none}
.rev-txt{color:var(--txt-mute);font-size:.9rem;flex:1}
.rev-src{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--txt-dim);
  display:flex;align-items:center;gap:7px}
.rev-src::before{content:"";width:14px;height:1px;background:var(--gold)}

/* ---------- CONTACT ---------- */
.contact{background:var(--black-2)}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,238px),1fr));gap:clamp(14px,2vw,22px)}
.c-card{
  padding:clamp(24px,3vw,32px);border-radius:var(--r-lg);text-align:center;
  border:1px solid var(--line-soft);background:linear-gradient(160deg,var(--panel),var(--panel-2));
  display:grid;justify-items:center;gap:9px;
  transition:transform .5s var(--ease),border-color .5s,box-shadow .5s;
}
.c-card:hover{transform:translateY(-8px);border-color:var(--gold);box-shadow:var(--shadow)}
.c-ico{
  width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin-bottom:6px;
  color:var(--gold-lt);border:1px solid var(--line);background:rgba(201,168,76,.09);
  transition:transform .5s var(--ease),background .4s;
}
.c-ico svg{width:24px;height:24px}
.c-card:hover .c-ico{transform:scale(1.12) rotate(6deg);background:rgba(201,168,76,.2)}
.c-card h3{font-size:1.16rem}
.c-card p{color:var(--txt);font-size:.94rem;font-weight:500;word-break:break-word}
.c-go{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);opacity:.75;transition:opacity .35s}
.c-card:hover .c-go{opacity:1}
.c-wa .c-ico{color:var(--wa);border-color:rgba(37,211,102,.32);background:rgba(37,211,102,.1)}
.c-wa:hover{border-color:rgba(37,211,102,.55)}
.c-wa:hover .c-ico{background:rgba(37,211,102,.2)}

/* ---------- FOOTER ---------- */
.site-footer{
  padding:clamp(52px,7vw,86px) 0 calc(38px + env(safe-area-inset-bottom));
  background:linear-gradient(180deg,#0a0908,#050505);
  border-top:1px solid var(--line);text-align:center;
}
.foot-in{display:grid;justify-items:center;gap:12px}
.foot-logo{width:clamp(70px,10vw,92px);border-radius:16px;animation:preFloat 5s ease-in-out infinite}
.foot-thanks{font-family:'Playfair Display',serif;font-size:clamp(1.3rem,3vw,1.9rem);font-weight:700;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.foot-sub{color:var(--txt-mute);font-size:.95rem}
.foot-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 26px;margin-top:14px}
.foot-links a{font-size:.85rem;color:var(--txt-mute);transition:color .3s}
.foot-links a:hover{color:var(--gold-lt)}
.foot-copy{margin-top:20px;font-size:.72rem;letter-spacing:.13em;color:var(--txt-dim)}

/* ---------- FLOATING WHATSAPP ---------- */
.wa-float{
  position:fixed;z-index:880;
  right:clamp(14px,2.6vw,26px);
  bottom:calc(clamp(14px,2.6vw,26px) + env(safe-area-inset-bottom));
  display:flex;align-items:center;gap:0;
  height:58px;padding:0 17px;border-radius:100px;
  background:linear-gradient(135deg,#1eb955,#25d366);color:#fff;
  box-shadow:0 12px 34px rgba(37,211,102,.42);
  transition:gap .45s var(--ease),padding .45s var(--ease),transform .4s var(--ease),box-shadow .4s;
  overflow:hidden;
}
.wa-float svg{width:27px;height:27px;flex:none;animation:waPulse 2.6s ease-in-out infinite}
.wa-label{
  max-width:0;opacity:0;white-space:nowrap;font-weight:700;font-size:.9rem;
  transition:max-width .5s var(--ease),opacity .35s;
}
.wa-float:hover{transform:translateY(-4px) scale(1.03);box-shadow:0 18px 44px rgba(37,211,102,.6);gap:11px;padding-right:22px}
.wa-float:hover .wa-label{max-width:200px;opacity:1}
.wa-float::before{
  content:"";position:absolute;inset:0;border-radius:100px;border:2px solid rgba(37,211,102,.6);
  animation:waRing 2.6s var(--ease-io) infinite;
}
@keyframes waRing{0%{transform:scale(1);opacity:.7}70%,100%{transform:scale(1.45);opacity:0}}
@keyframes waPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.13)}}

/* ---------- LIGHTBOX ---------- */
.lightbox{
  position:fixed;inset:0;z-index:1200;display:grid;place-items:center;
  background:rgba(4,4,4,.96);backdrop-filter:blur(14px);
  padding:clamp(44px,7vw,80px) clamp(12px,5vw,70px);
  opacity:0;transition:opacity .4s var(--ease);
}
.lightbox.is-on{opacity:1}
.lb-fig{margin:0;display:grid;gap:14px;justify-items:center;max-height:100%}
.lb-fig img{
  max-height:76vh;width:auto;border-radius:var(--r);box-shadow:0 30px 90px rgba(0,0,0,.8);
  animation:lbIn .55s var(--ease);
}
@keyframes lbIn{from{opacity:0;transform:scale(.93)}to{opacity:1;transform:none}}
.lb-fig figcaption{font-family:'Playfair Display',serif;font-size:1.16rem;color:var(--gold-lt);text-align:center}
.lb-close{
  position:absolute;top:clamp(12px,2.4vw,26px);right:clamp(12px,2.4vw,26px);
  width:46px;height:46px;border-radius:50%;font-size:1.9rem;line-height:1;color:var(--gold-lt);
  border:1px solid var(--line);background:rgba(255,255,255,.05);transition:all .35s var(--ease);
}
.lb-close:hover{background:rgba(201,168,76,.22);transform:rotate(90deg)}
.lb-nav{
  position:absolute;top:50%;translate:0 -50%;
  width:clamp(40px,5vw,54px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;
  color:var(--gold-lt);border:1px solid var(--line);background:rgba(255,255,255,.05);
  transition:all .35s var(--ease);
}
.lb-nav svg{width:44%;height:44%}
.lb-nav:hover{background:rgba(201,168,76,.22);transform:scale(1.1)}
.lb-prev{left:clamp(8px,2vw,26px)}
.lb-next{right:clamp(8px,2vw,26px)}

/* ---------- MODALS ---------- */
.modal{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:var(--pad)}
.modal-scrim{position:absolute;inset:0;background:rgba(4,4,4,.86);backdrop-filter:blur(9px);opacity:0;transition:opacity .4s}
.modal.is-on .modal-scrim{opacity:1}
.modal-box{
  position:relative;width:min(100%,470px);max-height:88dvh;overflow-y:auto;
  padding:clamp(28px,4vw,40px);border-radius:var(--r-xl);
  border:1px solid var(--line);background:linear-gradient(165deg,#151312,#0a0a09);
  box-shadow:var(--shadow);
  opacity:0;transform:translateY(28px) scale(.96);
  transition:opacity .5s var(--ease),transform .5s var(--ease);
}
.modal.is-on .modal-box{opacity:1;transform:none}
.modal-x{
  position:absolute;top:14px;right:16px;width:36px;height:36px;border-radius:50%;
  font-size:1.6rem;line-height:1;color:var(--txt-mute);transition:all .35s var(--ease);
}
.modal-x:hover{color:var(--gold-lt);background:rgba(201,168,76,.13);transform:rotate(90deg)}

.quiz-box h3{font-size:clamp(1.5rem,4vw,1.95rem);margin-bottom:8px}
.quiz-sub{color:var(--txt-mute);font-size:.9rem;margin-bottom:26px}
.quiz-q{margin-bottom:22px}
.quiz-label{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:11px}
.quiz-opts{display:flex;flex-wrap:wrap;gap:9px}
.quiz-opt{
  padding:11px 18px;border-radius:100px;font-size:.86rem;font-weight:500;
  border:1px solid var(--line-soft);color:var(--txt-mute);background:rgba(255,255,255,.03);
  transition:all .4s var(--ease);
}
.quiz-opt:hover{border-color:var(--gold);color:var(--gold-lt);transform:translateY(-2px)}
.quiz-opt.is-on{background:var(--gold-grad);color:#0a0a0a;border-color:transparent;font-weight:700}
.quiz-skip{display:block;width:100%;margin-top:14px;font-size:.82rem;color:var(--txt-dim);transition:color .3s}
.quiz-skip:hover{color:var(--gold-lt)}

.done-box{text-align:center}
.done-box h3{font-size:clamp(1.5rem,4vw,1.95rem);margin:18px 0 12px}
.done-box p{color:var(--txt-mute);font-size:.94rem;margin-bottom:26px}
.done-tick{width:92px;margin:0 auto}
.done-tick svg{width:100%;stroke:var(--gold);stroke-width:3;stroke-linecap:round}
.tick-c{stroke-dasharray:151;stroke-dashoffset:151;animation:tickC .7s var(--ease) forwards}
.tick-p{stroke-dasharray:40;stroke-dashoffset:40;animation:tickP .45s var(--ease) .55s forwards}
@keyframes tickC{to{stroke-dashoffset:0}}
@keyframes tickP{to{stroke-dashoffset:0}}

/* ---------- BOOKING PANEL ---------- */
.booking{
  position:fixed;inset:0;z-index:1150;background:var(--black);
  display:flex;flex-direction:column;
  transform:translateY(100%);transition:transform .7s var(--ease);
}
.booking.is-on{transform:none}
.bk-bar{
  flex:none;height:62px;display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:0 var(--pad);padding-top:env(safe-area-inset-top);
  border-bottom:1px solid var(--line);background:rgba(10,10,10,.9);backdrop-filter:blur(16px);
}
.bk-back{font-size:.86rem;font-weight:600;color:var(--txt-mute);transition:color .3s,transform .3s}
.bk-back:hover{color:var(--gold-lt);transform:translateX(-3px)}
.bk-brand{display:flex;align-items:center;gap:9px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--txt-dim)}
.bk-brand img{border-radius:6px}
.bk-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:clamp(26px,4vw,52px) var(--pad) calc(60px + env(safe-area-inset-bottom))}
.bk-inner{width:min(100%,700px);margin-inline:auto}
.bk-inner h2{font-size:clamp(1.9rem,5vw,3rem);margin-bottom:22px}

.bk-times{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}
.bk-times>div{
  display:flex;align-items:center;gap:9px;padding:11px 18px;border-radius:100px;
  border:1px solid var(--line);background:rgba(201,168,76,.05);font-size:.86rem;
}
.bk-times span{color:var(--txt-dim)}
.bk-times strong{color:var(--gold-lt)}
.bk-note{font-size:.8rem;color:var(--txt-dim);margin-bottom:30px}

.bk-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin-bottom:16px}
.bk-field{display:grid;gap:8px}
.bk-field>span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.bk-field input,.room-row select,.room-row input{
  width:100%;padding:14px 16px;border-radius:var(--r-sm);
  border:1px solid var(--line-soft);background:rgba(255,255,255,.035);color:var(--txt);
  font-size:.95rem;font-family:inherit;
  transition:border-color .35s,background .35s,box-shadow .35s;
  min-height:48px;
}
.bk-field input::placeholder{color:var(--txt-dim)}
.bk-field input:focus,.room-row select:focus,.room-row input:focus{
  outline:none;border-color:var(--gold);background:rgba(201,168,76,.07);
  box-shadow:0 0 0 3px rgba(201,168,76,.13);
}
.bk-field input.is-bad{border-color:#ff6b6b;box-shadow:0 0 0 3px rgba(255,107,107,.14)}
input[type=date]{color-scheme:dark}

.room-rows{display:grid;gap:14px;margin:26px 0 16px}
.room-row{
  display:grid;grid-template-columns:1.4fr 1fr auto;gap:12px;align-items:end;
  padding:18px;border-radius:var(--r);
  border:1px solid var(--line-soft);background:rgba(255,255,255,.022);
  animation:rowIn .45s var(--ease);
}
@keyframes rowIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.room-row label{display:grid;gap:7px;min-width:0}
.room-row label>span{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:var(--txt-dim)}
.room-row select{appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a84c' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:17px;padding-right:38px}
.room-row select option{background:#111}
.row-del{
  width:46px;height:48px;border-radius:var(--r-sm);display:grid;place-items:center;font-size:1.3rem;
  color:#ff7b7b;border:1px solid rgba(255,107,107,.24);background:rgba(255,107,107,.07);
  transition:all .35s var(--ease);
}
.row-del:hover{background:rgba(255,107,107,.18);transform:scale(1.06)}
.row-del[disabled]{opacity:.28;cursor:not-allowed}

.bk-add{
  width:100%;padding:14px;border-radius:var(--r-sm);font-size:.88rem;font-weight:600;
  color:var(--gold-lt);border:1px dashed var(--line);background:rgba(201,168,76,.04);
  transition:all .4s var(--ease);
}
.bk-add:hover{background:rgba(201,168,76,.12);border-style:solid;transform:translateY(-2px)}

.bk-summary{margin:28px 0 20px;padding:22px;border-radius:var(--r);border:1px solid var(--line);background:rgba(201,168,76,.045)}
.bk-summary h4{font-size:1.1rem;margin-bottom:14px}
.bk-summary ul{display:grid;gap:9px}
.bk-summary li{display:flex;justify-content:space-between;gap:14px;font-size:.88rem;color:var(--txt-mute)}
.bk-summary li strong{color:var(--txt);font-weight:600;white-space:nowrap}
.bk-total{
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  margin-top:16px;padding-top:16px;border-top:1px solid var(--line);
}
.bk-total span{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--txt-dim)}
.bk-total strong{font-family:'Playfair Display',serif;font-size:clamp(1.5rem,3.4vw,2rem);
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.bk-pay{font-size:.85rem;color:var(--txt-mute);margin-bottom:24px}
.bk-pay strong{color:var(--gold-lt)}

/* ---------- SCROLL REVEAL ---------- */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
.reveal.is-in{opacity:1;transform:none}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:1100px){
  .about-wrap{grid-template-columns:1fr;gap:44px}
  .about-gallery{aspect-ratio:1/.86;max-width:620px;margin-inline:auto;width:100%}
}

@media (max-width:900px){
  :root{--hdr-h:66px}
  .desk-nav{display:none}
  .mob-toggle{display:block}
  .hero{min-height:92svh;align-items:flex-end;padding-bottom:clamp(110px,17vh,160px)}
  .hero-content{max-width:100%}
  .hero-dots{left:var(--pad);right:auto;bottom:clamp(70px,11vh,96px)}
  .scroll-cue{left:auto;right:var(--pad);translate:0 0}
  .hero-arrow{opacity:1;width:40px}
  .gal-grid{grid-auto-rows:170px}
}

@media (max-width:760px){
  .gal-item:nth-child(1),.gal-item:nth-child(6){grid-row:span 1}
  .gal-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}
  .room-row{grid-template-columns:1fr 1fr;gap:10px}
  .row-del{grid-column:2;justify-self:end;margin-top:4px}
  .rev-card{width:min(80vw,320px);padding:22px}
  .rev-track{animation-duration:38s}
}

@media (max-width:560px){
  :root{--r-xl:22px;--r-lg:18px}
  .brand-txt small{display:none}
  .hero-title{font-size:clamp(2.6rem,13vw,3.6rem)}
  .hero-cta{flex-direction:column;align-items:stretch}
  .hero-cta .btn{width:100%}
  .hero-arrow{display:none}
  .check-strip{gap:14px}
  .check-strip i{display:none}
  .stat-row{gap:20px}
  .gal-grid{grid-auto-rows:132px;gap:9px}
  .gal-item figcaption{font-size:.74rem;left:11px;right:11px;bottom:10px}
  .wa-float{height:52px;padding:0 14px}
  .wa-float svg{width:24px;height:24px}
  .bk-times{flex-direction:column;align-items:stretch}
  .bk-times>div{justify-content:space-between}
  .modal-box{padding:26px 20px}
  .about-gallery{gap:9px}
  .foot-links{gap:6px 16px}
}

@media (max-width:380px){
  .gal-grid{grid-template-columns:1fr;grid-auto-rows:190px}
  .quiz-opts{flex-direction:column}
  .quiz-opt{width:100%}
}

/* short desktop viewports — keep the whole hero, CTA included, above the fold */
@media (min-width:901px) and (max-height:880px){
  .hero{padding-top:calc(var(--hdr-h) + 18px);padding-bottom:78px}
  .hero-pill{margin-bottom:16px}
  .hero-title{margin-bottom:14px}
  .hero-sub{margin-bottom:18px}
  .hero-rating{margin-bottom:22px}
}

/* short landscape phones */
@media (max-height:520px) and (orientation:landscape){
  .hero{min-height:auto;padding-top:calc(var(--hdr-h) + 26px);padding-bottom:70px;align-items:center}
  .hero-title{font-size:clamp(2rem,7vw,3rem)}
  .scroll-cue{display:none}
  .mob-nav{padding-top:calc(var(--hdr-h) + 14px)}
  .mob-nav a{padding:10px 0;font-size:1.05rem}
}

/* ultra-wide */
@media (min-width:1800px){
  :root{--wrap:1440px}
  .gal-grid{grid-auto-rows:240px}
}

/* touch devices: no hover lifts that stick */
@media (hover:none){
  .amen-card:hover,.room-card:hover,.c-card:hover,.gal-item:hover{transform:none}
  .wa-float .wa-label{display:none}
}

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;animation-iteration-count:1 !important;
    transition-duration:.001ms !important;scroll-behavior:auto !important;
  }
  .reveal{opacity:1;transform:none}
  .hero-title .line>*{transform:none;opacity:1}
  .hero-slide.is-active img{animation:none;transform:scale(1.02)}
  .rev-track{animation:none;transform:none;overflow-x:auto}
  .cursor-glow{display:none}
}

/* ---------- PRINT ---------- */
@media print{
  .site-header,.mob-nav,.wa-float,.hero-arrow,.hero-dots,.scroll-cue,.scroll-progress,.preloader,.cursor-glow{display:none !important}
  body{background:#fff;color:#000}
}
