:root{--bg:#090b0b;--surface:#111414;--surface-2:#171a19;--text:#f1f2ea;--muted:#a7aaa2;--dim:#969b94;--line:#f1f2ea21;--line-strong:#f1f2ea3d;--accent:#c8ff55;--accent-ink:#111607;--nav:#090b0be6;--shadow:0 32px 90px #00000047;--shell:1320px;--gutter:clamp(1.1rem, 3vw, 2.5rem);--sans:Arial, "Helvetica Neue", Helvetica, system-ui, -apple-system, "Segoe UI", sans-serif;--body:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--mono:ui-monospace, "Cascadia Code", "Segoe UI Mono", Consolas, monospace}html[data-theme=light]{--bg:#f4f0e6;--surface:#fffaf0;--surface-2:#ebe6da;--text:#14203a;--muted:#5f6674;--dim:#525b6b;--line:#14203a24;--line-strong:#14203a42;--accent:#2459ff;--accent-ink:#fff;--nav:#f4f0e6e6;--shadow:0 32px 90px #252d4421}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);scroll-padding-top:5.5rem}body{isolation:isolate;background:var(--bg);color:var(--text);font-family:var(--body);margin:0;font-size:1rem;line-height:1.6;transition:background-color .3s,color .3s}body:before{content:"";pointer-events:none;z-index:-1;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.24;background-size:4.5rem 4.5rem;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#00000059,#0000 42rem);mask-image:linear-gradient(#00000059,#0000 42rem)}img{max-width:100%;height:auto}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}::selection{background:var(--accent);color:var(--accent-ink)}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{font-family:var(--sans)}.shell{width:min(calc(100% - (2 * var(--gutter))), var(--shell));margin-inline:auto}.section{padding-block:clamp(5.5rem,10vw,10rem)}.section-small{padding-block:clamp(4rem,7vw,7rem)}.section-kicker,.micro-label{color:var(--accent);font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;font-size:.78rem;font-weight:700;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.intro-overlay{z-index:1000;color:#f2f3eb;background:#090b0b;place-items:center;min-height:100svh;padding:1.5rem;transition:opacity .42s cubic-bezier(.22,.8,.28,1),visibility .42s;display:grid;position:fixed;inset:0}.intro-overlay.is-leaving{opacity:0;visibility:hidden}html[data-intro-seen=true] .intro-overlay{display:none}.intro-copy{width:min(90vw,860px)}.intro-copy p{font-family:var(--mono);color:#a7aaa2;margin:0 0 .55rem;font-size:clamp(.8rem,1.2vw,1rem);animation:.58s cubic-bezier(.2,.8,.2,1) .15s both intro-up}.intro-copy h2{letter-spacing:-.07em;margin:0;font-size:clamp(2.8rem,7vw,6.7rem);line-height:.96;animation:.72s cubic-bezier(.16,1,.3,1) .62s both intro-up}.intro-copy h2 em{color:#c8ff55;font-style:normal}.intro-copy>span{color:#a7aaa2;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-top:1.4rem;font-size:.78rem;animation:.58s cubic-bezier(.2,.8,.2,1) 1.35s both intro-up;display:block}.intro-copy>span b{color:#c8ff55;padding-inline:.35rem}.intro-skip{top:max(1rem, env(safe-area-inset-top));right:max(1rem, env(safe-area-inset-right));color:#f2f3eb;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:999px;min-width:5.2rem;min-height:2.75rem;position:absolute}.intro-progress{background:#ffffff1a;height:2px;position:absolute;bottom:0;left:0;right:0}.intro-progress span{transform-origin:0;background:#c8ff55;width:100%;height:100%;animation:2.85s linear both intro-progress;display:block}@keyframes intro-up{0%{opacity:0;transform:translateY(1.1rem)}}@keyframes intro-progress{0%{transform:scaleX(0)}}.site-header{z-index:100;border-bottom:1px solid var(--line);background:var(--nav);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);height:5rem;position:fixed;inset:0 0 auto}.nav-shell{align-items:center;gap:2rem;height:100%;display:flex}.identity{align-items:center;gap:.75rem;min-height:2.75rem;text-decoration:none;display:inline-flex}.identity-mark{width:2.6rem;height:2.6rem;color:var(--text);filter:drop-shadow(0 .45rem 1rem color-mix(in srgb, var(--accent) 10%, transparent));display:block;overflow:visible}.identity-copy{line-height:1.15;display:grid}.identity-copy strong{font-family:var(--sans);font-size:.8rem}.identity-copy small{color:var(--dim);font-family:var(--mono);margin-top:.22rem;font-size:.75rem}.desktop-nav{gap:1.7rem;margin-left:auto;display:flex}.desktop-nav a{color:var(--muted);padding-block:.75rem;font-size:.8rem;font-weight:650;text-decoration:none;transition:color .22s;position:relative}.desktop-nav a:hover{color:var(--text)}.nav-actions{align-items:center;gap:.55rem;display:flex}.theme-toggle,.nav-contact,.menu-toggle{border:1px solid var(--line);background:var(--surface);min-height:2.75rem;color:var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding-inline:.95rem;font-size:.75rem;font-weight:750;text-decoration:none;display:inline-flex}.theme-toggle>span{font-size:1rem;line-height:1}.theme-toggle b{font:inherit}.nav-contact{background:var(--text);border-color:var(--text);color:var(--bg)}.menu-toggle{min-width:4rem;display:none}.mobile-menu{z-index:99;min-height:calc(100dvh - 5rem);padding:2rem var(--gutter) max(2rem, env(safe-area-inset-bottom));background:var(--bg);align-content:space-between;display:grid;position:fixed;inset:5rem 0 0;overflow-y:auto}.mobile-menu nav{width:min(100%,46rem);margin-inline:auto}.mobile-menu nav a{border-bottom:1px solid var(--line);min-height:4.6rem;font-family:var(--sans);letter-spacing:-.05em;grid-template-columns:2rem 1fr auto;align-items:center;gap:1rem;font-size:clamp(1.6rem,6vw,3rem);font-weight:760;text-decoration:none;display:grid}.mobile-menu nav a span{color:var(--accent);font:700 .75rem var(--mono);letter-spacing:.08em}.mobile-menu nav a b{font-weight:400}.mobile-menu>p{width:min(100%,46rem);color:var(--muted);font-family:var(--mono);text-transform:uppercase;margin:2rem auto 0;font-size:.75rem}.hero{padding-top:clamp(8.2rem,13vw,11.5rem);padding-bottom:clamp(4.5rem,8vw,8rem)}.hero-grid{grid-template-columns:minmax(0,1.03fr) minmax(28rem,.97fr);align-items:center;gap:clamp(3rem,7vw,7rem);display:grid}.eyebrow{color:var(--muted);font:700 .75rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.55rem;margin:0 0 1.6rem;display:flex}.eyebrow>span{background:var(--accent);width:.48rem;height:.48rem;box-shadow:0 0 0 .32rem color-mix(in srgb, var(--accent) 13%, transparent);border-radius:50%;flex:none}.hero h1{letter-spacing:-.075em;max-width:780px;margin:0;font-size:clamp(3.7rem,7.1vw,7rem);line-height:.91}.hero h1 em{color:var(--accent);font-style:normal;display:block}.hero-lede{max-width:650px;color:var(--muted);margin:1.9rem 0 0;font-size:clamp(1.05rem,1.5vw,1.22rem);line-height:1.7}.hero-actions,.case-actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.button{border:1px solid var(--line);border-radius:999px;justify-content:space-between;align-items:center;gap:2rem;min-height:3.25rem;padding-inline:1.15rem;font-size:.82rem;font-weight:800;text-decoration:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),background .22s,border-color .22s,box-shadow .28s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.button-secondary{background:var(--surface)}.core-stack{flex-wrap:wrap;gap:.45rem;margin:1.8rem 0 0;padding:0;list-style:none;display:flex}.core-stack li,.tag-list span{border:1px solid var(--line);color:var(--muted);background:color-mix(in srgb, var(--surface) 84%, transparent);font:600 .75rem var(--mono);border-radius:999px;padding:.43rem .75rem}.hero-blueprint{--system-x:0px;--system-y:0px;border:1px solid var(--line-strong);background:radial-gradient(22rem circle at calc(50% + var(--system-x)) calc(48% + var(--system-y)), color-mix(in srgb, var(--accent) 9%, transparent), transparent 72%), color-mix(in srgb, var(--surface) 94%, transparent);min-width:0;box-shadow:var(--shadow);border-radius:1.6rem;transition:border-color .35s,box-shadow .35s;overflow:hidden}.blueprint-bar,.blueprint-foot{min-height:3.25rem;color:var(--dim);font:700 .75rem var(--mono);letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;padding-inline:1.1rem;display:flex}.blueprint-bar{border-bottom:1px solid var(--line)}.blueprint-bar b{color:var(--accent);font:inherit;align-items:center;gap:.4rem;display:inline-flex}.blueprint-bar i{background:var(--accent);border-radius:50%;width:.42rem;height:.42rem}.blueprint-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;min-height:4rem}.blueprint-foot span:before{content:"";background:var(--accent);vertical-align:.08rem;border-radius:50%;width:.35rem;height:.35rem;margin-right:.4rem;display:inline-block}.blueprint-canvas{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:2.8rem 2.8rem;min-height:30rem;position:relative;overflow:hidden}.blueprint-canvas:before,.blueprint-canvas:after{content:"";border:1px dashed var(--line-strong);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.blueprint-canvas:before{width:18rem;height:18rem}.blueprint-canvas:after{width:25rem;height:25rem}.blueprint-core{z-index:3;aspect-ratio:1;background:var(--accent);width:9.5rem;color:var(--accent-ink);text-align:center;transform:translate(-50%,-50%);translate:var(--system-x) var(--system-y);border-radius:50%;place-content:center;padding:1rem;transition:translate .4s cubic-bezier(.2,.8,.2,1);display:grid;position:absolute;top:50%;left:50%}.blueprint-core small,.blueprint-core span{font:700 .75rem var(--mono);text-transform:uppercase}.blueprint-core strong{letter-spacing:-.055em;font-size:1.45rem}.blueprint-core span{opacity:.72;margin-top:.25rem}.blueprint-node{z-index:4;border:1px solid var(--line-strong);background:var(--surface);border-radius:.75rem;width:7rem;padding:.75rem .82rem;display:grid;position:absolute;box-shadow:0 .75rem 2rem #0000001f}.blueprint-node span{color:var(--accent);font:700 .75rem var(--mono)}.blueprint-node b{font-family:var(--sans);margin-top:.12rem;font-size:.78rem}.blueprint-node small{color:var(--dim);font:.75rem var(--mono)}.node-problem{top:10%;left:4%}.node-experience{top:10%;right:4%}.node-build{bottom:9%;left:4%}.node-verify{bottom:9%;right:4%}.node-ship{top:4%;left:50%;transform:translate(-50%)}.blueprint-canvas svg{z-index:1;width:100%;height:100%;position:absolute;inset:0}.blueprint-canvas path{fill:none;vector-effect:non-scaling-stroke}.blueprint-path-base{stroke:color-mix(in srgb, var(--accent) 34%, var(--line));stroke-width:1px;stroke-dasharray:5 8}.blueprint-path-signal{stroke:var(--accent);stroke-width:1.6px;stroke-dasharray:2 34;stroke-linecap:round;animation:3.2s linear infinite signal-flow}.proof-row{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 75%, transparent);border-radius:1.1rem;grid-template-columns:repeat(4,1fr);margin-top:clamp(3rem,7vw,6rem);display:grid;overflow:hidden}.proof-row>div{border-right:1px solid var(--line);gap:.18rem;min-width:0;padding:1.2rem;display:grid}.proof-row>div:last-child{border:0}.proof-row span{color:var(--accent);font:700 .75rem var(--mono)}.proof-row strong{font-size:.86rem}.proof-row small{color:var(--dim);font-size:.75rem}.statement{border-block:1px solid var(--line);background:var(--surface)}.statement-grid{grid-template-columns:.5fr .8fr 1.7fr;align-items:start;gap:2rem;display:grid}.statement-grid p{color:var(--muted);margin:0;font-size:1rem}.statement-grid h2{letter-spacing:-.065em;max-width:760px;margin:0;font-size:clamp(2.2rem,4.6vw,5rem);line-height:1}.section-heading{grid-template-columns:minmax(0,1.25fr) minmax(17rem,.75fr);align-items:end;gap:3rem;margin-bottom:clamp(2.5rem,5vw,5rem);display:grid}.section-heading h2,.stack-intro h2,.visual-heading h2,.about-copy h2,.roles-panel h2,.contact-panel h2,.case-section h2{letter-spacing:-.065em;max-width:780px;margin:.75rem 0 0;font-size:clamp(2.6rem,5.3vw,5.8rem);line-height:.98}.section-heading>p{max-width:510px;color:var(--muted);margin:0;font-size:1rem;line-height:1.75}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);border-radius:1.5rem;min-width:0;transition:border-color .28s,transform .34s cubic-bezier(.2,.8,.2,1),box-shadow .34s;position:relative;overflow:hidden}.project-card:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line-strong));box-shadow:0 1.6rem 4.2rem color-mix(in srgb, var(--accent) 8%, transparent);transform:translateY(-5px)}.project-card-featured{grid-column:1/-1}.project-card-main{min-width:0;text-decoration:none;display:block}.project-card-featured .project-card-main{grid-template-columns:minmax(0,1.25fr) minmax(22rem,.75fr);min-height:36rem;display:grid}.project-cover{border-bottom:1px solid var(--line);background:var(--surface-2);min-height:20rem;position:relative;overflow:hidden}.project-card-featured .project-cover{border-right:1px solid var(--line);border-bottom:0;min-height:100%}.project-cover img{object-fit:cover;object-position:top center;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.project-card:hover .project-cover img{transform:scale(1.025)}.project-card-copy{padding:clamp(1.3rem,3vw,2.2rem)}.project-card-featured .project-card-copy{flex-direction:column;justify-content:center;display:flex}.project-meta{color:var(--dim);font:700 .75rem var(--mono);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;display:flex}.project-meta b{border:1px solid var(--line);color:var(--text);font:inherit;border-radius:999px;padding:.35rem .55rem}.project-card h3{letter-spacing:-.065em;margin:1rem 0 .75rem;font-size:clamp(2.35rem,4.5vw,5rem);line-height:.92}.project-card-copy>p{color:var(--muted);margin:0;font-size:.97rem;line-height:1.72}.tag-list{flex-wrap:wrap;gap:.4rem;margin-top:1.35rem;display:flex}.text-link{align-items:center;gap:.75rem;margin-top:1.8rem;font-size:.8rem;font-weight:800;display:inline-flex}.text-link b{color:var(--accent)}.project-live{border:1px solid var(--line);min-height:2.8rem;color:var(--muted);border-radius:999px;justify-content:space-between;align-items:center;gap:2rem;margin:0 1.35rem 1.35rem;padding-inline:.9rem;font-size:.75rem;font-weight:750;text-decoration:none;display:inline-flex}.project-live:hover{border-color:var(--accent);color:var(--text)}.concept-cover{background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 35%), linear-gradient(135deg, var(--surface-2), var(--surface));text-align:center;place-content:center;padding:2rem;display:grid;position:absolute;inset:0}.concept-cover>span{color:var(--accent);font:700 .75rem var(--mono);letter-spacing:.14em;text-transform:uppercase}.concept-cover>strong{font:850 clamp(3rem, 8vw, 6.5rem)/.9 var(--sans);letter-spacing:-.075em;margin-top:.45rem}.concept-cover>div{justify-content:center;gap:.4rem;margin-top:1.5rem;display:flex}.concept-cover i{background:var(--line-strong);border-radius:999px;width:2.2rem;height:.24rem}.concept-cover i:first-child{background:var(--accent)}.lab-section{background:var(--text);color:var(--bg)}.lab-section .section-kicker{color:var(--accent)}.lab-section .section-heading>p{color:color-mix(in srgb, var(--bg) 65%, transparent)}.lab-console{border:1px solid color-mix(in srgb, var(--bg) 20%, transparent);background:color-mix(in srgb, var(--text) 96%, var(--bg));border-radius:1.6rem;grid-template-columns:19rem minmax(0,1fr);display:grid;overflow:hidden;box-shadow:0 2rem 6rem #00000029}.lab-tabs{border-right:1px solid color-mix(in srgb, var(--bg) 16%, transparent);padding:1rem}.lab-tabs>p{color:color-mix(in srgb, var(--bg) 58%, transparent);font:700 .75rem var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:.25rem .4rem .8rem}.lab-tabs button{border:1px solid #0000;border-top-color:color-mix(in srgb, var(--bg) 12%, transparent);width:100%;min-height:4.7rem;color:var(--bg);text-align:left;cursor:pointer;background:0 0;grid-template-columns:1.8rem 1fr;padding:.9rem .75rem;transition:background .25s,border-color .25s,transform .25s cubic-bezier(.2,.8,.2,1);display:grid}.lab-tabs button[aria-selected=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);border-radius:.8rem}.lab-tabs button>span{color:color-mix(in srgb, currentColor 58%, transparent);font:700 .75rem var(--mono);grid-row:1/3}.lab-tabs button strong{font-family:var(--sans);font-size:.81rem}.lab-tabs button small{color:color-mix(in srgb, currentColor 58%, transparent);font:.75rem var(--mono)}.lab-tabs blockquote{border:1px solid color-mix(in srgb, var(--bg) 14%, transparent);color:color-mix(in srgb, var(--bg) 76%, transparent);border-radius:.8rem;margin:2rem .3rem .3rem;padding:1rem;font-size:.8rem;line-height:1.55}.lab-tabs blockquote span{color:color-mix(in srgb, var(--bg) 52%, transparent);font:700 .75rem var(--mono);text-transform:uppercase;margin-bottom:.45rem;display:block}.lab-panel{min-width:0}.lab-window-bar{border-bottom:1px solid color-mix(in srgb, var(--bg) 14%, transparent);min-height:3.25rem;color:color-mix(in srgb, var(--bg) 58%, transparent);font:700 .75rem var(--mono);letter-spacing:.07em;justify-content:space-between;align-items:center;padding-inline:1.25rem;display:flex}.lab-window-bar b{color:var(--bg);font:inherit;align-items:center;gap:.4rem;display:flex}.lab-window-bar i{background:var(--accent);border-radius:50%;width:.4rem;height:.4rem}.lab-brief{padding:clamp(1.4rem,3.5vw,3rem);animation:.3s both lab-in}.lab-brief h3{letter-spacing:-.06em;max-width:850px;margin:.75rem 0 1.6rem;font-size:clamp(2rem,4vw,4.25rem);line-height:1}.lab-framing{grid-template-columns:repeat(3,1fr);gap:.8rem;display:grid}.lab-framing>div{border-top:1px solid color-mix(in srgb, var(--bg) 15%, transparent);padding-top:.9rem}.lab-framing small,.lab-judgment small{color:color-mix(in srgb, var(--bg) 55%, transparent);font:700 .75rem var(--mono);letter-spacing:.06em;text-transform:uppercase}.lab-framing p{color:color-mix(in srgb, var(--bg) 74%, transparent);margin:.4rem 0 0;font-size:.8rem;line-height:1.55}.architecture{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:0;padding:0 clamp(1.4rem,3.5vw,3rem) clamp(1.4rem,3.5vw,3rem);list-style:none;animation:.32s 30ms both lab-in;display:grid}.architecture li{border:1px solid color-mix(in srgb, var(--bg) 15%, transparent);border-radius:.8rem;min-height:8.7rem;padding:1rem;position:relative;overflow:hidden}.architecture li:last-child{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.architecture li>span{color:color-mix(in srgb, currentColor 52%, transparent);font:700 .75rem var(--mono)}.architecture li strong{font-family:var(--sans);margin-top:.75rem;font-size:.86rem;display:block}.architecture li p{color:color-mix(in srgb, currentColor 65%, transparent);margin:.35rem 0 0;font-size:.75rem;line-height:1.5}.lab-judgment{border-top:1px solid color-mix(in srgb, var(--bg) 14%, transparent);grid-template-columns:1fr 1fr 1.15fr;animation:.34s 60ms both lab-in;display:grid}.lab-judgment>div{border-right:1px solid color-mix(in srgb, var(--bg) 14%, transparent);padding:1.3rem clamp(1.2rem,2.5vw,2rem)}.lab-judgment>div:last-child{border:0}.lab-judgment ul{color:color-mix(in srgb, var(--bg) 72%, transparent);gap:.35rem;margin:.55rem 0 0;padding-left:1rem;font-size:.75rem;line-height:1.45;display:grid}.lab-judgment p{margin:.55rem 0 0;font-size:.88rem;line-height:1.55}.first-test{background:color-mix(in srgb, var(--accent) 12%, transparent)}@keyframes lab-in{0%{transform:translateY(.65rem)}}.process-list{border:1px solid var(--line);border-radius:1.3rem;grid-template-columns:repeat(5,1fr);margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.process-list li{border-right:1px solid var(--line);flex-direction:column;justify-content:space-between;min-height:18rem;padding:1.35rem;display:flex}.process-list li:last-child{border:0}.process-list>li>span{color:var(--accent);font:700 .75rem var(--mono)}.process-list h3{letter-spacing:-.045em;margin:0;font-size:1.65rem}.process-list p{color:var(--muted);margin:.75rem 0 0;font-size:.82rem}.stack-section{border-block:1px solid var(--line);background:var(--surface)}.stack-layout{grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.stack-intro{position:sticky;top:8rem}.stack-intro>p{max-width:480px;color:var(--muted)}.stack-groups{gap:.75rem;display:grid}.stack-groups article{border:1px solid var(--line);background:var(--bg);border-radius:1rem;padding:1.5rem}.stack-groups article>div{align-items:baseline;gap:1rem;display:flex}.stack-groups article>div span{color:var(--accent);font:700 .75rem var(--mono)}.stack-groups h3{margin:0;font-size:1.25rem}.stack-groups p{color:var(--muted);margin:.75rem 0 1rem;font-size:.86rem}.stack-groups ul,.roles-panel ul{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.stack-groups li,.roles-panel li{border:1px solid var(--line);color:var(--muted);font:.75rem var(--mono);border-radius:999px;padding:.42rem .75rem}.visual-heading{grid-template-columns:.5fr 1.25fr .75fr;align-items:end;gap:2rem;margin-bottom:2.5rem;display:grid}.visual-heading h2{margin:0}.visual-heading p{color:var(--muted);margin:0}.visual-rail{grid-template-columns:repeat(3,1fr);gap:.8rem;display:grid}.visual-rail figure{margin:0}.visual-rail figure>div{aspect-ratio:4/5;background:var(--surface-2);border-radius:1rem;position:relative;overflow:hidden}.visual-rail img{object-fit:cover}.visual-rail figcaption{color:var(--muted);font:.75rem var(--mono);margin-top:.75rem}.about-section{background:var(--surface)}.about-grid{grid-template-columns:minmax(20rem,.72fr) minmax(0,1.28fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.portrait{border:1px solid var(--line);background:var(--surface-2);border-radius:1.3rem;position:sticky;top:8rem;overflow:hidden}.portrait:before{content:"";padding-top:118%;display:block}.portrait img{object-fit:cover}.portrait>div{z-index:2;color:#f2f3eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#090b0bc7;border:1px solid #ffffff2e;border-radius:.8rem;padding:1rem;display:grid;position:absolute;inset:auto .8rem .8rem}.portrait span,.portrait small{color:#aaada6;font:.75rem var(--mono)}.portrait strong{font-size:.9rem}.about-lede{max-width:780px;color:var(--muted);font-size:1.12rem;line-height:1.75}.journey-line{border-block:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.75rem;margin:2rem 0;padding:1rem;display:flex}.journey-line span{font-size:.78rem;font-weight:750}.journey-line i{color:var(--accent);font-style:normal}.timeline{border-top:1px solid var(--line)}.timeline article{border-bottom:1px solid var(--line);grid-template-columns:7rem minmax(12rem,.75fr) 1fr;align-items:baseline;gap:1rem;padding:1.25rem 0;display:grid}.timeline article>span{color:var(--accent);font:700 .75rem var(--mono);text-transform:uppercase}.timeline h3{margin:0;font-size:.95rem}.timeline p{color:var(--muted);margin:0;font-size:.82rem}.roles-section{border-bottom:1px solid var(--line)}.roles-panel{border:1px solid var(--line);border-radius:1.4rem;grid-template-columns:1fr 1fr;gap:4rem;padding:clamp(1.5rem,4vw,3rem);display:grid}.roles-panel h2{font-size:clamp(2.4rem,4.6vw,4.8rem)}.roles-panel p{color:var(--muted);margin:0 0 1.4rem}.contact-panel{grid-template-columns:.35fr .75fr 1fr;align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.contact-panel h2{margin:0}.contact-panel>div>p{color:var(--muted)}.contact-links{border-top:1px solid var(--line);display:grid}.contact-links a{border-bottom:1px solid var(--line);grid-template-columns:5rem minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:4.5rem;text-decoration:none;display:grid}.contact-links a:hover strong{color:var(--accent)}.contact-links span{color:var(--dim);font:.75rem var(--mono)}.contact-links strong{overflow-wrap:anywhere;min-width:0;font-size:.84rem}.contact-links b{color:var(--accent);font-weight:400}.site-footer{border-top:1px solid var(--line);color:var(--dim);font:.75rem var(--mono);padding:1.5rem 0}.site-footer .shell{justify-content:space-between;gap:1rem;display:flex}.site-footer p{margin:0}.site-footer nav{flex-wrap:wrap;gap:1rem;display:flex}.site-footer a{text-decoration:none;transition:color .2s}.site-footer a:hover{color:var(--accent)}.case-main{padding-top:5rem}.case-hero{padding-top:clamp(4rem,8vw,8rem);padding-bottom:clamp(3rem,6vw,5rem)}.back-link{color:var(--muted);margin-bottom:3rem;font-size:.8rem;font-weight:750;text-decoration:none;display:inline-block}.case-title-row{justify-content:space-between;align-items:end;gap:2rem;display:flex}.case-title-row h1{letter-spacing:-.085em;margin:0;font-size:clamp(4.2rem,12vw,11rem);line-height:.8}.case-status{border:1px solid var(--line-strong);font:700 .75rem var(--mono);text-transform:uppercase;border-radius:999px;flex:none;padding:.55rem .8rem}.case-summary{max-width:850px;color:var(--muted);margin:2.4rem 0 0;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.65}.case-image{aspect-ratio:16/9;border:1px solid var(--line);background:var(--surface-2);border-radius:1.4rem;position:relative;overflow:hidden}.case-image img{object-fit:cover;object-position:top center}.case-concept{border:1px solid var(--line);background:radial-gradient(circle, color-mix(in srgb, var(--accent) 20%, transparent), transparent 36%), var(--surface);text-align:center;border-radius:1.4rem;place-content:center;min-height:34rem;padding:2rem;display:grid}.case-concept>span{color:var(--accent);font:700 .75rem var(--mono);text-transform:uppercase}.case-concept>strong{font:850 clamp(4rem, 12vw, 10rem)/.86 var(--sans);letter-spacing:-.08em}.case-concept>div{flex-wrap:wrap;justify-content:center;gap:.45rem;margin-top:2rem;display:flex}.case-concept i{border:1px solid var(--line);color:var(--muted);font:normal .75rem var(--mono);border-radius:999px;padding:.4rem .75rem}.case-section{border-bottom:1px solid var(--line);padding-block:clamp(4.5rem,8vw,8rem)}.case-overview{grid-template-columns:1fr 1fr;gap:5rem;display:grid}.case-overview dl{margin:0}.case-overview dl>div{border-bottom:1px solid var(--line);padding:1.2rem 0}.case-overview dt{color:var(--accent);font:700 .75rem var(--mono);text-transform:uppercase}.case-overview dd{color:var(--muted);margin:.55rem 0 0;line-height:1.7}.case-section-heading{grid-template-columns:.4fr 1.6fr;gap:2rem;margin-bottom:3rem;display:grid}.case-section-heading h2{margin:0}.case-cards{border:1px solid var(--line);border-radius:1.2rem;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.case-cards article{border-right:1px solid var(--line);min-width:0;padding:1.5rem}.case-cards article:last-child{border:0}.case-cards article>span{color:var(--accent);font:700 .75rem var(--mono)}.case-cards h3{margin:3rem 0 1.2rem;font-size:1.4rem}.case-cards ul,.case-decisions ul{color:var(--muted);gap:.75rem;padding-left:1.1rem;font-size:.85rem;display:grid}.case-decisions>div{grid-template-columns:1.25fr .75fr .75fr;gap:.8rem;display:grid}.case-decisions article{border:1px solid var(--line);border-radius:1rem;padding:1.5rem}.case-decisions h3{margin:0 0 1.3rem;font-size:1.15rem}.case-decisions ol{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.case-decisions ol li{color:var(--muted);grid-template-columns:2rem 1fr;gap:.75rem;font-size:.88rem;display:grid}.case-decisions ol span{color:var(--accent);font:700 .75rem var(--mono)}.next-project{padding-block:clamp(4rem,8vw,7rem)}.next-project>span{color:var(--dim);font:.75rem var(--mono);text-transform:uppercase}.next-project a{justify-content:space-between;align-items:center;gap:2rem;margin-top:.75rem;text-decoration:none;display:flex}.next-project strong{font:800 clamp(3rem, 9vw, 8rem)/.9 var(--sans);letter-spacing:-.07em}.next-project b{color:var(--accent);font-size:clamp(2rem,5vw,4rem);font-weight:400}.not-found{flex-direction:column;justify-content:center;align-items:flex-start;min-height:calc(100dvh - 5rem);padding-top:7rem;padding-bottom:4rem;display:flex}.not-found h1{letter-spacing:-.07em;max-width:900px;margin:.75rem 0 1rem;font-size:clamp(3rem,8vw,7rem);line-height:.95}.not-found p{color:var(--muted)}.not-found .button{margin-top:1rem}.ambient-light{display:none}main,.site-footer{z-index:1;position:relative}.personal-mark .mark-left,.personal-mark .mark-right{fill:currentColor}.personal-mark .mark-rise{fill:var(--accent);transform-box:fill-box;transform-origin:50%;transition:transform .32s cubic-bezier(.2,.8,.2,1)}.identity:hover .mark-rise{transform:translate(2px,-2px)}.desktop-nav a:after{content:"";background:var(--accent);transform-origin:100%;height:1px;transition:transform .28s cubic-bezier(.2,.8,.2,1);position:absolute;inset:auto 0 .42rem;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.theme-toggle,.nav-contact,.menu-toggle{transition:transform .24s,border-color .24s,background .24s}.theme-toggle:hover,.menu-toggle:hover{border-color:var(--line-strong);transform:translateY(-1px)}.nav-contact:hover{transform:translateY(-2px)}.button>span,.nav-contact>span,.text-link b{transition:transform .28s cubic-bezier(.2,.8,.2,1)}.button:hover>span,.nav-contact:hover>span,.project-card:hover .text-link b{transform:translate(.25rem)}.button-primary:hover{box-shadow:0 .8rem 2.4rem color-mix(in srgb, var(--accent) 24%, transparent)}.button:active,.theme-toggle:active,.nav-contact:active,.menu-toggle:active{transform:translateY(0)scale(.98)}.lab-tabs button:not([aria-selected=true]):hover{border-color:color-mix(in srgb, var(--bg) 24%, transparent);transform:translate(.2rem)}.blueprint-bar i,.lab-window-bar i{animation:2.6s ease-in-out infinite status-pulse}.blueprint-core{animation:4.8s ease-in-out infinite core-pulse}.blueprint-node{animation:5.6s ease-in-out infinite node-breathe}.blueprint-node:nth-of-type(2){animation-delay:-.9s}.blueprint-node:nth-of-type(3){animation-delay:-1.8s}.blueprint-node:nth-of-type(4){animation-delay:-2.7s}.blueprint-node:nth-of-type(5){animation-delay:-3.6s}.architecture li:before{content:"";background:var(--accent);transform-origin:0;height:2px;animation:.62s cubic-bezier(.2,.8,.2,1) both architecture-trace;position:absolute;inset:0 0 auto;transform:scaleX(0)}.architecture li:nth-child(2){animation-delay:40ms}.architecture li:nth-child(3){animation-delay:80ms}.architecture li:nth-child(4){animation-delay:.12s}.architecture li:nth-child(5){animation-delay:.16s}.architecture li:nth-child(6){animation-delay:.2s}.architecture li:nth-child(7){animation-delay:.24s}.architecture li:nth-child(8){animation-delay:.28s}.architecture li:nth-child(2):before{animation-delay:80ms}.architecture li:nth-child(3):before{animation-delay:.16s}.architecture li:nth-child(4):before{animation-delay:.24s}.architecture li:nth-child(5):before{animation-delay:.32s}.architecture li:nth-child(6):before{animation-delay:.4s}.architecture li:nth-child(7):before{animation-delay:.48s}.architecture li:nth-child(8):before{animation-delay:.56s}.architecture li:last-child:before{background:var(--accent-ink)}.motion-ready [data-reveal]{transition:transform .78s cubic-bezier(.16,1,.3,1);transform:translateY(1.1rem)}.motion-ready [data-reveal].is-visible{transform:translateY(0)}@media (hover:hover) and (pointer:fine){html.pointer-atmosphere .ambient-light{z-index:0;pointer-events:none;background:radial-gradient(38rem circle at var(--pointer-x,50vw) var(--pointer-y,34vh), color-mix(in srgb, var(--accent) 12%, transparent), transparent 72%);opacity:.72;display:block;position:fixed;inset:0}html[data-theme=light].pointer-atmosphere .ambient-light{opacity:.42}.pointer-atmosphere .hero-blueprint:hover{border-color:color-mix(in srgb, var(--accent) 48%, var(--line-strong));box-shadow:var(--shadow), 0 0 4rem color-mix(in srgb, var(--accent) 8%, transparent)}}@keyframes signal-flow{to{stroke-dashoffset:-72px}}@keyframes status-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 28%, transparent)}50%{box-shadow:0 0 0 .38rem #0000}}@keyframes core-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 12%, transparent)}50%{box-shadow:0 0 0 .75rem #0000}}@keyframes node-breathe{0%,to{border-color:var(--line-strong);transform:translateY(0)}50%{border-color:color-mix(in srgb, var(--accent) 38%, var(--line-strong));transform:translateY(-2px)}}@keyframes architecture-trace{to{transform:scaleX(1)}}@media (max-width:1120px){.desktop-nav{display:none}.menu-toggle{display:inline-flex}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:900px}.hero-blueprint{width:min(100%,760px)}.project-card-featured .project-card-main{grid-template-columns:1fr 1fr;min-height:32rem}.lab-console{grid-template-columns:16rem minmax(0,1fr)}.architecture{grid-template-columns:repeat(2,1fr)}.lab-judgment{grid-template-columns:1fr 1fr}.lab-judgment .first-test{border-top:1px solid color-mix(in srgb, var(--bg) 14%, transparent);grid-column:1/-1}.process-list{grid-template-columns:repeat(3,1fr)}.process-list li{border-bottom:1px solid var(--line);min-height:15rem}.process-list li:nth-child(3){border-right:0}.process-list li:nth-child(n+4){border-bottom:0}.process-list li:last-child{border-right:0}.contact-panel{grid-template-columns:.35fr 1fr}.contact-links{grid-column:2}}@media (max-width:900px){.theme-toggle b,.nav-contact{display:none}.theme-toggle{width:2.75rem;padding:0}.proof-row{grid-template-columns:1fr 1fr}.proof-row>div:nth-child(2){border-right:0}.proof-row>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.statement-grid,.section-heading,.visual-heading{grid-template-columns:1fr}.project-card-featured .project-card-main{min-height:0;display:block}.project-card-featured .project-cover{border-right:0;border-bottom:1px solid var(--line);min-height:24rem}.lab-console{grid-template-columns:1fr}.lab-tabs{border-right:0;border-bottom:1px solid color-mix(in srgb, var(--bg) 14%, transparent);grid-template-columns:repeat(4,minmax(10rem,1fr));gap:.45rem;display:grid;overflow-x:auto}.lab-tabs>p,.lab-tabs blockquote{display:none}.lab-tabs button{border:1px solid color-mix(in srgb, var(--bg) 12%, transparent);border-radius:.8rem}.stack-layout,.about-grid{grid-template-columns:1fr}.stack-intro{position:static}.portrait{max-width:640px;position:relative}.visual-rail{scroll-snap-type:x mandatory;overflow-x:auto}.visual-rail figure{scroll-snap-align:start;min-width:19rem}.roles-panel,.case-overview{grid-template-columns:1fr;gap:2rem}.case-section-heading,.case-cards{grid-template-columns:1fr}.case-cards article{border-right:0;border-bottom:1px solid var(--line)}.case-decisions>div{grid-template-columns:1fr}}@media (max-width:700px){:root{--gutter:1.05rem}.section{padding-block:5.5rem}.site-header{height:4.5rem}.mobile-menu{inset-top:4.5rem;min-height:calc(100dvh - 4.5rem)}.identity-copy small{display:none}.nav-shell{gap:.75rem}.nav-actions{margin-left:auto}.hero{padding-top:7.2rem}.hero h1{font-size:clamp(3.25rem,15.7vw,5.5rem)}.hero-lede{font-size:1rem}.hero-actions{display:grid}.button{width:100%}.hero-blueprint{display:none}.proof-row{grid-template-columns:1fr}.proof-row>div{border-right:0;border-bottom:1px solid var(--line)}.proof-row>div:last-child{border-bottom:0}.project-grid{grid-template-columns:1fr}.project-card-featured{grid-column:auto}.project-card-featured .project-cover,.project-cover{min-height:18rem}.lab-tabs{grid-template-columns:repeat(4,minmax(9.5rem,1fr))}.lab-window-bar{flex-direction:column;justify-content:center;align-items:flex-start;gap:.3rem;padding-block:.75rem}.lab-framing,.architecture,.lab-judgment{grid-template-columns:1fr}.lab-framing{gap:1rem}.architecture li{min-height:auto}.lab-judgment>div,.lab-judgment>div:last-child{border-right:0;border-bottom:1px solid color-mix(in srgb, var(--bg) 14%, transparent)}.lab-judgment .first-test{border-bottom:0;grid-column:auto}.process-list{grid-template-columns:1fr}.process-list li,.process-list li:nth-child(n){border-right:0;border-bottom:1px solid var(--line);min-height:12rem}.process-list li:last-child{border-bottom:0}.visual-rail{width:100%;padding-inline:var(--gutter)}.visual-rail figure{min-width:min(82vw,22rem)}.timeline article{grid-template-columns:1fr;gap:.35rem}.roles-panel{padding:1.35rem}.contact-panel{grid-template-columns:1fr}.contact-links{grid-column:1}.site-footer .shell{flex-direction:column}.case-main{padding-top:4.5rem}.case-title-row{flex-direction:column;align-items:flex-start}.case-title-row h1{font-size:clamp(4rem,20vw,7rem)}.case-image{aspect-ratio:4/3}.case-concept{min-height:25rem}}@media (max-width:480px){.identity-copy{display:none}.hero h1{font-size:clamp(3rem,16vw,4.8rem)}.eyebrow{font-size:.75rem}.project-cover,.project-card-featured .project-cover{min-height:15rem}.project-meta{flex-direction:column;align-items:flex-start}.project-card h3{font-size:2.6rem}.journey-line{flex-direction:column;align-items:flex-start}.journey-line i{transform:rotate(90deg)}.contact-links a{grid-template-columns:4.5rem minmax(0,1fr) auto}.case-summary{font-size:1.05rem}}@media (max-width:360px){.theme-toggle{display:none}.hero h1{font-size:3.35rem}.hero-actions .button{gap:.75rem;font-size:.76rem}.core-stack li{font-size:.75rem}.section-heading h2,.stack-intro h2,.visual-heading h2,.about-copy h2,.roles-panel h2,.contact-panel h2,.case-section h2{font-size:2.45rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.intro-overlay{display:none}}@media (forced-colors:active){.eyebrow>span,.blueprint-bar i,.blueprint-foot span:before{forced-color-adjust:none;background:highlight}.project-card,.lab-console,.process-list,.stack-groups article,.roles-panel{border:1px solid canvastext}}.blueprint-bar,.blueprint-foot,.blueprint-node small{color:var(--muted)}.blueprint-core small,.blueprint-core span{color:var(--accent-ink);opacity:1}.lab-tabs button>span,.lab-tabs button small,.architecture li>span,.architecture li p{color:color-mix(in srgb, currentColor 82%, transparent)}.lab-tabs button[aria-selected=true]>span,.lab-tabs button[aria-selected=true] small,.architecture li:last-child>span,.architecture li:last-child p{color:var(--accent-ink)}.lab-framing small,.lab-judgment small,.lab-tabs>p,.lab-tabs blockquote span,.lab-window-bar{color:color-mix(in srgb, var(--bg) 78%, transparent)}.lab-framing p,.lab-judgment ul,.lab-tabs blockquote{color:color-mix(in srgb, var(--bg) 84%, transparent)}html[data-theme=light] .lab-section .section-kicker,html[data-theme=light] .lab-section .micro-label{color:#c8ff55}.skip-link{z-index:2000;background:var(--accent);color:var(--accent-ink);border-radius:.5rem;padding:.75rem 1rem;font-weight:800;text-decoration:none;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}html[data-theme=dark] .lab-section .section-kicker,html[data-theme=dark] .lab-section .micro-label{color:var(--bg)}
