*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--gold:#C9A96E;--gold-light:#E8D5B0;--gold-dim:rgba(201,169,110,.18);--dark:#0D0D0D;--dark-2:#141414;--dark-3:#1C1C1C;--dark-4:#242424;--light:#F5F0EA;--white:#FFFFFF;--muted:#8A8A8A;--tr:.4s cubic-bezier(.25,.46,.45,.94)}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--dark);color:var(--light);overflow-x:hidden;line-height:1.7}
::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--dark)}::-webkit-scrollbar-thumb{background:var(--gold);border-radius:2px}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:22px 60px;display:flex;align-items:center;justify-content:space-between;transition:background var(--tr),padding var(--tr)}
nav.scrolled{background:rgba(13,13,13,.93);backdrop-filter:blur(20px);padding:14px 60px;border-bottom:1px solid rgba(201,169,110,.15)}
.nav-logo{display:flex;flex-direction:column;gap:2px;text-decoration:none}
.nav-logo-main{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:500;color:var(--white);letter-spacing:.05em}
.nav-logo-sub{font-size:.52rem;font-weight:300;letter-spacing:.35em;text-transform:uppercase;color:var(--gold)}
.nav-right{display:flex;align-items:center;gap:28px}
.nav-back{text-decoration:none;font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(245,240,234,.7);transition:color var(--tr);display:flex;align-items:center;gap:8px}
.nav-back:hover{color:var(--gold)}
.lang-sw{display:flex;align-items:center;gap:5px}
.lang-btn{background:none;border:1.5px solid transparent;font-size:1.4rem;cursor:pointer;padding:2px 3px;line-height:1;transition:all var(--tr);border-radius:4px;display:flex;align-items:center;justify-content:center;opacity:.55;filter:grayscale(15%)}
.lang-btn:hover{opacity:1;filter:grayscale(0%)}
.lang-btn.active{border-color:var(--gold);opacity:1;filter:grayscale(0%)}
.btn-p{display:inline-block;padding:14px 38px;background:var(--gold);color:var(--dark);text-decoration:none;font-size:.63rem;letter-spacing:.25em;text-transform:uppercase;font-weight:500;transition:all var(--tr);cursor:pointer;border:none}
.btn-p:hover{background:var(--gold-light);transform:translateY(-2px)}
.btn-o{display:inline-block;padding:14px 38px;border:1px solid rgba(245,240,234,.5);color:var(--white);text-decoration:none;font-size:.63rem;letter-spacing:.25em;text-transform:uppercase;font-weight:400;transition:all var(--tr)}
.btn-o:hover{border-color:var(--gold);color:var(--gold)}

/* UTILS */
.sec-eye{font-size:.6rem;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;font-weight:300}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(1.9rem,3.5vw,3rem);font-weight:400;line-height:1.2;color:var(--white);margin-bottom:24px}
.sec-title em{font-style:italic;color:var(--gold-light)}
.sec-body{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:300;color:rgba(245,240,234,.75);line-height:1.85;max-width:660px}
.divider{width:60px;height:1px;background:var(--gold);margin:24px 0}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.rd1{transition-delay:.15s}.rd2{transition-delay:.3s}.rd3{transition-delay:.45s}

/* ===== HERO — split layout diferente do apartamento ===== */
.hero{position:relative;min-height:600px;overflow:hidden;display:flex;align-items:stretch}
.hero-left{position:relative;flex:1.1;overflow:hidden;min-height:0}
.hero-left-bg{position:absolute;inset:0;background-size:cover;background-position:center;pointer-events:none}
.hero-left-ov{position:absolute;inset:0;background:linear-gradient(to right,rgba(13,13,13,.4) 0%,rgba(13,13,13,.0) 50%,rgba(13,13,13,.85) 100%);pointer-events:none}

.hero-right{position:relative;z-index:2;width:440px;flex-shrink:0;background:var(--dark);display:flex;flex-direction:column;justify-content:center;padding:72px 48px;border-left:1px solid rgba(201,169,110,.12)}
.hero-eyebrow{font-size:.52rem;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:20px;font-weight:300;margin-top:0;display:flex;align-items:center;gap:10px}
.hero-eyebrow::before{content:'';display:inline-block;width:28px;height:1px;background:var(--gold);opacity:.6;flex-shrink:0}
.hero-right::before{content:'';position:absolute;top:0;left:0;width:1px;height:100%;background:linear-gradient(to bottom,transparent,var(--gold) 30%,var(--gold) 70%,transparent)}

