:root{color-scheme:light;--ink:#182a3f;--muted:#526274;--blue:#194687;--blue-light:#e6f2ff;--orange:#a3472e;--line:#d6e0e9;--paper:#fff;--serif:Georgia,"Times New Roman",serif;--sans:"Avenir Next","Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:var(--blue);text-underline-offset:4px}
a:hover{text-decoration-thickness:2px}
button,a{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #b75331;outline-offset:5px}
button{font:inherit}
p,h1,h2,h3,figure{margin:0}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.skip-link{position:fixed;top:-80px;left:20px;padding:10px 20px;background:white;z-index:20}
.skip-link:focus{top:10px}
.site-header{position:sticky;top:0;z-index:10;background:#ffffffed;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.header-inner{width:min(1320px,calc(100% - 80px));height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:9px;font-weight:750;font-size:20px;letter-spacing:.045em;text-decoration:none;color:var(--blue)}
.brand img{width:36px;height:36px;object-fit:contain}
nav{display:flex;align-items:center;gap:32px}
nav a,.header-code{text-decoration:none;font-size:14px;font-weight:600;color:var(--muted)}
nav a:hover,.header-code:hover{color:var(--blue)}
.header-code{color:var(--blue);display:flex;gap:7px;align-items:center}
.hero{background:var(--blue-light);border-bottom:1px solid #d0e3f6}
.hero-inner{max-width:1120px;margin:auto;padding:49px 36px 52px;text-align:center}
.hero-identity{display:flex;justify-content:center;align-items:center;gap:13px;margin-bottom:21px;text-align:left}
.hero-identity img{width:68px;height:68px;object-fit:contain}
.hero-identity strong{display:block;font-size:25px;letter-spacing:.1em;line-height:1.25;color:var(--blue)}
.hero-identity p span{display:block;font-size:13px;color:#476583;margin-top:2px}
h1{font-family:var(--serif);font-weight:500;font-size:clamp(2.5rem,4.8vw,4rem);line-height:1.09;letter-spacing:-.04em;color:#153e76}
h1>span{display:block;font-size:clamp(1.45rem,2.7vw,2.15rem);line-height:1.25;letter-spacing:-.025em;margin-top:13px}
.tldr{font-size:18px;line-height:1.65;max-width:850px;margin:25px auto 26px;color:#3b5572;text-wrap:pretty}
.tldr .type-text,.tldr .data-text{font-weight:600}
.authors{max-width:1000px;margin:29px auto 0;display:flex;justify-content:center;gap:5px 23px;flex-wrap:wrap;font-size:15px;font-weight:500}
.authors span{white-space:nowrap}
sup{font-size:.64em;vertical-align:super;line-height:0;margin-left:2px}
.affiliations{display:flex;flex-wrap:wrap;justify-content:center;gap:5px 27px;margin-top:16px;font-size:14px;color:#3b5572}
.author-note{font-size:12px;color:#536d85;margin-top:6px}
.author-note span{margin-inline:7px}
.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px}
.button{min-height:46px;padding:11px 20px;border:1px solid transparent;border-radius:6px;display:inline-flex;justify-content:center;align-items:center;gap:10px;font-size:14px;font-weight:650;text-decoration:none;transition:background .18s,transform .18s}
.button:hover{transform:translateY(-2px)}
.primary{background:var(--blue);color:white;box-shadow:0 3px 6px #19468712}
.primary:hover{background:#12396e}
.format{font-size:11px;font-weight:600;border:1px solid #8aa5ca;border-radius:3px;padding:0 4px;line-height:1.6;letter-spacing:.035em}
.secondary{background:#ffffffb8;color:var(--blue);border-color:#a9c2dd}
.secondary:hover{background:#fff}
.text-button{color:var(--blue)}
.text-button:hover{background:#d8e9fb}







.section{padding-block:88px;display:grid;grid-template-columns:1fr 1.85fr;gap:80px}
.eyebrow{color:#516c87;letter-spacing:.13em;text-transform:uppercase;font-size:12px;font-weight:650;margin-bottom:18px}
h2{font-family:var(--serif);font-size:clamp(1.8rem,2.7vw,2.45rem);font-weight:500;letter-spacing:-.03em;line-height:1.2}
.lead{font-size:22px;line-height:1.55;letter-spacing:-.015em;color:#233e5a;margin-bottom:19px}
.overview-content>p:not(.lead){color:var(--muted);margin-top:15px}
.data-text{color:var(--orange)}.type-text{color:var(--blue)}
.abstract{border-top:1px solid var(--line);margin-top:25px}
.abstract summary{padding:16px 0 5px;display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;color:var(--blue);font-weight:600;font-size:14px}
.abstract summary::-webkit-details-marker{display:none}
.abstract summary span{font-size:21px;font-weight:400;transition:transform .2s}
.abstract[open] summary span{transform:rotate(45deg)}
.abstract p{padding-top:15px;color:var(--muted);font-size:16px}
.method-section{background:#f4f8fc;padding-block:75px 70px;border-block:1px solid #e2eaf3}
.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:35px}
.strata-key{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:5px;font-size:13px;font-weight:600}
.strata-key span{padding:6px 12px;border-radius:4px}
.type-key{background:#e0ecf8;color:#265e99}.data-key{background:#f8e4db;color:#9c4a33}
.wide-figure{padding:27px 28px 0;border:1px solid #d8e2ed;border-radius:8px;background:white}
.wide-figure>a{display:block}
.wide-figure img{width:100%}
figcaption{font-size:13px;line-height:1.65;color:var(--muted)}
.wide-figure figcaption,.results-figure figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:32px;padding:19px 0}
figcaption a{white-space:nowrap;text-decoration:none;color:var(--blue)}
.method-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:35px}
.step-number{color:#637a92;font-size:12px;letter-spacing:.09em;border-top:2px solid #a9c8e6;display:block;padding-top:16px;margin-bottom:8px}
.method-steps article:last-child .step-number{border-color:#d99a82}
h3{font-size:17px;line-height:1.5;font-weight:650;letter-spacing:-.015em;margin-bottom:9px}
.method-steps p{font-size:15px;line-height:1.7;color:var(--muted)}
.semantics-section{padding-block:88px;display:grid;grid-template-columns:1fr 1.7fr;gap:60px;align-items:center}
.semantics-copy h2{margin-bottom:22px}.semantics-copy>p:not(.eyebrow){margin-top:15px;color:var(--muted)}
.semantics-copy .source-note{font-size:12px;padding-top:3px}
.semantics-figure{margin:0;padding:23px;border:1px solid var(--line);border-radius:8px}
.semantics-figure img{width:100%}
.semantics-figure figcaption{margin-top:17px}
.results-section{border-block:1px solid #dce6f0;padding-block:75px;background:#f5f9fd}
.section-intro{font-size:15px;max-width:420px;color:var(--muted);padding-bottom:3px}
.results-figure{padding:27px 28px 0;background:#fff;border:1px solid #d8e2ed;border-radius:8px}
.results-figure img{width:100%}
.results-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;margin-top:26px}
.results-bottom>p:first-child{font-size:19px;line-height:1.65;letter-spacing:-.015em}
.results-bottom strong{color:var(--blue);font-weight:650}
.protocol-note{font-size:14px;color:var(--muted);line-height:1.75}
.citation-section{grid-template-columns:1fr 2fr;gap:55px}
.citation-section .section-heading>p:last-child{margin-top:24px;font-size:14px;color:var(--muted)}
.citation-section .section-heading>p:last-child a{display:inline-block;margin-top:3px}
.citation-panel{border:1px solid #d5e0ea;border-radius:7px;background:#f8fafc;min-width:0;position:relative;align-self:start}
.citation-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 20px;border-bottom:1px solid #dce5ed;font-size:14px;font-weight:600}
.citation-type{font-size:12px;font-weight:400;color:#607187;margin-left:5px}
#copy-citation{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid #c8d6e3;border-radius:4px;padding:5px 10px;color:var(--blue);font-size:13px;cursor:pointer;min-height:34px}
#copy-citation svg{width:14px;height:14px}
#copy-citation:hover{background:#e9f2fc}
pre{padding:20px;margin:0;font-size:12px;line-height:1.95;color:#314a64;overflow-x:auto;tab-size:2}
code{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
.copy-status{font-size:13px;color:var(--blue);padding:0 20px}
.copy-status:not(:empty){padding-bottom:13px}
.site-footer{border-top:1px solid var(--line);padding-block:27px 32px}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
.footer-affiliations{display:flex;align-items:center;gap:24px}
.footer-affiliations img{height:22px;width:auto}
.site-footer p,.site-footer a{font-size:12px;color:var(--muted);text-decoration:none}
.site-footer a{white-space:nowrap}
@media(min-width:1600px){.hero-inner{padding-block:58px 60px}}
@media(max-width:1050px){.section{gap:45px;grid-template-columns:1fr 1.7fr}.semantics-section{gap:35px;grid-template-columns:1fr 1.5fr}.section-top{gap:30px}.footer-inner{flex-wrap:wrap}.footer-inner>p{margin-left:auto}.section-intro{max-width:330px}}
@media(min-width:761px) and (max-width:950px){.authors{max-width:700px;font-size:14px}}
@media(max-width:760px){html{scroll-padding-top:115px}.wrap{width:calc(100% - 40px)}.header-inner{width:calc(100% - 36px);height:auto;min-height:68px;flex-wrap:wrap;gap:0 15px;padding:11px 0}.brand{font-size:18px}.brand img{width:30px;height:30px}nav{order:3;width:100%;justify-content:space-between;gap:15px;padding-top:11px}nav a{font-size:13px}.header-code{margin-left:auto;font-size:13px}.hero-inner{padding:35px 20px 38px}.hero-identity{margin-bottom:22px}.hero-identity img{width:59px;height:59px}.hero-identity strong{font-size:22px}.hero-identity p span{font-size:12px}h1{font-size:clamp(2rem,7.8vw,3.2rem);letter-spacing:-.04em}h1>span{font-size:clamp(1.45rem,5vw,2rem);margin-top:13px;line-height:1.3}.desktop-break{display:none}.tldr{font-size:16px;margin:22px auto}.authors{gap:6px 12px;font-size:12px;margin-top:25px;max-width:450px}.authors span{line-height:1.6}.affiliations{display:block;font-size:12px;margin-top:17px}.affiliations span{display:block}.author-note{font-size:12px}.hero-actions{gap:10px;margin-top:24px}.button{font-size:13px;min-height:44px;padding:10px 15px}.text-button{padding-inline:10px}.format{font-size:11px}.section{padding-block:55px;grid-template-columns:1fr;gap:25px}.eyebrow{margin-bottom:13px}h2{font-size:31px}.lead{font-size:20px}.method-section,.results-section{padding-block:50px}.section-top{display:block;margin-bottom:25px}.strata-key{margin-top:22px}.wide-figure,.results-figure{padding:14px 14px 0}.wide-figure figcaption,.results-figure figcaption{display:block;padding:15px 0;font-size:12px}figcaption a{display:block;margin-top:8px;font-size:13px}.method-steps{grid-template-columns:1fr;gap:23px;margin-top:25px}.method-steps p{font-size:16px}.method-steps h3{font-size:18px}.semantics-section{padding-block:55px;grid-template-columns:1fr;gap:26px}.semantics-copy h2{margin-bottom:20px}.semantics-figure{padding:16px}.section-intro{max-width:none;margin-top:20px;font-size:15px}.results-bottom{grid-template-columns:1fr;gap:17px;margin-top:22px}.results-bottom>p:first-child{font-size:18px}.protocol-note{font-size:14px}.citation-section{gap:27px}.citation-toolbar{padding:12px 15px}.citation-type{font-size:12px}pre{padding:16px;font-size:12px;line-height:1.85}.footer-inner{justify-content:flex-start;gap:20px}.footer-affiliations{gap:25px;width:100%}.footer-affiliations img{height:21px}.footer-inner>p{margin:0}.footer-inner>a{margin-left:auto}.site-footer{padding-block:27px}}
@media(max-width:380px){.authors{font-size:11px;gap:7px 9px}.hero-actions .text-button{width:100%}.citation-type{display:none}.footer-affiliations img{height:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
@media print{.site-header,.hero-actions,.skip-link,#copy-citation,.site-footer>a{display:none}.hero{background:white}.hero-inner{padding:20px}.section,.semantics-section{padding-block:25px}.wrap{width:100%}.method-section,.results-section{background:white;padding-block:25px}.abstract p{display:block}a{color:inherit}section,figure{break-inside:avoid}}

/* Core architecture comparison, adapted from the second design. */
#idea{padding-top:44px;padding-bottom:0;--blue-soft:#eef5fb;--orange-soft:#fdf2ec;--paper:#fbfcfe}
#idea .eyebrow{margin-bottom:0;font-size:11px;letter-spacing:.14em}
#idea h2,#idea h3{font-family:var(--sans);line-height:1.2;letter-spacing:-.035em}
#idea h2{font-weight:600}
#idea .idea-intro{text-align:center;margin-bottom:26px}
#idea .idea-intro h2{font-size:28px;margin-top:6px}
#idea .idea-intro>p:last-child{font-size:15px;margin-top:9px;color:var(--muted)}
#idea .comparison{border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;background:var(--paper)}
#idea .comparison article{padding:28px 30px 22px}
#idea .shared-panel{border-right:1px solid var(--line)}
#idea .strat-panel{background:#fff}
#idea .panel-label{font-size:10px;font-weight:700;letter-spacing:.13em;color:#738293}
#idea .panel-label.type-text{color:var(--blue)}
#idea .comparison h3{font-size:20px;margin:7px 0 22px}
#idea .shared-stream{border:1px solid #cbd6e2;background:white;border-radius:5px;padding:10px 14px;display:flex;gap:10px;justify-content:space-between;align-items:center}
#idea .shared-stream>span{font-size:12px;color:var(--muted)}
#idea .mixed-cells{display:flex;gap:3px}
#idea .mixed-cells i{display:block;width:12px;height:22px;background:#bcd1e3;border:1px solid #9ab6ce}
#idea .mixed-cells i:nth-child(2n){background:#e9bfad;border-color:#d6a087}
#idea .shared-path{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px;font-size:13px;color:var(--muted)}
#idea .shared-path b{font-weight:400;color:#93a2b2}
#idea .panel-explanation{font-size:12px;color:var(--muted);margin-top:23px;line-height:1.6}
#idea .strat-lanes{padding-top:0}
#idea .lane{display:grid;grid-template-columns:48px 17px 1fr 17px 1fr;align-items:center;gap:7px}
#idea .lane-label{font-weight:600;font-size:13px}
#idea .lane-node{border:1px solid;border-radius:4px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:12px;white-space:nowrap;height:52px;line-height:1.2}
#idea .lane-node small{font-size:10px;opacity:.85}
#idea .lane b{font-size:16px;font-weight:400;text-align:center}
#idea .type-lane{color:var(--blue)}
#idea .type-lane .lane-node{border-color:#aecbe2;background:var(--blue-soft)}
#idea .data-lane{color:var(--orange)}
#idea .data-lane .lane-node{border-color:#e1b8a7;background:var(--orange-soft)}
#idea .gate-bridge{display:grid;grid-template-columns:48px 17px 1fr 17px 1fr;gap:7px;height:20px;line-height:20px;color:var(--blue);text-align:center}
#idea .gate-bridge span{grid-column:5}
#idea .residual-update{display:flex;justify-content:center;align-items:baseline;gap:9px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px;margin-top:15px;font-size:13px;color:var(--orange)}
#idea .residual-update sub{font-size:9px}
#idea .figure-note{font-size:12px;color:var(--muted);line-height:1.65;margin-top:15px}
#idea .figure-note a{margin-left:9px;white-space:nowrap}
@media(max-width:950px){
 #idea .comparison article{padding:24px}
 #idea .mixed-cells i{width:9px}
 #idea .lane,#idea .gate-bridge{grid-template-columns:37px 12px 1fr 12px 1fr;gap:4px}
 #idea .lane-node{font-size:10px}
}
@media(max-width:760px){
 #idea{padding-top:34px}
 #idea .idea-intro h2{font-size:24px;margin-top:9px}
 #idea .idea-intro>p:last-child{font-size:13px}
 #idea .comparison{grid-template-columns:1fr}
 #idea .comparison article{padding:23px 24px}
 #idea .shared-panel{border-right:0;border-bottom:1px solid var(--line)}
 #idea .comparison h3{font-size:19px;margin-bottom:18px}
 #idea .shared-path{margin-top:14px}
 #idea .panel-explanation{margin-top:18px}
 #idea .mixed-cells i{width:13px}
 #idea .lane,#idea .gate-bridge{grid-template-columns:43px 16px 1fr 16px 1fr;gap:6px}
 #idea .lane-node{font-size:11px}
 #idea .figure-note{font-size:10px}
 #idea .figure-note a{margin-left:0;white-space:normal}
}
@media(max-width:380px){
 #idea .comparison article{padding:20px}
 #idea .lane,#idea .gate-bridge{grid-template-columns:35px 12px 1fr 12px 1fr;gap:3px}
 #idea .lane-node{font-size:10px}
}
