
:root{--bg:#f5f0ea;--ink:#191918;--muted:#6c6963;--line:#d6cfc5;--dark:#171816;--wine:#702f3b;--ease:cubic-bezier(.22,.75,.22,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}.serif,h1,h2,h3{font-family:var(--font-display);font-weight:400}.wrap{width:min(1400px,calc(100% - 96px));margin:auto}.progress{position:fixed;z-index:200;top:0;left:0;height:2px;background:#cfa7ae;width:100%;transform:scaleX(0);transform-origin:left center;pointer-events:none}.nav{position:fixed;z-index:100;top:18px;left:24px;right:24px;height:58px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-radius:999px;background:rgba(24,24,22,.84);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(15px);color:#fff;box-shadow:0 14px 40px rgba(0,0,0,.12)}.nav .brand{font-size:21px;font-weight:700;letter-spacing:-.06em}.nav .right{display:flex;gap:24px;font-size:12px;letter-spacing:.16em;text-transform:uppercase}.eyebrow,.kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.kicker{display:flex;align-items:center;gap:10px;color:#886f5d}.kicker:before{content:"";width:32px;height:1px;background:currentColor}.hero{min-height:100vh;padding:116px 48px 46px;display:grid;grid-template-columns:.92fr 1.08fr;gap:34px;background:#ece6de}.hero-copy{display:flex;flex-direction:column;justify-content:space-between;border-top:1px solid #cfc7bd;padding-top:24px}.hero-meta{display:flex;justify-content:space-between;gap:20px;color:#77726b}.hero h1{font-size:clamp(68px,9vw,144px);line-height:.86;letter-spacing:-.055em;margin:34px 0 24px}.hero .statement{font-size:clamp(30px,3.3vw,56px);line-height:1.02;max-width:700px}.hero .lead{margin-top:28px;max-width:620px;color:#615e58;font-size:17px;line-height:1.72}.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.hero-tags span{border:1px solid #c8c0b6;padding:9px 12px;border-radius:999px;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.hero-visual{position:relative;min-height:720px;overflow:hidden;background:#222}.hero-visual img{transition:transform 1.2s var(--ease);transform:scale(1.02)}.hero-visual:hover img{transform:scale(1.055)}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.26),transparent 44%)}.hero-number{position:absolute;left:24px;bottom:20px;z-index:2;color:#fff;font-size:12px;letter-spacing:.15em}.strip{display:flex;justify-content:space-between;gap:20px;padding:18px 48px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#726e68}.section{padding:118px 0}.section-head{display:grid;grid-template-columns:.78fr 1.22fr;gap:8vw;align-items:start}.section h2{font-size:clamp(48px,5.3vw,82px);line-height:1.02;letter-spacing:-.035em}.section-head p{font-size:17px;line-height:1.78;color:var(--muted);max-width:720px}.manifest{margin-top:66px;display:grid;grid-template-columns:.9fr 1.1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.manifest-main{padding:34px 40px 40px 0;border-right:1px solid var(--line)}.manifest-main strong{display:block;font:400 clamp(34px,3.6vw,54px)/1.08 var(--font-display);margin-top:34px}.manifest-list article{padding:24px 0 26px 40px;border-bottom:1px solid var(--line);transition:.35s var(--ease)}.manifest-list article:last-child{border:0}.manifest-list article:hover{background:#ece5db}.manifest-list span{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#8a6f59}.manifest-list h3{font-family:var(--font-sans);font-size:18px;line-height:1.4;margin-top:9px}.research{background:#e8e2d9}.decision-map{margin-top:50px;display:grid;grid-template-columns:repeat(4,1fr);position:relative;padding-top:42px}.decision-line{position:absolute;left:0;right:0;top:12px;height:1px;background:#bfb6aa}.decision-line:after{content:"";position:absolute;width:13px;height:13px;border-radius:50%;background:#826957;top:50%;transform:translate(-4px,-50%);animation:runner 2.8s ease-in-out 1 both;box-shadow:0 0 0 6px rgba(130,105,87,.12)}@keyframes runner{0%{left:0}48%{left:calc(100% - 10px)}52%{left:calc(100% - 10px)}100%{left:0}}.decision-map article{padding-right:30px;position:relative}.decision-map article:before{content:"";position:absolute;top:-36px;left:0;width:10px;height:10px;border:2px solid #826957;border-radius:50%;background:#e8e2d9}.decision-map span{font-size:12px;letter-spacing:.15em;color:#8a6f59}.decision-map b{display:block;font:400 24px/1.1 var(--font-display);margin:14px 0 10px}.decision-map p{font-size:15px;line-height:1.63;color:#66615b;max-width:270px}.insight{margin-top:64px;background:#1b1c19;color:#f1ece5;padding:52px 5vw;display:grid;grid-template-columns:.4fr 1.6fr;gap:5vw}.insight span{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#c5a88e}.insight p{font:400 clamp(36px,4.2vw,64px)/1.08 var(--font-display)}.insight em{font-style:normal;color:#d6b9a2}.scene{height:180vh;position:relative;background:#111}.scene-sticky{position:sticky;top:0;height:100vh;overflow:hidden}.scene-sticky>img{position:absolute;inset:-4%;width:108%;height:108%;transform:scale(calc(1.10 - var(--sp,0)*.06)) translate3d(calc(var(--sp,0)*-1vw),calc(var(--sp,0)*-.6vh),0);filter:brightness(calc(.74 - var(--sp,0)*.1));will-change:transform,filter}.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.63),rgba(7,7,7,.04) 68%),linear-gradient(0deg,rgba(7,7,7,.5),transparent 50%)}.scene-copy{position:absolute;left:7vw;right:7vw;bottom:9vh;color:#fff;z-index:2}.scene-copy h2{font-size:clamp(60px,7.5vw,118px);line-height:.94;max-width:1050px;margin-top:20px}.scene-copy p{margin-top:24px;font-size:16px;line-height:1.7;color:#e4ddd5;max-width:700px}.strategy{background:#171816;color:#f3eee7}.strategy-grid{display:grid;grid-template-columns:.74fr 1.26fr;gap:8vw}.strategy-sticky{position:sticky;top:110px;align-self:start}.strategy-sticky p{margin-top:28px;color:#aaa59d;line-height:1.75;max-width:470px}.steps{display:grid;gap:16px}.step{min-height:240px;padding:28px 30px;border:1px solid #393a36;background:#1c1d1a;transition:.35s var(--ease)}.step:hover{border-color:#8c715d;background:#22241f}.step span{font-size:12px;letter-spacing:.16em;color:#c6a58a}.step h3{font-size:32px;line-height:1.1;margin:22px 0 12px}.step p{font-size:15px;line-height:1.65;color:#aaa59d;max-width:600px}.interface{background:#eee8df}.interface-head{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.interface-stage{margin-top:60px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);gap:28px;align-items:start}.desktop{background:#121212;border-radius:24px;overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,.16)}.desktop-bar{height:34px;background:#242521;display:flex;align-items:center;gap:7px;padding:0 14px}.desktop-bar i{width:7px;height:7px;border-radius:50%;background:#73736f}.desktop-screen{aspect-ratio:16/10;position:relative;overflow:hidden}.desktop-screen img{object-position:center}.phone-wrap{display:flex;flex-direction:column;gap:14px}.phone-label{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#746f68}.phone{border:8px solid #111;border-radius:38px;overflow:hidden;background:#111;box-shadow:0 26px 60px rgba(0,0,0,.19);aspect-ratio:9/18.6}.phone img{object-position:center top}.proof{padding-top:98px}.gallery{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:54px}.gallery img{min-height:360px}.gallery .tall{min-height:740px}.gallery-stack{display:grid;gap:18px}.callout{padding:24px;border:1px solid var(--line);background:#f8f3ed}.callout b{font:400 27px/1.15 var(--font-display)}.callout p{font-size:15px;line-height:1.65;color:#68645e;margin-top:12px}.journey{background:#f6f1ea}.journey-flow{margin-top:70px;border-top:1px solid var(--line)}.journey-row{display:grid;grid-template-columns:70px .7fr 1.3fr 44px;gap:24px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line);transition:.3s}.journey-row:hover{background:#eee7dc}.journey-row span{font-size:12px;letter-spacing:.16em}.journey-row b{font:400 29px/1.1 var(--font-display)}.journey-row p{font-size:15px;line-height:1.62;color:#6f6b65}.journey-row i{width:42px;height:42px;border-radius:50%;border:1px solid #bdb4a8;display:grid;place-items:center;font-style:normal}.finale{height:150vh;position:relative;background:#111;color:#fff}.finale-sticky{position:sticky;top:0;height:100vh;overflow:hidden}.finale img{position:absolute;inset:0;filter:brightness(.34);transform:scale(calc(1.08 - var(--fp,0)*.05))}.finale-copy{position:absolute;left:7vw;right:7vw;bottom:8vh;z-index:2}.finale-copy h2{font-size:clamp(60px,7.5vw,118px);line-height:.94;max-width:1050px;margin-top:20px}.finale-bottom{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-top:36px}.finale-bottom p{max-width:680px;color:#e2ddd6;line-height:1.7}.back{border-bottom:1px solid #ffffff80;padding-bottom:5px}.js .reveal{opacity:0;transform:translateY(24px);transition:.85s var(--ease)}.reveal.in{opacity:1;transform:none}
/* Project accents */body.vera{--accent:#49212d}body.linea{--accent:#8a7768}body.mono{--accent:#a14d2f}body.linia{--accent:#ccb079}.project-accent{color:var(--accent)}
/* MONO */.mono .hero-visual,.mono .scene{background:#0d0e0d}.mono .desktop-screen img{object-fit:cover}.mono-build{background:#111;color:#fff;padding:30px;height:100%}.mono-build h4{font:400 34px var(--font-display);margin:0 0 24px}.mono-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mono-options span{border:1px solid #3b3b39;padding:16px 12px;font-size:12px}.mono-options span.active{background:#a14d2f;border-color:#a14d2f}.mono-result{margin-top:26px;display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.mono-result img{min-height:230px}.mono-result aside{background:#f4efe9;color:#191918;padding:18px}.mono-result b{font:400 28px var(--font-display)}.mono-result p{font-size:12px;line-height:1.6;color:#655f59;margin-top:12px}
/* LINIA */.linia .hero{background:#11140f;color:#f4efe6}.linia .hero-copy{border-color:#444a3f}.linia .hero .lead,.linia .hero-meta{color:#c6c8be}.linia .hero-tags span{border-color:#5d6358}.linia .scene-copy .kicker{color:#e2c78c}.court-flow{position:absolute;inset:0;pointer-events:none}.court-flow:after{content:"";position:absolute;left:8%;top:20%;width:70%;height:56%;border:2px solid rgba(229,197,127,.7);border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(8deg)}
@media(max-width:980px){.wrap{width:min(100% - 36px,1400px)}.nav{left:12px;right:12px;top:10px}.hero{grid-template-columns:1fr;padding:92px 18px 28px}.hero-visual{min-height:62vh}.hero h1{font-size:clamp(64px,16vw,104px)}.hero .statement{font-size:34px}.strip{padding:16px 18px;overflow:auto}.section{padding:82px 0}.section-head,.strategy-grid,.interface-head,.interface-stage,.gallery,.manifest{grid-template-columns:1fr}.manifest-main{border-right:0;border-bottom:1px solid var(--line);padding-right:0}.manifest-list article{padding-left:0}.decision-map{grid-template-columns:1fr 1fr;gap:38px 18px}.decision-line,.decision-map article:before{display:none}.decision-map article{padding:0}.insight{grid-template-columns:1fr}.scene{height:150vh}.strategy-sticky{position:relative;top:auto}.interface-stage{gap:24px}.phone{width:min(320px,76vw);margin:auto}.gallery .tall{min-height:420px}.journey-row{grid-template-columns:48px 1fr auto}.journey-row p{grid-column:2/-1}.finale-bottom{align-items:flex-start;flex-direction:column}.vera-grid{grid-template-columns:1fr}.vera-plan,.mono-result{grid-template-columns:1fr}.mono-options{grid-template-columns:1fr 1fr}}

.reveal{opacity:1}.js .reveal{opacity:0}.js .reveal.in{opacity:1}

@media(max-width:600px){.decision-map{grid-template-columns:1fr!important}.decision-map .decision-line{display:none!important}.scene-copy h2,.finale h2{font-size:clamp(40px,12vw,54px)!important;overflow-wrap:anywhere}.case-nav,.nav-pill{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}.scene-sticky img,.finale-sticky img{transform:none!important}}

/* Final QA: readability and consistent interaction */
.hero-tags span,.strip,.eyebrow,.kicker,.hero-number{font-size:12px}
.mono-index,.space-cell span,.space-cell .metric,.live-nav button,.live-badge,.live-caption,.material-label,.goal-proof-card span,.motion-bar span,.motion-actions button,.motion-actions a,.motion-note span,.build-step span,.goal-index,.scenario-head span,.visual-label,.result-card span{font-size:11px!important}
.goal-proof-card p,.space-cell p,.result-card p,.scenario-detail p,.journey-detail>div{font-size:15px!important}
@media(max-width:600px){.showroom-copy h2,.motion-head h2,.goal-proof-head h2,.mono-grid-head h2,.material-head h2{font-size:clamp(40px,12vw,54px)!important}.strip{font-size:11px}.hero-tags span{font-size:11px}}

/* Deep QA readability pass */
.decision-map p,.step p,.journey-row p,.callout p,.mono-result p{font-size:15.5px;line-height:1.65}
@media(max-width:600px){.decision-map p,.step p,.journey-row p,.callout p,.mono-result p{font-size:16px}}