.hero-title{font-family:'Playfair Display',serif;font-size:clamp(2rem,3.5vw,3rem);font-weight:400;color:var(--white);line-height:1.05;margin-bottom:8px}
.hero-title em{display:block;font-style:italic;color:var(--gold-light);font-size:.72em}
.hero-sub{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:300;color:rgba(245,240,234,.6);line-height:1.75;margin-bottom:24px;margin-top:14px}
.hero-specs{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-bottom:24px;border:1px solid rgba(201,169,110,.15)}
.hero-spec{padding:12px 14px;text-align:center;background:rgba(255,255,255,.02);transition:background .2s}
.hero-spec:hover{background:rgba(201,169,110,.05)}
.hero-spec-val{font-family:'Playfair Display',serif;font-size:1.4rem;color:var(--gold);line-height:1;margin-bottom:5px}
.hero-spec-key{font-size:.5rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.hero-price{margin-bottom:24px;padding:18px 0;border-top:1px solid rgba(201,169,110,.12);border-bottom:1px solid rgba(201,169,110,.12)}
.hero-price-from{font-size:.5rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.hero-price-val{font-family:'Playfair Display',serif;font-size:2.2rem;color:var(--white);display:flex;align-items:baseline;gap:6px}
.hero-right-content{display:flex;flex-direction:column}
.hero-price-val span{font-size:.72rem;color:var(--muted);font-family:'Inter',sans-serif;font-weight:300}
.hero-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;margin-left:-48px;padding-left:48px;margin-right:-48px;padding-right:48px;padding-top:12px;border-top:1px solid rgba(201,169,110,.08)}
.hero-badge{font-size:.44rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(201,169,110,.65);border:1px solid rgba(201,169,110,.2);padding:4px 10px;white-space:nowrap}

.hero-date-badges{
  display:flex;flex-direction:column;justify-content:center;gap:5px;
  padding:0 20px;border-left:1px solid rgba(255,255,255,.07);
  flex-shrink:0;
}
.hero-date-badge{
  font-size:.38rem;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(201,169,110,.65);border:1px solid rgba(201,169,110,.18);
  padding:3px 8px;white-space:nowrap;
}

/* ===== HERO DATE BAR ===== */
.hero-date-bar{
  position:absolute;
  bottom:0;left:0;right:0;
  z-index:1002;
  height:78px;
  background:rgba(8,8,8,.82);
  border-top:1px solid rgba(201,169,110,.45);
  display:flex;
}
/* Separador vertical entre campos */
.hero-date-bar > * + *{
  border-left:1px solid rgba(255,255,255,.07);
}
.hero-date-field{
  flex:1;
  display:flex;flex-direction:column;justify-content:center;
  padding:0 34px;
  cursor:pointer;border:none;background:none;
  transition:background .18s;
  text-align:left;
}
.hero-date-field:hover{background:rgba(201,169,110,.06)}
.hero-date-field.hdb-active{background:rgba(201,169,110,.1)}
.hero-date-label{
  font-size:.37rem;letter-spacing:.32em;text-transform:uppercase;
  color:var(--gold);font-weight:400;margin-bottom:6px;
}
.hero-date-val{
  font-family:'Cormorant Garamond',serif;
  font-size:1.1rem;font-weight:300;
  color:rgba(245,240,234,.9);white-space:nowrap;
}
.hero-date-val.hdb-empty{color:rgba(245,240,234,.32);font-style:italic}
.hero-date-promo-wrap{
  flex-shrink:0;min-width:170px;
  display:flex;flex-direction:column;justify-content:center;
  padding:0 30px;
}
.hero-date-promo-label{
  font-size:.37rem;letter-spacing:.32em;text-transform:uppercase;
  color:var(--gold);font-weight:400;margin-bottom:6px;
}
.hero-date-promo-wrap input{
  border:none;outline:none;background:none;
  font-family:'Cormorant Garamond',serif;
  font-size:1.1rem;font-weight:300;
  color:rgba(245,240,234,.9);width:100%;
}
.hero-date-promo-wrap input::placeholder{
  color:rgba(245,240,234,.28);font-style:italic;
}
.hero-date-btn{
  flex-shrink:0;min-width:170px;
  display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:4px;
  padding:0 36px;
  background:var(--gold);
  border:none;cursor:pointer;
  transition:background .22s;
}
.hero-date-btn:hover{background:#d4b47a}
.hero-date-btn-label{
  font-size:.33rem;letter-spacing:.3em;text-transform:uppercase;
  color:rgba(13,13,13,.55);font-weight:400;
}
.hero-date-btn-text{
  font-size:.5rem;letter-spacing:.3em;text-transform:uppercase;
  color:var(--dark);font-weight:700;white-space:nowrap;
}

/* ── Calendário — mesmo tema escuro da barra ── */
#hdbCal{
  display:none;
}
#hdbCal.open{
  display:block;
  position:absolute;
  bottom:78px;left:0;right:0;max-height:calc(100% - 78px);
  z-index:1003;
  animation:hdbSlideUp .2s cubic-bezier(.25,.46,.45,.94);
  overflow-y:auto;
}
@keyframes hdbSlideUp{
  from{transform:translateY(10px);opacity:0}
  to{transform:translateY(0);opacity:1}
}
#hdbCalBox{
  background:var(--dark-3);
  border-top:1px solid rgba(201,169,110,.4);
  padding:18px 24px 18px;
  box-shadow:0 -12px 50px rgba(0,0,0,.6);
}
#hdbCalBox .hcal-head{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:10px;
}
#hdbCalBox .hcal-title{
  font-family:'Playfair Display',serif;
  font-size:.95rem;color:var(--light);font-weight:400;letter-spacing:.05em;
}
#hdbCalBox .hcal-close{
  background:none;border:none;font-size:1.4rem;
  cursor:pointer;color:var(--muted);line-height:1;transition:color .2s;padding:0;
}
#hdbCalBox .hcal-close:hover{color:var(--gold)}
#hdbCalBox .hcal-nav{
  display:flex;align-items:center;gap:14px;margin-bottom:10px;
}
#hdbCalBox .hcal-nav-btn{
  background:none;
  border:1px solid rgba(201,169,110,.2);
  width:28px;height:28px;
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;color:var(--muted);transition:all .18s;
}
#hdbCalBox .hcal-nav-btn:hover{border-color:var(--gold);color:var(--gold)}
#hdbCalBox .hcal-period{
  font-size:.44rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--muted);flex:1;text-align:center;
}
#hdbCalBox .hcal-months{
  display:grid;grid-template-columns:1fr 1fr;gap:32px;
}
#hdbCalBox .hcal-month-title{
  font-size:.42rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold);margin-bottom:12px;text-align:center;
}
#hdbCalBox .hcal-dow{
  display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px;
}
#hdbCalBox .hcal-dow-cell{
  text-align:center;font-size:.34rem;letter-spacing:.08em;
  text-transform:uppercase;color:rgba(138,138,138,.4);padding:3px 0;
}
#hdbCalBox .hcal-days{
  display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,1fr);gap:2px;
}
#hdbCalBox .hcal-day{
  text-align:center;font-size:.78rem;
  color:rgba(245,240,234,.75);
  cursor:pointer;transition:all .12s;
  min-height:28px;display:flex;align-items:center;justify-content:center;
  border-radius:1px;
}
#hdbCalBox .hcal-day:hover:not(.hpast):not(.hempty){
  background:rgba(201,169,110,.14);color:var(--gold);
}
#hdbCalBox .hcal-day.hempty{cursor:default}
#hdbCalBox .hcal-day.hpast{color:rgba(138,138,138,.2);cursor:not-allowed}
#hdbCalBox .hcal-day.htoday{color:var(--gold);font-weight:600}
#hdbCalBox .hcal-day.hsel-start,
#hdbCalBox .hcal-day.hsel-end{background:var(--gold);color:var(--dark);font-weight:600}
#hdbCalBox .hcal-day.hsel-single{background:var(--gold);color:var(--dark);font-weight:600}
#hdbCalBox .hcal-day.hin-range{background:rgba(201,169,110,.13);color:var(--light)}
#hdbCalBox .hcal-foot{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:12px;padding-top:12px;
  border-top:1px solid rgba(201,169,110,.12);
}
#hdbCalBox .hcal-selected{
  font-family:'Cormorant Garamond',serif;
  font-size:.95rem;color:rgba(138,138,138,.7);
}
#hdbCalBox .hcal-selected span{color:var(--light);font-weight:400}
#hdbCalBox .hcal-btns{display:flex;gap:12px;align-items:center}
#hdbCalBox .hcal-btn-clear{
  background:none;border:none;
  font-size:.44rem;letter-spacing:.15em;text-transform:uppercase;
  color:rgba(138,138,138,.5);cursor:pointer;text-decoration:underline;
  transition:color .2s;
}
#hdbCalBox .hcal-btn-clear:hover{color:var(--light)}
#hdbCalBox .hcal-btn-ok{
  background:var(--gold);color:var(--dark);
  border:none;padding:10px 28px;
  font-size:.44rem;letter-spacing:.22em;text-transform:uppercase;
  font-weight:700;cursor:pointer;transition:background .2s;
}
#hdbCalBox .hcal-btn-ok:hover{background:#d4b47a}
#hdbCalBox .hcal-btn-ok:disabled{
  background:rgba(201,169,110,.12);
  color:rgba(138,138,138,.3);cursor:not-allowed;
}

