:root{color-scheme:light;--paper:#f4f3ef;--ink:#172a3b;--muted:#586572;--line:#d6d9d5;--accent:#245fba;--white:#fff;--night:#152536;--green:#8bb8a3;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}p{line-height:1.7;text-wrap:pretty}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}h1,h2{letter-spacing:-.055em}svg{display:block}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.header{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;gap:13px;align-items:center;font-size:22px;font-weight:700;letter-spacing:-.8px;min-height:44px}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--ink);color:var(--paper);font-size:25px;padding-bottom:4px}.brand-domain{font-weight:400;color:var(--muted)}nav{display:flex;gap:32px;font-size:14px}nav a{display:flex;gap:9px;align-items:center;min-height:44px}nav a:hover,.text-link:hover,.back-top:hover{color:var(--accent)}.hero{padding-block:76px 64px;display:grid;grid-template-columns:1.15fr 1fr;gap:55px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.115em;text-transform:uppercase;line-height:1.8}.hero .eyebrow{display:flex;gap:9px;align-items:center}.dot,.status-dot{width:6px;height:6px;flex-shrink:0;background:var(--accent);border-radius:50%}h1{font-size:clamp(48px,5.15vw,72px);font-weight:500;line-height:1.055;margin-block:28px 25px}h1 em{font-style:normal;color:var(--accent)}.hero-description{max-width:465px;color:var(--muted);font-size:16px;line-height:1.75}.button{margin-top:29px;min-height:52px;padding:15px 21px;display:inline-flex;align-items:center;justify-content:space-between;gap:37px;background:var(--accent);color:var(--white);font-size:14px;border-radius:4px;transition:background-color .18s,transform .18s}.button:hover{background:#194d9b}.button:active{transform:scale(.96)}.hero-caption{font-size:11px;color:var(--muted);margin-top:18px}.concept{align-self:center;background:var(--night);border-radius:12px;padding:24px 24px 20px;box-shadow:0 20px 55px -30px #14243680;color:#edf2f5}.concept figcaption{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px}.mono{font-family:Consolas,'Courier New',monospace;font-size:9px;letter-spacing:.06em;color:#bac5ce}.concept-diagram{width:100%;height:auto;margin-block:15px 0}.diagram-label{fill:#f1f5f7;text-anchor:middle;font-family:Arial,Helvetica,sans-serif;font-size:15px}.diagram-sub{fill:#b3c1cc;text-anchor:middle;font-family:Arial,Helvetica,sans-serif;font-size:11px}.dark{fill:#203443}.diagram-small{fill:#b8c5cf;font-family:Arial,Helvetica,sans-serif;font-size:10px;text-anchor:middle}.concept-footer{display:flex;gap:8px;align-items:center;font-size:11px;padding-top:15px;border-top:1px solid #3a4857}.concept-footer .mono{margin-left:auto;font-size:18px}.status-dot{background:var(--green)}.focus-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:55px;padding-block:25px;font-size:13px;color:var(--muted)}.focus-strip span:nth-child(even){color:#96a099;font-size:18px}.section{padding-block:88px}.section-number{color:var(--accent);margin-bottom:23px}h2{font-size:clamp(31px,3.2vw,44px);line-height:1.15;font-weight:500}.idea{display:grid;grid-template-columns:1fr 1fr;gap:80px}.idea-copy{padding-top:4px;font-size:16px;color:var(--muted)}.idea-copy p+p{margin-top:17px}.text-link{margin-top:19px;display:inline-flex;gap:24px;align-items:center;font-size:13px;font-weight:700;min-height:44px;color:var(--ink)}.system-section{background:#e9ece7}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px}.section-heading>p{color:var(--muted);font-size:13px;line-height:1.65;padding-bottom:4px}.steps{list-style:none;margin:45px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps li{border-top:1px solid #b9c5bd;padding-top:18px}.step-number{font-family:Consolas,'Courier New',monospace;font-size:12px;color:var(--muted);display:flex;justify-content:space-between}.step-number span{font-size:17px}h3{font-weight:500;letter-spacing:-.02em}.steps h3{font-size:22px;margin-top:29px}.steps p{color:#475961;font-size:14px;margin-top:12px;line-height:1.7}.publication{display:grid;grid-template-columns:160px 1fr 40px;gap:30px;padding-block:30px;border-top:1px solid var(--line);transition:color .18s}.publication:first-of-type{margin-top:42px}.publication:last-of-type{border-bottom:1px solid var(--line)}.publication:hover{color:var(--accent)}.publication-year{font-size:20px;letter-spacing:-.03em}.publication-year span{display:block;font-size:10px;letter-spacing:.02em;color:var(--muted);margin-top:8px}.publication h3{font-size:20px;line-height:1.4;max-width:690px;text-wrap:pretty}.publication p{font-size:13px;color:var(--muted);margin-top:10px}.publication p.authors{font-size:11px;margin-top:5px}.publication-arrow{font-size:27px;justify-self:end;align-self:start}.research-note{font-size:12px;color:var(--muted);margin-top:23px;max-width:740px}.footer{border-top:1px solid var(--line);padding-block:32px 40px;display:flex;align-items:center;justify-content:space-between;gap:28px}.footer-brand{font-size:19px}.footer p{font-size:11px;line-height:1.6;color:var(--muted)}.back-top{font-size:12px;display:flex;align-items:center;min-height:44px;gap:25px}.skip-link{position:fixed;top:10px;left:10px;padding:14px;background:var(--white);z-index:2;transform:translateY(-150%)}.skip-link:focus{transform:none}
@media(min-width:1600px){.hero{gap:80px;padding-block:90px 80px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:30px}.hero .eyebrow{font-size:9px}.concept{padding:20px 16px}.concept figcaption{font-size:11px}.mono{font-size:8px}.idea{gap:45px}.steps{gap:20px}.section-heading>p{max-width:230px}.publication{grid-template-columns:130px 1fr 25px;gap:22px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{min-height:84px;gap:20px}.brand{font-size:19px}.brand-mark{width:30px;height:30px;font-size:23px}nav{gap:20px;font-size:12px}nav a:first-child{display:none}.hero{grid-template-columns:1fr;padding-block:46px 38px;gap:35px}.hero .eyebrow{font-size:9px;letter-spacing:.07em}h1{font-size:clamp(45px,9vw,65px);margin-block:23px}.hero-description{font-size:15px;max-width:540px}.hero-caption{font-size:10px}.concept{width:100%;max-width:500px;justify-self:center;padding:22px}.concept-diagram{max-height:380px}.concept figcaption{font-size:12px}.concept .mono{font-size:9px}.focus-strip{gap:16px;padding-block:21px;font-size:10px}.focus-strip span:nth-child(even){font-size:14px}.section{padding-block:55px}.idea{grid-template-columns:1fr;gap:24px}.section-number{margin-bottom:16px}.idea-copy{font-size:15px}.section-heading{align-items:start;flex-direction:column;gap:20px}.section-heading>p{max-width:none}.steps{grid-template-columns:1fr 1fr;gap:30px 24px;margin-top:32px}.steps h3{margin-top:17px;font-size:21px}.steps p{font-size:13px}.publication{grid-template-columns:1fr 25px;gap:14px;padding-block:24px}.publication-year{grid-column:1/-1;display:flex;gap:15px;align-items:center;font-size:17px}.publication-year span{margin-top:0;font-size:10px}.publication h3{font-size:18px}.publication p{font-size:12px}.publication p.authors{font-size:10px}.publication:first-of-type{margin-top:30px}.footer{flex-wrap:wrap;padding-block:26px}.footer p{order:3;flex-basis:100%}.footer-brand{font-size:18px}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}nav{gap:13px;font-size:11px}.brand{gap:8px;font-size:17px}.hero .eyebrow{font-size:8px}.focus-strip{gap:10px;font-size:9px}.concept{padding:18px 15px}.concept figcaption{font-size:11px}.concept .mono{font-size:8px}.steps{gap:26px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
