:root{--bg:#111513;--fg:#eeeae0;--muted:#abb0a8;--line:#3c423c;--accent:#dcf46a;--pad:clamp(24px,4.2vw,76px);color:var(--fg);background:var(--bg);color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}a,button,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:7px}::selection{background:var(--accent);color:var(--bg)}.skip-link{position:fixed;top:-90px;left:20px;background:var(--accent);color:var(--bg);padding:15px;z-index:30}.skip-link:focus{top:16px}.site-header{position:absolute;inset:0 0 auto;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:28px var(--pad)}.wordmark{display:flex;align-items:center;gap:12px;}.brand-symbol{display:grid;place-items:center;background:var(--accent);color:var(--bg);width:39px;height:44px;}.brand-ltd{display:block;margin-top:6px}.site-header nav{display:flex;align-items:center;gap:36px;}.site-header nav a{padding:10px 0}.contact-link{border-bottom:1px solid var(--accent)}.contact-link span{margin-left:22px;color:var(--accent)}.story{position:relative}.stage{position:sticky;top:0;height:100vh;height:100svh;margin-bottom:-100vh;margin-bottom:-100svh;overflow:hidden;isolation:isolate}.stage-caption{position:absolute;left:45%;right:var(--pad);top:17%;display:flex;justify-content:space-between;color:var(--muted)}#car-scene{position:absolute;left:32%;top:20%;width:68%;height:63%;touch-action:pan-y;cursor:grab}#car-scene:active{cursor:grabbing}#car-scene canvas{display:block;width:100%;height:100%}.scene-loading{position:absolute;left:50%;top:50%;color:var(--muted);max-width:300px}.scene-loading[hidden]{display:none}.scene-unavailable #car-scene{display:none}.scene-unavailable .scene-loading{padding:22px;border:1px solid var(--line);}.drawing-note{position:absolute;right:var(--pad);bottom:15%;text-align:right;color:var(--muted)}.drawing-note span{color:#868e84}.scene-tools{position:absolute;left:45%;bottom:15%;display:flex;align-items:center;gap:20px;color:var(--muted)}.scene-tools button{color:var(--fg);border:0;background:none;padding:6px 0;border-bottom:1px solid #707969;cursor:pointer}.scene-tools button[aria-pressed=true]{color:var(--accent)}.part-label{position:absolute;display:flex;align-items:center;gap:9px;pointer-events:none;white-space:nowrap;color:var(--accent);opacity:0}.pin{display:block;width:7px;height:7px;border:1px solid var(--accent);border-radius:50%}.chapter-nav{position:absolute;bottom:30px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;gap:10px;padding-top:21px;border-top:1px solid var(--line);z-index:5}.chapter-nav a{color:#b6bcb0;padding:10px 0;transition:color .2s}.chapter-nav a span{color:#8a9385;margin-right:10px}.chapter-nav a[aria-current]{color:var(--accent)}.chapter-nav a[aria-current] span{color:var(--accent)}.progress-line{position:absolute;top:-1px;height:1px;left:0;right:0;pointer-events:none}.progress-line span{display:block;height:100%;width:0;background:var(--accent)}.chapter{position:relative;min-height:120vh;min-height:120svh;display:flex;align-items:center;padding:100px var(--pad) 150px;pointer-events:none}.chapter:last-child{min-height:100vh;min-height:100svh}.chapter-copy{width:31%;max-width:430px;pointer-events:auto}.chapter h2,.section-heading h2,.contact h2{margin:25px 0}.eyebrow{color:var(--accent);margin:0}.chapter p:not(.eyebrow){color:#bbc0b7;margin:24px 0}.hero{min-height:120vh;min-height:120svh;align-items:flex-start;padding-top:21vh;padding-top:21svh}.hero .chapter-copy{width:43%;max-width:640px}.hero h1{margin:22px 0 28px;}.hero h1 span{color:var(--muted)}.hero p.hero-intro{margin:23px 0}.scroll-cue{display:inline-flex;gap:16px;align-items:center;margin-top:20px}.scroll-cue>span{display:grid;place-items:center;border:1px solid #515b49;width:34px;height:42px;color:var(--accent)}.function-context{border-top:1px solid var(--line);margin:28px 0 22px;padding-top:18px}.function-context dt{color:var(--fg);margin:0 0 8px}.function-context dd{color:#abb2a5;margin:0 0 18px}.text-link{display:inline-flex;align-items:center;gap:36px;padding:7px 0;border-bottom:1px solid #68765b}.text-link span{color:var(--accent)}.flow-note{display:flex;gap:9px;align-items:center;color:var(--muted)}.flow-note b{color:var(--accent);}.workshop{position:relative;z-index:3;background:#e9e7de;color:#182019;padding:105px var(--pad) 50px}.workshop .eyebrow{color:#566246}.section-heading h2{margin:24px 0 60px;max-width:1000px}.workshop-content{display:grid;grid-template-columns:1fr 1.4fr;gap:11%}.workshop-intro{max-width:420px;margin:0}.service-list details{border-top:1px solid #abb1a1;padding:23px 0}.service-list details:last-child{border-bottom:1px solid #abb1a1}.service-list summary{display:flex;list-style:none;gap:21px;align-items:center;cursor:pointer}.service-list summary::-webkit-details-marker{display:none}.service-list summary .mono{color:#64705a}.service-list h3{margin:0}.expand{margin-left:auto;}.service-list details[open] .expand{transform:rotate(45deg)}.service-list details p{margin:18px 35px 5px;max-width:500px;color:#4b5543}.marques{display:flex;justify-content:center;gap:4vw;margin:85px 0 0;padding-top:28px;border-top:1px solid #bbc0b3;}.marques span{color:#858f79}.contact{padding:95px var(--pad) 100px;background:var(--accent);color:var(--bg);position:relative;z-index:3}.contact .eyebrow{color:#4a572c}.contact-main{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:start;margin-top:20px}.contact h2{margin:8px 0}.contact-info>p{margin:12px 0 23px}.phone-link{display:block;width:fit-content;border-bottom:1px solid #56662b;padding-bottom:9px}.phone-link span{margin-left:25px}.sms-link{display:inline-block;margin:18px 0}.contact address{margin:24px 0 17px}.contact .text-link{border-color:#637737}.contact .text-link span{color:var(--bg)}.contact a:focus-visible,.workshop summary:focus-visible{outline-color:#111513}footer{position:relative;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px var(--pad);color:var(--muted);background:var(--bg)}.no-script{position:fixed;bottom:0;left:0;right:0;background:var(--accent);color:var(--bg);padding:14px;z-index:20;}.reduced-motion{scroll-behavior:auto}.reduced-motion *{transition:none!important}
@media(min-width:1600px){.chapter-copy{max-width:450px}}
@media(max-width:1100px){.site-header nav{gap:22px}.chapter-copy{width:35%}.hero .chapter-copy{width:46%}.scene-tools{left:43%}.drawing-note{bottom:20%;}.stage-caption span:last-child{display:none}.drag-hint{display:none}.chapter{padding-bottom:120px}.chapter-nav a span{margin-right:4px}.workshop-content{gap:6%}}
@media(max-width:760px){:root{--pad:23px}.site-header{padding-top:22px}.brand-symbol{width:32px;height:38px;}.site-header nav>a:not(.contact-link){display:none}.contact-link span{margin-left:9px}.stage-caption{top:16%;left:var(--pad);right:var(--pad);}.stage-caption span:last-child{display:inline;}#car-scene{left:0;top:22%;width:100%;height:39%}.chapter{min-height:130svh;align-items:center;padding-top:60svh;padding-bottom:20svh}.chapter-copy{width:100%;max-width:520px}.chapter h2{margin:14px 0}.chapter h2 br{display:none}.chapter p:not(.eyebrow){margin:15px 0}.function-context{margin:17px 0 10px;padding-top:14px}.function-context dd{margin-bottom:13px}.function-context dt:nth-of-type(2),.function-context dd:nth-of-type(2){display:none}.hero{align-items:flex-start;padding-top:20svh;min-height:130svh}.hero .chapter-copy{width:100%;max-width:none}.hero h1{margin:17px 0}.hero h1 br:first-child{display:none}.hero h1>span{display:block}.hero h1>span br{display:none}.hero p.hero-intro{margin-top:39svh;}.scroll-cue{margin-top:5px;}.scroll-cue>span{width:26px;height:32px;}.hero-visible #car-scene{top:38%;height:36%}.hero-visible .stage-caption{top:35%;}.hero-visible .scene-tools{bottom:20%}.drawing-note{display:none}.scene-tools{bottom:auto;top:58%;left:auto;right:var(--pad)}.hero-visible .scene-tools{top:73%}.chapter-nav{bottom:16px;padding-top:12px;gap:3px;}.chapter-nav a{display:flex;flex-direction:column;gap:5px;padding:7px 0}.chapter-nav a span{margin:0}.chapter:last-child{min-height:115svh}.scene-loading{left:20%;top:48%;}.workshop{padding-top:65px}.section-heading h2{margin-bottom:34px}.workshop-content{grid-template-columns:1fr;gap:35px}.service-list summary{gap:15px}.marques{gap:14px;margin-top:44px}.contact{padding-top:58px;padding-bottom:60px}.contact-main{grid-template-columns:1fr;gap:30px}footer{flex-wrap:wrap;}footer>span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(min-width:761px) and (max-height:740px){.hero{padding-top:19vh}.hero h1{margin-top:14px;}.hero p.hero-intro{margin:17px 0}.scroll-cue{margin-top:5px}.chapter h2{margin:16px 0}.function-context{margin:18px 0 12px}.function-context dd{margin-bottom:12px}.chapter-copy{max-width:375px}}
.view-controls{display:flex;align-items:center;gap:5px}.scene-tools .view-controls button{border:0;min-width:30px;min-height:32px;padding:5px}.scene-tools .view-controls button:hover{color:var(--accent)}.scene-tools .view-controls button[hidden],.view-controls[hidden]{display:none}
@media(max-width:760px){.chapter:not(.hero) .chapter-copy{background:var(--bg);padding:18px 0;position:relative;z-index:2}.scene-tools{top:55%;gap:14px}.hero-visible .scene-tools{top:72%;bottom:auto}.scene-tools button{min-height:36px}.scene-tools .view-controls button{min-width:36px;min-height:36px}.stage-caption span:last-child{display:none}.hero-visible .part-label{display:none}}
@media print{.site-header,.stage,.scroll-cue,.scene-tools{display:none}.chapter,.hero{min-height:0;padding:25px 0;break-inside:avoid}.chapter-copy,.hero .chapter-copy{width:100%;max-width:none}.story{padding:20px}.contact,.workshop{padding:30px 20px}.hero p.hero-intro{margin-top:20px}body{background:white;color:black}}