#hdbCalBox .months-wrap{gap:16px}
#hdbCalBox .day.booked::after{bottom:3px}
#hdbCalBox .day{height:32px;font-size:.72rem}
#hdbCalBox .day-price{font-size:.38rem}
#hdbCalBox .month-title{font-size:.75rem;margin-bottom:8px}
#hdbCalBox .dow-row div{font-size:.38rem}

/* Desktop only */
@media(max-width:900px){
  .hero-date-bar{display:none}
  #hdbCal{display:none!important}
  #hdbCal.open{display:none!important}
}

/* ===== GALLERY — hero mosaic diferente ===== */
.gallery{background:var(--dark)}
.gal-hd{padding:80px 60px 48px;text-align:center}
/* Mosaico grande-pequena */
.gal-mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:360px 280px;gap:3px}
.gal-mosaic .gal-item{overflow:hidden;position:relative}
.gal-mosaic .gal-item img{width:100%;height:100%;object-fit:cover;cursor:pointer;transition:transform .7s ease,filter .4s ease;filter:brightness(.92);display:block}
.gal-mosaic .gal-item img:hover{transform:scale(1.05);filter:brightness(1)}
.gal-item-span{grid-row:span 2}
.gal-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin-top:3px}
.gal-strip .gal-item{overflow:hidden}
.gal-strip .gal-item img{width:100%;aspect-ratio:4/3;object-fit:cover;cursor:pointer;transition:transform .7s ease,filter .4s ease;filter:brightness(.92);display:block}
.gal-strip .gal-item img:hover{transform:scale(1.05);filter:brightness(1)}
.gal-label{position:absolute;bottom:10px;left:10px;background:rgba(13,13,13,.55);backdrop-filter:blur(6px);color:rgba(245,240,234,.85);font-size:.5rem;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;pointer-events:none;border:1px solid rgba(201,169,110,.2)}
.gal-more{text-align:center;padding:32px;font-size:.62rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);cursor:pointer;transition:color var(--tr)}
.gal-more:hover{color:var(--gold)}

/* LIGHTBOX */
.lb{display:none;position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:2000;align-items:center;justify-content:center}
.lb.open{display:flex}
.lb img{max-width:90vw;max-height:88vh;object-fit:contain}
.lb-close{position:absolute;top:24px;right:32px;font-size:2rem;color:var(--gold);cursor:pointer;line-height:1;background:none;border:none;font-family:serif}
.lb-prev,.lb-next{position:absolute;top:50%;transform:translateY(-50%);font-size:2.5rem;color:var(--gold);cursor:pointer;background:none;border:none;padding:0 20px;font-family:serif;line-height:1}
.lb-prev{left:0}.lb-next{right:0}
.lb-counter{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);font-size:.62rem;letter-spacing:.2em;color:rgba(255,255,255,.5)}

