.systems-composition{position:relative;isolation:isolate;height:100svh;min-height:720px;max-height:1100px;overflow:clip;background:#4e7973;color:#fff5e5;margin-top:20px}.systems-composition .hero-media{position:absolute;inset:0;overflow:hidden;background:linear-gradient(115deg,#6e352d,#ef7958 39%,#f2d0a2 76%,#60dce4)}.systems-composition canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.systems-composition .hero-fallback{position:absolute;height:127%;width:auto;top:50%;left:27%;transform:translate(-50%,-50%) scaleY(-1);transition:opacity .5s}.systems-composition .webgl-ready .hero-fallback{opacity:0}.systems-transition{position:absolute;inset:0 0 auto;height:160px;z-index:1;background:linear-gradient(#07100e,transparent);pointer-events:none}.systems-copy{position:absolute;left:54%;right:6%;top:50%;transform:translateY(-43%)}.systems-eyebrow{font-size:12px;letter-spacing:.14em;color:#fff6e0c7;margin:0 0 26px}.systems-copy h2{font-size:clamp(38px,3.6vw,66px);font-weight:400;letter-spacing:-.045em;line-height:1.09;margin:0}.copy-placeholder{margin-top:44px;border-top:1px solid #fff5df40;padding-top:24px;max-width:460px}.copy-placeholder span{font-size:14px;letter-spacing:.02em}.copy-placeholder p{font-size:18px;line-height:1.5;color:#fff5e5a6;margin:12px 0 0}.systems-composition .twin-toggle{position:absolute;left:26%;bottom:38px;transform:translateX(-50%);background:#293d3a55;border:1px solid #fff8df75;border-radius:40px;padding:14px 24px;backdrop-filter:blur(14px);color:#fff6e5;font:inherit;font-size:14px;cursor:pointer;min-height:46px}.systems-composition .twin-toggle:focus-visible{outline:2px solid #c3f5df;outline-offset:4px}.analytical-continuation{padding-top:40px}.analytical-continuation .precision{margin-top:35px}@media(max-width:760px){.systems-composition{height:auto;max-height:none;min-height:0;padding-top:600px}.systems-composition .hero-media{height:600px}.systems-composition .hero-fallback{left:50%}.systems-transition{height:95px}.systems-copy{position:relative;left:auto;right:auto;top:auto;transform:none;padding:30px 25px 45px;background:linear-gradient(#647769,#41635e)}.systems-copy h2{font-size:36px}.systems-eyebrow{font-size:11px;margin-bottom:20px}.copy-placeholder{margin-top:25px;padding-top:18px}.copy-placeholder p{font-size:16px}.systems-composition .twin-toggle{top:528px;bottom:auto;left:50%;white-space:nowrap}.analytical-continuation{padding-top:0}}@media(prefers-reduced-motion:reduce){.systems-composition *{transition:none!important}}

/* The original point portrait remains the foreground layer. */
.systems-copy{z-index:2;top:50%;transform:translateY(-50%);left:54%;right:5.5%}
.systems-eyebrow{font-size:13px;letter-spacing:.12em;margin-bottom:22px}
.systems-copy h2{font-size:clamp(42px,4.3vw,72px);line-height:1.03}
.modelling-narrative{margin-top:32px;max-width:560px;border-top:1px solid #fff3de38;padding-top:24px}
.modelling-step{font-size:19px;margin:0 0 17px;display:flex;gap:14px;align-items:center}
.modelling-step span{font-size:13px;color:#fff0d1ba;border:1px solid #fff0d147;width:32px;height:32px;display:grid;place-items:center;border-radius:50%}
.modelling-lead{font-size:clamp(18px,1.55vw,24px);line-height:1.48;margin:0 0 17px;color:#fff8ed}
.modelling-detail{font-size:clamp(16px,1.25vw,19px);line-height:1.55;margin:0;color:#fff4e4cc}
.network-caption{position:absolute;left:26%;bottom:13px;transform:translateX(-50%);font-size:11px;letter-spacing:.06em;color:#fff3de9e;margin:0;pointer-events:none}
.systems-composition .twin-toggle{bottom:43px;font-size:14px}
.network-motion{position:absolute;right:30px;bottom:24px;z-index:3;border:1px solid #fff2d83d;border-radius:30px;background:#1a373233;color:#fff2df;font:inherit;font-size:12px;padding:10px 15px;min-height:44px;cursor:pointer;display:flex;gap:9px;align-items:center}
.network-motion:focus-visible{outline:2px solid #dcf8e8;outline-offset:4px}
@media(min-width:761px) and (max-height:780px){.systems-copy h2{font-size:49px}.modelling-narrative{margin-top:25px;padding-top:20px}.modelling-lead{font-size:19px}.modelling-detail{font-size:16px}.systems-eyebrow{margin-bottom:18px}}
@media(max-width:760px){.systems-composition{padding-top:580px}.systems-composition .hero-media{height:580px}.systems-copy{position:relative;left:auto;right:auto;top:auto;transform:none;padding:30px 24px 90px}.systems-copy h2{font-size:42px}.systems-eyebrow{font-size:12px}.modelling-narrative{margin-top:27px}.modelling-lead{font-size:19px}.modelling-detail{font-size:17px}.systems-composition .twin-toggle{top:488px;bottom:auto}.network-caption{top:547px;bottom:auto;left:50%;white-space:nowrap}.network-motion{right:24px;bottom:23px}}

/* Keep the original point-only reveal separate from the network state. */
.systems-composition:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 34%,rgba(10,31,29,.22) 48%,rgba(10,31,29,.77) 64%,rgba(10,31,29,.85));z-index:1}
.systems-copy{z-index:3;min-height:435px;display:flex;flex-direction:column;justify-content:center}
.systems-eyebrow{color:#e6eee1}
.modelling-detail{color:#e3e8dd}
.systems-tabs{display:flex;gap:24px;margin-top:30px;border-bottom:1px solid #e8efe12b;width:fit-content}
.systems-tabs button{position:relative;font:inherit;font-size:16px;color:#bdc8bf;border:0;background:transparent;padding:12px 0 15px;min-height:48px;cursor:pointer}
.systems-tabs button[aria-selected="true"]{color:#fff9ea}
.systems-tabs button[aria-selected="true"]:after{content:"";position:absolute;bottom:-1px;height:2px;left:0;right:0;background:linear-gradient(90deg,#d4e9dd,#edd6b3,#ded8e9);border-radius:2px}
.systems-tabs button:focus-visible{outline:2px solid #deebcf;outline-offset:5px;border-radius:3px}
.modelling-narrative{margin-top:23px;border:0;padding:0;min-height:190px}
.modelling-narrative[hidden]{display:none}
.systems-composition .twin-toggle{inset:0 auto 0 0;left:0;top:0;bottom:0;width:52%;height:100%;transform:none;background:transparent;border:0;border-radius:0;backdrop-filter:none;padding:0;z-index:2;cursor:pointer}
.systems-composition .twin-toggle:disabled{cursor:progress}
.systems-composition .twin-toggle:focus-visible{outline-offset:-8px;outline:1px solid #f8ecd094;border-radius:22px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.portrait-invitation{position:absolute;left:64%;top:58%;width:38px;height:38px;border:1px solid #fff3d7a8;border-radius:50%;display:grid;place-items:center;background:#e5d7b40a;transition:opacity .5s;box-shadow:0 0 25px #edd5a318}
.portrait-invitation i{width:5px;height:5px;border-radius:50%;background:#fff2d7;box-shadow:0 0 12px #fff2d799}
.portrait-invitation:before,.portrait-invitation:after{content:"";position:absolute;inset:-1px;border:1px solid #fff2d78c;border-radius:50%;animation:portrait-invite 3s ease-out infinite}
.portrait-invitation:after{animation-delay:1.5s}
@keyframes portrait-invite{0%{transform:scale(.7);opacity:0}15%{opacity:.7}100%{transform:scale(2.1);opacity:0}}
.twin-pinned .portrait-invitation{opacity:0}
.portrait-status{position:absolute;left:26%;top:74%;transform:translateX(-50%);font-size:12px;color:#fff5df;background:#16352fa1;padding:8px 14px;border-radius:20px;z-index:3;pointer-events:none}
.systems-composition[aria-busy="false"] .portrait-status{display:none}
.network-caption{opacity:0;transition:opacity .5s;z-index:3;bottom:25px}
.systems-composition[data-view="modelling"] .network-caption{opacity:1}
.network-motion{z-index:4}
@media(max-width:760px){.systems-composition:after{display:none}.systems-copy{min-height:0;background:#1c3934;padding-bottom:90px}.systems-composition .twin-toggle{width:100%;height:580px;bottom:auto}.portrait-invitation{left:66%;top:52%}.systems-tabs{margin-top:24px;gap:27px}.modelling-narrative{min-height:0}.portrait-status{left:50%;top:490px;white-space:nowrap}.network-caption{top:547px;bottom:auto}.systems-copy h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){.portrait-invitation:before,.portrait-invitation:after{animation:none}.portrait-invitation:before{transform:scale(1.35);opacity:.3}}
.motion-paused .portrait-invitation:before,.motion-paused .portrait-invitation:after{animation-play-state:paused}
/* Keep the heading and state controls anchored when the explanation changes. */
@media(min-width:761px){.systems-copy{height:490px;min-height:0;justify-content:flex-start}}

/* Individualisation is a state of the same fixed desktop composition. */
#individualisation-panel[hidden]{display:none}
.systems-composition[data-view="individualisation"] .network-caption{opacity:1}
.individual-lead{font-size:17px;line-height:1.4;margin:17px 0 13px;color:#f1f2e9}
.data-sources{display:flex;gap:17px;margin:0 0 17px;flex-wrap:wrap}
.source-chip{display:flex;align-items:center;gap:7px;color:#d4ded2;font-size:12px;white-space:nowrap}
.source-chip svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.source-disc{width:30px;height:30px;display:grid;place-items:center;border:1px solid #d8e8d536;border-radius:50%;background:#e2efdb09}
.source-chip:nth-child(2) .source-disc{color:#e7c6af}.source-chip:nth-child(3) .source-disc{color:#b7d7db}
.pathway-rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:18px;overscroll-behavior-x:contain}
.pathway-rail::-webkit-scrollbar{display:none}
.pathway-card{flex:0 0 94%;min-width:0;box-sizing:border-box;scroll-snap-align:start;border:1px solid #e6e9d92e;border-radius:18px;background:linear-gradient(135deg,#d6e9dd0d,#e8d3b209);padding:20px 21px 15px;position:relative;overflow:hidden}
.pathway-card-top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}
.pathway-family{font-size:11px;letter-spacing:.09em;color:#c0d0c3;margin:0 0 7px;text-transform:uppercase}
.pathway-card h3{font-size:clamp(21px,1.8vw,28px);line-height:1.14;font-weight:400;letter-spacing:-.025em;margin:0;color:#fff7e6;max-width:285px}
.coverage{min-width:47px;text-align:right;color:#f4ead0;padding-top:4px}
.coverage strong{font-weight:400;font-size:26px;line-height:1}.coverage small{font-size:12px;color:#abbcaf}.coverage-label{display:block;font-size:10px;color:#b4c6b9;line-height:1.25;margin-top:5px;max-width:61px}
.pathway-summary{font-size:14px;line-height:1.45;color:#d7e1d6;margin:12px 0 13px;max-width:385px}
.pathway-inputs{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px}
.input-token{font-size:11px;line-height:1.4;color:#d2e7d8;border:1px solid #cfe3d928;background:#d3e8da08;padding:4px 7px;border-radius:6px;display:flex;align-items:center;gap:5px}
.input-token:before{content:"";width:4px;height:4px;background:#cce6c8;border-radius:50%}.input-token.context:before{background:#a7cdda}
.pathway-reaction{border-top:1px solid #dae8d121;padding-top:12px;display:grid;grid-template-columns:1fr 40px 1fr;gap:6px;align-items:center;color:#faf0da;font-size:14px;text-align:center;min-height:38px}
.reaction-arrow{font-size:21px;color:#e3d9b4}
.reaction-note{font-size:10px;line-height:1.4;letter-spacing:.015em;color:#b9c9bb;text-align:center;margin:8px 0 7px}
.pathway-progress{height:2px;background:#dae8de12;position:absolute;bottom:0;left:0;right:0}
.pathway-progress i{display:block;height:100%;transform-origin:left;transform:scaleX(var(--progress,0));background:linear-gradient(90deg,#b4ded5,#e9d5a7,#e9b9ba,#c4bfe0,#bde4d3)}
.pathway-navigation{display:flex;align-items:center;gap:12px;height:40px;margin-top:5px}
.pathway-dots{display:flex;gap:2px;margin-right:auto}.pathway-dots button{padding:13px 6px;background:none;border:0;cursor:pointer;min-width:25px;min-height:38px}.pathway-dots button:after{content:"";display:block;width:5px;height:5px;border-radius:50%;background:#b8cabc5c;transition:width .3s}.pathway-dots button[aria-current="true"]:after{width:19px;border-radius:6px;background:linear-gradient(90deg,#c0dfd0,#e8cdb7,#c3d6df)}
.pathway-count{font-size:11px;letter-spacing:.08em;color:#c0cec0}.pathway-auto,.pathway-next{height:36px;width:36px;border:1px solid #dcebd52c;border-radius:50%;background:#cce0d307;color:#e8f0df;cursor:pointer;font:inherit;font-size:14px}.pathway-next{font-size:20px}
.pathway-method{display:flex;align-items:center;gap:10px;font:inherit;font-size:12px;background:none;border:0;color:#cfddd0;padding:3px 0 8px;cursor:pointer}
.focus-caption{position:absolute;left:5%;right:52%;bottom:52px;z-index:3;text-align:center;pointer-events:none;opacity:0;transition:opacity .5s}
.systems-composition[data-view="individualisation"] .focus-caption{opacity:1}
.focus-overline{display:block;font-size:10px;letter-spacing:.12em;color:#cde4d9;margin-bottom:8px}.focus-molecules{font-size:17px;color:#fff5dc;text-shadow:0 2px 12px #183b35}
.pathway-evidence{max-width:580px;width:calc(100% - 36px);box-sizing:border-box;max-height:85svh;overflow:auto;background:#14342f;color:#e6eddf;border:1px solid #b7d2be47;border-radius:24px;padding:36px;box-shadow:0 25px 100px #0008}.pathway-evidence::backdrop{background:#02140ec4;backdrop-filter:blur(10px)}.pathway-evidence h3{font-size:32px;font-weight:400;line-height:1.1;margin:14px 0 20px}.evidence-kicker{font-size:11px;letter-spacing:.12em;color:#b9d8c3}.evidence-content p{font-size:15px;line-height:1.6}.evidence-content a{color:#d5e9c7}.evidence-close{position:absolute;right:16px;top:14px;width:36px;height:36px;border:1px solid #c4ddc83d;border-radius:50%;background:transparent;color:#f6f2de;font-size:24px;cursor:pointer}
@media(min-width:761px){.systems-copy{height:610px;top:50%;left:54%;right:5%}.systems-copy h2{font-size:clamp(39px,3.8vw,62px);line-height:1.05}.systems-eyebrow{margin-bottom:15px}.systems-tabs{margin-top:20px;gap:22px}.systems-tabs button{font-size:14px;padding:10px 0 11px;min-height:42px}}
@media(min-width:761px) and (max-height:800px){.systems-copy{height:610px}.systems-copy h2{font-size:42px}.systems-eyebrow{font-size:11px;margin-bottom:12px}.systems-tabs{margin-top:15px}.individual-lead{font-size:16px;margin:13px 0 10px}.data-sources{margin-bottom:12px}.pathway-card{padding:17px 18px 13px}.pathway-card h3{font-size:23px}.pathway-summary{margin:10px 0;font-size:13px}.pathway-inputs{margin-bottom:10px}.pathway-reaction{font-size:13px;padding-top:10px}.modelling-narrative{margin-top:28px}}
@media(max-width:760px){.systems-copy{padding-left:22px;padding-right:0}.systems-copy h2,.systems-eyebrow,.systems-tabs,.modelling-narrative,.individual-lead,.data-sources,.pathway-navigation,.pathway-method{margin-right:22px}.systems-tabs{gap:22px}.systems-tabs button{font-size:14px}.pathway-card{flex-basis:91%;padding:20px}.pathway-rail{border-radius:18px 0 0 18px;padding-right:22px;scroll-padding-left:0}.pathway-card h3{font-size:25px}.individual-lead{margin-top:23px}.data-sources{gap:10px}.source-chip{font-size:11px;gap:5px}.focus-caption{left:8%;right:8%;top:486px;bottom:auto}.focus-molecules{font-size:16px}.focus-overline{font-size:9px}.network-caption{top:549px}.pathway-navigation{margin-top:10px}.pathway-method{font-size:12px;margin-top:6px}}
/* Readable scientific labels, including at compact desktop heights. */
.source-chip{font-size:14px}.pathway-summary{font-size:15px}.input-token{font-size:12px}.reaction-note{font-size:12px}.pathway-reaction{font-size:15px}.pathway-card h3{font-size:25px}.coverage-label{font-size:11px}.pathway-method{font-size:13px}
.systems-composition[data-view="individualisation"] .network-caption{opacity:0}
@media(max-width:760px){.source-chip{font-size:12px}.data-sources{gap:11px}.pathway-card h3{font-size:24px}.pathway-summary{font-size:15px}.pathway-reaction{font-size:14px}.reaction-note{font-size:11px}}
/* V8: observation provenance, local detail and bounded research scenarios. */
#simulation-panel[hidden]{display:none}
.systems-composition[data-view="simulation"] .focus-caption{opacity:1}
.source-chip{font-size:12px;gap:6px}.data-sources{gap:10px}.source-disc{width:26px;height:26px;flex-shrink:0}
.observation-label{display:flex;align-items:center;gap:9px;font-size:12px;color:#eef0dc;margin:10px 0 6px}.observation-label small{font-size:10px;color:#afc3b9}
.model-estimate{display:flex;gap:13px;align-items:baseline;margin:0 0 10px;border-top:1px solid #e2eddb20;padding-top:10px}.model-estimate>span{font-size:12px;white-space:nowrap;color:#e5dab8}.model-estimate p{font-size:12px;line-height:1.4;color:#b8cdc3;margin:0}
.pathway-summary{margin:9px 0}.pathway-reaction{padding-top:9px;min-height:29px}.pathway-card h3{max-width:none}.pathway-inputs{margin-bottom:10px}.reaction-note{margin:5px 0}.pathway-card{padding:18px 20px 14px}
.simulation-card{border:1px solid #e6e9d92e;border-radius:20px;padding:20px;background:linear-gradient(130deg,#d6e9dd0d,#e8d3b209)}
.simulation-card h3{font-size:29px;font-weight:400;line-height:1.07;margin:5px 0 10px;letter-spacing:-.03em}.simulation-description{font-size:15px;line-height:1.5;color:#d7e1d6;margin:0 0 13px}.scenario-switch{display:flex;gap:5px;padding:4px;background:#081f1952;border:1px solid #deecd722;border-radius:30px}.scenario-switch button{flex:1;border:0;background:transparent;border-radius:24px;padding:10px 8px;color:#bfcec4;font-size:13px;min-height:42px}.scenario-switch button[aria-pressed="true"]{background:linear-gradient(110deg,#cbe7d826,#e0cfb333,#c7cfed22);box-shadow:inset 0 0 0 1px #dbebd535;color:#fff4dc}
.simulation-chart{display:block;width:100%;height:auto;margin-top:13px;overflow:visible}.simulation-chart text{font:11px Arial;fill:#b0c7bd}.chart-grid{fill:none;stroke:#d7e8de12;stroke-width:1}.reference-band{fill:#d9c39912}.reference-curve{fill:none;stroke:#d6c296;stroke-width:2;stroke-dasharray:5 6}.changed-response{opacity:.12;transition:opacity .7s}.scenario-band{fill:url(#scenario-fill)}.scenario-curve{fill:none;stroke:#b9eadc;stroke-width:2.5;stroke-dasharray:650;stroke-dashoffset:650;transition:stroke-dashoffset 1.4s ease}.systems-composition[data-intervention="1"] .changed-response{opacity:1}.systems-composition[data-intervention="1"] .scenario-curve{stroke-dashoffset:0}
.chart-key{display:flex;flex-wrap:wrap;gap:7px 13px;font-size:10px;color:#c1d4c9}.chart-key span{display:flex;align-items:center;gap:5px}.chart-key i{width:11px;height:2px;background:#d6c296}.chart-key span:nth-child(2) i{background:#b9eadc}.simulation-status{font-size:11px;color:#b4cbbf;min-height:27px;line-height:1.4;margin:10px 0 0}.simulation-method{margin-top:13px}
.longitudinal-section{padding:105px 5.5% 85px;background:radial-gradient(ellipse at 25% 80%,#18352b77,transparent 65%),#07100e;border-top:1px solid #ceddd11a}
.longitudinal-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:8%;margin-bottom:48px}.longitudinal-head h2{font-size:clamp(46px,5vw,76px);letter-spacing:-.045em;font-weight:400;line-height:1.04;margin:0}.longitudinal-head h2 span{color:#a7cbb9}.longitudinal-head>p{font-size:21px;line-height:1.55;color:#b6c9bd;max-width:470px;margin:0 0 5px}
.longitudinal-stage{display:grid;grid-template-columns:1.4fr 1fr;gap:55px;align-items:center}.longitudinal-visual{padding:36px 30px;border-radius:24px;border:1px solid #e1ecd21c;background:linear-gradient(135deg,#c7ddbd0c,#bbe0ce02)}.longitudinal-visual svg{width:100%;height:auto;display:block;margin:25px 0 12px}.long-grid{stroke:#d5e7d918;fill:none}.long-band{fill:url(#long-band);opacity:.1}.long-model{stroke:#bfd7c5;stroke-width:2;fill:none;stroke-dasharray:5 7}.long-observed{stroke:#b3d6c133;stroke-width:1;fill:none}.time-mark circle{fill:#bfdcd0}.time-mark text{fill:#bbccbf;font:16px Arial}.observation-halo{fill:transparent!important;stroke:#c5ecda;stroke-width:1;opacity:0;transition:opacity .6s}.longitudinal-section[data-time="0"] .time-mark[data-time="0"] .observation-halo,.longitudinal-section[data-time="1"] .time-mark[data-time="1"] .observation-halo,.longitudinal-section[data-time="2"] .time-mark[data-time="2"] .observation-halo{opacity:1;animation:observe-pulse 3s ease-in-out infinite}
@keyframes observe-pulse{50%{stroke-opacity:.3}}
.long-legend{display:flex;justify-content:space-between;gap:10px;color:#b6c9bd;font-size:12px}.long-caption{font-size:11px;color:#829f90;margin:20px 0 0}.long-cards{display:flex;flex-direction:column;gap:12px}.long-card{padding:22px 24px;text-align:left;border:1px solid #dbe6cd1d;border-radius:18px;background:#c3dbc703;color:#e2ecde;transition:background .4s,border-color .4s}.long-card[aria-pressed="true"]{background:linear-gradient(120deg,#cbe4d011,#e4d4b30b);border-color:#cee0ca5a}.long-card>span{font-size:11px;letter-spacing:.1em;color:#9bbaa8}.long-card h3{font-size:23px;font-weight:400;letter-spacing:-.025em;margin:8px 0}.long-card p{font-size:15px;color:#b0c3b6;line-height:1.5;margin:0}.long-footer{display:flex;align-items:center;justify-content:space-between;margin:25px 0}.long-footer p{font-size:14px;line-height:1.5;color:#9eb9a7;max-width:690px;margin:0}.long-position{font-size:12px;color:#bacdbd;white-space:nowrap}.long-position span{margin-left:14px}.long-method{border-top:1px solid #d1e1d423;margin-top:30px;padding-top:22px;max-width:900px}.long-method summary{font-size:16px;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.long-method p{font-size:15px;line-height:1.6;color:#b1c5b6}.long-method a{font-size:14px;color:#cfe5d1;text-decoration:underline}
@media(min-width:761px){.systems-composition{min-height:820px}.systems-copy{height:710px}.systems-tabs{gap:19px}.systems-tabs button{font-size:14px}.simulation-card{max-width:510px}}
@media(max-width:760px){.systems-tabs{gap:17px;max-width:calc(100vw - 22px);overflow-x:auto;scrollbar-width:none;white-space:nowrap;margin-right:0;padding-right:22px}.systems-tabs button{font-size:13px;flex-shrink:0}.data-sources{gap:9px 12px}.source-chip{font-size:11px}.source-disc{width:24px;height:24px}.model-estimate{display:block}.model-estimate p{margin-top:5px}.simulation-card{margin-right:22px;padding:19px}.simulation-method{margin-right:22px}.longitudinal-section{padding:70px 0}.longitudinal-head{display:block;margin:0 24px 30px}.longitudinal-head h2{font-size:45px}.longitudinal-head>p{font-size:19px;margin-top:22px}.longitudinal-stage{display:block}.longitudinal-visual{padding:24px 17px;margin:0 24px 22px}.longitudinal-visual svg{margin:16px 0}.long-legend{font-size:10px;line-height:1.5}.long-cards{flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;gap:13px;padding:0 24px;scrollbar-width:none}.long-card{flex:0 0 calc(100vw - 68px);scroll-snap-align:start;min-width:0;padding:23px}.long-card h3{font-size:25px}.long-footer{margin:24px;gap:18px;align-items:flex-start}.long-footer p{font-size:12px}.long-method{margin:30px 24px 0}.long-method summary{font-size:15px}.long-method p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.scenario-curve{stroke-dashoffset:0}.observation-halo{animation:none!important}}
button.source-chip{font-family:inherit;background:none;border:0;padding:0;min-height:36px;text-align:left;cursor:pointer}button.source-chip:hover{color:#fff7e4}button.source-chip:focus-visible{outline:1px solid #d4ebd8;outline-offset:4px;border-radius:12px}
@media(max-width:760px){.long-cards{scroll-padding-left:24px}.simulation-chart text{font-size:16px}.chart-key{font-size:11px}.simulation-status{font-size:12px}.long-legend{font-size:11px}}
