/* September 2026: readable editorial layout, product evidence, restrained motion. */
:root{--readable-muted:#a8b4b7;--surface-proof:#11181b;--proof-border:#34413c}
html[data-theme="light"]{--readable-muted:#526157;--surface-proof:#fff;--proof-border:#c7d0c5}
html{scroll-padding-top:100px}
.site-nav{font-size:13px;gap:24px;letter-spacing:.035em}
.site-nav a{padding:14px 0}
.identity-copy b{font-size:15px}.identity-copy small{font-size:11px}
.availability{font-size:11px}.theme-toggle{font-size:12px;min-height:40px}
.hero-stage .hero{grid-template-columns:1.05fr .95fr;gap:36px;min-height:720px;padding-top:60px;padding-bottom:54px}
.hero-stage .hero h1{font-size:clamp(44px,4.65vw,72px);line-height:1.05;letter-spacing:-.055em;margin:22px 0 24px}
.hero-name{font-size:clamp(24px,2.3vw,34px)}
.hero-stage .hero-intro{font-size:17px;line-height:1.7;max-width:560px}
.eyebrow{font-size:11px;flex-wrap:wrap;gap:10px;line-height:1.5}.eyebrow>span:last-child,.eyebrow i{display:none}
.hero-actions .button{font-size:14px}.hero-actions{gap:18px;margin-top:26px}
.hero-actions .button-primary{min-width:190px}
.hero-stage .signature{margin-top:28px;font-size:12px;line-height:1.5}
.signature span,.signature strong,.signature small{font-size:12px}
.project-dock{display:none}
.map-node b{display:flex;gap:8px;align-items:center;font-size:16px}.map-node small{font-size:12px;line-height:1.4}.map-node{width:205px;padding:16px}
.map-icon{flex-shrink:0}.system-map .coord{font-size:11px}
.hero-stage .city-canvas{opacity:.48}.city-hud{opacity:.65}
.signal-strip{gap:20px;padding-top:22px;padding-bottom:22px;flex-wrap:wrap}
.signal-strip>div{display:flex;align-items:center;gap:10px}.signal-strip b{font-size:13px}.signal-strip span{font-size:12px}
.client-work{padding-top:46px;padding-bottom:46px;gap:28px;border-bottom:1px solid var(--line)}
.client-work h2{font-size:30px;line-height:1.12}.client-work p{font-size:15px;line-height:1.65;max-width:590px}
.client-card small{font-size:12px}.client-card b{font-size:18px}.client-card span{font-size:13px}
.section-number,.kicker,.project-kind{font-size:12px;line-height:1.5;letter-spacing:.06em;color:var(--readable-muted)}
.work-heading{padding-top:70px;padding-bottom:40px;grid-template-columns:150px 1fr;gap:28px}
.work-heading h2{font-size:clamp(34px,3.5vw,52px);line-height:1.1}
.project{padding-top:58px;padding-bottom:58px;grid-template-columns:64px minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:start}
.project-copy h3{display:flex;align-items:center;gap:14px;font-size:clamp(32px,3.5vw,48px);letter-spacing:-.045em;margin:12px 0 20px}
.project-icon{flex-shrink:0;width:40px;height:40px}
.project-summary{font-size:17px;line-height:1.65}.project-notes p{font-size:15px;line-height:1.65;padding:14px 0}
.stack{gap:6px}.stack span{font-size:12px;line-height:1.35;padding:6px 9px}
.project-links{gap:10px!important;align-items:center}
.project .project-links a,.project .project-links button{font:600 13px var(--sans);letter-spacing:0;text-transform:none;min-height:44px;padding:12px 17px;border-radius:4px;display:inline-flex;gap:14px;align-items:center;justify-content:center}
.project .project-links a.project-primary{background:#404e3b;color:#fff;border:1px solid #404e3b}
.project .project-links a.project-secondary{background:var(--surface-proof);color:var(--ink);border:1px solid var(--proof-border)}
html[data-theme="light"] .project .project-links a.project-secondary{background:#fff;color:#344438;border-color:#bdc9b9}
.project .project-links .project-video-button{border:0;background:transparent;color:var(--readable-muted);padding:7px 0;box-shadow:none}
html[data-theme="light"] .project .project-links .project-video-button{border:0;background:transparent;color:#40573f;box-shadow:none}
.project .private-note,html[data-theme="light"] .project .private-note{order:4;font:12px/1.5 var(--sans);letter-spacing:0;border:0;background:none;padding:0;min-height:0}
.project-index span{font-size:11px;line-height:1.5}
.project-media{min-width:0;margin-top:8px}
.product-preview{display:block;overflow:hidden;border:1px solid var(--proof-border);border-radius:10px;background:var(--surface-proof);box-shadow:0 16px 40px #172c2410;transition:transform .25s,border-color .25s,box-shadow .25s}
.product-preview:hover{transform:translateY(-4px);border-color:#7b9669;box-shadow:0 22px 45px #172c2420}
.preview-toolbar{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;gap:12px;border-bottom:1px solid var(--line);font-size:13px}
.preview-toolbar>span:first-child{display:flex;align-items:center;gap:9px;font-weight:650}
.preview-toolbar>span:last-child{color:var(--readable-muted);font-size:12px}
.product-preview>img{display:block;width:100%;height:auto;aspect-ratio:1363/936;object-fit:cover;object-position:top;border-bottom:1px solid var(--line)}
.preview-caption{display:block;font-size:14px;line-height:1.5;padding:16px;color:var(--readable-muted)}
.architecture-peek{margin-top:14px;border-bottom:1px solid var(--line);padding-bottom:10px}
.architecture-peek summary{display:flex;justify-content:space-between;align-items:center;padding:12px 0;font-size:14px;color:var(--readable-muted);cursor:pointer;list-style:none}
.architecture-peek summary::-webkit-details-marker{display:none}.architecture-peek summary span{font-size:23px;transition:transform .2s}.architecture-peek[open] summary span{transform:rotate(45deg)}
.architecture-peek .visual{min-height:360px;margin:8px 0 18px;transform:none!important;scale:1!important;translate:none!important}
.visual-head,.trace-row em,.evidence-box span,.evidence-box code,.evidence-box b{font-size:11px}.trace-row span{font-size:14px}
.walkthrough-strip{padding-top:50px;padding-bottom:60px;grid-template-columns:150px 1fr;gap:28px}
.walkthrough-strip h2{font-size:32px}.walkthrough-cards{gap:18px;margin-top:24px}
.walkthrough-cards button{padding:0;overflow:hidden;border-radius:8px;background:var(--surface-proof);transition:transform .25s,border-color .25s;min-width:0}
.walkthrough-cards button:hover{transform:translateY(-4px)}
.video-thumbnail{position:relative;aspect-ratio:16/10;overflow:hidden;background:#17201c}
.video-thumbnail img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .4s}
.walkthrough-cards button:hover img{transform:scale(1.035)}
.walkthrough-cards .play-disc{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:46px;height:46px;margin:0;transform:translate(-50%,-50%);border:1px solid #ffffff60;background:#263b2ae8;border-radius:50%;font:18px var(--sans);color:#fff;box-shadow:0 3px 20px #0003}
.walkthrough-cards .video-duration{position:absolute;right:10px;bottom:10px;margin:0;background:#111b17e8;color:#fff;padding:5px 7px;font:12px var(--mono);border-radius:4px}
.video-card-copy{padding:16px}.walkthrough-cards b{margin:0;font-size:16px}.walkthrough-cards .video-card-copy>span{font:13px/1.5 var(--sans);margin-top:6px;color:var(--readable-muted)}
.profile h2,.operating-model h2,.contact h2{font-size:clamp(32px,3.8vw,54px);line-height:1.12}
.profile,.operating-model,.capabilities{padding-top:70px;padding-bottom:70px}
.profile-copy p,.operating-rows p{font-size:16px;line-height:1.7}.operating-rows small,.timeline time,.timeline span,.capability-table span{font-size:12px;line-height:1.6}.operating-rows b,.capability-table b{font-size:15px;line-height:1.6}
.site-footer{font-size:12px;line-height:1.6}.contact-meta{font-size:13px;line-height:1.6}
.project-topnav a{font-size:13px}.project-hero-actions .button{font-size:14px}.project-lead,.project-statement p,.demo-story-grid p,.decision-ledger p,.scar-grid p{font-size:16px;line-height:1.7}
html[data-theme="light"] .product-preview,html[data-theme="light"] .walkthrough-cards button{background:#fff}
html[data-theme="light"] .project-summary,html[data-theme="light"] .project-notes p{color:#4d5c52}
:where(a,button,summary):focus-visible{outline:3px solid #79996a;outline-offset:5px}
/* Entrance is progressive enhancement: content remains visible without JS. */
.motion-reveal,.motion-ready .hero-name,.motion-ready .system-map{filter:none;clip-path:none}
.motion-reveal{transform:translateY(20px);transition:opacity .55s ease,transform .65s cubic-bezier(.16,1,.3,1)}
.motion-reveal.is-visible{transform:none;filter:none;clip-path:none}
.motion-reveal:before{display:none}
.motion-ready.motion-loaded .hero-name{clip-path:none;filter:none;transition:opacity .65s,transform .7s cubic-bezier(.16,1,.3,1)}
.motion-ready .system-map{transform:translateY(12px) scale(.98)}
.motion-ready.motion-loaded .system-map{filter:none;transform:none;transition:opacity .9s .15s,transform .9s cubic-bezier(.16,1,.3,1) .15s}
.hero-stage:after{animation:none;display:none}
.motion-loaded .map-lines path{stroke-dasharray:500;stroke-dashoffset:0;animation:connectIn 1.3s cubic-bezier(.2,.7,.2,1) .3s both}
@keyframes connectIn{from{stroke-dashoffset:500;opacity:0}to{stroke-dashoffset:0;opacity:1}}
@media(max-width:1100px){.availability{display:none}.hero-stage .hero{grid-template-columns:1fr 1fr;gap:24px}.project{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr);gap:22px}.map-node{width:172px;padding:12px}.map-node small{font-size:11px}.system-map{min-width:0}.client-work{grid-template-columns:1fr 1fr}.client-work>.section-number{grid-column:1/-1}}
@media(max-width:800px){.hero-stage .hero{grid-template-columns:1fr;min-height:0;padding-top:38px;padding-bottom:28px}.hero-stage .hero h1{font-size:clamp(42px,8vw,62px)}.hero-stage .system-map{width:min(100%,440px);justify-self:center}.hero-stage .signature{display:none}.project{grid-template-columns:1fr;gap:18px}.project-index{display:flex;justify-content:space-between;align-items:center}.project-index span{writing-mode:horizontal-tb;transform:none}.project-index strong{font-size:20px}.project-media{margin:0}.project-copy h3{font-size:36px}.work-heading,.walkthrough-strip{grid-template-columns:1fr;gap:10px}.section-number{margin:0 0 12px}.client-work{grid-template-columns:1fr}.site-header{height:auto;min-height:78px;grid-template-columns:1fr auto;padding-top:12px;padding-bottom:12px;gap:12px}.site-nav{grid-column:1/-1;grid-row:2;justify-content:space-between;display:flex;font-size:13px;gap:12px}.header-actions{grid-column:2;grid-row:1}.identity-copy small{font-size:10px}.walkthrough-cards{grid-template-columns:1fr}.video-thumbnail{aspect-ratio:16/9}.signal-strip{display:grid;grid-template-columns:1fr 1fr}.signal-strip>div{min-width:0}.signal-strip b{font-size:12px}.signal-strip>div:last-child{grid-column:1/-1}.project-topnav{gap:12px;flex-wrap:wrap}.project-topnav a{font-size:12px}.project-hero-actions{flex-wrap:wrap}.project .project-links{display:flex!important}.project .project-links a,.project .project-links button{width:auto!important}.project .private-note{width:100%}.hero-actions .button-primary{min-width:160px}.client-work,.project,.profile,.capabilities,.operating-model,.walkthrough-strip{padding-top:40px;padding-bottom:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-reveal,.motion-ready .hero-name,.motion-ready .hero h1,.motion-ready .hero-intro,.motion-ready .hero-actions,.motion-ready .system-map,.motion-ready .map-node,.motion-child{opacity:1!important;transform:none!important;clip-path:none!important;filter:none!important;translate:none!important}}