/* ===== EXPERIÊNCIA — texto + features laterais ===== */
.experience{padding:110px 60px;background:var(--dark-2)}
.exp-in{max-width:1340px;margin:0 auto;display:grid;grid-template-columns:1fr 420px;gap:100px;align-items:start}
.exp-features{display:flex;flex-direction:column;gap:2px}
.exp-feat{display:flex;gap:20px;padding:24px 22px;background:var(--dark-3);border-left:2px solid transparent;transition:border-color var(--tr),background var(--tr)}
.exp-feat:hover{border-left-color:var(--gold);background:var(--dark-4)}
.exp-feat-icon{width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--gold);margin-top:2px}
.exp-feat-icon svg{width:22px;height:22px}
.exp-feat-body{}
.exp-feat-title{font-family:'Playfair Display',serif;font-size:.9rem;color:var(--white);margin-bottom:5px;font-weight:400}
.exp-feat-text{font-size:.75rem;color:var(--muted);line-height:1.65}

/* ===== AMENITIES — 2 col ===== */
.amenities{padding:100px 60px;background:var(--dark-3)}
.am-in{max-width:1300px;margin:0 auto}
.am-hd{text-align:center;margin-bottom:64px}
.am-hd .divider{margin:18px auto}
.am-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3px}
.am-cat{background:var(--dark-4);padding:36px 32px}
.am-cat-title{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:400;color:var(--gold);margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid rgba(201,169,110,.18);display:flex;align-items:center;gap:12px}
.am-cat-title svg{width:18px;height:18px;flex-shrink:0}
.am-items{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
.am-item{font-size:.76rem;color:var(--muted);display:flex;gap:8px;align-items:baseline;line-height:1.5}
.am-item::before{content:'—';color:var(--gold);flex-shrink:0}

/* ===== POLÍTICAS ===== */
.policies{padding:80px 60px;background:var(--dark-4)}
.pol-in{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.pol-hd{grid-column:1/-1;text-align:center;margin-bottom:16px}.pol-hd .divider{margin:18px auto}.pol-title{font-family:'Playfair Display',serif;font-size:1rem;color:var(--gold);margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid rgba(201,169,110,.18)}
.pol-list{list-style:none;display:flex;flex-direction:column;gap:9px}
.pol-list li{font-size:.77rem;color:var(--muted);display:flex;gap:9px;align-items:baseline;line-height:1.5}
.pol-list li::before{content:'—';color:var(--gold);flex-shrink:0}

/* ===== BOOKING — calendário integrado ===== */
.booking{padding:100px 60px 80px;background:var(--dark-2)}
.book-in{max-width:1100px;margin:0 auto}
.book-hd{text-align:center;margin-bottom:56px}
.book-hd .divider{margin:18px auto}
.book-wrap{background:var(--dark-3);padding:48px;border:1px solid rgba(201,169,110,.15);position:relative}
.book-wrap::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,transparent,var(--gold),transparent)}
.book-note{margin-top:24px;text-align:center;font-size:.68rem;color:var(--muted);letter-spacing:.08em}

