:root{
  --bg:#0f0d0e;--bg2:#1b1718;--accent:#e8b4b8;--text:#f5eee9;--muted:#a69a96;--paper:#f5eee9;--paper-ink:#0f0d0e;--band:#5e2432;--band-ink:#fbeef0;--on-accent:#1a0e10;
  --ser:'Bask','Baskerville',Georgia,serif;--sans:'InterText','Inter',system-ui,sans-serif;
  --line:color-mix(in srgb,var(--text) 16%,transparent);--ease:cubic-bezier(.16,1,.3,1);--radius:0px;
}
body{font:300 15.5px/1.7 var(--sans);letter-spacing:.005em;background:var(--bg);color:var(--text);padding-bottom:84px}
h1,h2,h3,h4{font-family:var(--ser);font-weight:400;letter-spacing:-.01em;line-height:1}
em{font-family:var(--ser);font-style:italic}
.wrap{max-width:1320px}
.kick{font:500 11px/1 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--accent)}
.small{font-size:13px;color:var(--muted)}
.btn{font:400 12.5px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;padding:18px 30px;border-radius:0;background:var(--text);color:var(--bg);border:1px solid var(--text)}
.btn:hover{background:transparent;color:var(--text)}
.btn.ln{background:transparent;color:var(--text)}
.btn.ln:hover{background:var(--text);color:var(--bg)}

/* ---------- masthead ---------- */
.mast{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px)}
.mtop{display:flex;justify-content:space-between;font:400 10.5px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);padding:10px 0;border-bottom:1px solid var(--line)}
.mrow{display:flex;justify-content:space-between;align-items:center;height:70px}
.logo{display:flex;align-items:baseline;gap:10px;line-height:1}
.logo span{font:italic 400 18px var(--ser);color:var(--accent)}
.logo b{font:400 34px var(--ser);letter-spacing:.32em}
.links{display:flex;gap:30px}
.links a{font:400 11.5px var(--sans);letter-spacing:.22em;text-transform:uppercase}
.links a.on{color:var(--accent)}
.links a.on:after{display:none}

