@font-face{font-family:"Syne";src:url(/fonts/syne-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Lexend";src:url(/fonts/lexend-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Lexend";src:url(/fonts/lexend-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
:root{--ox:#1c0b12;--ox2:#2b121d;--ox3:#3c1a28;--mal:#0f5b4b;--mal2:#1f8b72;--champ:#e8cb9b;--lac:#c8432c;--silk:#f3e6d3;--mute:#c9b3a6;--glass:rgba(243,230,211,.07);--edge:rgba(232,203,155,.22);--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}[hidden]{display:none!important}
body{margin:0;background:var(--ox);color:var(--silk);font:400 16.5px/1.7 "Lexend",system-ui,sans-serif;padding-bottom:110px}
a{color:inherit}img{display:block;max-width:100%}
:focus-visible{outline:2px solid var(--champ);outline-offset:4px;border-radius:6px}
.skip{position:absolute;left:-999px;background:var(--champ);color:var(--ox);padding:10px 16px;z-index:99;border-radius:10px}.skip:focus{left:12px;top:12px}
.aura{position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(60vw 50vw at 80% 0%,rgba(15,91,75,.45),transparent 70%),radial-gradient(50vw 40vw at 0% 100%,rgba(200,67,44,.22),transparent 70%)}
.aura::after{content:"";position:absolute;inset:0;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
main,.crown,.ft{position:relative;z-index:1}
h1,h2,h3{font-family:"Syne",sans-serif;font-weight:700;line-height:1;margin:0;letter-spacing:-.02em}
.crown{display:flex;justify-content:space-between;align-items:center;padding:22px clamp(18px,4vw,56px)}
.wm{display:flex;align-items:center;gap:14px;text-decoration:none}
.wm-m{position:relative;width:34px;height:34px}.wm-m i{position:absolute;inset:0;border:1.5px solid var(--champ);border-radius:9px;transform:rotate(calc(var(--k,0)*1deg));opacity:.85;transition:transform .8s var(--ease)}
.wm-m i:nth-child(2){--k:13}.wm-m i:nth-child(3){--k:26}.wm-m i:nth-child(4){--k:39}.wm-m i:nth-child(5){--k:52}.wm-m i:nth-child(6){--k:65}.wm-m i:nth-child(7){--k:78}
.wm:hover .wm-m i{transform:rotate(calc(var(--k,0)*-1deg))}
.wm span{font:700 22px/1 "Syne"}.wm small{display:block;font:400 10px "Lexend";letter-spacing:.4em;text-transform:uppercase;color:var(--champ);margin-top:4px}
.crown-cta{font-size:14px;text-decoration:none;padding:10px 18px;border:1px solid var(--edge);border-radius:999px;background:var(--glass);backdrop-filter:blur(10px);transition:background .4s}
.crown-cta:hover{background:var(--champ);color:var(--ox)}
/* home hero with seven panes */
.h-hero{position:relative;min-height:calc(100dvh - 90px);display:grid;place-items:center;padding:40px clamp(18px,4vw,56px) 80px;overflow:hidden}
.h-panes{position:absolute;inset:0;display:grid;place-items:center;perspective:1200px;pointer-events:none}
.h-panes span{position:absolute;width:min(62vw,820px);aspect-ratio:16/10;border-radius:34px;border:1px solid var(--edge);background:linear-gradient(135deg,rgba(232,203,155,.10),rgba(15,91,75,.12));box-shadow:0 40px 80px -40px rgba(0,0,0,.7);transform:translate3d(calc((var(--n) - 3) * 4.5% + var(--mx,0) * (var(--n) - 3) * 6px),calc((var(--n) - 3) * 5% + var(--my,0) * (var(--n) - 3) * 5px),calc(var(--n) * -70px)) rotateX(10deg) rotateY(-14deg);animation:paneIn 1.4s var(--ease) both;animation-delay:calc(var(--n) * .09s);transition:transform .9s var(--ease)}
.h-panes span:nth-child(4){background:linear-gradient(135deg,rgba(15,91,75,.55),rgba(31,139,114,.18))}
.h-panes span:nth-child(6){background:linear-gradient(135deg,rgba(200,67,44,.25),rgba(232,203,155,.05))}
@keyframes paneIn{from{opacity:0;transform:translate3d(0,20%,-600px) rotateX(30deg)}}
.h-copy{position:relative;text-align:center;max-width:980px}
.h-k{font-size:13px;letter-spacing:.32em;text-transform:uppercase;color:var(--champ);margin:0 0 26px;animation:up 1s .4s var(--ease) both}
.h-title{font-size:clamp(50px,9vw,148px);line-height:.92;animation:up 1.2s .5s var(--ease) both}
.h-title em{font-style:normal;color:transparent;-webkit-text-stroke:1.5px var(--champ);background:linear-gradient(90deg,var(--champ),var(--mal2));-webkit-background-clip:text;background-clip:text;background-size:200% 100%;animation:sheen 6s ease-in-out infinite}
@keyframes sheen{50%{background-position:100% 0}}
.h-lede{max-width:620px;margin:30px auto 34px;font-size:clamp(17px,1.5vw,20px);color:var(--mute);animation:up 1.2s .65s var(--ease) both}
@keyframes up{from{opacity:0;transform:translateY(40px)}}
.h-act{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.lux{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 28px;border-radius:999px;border:1px solid var(--champ);background:var(--champ);color:var(--ox);font:600 15px "Lexend";text-decoration:none;cursor:pointer;position:relative;overflow:hidden;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.lux::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--ease)}
.lux:hover{transform:translateY(-3px);box-shadow:0 18px 40px -16px rgba(232,203,155,.6)}.lux:hover::before{transform:translateX(120%)}
.lux.ghost{background:var(--glass);color:var(--silk);border-color:var(--edge);backdrop-filter:blur(8px)}
/* inner page head */
.ph{position:relative;padding:clamp(40px,8vw,120px) clamp(18px,4vw,56px) clamp(40px,6vw,90px);overflow:hidden}
.ph-word{position:absolute;left:clamp(10px,3vw,50px);top:10%;font:700 clamp(100px,22vw,360px)/.8 "Syne";color:transparent;-webkit-text-stroke:1px rgba(232,203,155,.22);letter-spacing:-.05em;pointer-events:none;animation:drift 1.6s var(--ease) both;white-space:nowrap}
@keyframes drift{from{opacity:0;transform:translateX(-6vw)}}
.ph-g{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(20px,5vw,80px);align-items:end;max-width:1320px;margin:0 auto;padding-top:clamp(60px,10vw,160px)}
.ph h1{font-size:clamp(44px,6.6vw,104px);animation:up 1.1s .1s var(--ease) both}
.ph p{margin:0;font-size:clamp(17px,1.4vw,19px);color:var(--mute);border-left:1px solid var(--champ);padding-left:22px;animation:up 1.1s .25s var(--ease) both}
.sec-h{font-size:clamp(32px,4.4vw,64px);margin-bottom:34px}
.sect{max-width:1320px;margin:0 auto;padding:clamp(40px,6vw,90px) clamp(18px,4vw,56px)}
/* rhythm */
.rhythm{max-width:1320px;margin:0 auto;padding:clamp(50px,8vw,130px) clamp(18px,4vw,56px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(24px,6vw,100px);align-items:center}
.rhythm.rev{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.r-a h2{font-size:clamp(36px,4.6vw,72px);margin-bottom:24px}.r-a p{color:var(--mute);font-size:18px;max-width:520px}
.pane{position:relative;margin:0;width:100%;max-width:100%}
.pane img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:30px;position:relative;z-index:1;filter:saturate(.85) sepia(.12)}
.pane.tall img{aspect-ratio:4/5}
.pane-glass{position:absolute;inset:-22px 22px 22px -22px;border-radius:34px;background:linear-gradient(135deg,var(--mal),rgba(15,91,75,.2));border:1px solid var(--edge)}
.pane::after{content:"";position:absolute;inset:30px -26px -26px 30px;border-radius:34px;border:1px solid var(--edge);background:rgba(200,67,44,.12);z-index:0}
.pane figcaption{position:relative;z-index:2;font-size:12px;color:var(--mute);margin-top:14px}
/* disciplines list */
.disciplines{max-width:1320px;margin:0 auto;padding:clamp(40px,6vw,90px) clamp(18px,4vw,56px)}
.dis{list-style:none;margin:0;padding:0;border-top:1px solid var(--edge)}
.dis a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:center;padding:28px 10px;border-bottom:1px solid var(--edge);text-decoration:none;position:relative;overflow:hidden}
.dis a::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--mal),transparent);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease);z-index:-1}
.dis a:hover::before,.dis a:focus-visible::before{transform:scaleX(1)}
.dis-t{font:700 clamp(28px,4vw,58px)/1 "Syne";transition:transform .6s var(--ease)}.dis a:hover .dis-t{transform:translateX(20px)}
.dis-d{color:var(--mute)}
/* mixer */
.mixer{max-width:1320px;margin:0 auto;padding:clamp(40px,6vw,90px) clamp(18px,4vw,56px)}
.mx-copy p{max-width:620px;color:var(--mute);margin-top:-14px}
.mx{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:26px;margin-top:30px;background:var(--glass);border:1px solid var(--edge);border-radius:34px;padding:clamp(18px,3vw,36px)}
.mx-ctl{display:grid;gap:18px;align-content:start}
.mx-ctl label{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:14px}
.mx-ctl input[type=range]{grid-column:1/-1;width:100%;accent-color:var(--champ)}
.mx-ctl output{color:var(--champ)}
.mx-mat{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.mx-mat legend{font-size:14px;margin-bottom:8px}
.mx-mat label{display:block;position:relative;cursor:pointer}.mx-mat input{position:absolute;left:8px;top:8px;width:16px;height:16px;margin:0;opacity:0}
.mx-mat span{display:block;padding:9px 16px;border-radius:999px;border:1px solid var(--edge);font-size:14px;transition:background .3s}
.mx-mat input:checked+span{background:var(--champ);color:var(--ox)}.mx-mat input:focus-visible+span{outline:2px solid var(--champ);outline-offset:3px}
.mx-stage{position:relative;min-height:340px;border-radius:26px;overflow:hidden;background:var(--ox2);display:grid;place-items:center}
.mx-bg i{position:absolute;border-radius:50%;filter:blur(2px)}
.mx-bg i:nth-child(1){width:220px;height:220px;background:var(--mal2);left:8%;top:10%;animation:float 9s ease-in-out infinite}
.mx-bg i:nth-child(2){width:160px;height:160px;background:var(--lac);right:10%;bottom:8%;animation:float 11s ease-in-out infinite reverse}
.mx-bg i:nth-child(3){width:90px;height:90px;background:var(--champ);right:30%;top:14%;animation:float 7s ease-in-out infinite}
@keyframes float{50%{transform:translate(20px,-24px)}}
.mx-card{position:relative;width:min(300px,80%);aspect-ratio:3/2;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;border:1px solid rgba(255,255,255,.3);transition:all .35s var(--ease)}
.mx-card b{font:700 26px "Syne"}.mx-card span{font-size:14px;opacity:.85}
.mx-code{grid-column:1/-1;margin:0;padding:16px 18px;background:rgba(0,0,0,.3);border-radius:16px;font-size:13px;overflow-x:auto;color:var(--champ);white-space:pre-wrap;word-break:break-word}
/* bands */
.band{position:relative;margin:clamp(30px,5vw,70px) 0;padding:clamp(60px,9vw,140px) clamp(18px,8vw,140px);text-align:center;overflow:hidden}
.band.mal{background:linear-gradient(160deg,var(--mal),#093a30)}.band.champ{background:var(--champ);color:var(--ox)}.band.lac{background:linear-gradient(160deg,var(--lac),#7a2216)}
.band h2{font-size:clamp(40px,6vw,96px);margin-bottom:22px}.band p{max-width:720px;margin:0 auto;font-size:clamp(17px,1.5vw,20px)}
.band::before{content:"";position:absolute;inset:18px;border:1px solid rgba(243,230,211,.25);border-radius:30px;pointer-events:none}
.band.champ::before{border-color:rgba(28,11,18,.2)}
/* stacking layers */
.layers{max-width:1100px;margin:0 auto;padding:20px clamp(18px,4vw,56px) 60px}
.layer{position:sticky;top:calc(80px + var(--i) * 22px);margin-bottom:28px}
.layer-in{background:linear-gradient(150deg,var(--ox3),var(--ox2));border:1px solid var(--edge);border-radius:30px;padding:clamp(24px,4vw,50px);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(16px,4vw,50px);box-shadow:0 -30px 60px -30px rgba(0,0,0,.8);min-height:240px}
.layer:nth-child(3n+2) .layer-in{background:linear-gradient(150deg,#14453a,#0d332b)}
.layer:nth-child(3n+3) .layer-in{background:linear-gradient(150deg,#4a1f1a,#331410)}
.layer h3{font-size:clamp(28px,3.4vw,48px)}.layer-b p{margin:0 0 12px;color:var(--silk);opacity:.88;font-size:17.5px}
/* asym grid */
.asym{max-width:1320px;margin:0 auto;padding:clamp(30px,5vw,70px) clamp(18px,4vw,56px);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.asym-c{grid-column:span 2;padding:30px;border-radius:26px;background:var(--glass);border:1px solid var(--edge);backdrop-filter:blur(6px);transition:transform .6s var(--ease),background .6s}
.asym-c:nth-child(4n+1){grid-column:span 3;background:linear-gradient(140deg,rgba(15,91,75,.5),rgba(15,91,75,.1))}
.asym-c:nth-child(4n+2){grid-column:span 3;transform:translateY(40px)}
.asym-c:hover{background:rgba(243,230,211,.12)}
.asym-c h3{font-size:26px;margin-bottom:12px}.asym-c p{margin:0;color:var(--mute)}
/* drawers */
.drawers{border-top:1px solid var(--edge)}
.drawer summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 4px;font:700 clamp(20px,2vw,28px)/1.2 "Syne"}
.drawer summary::-webkit-details-marker{display:none}
.drawer summary span{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--edge);position:relative;transition:transform .6s var(--ease),background .4s}
.drawer summary span::before,.drawer summary span::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;background:var(--champ);transform:translate(-50%,-50%)}
.drawer summary span::after{transform:translate(-50%,-50%) rotate(90deg)}
.drawer[open] summary span{transform:rotate(135deg);background:var(--mal)}
.drawer{border-bottom:1px solid var(--edge)}.drawer div{padding:0 4px 24px;color:var(--mute);max-width:760px;animation:up .6s var(--ease)}.drawer p{margin:0}
/* care selector */
.care{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.care-o{position:relative;cursor:pointer}.care-o input{position:absolute;left:16px;top:16px;width:18px;height:18px;margin:0;opacity:0}
.care-c{display:block;padding:30px;border-radius:26px;border:1px solid var(--edge);background:var(--glass);transition:transform .5s var(--ease),background .5s}
.care-c b{display:block;font:700 30px "Syne"}.care-c small{color:var(--mute);font-size:14.5px}
.care-o:hover .care-c{transform:translateY(-6px)}
.care-o input:checked+.care-c{background:linear-gradient(140deg,var(--champ),#c9a874);color:var(--ox);transform:translateY(-10px);box-shadow:0 30px 50px -25px rgba(232,203,155,.5)}
.care-o input:checked+.care-c small{color:var(--ox3)}.care-o input:focus-visible+.care-c{outline:2px solid var(--champ);outline-offset:4px}
.care-out{margin-top:30px;padding:30px;border-radius:26px;background:var(--ox2);border:1px solid var(--edge)}
.care-out ul{margin:10px 0 0;padding-left:20px;color:var(--mute)}.care-out h3{font-size:26px}
/* notes */
.nf{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}
.nf button{font:400 14px "Lexend";padding:10px 18px;border-radius:999px;border:1px solid var(--edge);background:var(--glass);color:var(--silk);cursor:pointer;transition:all .4s var(--ease)}
.nf [aria-pressed=true]{background:var(--champ);color:var(--ox)}
.notes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.note a{display:block;height:100%;padding:24px 26px;border-radius:22px;border:1px solid var(--edge);background:var(--glass);text-decoration:none;transition:transform .5s var(--ease),border-color .5s;animation:up .6s var(--ease)}
.note a:hover{transform:translateY(-4px) rotate(-.4deg);border-color:var(--champ)}
.note-t{display:block;font:700 22px/1.2 "Syne";margin-bottom:6px}.note-d{color:var(--mute);font-size:15px}
/* contact */
.ct{max-width:1320px;margin:0 auto;padding:0 clamp(18px,4vw,56px) 80px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:clamp(20px,4vw,60px);align-items:start}
.lform{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:clamp(22px,4vw,46px);border-radius:34px;background:linear-gradient(160deg,var(--ox3),var(--ox2));border:1px solid var(--edge)}
.lform .wide{grid-column:1/-1}
.lk{grid-column:1/-1;border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}.lk legend{font-size:14px;color:var(--champ);margin-bottom:10px}
.lk label{position:relative;cursor:pointer}.lk input{position:absolute;left:10px;top:10px;width:16px;height:16px;margin:0;opacity:0}
.lk span{display:block;padding:11px 20px;border-radius:999px;border:1px solid var(--edge)}.lk input:checked+span{background:var(--mal);border-color:var(--mal2)}.lk input:focus-visible+span{outline:2px solid var(--champ);outline-offset:3px}
.lf{position:relative;display:grid}
.lf input,.lf textarea{width:100%;font:inherit;color:var(--silk);background:rgba(0,0,0,.18);border:1px solid var(--edge);border-radius:16px;padding:26px 16px 10px;transition:border-color .3s,background .3s}
.lf label{position:absolute;left:17px;top:17px;font-size:15px;color:var(--mute);pointer-events:none;transition:transform .35s var(--ease),font-size .35s,color .35s;transform-origin:left}
.lf input:focus,.lf textarea:focus{outline:none;border-color:var(--champ);background:rgba(0,0,0,.28)}
.lf input:focus+label,.lf input:not(:placeholder-shown)+label,.lf textarea:focus+label,.lf textarea:not(:placeholder-shown)+label{transform:translateY(-11px) scale(.78);color:var(--champ)}
.lf [aria-invalid=true]{border-color:var(--lac)}
.le{color:#ff9a86;font-size:13.5px;margin-top:6px}
.hpf{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lc{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;cursor:pointer}.lform .lc input{width:22px;height:22px;flex:none;margin:1px 0 0;accent-color:var(--champ)}
.lform .lux{justify-self:start}
.lstat{margin:0;padding:16px 18px;border-radius:16px;background:var(--ox)}.lstat.ok{background:var(--mal)}.lstat.bad{background:#5b1d16}
.ct-side{display:grid;gap:12px}
.ct-card{padding:18px 22px;border-radius:20px;background:var(--glass);border:1px solid var(--edge);overflow-wrap:anywhere}
.ct-card span{display:block;font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--champ);margin-bottom:4px}
.ct-map{padding:22px;border-radius:20px;border:1px dashed var(--champ);background:repeating-radial-gradient(circle at 30% 40%,transparent 0 18px,rgba(232,203,155,.06) 18px 19px)}
.ct-map p{margin:0 0 10px;font-size:14.5px}.ct-map a{color:var(--champ)}
.prose{max-width:860px}.prose h2{font-size:32px;margin:40px 0 14px;color:var(--champ)}.prose p{color:var(--silk);opacity:.9}
/* footer */
.ft{border-top:1px solid var(--edge);margin-top:40px;padding:50px clamp(18px,4vw,56px) 40px}
.ft-g{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;font-size:14.5px;color:var(--mute)}
.ft-g p{margin:0 0 6px}.ft-g a{overflow-wrap:anywhere}.ft-n{font:700 22px "Syne";color:var(--silk)}
.ft-l{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.ft-l button{background:none;border:0;padding:0;color:var(--champ);font:inherit;text-decoration:underline;cursor:pointer}
/* dock */
.dock{position:fixed;z-index:60;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:4px;padding:8px;border-radius:26px;background:rgba(43,18,29,.72);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px);border:1px solid var(--edge);box-shadow:0 30px 60px -20px rgba(0,0,0,.8);animation:dockIn 1s .8s var(--ease) both;max-width:calc(100% - 20px)}
@keyframes dockIn{from{transform:translate(-50%,140%)}}
.dk{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 14px;border-radius:18px;text-decoration:none;font:400 11.5px "Lexend";color:var(--mute);background:none;border:0;cursor:pointer;transition:transform .45s var(--ease),background .35s,color .35s}
.dk svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6}
.dk:hover{transform:translateY(-8px) scale(1.08);color:var(--silk)}
.dk[aria-current]{background:var(--champ);color:var(--ox)}
.dk-all[aria-expanded=true]{background:var(--mal);color:var(--silk)}
.rooms-scrim{position:fixed;inset:0;z-index:58;background:rgba(10,4,7,.55);backdrop-filter:blur(4px);animation:fade .4s}
@keyframes fade{from{opacity:0}}
.rooms{position:fixed;z-index:59;left:50%;bottom:104px;transform:translateX(-50%);width:min(640px,calc(100% - 20px));max-height:calc(100dvh - 130px);overflow-y:auto;padding:20px;border-radius:30px;background:linear-gradient(160deg,var(--ox3),var(--ox2));border:1px solid var(--edge);box-shadow:0 40px 90px -30px #000}
.rooms-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.rooms-h p{margin:0;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--champ)}
.rooms-h button{font:400 14px "Lexend";background:var(--glass);color:var(--silk);border:1px solid var(--edge);border-radius:999px;padding:8px 16px;cursor:pointer}
.rooms ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.rooms li{animation:sheet .55s var(--ease) both;animation-delay:calc(var(--r) * .035s)}
@keyframes sheet{from{opacity:0;transform:translateY(30px) rotateX(30deg)}}
.rooms a{display:block;padding:14px 16px;border-radius:18px;background:var(--glass);border:1px solid transparent;text-decoration:none;transition:border-color .3s,transform .4s var(--ease)}
.rooms a:hover{border-color:var(--champ);transform:translateX(4px)}.rooms a[aria-current]{background:var(--mal)}
.rooms b{display:block;font:700 19px "Syne"}.rooms span{font-size:13px;color:var(--mute)}
/* cookie */
.ck{position:fixed;z-index:70;right:18px;top:18px;width:min(420px,calc(100% - 24px));padding:24px;border-radius:26px;background:rgba(43,18,29,.92);backdrop-filter:blur(16px);border:1px solid var(--champ);box-shadow:0 30px 70px -20px #000;animation:up .8s var(--ease) both}
.ck-t{font:700 22px "Syne";margin:0 0 6px}.ck p{margin:0 0 14px;font-size:14.5px}.ck-b{display:flex;gap:10px;flex-wrap:wrap}.ck .lux{flex:1 1 150px;padding:12px 18px}
.reveal{opacity:0;transform:translateY(50px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}.reveal.in{opacity:1;transform:none}
@media (max-width:900px){.rhythm,.rhythm.rev,.ph-g,.mx,.ct,.ft-g{grid-template-columns:minmax(0,1fr)}
.layer-in{grid-template-columns:minmax(0,1fr)}.layer{top:calc(70px + var(--i) * 12px)}
.asym{grid-template-columns:minmax(0,1fr)}.asym-c,.asym-c:nth-child(4n+1),.asym-c:nth-child(4n+2){grid-column:auto;transform:none}
.care,.notes{grid-template-columns:minmax(0,1fr)}.dis a{grid-template-columns:minmax(0,1fr)}
.pane-glass{inset:-12px 12px 12px -12px}.pane::after{inset:16px -12px -12px 16px}}
@media (max-width:620px){.crown-cta{display:none}.dk{padding:8px 8px;font-size:10px}.dk svg{width:20px;height:20px}
.lform{grid-template-columns:minmax(0,1fr)}.rooms ul{grid-template-columns:minmax(0,1fr)}.rooms{bottom:92px}
.h-panes span{width:88vw}.ck{top:auto;bottom:96px;right:12px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.layer{position:relative;top:0}}

/* v2: split couture header + side index */
body{padding-bottom:0!important}
.crown{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px;align-items:center;padding:20px clamp(18px,4vw,56px);border-bottom:1px solid var(--edge);position:relative;z-index:30}
.sp{display:flex;gap:clamp(14px,2vw,30px);font-size:14.5px;letter-spacing:.04em}.sp-r{justify-content:flex-end}
.sp a{text-decoration:none;color:var(--mute);position:relative;padding:6px 0;transition:color .3s}
.sp a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--champ);transform:scaleX(0);transition:transform .5s var(--ease)}
.sp a:hover,.sp a[aria-current]{color:var(--silk)}.sp a:hover::after,.sp a[aria-current]::after{transform:scaleX(1)}
.crown .wm{flex-direction:column;gap:8px;text-align:center}
.dk-all{display:none;font:500 14px "Lexend";letter-spacing:.2em;text-transform:uppercase;background:none;color:var(--silk);border:1px solid var(--edge);border-radius:999px;padding:9px 18px;cursor:pointer;justify-self:end}
.dk-all[aria-expanded=true]{background:var(--champ);color:var(--ox)}
.rooms{left:auto;right:0;top:0;bottom:0;transform:none;width:min(420px,92vw);max-height:none;height:100dvh;border-radius:30px 0 0 30px;animation:side .6s var(--ease)}
@keyframes side{from{transform:translateX(100%)}}
.rooms ul{grid-template-columns:minmax(0,1fr)}
/* cover */
.cover{position:relative;min-height:calc(100dvh - 100px);display:flex;align-items:flex-end;overflow:hidden}
.cover-ph{position:absolute;inset:0;margin:0}.cover-ph img{width:100%;height:100%;object-fit:cover;animation:slowz 18s ease-out both}
@keyframes slowz{from{transform:scale(1.12)}}
.cover-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,11,18,.15),rgba(28,11,18,.92) 82%)}
.cover-ph figcaption{position:absolute;top:14px;right:16px;z-index:2;font-size:11.5px;color:var(--mute)}
.cover-in{position:relative;width:100%;padding:0 clamp(18px,4vw,56px) clamp(36px,6vw,70px)}
.cover-t{font-size:clamp(46px,9.6vw,168px);line-height:.9;letter-spacing:-.02em;animation:up 1.2s .3s var(--ease) both}
.cover-t em{font-style:normal;color:var(--champ)}
.cover-f{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-top:30px;border-top:1px solid var(--edge);padding-top:26px;flex-wrap:wrap}
.cover-f .h-lede{margin:0;max-width:560px}
.manif{max-width:1100px;margin:0 auto;padding:clamp(70px,10vw,150px) clamp(18px,4vw,56px)}
.manif p{font:600 clamp(24px,3vw,42px)/1.3 "Syne";margin:0}.manif em{font-style:normal;color:var(--champ)}
.anat-s{max-width:1320px;margin:0 auto;padding:clamp(50px,7vw,110px) clamp(18px,4vw,56px)}
.anat-h p{color:var(--mute);max-width:620px;font-size:18px;margin:-14px 0 40px}
.anat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,70px);align-items:center}
.an-stack{display:grid;gap:0;perspective:900px;padding:30px 0}
.an-b{font:600 17px "Lexend";color:var(--silk);text-align:left;padding:18px 22px;margin-top:-6px;border-radius:18px;border:1px solid var(--edge);background:linear-gradient(135deg,rgba(60,26,40,.95),rgba(43,18,29,.95));cursor:pointer;transform:rotateX(38deg) translateX(calc(var(--i)*10px));transform-origin:50% 100%;box-shadow:0 20px 30px -20px rgba(0,0,0,.8);transition:transform .6s var(--ease),background .4s}
.an-b:hover{transform:rotateX(20deg) translateX(calc(var(--i)*10px + 14px))}
.an-b[aria-pressed=true]{background:linear-gradient(135deg,var(--mal2),var(--mal));transform:rotateX(0) translateX(calc(var(--i)*10px + 24px)) scale(1.03);z-index:2}
.an-out{background:var(--glass);border:1px solid var(--edge);border-radius:30px;padding:clamp(24px,3vw,40px);min-height:290px}
.an-o{animation:up .6s var(--ease)}.an-k{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--champ);margin:0 0 10px}
.an-o h3{font-size:clamp(30px,3vw,44px);margin-bottom:14px}.an-o p{color:var(--mute)}.an-g{border-top:1px solid var(--edge);padding-top:14px;color:var(--silk)!important}
.route{padding:clamp(50px,7vw,110px) 0}.route-h{max-width:1320px;margin:0 auto;padding:0 clamp(18px,4vw,56px)}.route-h p{color:var(--mute);margin:-14px 0 30px}
.route-l{list-style:none;margin:0;padding:10px clamp(18px,4vw,56px) 30px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,360px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;counter-reset:ph}
.route-l li{scroll-snap-align:start;counter-increment:ph;padding:28px;border-radius:28px;background:linear-gradient(160deg,var(--ox3),var(--ox2));border:1px solid var(--edge);position:relative;transition:transform .5s var(--ease)}
.route-l li:hover{transform:translateY(-8px)}
.route-l li::before{content:counter(ph,upper-roman);position:absolute;right:22px;top:16px;font:700 44px "Syne";color:rgba(232,203,155,.18)}
.rt-d{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--champ)}.route-l h3{font-size:28px;margin:10px 0}.route-l p{color:var(--mute);margin:0}
.duo{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,5vw,70px)}
.duo-p{color:var(--mute)}
.quotes blockquote{margin:0 0 16px;padding:26px 30px;border-left:3px solid var(--champ);background:var(--glass);border-radius:0 24px 24px 0}
.quotes blockquote:nth-child(2){margin-left:clamp(0px,4vw,60px);border-color:var(--mal2)}.quotes blockquote:nth-child(3){margin-left:clamp(0px,8vw,120px);border-color:var(--lac)}
.quotes p{margin:0;font:600 clamp(19px,1.8vw,24px)/1.35 "Syne"}
.endcta{text-align:center}.endcta h2{font-size:clamp(36px,5vw,80px);margin-bottom:30px}
@media (max-width:1100px){.sp{display:none}.crown{grid-template-columns:auto auto;justify-content:space-between}.crown .wm{flex-direction:row;text-align:left}.dk-all{display:inline-block}}
@media (max-width:900px){.anat,.duo{grid-template-columns:minmax(0,1fr)}.an-b{transform:none!important;margin-top:6px}.an-b[aria-pressed=true]{transform:none!important}.cover{min-height:auto;padding-top:46vh}}
@media (max-width:620px){.ck{bottom:12px}}