/* ===== CTA FINAL ===== */
.cta-sec{position:relative;overflow:hidden;padding:80px 40px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--dark);border-top:1px solid var(--gold-dim)}
.cta-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.cta-ov{position:absolute;inset:0;background:rgba(13,13,13,.82)}
.cta-cnt{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:900px;min-height:420px;border:1px solid var(--gold-dim);overflow:hidden}
.cta-panel-left{padding:36px 40px;display:flex;flex-direction:column;justify-content:center;background:rgba(13,13,13,.92)}
.cta-panel-right{position:relative;min-height:420px}
.cta-panel-right-img{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.75)}
.cta-panel-right-ov{position:absolute;inset:0;background:linear-gradient(to right,rgba(13,13,13,.4) 0%,transparent 60%)}
.cta-eye{font-size:.44rem;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.cta-title{font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:400;color:var(--white);line-height:1.35;margin-bottom:10px}
.cta-title em{font-style:italic;color:var(--gold-light)}
.cta-divider{width:40px;height:1px;background:var(--gold);margin:12px 0 20px}
.cta-body{font-size:.82rem;color:var(--muted);line-height:1.8;margin-bottom:32px;max-width:340px}
.cta-field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}
.cta-field label{font-size:.52rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.cta-field input,.cta-field textarea{background:transparent;border:none;border-bottom:1px solid rgba(201,169,110,.3);color:var(--light);padding:9px 0;font-size:.92rem;font-family:'Inter',sans-serif;outline:none;transition:border-color .2s;resize:none;width:100%}
.cta-field input::placeholder,.cta-field textarea::placeholder{color:rgba(138,138,138,.5)}
.cta-field input:focus,.cta-field textarea:focus{border-bottom-color:var(--gold)}
.cta-field-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cta-btn-send{width:100%;padding:16px;background:var(--gold);border:none;color:var(--dark);font-size:.62rem;letter-spacing:.25em;text-transform:uppercase;font-family:'Inter',sans-serif;cursor:pointer;font-weight:600;transition:background .25s;margin-top:8px}
.cta-btn-send:hover{background:var(--gold-light)}
.cta-wa-alt{margin-top:18px;font-size:.78rem;color:var(--muted)}
.cta-wa-alt a{color:var(--gold);text-decoration:none;transition:opacity .2s}
.cta-wa-alt a:hover{opacity:.7}
.cta-privacy{margin-top:12px;font-size:.65rem;color:rgba(138,138,138,.5);letter-spacing:.03em}
@media(max-width:768px){.cta-cnt{grid-template-columns:1fr}.cta-panel-right{display:none}.cta-panel-left{padding:60px 24px}}


/* ===== POLICY MODALS ===== */
.pol-modal-ov{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:2000;display:none;align-items:center;justify-content:center;padding:20px}
.pol-modal-ov.open{display:flex}
.pol-modal{background:var(--dark-3);border:1px solid var(--gold-dim);max-width:540px;width:100%;max-height:85vh;overflow-y:auto;position:relative}
.pol-modal-head{padding:24px 28px 18px;border-bottom:1px solid var(--gold-dim);position:sticky;top:0;background:var(--dark-3);z-index:1}
.pol-modal-eye{font-size:.42rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.pol-modal-title{font-family:'Playfair Display',serif;font-size:1.2rem;color:var(--white)}
.pol-modal-close{position:absolute;top:16px;right:20px;background:none;border:none;color:var(--muted);font-size:1.4rem;cursor:pointer;line-height:1;transition:color .2s}
.pol-modal-close:hover{color:var(--gold)}
.pol-modal-body{padding:24px 28px 32px}
.pol-modal-section{margin-bottom:24px}
.pol-modal-section:last-child{margin-bottom:0}
.pol-modal-section-title{font-size:.46rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--gold-dim)}
.pol-modal-section p{font-size:.78rem;color:var(--muted);line-height:1.8;margin-bottom:8px}
.pol-modal-section p:last-child{margin-bottom:0}
.pol-modal-section p strong{color:var(--light)}

/* ===== FLOAT CTA ===== */


/* ===== FOOTER ===== */
footer{background:var(--dark);padding:0;border-top:none}
.foot-in{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}
.foot-brand .nav-logo-main{font-size:1.2rem;margin-bottom:4px}
.foot-brand .nav-logo-sub{margin-top:4px;margin-bottom:14px}
.foot-bot-logo{height:44px;width:auto;opacity:.85;flex-shrink:0}
.foot-desc{font-size:.76rem;color:var(--muted);line-height:1.8}
.foot-h{font-size:.57rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-weight:500}
.foot-links{list-style:none;display:flex;flex-direction:column;gap:10px}
.foot-links a{text-decoration:none;font-size:.76rem;color:var(--muted);transition:color var(--tr)}
.foot-links a:hover{color:var(--gold)}
.foot-bot{max-width:1400px;margin:30px auto 0;padding-top:24px;border-top:1px solid rgba(255,255,255,.05);display:flex;justify-content:space-between;align-items:center}
.foot-copy{font-size:.68rem;color:var(--muted)}
.foot-legal{display:flex;gap:20px}
.foot-legal a{font-size:.68rem;color:var(--muted);text-decoration:none;transition:color var(--tr)}
.foot-legal a:hover{color:var(--gold)}

/* ===== RESPONSIVE ===== */
@media(max-width:1100px){
  nav,nav.scrolled{padding:18px 32px}
  .hero-right{width:360px;padding:60px 36px}
  .exp-in{gap:56px;grid-template-columns:1fr 360px}
  .am-grid{grid-template-columns:1fr}
  .foot-in{grid-template-columns:1fr 1fr;gap:30px}
}
@media(max-width:900px){
  .hero{flex-direction:column;height:auto}
  .hero-left{height:60vw;min-height:320px;flex:none}
  .hero-right{width:100%;padding:36px 24px;border-left:none;border-top:1px solid rgba(201,169,110,.12)}
  .hero-right::before{display:none}
  .hero-title{font-size:1.6rem}
  .hero-sub{font-size:.92rem;margin-top:10px;margin-bottom:18px}
  .hero-eyebrow{margin-bottom:12px}
  .hero-price-val{font-size:1.7rem}
  .hero-price{margin-bottom:16px;padding:14px 0}
  .hero-specs{margin-bottom:16px}
  .exp-in{grid-template-columns:1fr}
  .pol-in{grid-template-columns:1fr}
  .gal-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .gal-item-span{grid-row:span 1}
  .foot-in{grid-template-columns:1fr;text-align:center}
  .foot-in .foot-links{align-items:center}
  .foot-bot{flex-direction:column;gap:16px;text-align:center;margin-top:20px}
  .foot-bot > div:first-child{flex-direction:column;align-items:center;gap:10px}
  .foot-bot-logo{height:36px}
}
@media(max-width:600px){
  nav,nav.scrolled{padding:16px 18px}
  nav .btn-p{display:none}
  .nav-logo-sub{letter-spacing:.1em;font-size:.48rem}
  .experience,.amenities,.policies,.booking,.cta-sec{padding:70px 20px}
  .gal-hd{padding:60px 20px 36px}
  .gal-mosaic{grid-template-columns:1fr;grid-template-rows:auto}
  .gal-strip{grid-template-columns:1fr 1fr}
  .am-items{grid-template-columns:1fr}
  footer{padding:36px 20px 100px}
  .foot-legal{justify-content:center}
  .book-wrap{padding:28px 20px}
  .hero-specs{grid-template-columns:1fr 1fr}
}

/* ===== CALENDÁRIO DE RESERVAS ===== */
:root{
  --booked:#3A2020;--booked-text:#C07070;--booked-strike:#C07070;
  --in-range:rgba(201,169,110,.15);
}
.cal-wrap{width:100%;max-width:860px;margin:0 auto}
.card{background:var(--dark-3);border:1px solid var(--gold-dim);box-shadow:0 24px 80px rgba(0,0,0,.5);width:100%}
.topbar{display:grid;grid-template-columns:1fr 1px 1fr;border-bottom:1px solid var(--gold-dim)}
.topbar-sep{background:var(--gold-dim)}
.topbar-field{padding:18px 24px;cursor:pointer;transition:background var(--tr);position:relative}
.topbar-field:hover{background:rgba(201,169,110,.05)}
.topbar-field.active{background:rgba(201,169,110,.07);outline:2px solid var(--gold);outline-offset:-2px;z-index:1}
.topbar-label{font-size:.52rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:5px}
.topbar-value{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--white)}
.topbar-value.empty{font-family:'Inter',sans-serif;font-size:.88rem;font-weight:300;color:var(--muted)}
.topbar-clear{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.08);border:none;color:var(--light);cursor:pointer;font-size:.85rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:all var(--tr);border-radius:50%}
.topbar-clear:hover{background:var(--gold);color:var(--dark)}
.nights-header{padding:20px 28px 0;display:flex;align-items:baseline;gap:14px}
.nights-count{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:400;color:var(--white)}
.nights-dates{font-size:.78rem;color:var(--muted);font-weight:300}
.cal-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 28px 10px}
.nav-btn{background:none;border:1px solid var(--gold-dim);color:var(--gold);width:36px;height:36px;cursor:pointer;font-size:1.1rem;transition:all var(--tr);display:flex;align-items:center;justify-content:center;border-radius:50%}
.nav-btn:hover{background:var(--gold);color:var(--dark);border-color:var(--gold)}
.nav-period{font-family:'Playfair Display',serif;font-size:.95rem;color:var(--white);letter-spacing:.04em}
.months-wrap{display:grid;grid-template-columns:1fr 1fr;padding:0 24px 24px;gap:8px}
.month{padding:0 6px}
.month-title{font-family:'Playfair Display',serif;font-size:.9rem;font-weight:400;text-align:center;color:var(--gold);margin-bottom:14px;letter-spacing:.08em}
.dow-row{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}
.dow{font-size:.48rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;padding:3px 0}
.days-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.day{height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:.78rem;font-weight:300;cursor:pointer;position:relative;color:var(--light);transition:background var(--tr),color var(--tr);-webkit-tap-highlight-color:transparent;user-select:none}
.day-price{font-size:.48rem;color:var(--gold);letter-spacing:.02em;line-height:1;opacity:.8}
.day.sel-start .day-price,.day.sel-end .day-price,.day.sel-single .day-price{color:rgba(13,13,13,.5)}
.day-no-price{font-size:.44rem;color:var(--muted);opacity:.4;line-height:1}
.day.empty,.day.past{cursor:default;color:rgba(106,106,106,.35);pointer-events:none}
.day.booked{color:rgba(255,255,255,.35);cursor:not-allowed;pointer-events:none;text-decoration:line-through;text-decoration-color:rgba(255,255,255,.3);background:none}
.day.available:hover:not(.sel-start):not(.sel-end):not(.sel-single){background:rgba(201,169,110,.18);color:var(--gold)}
.day.sel-start{background:var(--gold);color:var(--dark);font-weight:500;border-radius:50% 0 0 50%}
.day.sel-end{background:var(--gold);color:var(--dark);font-weight:500;border-radius:0 50% 50% 0}
.day.sel-single{background:var(--gold);color:var(--dark);font-weight:500;border-radius:50%}
.day.in-range{background:var(--in-range);color:var(--light)}
.day.today::after{content:'';position:absolute;bottom:3px;left:50%;transform:translateX(-50%);width:3px;height:3px;background:var(--gold);border-radius:50%}
.day.booked::after{content:'';position:absolute;bottom:12px;left:50%;transform:translateX(-50%);width:3px;height:3px;background:var(--booked-text);border-radius:50%}
.ptip{display:none;position:absolute;bottom:calc(100%+6px);left:50%;transform:translateX(-50%);background:var(--dark);border:1px solid var(--gold-dim);padding:4px 8px;font-size:.55rem;color:var(--gold);white-space:nowrap;z-index:20;pointer-events:none}
.day:hover .ptip{display:block}
.cal-legend{display:flex;gap:24px;justify-content:center;padding:16px 24px 20px;flex-wrap:wrap;border-top:1px solid var(--gold-dim)}
.legend-item{display:flex;align-items:center;gap:8px;font-size:.6rem;letter-spacing:.1em;color:var(--muted)}
.legend-dot{width:10px;height:10px}
.legend-dot.avail{background:var(--dark-4);border:1px solid rgba(245,240,234,.2)}
.legend-dot.sel{background:var(--gold)}
.legend-dot-dot{width:5px;height:5px;background:var(--booked-text);border-radius:50%;flex-shrink:0}
.card-footer{border-top:1px solid var(--gold-dim);padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.footer-info{font-size:.75rem;color:var(--muted);line-height:1.5}
.footer-price{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:400;color:var(--gold);display:none}
.footer-actions{display:flex;align-items:center;gap:16px;flex-shrink:0}
.btn-clear{background:none;border:none;font-size:.62rem;letter-spacing:.1em;color:var(--muted);cursor:pointer;text-decoration:underline;transition:color var(--tr);padding:4px}
.btn-clear:hover{color:var(--light)}
.btn-book{padding:14px 36px;background:var(--gold);color:var(--dark);border:none;font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:all var(--tr);font-family:'Inter',sans-serif}
.btn-book:hover:not(:disabled){background:var(--gold-light);transform:translateY(-1px)}
.btn-book:disabled{background:var(--dark-4);color:var(--muted);cursor:not-allowed;transform:none}
.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:60px;color:var(--muted);font-size:.8rem;letter-spacing:.1em}
.loading-dots{display:flex;gap:6px}
.loading-dots span{width:6px;height:6px;background:var(--gold);border-radius:50%;animation:pulse 1.2s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}
.loading-dots span:nth-child(2){animation-delay:.2s}
.loading-dots span:nth-child(3){animation-delay:.4s}
/* Mobile sheet */
.mob-overlay,.mob-sheet{display:none}
.mob-trigger{display:none}
@media(max-width:599px){
  .card{display:none!important}
  .mob-trigger{display:flex!important;position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--dark-3);border-top:1px solid var(--gold-dim);padding:14px 18px calc(14px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -6px 30px rgba(0,0,0,.7);}
  .mob-trigger.hidden{display:none!important}
  .trig-dates{font-size:.88rem;color:var(--white);margin-bottom:3px}
  .trig-dates.empty{color:var(--muted);font-weight:300}
  .trig-hint{font-size:.6rem;color:var(--muted)}
  .trig-btn{flex-shrink:0;padding:14px 26px;background:var(--gold);color:var(--dark);border:none;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;cursor:pointer;}
  .trig-btn:active{opacity:.85}
  .mob-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:1500;}
  .mob-overlay.open{display:block!important}
  .mob-sheet{display:flex!important;flex-direction:column;position:fixed;inset:0;z-index:1600;background:var(--dark-3);color:var(--light);transform:translateY(100%);transition:transform .35s cubic-bezier(.32,0,.67,0);}
  .mob-sheet.open{transform:translateY(0);transition:transform .35s cubic-bezier(.33,1,.68,1);}
  .sh-head{flex-shrink:0;background:var(--dark-3);border-bottom:1px solid var(--gold-dim);padding:0 20px;}
  .sh-toprow{display:flex;align-items:center;justify-content:space-between;padding:16px 0 0}
  .sh-close{background:none;border:none;font-size:1.4rem;cursor:pointer;color:var(--muted);padding:4px;line-height:1;transition:color var(--tr)}
  .sh-close:hover{color:var(--gold)}
  .sh-clear{background:none;border:none;font-size:.72rem;color:var(--muted);cursor:pointer;text-decoration:underline;padding:4px;letter-spacing:.04em;transition:color var(--tr)}
  .sh-clear:hover{color:var(--light)}
  .sh-nights{padding:10px 0 6px}
  .sh-nn{font-family:'Playfair Display',serif;font-size:1.6rem;font-weight:400;color:var(--white);display:block;line-height:1.1}
  .sh-nr{font-family:'Cormorant Garamond',serif;font-size:.9rem;font-weight:300;color:var(--muted);display:block;margin-top:3px}
  .sh-nights.empty .sh-nn{font-family:'Inter',sans-serif;font-size:1rem;font-weight:300;color:var(--muted)}
  .sh-pills{display:flex;border-top:1px solid var(--gold-dim);margin:0 -20px;padding:0 20px}
  .sh-pill{flex:1;padding:11px 0;text-align:center;border-bottom:2px solid transparent;cursor:pointer;transition:border-color var(--tr)}
  .sh-pill.active{border-bottom-color:var(--gold)}
  .sh-pill-lbl{font-size:.5rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:4px}
  .sh-pill-val{font-family:'Playfair Display',serif;font-size:.92rem;color:var(--white)}
  .sh-pill-val.empty{font-family:'Inter',sans-serif;font-size:.8rem;font-weight:300;color:var(--muted)}
  .sh-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--dark-3);padding-bottom:120px;}
  .sh-dow{position:sticky;top:0;z-index:5;background:var(--dark-3);border-bottom:1px solid var(--gold-dim);display:grid;grid-template-columns:repeat(7,1fr);padding:8px 16px 6px;}
  .sh-dow span{font-size:.52rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center}
  .sh-months{padding-bottom:20px}
  .sh-mo{padding:22px 16px 8px}
  .sh-mo-title{font-family:'Playfair Display',serif;font-size:.95rem;font-weight:400;color:var(--gold);letter-spacing:.06em;margin-bottom:14px}
  .sh-dgrid{display:grid;grid-template-columns:repeat(7,1fr)}
  .md{height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:.9rem;font-weight:300;cursor:pointer;position:relative;color:var(--light);-webkit-tap-highlight-color:transparent;user-select:none;transition:background .12s;}
  .md.empty,.md.past{pointer-events:none;color:rgba(106,106,106,.3)}
  .md.past{text-decoration:line-through}
  .md.booked{pointer-events:none;color:rgba(255,255,255,.35);background:none;text-decoration:line-through;text-decoration-color:rgba(255,255,255,.3);}
  .md.available:active{background:rgba(201,169,110,.12)}
  .md.sel-start{background:var(--gold);color:var(--dark);font-weight:500;border-radius:50% 0 0 50%}
  .md.sel-end{background:var(--gold);color:var(--dark);font-weight:500;border-radius:0 50% 50% 0}
  .md.sel-single{background:var(--gold);color:var(--dark);font-weight:500;border-radius:50%}
  .md.in-range{background:var(--in-range);color:var(--light)}
  .md.today::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:4px;height:4px;background:var(--gold);border-radius:50%}
  .md.booked::after{content:'';position:absolute;bottom:13px;left:50%;transform:translateX(-50%);width:4px;height:4px;background:var(--booked-text);border-radius:50%}
  .md-price{font-size:.5rem;color:var(--gold);pointer-events:none;line-height:1}
  .md-no-price{font-size:.46rem;color:var(--muted);opacity:.4;pointer-events:none;line-height:1}
  .md.sel-start .md-price,.md.sel-end .md-price,.md.sel-single .md-price{color:rgba(13,13,13,.45)}
  .sh-legend{display:flex;gap:20px;justify-content:center;padding:12px 16px;flex-wrap:wrap;flex-shrink:0;border-top:1px solid var(--gold-dim);background:var(--dark-3);}
  .sh-leg-item{display:flex;align-items:center;gap:8px;font-size:.6rem;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}
  .sh-ldot{width:10px;height:10px;flex-shrink:0}
  .sh-ldot.avail{background:var(--dark-4);border:1px solid rgba(245,240,234,.2)}
  .sh-ldot.sel{background:var(--gold)}
  .sh-ldot-dot{width:5px;height:5px;background:var(--booked-text);border-radius:50%;flex-shrink:0}
  .sh-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:var(--muted);font-size:.8rem}
  .sh-ld-dots{display:flex;gap:6px}
  .sh-ld-dots span{width:6px;height:6px;background:var(--gold);border-radius:50%;animation:pulse 1.2s ease-in-out infinite}
  .sh-ld-dots span:nth-child(2){animation-delay:.2s}
  .sh-ld-dots span:nth-child(3){animation-delay:.4s}
  .sh-foot{flex-shrink:0;background:var(--dark-3);border-top:1px solid var(--gold-dim);padding:14px 20px calc(14px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:14px;}
  .sh-foot-info{flex:1}
  .sh-foot-price{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:400;color:var(--gold);display:none;margin-bottom:2px}
  .sh-foot-sub{font-size:.65rem;color:var(--muted);letter-spacing:.04em}
  .sh-foot-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
  .sh-btn-clear{background:none;border:none;font-size:.6rem;color:var(--muted);cursor:pointer;text-decoration:underline;padding:4px;transition:color var(--tr)}
  .sh-btn-clear:hover{color:var(--light)}
  .sh-btn-book{padding:14px 28px;background:var(--gold);color:var(--dark);border:none;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:background var(--tr)}
  .sh-btn-book:hover{background:var(--gold-light)}
  .sh-btn-book:disabled{background:var(--dark-4);color:var(--muted);cursor:not-allowed}
}
#cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:99999;background:rgba(13,13,13,.97);border-top:1px solid rgba(201,169,110,.2);padding:20px 40px}
.cookie-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1200px;margin:0 auto}
.cookie-text{font-size:.78rem;color:rgba(255,255,255,.7);font-family:'Inter',sans-serif;margin:0}
.cookie-text a{color:var(--gold);text-decoration:none}
.cookie-btns{display:flex;gap:12px;flex-shrink:0}
#cookie-deny{background:transparent;border:1px solid rgba(201,169,110,.6);color:rgba(255,255,255,.85);padding:10px 24px;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;font-family:'Inter',sans-serif;transition:all .2s}
#cookie-accept{background:var(--gold);border:none;color:var(--dark);padding:10px 24px;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;font-family:'Inter',sans-serif;font-weight:600;transition:all .2s}
#cookie-deny:hover{border-color:var(--gold);color:var(--gold)}
#cookie-accept:hover{opacity:.85}
@media(max-width:600px){.cookie-inner{flex-direction:column;text-align:center}.cookie-btns{width:100%;justify-content:center}}
#cookie-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:99998;}
#cookie-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:99999;display:none;width:90%;max-width:560px;background:#1C1C1C;border:1px solid rgba(201,169,110,.2);padding:40px;}
.cookie-modal-title{font-family:'Playfair Display',serif;font-size:1.3rem;color:#fff;margin-bottom:12px;}
.cookie-modal-desc{font-size:.78rem;color:rgba(255,255,255,.55);line-height:1.7;margin-bottom:28px;}
.cookie-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid rgba(201,169,110,.08);}
.cookie-row:last-of-type{border-bottom:none;}
.cookie-row-info{display:flex;flex-direction:column;gap:4px;}
.cookie-row-info strong{font-size:.82rem;color:#fff;font-weight:500;}
.cookie-row-info span{font-size:.72rem;color:rgba(255,255,255,.45);line-height:1.5;}
.cookie-toggle.always-on{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(201,169,110,.7);white-space:nowrap;}
.cookie-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0;}
.cookie-switch input{opacity:0;width:0;height:0;}
.cookie-slider{position:absolute;inset:0;background:rgba(255,255,255,.15);border-radius:24px;cursor:pointer;transition:.3s;}
.cookie-slider:before{content:'';position:absolute;width:18px;height:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s;}
.cookie-switch input:checked + .cookie-slider{background:#C9A96E;}
.cookie-switch input:checked + .cookie-slider:before{transform:translateX(20px);}
.cookie-modal-btns{display:flex;gap:12px;margin-top:28px;justify-content:flex-end;}
#cookie-save{background:transparent;border:1px solid rgba(201,169,110,.6);color:rgba(255,255,255,.85);padding:10px 24px;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:all .2s;}
#cookie-save:hover{border-color:#C9A96E;color:#C9A96E;}
#cookie-accept-all{background:#C9A96E;border:none;color:#0D0D0D;padding:10px 24px;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;font-weight:600;transition:all .2s;}
#cookie-accept-all:hover{opacity:.85;}
#cookie-manage{background:transparent;border:1px solid rgba(201,169,110,.3);color:rgba(255,255,255,.6);padding:10px 24px;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;font-family:'Inter',sans-serif;transition:all .2s;}
#cookie-manage:hover{border-color:#C9A96E;color:#C9A96E;}
@media(max-width:600px){#cookie-modal{padding:28px 20px;}.cookie-modal-btns{flex-direction:column;}.cookie-modal-btns button{width:100%;}}