:root{--ink:#342a23;--paper:#e7d8be;--cream:#f4ecdd;--moss:#66735a;--ochre:#c49a3a;--light:#f7ead5;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 Arial,sans-serif}button,a,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--ochre);outline-offset:5px}h1,h2,h3,h4,p{margin:0}img{display:block;max-width:100%}button{background:none;border:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;padding:16px;background:var(--cream)}.skip-link:focus{top:10px}.site-header{position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:19px 4vw;color:var(--light);transition:background .3s,color .3s}.brand{background:#eee2cc;padding:7px 15px;flex:none}.brand img{width:146px;height:45px}.site-header nav{display:flex;align-items:center;gap:28px}.site-header nav>a,.skip-ascent{font-size:14px;min-height:44px;display:flex;align-items:center}.skip-ascent{border-bottom:1px solid #fff7;gap:25px}.site-header.on-content{background:#f4ecddf5;color:var(--ink);backdrop-filter:blur(15px);border-bottom:1px solid #342a2322}.on-content .skip-ascent{border-color:#342a2355}.menu{position:relative}.menu summary{cursor:pointer;font-size:14px;list-style:none;min-height:44px;display:flex;gap:18px;align-items:center}.menu summary::-webkit-details-marker{display:none}.menu>div{position:absolute;top:55px;right:0;background:var(--cream);color:var(--ink);width:235px;padding:16px;box-shadow:0 18px 50px #0003}.menu>div a{display:block;padding:11px 10px;border-bottom:1px solid #342a231c}.menu summary span{font-size:22px}.journey{height:360svh;position:relative;background:#392a1d;color:var(--light)}.journey-stage{height:100svh;min-height:620px;position:sticky;top:0;overflow:hidden}.stair-still,.lobby-scene,.lobby-scene img,#stair-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.stair-still{object-position:57% 50%}.lobby-scene{opacity:0;z-index:2;pointer-events:none;transform:scale(1.09)}.lobby-scene img{object-position:50% 50%}#stair-canvas{opacity:0;transition:opacity .7s}#stair-canvas canvas{display:block;width:100%;height:100%}.webgl-ready #stair-canvas{opacity:1}.journey-shade{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,#1b170fbd,transparent 77%),linear-gradient(0deg,#1d170fd9,transparent 45%,transparent 77%,#23190f77)}.opening{position:absolute;z-index:4;left:6vw;bottom:16vh;max-width:650px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:500;margin-bottom:22px}.opening h1{font:clamp(64px,6.9vw,112px)/.99 Georgia,serif;letter-spacing:-3.5px}.opening em,h2 em,.path-words em{font-weight:400}.intro{max-width:410px;font-size:16px;line-height:1.7;margin-top:26px}.opening-actions{display:flex;gap:27px;margin-top:28px}.light-link{display:inline-block;min-height:44px;padding:9px 0;border-bottom:1px solid #eed9b8a0;font-size:14px}.on-the-way{position:absolute;z-index:4;left:6vw;top:35%;opacity:0;pointer-events:none}.path-words{font:clamp(45px,6vw,85px)/1.07 Georgia;letter-spacing:-2px}.on-the-way>span{display:block;margin-top:25px;font-size:14px}.lobby-copy{position:absolute;z-index:5;bottom:16vh;left:6vw;right:6vw;opacity:0;pointer-events:none}.lobby-copy h2{font:clamp(70px,9vw,145px)/1 Georgia;letter-spacing:-4px}.lobby-copy>p:not(.eyebrow){margin-top:16px}.lobby-actions{display:flex;gap:32px;margin-top:30px}.lobby-actions a{min-height:44px;padding:12px 0;border-bottom:1px solid #ead9c0aa;font-size:14px}.lobby-actions span{font-size:10px;opacity:.7;margin-right:12px}.lobby-copy.visible{pointer-events:auto}.journey-bottom{position:absolute;bottom:30px;left:4vw;right:4vw;z-index:7;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.scroll-cue{display:flex;gap:14px;align-items:center;min-height:44px}.scroll-line{width:35px;height:1px;background:#e2c695}.journey-tools{display:flex;gap:25px;align-items:center}.journey-tools button{min-height:44px;font-size:12px}.journey-tools button:before{content:'';display:inline-block;width:5px;height:5px;background:var(--ochre);border-radius:50%;margin-right:9px}.progress{height:2px;position:absolute;bottom:0;left:0;right:0;background:#fff2;z-index:8}.progress i{display:block;height:100%;width:100%;background:#d7ae65;transform:scaleX(0);transform-origin:left}.lobby-anchor{position:absolute;bottom:100svh;left:0;scroll-margin-top:0}.content-section{padding:90px 7vw 100px;scroll-margin-top:90px}.section-rail{display:flex;justify-content:space-between;gap:30px;padding-bottom:27px;border-bottom:1px solid #342a2340;font-size:11px;letter-spacing:1.4px;margin-bottom:56px}.section-rail>span:last-child{letter-spacing:.5px}.content-section h2{font:clamp(44px,5.2vw,76px)/1.05 Georgia;letter-spacing:-2px}.welcome-grid,.offer-grid,.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.welcome-grid p{max-width:520px;margin-bottom:20px}.large-copy{font-size:21px;line-height:1.65}.text-link{display:inline-block;min-height:44px;padding:10px 0;font-size:14px;border-bottom:1px solid var(--ink);margin-top:15px}.secondary-link{margin-left:24px}.model-card{display:block;margin-top:55px;position:relative;overflow:hidden}.model-card img{width:100%;aspect-ratio:2.3;object-fit:cover;object-position:50% 58%;transition:transform 1s}.model-card:hover img{transform:scale(1.025)}.model-card>span{position:absolute;bottom:22px;left:25px;right:25px;display:flex;justify-content:space-between;color:var(--light);font-size:16px;text-shadow:0 2px 20px #000}.model-card:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#21170b88);pointer-events:none}.model-card>span{z-index:1}.offer{background:var(--ink);color:var(--paper)}.offer .section-rail{border-color:#e7d8be40}.offer h2 em{color:#d5b169}.offer-intro{max-width:490px;margin-top:26px;font-size:16px;color:#e0d1b9}.payment{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:35px;border-top:1px solid #e7d8be40;padding-top:26px}.payment strong{font:36px Georgia;display:block}.payment span{font-size:13px;line-height:1.6;display:block;margin-top:9px;max-width:215px}.scope-note{font-size:13px;margin-top:24px;color:#c9bba4}.offer-list{list-style:none;margin:0;padding:0}.offer-list li{border-bottom:1px solid #e7d8be40;padding:21px 0;display:flex;gap:22px;font-size:16px}.offer-list li:first-child{padding-top:0}.offer-list span{font-size:11px;color:#c7ac7d;margin-top:5px}.process{background:#e7d8be}.process-list{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin:60px 0 0;padding:0}.process-list>li{border-top:1px solid #342a2350;padding-top:24px}.process-list span{font-size:12px}.process-list h3{font:35px Georgia;margin:25px 0 17px}.process-list p{font-size:15px;line-height:1.75}.proof-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:45px;gap:40px}.proof-heading>p{max-width:245px;font-size:16px}.study{border-top:1px solid #342a2344}.study:last-of-type{border-bottom:1px solid #342a2344}.study>summary{display:grid;grid-template-columns:45px 1fr 200px 25px;gap:20px;align-items:center;list-style:none;cursor:pointer;padding:30px 0}.study summary::-webkit-details-marker{display:none}.study summary>span,.study summary small{font-size:12px}.study summary h3{font:30px Georgia;line-height:1.2}.study summary b{font-size:25px;font-weight:400}.study[open] summary b{transform:rotate(45deg)}.study-body{padding-bottom:35px}.identity-board{background:var(--paper);padding:40px}.identity-board>img{width:min(550px,90%);margin:15px auto 40px}.identity-board>p{font-size:14px;text-align:center}.palette{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:30px 0}.palette span{font-size:11px;line-height:1.6}.palette span:before{content:'';display:block;background:var(--swatch);height:45px;margin-bottom:10px;border:1px solid #342a2322}.ledger{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:30px 0 0}.ledger dt{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;margin-bottom:12px}.ledger dd{font-size:14px;margin:0;line-height:1.7}.decision-trace{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:25px;padding:35px;background:var(--paper);margin:0}.decision-trace span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}.decision-trace strong{display:block;font:25px/1.3 Georgia}.decision-trace p{font-size:13px;margin-top:10px}.responsive-study{padding:30px;background:var(--paper);text-align:center}.width-switch{display:flex;justify-content:center;gap:5px;margin-bottom:30px}.width-switch button{border:1px solid #342a2377;min-height:44px;padding:8px 22px}.width-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.width-switch small{font-size:10px}.mini-browser{width:310px;max-width:100%;margin:auto;border:1px solid #342a2355;background:var(--cream);text-align:left;transition:width .5s var(--ease)}.mini-chrome{padding:8px 12px;font-size:9px;border-bottom:1px solid #342a2330}.mini-chrome>span{float:right}.mini-layout{padding:25px;display:grid;grid-template-columns:1fr;gap:18px}.mini-number{font-size:11px}.mini-layout small{font-size:9px}.mini-layout h4{font:30px/1.08 Georgia;margin:15px 0}.mini-layout p{font-size:12px}.mini-action{display:inline-block;font-size:11px;padding:10px 13px;margin-top:18px;background:var(--ink);color:var(--paper)}.mini-layout aside{padding:15px;background:var(--moss);color:var(--cream);font-size:12px}.mini-browser[data-view=tablet]{width:570px}.mini-browser[data-view=tablet] .mini-layout{grid-template-columns:1fr 1fr}.mini-browser[data-view=tablet] .mini-number{grid-column:1/-1}.mini-browser[data-view=desktop]{width:100%}.mini-browser[data-view=desktop] .mini-layout{grid-template-columns:35px 1.3fr 1fr;gap:30px}.responsive-study>p{font-size:14px;margin-top:20px}.responsive-study>span{font-size:11px}.experiment{margin-top:50px;padding:35px;border-left:2px solid var(--ochre);max-width:800px}.experiment h3{font:32px/1.25 Georgia;margin-bottom:20px}.experiment p:not(.eyebrow){font-size:15px}.about{background:#66735a;color:#fff1db}.about .section-rail{border-color:#fff3}.about p{margin-bottom:25px}.signature{font:32px Georgia;margin-top:40px}.signature span{font:12px Arial;display:block;letter-spacing:1px;margin-top:15px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:6vw}.faq-list details{border-top:1px solid #342a2340}.faq-list details:last-child{border-bottom:1px solid #342a2340}.faq summary{list-style:none;padding:24px 0;cursor:pointer;display:flex;justify-content:space-between;gap:30px;font-size:16px;line-height:1.5}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:22px}.faq details p{font-size:15px;padding:0 25px 25px 0}.closing{padding:80px 7vw;background:var(--ink);color:var(--paper)}.closing h2{font:clamp(45px,6vw,85px) Georgia;margin-bottom:30px}.closing a{margin-right:28px}footer{display:flex;gap:30px;align-items:center;justify-content:space-between;padding:35px 7vw;background:var(--paper);font-size:12px}footer img{width:150px;height:auto}footer a{min-height:44px;padding-top:12px}footer>span{font-size:10px}.no-motion .journey{height:180svh}.no-motion #stair-canvas{display:none}.no-motion .journey *{transition:none!important;animation:none!important}.no-motion .model-card img{transition:none}.noscript{background:var(--paper);padding:20px}.noscript a{text-decoration:underline}
@media(max-width:900px){.site-header{padding:14px 5vw;gap:16px}.brand{padding:5px 10px}.brand img{width:122px;height:38px}.site-header nav{gap:20px}.wide-nav,.skip-ascent{display:none!important}.journey{height:290svh}.journey-stage{min-height:600px}.opening{left:6vw;right:6vw;bottom:150px;max-width:550px}.opening h1{font-size:clamp(54px,9vw,82px);letter-spacing:-2px}.intro{font-size:15px;max-width:380px;margin-top:20px}.opening-actions{margin-top:22px;gap:22px}.stair-still{object-position:52% 50%}.journey-shade{background:linear-gradient(90deg,#20160ed9,transparent 120%),linear-gradient(0deg,#21170fec,transparent 70%)}.lobby-scene img{object-position:50% 50%}.lobby-copy{bottom:140px}.lobby-copy h2{font-size:80px}.lobby-actions{gap:15px;flex-wrap:wrap}.lobby-actions a{font-size:13px}.on-the-way{top:32%}.path-words{font-size:64px}.journey-bottom{left:6vw;right:6vw;bottom:22px;font-size:11px}.journey-tools{gap:12px}#journey-count{display:none}.scroll-line{width:20px}.content-section{padding:65px 6vw 70px}.section-rail{margin-bottom:35px;font-size:10px;align-items:start}.section-rail>span:last-child{max-width:180px;text-align:right}.welcome-grid,.offer-grid,.about-grid{grid-template-columns:1fr;gap:35px}.content-section h2{font-size:58px}.welcome-grid p{max-width:600px}.large-copy{font-size:19px}.model-card{margin-top:35px}.model-card img{aspect-ratio:1.6}.process-list{grid-template-columns:1fr 1fr;gap:35px;margin-top:40px}.study>summary{grid-template-columns:30px 1fr 20px;gap:12px}.study summary small{grid-column:2;grid-row:2}.study summary b{grid-column:3;grid-row:1}.study summary h3{font-size:27px}.ledger{gap:22px}.faq{grid-template-columns:1fr;gap:40px}.faq-list{max-width:800px}.proof-heading{display:block}.proof-heading>p{margin-top:25px;max-width:none}footer{flex-wrap:wrap;padding:30px 6vw}.identity-board{padding:25px}.experiment{padding:25px}.mini-browser[data-view=desktop] .mini-layout{grid-template-columns:1fr 1fr}.mini-browser[data-view=desktop] .mini-number{grid-column:1/-1}}
@media(max-width:520px){.site-header nav{gap:14px}.site-header nav>a,.menu summary{font-size:12px}.brand img{width:108px;height:34px}.brand{padding:5px 8px}.site-header{gap:10px}.menu summary{gap:9px}.eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:17px}.opening h1{font-size:57px}.opening{bottom:140px}.intro{font-size:14px;max-width:310px;line-height:1.65}.opening-actions{gap:20px}.light-link{font-size:13px}.scroll-cue{max-width:190px;line-height:1.6;gap:10px}.journey-tools button{font-size:11px}.on-the-way{left:7vw}.path-words{font-size:56px}.lobby-copy h2{font-size:65px;letter-spacing:-2px}.lobby-copy>p:not(.eyebrow){font-size:14px}.lobby-actions{display:grid;gap:9px;margin-top:20px;max-width:270px}.lobby-actions a{padding:8px 0}.content-section h2{font-size:44px;letter-spacing:-1.5px}.section-rail{font-size:9px;gap:20px}.section-rail>span:last-child{max-width:125px}.large-copy{font-size:18px}.welcome-grid p{font-size:15px}.secondary-link{margin-left:0;display:table}.model-card img{aspect-ratio:1.1}.model-card>span{font-size:13px;bottom:16px;left:16px;right:16px}.payment strong{font-size:32px}.payment span,.scope-note{font-size:12px}.offer-intro{font-size:15px}.offer-list li{font-size:14px;padding:18px 0}.process-list{gap:25px}.process-list h3{font-size:29px;margin:16px 0}.process-list p{font-size:13px}.study>summary{padding:25px 0}.study summary h3{font-size:25px}.study summary>span,.study summary small{font-size:11px}.ledger{grid-template-columns:1fr;gap:20px}.ledger dt{margin-bottom:8px}.ledger dd{font-size:13px}.palette{grid-template-columns:1fr 1fr}.identity-board>p{font-size:12px}.decision-trace{grid-template-columns:1fr;padding:23px}.responsive-study{padding:16px}.width-switch button{padding:8px 16px;font-size:13px}.mini-layout{padding:18px;gap:12px}.mini-browser[data-view=desktop] .mini-layout,.mini-browser[data-view=tablet] .mini-layout{grid-template-columns:1fr}.mini-browser[data-view=desktop]{border-width:5px}.mini-browser[data-view=tablet]{border-width:3px}.experiment{padding:10px 0 10px 20px}.experiment h3{font-size:28px}.experiment p:not(.eyebrow){font-size:14px}.about .large-copy{font-size:17px}.about p{font-size:15px}.faq summary{font-size:15px}.faq details p{font-size:14px}.closing{padding:60px 6vw}.closing h2{font-size:45px}footer>span{width:100%;order:3}.no-motion .journey{height:170svh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body:not(.motion-opt-in) *{animation:none!important;transition:none!important}}

@media(max-width:360px){.opening h1{font-size:49px}.width-switch button{padding:8px 11px}.path-words{font-size:49px}}

.lobby-anchor{scroll-margin-top:-105px}

/* Keep scroll-stopped copy readable; transitions complete in time, not scroll distance. */
.opening,.on-the-way,.lobby-copy{transition:opacity .22s ease,transform .35s ease}
.journey-shade{background:linear-gradient(90deg,#1b170f85,transparent 80%),linear-gradient(0deg,#1d170fbc,transparent 38%,transparent 80%,#23190f66)}
@media(max-width:900px){.journey-shade{background:linear-gradient(90deg,#20160e8c,transparent 130%),linear-gradient(0deg,#21170fcc,transparent 65%)}}

.site-header:not(.on-content){background:linear-gradient(#21180db0,transparent)}
.on-the-way{isolation:isolate;text-shadow:0 2px 12px #21180d88}
.on-the-way::before{content:"";position:absolute;inset:-60px -65px -55px -8vw;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 25% 50%,#21180dbd,transparent 74%)}

/* Photographic arrival: full-resolution plates, independent of WebGL. */
#stair-canvas .photo-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform-origin:50% 52%;will-change:transform,opacity}
.webgl-ready #stair-canvas{transition:none}

/* Finish each photographic dissolve even when scrolling stops. */
#stair-canvas .photo-layer{transition:opacity .65s ease}
.lobby-scene{transition:opacity .65s ease}
@media(prefers-reduced-motion:reduce){#stair-canvas .photo-layer,.lobby-scene{transition:none}}

/* Compact editorial detail below the hero: reset intrinsic HTML height. */
.model-card img{height:auto;aspect-ratio:2.3 / 1;object-position:50% 56%}
.model-card>span{text-decoration:underline;text-underline-offset:5px}
@media(max-width:700px){.model-card img{aspect-ratio:3 / 2}.model-card{margin-top:28px}}

/* Direct returns reveal the shared entrance immediately, without the stair intro. */
.direct-lobby .opening,.direct-lobby .on-the-way{visibility:hidden!important;opacity:0!important}
.direct-lobby .lobby-scene,.direct-lobby .lobby-copy{opacity:1!important;transition:none!important}

/* The Workroom close-up keeps the dome lamp in its compact desktop crop. */
.model-card img{object-position:50% 0%;}

/* Full-screen portrait plates keep both doorways inside the camera frame. */
@media(max-width:700px) and (orientation:portrait){
 .lobby-scene img{object-fit:cover;object-position:50% 35%!important;transform:none!important}
 .lobby-scene{transform:none!important}
 .lobby-copy{top:auto;bottom:105px;left:6vw;right:6vw}
 .lobby-copy h2{font-size:48px;letter-spacing:-1.5px}
 .lobby-copy .eyebrow{margin-bottom:10px}
 .lobby-copy>p:not(.eyebrow){font-size:14px;line-height:1.5;margin-top:12px}
 .lobby-actions{display:grid;gap:0;margin-top:16px;max-width:none}
 .lobby-actions a{min-height:44px;padding:10px 0;font-size:13px}
}
@media(max-width:700px) and (max-height:650px) and (orientation:portrait){
 .lobby-copy{bottom:82px}
 .lobby-copy .eyebrow{display:none}
 .lobby-copy h2{font-size:36px}
 .lobby-copy>p:not(.eyebrow){font-size:13px;margin-top:8px}
 .lobby-actions{grid-template-columns:1fr 1fr;gap:0 14px;margin-top:10px}
 .lobby-actions a:last-child{grid-column:1/-1}
}

/* Reuse the Gallery project files inside the arrival frame openings. */
.arrival-plate{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.arrival-portrait{display:none}
@media(max-width:700px) and (orientation:portrait){.arrival-wide{display:none}.arrival-portrait{display:block}}