/* ---------- cover ---------- */
.cover{position:relative;height:calc(100vh - 112px);min-height:640px;max-height:980px;overflow:hidden;border-bottom:1px solid var(--line)}
.cover>.uph{position:absolute;inset:0;background:radial-gradient(70% 70% at 60% 40%,color-mix(in srgb,var(--band) 90%,#fff 4%),var(--bg) 80%)}
.cover>.uph img{filter:grayscale(.15) contrast(1.05)}
.cover .sh{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(8,6,7,.55),rgba(8,6,7,0) 35%,rgba(8,6,7,0) 55%,rgba(8,6,7,.85))}
.cv{position:absolute;inset:0;z-index:3;display:grid;grid-template-rows:auto 1fr auto;padding:26px 4vw 34px;color:#fbf6f2}
.cv .name{font:400 clamp(110px,22vw,340px)/.78 var(--ser);letter-spacing:.06em;text-align:center;mix-blend-mode:normal;color:#fbf6f2;margin-top:-.04em}
.cv .lines{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:30px}
.cl{max-width:300px}
.cl+.cl{justify-self:end;text-align:right}
.cl small{display:block;font:500 10.5px var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.cl b{display:block;font:italic 400 clamp(22px,2.2vw,32px)/1.15 var(--ser)}
.cl p{font-size:13.5px;opacity:.8;margin-top:6px}
.cv .cta{display:flex;flex-direction:column;align-items:center;gap:14px;justify-self:center;grid-column:1/-1}
.cv .cta .btn{background:#fbf6f2;color:#120e0f;border-color:#fbf6f2}
.cv .cta .btn:hover{background:transparent;color:#fbf6f2}
.cv .bar{display:flex;justify-content:space-between;font:400 10.5px var(--sans);letter-spacing:.26em;text-transform:uppercase;opacity:.75}
.name span{display:inline-block;opacity:0;transform:translateY(40px);animation:rise 1.4s var(--ease) forwards}
.name span:nth-child(2){animation-delay:.08s}.name span:nth-child(3){animation-delay:.16s}.name span:nth-child(4){animation-delay:.24s}
@keyframes rise{to{opacity:1;transform:none}}

/* ---------- contents ---------- */
.toc{padding:100px 0;border-bottom:1px solid var(--line)}
.toc .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.toc h2{font-size:clamp(60px,8vw,128px);line-height:.85}
.toc h2 em{color:var(--accent);display:block}
.toc p.small{max-width:30ch;margin-top:24px}
.tl{list-style:none;border-top:1px solid var(--text)}
.tl li a{display:grid;grid-template-columns:70px 1fr auto;gap:20px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line);transition:padding .4s var(--ease),color .3s}
.tl li a:hover{padding-left:14px;color:var(--accent)}
.tl .pg{font:italic 400 20px var(--ser);color:var(--accent)}
.tl b{font:400 clamp(28px,3vw,44px)/1 var(--ser)}
.tl small{font-size:13px;color:var(--muted);display:block;margin-top:6px;font-family:var(--sans)}
.tl .ar{font:400 11px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}

/* ---------- letter / feature ---------- */
.feat{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.feat>.uph{min-height:720px;background:radial-gradient(80% 70% at 40% 40%,var(--band),var(--bg))}
.feat .tx{padding:90px 6vw;display:flex;flex-direction:column;justify-content:center}
.feat h2{font-size:clamp(42px,5vw,76px);margin:18px 0 30px}
.feat h2 em{color:var(--accent)}
.drop{column-count:2;column-gap:36px;font-size:15.5px;color:color-mix(in srgb,var(--text) 82%,var(--bg))}
.drop:first-letter{float:left;font:400 96px/.8 var(--ser);color:var(--accent);margin:8px 12px 0 0}
.sig{margin-top:30px;font:italic 400 28px var(--ser);color:var(--accent)}
.sig small{display:block;font:400 11px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-top:6px}

/* ---------- the edit strip ---------- */
.edit{padding:100px 0;border-bottom:1px solid var(--line)}
.eh{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;gap:30px}
.eh h2{font-size:clamp(48px,6vw,96px)}
.eh h2 em{color:var(--accent)}
.eg{display:grid;grid-template-columns:1.3fr .9fr .9fr;grid-template-rows:auto auto;gap:18px}
.eg figure{position:relative;cursor:pointer}
.eg figure:first-child{grid-row:span 2}
.eg .uph{aspect-ratio:3/4;background:var(--bg2)}
.eg figure:first-child .uph{aspect-ratio:auto;height:100%;min-height:600px}
.eg figure:nth-child(4),.eg figure:nth-child(5){}
.eg figcaption{display:flex;gap:12px;align-items:baseline;margin-top:12px;font-size:13px;color:var(--muted)}
.eg figcaption b{font:italic 400 18px var(--ser);color:var(--text)}
.eg figcaption i{font:italic 400 14px var(--ser);color:var(--accent);font-style:italic}

/* ---------- menu preview + quote ---------- */
.mprev{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.mprev .l{padding:90px 6vw;border-right:1px solid var(--line)}
.mprev h2{font-size:clamp(46px,5vw,80px);margin:16px 0 36px}
.mprev h2 em{color:var(--accent)}
.lead{display:flex;align-items:baseline;gap:10px}
.lead b{font:400 21px var(--ser);white-space:nowrap}
.lead i{flex:1;border-bottom:1px dotted color-mix(in srgb,var(--text) 40%,transparent);transform:translateY(-5px);min-width:20px}
.lead span{font:400 18px var(--ser);color:var(--accent);white-space:nowrap}
#menuPrev{list-style:none;display:grid;gap:20px;margin-bottom:36px}
#menuPrev small{font-size:12px;color:var(--muted);letter-spacing:.06em}
.mprev .r{padding:90px 6vw;background:var(--band);color:var(--band-ink);display:flex;flex-direction:column;justify-content:center}
.mprev blockquote{font:italic 400 clamp(32px,3.4vw,54px)/1.15 var(--ser)}
.mprev cite{display:block;font:400 11px var(--sans);letter-spacing:.26em;text-transform:uppercase;margin-top:30px;opacity:.75;font-style:normal}

/* ---------- contributors ---------- */
.ctb{padding:100px 0;border-bottom:1px solid var(--line)}
.cgr{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--text)}
.cgr div{padding:30px 26px 30px 0;border-right:1px solid var(--line)}
.cgr div:last-child{border:0}
.cgr .mono{width:88px;height:88px;border-radius:50%;border:1px solid var(--accent);display:grid;place-items:center;font:italic 400 36px var(--ser);color:var(--accent);margin-bottom:22px}
.cgr b{display:block;font:400 30px var(--ser)}
.cgr small{display:block;font:400 11px var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin:8px 0 12px}
.cgr p{font-size:14px;color:var(--muted)}

/* ---------- inner page headers ---------- */
.ph{padding:80px 0 50px;border-bottom:1px solid var(--line)}
.ph .wrap{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:end}
.ph h1{font-size:clamp(64px,9.4vw,158px);line-height:.84}
.ph h1 em{color:var(--accent)}
.ph p{color:var(--muted);font-size:16px;max-width:38ch}
.mtabs{display:flex;gap:0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.mtabs button{flex:none;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);font:400 11.5px var(--sans);letter-spacing:.22em;text-transform:uppercase;padding:22px 26px;cursor:pointer}
.mtabs button[aria-pressed=true]{color:var(--text);border-bottom-color:var(--accent)}
.mwrap{display:grid;grid-template-columns:1fr 340px;gap:60px;padding:60px 0 100px}
.mlist{list-style:none}
.mlist li{display:grid;grid-template-columns:50px 1fr auto;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}
.mlist .no{font:italic 400 18px var(--ser);color:var(--accent)}
.mlist .lead b{font-size:clamp(22px,2.2vw,30px);white-space:normal}
.mlist .lead span{font-size:22px}
.mlist p{font-size:14px;color:var(--muted);margin-top:6px}
.mlist p em{color:var(--accent)}
.add{background:none;border:1px solid var(--line);color:var(--text);font:400 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;padding:12px 18px;cursor:pointer;transition:all .3s}
.add:hover{border-color:var(--text)}
.add[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.msum{position:sticky;top:140px;align-self:start;border:1px solid var(--line);padding:30px}
.msum h3{font-size:30px;margin:12px 0 6px}
.msum .tt{font:400 54px var(--ser);color:var(--accent);margin:18px 0 4px}
.msum .btn{width:100%;margin-top:20px;text-align:center;justify-content:center}
.msum ul{list-style:none;margin-top:20px;font-size:13.5px;color:var(--muted);display:grid;gap:8px;border-top:1px solid var(--line);padding-top:18px}
.msum li:before{content:'— ';color:var(--accent)}

/* bridal */
.chap{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}
.chap div{padding:40px 28px;border-right:1px solid var(--line);position:relative}
.chap div:last-child{border:0}
.chap .n{font:italic 400 64px/1 var(--ser);color:var(--accent)}
.chap h3{font-size:28px;margin:18px 0 10px}
.chap p{font-size:14px;color:var(--muted)}
.chap small{display:block;font:400 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-top:16px}
.bsplit{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.bsplit>.uph{min-height:640px;background:radial-gradient(80% 70% at 40% 40%,var(--band),var(--bg))}
.bsplit .tx{padding:70px 5vw}
.bsplit h2{font-size:clamp(40px,4.4vw,66px);margin:16px 0 26px}
.bsplit h2 em{color:var(--accent)}
.bopt{display:grid;gap:10px}
.bopt label{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--line);cursor:pointer;transition:border-color .3s}
.bopt label:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent)}
.bopt input[type=checkbox]{accent-color:var(--accent);width:18px;height:18px}
.bopt span{flex:1;font:400 20px var(--ser)}
.bopt b{font:400 18px var(--ser);color:var(--accent)}
.bopt input[type=number]{width:60px;background:transparent;border:1px solid var(--line);color:var(--text);padding:6px;font:inherit}
.bsum{margin-top:24px;border-top:1px solid var(--text);padding-top:18px}
.bsum ul{list-style:none;font-size:14px}
.bsum li{display:flex;justify-content:space-between;padding:6px 0;color:var(--muted)}
.bsum li b{color:var(--text);font-weight:400}
.bsum .tt{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px}
.bsum .tt b{font:400 46px var(--ser);color:var(--accent)}

/* looks */
.lgrid{columns:3;column-gap:18px;padding:50px 0 100px}
.look{break-inside:avoid;margin-bottom:26px;cursor:zoom-in}
.look .uph{background:var(--bg2)}
.look figcaption{display:flex;gap:10px;align-items:baseline;margin-top:10px;font-size:13px;color:var(--muted)}
.look figcaption b{font:italic 400 19px var(--ser);color:var(--text)}
.lbox{position:fixed;inset:0;z-index:10002;background:rgba(8,6,7,.96);display:grid;grid-template-columns:70px 1fr 70px;align-items:center;opacity:0;pointer-events:none;transition:opacity .3s}
.lbox.open{opacity:1;pointer-events:auto}
.lbox #lbImg{height:78vh;display:grid;place-items:center}
.lbox #lbImg img{max-height:78vh;max-width:100%;object-fit:contain}
.lbox .cap{grid-column:2;text-align:center;color:#eee;font-size:14px;margin-top:14px}
.lbox button{background:none;border:0;color:#fff;font:400 40px var(--ser);cursor:pointer}
.lbox #lbX{position:absolute;top:20px;right:26px;font-size:28px}
.lbox #lbN{position:absolute;top:28px;left:30px;color:#aaa;font:400 12px var(--sans);letter-spacing:.2em}

/* visit + gift */
.vgrid{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.vgrid>div{padding:70px 5vw}
.vgrid>div+div{border-left:1px solid var(--line)}
.vgrid h2{font-size:clamp(38px,4vw,60px);margin:16px 0 24px}
.vgrid h2 em{color:var(--accent)}
.vgrid dl{display:grid;grid-template-columns:auto 1fr;gap:12px 30px;font-size:15px}
.vgrid dt{font:400 11px var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--accent);padding-top:4px}
.gcard{aspect-ratio:1.6/1;max-width:520px;margin:26px 0;padding:30px 34px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(130deg,var(--band),color-mix(in srgb,var(--band) 55%,#000));color:#fbeef0;position:relative;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.gcard:before{content:'';position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;border:1px solid rgba(255,255,255,.18)}
.gcard:after{content:'';position:absolute;right:-20px;top:-20px;width:160px;height:160px;border-radius:50%;border:1px solid rgba(255,255,255,.14)}
.gcard .gt{display:flex;justify-content:space-between;align-items:baseline}
.gcard .gt b{font:400 22px var(--ser);letter-spacing:.3em}
.gcard .gt span{font:italic 400 34px var(--ser);color:#f2c6ca}
.gcard .gm{font:italic 400 20px/1.3 var(--ser)}
.gcard .gb{display:flex;justify-content:space-between;font:400 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;opacity:.85}
.amts{display:flex;gap:6px;flex-wrap:wrap}
.amts button{background:none;border:1px solid var(--line);color:var(--text);padding:10px 14px;font:400 13px var(--sans);cursor:pointer}
.amts button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}
.k-form input,.k-form select,.k-form textarea{background:transparent;color:var(--text);border-bottom:1px solid var(--line);font:300 16px var(--sans)}
.k-form select option{background:var(--bg)}
.k-form label{letter-spacing:.18em;text-transform:uppercase;font-size:10.5px;color:var(--muted)}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}
.tiers div{padding:50px 34px;border-right:1px solid var(--line)}
.tiers div:last-child{border:0}
.tiers h3{font-size:34px;margin:14px 0 6px}
.tiers .pr{font:400 44px var(--ser);color:var(--accent)}
.tiers .pr small{font:400 13px var(--sans);color:var(--muted)}
.tiers ul{list-style:none;margin:18px 0 0;font-size:14px;color:var(--muted);display:grid;gap:8px}
.tiers li:before{content:'— ';color:var(--accent)}
.faq{padding:80px 0}
.faq details{border-bottom:1px solid var(--line);padding:22px 0}
.faq summary{font:400 24px var(--ser)}
.faq summary:after{color:var(--accent)}

/* ---------- colophon ---------- */
.colo{border-top:1px solid var(--line);padding:70px 0 40px}
.logo.big b{font-size:clamp(70px,12vw,180px);letter-spacing:.2em}
.logo.big span{font-size:28px}
.cg{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}
.cg h4{font:400 11px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
.cg p{font-size:14px;color:var(--muted)}
.cg a:hover{color:var(--text)}
.cr{font-size:11.5px;color:var(--muted);margin-top:40px;opacity:.75}

/* ---------- sticky booking bar ---------- */
.bbar{position:fixed;left:0;right:0;bottom:0;z-index:900;background:var(--text);color:var(--bg);display:flex;align-items:stretch;min-height:68px;box-shadow:0 -20px 50px -20px rgba(0,0,0,.5)}
.bbar .bt{background:none;border:0;color:inherit;text-align:left;padding:0 26px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;border-right:1px solid color-mix(in srgb,var(--bg) 18%,transparent);min-width:220px}
.bbar .bt span{font:italic 400 24px/1 var(--ser)}
.bbar .bt small{font-size:11.5px;opacity:.65;margin-top:4px;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bf{flex:1;display:flex;align-items:stretch}
.bf label{flex:1;display:flex;flex-direction:column;justify-content:center;padding:0 20px;border-right:1px solid color-mix(in srgb,var(--bg) 18%,transparent);min-width:0}
.bf small{font:500 10px var(--sans);letter-spacing:.22em;text-transform:uppercase;opacity:.6}
.bf select{background:transparent;border:0;color:inherit;font:400 14.5px var(--sans);padding:4px 0;width:100%;cursor:pointer}
.bf select option{color:#111}
.bf .go{display:flex;align-items:center;padding:0 30px;background:var(--band);color:var(--band-ink);font:400 11.5px var(--sans);letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}
.bf .go:hover{background:var(--accent);color:var(--on-accent)}
.bf .bx{display:none}
.wa{bottom:86px!important}.ns-tbtn{bottom:150px!important}.ns-tpanel{bottom:214px!important}.ns-pill{bottom:86px!important}

@media(max-width:1000px){
 .links{display:none}.burger{display:block;border-color:var(--line)}.burger span{background:var(--text)}
 .links.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:6px 24px 18px}
 .links.open a{padding:15px 0;font-size:13px;border-bottom:1px solid var(--line)}
 .toc .wrap,.feat,.mprev,.bsplit,.vgrid,.ph .wrap,.mwrap{grid-template-columns:1fr}
 .feat>.uph,.bsplit>.uph{min-height:420px}
 .drop{column-count:1}
 .eg{grid-template-columns:1fr 1fr}.eg figure:first-child{grid-column:1/-1;grid-row:auto}.eg figure:first-child .uph{min-height:420px}
 .cgr,.chap{grid-template-columns:1fr 1fr}.cgr div:nth-child(2){border-right:0}
 .tiers{grid-template-columns:1fr}.tiers div{border-right:0;border-bottom:1px solid var(--line)}
 .lgrid{columns:2}
 .msum{position:static}
 .vgrid>div+div{border-left:0;border-top:1px solid var(--line)}
 .mprev .l{border-right:0}
}
@media(max-width:700px){
 body{padding-bottom:70px}
 .wrap{padding-left:16px!important;padding-right:16px!important}
 .mtop span:nth-child(2){display:none}
 .mrow{height:60px}.logo b{font-size:26px;letter-spacing:.24em}.logo span{font-size:15px}
 .cover{height:calc(100svh - 160px);min-height:560px}
 .cv{padding:18px 16px 24px}
 .cv .name{font-size:27vw;letter-spacing:.03em}
 .cv .lines{grid-template-columns:1fr;gap:14px}
 .cl+.cl{justify-self:start;text-align:left}
 .cl b{font-size:22px}.cl p{display:none}
 .cv .bar{display:none}
 .toc,.edit,.ctb{padding:64px 0}
 .toc h2{font-size:64px}
 .tl li a{grid-template-columns:44px 1fr;gap:12px;padding:18px 0}.tl .ar{display:none}.tl b{font-size:26px}
 .feat .tx,.mprev .l,.mprev .r,.bsplit .tx,.vgrid>div{padding:54px 16px}
 .feat h2{font-size:40px}
 .eh{flex-direction:column;align-items:flex-start}
 .eg{gap:10px}.eg figure:first-child .uph{min-height:360px}
 .cgr{grid-template-columns:1fr}.cgr div{border-right:0;border-bottom:1px solid var(--line);padding:24px 0;display:grid;grid-template-columns:70px 1fr;gap:0 16px}.cgr .mono{width:64px;height:64px;font-size:26px;grid-row:span 3;margin:0}
 .ph{padding:50px 0 30px}.ph h1{font-size:62px}
 .mtabs button{padding:18px 16px}
 .mwrap{padding:30px 0 60px;gap:30px}
 .mlist li{grid-template-columns:30px 1fr;gap:12px}.mlist .add{grid-column:2;justify-self:start;margin-top:8px}
 .mlist .lead{flex-wrap:wrap}.mlist .lead i{display:none}.mlist .lead span{width:100%;font-size:19px}
 .chap{grid-template-columns:1fr}.chap div{border-right:0;border-bottom:1px solid var(--line);padding:30px 0}
 .lgrid{columns:1}
 .gcard{padding:22px}.gcard .gm{font-size:16px}.gcard .gt span{font-size:26px}
 .cg{grid-template-columns:1fr 1fr}
 .lbox{grid-template-columns:40px 1fr 40px}
 /* booking bar becomes a pill that opens a sheet */
 .bbar{left:10px;right:10px;bottom:10px;min-height:58px;border-radius:999px;overflow:hidden}
 .bbar .bt{flex:1;min-width:0;border:0;padding:0 22px}
 .bbar .bt span{font-size:20px}
 .bf{display:none}
 .bbar.open{border-radius:22px;flex-direction:column;padding:18px}
 .bbar.open .bt{display:none}
 .bbar.open .bf{display:flex;flex-direction:column;gap:0}
 .bbar.open .bf label{border-right:0;border-bottom:1px solid color-mix(in srgb,var(--bg) 15%,transparent);padding:12px 4px}
 .bbar.open .bf .go{justify-content:center;padding:18px;margin-top:12px;border-radius:999px}
 .bbar.open .bf .bx{display:block;position:absolute;top:10px;right:14px;background:none;border:0;color:inherit;font-size:18px;cursor:pointer}
 .wa{bottom:80px!important}.ns-tbtn{bottom:144px!important}.ns-pill{bottom:80px!important}
}

/* light palettes: keep the magazine contrast */
html:not(.ns-dark) .cover .sh{background:linear-gradient(180deg,rgba(8,6,7,.5),rgba(8,6,7,0) 35%,rgba(8,6,7,0) 55%,rgba(8,6,7,.85))}
html:not(.ns-dark) .mprev .r{color:var(--band-ink)}
/* photo fallback: rose-tinted gradient with the studio monogram, so no empty boxes */
.eg .uph,.look .uph,.feat>.uph,.bsplit>.uph{background:radial-gradient(90% 70% at 30% 20%,color-mix(in srgb,var(--accent) 38%,var(--bg2)),var(--bg2) 60%,color-mix(in srgb,var(--band) 60%,var(--bg)))!important}
.eg .uph:before,.look .uph:before,.feat>.uph:before,.bsplit>.uph:before{content:'N';position:absolute;inset:0;display:grid;place-items:center;font:italic 400 clamp(90px,12vw,220px)/1 var(--ser);color:color-mix(in srgb,var(--text) 14%,transparent);z-index:0}
.eg .uph:after,.look .uph:after{content:'';position:absolute;inset:14px;border:1px solid color-mix(in srgb,var(--text) 14%,transparent);z-index:0}
.uph:has(img.ok):before,.uph:has(img.ok):after{display:none}
.cv .lines{grid-template-rows:auto auto}
.cv .cta{margin-top:18px}
