/* Local demo only. Opening image and an unframed two-chapter narrative. */
:root{--night:#090d13;--deep:#131a22;--gold:#c7b390;--light-muted:#bfc4cd;color-scheme:dark}
body{background:var(--night)}
.masthead{position:fixed;inset:0 0 auto;background:linear-gradient(#090d13b8,#090d1300);border:0;backdrop-filter:none;transition:background .3s}
.masthead.is-scrolled,.masthead:has(.mobile-nav:not([hidden])){background:#090d13ed;backdrop-filter:blur(16px)}
.masthead-inner{min-height:84px;max-width:1560px}.wordmark>span{font-size:28px}.wordmark>small{color:#c0b7a7}.desktop-nav a{color:#e0e2e7;font-size:11px}
.hero-editorial{position:relative;isolation:isolate;background:#090d13;min-height:740px;height:min(100svh,980px);overflow:hidden}
.hero-visual{position:absolute;z-index:-2;inset:76px 0 50px}
.hero-visual img{width:100%;height:100%;object-fit:contain;object-position:65% center}
.hero-visual:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#090d13ed 0,#090d13a1 26%,#090d1300 51%),linear-gradient(0deg,#090d13,transparent 8%,transparent 94%,#090d13)}
.hero-layout{position:relative;width:min(1560px,calc(100% - 128px));height:100%;margin:auto;display:flex;align-items:center;padding:120px 0 132px}
.hero-message{width:49%;max-width:655px}
.hero-message .eyebrow{font-size:9px;letter-spacing:.24em;margin-bottom:26px;color:#d0c0a4}
.hero-message h1{width:auto;font-size:clamp(60px,6.1vw,94px);line-height:.99;letter-spacing:-.044em;text-wrap:initial;color:#f4f1e9}
.hero-message h1 em{color:#d2c1a6}
.hero-description{font-size:12px;line-height:1.9;color:#c2c8d1;max-width:355px;margin:26px 0 25px}
.hero-contact{font-size:11px;min-height:54px;gap:36px;background:#eee9de;color:#11151c;border-radius:2px}
.hero-contact:hover{background:#fffaf0;transform:translateY(-2px)}
.hero-contact-note{font-size:10px;color:#a6afbb;margin-top:13px;line-height:1.6}
.hero-tail{position:absolute;bottom:24px;left:44px;right:44px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.hero-tail>a{display:inline-flex;align-items:center;gap:14px;font-size:8px;letter-spacing:.17em;color:#d9dce2;min-height:44px}
.scroll-orbit{display:grid;place-items:center;width:37px;height:37px;border:1px solid #ffffff36;border-radius:50%;font-size:17px;transition:transform .25s}
.hero-tail>a:hover .scroll-orbit{transform:translateY(3px)}
.hero-tail>p{max-width:310px;color:#a6afbb;font-size:9px;line-height:1.6;text-align:right}
.collection{background:var(--night);color:#f1eee7;padding:84px 0 95px}
.collection .section-topline{margin-bottom:34px;align-items:center}.collection h2{font-size:clamp(44px,5vw,68px)}.collection h2 em{color:#c7b390}
.collection .eyebrow{color:#a7afbb;font-size:9px;letter-spacing:.18em}.collection .section-aside{color:#aeb7c4;font-size:12px;max-width:285px}
.collection .story-picker{border-color:#ffffff1f;gap:18px;margin-bottom:42px}
.collection .story-picker a{color:#9da7b7;min-height:65px;transition:color .2s,border-color .2s}.collection .story-picker a>span{color:#bba888}
.collection .story-picker a[aria-current]{color:#f7f1e7;border-color:#c7b390}.collection .story-picker a:hover{color:#fff}
.midnight-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:35px}
.midnight-heading h3{font-family:var(--serif);font-size:32px;font-weight:400;letter-spacing:-.02em}.midnight-heading>span{font-size:8px;letter-spacing:.17em;color:#a4adba}
.transformation-pair{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(34px,6vw,100px);align-items:start}
.chapter-original{padding-top:102px;max-width:370px}
.chapter-label{display:flex;align-items:center;gap:12px;font-size:8px;letter-spacing:.15em;color:#b5becb;padding-bottom:15px;line-height:1.7}
.chapter-label>span{color:#c7b390;font-family:var(--serif);font-size:19px}
.chapter-image{display:block;overflow:hidden;background:#0b1018;position:relative}.chapter-image img{width:100%;height:100%;object-fit:cover}
.chapter-original .chapter-image{aspect-ratio:2/3}.chapter-stage .chapter-image{aspect-ratio:1/1.02}.chapter-stage .chapter-image img{object-position:67% center}
.midnight-study .transformation-pair figcaption{display:block;padding:20px 0 0}
.midnight-study .transformation-pair figcaption strong{font-family:var(--serif);font-size:30px;font-weight:400;line-height:1.12}
.midnight-study .transformation-pair figcaption p{color:#aeb7c4;font-size:11px;line-height:1.8;margin-top:10px;max-width:345px}
.midnight-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:45px}
.collection .story-cta{color:#eee9df;font-size:12px;margin:0 0 25px}.collection .concept-tag{color:#b4becb;border-color:#ffffff29;line-height:1.7}
.collection .honest-caption{color:#9da9b9;border-color:#ffffff24;font-size:10px;margin-top:15px}
.collection .story-view>figcaption p{color:#aeb7c4}.collection .story-image{background:#10151d}
.atelier-section{background:#141b23}.atelier-copy .editorial-copy{color:#c3cad4}.atelier-copy .body-copy,.atelier-principles p{color:#a5b0bd}
.atelier-visual>small{color:#aab5c4}.invitation p:not(.eyebrow){color:#b6c0cb}.invitation-note,.footer-bottom{color:#a5afbd}.footer{color:#bcc5d0}
@media(min-width:1650px){.hero-message{margin-left:35px}.hero-visual img{object-position:70% center}.hero-tail{width:min(1560px,calc(100% - 88px));left:50%;right:auto;transform:translateX(-50%)}}
@media(max-width:1100px) and (min-width:701px){.hero-layout{width:calc(100% - 72px)}.hero-message{width:51%}.hero-message h1{font-size:62px}.hero-visual{inset:92px -180px 50px 0}.hero-visual img{object-position:right center}.hero-tail{left:36px;right:36px}.hero-description{max-width:300px}.transformation-pair{gap:36px}.chapter-original{padding-top:78px}}
@media(max-width:800px){.masthead-inner{min-height:76px}.mobile-nav{background:#0b1018}.transformation-pair{grid-template-columns:.8fr 1.2fr}.chapter-stage .chapter-image{aspect-ratio:2/3}.chapter-original{padding-top:60px}.collection{padding-top:65px}.midnight-heading h3{font-size:28px}.midnight-heading>span{font-size:7px}.collection .story-picker{gap:0 18px}.midnight-study .transformation-pair figcaption strong{font-size:25px}}
@media(max-width:700px){
 .hero-editorial{height:auto;min-height:0;padding-top:76px}
 .hero-visual{position:relative;inset:auto;z-index:-1;height:clamp(320px,96vw,530px);width:100%}
 .hero-visual img{object-fit:cover;object-position:67% center}
 .hero-visual:after{background:linear-gradient(0deg,#090d13,transparent 10%,transparent 97%,#090d13)}
 .hero-layout{display:block;width:auto;padding:20px 24px 0;height:auto}.hero-message{width:100%;max-width:520px;margin:0}
 .hero-message .eyebrow{font-size:8px;margin-bottom:17px;letter-spacing:.19em}
 .hero-message h1{font-size:clamp(49px,10vw,66px);line-height:1.02;letter-spacing:-.035em}
 .hero-description{font-size:12px;max-width:390px;margin:21px 0}.hero-contact{width:100%;max-width:365px;min-height:52px;font-size:11px}
 .hero-contact-note{font-size:10px;margin-top:11px}.hero-tail{position:relative;inset:auto;margin:25px 24px 0;display:block;padding-bottom:8px}
 .hero-tail>p{text-align:left;max-width:365px;font-size:8px;margin-top:17px}.hero-tail>a{font-size:8px;letter-spacing:.12em}
 .collection .section-aside{max-width:340px;margin-top:22px}.collection .section-topline{display:block}.collection h2{font-size:45px}
 .midnight-heading{display:block;margin-bottom:28px}.midnight-heading>span{display:block;margin-top:12px}
 .transformation-pair{display:block}.chapter-original{padding:0;max-width:72%;margin:0 0 34px}.chapter-stage{width:88%;margin-left:auto}
 .chapter-stage .chapter-image{aspect-ratio:2/3}.chapter-stage .chapter-image img{object-position:67% center}
 .chapter-label{font-size:7px;gap:9px;padding-bottom:10px}.midnight-study .transformation-pair figcaption{padding-top:14px}
 .midnight-study .transformation-pair figcaption strong{font-size:27px}.midnight-study .transformation-pair figcaption p{font-size:11px;margin-top:7px}
 .midnight-bottom{display:block;margin-top:28px}.midnight-bottom .concept-tag{display:inline-block;margin-bottom:18px}
 .collection .honest-caption{margin-top:0}.collection .story-picker{margin-bottom:30px}.collection .story-cta{font-size:11px}.wordmark>span{font-size:24px}
}
@media(max-width:360px){.invitation h2{font-size:43px}.hero-contact{gap:18px;padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.masthead,.scroll-orbit{transition:none}}
.artisan-footer-note{background:#090d13;color:#aeb6be;padding:18px 0 26px;font-size:12px;line-height:1.8}
.artisan-footer-note .page-width{display:flex;flex-wrap:wrap;gap:5px 14px}
.artisan-footer-note a{color:#c7b390;text-decoration:underline;text-underline-offset:4px}
.private-services{padding:80px 0;background:#101720;color:#eae5db}
.private-services h2{font-size:clamp(34px,4.5vw,62px);line-height:1.12;margin:18px 0 40px}
.private-services h2 em{color:#c7b390}
.private-services-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.private-services-grid article{border-top:1px solid #3b4249;padding-top:28px;min-width:0}
.private-services h3{font-size:27px;line-height:1.2;margin:14px 0 20px}
.private-services-grid p{font-size:15px;line-height:1.8;max-width:560px}
.private-services-grid .eyebrow{font-size:10px;color:#c7b390}
.private-services-grid .service-caveat,.private-services-note{font-size:12px;line-height:1.8;color:#b7bec4;margin:20px 0}
.private-services .text-link{display:inline-block;margin-top:12px;line-height:1.6;overflow-wrap:anywhere}
.private-services-note{margin-top:38px;max-width:760px}
@media(max-width:700px){.private-services{padding:54px 0}.private-services-grid{grid-template-columns:1fr;gap:36px}.private-services h3{font-size:25px}}

/* Native-scroll chapters: pinning is bounded by each chapter, never the page. */
.flow-instruction{display:flex;justify-content:space-between;gap:18px;color:#b8bec5;font-size:12px;line-height:1.7;margin:24px 0}
.flow-instruction a{color:#c7b390;text-underline-offset:4px}
.collection .story-picker{position:sticky;top:84px;z-index:12;background:#090d13;padding:12px 0;margin-bottom:28px}
.collection .story-picker a[aria-current="location"]{color:#eae4d9;border-color:#c7b390}
.scroll-chapter{position:relative;scroll-margin-top:165px;padding:0 0 80px;border-bottom:1px solid #283039;margin-bottom:60px}
.chapter-pin{background:#090d13}
.chapter-index{font-size:11px;letter-spacing:.12em;color:#c7b390;margin:0 0 18px;display:flex;gap:20px}
.collection .scroll-chapter .story-view{display:block;margin:0}
.scroll-chapter .story-image img{width:100%;height:auto;object-fit:contain}
.scroll-chapter .story-image{background:#090d13}
.scroll-chapter.chapter-arrived .chapter-index{animation:chapter-enter .6s ease-out both}
.scroll-chapter.chapter-arrived .story-view{animation:chapter-enter .65s ease-out both}
@keyframes chapter-enter{from{opacity:.4;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1000px) and (min-height:740px){
 .scroll-chapter{min-height:115svh;padding-bottom:12svh}
 .chapter-pin{position:sticky;top:158px}
 .scroll-chapter .story-image img{max-height:calc(100svh - 330px)}
 .scroll-chapter .story-image{height:auto}
 .scroll-chapter .story-view>figcaption{padding:16px 0 0}
 .scroll-chapter .story-view>figcaption p{font-size:12px;line-height:1.6;max-width:720px}
 .scroll-chapter .story-cta{margin-top:12px}
 .scroll-chapter .midnight-heading{margin:0 0 15px}
 .scroll-chapter .midnight-heading h3{font-size:27px}
 .scroll-chapter .transformation-pair{grid-template-columns:1fr 1.65fr;gap:40px;align-items:end}
 .scroll-chapter .chapter-original{padding-top:0;max-width:none;width:100%}
 .scroll-chapter .chapter-stage{width:100%;margin:0}
 .scroll-chapter .chapter-image{height:calc(100svh - 365px);aspect-ratio:auto;background:#090d13}
 .scroll-chapter .chapter-original .chapter-image img{object-fit:contain;object-position:right bottom}
 .scroll-chapter .chapter-stage .chapter-image img{object-fit:cover;object-position:67% center}
 .scroll-chapter .transformation-pair figcaption{padding-top:8px}
 .scroll-chapter .transformation-pair figcaption strong{font-size:23px}
 .scroll-chapter .transformation-pair figcaption p{font-size:11px;margin-top:5px}
 .scroll-chapter .midnight-bottom{margin-top:12px}
}
@media(max-width:999px){
 .collection .story-picker{top:76px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px;padding:8px 0}
 .collection .story-picker a{min-width:0;padding:10px 0;gap:5px;min-height:44px}
 .collection .story-picker strong{font-size:8px;white-space:normal;line-height:1.5}
 .collection .story-picker a span{font-size:8px}
 .scroll-chapter{scroll-margin-top:200px;padding-bottom:38px;margin-bottom:38px}
 .flow-instruction{flex-direction:column;gap:6px}
 .scroll-chapter .story-view>figcaption{display:block}
 .scroll-chapter .story-view>figcaption .concept-tag{display:inline-block;margin-top:15px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 .scroll-chapter.chapter-arrived .chapter-index,.scroll-chapter.chapter-arrived .story-view{animation:none}
 .chapter-pin{position:static}
 .scroll-chapter{min-height:0;padding-bottom:45px}
}
/* Separate editorial windows preserve source proportions and omit the collage seam. */
.editorial-study .transformation-pair{display:flex;align-items:flex-end;justify-content:center;gap:clamp(28px,7vw,110px)}
.editorial-study .chapter-original{width:28%;padding:0;flex:none}
.editorial-study .chapter-stage{width:54%;margin:0;flex:none}
.editorial-study .collage-window{display:block;position:relative;overflow:hidden;height:auto;aspect-ratio:var(--frame-ratio);background:#090d13}
.editorial-study .collage-window img{position:absolute;top:0;height:100%;max-width:none;object-fit:fill!important}
.editorial-story-copy{max-width:720px;color:#b8bec5;font-size:13px;line-height:1.7;margin:20px 0 0}
.value-manifesto{padding:22px 0 32px;margin:0;font-family:var(--serif);font-size:clamp(27px,3vw,37px);line-height:1.2;color:#d6c5a8;max-width:740px}
.value-manifesto span{display:block;font-family:var(--sans);font-size:13px;line-height:1.8;color:#b8bec5;margin-top:15px}
.craft-portrait>img{width:100%;height:auto;max-height:660px;object-fit:cover;object-position:center;aspect-ratio:4/5}
.craft-portrait figcaption{padding-top:23px}
.craft-portrait figcaption>span{font-size:9px;letter-spacing:.18em;color:#c7b390}
.craft-portrait figcaption p{font-family:var(--serif);font-size:31px;line-height:1.15;margin-top:12px;color:#eee9df}
.craft-portrait figcaption small{display:block;margin-top:16px;font-size:10px;line-height:1.7;color:#aab5c4;max-width:430px}
.material-note{font-size:12px;line-height:1.85;color:#bfc7d2;margin:28px 0 0}
.body-teaser{padding:80px 0;background:#171611;color:#eee9df}
.body-teaser-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}
.body-teaser figure{margin:0}.body-teaser img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.body-teaser figcaption{font-size:10px;line-height:1.7;color:#bcb8ad;padding-top:13px}
.body-teaser h2{font-size:clamp(39px,4vw,60px);line-height:1.08}.body-teaser h2 em{color:#ceb68b}
.body-teaser p:not(.eyebrow){font-size:14px;line-height:1.85;margin:23px 0;color:#c9c3b7;max-width:460px}
.body-teaser small{display:block;color:#bcb8ad;font-size:10px;margin-top:20px;letter-spacing:.04em}
@media(max-width:700px){.body-teaser{padding:55px 0}.body-teaser-layout{grid-template-columns:1fr;gap:35px}.body-teaser-layout>div{order:-1}}
.client-questions{background:#101720;padding:90px 0;color:#eee9df}
.questions-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.client-questions h2{font-size:clamp(37px,4vw,56px)}
.client-questions h2 em{color:#c7b390}
.client-questions details{border-top:1px solid #39414a;padding:0}
.client-questions details:last-child{border-bottom:1px solid #39414a}
.client-questions summary{display:flex;justify-content:space-between;gap:18px;list-style:none;padding:23px 0;font-size:14px;cursor:pointer;line-height:1.6}
.client-questions summary::-webkit-details-marker{display:none}
.client-questions summary span{color:#c7b390;font-size:20px}
.client-questions details[open] summary span{transform:rotate(45deg)}
.client-questions details p{font-size:13px;line-height:1.85;color:#bbc4d0;padding:0 20px 24px 0}
@media(max-width:700px){.questions-layout{grid-template-columns:1fr;gap:35px}.client-questions{padding:55px 0}.value-manifesto{font-size:30px}.craft-portrait{max-width:100%}.craft-portrait>img{aspect-ratio:4/5}}
@media(min-width:1000px) and (min-height:740px){
 .scroll-chapter .editorial-study .chapter-stage{width:auto}
 .scroll-chapter .editorial-study .chapter-original{width:auto;padding-bottom:22px}
 .scroll-chapter{scroll-margin-top:185px}
 .chapter-pin{top:185px}
 .scroll-chapter .chapter-image{height:calc(100svh - 425px)}
 .scroll-chapter .editorial-study .chapter-stage .collage-window{height:calc(100svh - 425px);width:auto;aspect-ratio:var(--frame-ratio)}
 .scroll-chapter .editorial-study .chapter-original .collage-window{height:calc((100svh - 425px)*.78);width:auto;aspect-ratio:var(--frame-ratio)}
 .editorial-story-copy{font-size:12px;margin-top:15px}
}
@media(max-width:699px){
 .editorial-study .transformation-pair{display:flex;flex-direction:column;align-items:flex-start;gap:28px}
 .editorial-study .chapter-original{width:58%;padding:0}
 .editorial-study .chapter-stage{width:88%;align-self:flex-end}
 .editorial-study .midnight-heading span{display:none}
}
