/* ============================================================
   FRANCIS MALLMANN · PATAGONIA — hosted-experience components.
   Built on the Privé Collection system tokens (prive-system.css).
   Adds only what a hosted experience needs that the villa
   template did not: poster-overlay hero, departures block,
   day-by-day, rooms, impact, FAQ, related. Same BRAND LAW:
   Albert Sans only · near-white ground · soft-black ink · green
   enquire band · hairline separation · no serif/italic/gold.
   ============================================================ */

/* ---------- HERO · trailer video + transparent poster overlay ---------- */
.hero--poster{min-height:100svh;padding:0;display:block;position:relative;background:var(--ink-deep)}
.hero--poster video,.hero--poster .hero__still{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero--poster .hero__still{display:none}
.hero--poster::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(to bottom,rgba(8,9,10,.52),rgba(8,9,10,.28) 40%,rgba(8,9,10,.62))}
.hero--poster .poster{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;
  padding:clamp(84px,12vh,140px) var(--gut) clamp(92px,14vh,150px);pointer-events:none}
.hero--poster .poster img{width:100%;max-width:1180px;max-height:78vh;object-fit:contain;
  filter:drop-shadow(0 24px 60px rgba(0,0,0,.5))}
.hero--poster .poster .lt{display:block}
.hero--poster .poster .dk{display:none}
.hero__coords2{position:absolute;left:0;right:0;bottom:26px;z-index:3;text-align:center;
  font-weight:500;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.72);line-height:1.9}
.hero__coords2 .cv{color:#fff;font-weight:300;letter-spacing:.12em}
.hero__scroll{position:absolute;right:var(--gut);bottom:26px;z-index:3;
  font-weight:500;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.66);
  display:flex;align-items:center;gap:12px}
.hero__scroll::after{content:"";width:34px;height:1px;background:rgba(255,255,255,.5);animation:scrollcue 2.4s var(--ease) infinite}
@keyframes scrollcue{0%,100%{transform:scaleX(.4);transform-origin:left;opacity:.5}50%{transform:scaleX(1);transform-origin:left;opacity:1}}
@media(max-width:760px){
  .hero--poster .poster .lt{display:none}
  .hero--poster .poster .dk{display:block}
  .hero--poster .poster{padding:96px 26px 120px}
  .hero--poster .poster img{max-height:70vh}
  .hero__scroll{display:none}
}

/* nav property/country reveal for hosted experience */
.nav__country{color:rgba(255,255,255,.6)}
.nav .nav-links a.cta{margin-left:22px}
.nav.scrolled .nav__country{color:var(--muted)}

