:root {
  --paper:#eee9de; --ink:#20231f; --muted:#666b60;
  --line:rgba(32,35,31,.19); --lime:#c6f04c; --surface:#e5e0d5;
  --dark-panel:#20231f; --on-dark:#eee9de; --on-dark-muted:#b7bcad;
  --serif:'Playfair Display',Georgia,serif;
  --sans:'Manrope',Arial,sans-serif; --mono:'DM Mono',monospace;
  color-scheme:only light;
}
:root[data-theme="dark"] {color-scheme:dark}
body.dark {
  --paper:#181c19; --ink:#eee9de; --muted:#a9afa3;
  --line:rgba(238,233,222,.22); --surface:#242a24; color-scheme:dark;
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth; scroll-padding-top:30px}
body {margin:0; background:var(--paper); color:var(--ink); font:16px/1.7 var(--sans); -webkit-font-smoothing:antialiased}
body::before {content:""; position:absolute; inset:0 0 auto; height:950px; pointer-events:none; opacity:.28; z-index:-1; background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(#000,transparent)}
a {color:inherit; text-underline-offset:5px}
button,input {font:inherit}
button {color:inherit; cursor:pointer}
button,a,input { -webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible {outline:2px solid currentColor; outline-offset:6px}
button {border-radius:0}
img {max-width:100%; display:block}
figure {margin:0}
h1,h2,h3,h4,p {margin-top:0}
h2 {font-size:clamp(38px,5vw,72px); font-weight:600; line-height:1.04; letter-spacing:-.065em; margin-bottom:0}
h2 i,.hero h1 i,.project-deck i {font-family:var(--serif); font-weight:500; letter-spacing:-.045em}
h4 {font-size:14px; margin-bottom:12px}
::selection {background:var(--lime); color:#20231f}
[hidden],.hidden {display:none!important}
.section-shell {width:min(1240px,calc(100% - 64px)); margin-inline:auto}
.chapter {padding-block:112px}
.eyebrow,.section-index,.kicker,.mono,.tags,.project-heading,.file-kind {font:11px/1.6 var(--mono); text-transform:uppercase; letter-spacing:.07em}
.eyebrow,.kicker {color:var(--muted)}
.section-index {display:flex; justify-content:space-between; gap:20px; margin-bottom:44px; color:var(--muted)}
.section-index>span:last-child {font-size:10px; text-align:right}
.signal-dot {display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 3px rgba(137,159,67,.14); margin-right:9px}
.skip-link {position:fixed; top:8px; left:8px; padding:10px 18px; background:var(--lime); color:#20231f; z-index:100; transform:translateY(-180%)}
.skip-link:focus {transform:none}
.reading-progress {position:fixed; left:0; top:0; width:100%; height:3px; background:var(--lime); transform:scaleX(0); transform-origin:left; z-index:100; pointer-events:none}
.topbar {height:90px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); gap:25px; position:relative; z-index:10}
.wordmark {display:flex; align-items:center; gap:12px; text-decoration:none; flex-shrink:0}
.wordmark>span {display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:var(--ink); color:var(--paper); font:500 13px var(--mono)}
.wordmark em {font:500 9px/1.5 var(--mono); letter-spacing:.045em; text-transform:uppercase; font-style:normal}
.primary-nav {display:flex; gap:32px}
.primary-nav a {text-decoration:none; font-size:12px}
.primary-nav a>span {vertical-align:super; font:8px var(--mono); margin-left:5px; color:var(--muted)}
.primary-nav a:hover,.primary-nav a[aria-current] {text-decoration:underline}
.nav-controls {display:flex; align-items:center; gap:15px}
.theme-toggle,.menu-toggle {font:10px var(--mono); background:none; border:none; padding:12px 0}
.theme-toggle {display:flex; align-items:center; gap:7px}
.menu-toggle {display:none}
.hero {display:grid; grid-template-columns:1.08fr .92fr; gap:48px; align-items:center; min-height:680px; padding-block:76px 62px}
.hero .eyebrow {font-size:9px; display:flex; align-items:center}
.hero h1 {font-size:clamp(55px,6.8vw,94px); font-weight:600; line-height:1.01; letter-spacing:-.073em; margin:25px 0 29px}
.hero .lede {font-size:17px; max-width:520px; line-height:1.8; color:var(--muted)}
.hero-actions {display:flex; gap:26px; align-items:center; margin-top:35px; flex-wrap:wrap}
.button {display:inline-flex; align-items:center; justify-content:space-between; gap:28px; padding:15px 19px; font:500 10px/1.5 var(--mono); letter-spacing:.06em; text-transform:uppercase; text-decoration:none; transition:transform .2s,box-shadow .2s}
.button-lime {background:var(--lime); color:#20231f}
.button:hover {transform:translateY(-3px); box-shadow:4px 4px 0 var(--ink)}
.text-link {font:11px/1.6 var(--mono); text-decoration:none; border:0; background:none; padding:0; display:inline-flex; align-items:center; gap:14px}
.text-link:hover {text-decoration:underline}
.hero-footnote {font:9px/1.7 var(--mono); color:var(--muted); margin:30px 0 0}
.surface-instrument {width:100%; min-width:0}
.instrument-heading,.instrument-controls,.curvature-control,.instrument-caption,.surface-axis,.surface-annotation,.diagram-top,.diagram-footer,.study-caption,.wfc-controls,.wfc-seed {font:9px/1.5 var(--mono)}
.instrument-heading {display:flex; justify-content:space-between; border-bottom:1px solid var(--line); padding-bottom:14px; gap:10px; text-transform:uppercase; letter-spacing:.045em}
.surface-stage {height:370px; position:relative; background:radial-gradient(ellipse at 55% 53%,rgba(180,203,122,.18),transparent 63%); overflow:hidden}
.surface-stage canvas {width:100%; height:100%; display:block; touch-action:pan-y}
.surface-cross {position:absolute; font:15px var(--mono); color:var(--muted); pointer-events:none}
.cross-a {left:1px; top:19px}
.cross-b {right:1px; bottom:19px}
.surface-annotation {position:absolute; right:9px; top:21%; pointer-events:none; color:var(--muted)}
.surface-annotation em {font:italic 16px var(--serif); color:var(--ink)}
.annotation-line {display:block; width:32px; border-top:1px solid var(--line); margin-bottom:9px}
.surface-axis {position:absolute; left:0; bottom:11px; color:var(--muted); margin:0}
.surface-fallback {position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.instrument-controls {display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line); padding-top:12px}
.surface-modes {display:flex; gap:14px}
.surface-modes button,.motion-toggle {padding:5px 0; background:none; border:0; font:9px/1.5 var(--mono); color:var(--muted)}
.surface-modes button[aria-pressed="true"] {color:var(--ink); text-decoration:underline; text-underline-offset:6px}
.motion-toggle {color:var(--ink)}
.curvature-control {display:flex; align-items:center; gap:18px; padding-top:22px; color:var(--muted)}
.curvature-control input {width:100%; min-width:30px; accent-color:#829d32; height:16px; cursor:ew-resize}
.curvature-control output {font-variant-numeric:tabular-nums}
.instrument-caption {margin:16px 0 0; color:var(--muted); font-size:8px}
.discipline-strip {display:flex; justify-content:space-between; gap:16px; align-items:center; border-block:1px solid var(--line); padding-block:19px; font:10px/1.5 var(--mono); text-transform:uppercase; letter-spacing:.08em}
.discipline-strip>span:nth-child(even) {color:var(--muted)}
.discipline-strip a {margin-left:36px; font-size:8px; text-decoration:none}
.statement-grid {display:grid; grid-template-columns:1.1fr .9fr; gap:90px}
.statement-grid p {font-size:15px; color:var(--muted)}
.m-path {position:relative; display:grid; grid-template-columns:repeat(4,1fr); gap:26px; margin-top:58px}
.m-connector {position:absolute; top:0; left:0; width:calc(100% - 24px); height:86px; opacity:.35; pointer-events:none}
.m-signal {stroke:#6f8c22; stroke-dashoffset:0; animation:pathflow 12s linear infinite; animation-play-state:paused}
.m-path.in-view .m-signal {animation-play-state:running}
body.page-hidden .m-signal {animation-play-state:paused}
.m-node {padding-top:119px; position:relative}
.node-point {position:absolute; left:0; top:64px; width:9px; height:9px; border:1px solid var(--ink); border-radius:50%; background:var(--paper)}
.m-node:nth-of-type(even) .node-point {top:5px}
.m-node:last-child .node-point {background:var(--lime)}
.m-node strong {font:9px var(--mono); color:var(--muted); display:block; margin-bottom:14px}
.m-node h3 {font-size:17px; font-weight:600; letter-spacing:-.035em; line-height:1.3; margin-bottom:11px}
.m-node p {font:10px/1.9 var(--mono); color:var(--muted); margin:0}
.work {border-top:1px solid var(--line)}
.section-head {display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:65px}
.chapter-index {display:grid; gap:6px; padding:0; margin:0; list-style:none}
.chapter-index a {font:10px/1.8 var(--mono); text-decoration:none; color:var(--muted)}
.chapter-index a:hover {color:var(--ink)}
.chapter-index span {display:inline-block; width:28px}
.project-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:32px; row-gap:75px}
.project {min-width:0}
.project.feature,.engineering-study {grid-column:1/-1}
.project-heading {display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:20px; border-bottom:1px solid var(--line); margin-bottom:40px}
.project-heading .kicker {margin:0}
.feature-layout {display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center}
.feature-copy {min-width:0}
.feature-copy h3 {font-size:clamp(38px,4.8vw,63px); line-height:1.04; font-weight:600; letter-spacing:-.065em; margin-bottom:25px}
.title-dot {color:#849b3d}
.project-deck {font-size:30px; letter-spacing:-.04em; line-height:1.3; margin-bottom:27px}
.feature-copy>p:not(.project-deck):not(.project-principle) {font-size:14px; color:var(--muted); max-width:530px}
.tags {display:flex; flex-wrap:wrap; gap:7px; margin-top:25px; font-size:8px; color:var(--muted)}
.tags span {padding:5px 8px; border:1px solid var(--line)}
.project-metrics {display:flex; flex-wrap:wrap; gap:26px; margin-top:34px; padding-top:21px; border-top:1px solid var(--line)}
.project-metrics>div {display:flex; flex-direction:column; gap:7px}
.project-metrics strong {font-size:39px; line-height:1; font-weight:500; letter-spacing:-.05em; font-variant-numeric:tabular-nums}
.project-metrics strong>span {font:italic 32px var(--serif); color:#82963e}
.project-metrics>div>span {font:8px/1.5 var(--mono); color:var(--muted); max-width:170px}
.project-visual {min-width:0}
.project-visual>a {position:relative; display:block; overflow:hidden; background:#c5c0b5}
.project-visual img {width:100%; height:auto; object-fit:cover; transition:transform .6s cubic-bezier(.2,.6,.3,1)}
.project-visual a:hover img {transform:scale(1.025)}
.image-action {position:absolute; bottom:15px; right:15px; background:var(--paper); color:var(--ink); padding:11px 13px; font:9px var(--mono); opacity:0; transform:translateY(7px); transition:opacity .25s,transform .25s}
.project-visual a:hover .image-action,.project-visual a:focus-visible .image-action {opacity:1; transform:none}
figcaption {display:flex; justify-content:space-between; gap:12px; padding-top:12px; font:8px/1.6 var(--mono); color:var(--muted)}
figcaption span:last-child {text-align:right}
.object-visual a {background:#0d1218}
.feature-object .feature-layout {display:block}
.feature-object .feature-copy {display:grid; grid-template-columns:1.05fr 1fr; gap:0 80px}
.feature-object .feature-copy h3 {grid-column:1; font-size:clamp(52px,7vw,92px)}
.feature-object .project-deck {grid-column:1; grid-row:2/5; font-size:35px; margin:0}
.feature-object .feature-copy>p:not(.project-deck) {grid-column:2; grid-row:1; align-self:center}
.feature-object .project-metrics {grid-column:2; grid-row:2; margin-top:0}
.feature-object .tags {grid-column:2; grid-row:3; margin-bottom:34px}
.feature-object .object-visual {margin-top:28px}
.feature-object .object-visual img {aspect-ratio:16/8.5; object-fit:cover}
.system-story {margin-top:45px; padding:34px 0; border-top:1px solid var(--line)}
.system-story .eyebrow {margin-bottom:23px}
.system-story h4 {font:500 30px/1.2 var(--sans); letter-spacing:-.045em; margin-bottom:30px}
.system-flow {display:grid; grid-template-columns:repeat(4,1fr); gap:28px}
.system-flow>div {padding-top:16px; border-top:1px solid var(--line); position:relative}
.system-flow>div:not(:last-child)::after {content:"→"; position:absolute; top:9px; right:-18px; font:15px var(--mono); color:var(--muted)}
.system-flow span {font:9px var(--mono); color:var(--muted)}
.system-flow h5 {font:600 16px var(--sans); letter-spacing:-.02em; margin:13px 0 10px}
.system-flow p {font-size:12px; color:var(--muted); margin:0}
.project-detail {border-top:1px solid var(--line); margin-top:33px}
summary {list-style:none; cursor:pointer}
summary::-webkit-details-marker {display:none}
.project-detail>summary,.career-detail>summary {display:flex; justify-content:space-between; gap:20px; align-items:center; padding:19px 0; font:11px/1.6 var(--mono)}
.detail-symbol {font:22px/1 var(--mono); font-weight:400; flex-shrink:0; transition:transform .2s}
details[open]>summary .detail-symbol {transform:rotate(45deg)}
.detail-grid {display:grid; grid-template-columns:repeat(3,1fr); gap:30px; padding:20px 0 12px}
.detail-grid h4 {font:500 10px/1.6 var(--mono); text-transform:uppercase}
.detail-grid p,.process-content p {font-size:13px; color:var(--muted)}
.detail-grid .text-link {font-size:10px}
.feature-brain {padding-top:35px; border-top:1px solid var(--line)}
.project-principle {font:19px/1.5 var(--serif); padding-left:17px; border-left:2px solid #859b42; margin:28px 0}
.project-principle strong {font-weight:500; font-style:italic}
.brain-diagram {background:var(--dark-panel); color:var(--on-dark); padding:30px; position:relative; min-height:520px}
.diagram-top {display:flex; justify-content:space-between; align-items:center; gap:20px; text-transform:uppercase; letter-spacing:.03em; padding-bottom:17px; border-bottom:1px solid var(--line)}
.brain-diagram .diagram-top {border-color:rgba(238,233,222,.22); color:var(--on-dark-muted); font-size:8px}
.diagram-question {font-size:29px; line-height:1.25; letter-spacing:-.04em; margin:26px 0}
.diagram-question i {font-family:var(--serif); color:var(--lime); font-weight:500}
.pipeline {display:flex; flex-direction:column; align-items:stretch; margin-top:28px; position:relative}
.pipeline-node {position:relative; background:transparent; border:1px solid rgba(238,233,222,.26); padding:14px 17px; display:flex; align-items:center; gap:16px; color:var(--on-dark); text-align:left; transition:background .2s,border-color .2s}
.pipeline-node.active {border-color:var(--lime); background:rgba(198,240,76,.065)}
.pipeline-node>span {font:9px var(--mono); color:var(--lime)}
.pipeline-node strong {font:500 15px var(--sans)}
.pipeline-node small {font:8px var(--mono); color:var(--on-dark-muted); margin-left:auto}
.pipeline-arrow {font:16px/1.2 var(--mono); color:var(--on-dark-muted); padding:4px 0; padding-left:29px}
.pipeline-note {font:11px/1.8 var(--mono); min-height:80px; color:var(--on-dark-muted); margin:26px 0 0}
.diagram-footer {display:flex; justify-content:space-between; color:var(--on-dark-muted); font-size:8px; border-top:1px solid rgba(238,233,222,.22); padding-top:15px}
.feature-wfc {border-top:1px solid var(--line); padding-top:35px}
.feature-wfc h3 {max-width:420px}
.wfc-study {border:1px solid var(--line); padding:24px; background:var(--surface)}
.wfc-grid {display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); padding:28px 0}
.wfc-tile {aspect-ratio:1; position:relative; border:1px solid var(--line); margin:-.5px; display:grid; place-items:center}
.wfc-tile svg {display:block; width:100%; height:100%; color:var(--ink); opacity:.78}
.wfc-tile:nth-child(7n) {background:var(--lime); color:#20231f}
.wfc-tile:nth-child(7n) svg {color:#20231f}
.wfc-controls {display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid var(--line); padding-top:17px}
.wfc-controls p {color:var(--muted); margin:0}
.wfc-controls .text-link {font-size:9px; text-align:right}
.study-caption {color:var(--muted); font-size:8px; margin:20px 0 0}
.architecture-card {margin-top:10px}
.architecture-card .project-visual img {aspect-ratio:1.25; object-fit:cover}
.architecture-card .project-meta {margin-top:26px}
.architecture-card .project-meta .kicker {font-size:9px; margin-bottom:11px}
.architecture-card h3 {font:600 27px/1.2 var(--sans); letter-spacing:-.04em; margin-bottom:18px}
.architecture-card>p {color:var(--muted); font-size:14px}
.architecture-card .project-detail {margin-top:24px}
.process-content {padding-top:8px}
.process-content img {width:100%; height:auto; margin:18px 0}
.engineering-study {margin-top:-38px; border-top:1px solid var(--line)}
.engineering-study:first-of-type {margin-top:0}
.engineering-study summary {display:grid; grid-template-columns:50px 1fr 230px 24px; gap:24px; align-items:center; padding:25px 0}
.study-number {font:12px var(--mono); color:var(--muted)}
.engineering-study .kicker {font-size:8px; margin-bottom:7px}
.engineering-study h3 {font:600 22px/1.3 var(--sans); letter-spacing:-.035em; margin:0}
.study-stack {font:9px var(--mono); color:var(--muted); text-align:right}
.engineering-content {display:grid; grid-template-columns:1fr 1fr; gap:45px; padding:10px 0 30px; align-items:center}
.engineering-content img {width:100%; height:auto; max-height:380px; object-fit:contain; background:var(--surface)}
.engineering-content p {font-size:14px; color:var(--muted)}
.research {background:var(--dark-panel); color:var(--on-dark); position:relative}
.research .section-index,.research .eyebrow {color:var(--on-dark-muted)}
.research .lime {color:var(--lime); font-size:9px}
.research-grid {display:grid; grid-template-columns:1.15fr .85fr; gap:100px; margin-top:60px; align-items:start}
.research h2 {font-size:clamp(38px,4.8vw,66px)}
.research-copy p {font-size:15px; color:var(--on-dark-muted)}
.research-copy .text-link {margin-top:20px; color:var(--lime)}
.research-fields {display:grid; grid-template-columns:repeat(3,1fr); gap:45px; border-top:1px solid rgba(238,233,222,.23); margin-top:70px; padding-top:27px}
.research-fields span {font:9px var(--mono); text-transform:uppercase; color:var(--lime)}
.research-fields h3 {font:500 21px/1.35 var(--sans); letter-spacing:-.025em; margin:18px 0}
.research-fields p {font-size:12px; color:var(--on-dark-muted); max-width:300px; margin:0}
.research-note {border-top:1px solid rgba(238,233,222,.23); margin-top:75px; padding-top:22px; display:flex; gap:65px; justify-content:space-between}
.research-note>span {font:9px var(--mono); color:var(--lime); text-transform:uppercase; flex-shrink:0; padding-top:8px}
.research-note p {font:28px/1.5 var(--serif); margin:0; letter-spacing:-.02em}
.about {padding-bottom:0}
.about-intro {display:grid; grid-template-columns:1fr 1fr; gap:100px}
.about h2 {font-size:clamp(48px,6vw,86px)}
.about-intro p {font-size:15px; color:var(--muted)}
.about-intro .about-lede {font-size:21px; color:var(--ink); letter-spacing:-.03em; line-height:1.6}
.about-intro .text-link {margin-top:15px}
.file-kind {font-size:8px; color:var(--muted); padding:2px 5px; border:1px solid var(--line)}
.experience-grid {display:grid; grid-template-columns:1fr 1fr; gap:50px; margin-top:75px}
.experience-card {border-top:1px solid var(--line); padding-top:24px; display:flex; flex-direction:column}
.experience-top {margin-bottom:25px}
.experience-top .kicker {font-size:8px; margin-bottom:25px}
.intel-logo {width:112px; height:50px; object-fit:contain; object-position:left center}
.gensler-logo {width:157px; height:50px; object-fit:contain; object-position:left center}
.experience-card h3 {font-size:21px; line-height:1.3; letter-spacing:-.035em; margin-bottom:9px}
.experience-card .employer {font:10px/1.8 var(--mono); color:var(--ink); margin-bottom:20px}
.experience-card>p {font-size:13px; color:var(--muted)}
.experience-foot {display:flex; flex-wrap:wrap; gap:16px; font:8px var(--mono); color:var(--muted); margin-top:auto; padding-top:15px}
.career-detail {border-block:1px solid var(--line); margin-top:45px}
.career-steps {display:grid; grid-template-columns:repeat(3,1fr); gap:35px; padding:12px 0 26px}
.career-steps span {font:9px var(--mono); color:var(--muted)}
.career-steps h4 {font-size:14px; margin-top:13px}
.career-steps p {font-size:12px; color:var(--muted); margin:0}
.capability-grid {display:grid; grid-template-columns:repeat(4,1fr); gap:30px; margin:45px 0 0}
.capability-grid h4 {font:10px var(--mono)}
.capability-grid p {font-size:11px; color:var(--muted); line-height:1.9}
.contact {border-top:1px solid var(--line); margin-top:85px; padding-top:75px; display:grid; grid-template-columns:1fr 160px; gap:40px; align-items:end}
.contact .eyebrow {font-size:9px; max-width:450px}
.contact h2 {font-size:clamp(43px,5.7vw,80px)}
.contact-email {display:inline-flex; align-items:center; gap:30px; font-size:clamp(15px,2.3vw,26px); letter-spacing:-.025em; text-decoration:none; margin-top:35px; border-bottom:1px solid var(--line); padding-bottom:8px}
.contact-email:hover {border-color:var(--ink)}
.contact-email>span {font-size:32px}
.contact-aside {display:flex; flex-direction:column; align-items:start; gap:12px}
.contact-aside>span {font:9px var(--mono); color:var(--muted); text-transform:uppercase; margin-bottom:10px}
.contact-aside a {font-size:12px; text-decoration:none}
.contact-aside a:hover {text-decoration:underline}
.signature {font-size:clamp(55px,12.4vw,174px); line-height:1.15; letter-spacing:-.075em; font-weight:500; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; margin-top:85px; padding-bottom:10px; user-select:none}
.signature>span {font-family:var(--serif); color:#8b9e4c; font-size:.8em; padding-right:10px}
.footer {display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:25px 35px; color:var(--muted); font:8px/1.7 var(--mono); text-transform:uppercase; letter-spacing:.035em}
.footer a {text-decoration:none}
@keyframes pathflow {to {stroke-dashoffset:-1225}}
@media(hover:none) {.image-action {opacity:1; transform:none}}
@media(min-width:1500px) {.hero {padding-block:90px}.hero h1 {font-size:100px}.surface-stage {height:410px}}
@media(max-width:1050px) {
  .hero {gap:30px}.hero h1 {font-size:66px}.hero .lede {font-size:15px}
  .primary-nav {gap:20px}.wordmark em {font-size:8px}
  .feature-layout {gap:35px}.feature-object .feature-copy {column-gap:45px}
  .statement-grid,.research-grid,.about-intro {gap:45px}
  .feature-copy h3 {font-size:49px}.project-metrics {gap:22px}
  .pipeline-node {padding:13px; gap:11px}.pipeline-node small {font-size:7px}
  .discipline-strip {font-size:8px}.discipline-strip a {margin-left:0}
}
@media(max-width:760px) {
  .section-shell {width:calc(100% - 40px)}
  .chapter {padding-block:75px}
  .topbar {height:74px}.wordmark em {font-size:8px}
  .primary-nav {position:absolute; top:73px; left:-20px; right:-20px; padding:25px 20px; border-bottom:1px solid var(--line); background:var(--paper); justify-content:space-between; gap:15px; flex-wrap:wrap}
  body.js-ready .primary-nav {display:none}
  body.js-ready .primary-nav.open {display:flex}
  body:not(.js-ready) .hero {padding-top:100px}
  .menu-toggle {display:block; font-size:10px; white-space:nowrap}
  .theme-toggle {font-size:9px}.theme-toggle .theme-label {display:none}
  .hero {grid-template-columns:1fr; min-height:0; padding-block:55px 37px; gap:45px}
  .hero h1 {font-size:clamp(53px,9.8vw,74px); max-width:650px; line-height:1.02}
  .hero .eyebrow {font-size:8px}
  .hero .lede {font-size:16px; max-width:540px}
  .hero-actions {gap:20px}.hero-actions .text-link {font-size:10px}
  .hero-footnote {margin-top:23px}
  .surface-stage {height:340px}
  .surface-instrument {max-width:560px; margin-inline:auto}
  .instrument-caption {font-size:8px}
  .discipline-strip {flex-wrap:wrap; justify-content:center; font-size:8px; gap:15px}
  .discipline-strip a {display:none}
  .section-index {margin-bottom:30px}.section-index>span:last-child {font-size:8px; max-width:120px}
  .section-index>span:first-child {font-size:9px}
  h2 {font-size:clamp(38px,7.7vw,58px)}
  .statement-grid,.research-grid,.about-intro {grid-template-columns:1fr; gap:28px}
  .statement-grid p {max-width:570px}
  .m-path {grid-template-columns:1fr 1fr; gap:30px; margin-top:35px}
  .m-connector {display:none}.m-node {padding-top:25px; padding-left:18px; border-left:1px solid var(--line)}
  .node-point,.m-node:nth-of-type(even) .node-point {top:0; left:-5px}
  .m-node h3 {font-size:16px}.m-node p {font-size:9px}
  .section-head {align-items:start; flex-direction:column; gap:28px; margin-bottom:42px}
  .chapter-index {display:flex; gap:12px 24px; flex-wrap:wrap}
  .chapter-index a {font-size:9px}
  .filter-count {text-align:left}
  .project-grid {grid-template-columns:1fr; row-gap:52px}
  .project-heading {gap:15px; margin-bottom:30px}.project-heading .kicker,.project-heading .mono {font-size:8px}
  .project-heading .text-link {font-size:9px; text-align:right; flex-shrink:0}
  .feature-layout,.feature-object .feature-copy {display:block}
  .feature-copy h3,.feature-object .feature-copy h3 {font-size:clamp(42px,8.5vw,65px)}
  .feature-object .project-deck,.project-deck {font-size:30px; margin-bottom:22px}
  .feature-object .feature-copy>p:not(.project-deck) {margin-bottom:20px}
  .feature-object .project-metrics {margin-top:28px}
  .feature-object .tags {margin-bottom:24px}
  .feature-object .object-visual {margin-top:30px}
  .feature-object .object-visual img {aspect-ratio:1.35; object-fit:cover}
  .feature-copy {margin-bottom:28px}
  .system-story {margin-top:32px; padding-block:25px}
  .system-flow {grid-template-columns:1fr 1fr; gap:28px}
  .system-flow>div:nth-child(2)::after {display:none}
  .detail-grid {grid-template-columns:1fr; gap:15px}
  .project-detail>summary {font-size:10px}
  .brain-diagram {padding:23px; min-height:490px}
  .pipeline-node {padding:15px}.pipeline-node small {font-size:8px}
  .pipeline-note {min-height:78px}
  .wfc-study {padding:19px}.wfc-controls p {font-size:9px}
  .architecture-card .project-visual img {aspect-ratio:1.35}
  .architecture-card {margin-top:0}.architecture-card h3 {font-size:26px}
  .engineering-study {margin-top:-16px}
  .engineering-study summary {grid-template-columns:24px 1fr 20px; gap:15px; padding:23px 0}
  .engineering-study h3 {font-size:19px}
  .study-stack {display:none}
  .engineering-content {grid-template-columns:1fr; gap:22px}
  .research-grid {margin-top:37px}.research h2 {font-size:45px}
  .research-fields {grid-template-columns:1fr; gap:26px; margin-top:45px}
  .research-fields h3 br {display:none}.research-fields h3 {font-size:22px; margin-block:12px}
  .research-fields p {max-width:none}
  .research-note {display:block; margin-top:45px; padding-top:20px}
  .research-note p {font-size:25px; margin-top:22px}
  .desktop-break {display:none}
  .about h2 {font-size:61px}.about-intro .about-lede {font-size:21px}
  .experience-grid {grid-template-columns:1fr; gap:36px; margin-top:50px}
  .experience-top {margin-bottom:19px}
  .experience-foot {gap:12px}
  .career-steps {grid-template-columns:1fr; gap:25px}
  .capability-grid {grid-template-columns:1fr 1fr; gap:22px; margin-top:32px}
  .contact {margin-top:50px; padding-top:50px; grid-template-columns:1fr; gap:38px}
  .contact h2 {font-size:48px}
  .contact-aside {flex-direction:row; flex-wrap:wrap; gap:20px; align-items:center}
  .contact-aside>span {margin:0}
  .signature {margin-top:55px; font-size:12vw; padding-bottom:12px}
  .about {padding-bottom:0}
  .footer {flex-wrap:wrap; gap:10px; font-size:7px; padding-block:22px}
}
@media(max-width:390px) {
  .section-shell {width:calc(100% - 30px)}
  .hero h1 {font-size:49px}
  .hero-actions {align-items:start; flex-direction:column; gap:19px}
  .hero .eyebrow {font-size:7px}
  .surface-stage {height:295px}
  .feature-copy h3,.feature-object .feature-copy h3 {font-size:43px}
  .project-metrics {flex-wrap:wrap; gap:22px}
  .project-heading {align-items:start}
  .brain-diagram {padding:19px}
  .pipeline-node small {font-size:7px}
  .system-flow {grid-template-columns:1fr}
  .system-flow>div::after {display:none}
  .research h2 {font-size:39px}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}
  *,*::before,*::after {animation:none!important; transition:none!important}
}
.engineering-story {display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; margin-block:25px 45px; padding-top:42px; border-top:1px solid var(--line)}
.story-intro h4 {font:500 38px/1.17 var(--sans); letter-spacing:-.045em; margin-bottom:22px}
.story-intro h4 i {font-family:var(--serif); font-weight:500}
.story-intro .eyebrow {font-size:9px}
.engineering-decisions>div+div {margin-top:28px; padding-top:25px; border-top:1px solid var(--line)}
.decision-index,.decision-foot {font:8px/1.7 var(--mono); color:var(--muted)}
.engineering-decisions h5,.kernel-note h5 {font:600 23px/1.3 var(--sans); letter-spacing:-.025em; margin:13px 0 16px}
.engineering-decisions p,.kernel-note p,.story-intro>p:last-child {color:var(--muted); font-size:13px}
.brain-system-story {margin-top:55px; padding-top:40px; border-top:1px solid var(--line)}
.brain-system-story .story-intro {max-width:720px; margin-bottom:35px}
.brain-system-story .story-intro h4 {font-size:43px}
.brain-system-story .story-intro>p:last-child {max-width:570px; font-size:15px}
.brain-stages {display:grid; grid-template-columns:repeat(4,1fr); gap:0; list-style:none; padding:0; margin:0; border-top:1px solid var(--line); border-left:1px solid var(--line)}
.brain-stages li {border-right:1px solid var(--line); border-bottom:1px solid var(--line); padding:22px; min-width:0}
.brain-stages li>span {font:8px/1.5 var(--mono); color:var(--muted); text-transform:uppercase}
.brain-stages h5 {font:600 16px/1.35 var(--sans); letter-spacing:-.03em; margin:15px 0 10px}
.brain-stages p {font-size:12px; line-height:1.7; color:var(--muted); margin:0}
.stage-in-progress {background:var(--surface)}
.research-evidence {display:grid; grid-template-columns:repeat(3,1fr) 1.2fr; gap:30px; padding-block:29px; border-bottom:1px solid var(--line)}
.research-evidence>div {display:flex; flex-direction:column; gap:8px}
.research-evidence strong {font-size:31px; font-weight:500; line-height:1.15; letter-spacing:-.045em}
.research-evidence span,.research-evidence p {font:8px/1.7 var(--mono); color:var(--muted); margin:0; align-self:center}
.research-evidence span {align-self:start}
.kernel-note {display:grid; grid-template-columns:.75fr 1fr 1.25fr; gap:35px; align-items:start; padding-top:31px}
.kernel-note>span {font-size:8px; color:var(--muted); padding-top:6px}
.kernel-note h5 {font-size:22px; margin:0}
.kernel-note p {margin:0}
body:not(.js-ready) .instrument-controls,body:not(.js-ready) .curvature-control,body:not(.js-ready) #regenerate {display:none}
@media(max-width:1050px) {.engineering-story {gap:35px}.brain-stages li {padding:18px}.research-evidence {gap:20px}.kernel-note {grid-template-columns:1fr 1.5fr}.kernel-note>span {grid-column:1/-1}.research-evidence strong {font-size:27px}}
@media(max-width:760px) {
  .engineering-story {grid-template-columns:1fr; gap:25px; padding-top:28px}
  .story-intro h4,.brain-system-story .story-intro h4 {font-size:32px}
  .engineering-decisions h5 {font-size:23px}
  .brain-stages {grid-template-columns:1fr 1fr}
  .brain-stages li {padding:17px}.brain-stages h5 {font-size:15px}
  .research-evidence {grid-template-columns:1fr 1fr; gap:25px}
  .research-evidence strong {font-size:29px}
  .kernel-note {grid-template-columns:1fr; gap:17px}
}
.hero h1 {font-size:clamp(57px,7.3vw,103px); line-height:1.05}
.hero h1>span {white-space:nowrap}
.surface-stage {height:405px}
.surface-modes {gap:13px; flex-wrap:wrap}
.instrument-controls {gap:16px; align-items:start}
.motion-toggle {white-space:nowrap}
.curvature-control>span {width:65px; flex-shrink:0}
.curvature-control output {width:42px; text-align:right; flex-shrink:0}
.sun-control {padding-top:12px}
.sun-control input {accent-color:#b77f36}
.surface-readout {font:9px/1.6 var(--mono); margin:16px 0 0; color:var(--muted)}
.surface-annotation {top:7%; right:7px}
.surface-instrument .instrument-caption {max-width:450px; line-height:1.8}
.motion-film {min-width:0; width:100%}
.motion-placeholder {position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; justify-content:center; align-items:center; aspect-ratio:16/10; min-height:290px; padding:55px 30px 35px; background:#202823; color:#eee9de; border:1px solid rgba(238,233,222,.16)}
.motion-placeholder::before {content:""; position:absolute; inset:22px; border:1px solid rgba(238,233,222,.13); pointer-events:none; z-index:-1}
.film-top {position:absolute; top:36px; left:38px; right:38px; display:flex; justify-content:space-between; gap:16px; color:#bac6b7; font:8px/1.6 var(--mono); text-transform:uppercase; letter-spacing:.07em}
.film-play {display:grid; place-items:center; width:43px; height:43px; border:1px solid #7e8f72; border-radius:50%; font:23px var(--mono); color:var(--lime); margin-bottom:23px}
.motion-placeholder h4 {font:500 clamp(27px,3.6vw,49px)/1.15 var(--sans); letter-spacing:-.055em; text-align:center; margin:0; z-index:1}
.motion-placeholder h4 i {font:500 italic 1em/1.15 var(--serif); color:#c6f04c}
.film-status {font:8px/1.6 var(--mono); letter-spacing:.1em; text-transform:uppercase; color:#bac6b7; margin:22px 0 0}
.film-number {position:absolute; right:35px; bottom:-22px; font:500 clamp(110px,19vw,220px)/1 var(--sans); letter-spacing:-.085em; color:rgba(238,233,222,.035); z-index:-1; pointer-events:none}
.object-visual .motion-placeholder {aspect-ratio:16/7.7; min-height:350px}
.object-visual .motion-placeholder h4 {font-size:clamp(39px,5.4vw,73px)}
.brain-film .motion-placeholder {background:#222635}
.brain-film .film-top,.brain-film .film-status {color:#bfc0cd}
.wfc-film .motion-placeholder {background:#c6f04c; color:#20231f}
.wfc-film .motion-placeholder::before {border-color:rgba(32,35,31,.2)}
.wfc-film .film-top,.wfc-film .film-status,.wfc-film .film-play,.wfc-film h4 i {color:#3d4b27}
.wfc-film .film-play {border-color:#819e37}
.wfc-film .film-number {color:rgba(32,35,31,.07)}
.motion-film>img,.motion-film>video {display:block; width:100%; aspect-ratio:16/10; object-fit:contain; background:#202823}
.object-visual>img,.object-visual>video {aspect-ratio:16/7.7}
.project-ambition {font:9px/1.8 var(--mono)!important; margin-top:21px; max-width:350px!important}
.brain-diagram {margin-top:50px; min-height:0; padding:32px 40px; display:grid; grid-template-columns:.8fr 1.2fr; gap:25px 50px}
.brain-diagram .diagram-top,.brain-diagram .diagram-footer {grid-column:1/-1}
.brain-diagram .diagram-question {font-size:clamp(30px,3.3vw,43px); align-self:center; margin:0}
.brain-diagram .pipeline {grid-column:2; grid-row:2/4; margin:0}
.brain-diagram .pipeline-note {margin:0; min-height:95px; align-self:start}
.pipeline-node {transition:transform .3s,background .3s,border-color .3s; transform-origin:left center}
.pipeline-node.active {transform:translateX(-7px); background:rgba(198,240,76,.1)}
.feature-wfc .wfc-study {max-width:620px; margin:15px auto 30px}
.employer-logos {display:flex; align-items:center; flex-wrap:wrap; gap:24px}
.employer-logos>div {display:flex; flex-direction:column; gap:12px; min-width:0}
.employer-logos>div>span {font:7px/1.5 var(--mono); color:var(--muted)}
.atkins-logo {width:170px; height:50px; object-fit:contain; object-position:left center}
.employer-link {color:var(--muted); padding-bottom:21px}
body.dark .atkins-logo {filter:brightness(0) invert(.92)}
.story-arrived {animation:story-arrival .7s cubic-bezier(.2,.65,.3,1) both; animation-delay:var(--reveal-delay,0ms)}
@keyframes story-arrival {from {opacity:.35; transform:translateY(24px)} to {opacity:1; transform:translateY(0)}}
@media(min-width:761px) {.engineering-story .story-intro {position:sticky; top:35px; align-self:start}}
@media(max-width:1050px) {.hero h1 {font-size:clamp(52px,7vw,74px)}.employer-logos {gap:16px}.atkins-logo {width:148px}.intel-logo {width:95px}}
@media(max-width:760px) {
  .hero h1 {font-size:clamp(48px,10vw,74px)}
  .surface-stage {height:355px}.surface-modes {gap:13px}.surface-modes button {font-size:8px}
  .motion-placeholder,.object-visual .motion-placeholder {aspect-ratio:4/3; min-height:290px; padding:65px 22px 35px}
  .film-top {top:29px; left:29px; right:29px; font-size:7px}
  .motion-placeholder::before {inset:15px}
  .motion-placeholder h4,.object-visual .motion-placeholder h4 {font-size:clamp(29px,6.4vw,43px)}
  .film-number {font-size:160px}
  .brain-diagram {grid-template-columns:1fr; padding:23px; gap:24px; margin-top:35px}
  .brain-diagram .pipeline {grid-column:1; grid-row:auto}
  .brain-diagram .pipeline-note {min-height:90px}
  .brain-diagram .diagram-question {font-size:32px}
  .brain-diagram .diagram-footer {font-size:7px}
}
@media(max-width:390px) {.hero h1 {font-size:46px}.surface-stage {height:300px}.employer-logos {gap:14px}.atkins-logo {width:143px}.intel-logo {width:85px}.instrument-controls {gap:10px}.surface-modes {gap:9px}}
.button {border-radius:12px}
.button:hover {transform:translateY(-2px); box-shadow:0 5px 18px rgba(32,35,31,.1)}
.surface-stage {border-radius:24px}
.motion-placeholder,.motion-film>img,.motion-film>video,.project-visual>a,.brain-diagram {border-radius:22px}
.motion-placeholder::before {border-radius:14px}
.pipeline-node {border-radius:11px}
.pipeline-node.active {transform:translateX(-4px)}
.tags span,.file-kind {border-radius:6px}
.image-action {border-radius:9px}
.wfc-study {border-radius:18px}
.engineering-content>img,.process-content img {border-radius:12px}
.brain-stages {border-radius:16px; overflow:hidden}
.story-arrived {animation-duration:.5s}
@keyframes story-arrival {from {opacity:.6; transform:translateY(10px)} to {opacity:1; transform:translateY(0)}}
.visually-hidden {position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0}
.tracking-study {margin-top:45px; border:1px solid var(--line); border-radius:24px; overflow:hidden; background:var(--surface)}
.tracking-top {display:flex; justify-content:space-between; align-items:center; gap:25px; padding:26px 30px; background:var(--paper)}
.tracking-top .eyebrow {font-size:8px; margin-bottom:8px}
.tracking-top h4 {font:500 28px/1.2 var(--sans); letter-spacing:-.035em; margin:0}
.tracking-disclaimer {font:8px/1.6 var(--mono); color:var(--muted); border:1px solid var(--line); border-radius:20px; padding:7px 11px; white-space:nowrap}
.tracking-layout {display:grid; grid-template-columns:minmax(0,1fr) 275px}
.tracking-map {position:relative; min-width:0; background:#121d22; min-height:475px}
.tracking-map canvas {display:block; width:100%; height:100%; min-height:475px; position:absolute; inset:0; cursor:crosshair; border-radius:0}
.map-overlay {position:absolute; top:22px; left:22px; right:22px; display:flex; justify-content:space-between; gap:20px; pointer-events:none; font:7px/1.6 var(--mono); letter-spacing:.06em; color:#aec4b7}
.map-controls {position:absolute; bottom:20px; left:20px; display:flex; align-items:center; gap:2px; border:1px solid #50675d; border-radius:10px; overflow:hidden; background:#182b25}
.map-controls button {font:10px var(--mono); color:#e8edde; border:0; background:transparent; padding:11px 14px}
.map-controls button:focus-visible {outline-offset:-4px}
.map-controls button:hover {background:#304b3c}
.map-controls button:disabled {opacity:.35; cursor:default}
.tracking-detail {padding:25px; background:var(--paper); min-width:0}
.tracking-filters {display:flex; gap:9px; margin-bottom:28px}
.tracking-filters button {display:flex; align-items:center; gap:6px; font:9px var(--mono); border:1px solid var(--line); background:var(--surface); padding:9px; border-radius:8px; opacity:.5}
.tracking-filters button[aria-pressed="true"] {opacity:1; border-color:var(--muted)}
.air-key,.sea-key {display:inline-block; width:6px; height:6px; border-radius:50%; background:#809b2d}
.sea-key {background:#277b88}
body.dark .air-key {background:#c6f04c}body.dark .sea-key {background:#79cdda}
.tracking-select-label {display:block; font:8px/1.6 var(--mono); color:var(--muted); margin-bottom:7px}
.tracking-detail select {width:100%; min-width:0; padding:9px 7px; border:1px solid var(--line); border-radius:7px; background:var(--paper); color:var(--ink); font:10px/1.5 var(--mono)}
.tracking-detail select:focus-visible {outline:2px solid var(--ink); outline-offset:3px}
.track-type {font:8px/1.7 var(--mono); color:var(--muted); margin:25px 0 7px}
.tracking-detail h5 {font:500 31px/1.2 var(--sans); letter-spacing:-.035em; margin:0 0 9px}
#track-route {font:10px/1.8 var(--mono); color:var(--muted); min-height:36px; margin-bottom:20px}
.track-stats {display:grid; grid-template-columns:1fr 1fr; gap:19px; margin:0; border-top:1px solid var(--line); padding-top:18px}
.track-stats dt {font:8px/1.6 var(--mono); color:var(--muted); margin-bottom:5px}
.track-stats dd {font:12px/1.6 var(--mono); margin:0; font-variant-numeric:tabular-nums}
.tracking-footer {display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid var(--line); padding-top:19px; margin-top:24px; font:8px/1.6 var(--mono); color:var(--muted)}
.tracking-footer button {background:transparent; border:0; padding:5px 0; font:8px var(--mono); color:var(--ink)}
.track-caption {font:8px/1.8 var(--mono); color:var(--muted); margin:17px 0}
.tracking-detail>.text-link {font-size:9px}
.tracking-noscript {padding:20px 30px; font-size:13px}
body:not(.js-ready) .tracking-map,body:not(.js-ready) .tracking-filters,body:not(.js-ready) #tracked-object,body:not(.js-ready) .tracking-select-label,body:not(.js-ready) .track-stats,body:not(.js-ready) .tracking-footer {display:none}
body:not(.js-ready) .tracking-layout {grid-template-columns:1fr}
@media(max-width:1050px) {.tracking-layout {grid-template-columns:minmax(0,1fr) 250px}.tracking-detail {padding:22px}}
@media(max-width:760px) {
  .tracking-study {border-radius:20px; margin-top:30px}
  .tracking-top {padding:22px; flex-direction:column; align-items:start; gap:14px}
  .tracking-top h4 {font-size:25px}
  .tracking-layout {grid-template-columns:1fr}
  .tracking-map,.tracking-map canvas {height:360px; min-height:360px}
  .tracking-detail {display:grid; grid-template-columns:1fr 1fr; gap:0 23px}
  .tracking-filters,.tracking-select-label,.tracking-detail select,#track-route,.track-stats,.tracking-footer,.track-caption,.tracking-detail>.text-link {grid-column:1/-1}
  .tracking-filters {margin-bottom:22px}.track-type {grid-column:1/-1}
  .tracking-detail h5 {grid-column:1/-1}
  .track-stats {grid-template-columns:repeat(4,1fr); gap:10px}
  .track-stats dd {font-size:10px}.map-overlay {left:16px; right:16px; font-size:6px}
}
@media(max-width:390px) {.track-stats {grid-template-columns:1fr 1fr}.tracking-map,.tracking-map canvas {height:320px; min-height:320px}}
@media print {
  .story-arrived {animation:none!important}
  :root,body.dark {--paper:#fff;--ink:#20231f;--muted:#4c5147;--line:#ccc}
  .topbar,.reading-progress,.surface-instrument,.filters,.chapter-index,.image-action,.menu-toggle,.theme-toggle,.motion-toggle {display:none!important}
  .section-shell {width:100%}.chapter {padding-block:35px}
  .hero {display:block; min-height:0; padding-block:25px}.hero h1 {font-size:58px}
  .project {break-inside:avoid}.research {background:#eee; color:#20231f}
  .research p,.research .section-index,.research span {color:#20231f!important}
  .brain-diagram {-webkit-print-color-adjust:exact; print-color-adjust:exact}
  .signature {font-size:80px}
}
