:root{--bg:#101e24;--panel:#15272e;--ink:#f2f3e9;--muted:#a5b3b7;--accent:#c6f36b;--line:#ffffff20;--heading:'Segoe UI',Arial,sans-serif;--body:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 var(--body)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--accent);outline-offset:7px}header{height:94px;padding:0 4.7%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:absolute;top:0;width:100%;z-index:5}.brand{display:flex;align-items:center;font:800 17px var(--heading);letter-spacing:-.8px}.brand img{width:30px;margin-right:11px}.brand span{font-weight:400}.brand i{font:10px var(--body);margin-left:4px;align-self:flex-start}nav{display:flex;gap:34px;font-size:13px}.contact-link{font-size:13px}.contact-link span{color:var(--accent);margin-left:20px}.story{height:600vh}.stage{height:100vh;min-height:650px;position:sticky;top:0;overflow:hidden}.grid{position:absolute;inset:0;background-image:linear-gradient(#9bb6b408 1px,transparent 1px),linear-gradient(90deg,#9bb6b408 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(90deg,transparent,#000)}canvas{position:absolute;inset:0;width:100%;height:100%}.chapter{position:absolute;left:8%;top:25%;width:53%;pointer-events:none}.chapter a{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;display:flex;align-items:center;gap:10px;margin:0 0 29px}.dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 16px #c6f34470}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--heading);font-weight:500;letter-spacing:-3.8px;line-height:1.12}h1{font-size:clamp(48px,5.8vw,86px);margin-bottom:25px}em{font-style:normal;color:var(--accent)}.intro{color:var(--muted);max-width:420px;line-height:1.75;font-size:16px}.button{background:var(--accent);color:var(--bg);padding:15px 23px;display:inline-flex;align-items:center;gap:40px;font-size:13px;font-weight:700;margin-top:17px;border-radius:3px;transition:background .2s,transform .2s}.button:hover{background:#ddff9d;transform:translateY(-2px)}.signature{font-size:8px;letter-spacing:1.3px;margin-top:32px;color:var(--muted)}.signature span{padding:0 9px;color:var(--accent)}.resolution{opacity:0}.resolution h2{font-size:clamp(48px,5.5vw,78px)}.stage-footer{position:absolute;bottom:37px;left:4.7%;right:4.7%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1px;color:var(--muted)}.steps{display:flex;gap:30px}.steps span{transition:color .2s}.steps .active{color:var(--accent)}.progress{position:absolute;bottom:0;height:2px;left:0;right:0;background:var(--line)}.progress i{display:block;height:100%;width:0;background:var(--accent)}.section{padding:110px 8%;scroll-margin-top:0}.section-top{display:flex;justify-content:space-between;margin-bottom:46px}.section-top>p:last-child{font-size:13px;color:var(--muted)}.section h2{font-size:clamp(36px,4.2vw,60px);margin-bottom:58px}.section h2 span{color:var(--muted)}.expertise{background:#f0f0e8;color:#18272c}.expertise .eyebrow{color:#51625d}.expertise h2 span{color:#84908a}.expertise .section-top>p:last-child{color:#61706d}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.service{border-top:1px solid #18272c40;padding-top:27px}.service-head{display:flex;justify-content:space-between;margin-bottom:35px}.service-head b{font:500 29px var(--heading)}.service-head span{font-size:10px;color:#69776f}.service h3{font:600 21px var(--heading);letter-spacing:-.6px}.service p{font-size:14px;color:#52615d}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}.tags span{font-size:10px;padding:4px 9px;border:1px solid #18272c25;border-radius:3px}.experience{background:var(--bg)}.project{display:grid;grid-template-columns:150px 1fr 1fr;gap:35px;border-top:1px solid var(--line);padding:30px 0}.period{color:var(--muted);font-size:11px;letter-spacing:1px}.project h3{font:500 23px var(--heading);margin-bottom:5px;letter-spacing:-.7px}.role{color:var(--accent);font-size:12px}.project p{font-size:14px;color:var(--muted);margin-bottom:15px}.project small{font-size:10px;color:#c7d1cf}.note{font-size:11px;color:var(--muted);margin-top:24px}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:8%}.about h2{font-size:46px}.about p:not(.eyebrow){color:var(--muted);font-size:15px}.about .large{font:500 27px/1.5 var(--heading)!important;color:var(--ink)!important;letter-spacing:-.8px}.personal{font-size:9px;letter-spacing:1px;border-top:1px solid var(--line);padding-top:22px;margin-top:35px}.personal span{display:block;font-size:13px;letter-spacing:0;color:var(--muted);margin-top:9px}.closing{text-align:center;background:radial-gradient(ellipse at 50% 120%,#354834,transparent 70%),#15272e;padding:95px 8% 110px}.closing .eyebrow{justify-content:center}.closing h2{font-size:clamp(44px,5.5vw,78px);margin-bottom:20px}.email{display:block;font-size:13px;color:var(--muted);margin-top:23px}footer{padding:30px 4.7%;display:flex;gap:25px;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted)}footer .brand{font-size:13px;color:var(--ink)}footer p{margin:0}.skip{position:fixed;top:-100px;left:20px;background:var(--accent);color:var(--bg);padding:15px;z-index:10}.skip:focus{top:10px}.board{max-width:1100px;margin:auto;padding:150px 30px 80px}.board h1{font-size:65px}.swatches{display:flex;gap:16px;margin:35px 0}.swatches div{padding:40px 20px 15px;flex:1;border:1px solid var(--line)}
@media(max-width:850px){header{height:77px}.brand{font-size:14px}nav{display:none}.chapter{left:7%;top:18%;width:86%}h1{font-size:57px}.intro{max-width:340px;font-size:14px}.signature{font-size:7px}.stage{min-height:740px}.steps{gap:15px}.scroll-hint{display:none}.section{padding:75px 7%}.services{grid-template-columns:1fr}.service-head{margin-bottom:20px}.project{grid-template-columns:1fr;gap:8px}.project p{max-width:600px}.about{grid-template-columns:1fr;gap:0}.section-top>p:last-child{display:none}footer{flex-wrap:wrap}.about h2{font-size:40px}.section h2{letter-spacing:-2px}.swatches{flex-wrap:wrap}.swatches div{min-width:130px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.story{height:100vh;min-height:740px}.stage{position:relative}.resolution{display:none}.button{transition:none}.steps{display:none}}
@media(max-width:850px){.stage{min-height:950px}.chapter{top:125px}.story{height:calc(500vh + 950px)}.stage-footer{bottom:28px;gap:15px;flex-wrap:wrap}h1{font-size:clamp(43px,11.6vw,57px);letter-spacing:-3px}.signature{max-width:290px}.resolution h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){.story{height:auto;min-height:0}}

/* Revised composition: shorter desktop story, flowing mobile introduction. */
.story{height:300vh}.stage{min-height:650px}.signature{font-size:13px;letter-spacing:0;color:var(--ink)}
.eyebrow{font-size:11px}.stage-footer{font-size:11px}.tags span,.project small,.note{font-size:12px}
.delivery-note{position:absolute;left:8%;top:32%;max-width:380px;opacity:0;pointer-events:none}.delivery-note strong{display:block;font:500 36px/1.2 var(--heading);letter-spacing:-1px}.delivery-note span{display:block;margin-top:20px;color:var(--muted);font-size:15px}
.mobile-system{display:none}.cookie-notice{position:fixed;z-index:20;bottom:18px;right:18px;max-width:470px;background:#f2f3e9;color:#16272c;padding:17px 20px;box-shadow:0 8px 40px #0005;border:1px solid #718078;display:flex;align-items:start;gap:20px;border-radius:6px;font-size:13px}.cookie-notice[hidden]{display:none}.cookie-notice p{margin:5px 0 0}.cookie-notice a{text-decoration:underline}.cookie-notice button{font:inherit;white-space:nowrap;border:1px solid #52645c;background:transparent;border-radius:3px;padding:6px 10px;color:inherit;cursor:pointer}button:focus-visible{outline:3px solid #719c35;outline-offset:3px}
.privacy-content{max-width:850px;margin:auto;padding:145px 7% 80px}.privacy-content h1{font-size:48px;letter-spacing:-2px}.privacy-content h2{font-size:25px;letter-spacing:-.6px;margin-top:36px}.privacy-content a{text-decoration:underline}
@media(max-width:850px){.story{height:auto;min-height:0}.stage{height:auto;min-height:0;position:relative;padding:115px 7% 35px}.chapter.opening{position:relative;inset:auto;width:100%}.chapter.resolution,.delivery-note,#system,.progress{display:none}.chapter h1{font-size:clamp(38px,10.8vw,60px);letter-spacing:-2px}.intro{font-size:16px;max-width:520px}.signature{max-width:none;font-size:13px;margin:22px 0 0}.eyebrow{font-size:10px;letter-spacing:1.3px;margin-bottom:22px}.mobile-system{position:relative;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:32px;padding-top:24px;gap:5px}.mobile-system div{display:flex;flex-direction:column;gap:6px}.mobile-system b{font-size:11px;color:var(--accent)}.mobile-system strong{font-size:14px}.mobile-system span{font-size:10px;color:var(--muted)}.mobile-system i{font-style:normal;color:var(--accent)}.stage-footer{position:relative;inset:auto;display:block;margin-top:25px}.stage-footer .steps{display:none}.stage-footer>a{display:none}.contact-link{font-size:12px}.contact-link span{margin-left:8px}.cookie-notice{left:12px;right:12px;bottom:12px;max-width:none;padding:14px;gap:10px;font-size:12px}.section{padding:60px 7%}.section h2{margin-bottom:35px}.privacy-content h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){.story{height:auto}.stage{position:relative}.delivery-note{display:none}}

/* Three explicit chapters with equal reading time. */
.story{height:calc(100vh + 240vh)}.stage{height:100vh;min-height:0}.chapter{top:23%;width:51%}.chapter.delivery{opacity:0;visibility:hidden}.chapter.delivery h2{font-size:clamp(48px,5.5vw,78px)}.chapter.resolution h2{font-size:clamp(42px,4.7vw,68px)}
@media(max-width:850px){.story{height:auto}.stage{height:auto;min-height:0}.chapter.opening{width:100%}.chapter.delivery,.chapter.resolution{display:none}}
@media(prefers-reduced-motion:reduce){.story{height:auto}.stage{height:100vh;min-height:650px}.chapter.delivery,.chapter.resolution{display:none}}
@media(max-width:850px) and (prefers-reduced-motion:reduce){.stage{height:auto;min-height:0}}