/* ---------- OVERVIEW · left lede + right departures/apply card ---------- */
.ov2{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:clamp(40px,7vw,100px);align-items:start;
  max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.ov2 .lead .eyebrow{display:block;margin-bottom:22px}
.ov2 .lead h2{font-size:clamp(27px,3.7vw,46px);font-weight:300;letter-spacing:-.02em;line-height:1.08;margin-bottom:26px;max-width:20ch}
.ov2 .lead p{color:#3a382f;margin-bottom:18px;max-width:58ch;font-weight:300;font-size:18px}
.ov2 .lead .snap{display:grid;grid-template-columns:1fr 1fr;gap:20px 44px;margin-top:38px;max-width:56ch}
.ov2 .lead .snap .k{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.ov2 .lead .snap .v{font-weight:300;font-size:17px;letter-spacing:-.005em;line-height:1.35}
@media(max-width:520px){.ov2 .lead .snap{grid-template-columns:1fr}}

/* apply / departures card */
.applycard{position:sticky;top:92px;background:var(--bg-soft);padding:clamp(32px,2.8vw,42px) clamp(30px,2.6vw,38px) clamp(38px,3.4vw,48px)}
.ac-k{font-weight:600;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:15px}
.ac-price{font-weight:200;font-size:clamp(44px,5vw,56px);letter-spacing:-.025em;line-height:.92;color:var(--ink)}
.ac-price small{display:block;font-weight:400;font-size:13px;letter-spacing:.02em;color:var(--muted);margin-top:15px;line-height:1.5}
.deps__h{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:30px 0 10px}
.deps{margin-top:0;padding-top:2px;box-shadow:inset 0 1px 0 var(--line)}
.dep{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 0;box-shadow:inset 0 -1px 0 var(--line);transition:padding-left .25s var(--ease)}
a.dep:hover{padding-left:9px}
.dep__d{font-weight:400;font-size:17px;letter-spacing:-.005em;color:var(--ink);line-height:1.3}
.dep__d small{display:block;font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:8px}
.dep__s{flex:none;font-weight:600;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:8px 15px;white-space:nowrap}
.dep__s.open{background:transparent;color:var(--green);box-shadow:none;padding:0}
.dep__s.req{background:var(--bg-soft2);color:var(--ink-soft)}
.dep__s.closed{background:transparent;color:var(--muted);box-shadow:none;padding:0}
.dep.is-closed{opacity:.5}
.ac-cta{margin-top:32px;padding-top:18px;padding-bottom:18px}
.ac-alt{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:22px}
.ac-alt a{font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}
.ac-alt a:hover{opacity:.55}
.ac-alt__sep{width:3px;height:3px;border-radius:50%;background:var(--muted);flex:none}
.ac-note{font-weight:400;font-size:11.5px;line-height:1.55;color:var(--muted);margin-top:24px;text-align:center;max-width:36ch;margin-inline:auto}
@media(max-width:920px){.ov2{grid-template-columns:1fr;gap:40px}.applycard{position:static;order:-1}}

/* ---------- WHAT'S INCLUDED (top, under overview) ---------- */
.incl2{background:var(--bg-soft)}
.incl2__in{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.incl2 .eyebrow{display:block;margin-bottom:14px}
.incl2 h2{font-size:clamp(24px,3.2vw,38px);font-weight:300;letter-spacing:-.02em;margin-bottom:40px;max-width:20ch}
.incl2 .ilist{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px 48px}
.incl2 .ilist li{list-style:none;font-weight:300;font-size:16px;padding-left:20px;position:relative;line-height:1.5}
.incl2 .ilist li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:var(--ink-soft)}
@media(max-width:820px){.incl2 .ilist{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.incl2 .ilist{grid-template-columns:1fr}}

/* WHAT'S INCLUDED — presentation modes (tweak: data-incl) */
body[data-incl="grouped"] .incl-view:not(.incl-view--grouped){display:none}
body[data-incl="ledger"] .incl-view:not(.incl-view--ledger){display:none}
body[data-incl="list"] .incl-view:not(.incl-view--list){display:none}

.incl-view--grouped{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,52px) clamp(40px,5vw,72px)}
.igrp__h{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);padding-bottom:14px;box-shadow:inset 0 -1px 0 var(--line);margin-bottom:14px}
.igrp__h span{color:var(--muted);margin-left:8px;letter-spacing:.14em}
.igrp ul{list-style:none}
.igrp li{font-weight:300;font-size:16px;line-height:1.5;color:#3a382f;padding:8px 0 8px 20px;position:relative}
.igrp li::before{content:"";position:absolute;left:0;top:17px;width:5px;height:5px;border-radius:50%;background:var(--muted)}
@media(max-width:680px){.incl-view--grouped{grid-template-columns:1fr}}

.incl-view--ledger{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,72px)}
.ilg__h{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);padding-bottom:16px;box-shadow:inset 0 -1px 0 var(--line);margin-bottom:6px}
.ilg ul{list-style:none}
.ilg li{font-weight:300;font-size:16px;line-height:1.5;color:#3a382f;padding:13px 0;box-shadow:inset 0 -1px 0 var(--line-soft);display:flex;gap:13px;align-items:baseline}
.ilg li::before{content:"";width:6px;height:6px;border-radius:50%;flex:none;transform:translateY(-2px)}
.ilg--in li::before{background:var(--green)}
.ilg--out li{color:#56534a}
.ilg--out li::before{background:var(--muted)}
@media(max-width:680px){.incl-view--ledger{grid-template-columns:1fr;gap:34px}}

.satx{margin-top:clamp(48px,7vw,80px);padding-top:clamp(34px,4vw,48px);box-shadow:inset 0 1px 0 var(--line)}
.satx__h{font-weight:600;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:clamp(24px,3vw,36px)}
.satx__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(24px,3vw,44px)}
.satx__n{font-weight:300;font-size:22px;color:var(--muted);margin-bottom:14px;letter-spacing:-.01em}
.satx__t{font-weight:400;font-size:16px;letter-spacing:-.005em;margin-bottom:10px}
.satx__d{font-weight:300;font-size:14px;line-height:1.55;color:#56534a;max-width:34ch}
@media(max-width:860px){.satx__grid{grid-template-columns:1fr 1fr;gap:30px}}
@media(max-width:520px){.satx__grid{grid-template-columns:1fr}}

/* ---------- HOST · Francis ---------- */
.host2{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.host2 .eyebrow{display:block;margin-bottom:clamp(28px,5vw,52px)}
.host2__grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(34px,5vw,80px);align-items:start}
.host2__media .img{aspect-ratio:4/5}
.host2__media .cap{font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:14px}
.host2__body h2{font-size:clamp(30px,4.4vw,58px);font-weight:200;letter-spacing:-.02em;line-height:.98;margin-bottom:26px;text-transform:uppercase}
.host2__body .pull{font-weight:300;font-size:clamp(19px,1.9vw,24px);line-height:1.4;letter-spacing:-.01em;color:var(--ink);
  padding-top:22px;margin-bottom:26px;box-shadow:inset 0 1px 0 var(--line);max-width:38ch}
.host2__body p{font-weight:300;color:#3a382f;margin-bottom:16px;max-width:54ch;font-size:16.5px}
.host2__links{display:flex;gap:18px;margin-top:28px}
.host2__media .host2__links{margin-top:18px;justify-content:center!important;align-self:stretch;width:100%}
.host2__media .img{border-radius:50%!important;corner-shape:round;background:transparent}
.host2__media .img .fill{border-radius:50%;transition:none}
.host2__media .img:hover .fill{transform:none}
.host2__media .img::after{display:none}
.seas__legend{font-size:14px;font-weight:500;color:var(--ink)}
.seas__legend span{color:var(--ink)}
.seas__legend i{display:inline-block!important;width:14px!important;height:14px!important;padding:0!important;aspect-ratio:1;border-radius:0!important;flex:none;align-self:center}
/* facilities: drop the per-row hairlines, use a clean bulleted list */
.facil li{box-shadow:none!important;padding:6px 0 6px 18px;position:relative;font-size:15px}
.facil li::before{display:block!important;content:"";position:absolute;left:0;top:13px;width:4px;height:4px;border-radius:50%;background:var(--muted)}
/* swap section backgrounds: FAQ darker, Related + Impact lighter */
.rel{background:transparent}
.faqs{position:relative;padding-top:var(--section-y)}
.faqs::before{content:"";position:absolute;left:50%;transform:translateX(-50%);top:0;bottom:0;width:100vw;background:var(--bg-soft);z-index:-1}
.satxsec{position:relative}
.satxsec::before{content:"";position:absolute;left:50%;transform:translateX(-50%);top:0;bottom:0;width:100vw;background:var(--bg-soft);z-index:-1}
.faqs .eyebrow{margin-bottom:36px}
.satxsec{padding-top:calc(var(--section-y) * 0.5)}
/* section band tweak (data-bands): which pair carries the darker cream */
.satxsec,.faqs,.rel,.impact{position:relative}
.satxsec::before,.faqs::before,.rel::before,.impact::before{content:"";position:absolute;left:50%;transform:translateX(-50%);top:0;bottom:0;width:100vw;background:var(--bg-soft);z-index:-1;display:none}
body[data-bands="default"] .rel::before,body[data-bands="default"] .impact::before{display:block}
body[data-bands="opposite"] .satxsec::before,body[data-bands="opposite"] .faqs::before{display:block}
.host2__links a{font-weight:600;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink);padding-bottom:4px}
.host2__links a:hover{opacity:.6}
@media(max-width:820px){.host2__grid{grid-template-columns:1fr;gap:30px}}

/* HOST layout variants (tweak: data-host) */
/* portrait — tall feature portrait right, big name left */
body[data-host="portrait"] .host2__grid{grid-template-columns:1fr 1fr;align-items:center}
body[data-host="portrait"] .host2__media{order:2}
body[data-host="portrait"] .host2__media .img{aspect-ratio:3/4}
body[data-host="portrait"] .host2__body{order:1}
@media(max-width:820px){body[data-host="portrait"] .host2__grid{grid-template-columns:1fr}body[data-host="portrait"] .host2__media{order:-1}}
/* circle — circular portrait, centred editorial composition */
body[data-host="circle"] .host2{max-width:880px}
body[data-host="circle"] .host2 .eyebrow{text-align:center}
body[data-host="circle"] .host2__grid{grid-template-columns:1fr;justify-items:center;text-align:center;gap:clamp(28px,4vw,44px)}
body[data-host="circle"] .host2__media{display:flex;flex-direction:column;align-items:center}
body[data-host="circle"] .host2__media .img{width:min(300px,64vw);aspect-ratio:1;border-radius:50%}
body[data-host="circle"] .host2__media .cap{text-align:center}
body[data-host="circle"] .host2__body{max-width:620px}
body[data-host="circle"] .host2__body .pull{box-shadow:none;padding-top:0;margin-inline:auto;max-width:34ch}
body[data-host="circle"] .host2__body p{margin-inline:auto}
body[data-host="circle"] .host2__links{justify-content:center}

/* ---------- MOMENTS / HIGHLIGHTS · one-row Instagram (9:16) slider ---------- */
.hi{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut) var(--section-y)}
.hi .mh{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px;flex-wrap:wrap}
.hi .eyebrow{display:block;margin-bottom:12px}
.hi .mh h2{font-size:clamp(26px,3.6vw,44px);font-weight:200;letter-spacing:-.02em}
.hi__arrows{display:flex;gap:10px}
.hi__arrow{width:46px;height:46px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line);background:none;color:var(--ink);
  display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;transition:background .2s,color .2s,box-shadow .2s}
.hi__arrow:hover{background:var(--ink);color:var(--on);box-shadow:inset 0 0 0 1px var(--ink)}
.hi__arrow:disabled{opacity:.28;cursor:default}
.hi__arrow:disabled:hover{background:none;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.hi__rail{display:flex;gap:clamp(14px,1.6vw,22px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
  margin:0 calc(-1 * var(--gut));padding:0 var(--gut) 4px;scroll-padding-left:var(--gut)}
.hi__rail::-webkit-scrollbar{display:none}
.hi__c{flex:0 0 auto;width:clamp(232px,23vw,300px);scroll-snap-align:start}
.hi__c .img{aspect-ratio:9/16;margin-bottom:16px}
.hi__c h3{font-weight:400;font-size:17px;letter-spacing:-.005em;margin-bottom:8px}
.hi__c p{font-weight:300;font-size:14px;line-height:1.55;color:#56534a;max-width:34ch}
@media(max-width:640px){.hi__c{width:76vw;max-width:330px}.hi__arrows{display:none}}

/* ---------- DAY BY DAY ---------- */
.dbd{background:var(--bg-soft)}
.dbd__in{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.dbd .eyebrow{display:block;margin-bottom:12px}
.dbd>.dbd__in>h2{font-size:clamp(26px,3.6vw,46px);font-weight:200;letter-spacing:-.02em;max-width:18ch;margin-bottom:14px}
.dbd__lead{font-weight:300;font-size:18px;color:#3a382f;max-width:58ch;margin-bottom:clamp(30px,4vw,46px)}
.dbd__tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:6px;margin-bottom:clamp(28px,4vw,40px)}
.dbd__tabs::-webkit-scrollbar{display:none}
.dbd__tab{flex:none;font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  background:var(--bg);padding:11px 16px;transition:background .2s,color .2s;white-space:nowrap}
.dbd__tab:hover{color:var(--ink)}
.dbd__tab.on{background:var(--ink);color:var(--on)}
.dbd__panel{display:none;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:start}
.dbd__panel.on{display:grid;animation:fadein .5s var(--ease)}
@keyframes fadein{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.dbd__panel .img{aspect-ratio:4/3}
.dbd__meta{display:flex;flex-direction:column;gap:2px;margin-bottom:20px}
.dbd__meta .m{padding:11px 0;box-shadow:inset 0 -1px 0 var(--line);display:grid;grid-template-columns:118px 1fr;gap:16px;align-items:baseline}
.dbd__meta .m:first-child{box-shadow:inset 0 1px 0 var(--line),inset 0 -1px 0 var(--line)}
.dbd__meta .mk{font-weight:600;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.dbd__meta .mv{font-weight:300;font-size:14px;line-height:1.4}
.dbd__daylab{font-weight:600;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.dbd__panel h3{font-size:clamp(23px,2.8vw,32px);font-weight:300;letter-spacing:-.01em;margin-bottom:16px;max-width:20ch}
.dbd__panel p{font-weight:300;color:#3a382f;font-size:16px;max-width:52ch;margin-bottom:14px}
@media(max-width:820px){.dbd__panel.on{grid-template-columns:1fr;gap:24px}.dbd__panel .pimg{order:-1}}

/* ---------- DAY BY DAY · view switching (tabs / timeline / chapters) ---------- */
body[data-itin="tabs"] .dbd-view--timeline,
body[data-itin="tabs"] .dbd-view--chapters{display:none}
body[data-itin="timeline"] .dbd-view--tabs,
body[data-itin="timeline"] .dbd-view--chapters{display:none}
body[data-itin="chapters"] .dbd-view--tabs,
body[data-itin="chapters"] .dbd-view--timeline{display:none}

/* TIMELINE — all days visible, connecting rail */
.dbd-timeline{max-width:920px}
.tl-act{font-weight:600;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);
  margin:0 0 22px;padding-left:44px}
.tl-act:not(:first-child){margin-top:14px}
.tl-item{position:relative;display:grid;grid-template-columns:168px 1fr;gap:26px;padding:0 0 34px 44px;align-items:start}
.tl-item::before{content:"";position:absolute;left:11px;top:6px;bottom:-6px;width:1px;background:var(--line)}
.tl-item:last-child::before{bottom:auto;height:0}
.tl-node{position:absolute;left:5px;top:4px;width:13px;height:13px;border-radius:50%;background:var(--bg-soft);box-shadow:inset 0 0 0 1.5px var(--ink-soft)}
.tl-thumb{aspect-ratio:3/2;overflow:hidden;background:var(--bg-soft2);position:relative}
.tl-thumb .fill{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.2s var(--ease)}
.tl-item:hover .tl-thumb .fill{transform:scale(1.04)}
.tl-lab{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.tl-body h4{font-weight:400;font-size:clamp(18px,1.9vw,22px);letter-spacing:-.01em;margin-bottom:9px}
.tl-body p{font-weight:300;font-size:15px;line-height:1.6;color:#3a382f;max-width:56ch;margin-bottom:9px}
.tl-body .tl-stay{font-weight:300;font-size:12.5px;color:var(--muted)}
.tl-body .tl-stay b{font-weight:600;color:var(--ink-soft);letter-spacing:.02em}
@media(max-width:640px){.tl-item{grid-template-columns:1fr;gap:14px;padding-left:36px}.tl-act{padding-left:36px}.tl-item::before{left:9px}.tl-node{left:3px}}

/* CHAPTERS — the journey grouped into acts, accordion */
.dbd-chapters{max-width:1000px}
.ch{box-shadow:inset 0 -1px 0 var(--line)}
.ch:first-child{box-shadow:inset 0 1px 0 var(--line),inset 0 -1px 0 var(--line)}
.ch__hd{display:grid;grid-template-columns:64px 1fr auto auto;gap:22px;align-items:center;cursor:pointer;
  width:100%;text-align:left;background:none;padding:28px 0}
.ch__no{font-weight:600;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.ch__t{font-weight:300;font-size:clamp(21px,2.6vw,30px);letter-spacing:-.015em;color:var(--ink)}
.ch__t small{display:block;font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:7px}
.ch__range{font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.ch__plus{position:relative;width:16px;height:16px}
.ch__plus::before,.ch__plus::after{content:"";position:absolute;background:var(--ink-soft);transition:transform .35s var(--ease)}
.ch__plus::before{left:0;top:7px;width:16px;height:2px}
.ch__plus::after{left:7px;top:0;width:2px;height:16px}
.ch.on .ch__plus::after{transform:scaleY(0)}
.ch__body{max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
.ch__days{display:flex;flex-direction:column;gap:clamp(22px,3vw,34px);padding:4px 0 clamp(30px,4vw,44px)}
.chday{display:grid;grid-template-columns:200px 1fr;gap:clamp(20px,3vw,40px);align-items:start}
.chday .img{aspect-ratio:3/2}
.chday__lab{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}
.chday h4{font-weight:300;font-size:clamp(19px,2vw,24px);letter-spacing:-.01em;margin-bottom:12px}
.chday p{font-weight:300;font-size:15.5px;line-height:1.6;color:#3a382f;max-width:56ch;margin-bottom:12px}
.chday .dbd__meta{margin:0}
@media(max-width:720px){.ch__hd{grid-template-columns:1fr auto;gap:14px;padding:22px 0}.ch__no{display:none}.ch__range{grid-column:1;grid-row:2;margin-top:-8px}.chday{grid-template-columns:1fr;gap:14px}.chday .cimg{order:-1}}

/* ---------- STAY ---------- */
.stay{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.stay .eyebrow{display:block;margin-bottom:12px}
.stay>h2{font-size:clamp(26px,3.6vw,46px);font-weight:200;letter-spacing:-.02em;max-width:18ch;margin-bottom:14px}
.stay__lead{font-weight:300;font-size:18px;color:#3a382f;max-width:60ch;margin-bottom:clamp(34px,5vw,52px)}
.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,30px);margin-bottom:clamp(44px,7vw,80px)}
.room .img{aspect-ratio:4/3;margin-bottom:18px}
.room h3{font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.room .rk{font-weight:600;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:12px 0 5px}
.room .rv{font-weight:300;font-size:14.5px;line-height:1.5;color:#3a382f}
.facil{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,64px);padding-top:clamp(30px,4vw,44px);box-shadow:inset 0 1px 0 var(--line)}
.facil .fh{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:18px}
.facil ul{list-style:none}
.facil li{font-weight:300;font-size:15px;color:#3a382f;line-height:1.5;padding:7px 0 7px 20px;position:relative}
.facil li::before{content:"";position:absolute;left:0;top:15px;width:5px;height:5px;border-radius:50%;background:var(--muted)}
.needtoknow{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,60px);margin-top:clamp(40px,6vw,64px);padding-top:clamp(30px,4vw,44px);box-shadow:inset 0 1px 0 var(--line)}
.needtoknow .nk{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.needtoknow p{font-weight:300;font-size:15.5px;color:#3a382f;max-width:48ch;line-height:1.6}
.needtoknow b{font-weight:600;color:var(--ink)}
@media(max-width:820px){.rooms{grid-template-columns:1fr;gap:34px}.facil,.needtoknow{grid-template-columns:1fr;gap:30px}}

/* ---------- ETHOS (Francis quote band) — reuse .ethos from system ---------- */

/* ---------- IMPACT ---------- */
.impact{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.impact .eyebrow{display:block;margin-bottom:12px}
.impact>h2{font-size:clamp(26px,3.4vw,42px);font-weight:200;letter-spacing:-.02em;max-width:22ch;margin-bottom:clamp(30px,5vw,48px)}
.impact__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,56px)}
.impact__c{padding-top:24px;box-shadow:inset 0 1px 0 var(--line)}
.impact__c .ic{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px}
.impact__c h3{font-weight:300;font-size:20px;letter-spacing:-.01em;margin-bottom:12px;max-width:20ch}
.impact__c p{font-weight:300;font-size:15px;line-height:1.6;color:#56534a;max-width:42ch;margin-bottom:16px}
.impact__c a{font-weight:600;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink);padding-bottom:4px}
@media(max-width:820px){.impact__grid{grid-template-columns:1fr;gap:30px}}

/* ---------- FAQ ---------- */
.faqs{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut) var(--section-y)}
.faqs .eyebrow{display:block;margin-bottom:12px}
.faqs>h2{font-size:clamp(26px,3.6vw,44px);font-weight:200;letter-spacing:-.02em;margin-bottom:clamp(30px,5vw,44px);max-width:20ch}
.faq{list-style:none;box-shadow:inset 0 1px 0 var(--line)}
.faq li{box-shadow:inset 0 -1px 0 var(--line)}
.faq .q{display:grid;grid-template-columns:1fr 28px;gap:20px;align-items:center;cursor:pointer;padding:24px 0;width:100%;text-align:left;background:none}
.faq .q .t{font-weight:300;font-size:clamp(17px,1.7vw,21px);letter-spacing:-.01em;color:var(--ink)}
.faq .q .p{position:relative;width:16px;height:16px;justify-self:end}
.faq .q .p::before,.faq .q .p::after{content:"";position:absolute;background:var(--ink-soft);transition:transform .3s var(--ease)}
.faq .q .p::before{left:0;top:7px;width:16px;height:2px}
.faq .q .p::after{left:7px;top:0;width:2px;height:16px}
.faq li.on .q .p::after{transform:scaleY(0)}
.faq .a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.faq .a p{font-weight:300;font-size:15.5px;line-height:1.7;color:#56534a;max-width:70ch;padding:0 0 26px}
@media(max-width:520px){.faq .q{padding:20px 0}}

/* ---------- RELATED ---------- */
.rel{background:var(--bg-soft)}
.rel__in{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.rel .mh{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px;flex-wrap:wrap}
.rel .eyebrow{display:block;margin-bottom:12px}
.rel .mh h2{font-size:clamp(26px,3.6vw,44px);font-weight:200;letter-spacing:-.02em}
.rel__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,26px)}
.relc{display:block}
.relc .img{aspect-ratio:9/16;margin-bottom:16px;position:relative}
.relc .img video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.relc .rr{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.relc h3{font-weight:400;font-size:19px;letter-spacing:-.01em}
@media(max-width:820px){.rel__grid{grid-template-columns:1fr;gap:30px;max-width:440px}}

/* ---------- FOOTER (Satopia, Privé tokens) ---------- */
.sfoot{background:var(--ink-deep);color:var(--on);padding:clamp(56px,8vh,104px) var(--gut) 0}
.sfoot__in{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:clamp(36px,5vw,80px);
  padding-bottom:52px;box-shadow:inset 0 -1px 0 rgba(246,244,239,.14)}
.sfoot h4{font-weight:600;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--on);margin-bottom:24px}
.sfoot ul{list-style:none}
.sfoot li{margin-bottom:13px}
.sfoot li a{font-weight:300;font-size:14px;color:var(--on-2)}
.sfoot li a:hover{color:var(--on)}
.sfoot .grp{margin-bottom:24px}
.sfoot .grp h5{font-weight:600;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--on);margin-bottom:8px}
.sfoot .grp a,.sfoot .grp span{display:block;font-weight:300;font-size:14px;color:var(--on-2);margin:2px 0}
.sfoot__bottom{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  padding:26px 0 34px;font-weight:300;font-size:12px;color:var(--on-3)}
.sfoot__bottom .cities{letter-spacing:.22em;text-transform:uppercase;color:var(--on-2)}
.sfoot__bottom .cities .sep{color:var(--on-3);margin:0 .5em}
.sfoot__bottom .legal{display:flex;gap:20px}
.sfoot__bottom a{color:var(--on-2)}.sfoot__bottom a:hover{color:var(--on)}
@media(max-width:820px){.sfoot__in{grid-template-columns:1fr;gap:40px}.sfoot__bottom{flex-direction:column;align-items:flex-start}}

/* ---------- GUESTLIST conditional bits (bottom form) ---------- */
.gl-cond{display:none}
.gl-cond.show{display:block;animation:fadein .4s var(--ease)}
.gl-note{font-weight:300;font-size:13px;line-height:1.5;color:var(--on-2);margin:8px 0 0 24px;max-width:52ch}
.gl-req{color:rgba(246,244,239,.85)}
.enquire .fields--single{grid-template-columns:1fr}
.numrow{display:flex;align-items:center;background:rgba(246,244,239,.1);width:max-content;margin-left:24px}
.numrow button{width:48px;height:52px;font-size:20px;font-weight:300;color:var(--on)}
.numrow button:hover{background:rgba(246,244,239,.18)}
.numrow input{width:70px;text-align:center;background:transparent;border:0;color:var(--on);font:inherit;font-size:18px;padding:14px 0;outline:none}
.consent{display:flex;gap:12px;align-items:flex-start;margin-left:24px;cursor:pointer}
.consent input{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--on)}
.consent span{font-weight:300;font-size:14px;line-height:1.5;color:var(--on-2)}
.consent a{color:var(--on);box-shadow:inset 0 -1px 0 rgba(246,244,239,.5)}

/* select + inputs inside the green guestlist band */
.enquire .fld select{font:inherit;font-size:15px;font-weight:300;color:var(--ink);background:var(--bg-soft);border:0;
  padding:12px 38px 12px 14px;width:100%;appearance:none;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 13px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.enquire .fld select:focus{outline:none;box-shadow:inset 0 -2px 0 0 var(--ink)}
.enquire .fld select:invalid{color:var(--muted)}
/* contact chips selected state on the green band → cream, like the reasons chips */
.enquire #glContact .chip.on{background:#F6F4EF;color:#1A2C24}

/* ---------- FULL-BLEED PHOTO BREAK ---------- */
.shot{position:relative;min-height:80vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--ink-deep)}
.shot__bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0;transform:scale(1.04)}
.shot::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(8,9,10,.74),rgba(8,9,10,.04) 52%,rgba(8,9,10,.34))}
.shot__cap{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;width:100%;padding:0 var(--gut) clamp(46px,9vh,90px);color:#fff}
.shot__k{font-weight:600;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.74);margin-bottom:18px}
.shot__t{font-weight:200;font-size:clamp(30px,5vw,64px);letter-spacing:-.02em;line-height:1.03;max-width:22ch}
.shot__t em{font-style:normal;color:#fff}
@media(max-width:640px){.shot{min-height:72vh}}

/* ---------- SEASONALITY ---------- */
.seas{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.seas .eyebrow{display:block;margin-bottom:12px}
.seas__in>h2{font-weight:200;font-size:clamp(26px,3.6vw,46px);letter-spacing:-.02em;max-width:22ch;margin-bottom:14px}
.seas__lead{font-weight:300;font-size:18px;color:#3a382f;max-width:62ch;margin-bottom:clamp(34px,5vw,52px)}
.seas__chart{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(5px,.7vw,9px);align-items:end}
.seasmo{display:flex;flex-direction:column;align-items:center;gap:9px}
.seasmo .bar{width:100%;height:120px;background:var(--bg-soft);position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.seasmo .fillbar{position:absolute;left:0;right:0;bottom:0;background:var(--bg-soft2);transition:height 1s var(--ease)}
.seasmo.dep .fillbar{background:var(--green)}
.seasmo .tmp{position:relative;z-index:2;font-weight:500;font-size:11px;padding-bottom:7px;color:var(--ink-soft)}
.seasmo.dep .tmp{color:#fff}
.seasmo .mo{font-weight:500;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.seasmo.dep .mo{color:var(--ink);font-weight:700}
.seas__legend{display:flex;gap:24px;flex-wrap:wrap;margin-top:22px;font-size:12px;font-weight:300;color:var(--muted)}
.seas__legend span{display:inline-flex;align-items:center;gap:8px}
.seas__legend i{width:11px;height:11px;display:inline-block}
.seas__legend i.dep{background:var(--green)}
.seas__legend i.off{background:var(--bg-soft2)}
.seas__deps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(22px,3vw,44px);margin-top:clamp(40px,6vw,64px);padding-top:clamp(28px,3vw,42px);box-shadow:inset 0 1px 0 var(--line)}
.seas__dep .sd-m{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}
.seas__dep h3{font-weight:300;font-size:21px;letter-spacing:-.01em;margin-bottom:8px}
.seas__dep p{font-weight:300;font-size:14.5px;line-height:1.55;color:#56534a;max-width:36ch}
@media(max-width:640px){.seasmo .bar{height:96px}.seasmo .tmp{font-size:9px}.seasmo .mo{font-size:8px;letter-spacing:.02em}.seas__chart{gap:4px}.seas__deps{grid-template-columns:1fr;gap:26px}}

/* ---------- APPLY CARD · guests + total ---------- */
.ac-guests{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:20px 0 0;padding-top:20px;box-shadow:inset 0 1px 0 var(--line)}
.ac-guests__l{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.gstep{display:flex;align-items:center;background:var(--bg)}
.gstep button{width:42px;height:46px;font-size:19px;font-weight:300;color:var(--ink);background:none}
.gstep button:hover{background:var(--bg-soft2)}
.gstep input{width:46px;text-align:center;background:transparent;border:0;font:inherit;font-size:16px;padding:12px 0;color:var(--ink);outline:none}

/* ---------- BOOKING FORM · rooms, dates, deposit ---------- */
.bk-room{display:flex;flex-direction:column;gap:10px;margin-left:24px}
.bk-room__opt{display:flex;align-items:center;justify-content:space-between;gap:14px;background:rgba(246,244,239,.07);color:var(--on);padding:15px 18px;cursor:pointer;transition:background .18s;text-align:left;width:100%}
.bk-room__opt:hover{background:rgba(246,244,239,.15)}
.bk-room__opt.on{background:#F6F4EF;color:#1A2C24}
.bk-room__opt .rp{font-weight:600;font-size:13px;letter-spacing:.02em}
.bk-room__opt .rpp{font-weight:400;font-size:13px;opacity:.82}
.bk-closed{margin:14px 0 0 24px;background:rgba(233,184,160,.14);color:#E9B8A0;padding:14px 16px;font-size:13.5px;font-weight:400;line-height:1.55}
.bk-dep-total{margin:18px 0 0 24px;display:flex;align-items:baseline;gap:13px}
.bk-dep-total .bv{font-weight:200;font-size:clamp(30px,3.6vw,40px);letter-spacing:-.02em;color:var(--on)}
.bk-dep-total .bp{font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-2)}

/* SEO */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* top booking box — group / private (matches Privé enquiry box) */
.abx__q{font-weight:300;font-size:clamp(19px,1.7vw,23px);line-height:1.22;letter-spacing:-.012em;color:var(--ink);margin:14px 0 20px}
.mode-toggle{position:relative;display:flex;box-shadow:inset 0 0 0 1px var(--line);margin-bottom:14px;isolation:isolate;overflow:hidden}
.mode-toggle::before{content:"";position:absolute;top:0;left:0;width:50%;height:100%;background:var(--green);transform:translateX(0);transition:transform .36s cubic-bezier(.45,.02,.16,1);z-index:0}
.mode-toggle[data-active="private"]::before{transform:translateX(100%)}
.mode-toggle button{position:relative;z-index:1;flex:1;padding:17px 12px;font-weight:600;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);background:none;transition:color .3s ease}
.mode-toggle button.on{color:var(--on)}
.mode-panel:not([hidden]){animation:mpIn .38s cubic-bezier(.4,0,.2,1) both}
@keyframes mpIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.mode-panel[hidden]{display:none}
.priv-durs{margin-top:2px}
.priv-dur{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 0;box-shadow:inset 0 -1px 0 var(--line)}
.priv-dur:first-child{box-shadow:inset 0 1px 0 var(--line),inset 0 -1px 0 var(--line)}
.priv-dur .pd-d{font-weight:400;font-size:16px;color:var(--ink)}
.priv-dur .pd-n{font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#4d4a42}
.ac-total{margin-top:18px;font-weight:300;font-size:13.5px;color:var(--ink-soft);line-height:1.5;text-align:center;text-wrap:balance}
.ac-total b{font-weight:500;color:var(--ink)}
.applycard .eq{margin-top:16px}
.applycard .introq__alts{margin-top:32px}
.applycard .btn--block{background:var(--green);color:var(--on)}
.applycard .btn--block:hover{background:var(--green-deep);opacity:1}
.dep__s.wait{background:transparent;color:var(--green);box-shadow:none;padding:0}
.ac-avail{margin-top:22px;padding-top:18px;box-shadow:inset 0 1px 0 var(--line);font-weight:400;font-size:11px;line-height:1.55;color:var(--muted);text-align:center;text-wrap:balance}

/* =========================================================
   TWEAK VARIANTS
   ========================================================= */
/* Detail level: restrained hides the cinematic film-credit chrome
   (coordinates deliberately kept — brand wants the lat/long shown) */
body[data-detail="restrained"] .hero__scroll,
body[data-detail="restrained"] .slatecap,
body[data-detail="restrained"] .credits2{display:none}

/* film-slate caption on media (cinematic only) */
.slatecap{position:absolute;top:12px;left:12px;z-index:2;font-weight:600;font-size:8.5px;letter-spacing:.2em;
  text-transform:uppercase;color:rgba(255,255,255,.9);box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);padding:4px 8px;backdrop-filter:blur(3px)}
body[data-detail="restrained"] .facts .fx-credit{display:none}

/* Overview option B — "faithful": departures become a full-width band, card is simplified */
body[data-overview="faithful"] .ov2{grid-template-columns:1fr;gap:clamp(30px,4vw,48px)}
body[data-overview="faithful"] .applycard{position:static;order:0;background:transparent;padding:0}
body[data-overview="faithful"] .applycard .ac-deps{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
body[data-overview="faithful"] .applycard .ac-grp{grid-column:1/-1}
body[data-overview="faithful"] .applycard .ac-price{margin-bottom:8px}
body[data-overview="faithful"] .ov2 .lead .snap{max-width:none}
@media(max-width:720px){body[data-overview="faithful"] .applycard .deps{grid-template-columns:1fr}}

/* =========================================================
   ROUND 2 REVISIONS
   ========================================================= */

/* ---- global: slight rounded corners tweak (non-fullbleed images) ---- */
body[data-radius="soft"] .img,
body[data-radius="soft"] .tl-bigimg,
body[data-radius="soft"] .room .img,
body[data-radius="soft"] .relc .img,
body[data-radius="soft"] .glass,
body[data-radius="soft"] .glass__bg,
body[data-radius="soft"] .itin2__imgwrap{border-radius:64px}
body[data-radius="soft"] .host2__media .img{border-radius:64px}
body[data-host="circle"][data-radius="soft"] .host2__media .img,
body[data-host="circle-left"][data-radius="soft"] .host2__media .img{border-radius:50%}

/* ---- HOST: wider + only circle / circle-left ---- */
body[data-host="circle"] .host2{max-width:1080px}
body[data-host="circle"] .host2__body{max-width:760px}
body[data-host="circle-left"] .host2{max-width:1320px}
body[data-host="circle-left"] .host2 .eyebrow{text-align:left}
body[data-host="circle-left"] .host2__grid{grid-template-columns:auto 1fr;justify-items:start;text-align:left;align-items:start;gap:clamp(40px,6vw,90px)}
body[data-host="circle-left"] .host2__media{align-items:flex-start}
body[data-host="circle-left"] .host2__media .img{width:clamp(280px,32vw,400px);aspect-ratio:1;border-radius:50%}
body[data-host="circle-left"] .host2__media .cap{text-align:left}
body[data-host="circle-left"] .host2__body{max-width:640px}
body[data-host="circle-left"] .host2__body .pull{margin-inline:0;box-shadow:inset 0 1px 0 var(--line);padding-top:22px}
body[data-host="circle-left"] .host2__body p{margin-inline:0}
body[data-host="circle-left"] .host2__links{justify-content:flex-start}
@media(max-width:820px){
  body[data-host="circle-left"] .host2__grid{grid-template-columns:1fr;justify-items:center;text-align:center}
  body[data-host="circle-left"] .host2 .eyebrow,body[data-host="circle-left"] .host2__media .cap{text-align:center}
  body[data-host="circle-left"] .host2__media{align-items:center}
  body[data-host="circle-left"] .host2__media .img{width:min(300px,64vw)}
  body[data-host="circle-left"] .host2__body .pull,body[data-host="circle-left"] .host2__body p{margin-inline:auto}
  body[data-host="circle-left"] .host2__links{justify-content:center}
}

/* ---- MOMENTS: wider container + draggable rail ---- */
.hi{max-width:1560px}
.hi__rail{margin:0;padding:0 0 6px;scroll-padding-left:0;cursor:grab;scroll-snap-type:none}
.hi__rail.is-drag{cursor:grabbing;scroll-behavior:auto}
.hi__rail.is-drag a{pointer-events:none}
.hi__c{width:clamp(260px,26vw,352px)}

/* ---- DAY BY DAY: big timeline rows + phase headers ---- */
.dbd-timeline{max-width:1120px}
.tl-phase{font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 clamp(26px,3vw,38px);padding-bottom:15px;box-shadow:inset 0 -1px 0 var(--line)}
.tl-phase:not(:first-child){margin-top:clamp(50px,7vw,88px)}
.tl-big{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(30px,4.5vw,68px);align-items:center;padding-bottom:clamp(40px,6vw,72px)}
.tl-big--flip .tl-bigimg{order:2}
.tl-bigimg{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--bg-soft2)}
.tl-bigimg .fill{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.3s var(--ease)}
.tl-big:hover .tl-bigimg .fill{transform:scale(1.05)}
.tl-biglab{font-weight:600;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:13px}
.tl-big h4{font-weight:300;font-size:clamp(23px,2.7vw,34px);letter-spacing:-.01em;margin-bottom:15px}
.tl-big p{font-weight:300;font-size:16.5px;line-height:1.65;color:#3a382f;max-width:50ch;margin-bottom:14px}
.tl-big .dbd__meta{margin-top:4px}
.tl-big .dbd__meta .m{grid-template-columns:120px 1fr}
@media(max-width:820px){.tl-big{grid-template-columns:1fr;gap:20px}.tl-big--flip .tl-bigimg{order:-1}.tl-bigimg{aspect-ratio:16/10}}

/* ---- STAY: wider slider, 16:9, richer copy ---- */
.stay{max-width:1560px}
.stay__arrows{display:flex;gap:10px}
.stay-railwrap{position:relative}
.stay-rail{display:flex;gap:clamp(18px,2vw,28px);overflow-x:auto;scrollbar-width:none;padding-bottom:6px;margin-bottom:clamp(44px,7vw,80px);cursor:grab}
.stay-rail.is-drag{cursor:grabbing;scroll-behavior:auto}
.stay-rail::-webkit-scrollbar{display:none}
.stay-rail .room{flex:0 0 auto;width:clamp(330px,42vw,560px);scroll-snap-align:start;display:flex;flex-direction:column}
.stay-rail .room .rdesc{flex-grow:1}
.stay-rail .room .img{aspect-ratio:16/9;margin-bottom:22px}
.stay-rail .room h3{font-weight:600;font-size:14px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.stay-rail .room .rdesc{font-weight:300;font-size:16px;line-height:1.6;color:#3a382f;margin-bottom:18px;max-width:46ch}
.stay-rail .room .rmeta{display:grid;grid-template-columns:1fr;gap:16px;padding-top:16px;box-shadow:inset 0 1px 0 var(--line)}
.stay-rail .room .rk{font-weight:600;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.stay-rail .room .rv{font-weight:300;font-size:14.5px;line-height:1.45;color:#3a382f}

/* ---- GLASS overlay (frosted card over image, no borders) ---- */
.glass{position:relative;overflow:hidden;display:flex;align-items:flex-end;min-height:54vh;background:var(--ink-deep)}
.glass__bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0}
.glass::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(8,9,10,.34),rgba(8,9,10,.06))}
.glass__card{position:relative;z-index:2;margin:clamp(22px,3.5vw,54px);padding:clamp(26px,3vw,44px);max-width:560px;border:0;
  backdrop-filter:blur(22px) saturate(125%);-webkit-backdrop-filter:blur(22px) saturate(125%);background:rgba(18,16,12,.30);color:#fff}
.glass__k{font-weight:600;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.74);margin-bottom:14px}
.glass__t{font-weight:200;font-size:clamp(24px,3vw,40px);letter-spacing:-.02em;line-height:1.06;margin-bottom:14px}
.glass__p{font-weight:300;font-size:15px;line-height:1.62;color:rgba(255,255,255,.84);max-width:46ch}
.incl2 .glass{margin-bottom:clamp(40px,6vw,72px)}

/* ---- WHEN TO GO: unit toggle ---- */
.seas__top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px 30px;flex-wrap:wrap;margin-bottom:clamp(30px,5vw,48px)}
.seas__top .seas__lead{margin-bottom:0}
.seas__unit{display:inline-flex;background:var(--bg-soft);padding:3px;flex:none}
.seas__unit button{font-weight:600;font-size:10px;letter-spacing:.1em;padding:8px 14px;color:var(--muted);background:none;transition:background .2s,color .2s}
.seas__unit button.on{background:var(--ink);color:var(--on)}

/* =========================================================
   BOOKING FORM ROUND 3
   ========================================================= */
/* centre the guests control in the top box */
.applycard .eq__row{flex-direction:column;align-items:center;gap:14px;text-align:center}
.applycard .eq__info{align-items:center}
.applycard .eq__hint{text-align:center}

/* custom dropdown (replaces native select) */
.dd{position:relative}
.dd__btn{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:var(--bg-soft);color:var(--ink);padding:14px 16px;font:inherit;font-size:16px;font-weight:300;text-align:left;cursor:pointer}
.dd.is-empty .dd__btn .dd__val{color:var(--muted)}
.fld .dd__btn{padding:12px 14px;font-size:15px}
.enquire .fields .fld{justify-content:flex-end}
.dd__car{width:8px;height:8px;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg);transition:transform .25s;flex:none;margin-top:-4px}
.dd.open .dd__car{transform:rotate(-135deg);margin-top:3px}
.dd__panel{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;background:#fbfaf6;box-shadow:0 14px 44px rgba(10,10,10,.18);max-height:0;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .18s}
.dd.open .dd__panel{max-height:320px;overflow:auto;opacity:1;pointer-events:auto}
.dd__opt{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:none;color:var(--ink);padding:14px 16px;font:inherit;font-size:15px;font-weight:300;text-align:left;cursor:pointer;box-shadow:inset 0 -1px 0 var(--line)}
.dd__opt:hover{background:var(--bg-soft)}
.dd__opt.on{background:var(--bg-soft2)}
.dd__opt .dd__s{font-weight:600;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);flex:none}
.dd__opt[data-status="closed"] .dd__s{color:#ef6146}
.dd__opt[data-status="closed"]{color:var(--muted)}
/* dropdowns on the green enquire band */
.enquire .dd__btn{background:rgba(246,244,239,.1);color:var(--on)}
.enquire .dd.is-empty .dd__btn .dd__val{color:var(--on-3)}
.enquire .dd:not(.is-empty) .dd__btn .dd__val,
.enquire .dd:not(.is-empty) .dd__btn .dd__val *{color:var(--on)}
.enquire .dd__car{border-color:var(--on-2)}
.enquire .dd.invalid .dd__btn{box-shadow:inset 0 -2px 0 0 #ef6146}

/* big white introduce-yourself box */
.enquire .introbox{display:block;margin-left:24px}
.enquire .introbox textarea{display:block;width:100%;background:var(--bg-soft);color:var(--ink);border:0;padding:18px;font:inherit;font-size:16px;font-weight:300;line-height:1.55;min-height:150px;resize:vertical;outline:none}
.enquire .introbox textarea::placeholder{color:var(--muted)}
.enquire .introbox textarea:focus{background:var(--bg-soft2)}

/* Privé-style field errors (inside the boxes) */
.enquire .fld input.invalid,.enquire .fld textarea.invalid,.enquire .introbox textarea.invalid{box-shadow:inset 0 -2px 0 0 #ef6146}
.enquire .fld input.invalid::placeholder,.enquire .introbox textarea.invalid::placeholder{color:#ef6146}
.enquire .fld__err{background:#fff;color:#ef6146;padding:11px 15px;margin:14px 0 0 24px;font-size:13px;font-weight:500}

/* room builder (drives guest count) */
.roombld{margin-left:24px}
.roombld__row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;box-shadow:inset 0 -1px 0 rgba(246,244,239,.14)}
.rb-name{display:block;font-weight:500;font-size:15px;color:var(--on)}
.rb-sub{display:block;font-weight:400;font-size:11.5px;letter-spacing:.02em;color:var(--on-2);margin-top:4px}
.rb-step{display:flex;align-items:center;gap:14px;flex:none}
.rb-step button{width:38px;height:38px;border-radius:50%;background:rgba(246,244,239,.12);color:var(--on);font-size:19px;font-weight:300;line-height:1}
.rb-step button:hover{background:rgba(246,244,239,.24)}
.rb-step button:disabled{opacity:.3;pointer-events:none}
.rb-n{min-width:22px;text-align:center;font-weight:300;font-size:20px;color:var(--on);font-variant-numeric:tabular-nums}
.roombld__sum{margin-top:16px;font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-2)}

/* additional-guest party rows */
.party{margin-left:24px}
.party__row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.party__row .pnum{grid-column:1/-1;font-weight:600;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--on-2)}

/* =========================================================
   ROUND 4 — itinerary (overview style), bigger host, included
   ========================================================= */
/* ITINERARY · persistent media beside a scroll-synced day list (Privé overview feel) */
.itin2{display:grid;grid-template-columns:0.92fr 1.08fr;gap:clamp(30px,5vw,84px);align-items:start;max-width:1240px}
.itin2__media{position:sticky;top:90px}
.itin2__imgwrap{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--bg-soft2)}
.itin2__imgwrap .fill{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.3s var(--ease)}
.itin2__cap{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-top:16px}
.itin2__phase{font-weight:600;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft)}
.itin2__day{font-weight:300;font-size:14px;color:var(--muted);white-space:nowrap}
.itin2__ph{font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding-bottom:16px;box-shadow:inset 0 -1px 0 var(--line)}
.itin2__ph:not(:first-child){margin-top:clamp(40px,6vw,72px)}
.itin2__day-e{padding:clamp(26px,3vw,40px) 0;box-shadow:inset 0 -1px 0 var(--line);transition:opacity .4s}
.itin2 [data-any-active] .itin2__day-e:not(.on){opacity:.5}
.itin2__day-e .del{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:13px;transition:color .3s}
.itin2__day-e.on .del{color:var(--ink)}
.itin2__day-e h4{font-weight:300;font-size:clamp(21px,2.3vw,29px);letter-spacing:-.01em;margin-bottom:13px}
.itin2__day-e p{font-weight:300;font-size:16px;line-height:1.62;color:#3a382f;max-width:52ch;margin-bottom:16px}
.itin2__day-e .dbd__meta{margin-top:2px}
.itin2__day-e .dbd__meta .m{grid-template-columns:120px 1fr}
@media(max-width:820px){.itin2{grid-template-columns:1fr;gap:8px}.itin2__media{position:sticky;top:64px;z-index:1;background:var(--bg-soft);padding-bottom:14px}.itin2__imgwrap{aspect-ratio:16/10}.itin2 [data-any-active] .itin2__day-e:not(.on){opacity:1}}

/* HOST · much bigger portrait */
body[data-host="circle"] .host2__media .img{width:min(460px,72vw)}
body[data-host="circle-left"] .host2__media .img{width:clamp(360px,42vw,540px)}

/* WHAT'S INCLUDED · refined editorial (no glass) */
.incl2__lead{font-weight:300;font-size:clamp(18px,1.7vw,21px);line-height:1.55;color:#3a382f;max-width:58ch;margin:0 0 clamp(40px,6vw,64px)}
.incl-view--grouped{grid-template-columns:repeat(4,1fr);gap:clamp(26px,3vw,44px)}
.incl-view--grouped .igrp__h{box-shadow:inset 0 1px 0 var(--ink)}
.incl-view--grouped .igrp__h{padding-top:16px;padding-bottom:0;margin-bottom:16px}
@media(max-width:900px){.incl-view--grouped{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.incl-view--grouped{grid-template-columns:1fr}}

/* ROUND 5 — host refinements · itinerary 9:16 + crossfade · lighter bg */
.host2{padding-top:clamp(100px,17vh,210px);padding-bottom:clamp(100px,17vh,210px)}
.host2__body .eyebrow{display:block;margin-bottom:22px}
.host2__media .img .fill{background-position:center 28%}
.host2__media .cap{margin-top:clamp(22px,3vw,32px)}
body[data-host="circle-left"] .host2__media .cap{text-align:center}
.dbd{background:#F8F6F1}
.itin2{grid-template-columns:minmax(0,0.72fr) 1.28fr}
.itin2__imgwrap{aspect-ratio:9/16}
.itin2__imgwrap .fill{transition:opacity .5s var(--ease),transform 1.4s var(--ease);opacity:1}
@media(max-width:820px){.itin2{grid-template-columns:1fr}.itin2__imgwrap{aspect-ratio:16/10}}

/* ROUND 6 — seasonality legibility */
.seas__unit button.on{background:var(--green);color:var(--on)}
.seasmo .bar{align-items:flex-start}
.seasmo .tmp{color:var(--ink-soft);padding:7px 0 0}
.seasmo.dep .tmp{color:var(--ink-soft)}
.seas__legend i{width:12px;height:12px;flex:none}

/* ROUND 8 — fewer itinerary lines · chapter type · softer weather bars · Privé 4-up font */
.itin2__day-e{box-shadow:none}
.itin2__ph{margin-bottom:clamp(6px,1vw,12px)}
.seasmo .bar{border-radius:4px}
/* true iOS-style squircle where supported (progressive enhancement over the rounded fallback) */
body[data-radius="soft"] .img,
body[data-radius="soft"] .room .img,
body[data-radius="soft"] .relc .img,
body[data-radius="soft"] .glass,
body[data-radius="soft"] .glass__bg,
body[data-radius="soft"] .itin2__imgwrap{corner-shape:superellipse(4)}
.satx__n{font-size:11px;font-weight:600;letter-spacing:.22em;color:var(--muted);margin-bottom:16px}
.satx__t{font-weight:300;font-size:clamp(22px,2.4vw,31px);letter-spacing:-.01em;line-height:1.08;margin-bottom:15px}
.satx__d{font-size:15.5px;line-height:1.6;color:#56534a}

/* optional slight rounding on booking-form boxes & fields (tweak) */
body[data-formradius="soft"] .enquire .fld input,
body[data-formradius="soft"] .enquire .fld textarea,
body[data-formradius="soft"] .enquire .fld select,
body[data-formradius="soft"] .enquire .introbox textarea,
body[data-formradius="soft"] .enquire .dd__btn,
body[data-formradius="soft"] .enquire .dd__panel,
body[data-formradius="soft"] .enquire .chip,
body[data-formradius="soft"] .enquire .numrow,
body[data-formradius="soft"] .enquire .bk-closed,
body[data-formradius="soft"] .enquire .btn,
body[data-formradius="soft"] .enquire .ledg__send{border-radius:5px}
body[data-formradius="soft"] .enquire .dd__panel{overflow:hidden}
body[data-formradius="soft"] .applycard .btn--block{border-radius:5px}
body[data-formradius="soft"] .mode-toggle{border-radius:5px;overflow:hidden}
body[data-formradius="soft"] .applycard{border-radius:6px}
body[data-formradius="soft"] .ledg{border-radius:6px}
/* form field text: darker + a touch more spacing for legibility */
.enquire .fld input,.enquire .fld textarea,.enquire .fld select,.enquire .introbox textarea,.enquire .dd__btn,.enquire .dd__opt{color:#0a0a0a;font-weight:400;letter-spacing:.02em}
.enquire .qs__sub{font-size:14.5px}
.gl-req{margin-left:-3px}
.enquire .fld-msg{display:block;color:#ef6146;font-weight:500;font-size:11.5px;letter-spacing:.02em;margin-top:6px}
.enquire .qs>.fld-msg{margin-left:24px}
.enquire .fields{row-gap:22px}
.enquire .fields .fld{position:relative}
.enquire .fields .fld-msg{position:absolute;top:100%;left:0;margin-top:3px}
.ethos--host{position:relative;overflow:hidden}
.ethos--host::before{content:"";position:absolute;inset:0;z-index:0;background:var(--ethos-bg,#141312) center/cover no-repeat;filter:blur(2px) brightness(.5) saturate(1.05);transform:scale(1.06)}
.ethos--host::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(rgba(10,11,12,.5),rgba(10,11,12,.72))}
.ethos--host .ethos__in{position:relative;z-index:2}
body[data-hostbg="soft"] .ethos--host::before{filter:brightness(.72) saturate(1.05)}
body[data-hostbg="soft"] .ethos--host::after{background:linear-gradient(rgba(10,11,12,.34),rgba(10,11,12,.54))}
body[data-hostbg="clear"] .ethos--host::before{filter:brightness(.62) saturate(1.05)}
body[data-hostbg="clear"] .ethos--host::after{background:linear-gradient(rgba(10,11,12,.4),rgba(10,11,12,.6))}
.facil{grid-template-columns:repeat(2,1fr)}
.facil .needtoknow{grid-template-columns:1fr;margin-top:0;padding-top:0;box-shadow:none;gap:22px}
.facil{gap:clamp(22px,2.8vw,40px)}
.facil .fh{margin-bottom:14px;padding-bottom:12px}
.facil li{padding:5px 0 5px 16px;font-size:14px;line-height:1.45}
.facil__flow{font-weight:300;font-size:13.5px;line-height:1.72;color:#3a382f;max-width:38ch}
.facil .fh{margin-bottom:11px;padding-bottom:0;box-shadow:none;font-size:10px;letter-spacing:.2em}
.facil .needtoknow p{font-size:13px;line-height:1.6}
.facil li::before{top:11px}
.facil .needtoknow p{font-size:14px;line-height:1.5}
.facil .needtoknow .nk{margin-bottom:8px}
.pay-sec{margin:24px 0 0 24px;display:flex;flex-direction:column;gap:16px}
.pay-sum{background:var(--cream);color:var(--ink);border-radius:6px;padding:18px 20px}
.pay-sum__h{font-weight:600;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.pay-sum__r{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:9px 0;box-shadow:inset 0 -1px 0 var(--line)}
.pay-sum__r:last-child{box-shadow:none}
.pay-sum__r span:first-child{color:var(--muted);font-weight:600;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.pay-sum__r span:last-child{font-weight:300;font-size:14.5px;color:#3a382f}
.pay-sum__r--tot span:last-child{font-weight:400;font-size:17px;color:var(--ink)}
.pay-widget{background:#fbfaf6;border-radius:6px;padding:18px}
.pay-widget__lbl{font-weight:600;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.pay-widget__slot{min-height:320px;border-radius:6px;background:repeating-linear-gradient(135deg,#f1eee6,#f1eee6 12px,#eae6dc 12px,#eae6dc 24px);display:flex;align-items:center;justify-content:center}
.pay-widget__ph{font-family:'SF Mono',ui-monospace,monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.pay-trust{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-weight:400;font-size:11px;letter-spacing:.03em;color:var(--on-2)}
.pay-trust__rev{color:var(--on);font-weight:600}
.pay-sec{margin:18px 0 0;max-height:0;overflow:hidden;opacity:0;transform:translateY(-8px);transition:max-height .7s var(--ease),opacity .55s ease,transform .55s var(--ease)}
.pay-sec.show{max-height:820px;opacity:1;transform:none}
.pay-sec .pay-widget__slot{min-height:240px}
.bk-dep-total{display:none}
.ledg .lr:has(.stp){align-items:center}
.ledg .ledg__price{font-size:40px;line-height:1.02}
.ledg .stp{display:inline-flex;align-items:center}
.ledg .stp button{display:inline-flex;align-items:center;justify-content:center}
.ledg .stp .stp__v{display:inline-flex;align-items:center;justify-content:center;line-height:1}
@media(max-width:820px){.facil{grid-template-columns:1fr}.facil .needtoknow{gap:26px}}
.party-del{background:none;color:var(--on-3);font-weight:500;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;margin-left:10px}
.party-del:hover{color:var(--on)}
.party-add{margin:16px 0 0 24px;background:rgba(246,244,239,.1);color:var(--on);padding:11px 18px;font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;border-radius:5px}
.party-add:hover{background:rgba(246,244,239,.2)}

/* ROUND 7 — facilities: hairline rows, not bullet lists */
.facil{gap:clamp(26px,3.5vw,54px)}
.facil .fh{padding-bottom:16px;box-shadow:inset 0 -1px 0 var(--ink);margin-bottom:2px}
.facil li{padding:9px 0;box-shadow:inset 0 -1px 0 var(--line);font-size:15.5px;color:#3a382f;line-height:1.5;position:static}
.facil li::before{display:none}

/* ROUND 7 — facts strip uppercase */
.facts{text-transform:uppercase;letter-spacing:.14em}
.facts span{font-size:12px}
.facts b{font-weight:600}
.exp-mallmann .snapshot__hd{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(28px,4vw,56px);align-items:baseline}
.exp-mallmann .snapshot__loc{grid-column:2;justify-self:start;text-align:left;color:var(--muted)}
@media(max-width:560px){.exp-mallmann .snapshot__hd{grid-template-columns:1fr}}
.satxsec{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gut)}
.satxsec .satx{margin-top:0;box-shadow:none}

/* booking-form fixes */
.enquire .chip.on{background:#F6F4EF;color:#1A2C24}
.ledg__alts{margin-top:40px}
.applycard .eq{margin-top:18px;padding:8px 0}
.applycard .eq__num{line-height:1;display:flex;align-items:center;justify-content:center}
.ledg--done .ledg__donet{font-size:clamp(28px,3.2vw,40px);line-height:1.02;letter-spacing:-.02em}
.ledg__donep .dn-link{color:var(--on);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}


/* WordPress-safe related cards: flat <a> via stretched link (no block elements inside anchors) */
.rel__grid .relc{position:relative;display:block}
.rel__grid .relc__link{position:absolute;inset:0;z-index:5;border-radius:inherit;font-size:0;line-height:0;text-indent:-9999px;overflow:hidden}

/* =========================================================
   GUESTLIST / WAITLIST booking mode  (body[data-booking="guestlist"])
   For experiences NOT open for paid booking (group closed / private-only).
   Keeps the Group/Private toggle; hides deposit/balance/payment;
   fm-app.js relabels CTAs to "Join the Guestlist" and the ledger
   price to "Starting from". Nothing is charged.
   ========================================================= */
body[data-booking="guestlist"] .pay-sec{display:none!important}
body[data-booking="guestlist"] .qs:has(#bkPay){display:none}
body[data-booking="guestlist"] #bkBillWrap{display:none!important}

/* =========================================================
   WEATHER CHART — legibility fixes
   Temp label sits ABOVE the bar (always on light ground, never
   under the green fill); JS scales the bars to the data range so
   they read sensibly. Rounded C/F toggle.
   ========================================================= */
.seas__chart{align-items:end}
.seasmo{gap:9px;justify-content:flex-end;height:148px;padding:0;box-shadow:none}
.seasmo .tmp{position:static;z-index:auto;order:0;font-weight:600;font-size:12px;color:var(--ink-soft);padding:0;text-shadow:none}
.seasmo.dep .tmp{color:var(--ink-soft)}
.seasmo .bar{height:92px;background:var(--bg-soft)}
.seasmo .fillbar{top:auto;border-radius:4px}
.seasmo.dep .fillbar{background:var(--green-deep)}
.seas__unit{border-radius:8px;overflow:hidden}
.seas__unit button{border-radius:6px}

/* Enquire form: descriptions & fields flush with the question title's left edge (single tidy indent) */
.enquire .qs__sub,
.enquire .fields,
.enquire .chips,
.enquire .months,
.enquire .when,
.enquire .introbox,
.enquire .numrow,
.enquire .consent,
.enquire .roombld,
.enquire .party,
.enquire .party-add,
.enquire .bk-budrow,
.enquire .bk-budget-out,
.enquire .bk-hint,
.enquire .gl-note,
.enquire .fld__err,
.enquire .fld-msg,
.enquire .chip-other,
.enquire .qs>[style*="margin-left"]{margin-left:0!important}

/* deploy-hardening: kill host-theme native li markers (Salient li{list-style:disc}) so only our custom ::before dot shows */
.igrp li,.ilg li,.ilist li,.ci li,.eincl li,.facil li{list-style:none!important}

/* ledger-label-space: a touch more room under the est label */
.ledg__est .lr__k{margin-bottom:4px}

/* submit-collapse: collapse the booking to just the confirmation on submit */
.enquire.is-done .enquire__form,.enquire.is-done #bkLedger{display:none}
.enquire.is-done .enquire__in{display:grid;grid-template-columns:1.32fr .9fr;gap:clamp(34px,5vw,82px);align-items:start}
.enquire.is-done .enquire__head{margin:0}
.enquire.is-done .enquire__grid{display:block}
@media(max-width:820px){.enquire.is-done .enquire__in{grid-template-columns:1fr;gap:24px}}

/* Facts strip — tablet: two per row; mobile: one per row (dots hidden once it wraps) */
@media(max-width:1080px){.facts{gap:14px 0}.facts .dot{display:none}.facts span{flex:0 0 50%}}
@media(max-width:600px){.facts{gap:12px 0}.facts span{flex:0 0 100%}}

/* Hero title lockup art (original overlay PNGs from live site) */
.herotitle .hero__art{display:block;width:min(88vw,1080px);max-height:72vh;object-fit:contain;margin:0 auto}
@media(max-width:600px){.herotitle .hero__art{width:min(86vw,430px);max-height:64vh}}
