/* v3 refinements (Aman-inspired, approved 1A·2·3·4C·5·6·7·8·9·10·11). Loaded after site.css and overrides it.
   Motion is untouched (proposal 12 was declined). */
:root{--line:#D8D0C2;--line-dark:#8A8378;--white:#FFFFFF;--hdr:84px}

/* 1A + 2 — headings: Frank Ruhl Libre Light, about half the size, more air */
h1,h2,h3,.display,.h1,.h2,.lead,.slide h2,.index-list h3,.hcard h3,.space h3,.faq summary,.rows button,.rows a,.rows span,.note-card h3,.track h3,.tagline,.menu li a,.tl h3{font-weight:300}
.display{font-size:clamp(30px,3.4vw,46px);line-height:1.22;letter-spacing:0}
.h1{font-size:clamp(26px,2.6vw,36px);line-height:1.3}
.h2{font-size:clamp(23px,2.1vw,30px);line-height:1.32}
.h3{font-size:19px;font-weight:400}
.lead{font-size:clamp(21px,2vw,28px);line-height:1.5}
.ag-top .display{font-size:clamp(30px,3.4vw,46px);max-width:22ch;margin-top:12px}
.phero .display{max-width:24ch}
.slide h2{font-size:clamp(30px,3.6vw,52px);line-height:1.15;margin:12px 0 14px}
.index-list h3{font-size:clamp(24px,2.4vw,34px)}
.index-list .no{font-size:20px}
.index-list a{padding:24px 0;grid-template-columns:52px 1fr auto}
.cta-band .display{margin:14px auto 26px}
.statement .lead{max-width:34ch}
.statement .ghost-word{font-size:clamp(90px,15vw,240px);opacity:.035}
.faq summary{font-size:clamp(19px,1.6vw,22px);padding:20px 0}
.rows button,.rows a{font-size:clamp(19px,1.7vw,24px);padding:18px 0}
.tl .yr{font-size:clamp(30px,3vw,44px)}
.tl h3{font-size:20px}
.note-card h3{font-size:26px}
.track h3{font-size:clamp(20px,1.9vw,26px)}
.tagline{font-size:clamp(24px,2.6vw,34px)}
.menu li a{font-size:clamp(26px,4vw,40px);padding:12px 0}
.center-page .display{max-width:22ch}

/* 3 — running text: lighter, smaller, narrower column; labels small and quiet */
body{font-size:16.5px;font-weight:300;line-height:1.75}
@media(min-width:900px){body{font-size:17px}}
p{max-width:56ch}
.hero p,.phero p,.slide p{font-size:17px}
.index-list .desc{font-size:16px}
.label{font-size:13px;font-weight:400;gap:0;letter-spacing:0;color:var(--muted)}
.label::before,.label.rules::after{content:none}
:lang(en) .label,:lang(fr) .label{font-size:11px;letter-spacing:.18em}
.strong,b,strong{font-weight:400}

/* 4C — the button: slim, square, a hairline in the accent colour that fills on hover */
.btn{min-height:42px;min-width:150px;padding:0 22px;background:transparent;color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);font-weight:400;font-size:15px;transition:background-color .4s,color .4s,box-shadow .4s,transform .14s var(--ease)}
.btn:hover,.bg-night .btn:hover{background:var(--accent);color:var(--on-accent)}
.btn.ghost{color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.menu .btn{color:var(--ivory);box-shadow:inset 0 0 0 1px var(--ivory)}
.menu .btn:hover{background:var(--ivory);color:var(--night)}
.cookie .btn{min-width:0;min-height:38px;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.cookie .btn:hover{background:var(--ink);color:var(--ivory)}

/* 5 — calls to action inside the page are quiet underlined text links, aligned to the text */
.qlink{font-weight:400;font-size:15px;padding-block:4px 7px;gap:0}
.qlink .arr{display:none}
.ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 36px;margin-top:22px}
.hero .ctas,.phero .ctas{margin-top:22px}
.ag-top .ctas{justify-content:center;display:flex;flex-wrap:wrap}
.cta-band .ctas{gap:12px 30px}
.ota{gap:12px 30px}
.index-list .go{font-weight:400;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:5px}
.index-list .go .arr{display:none}

/* 6 — header: menu at the start, logo in the centre, language + button at the end; shrinks on scroll */
.hdr,.hdr.on-dark:not(.solid),.hdr.solid{background:var(--ivory);color:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;transition:height .35s ease-in-out}
.hdr.night,.hdr.night.solid{background:var(--night);color:var(--ivory)}
.hdr.hide{transform:none}
.hdr.small{height:60px}
.hdr-in{display:grid;grid-template-columns:1fr auto 1fr;gap:16px}
.hdr-start{justify-self:start;display:flex;align-items:center}
.hdr-end{justify-self:end;margin:0;gap:20px}
.hdr .logo{justify-self:center;transition:transform .35s ease-in-out}
.hdr.small .logo{transform:scale(.86)}
.logo .wm{font-weight:300;font-size:23px}
.logo .wm small{font-size:9px;letter-spacing:.26em;margin-top:6px;text-align:center}
.logo svg{height:30px}
.menu-btn,.lp-hdr .menu-btn{display:flex;font-weight:400;font-size:14px;gap:12px}
@media(min-width:1180px){.menu-btn{display:flex}}
.menu-btn i{width:24px;height:9px}
.menu-btn i::before,.menu-btn i::after{height:1px}
.hdr .langs{display:flex;font-weight:400;font-size:13px;gap:12px}
.hdr .langs a[aria-current=true]{text-underline-offset:6px}
.hdr .btn,.hdr.on-dark:not(.solid) .btn{min-height:38px;min-width:0;padding:0 18px;font-size:14px;background:transparent;color:var(--accent)}
.hdr .btn:hover,.hdr.on-dark:not(.solid) .btn:hover{background:var(--accent);color:var(--on-accent)}
body.night-page .hdr .btn{color:var(--brass);box-shadow:inset 0 0 0 1px var(--brass)}
body.night-page .hdr .btn:hover{background:var(--brass);color:var(--night)}
@media(max-width:900px){.hdr .langs{display:none}.lp-hdr .langs{display:flex!important}}
@media(max-width:700px){:root{--hdr:68px}.menu-btn span{display:none}.hdr .btn{padding:0 12px;font-size:13px}.logo .wm{font-size:19px}.hdr-in{gap:10px}}
.menu-close{font-weight:400;font-size:14px}
.menu li a span.no{font-size:14px}

/* 7 — floating WhatsApp: slim and light */
.wa,body.night-page .wa{min-height:38px;padding:0 14px;gap:8px;background:var(--ivory);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-dark);font-weight:400;font-size:13.5px}
.wa:hover{background:var(--white)}
.wa svg{width:17px;height:17px}

