:root { --ink:#111823; --night:#090b12; --blue:#0b3672; --mist:#e9eef2; --steel:#406185; --line:rgba(17,24,35,.15); --font-brand:"Ubuntu Condensed","Arial Narrow",sans-serif; --font-body:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#f7f8f8; font-family:var(--font-body); overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
.site-noise { position:fixed; inset:0; pointer-events:none; opacity:.035; z-index:5; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }
.site-header { height:82px; padding:0 clamp(24px,5vw,84px); display:flex; align-items:center; justify-content:space-between; position:relative; z-index:10; }
.wordmark { font:300 34px/1 var(--font-brand); letter-spacing:-.035em; text-transform:lowercase; color:var(--ink); }.wordmark strong { margin-left:3px; color:var(--blue); font-weight:700; }
nav { display:flex; gap:32px; font-size:13px; } nav a { color:#45505d; } nav a:hover { color:var(--blue); }.menu-toggle { display:none; }
.section { padding:clamp(82px,11vw,170px) clamp(24px,8vw,132px); }.hero { min-height:calc(100vh - 82px); display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); column-gap:4vw; align-items:center; position:relative; padding-top:75px; }
.eyebrow,.section-label { font-size:11px; text-transform:uppercase; letter-spacing:.14em; font-weight:700; color:var(--steel); }.hero h1,.section h2 { letter-spacing:-.055em; margin:20px 0 28px; font-size:clamp(50px,6.2vw,100px); line-height:.94; font-weight:500; max-width:900px; }.hero h1 em,.section h2 em { color:var(--blue); font-family:Georgia,serif; font-size:.98em; font-weight:400; }.hero-lede { max-width:550px; font-size:18px; line-height:1.6; color:#4a5663; }.hero-actions { margin-top:40px; display:flex; align-items:center; gap:28px; }.button { display:inline-flex; padding:15px 21px; font-size:14px; font-weight:650; border-radius:2px; }.button-primary { background:var(--blue); color:white; }.text-link { font-size:14px; font-weight:650; }.text-link span,.contact-link span { color:var(--blue); margin-left:7px; }
.hero-system { min-height:500px; position:relative; margin:auto; width:min(100%,620px); }.system-core { position:absolute; width:135px; height:135px; left:calc(50% - 67px); top:calc(50% - 67px); border-radius:50%; background:var(--night); color:#f6f8fa; display:grid; place-content:center; font:300 30px/1 var(--font-brand); letter-spacing:-.04em; box-shadow:0 0 0 18px rgba(11,54,114,.08); }.system-core strong { color:#6d94c1; text-align:center; font-weight:700; font-size:19px; letter-spacing:.03em; margin-top:2px; }.system-line { position:absolute; height:1px; background:linear-gradient(90deg,transparent,var(--steel)); transform-origin:left; }.line-a { left:15%; top:31%; width:37%; transform:rotate(26deg); }.line-b { left:51%; top:48%; width:36%; transform:rotate(-32deg); }.line-c { left:20%; top:75%; width:34%; transform:rotate(-30deg); }.system-node { position:absolute; width:17px; height:17px; border-radius:50%; background:var(--blue); box-shadow:0 0 0 8px rgba(11,54,114,.09); }.node-local { left:13%; top:28%; }.node-memory { right:11%; top:28%; background:#6f8eae; }.node-channel { left:18%; bottom:18%; background:#416d9d; }.system-label { position:absolute; color:#526171; font-size:12px; line-height:1.35; }.label-local { left:0; top:18%; }.label-memory { right:0; top:18%; text-align:right; }.label-channel { left:0; bottom:7%; }.hero-footnote { grid-column:1/-1; align-self:end; color:#687482; font-size:12px; }
.proposition { background:var(--night); color:#f1f4f6; }.proposition .section-label { color:#7b9cbd; }.proposition-layout { display:grid; grid-template-columns:1.15fr .85fr; gap:12vw; margin-top:25px; align-items:end; }.proposition h2 { margin:0; }.proposition h2 em { color:#90afd0; }.proposition-copy { color:#b9c4cf; font-size:17px; line-height:1.7; }.principles { display:grid; grid-template-columns:repeat(3,1fr); margin-top:110px; border-top:1px solid rgba(255,255,255,.18); }.principles article { padding:28px 32px 0 0; }.principles article+article { padding-left:32px; border-left:1px solid rgba(255,255,255,.18); }.principles span,.mode-index { color:#7b9cbd; font:400 16px var(--font-brand); }.principles h3 { font-size:22px; margin:27px 0 9px; font-weight:500; }.principles p { color:#aab5bf; font-size:14px; line-height:1.55; max-width:240px; }
.modes { background:#e5ebee; }.modes-intro { display:grid; grid-template-columns:1fr 1fr; gap:15vw; align-items:end; margin:26px 0 80px; }.modes-intro h2 { margin:0; }.modes-intro p { color:#526171; max-width:390px; line-height:1.6; }.mode-list { border-top:1px solid var(--line); }.mode { display:grid; grid-template-columns:80px minmax(0,1fr) auto; gap:25px; padding:29px 0; border-bottom:1px solid var(--line); align-items:baseline; }.mode h3 { margin:0 0 8px; font-size:27px; font-weight:500; letter-spacing:-.04em; }.mode div p { margin:0; color:#596674; line-height:1.55; max-width:620px; }.mode-status { font-size:11px; text-transform:uppercase; letter-spacing:.12em; color:#6a7785; }
.statement { background:var(--blue); color:white; }.statement-grid { display:grid; grid-template-columns:.8fr 2fr .85fr; gap:5vw; align-items:start; }.statement .eyebrow { color:#c7d8e9; }.statement h2 { margin:0; }.statement-detail { color:#d9e5f0; margin:5px 0; line-height:1.6; font-size:14px; }.contact { min-height:70vh; display:grid; grid-template-columns:.7fr 2fr; gap:5vw; align-items:center; }.contact h2 { margin-top:0; }.contact-link { border-bottom:1px solid var(--ink); padding-bottom:9px; display:inline-flex; font-size:clamp(22px,3vw,42px); letter-spacing:-.04em; }.site-footer { border-top:1px solid var(--line); padding:22px clamp(24px,8vw,132px); display:flex; justify-content:space-between; color:#687482; font-size:11px; }
.reveal { opacity:0; transform:translateY(26px); }
@media (max-width:780px) { .site-header { height:70px; }.menu-toggle { display:block; border:0; background:none; color:var(--ink); font:600 12px var(--font-body); text-transform:uppercase; letter-spacing:.1em; } nav { position:absolute; top:70px; left:24px; right:24px; padding:20px; background:#fff; display:none; flex-direction:column; gap:18px; box-shadow:0 16px 28px rgba(15,24,34,.1); } nav.is-open { display:flex; }.hero { grid-template-columns:1fr; padding-top:58px; }.hero-system { min-height:360px; margin-top:52px; }.proposition-layout,.modes-intro,.statement-grid,.contact { grid-template-columns:1fr; gap:30px; }.principles { grid-template-columns:1fr; margin-top:70px; }.principles article+article { padding-left:0; border-left:0; border-top:1px solid rgba(255,255,255,.18); margin-top:25px; padding-top:25px; }.mode { grid-template-columns:38px 1fr; }.mode-status { grid-column:2; }.site-footer { gap:15px; flex-direction:column; }.hero h1,.section h2 { font-size:clamp(46px,14vw,72px); } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.01ms !important; transition-duration:.01ms !important; } .reveal { opacity:1; transform:none; } }

/* Theme layer: dark is the product default; light keeps the same hierarchy. */
:root { --ink:#f4f7fa; --blue:#7697bc; --steel:#93a9bf; --muted:#b5c0cc; --line:rgba(244,247,250,.16); --panel:#111a25; }
:root[data-theme="light"] { --ink:#111823; --blue:#0b3672; --steel:#406185; --muted:#526171; --line:rgba(17,24,35,.15); --panel:#e5ebee; }
body { background:#090b12; color:var(--ink); transition:background-color .35s ease,color .35s ease; }
:root[data-theme="light"] body { background:#f7f8f8; }
.site-header { gap:28px; justify-content:initial; }.brand-logo { display:block; width:170px; margin-right:auto; }.brand-logo img { display:block; width:100%; height:auto; }.wordmark { display:none; }
nav a,.hero-lede,.system-label,.hero-footnote,.proposition-copy,.principles p,.modes-intro p,.mode div p,.site-footer { color:var(--muted); }.theme-toggle { border:1px solid var(--line); color:var(--ink); background:transparent; border-radius:100px; padding:8px 11px; font:600 11px var(--font-body); letter-spacing:.04em; display:flex; align-items:center; gap:7px; cursor:pointer; }.theme-icon { color:var(--blue); font-size:15px; line-height:1; }
.button-primary { background:var(--blue); color:#090b12; }.system-core { background:var(--panel); color:var(--ink); box-shadow:0 0 0 18px rgba(118,151,188,.09); }.system-core strong { color:var(--blue); }.system-node { background:var(--blue); box-shadow:0 0 0 8px rgba(118,151,188,.09); }
.proposition,.modes { background:var(--panel); color:var(--ink); }.proposition .section-label,.principles span,.mode-index,.mode-status { color:var(--steel); }.proposition h2 em { color:var(--blue); }.principles,.mode-list { border-color:var(--line); }.principles article+article { border-color:var(--line); }.statement { background:var(--blue); }.contact-link { border-color:var(--ink); }.site-footer { border-color:var(--line); }
@media (max-width:780px) { .site-header { gap:14px; }.brand-logo { width:132px; }.theme-label { display:none; } nav { background:var(--panel); box-shadow:0 16px 28px rgba(0,0,0,.22); }.principles article+article { border-color:var(--line); } }