/* 8 — data strip: smaller numerals, no icons, hairlines, quiet labels */
.strip{border-block:0}
.strip li{padding:6px 22px;flex-direction:column;align-items:flex-start;gap:2px;min-width:120px}
.strip li:first-child{padding-inline-start:0}
.strip li+li{border-inline-start:1px solid var(--line)}
.strip .big-num{font-size:clamp(24px,2.2vw,30px)}
.strip .lbl{font-size:13px;font-weight:300;color:var(--muted)}
.bg-night .strip li+li{border-color:rgba(246,241,231,.18)}
.bg-night .strip .lbl{color:#cfc5b6}
@media(max-width:700px){.strip li{flex:1 1 45%;padding:10px 14px}.strip li:nth-child(3){border-inline-start:0;padding-inline-start:0}.strip li:nth-child(n+3){border-top:0}}

/* 9 — cards and images: calm fixed ratios, no hover zoom, small label + light name + text link, hairline indicators */
.hcard{width:clamp(280px,32vw,500px)}
.hcard .img,.hcard:nth-child(even) .img{aspect-ratio:1.62/1;margin-top:0}
.hcard .img img,.hcard:hover .img img{transform:none}
.hcard .label{display:block;margin-top:16px}
.hcard h3{font-size:22px;margin:4px 0 10px}
.hcard .qlink{font-size:14px}
.space figure,.space:nth-child(6n+1) figure,.space:nth-child(6n+6) figure{aspect-ratio:1.62/1}
.space:nth-child(3n+2) figure{aspect-ratio:3/4}
.space .label{display:block;margin-top:16px}
.space h3{font-size:24px;margin-top:4px}
.gallery button:hover img,.note-card:hover img{transform:none}
.split .m figure{aspect-ratio:3/4}
.split .m figure.land{aspect-ratio:1.62/1}
.hgal-bar,.slides-bar{height:1px;background:var(--line)}
.hgal-bar i{background:var(--line-dark)}
.slides-bar{background:rgba(246,241,231,.22)}
.index-list,.index-list li,.faq,.faq details,.rows li,.rows li:last-child,.tl{border-color:var(--line)}

/* hero: real footage in the arch, the wide photo reel fades in over it as the arch fills the screen */
.ag-media video{position:absolute;inset:0}
.ag-media .ag-reel{opacity:0}
@media (orientation:portrait),(max-width:900px){.ag-media .ag-reel{display:none}} /* phones keep the real footage only */

/* the round "keep scrolling" cursor: half-transparent, so the photo shows through */
.cursor{width:104px;height:104px;margin:-52px 0 0 -52px;padding:12px;background:rgba(246,241,231,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:inset 0 0 0 1px rgba(246,241,231,.7);color:var(--ink);font-size:13px;font-weight:400;line-height:1.25;text-align:center}

/* 10 — form: white fields with a warm-grey hairline, small labels, a slim button at the start of the row */
.lead-form,.bg-night .lead-form{background:transparent;padding:0}
.fld{margin-bottom:18px}
.fld label,.fld legend{font-size:13px;font-weight:400;color:var(--muted);margin-bottom:6px}
.fld input,.fld select{height:44px;border:1px solid var(--line-dark);background:var(--white);font-size:16px;font-weight:300;padding:0 12px}
.bg-night .fld label{color:#cfc5b6}
.bg-night .fld input,.bg-night .fld select{border-color:rgba(246,241,231,.5);background:var(--ivory)}
.fld .err{font-size:14px}
.chk{font-size:14px;margin:4px 0 22px}
.chk input{width:18px;height:18px}
.priv{font-size:13px}
.room-note{background:transparent;border-inline-start:1px solid var(--line-dark);font-size:15px}

/* 11 — footer: light and quiet, a small centred mark, small link rows */
.foot{position:static;background:var(--white);color:var(--ink);padding:64px 0 40px;text-align:center}
.foot-c{display:flex;flex-direction:column;align-items:center;gap:14px}
.foot-logo{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:300;font-size:24px;margin:0}
.foot-logo svg{height:28px;width:auto}
.foot .seal{width:56px;height:56px;margin-bottom:6px}
.foot p{max-width:none;margin:0}
.foot-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 26px;font-size:13.5px;color:var(--muted);margin-top:10px}
.foot-row a{text-decoration:none}
.foot-row a:hover{text-decoration:underline;text-underline-offset:5px}
.foot-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;font-size:12.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:22px;margin-top:22px!important;width:100%}
.foot-legal a{text-decoration:none}
