:root {
  --ink: #f1eee5;
  --muted: #929793;
  --dim: #5f6663;
  --night: #0d1112;
  --night-2: #141a1b;
  --night-3: #192121;
  --line: rgba(241, 238, 229, .14);
  --line-bright: rgba(241, 238, 229, .32);
  --acid: #c9ef54;
  --orange: #ff8a3d;
  --cyan: #5fe4d0;
  --blue: #7c9dff;
  --mono: 'DM Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --display: 'Space Grotesk', 'Inter', sans-serif;
  --gutter: 5vw;
  --content: 1240px;
  --ease: cubic-bezier(.2, .8, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { background: var(--night); scroll-behavior: smooth; }
body { min-width: 320px; overflow-x: hidden; background: var(--night); color: var(--ink); font-family: var(--display); line-height: 1.55; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button, input { color: inherit; font: inherit; }
button { border: 0; }

.site-noise { position: fixed; inset: 0; z-index: 20; pointer-events: none; opacity: .035; mix-blend-mode: screen; background: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.grid-field { position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: .42; background-image: linear-gradient(rgba(241,238,229,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(241,238,229,.035) 1px, transparent 1px); background-size: 80px 80px; mask-image: linear-gradient(to bottom, black, transparent 82%); }
.page-width { position: relative; z-index: 1; width: min(var(--content), calc(100vw - 2 * var(--gutter))); margin-inline: auto; }

body.motion-ready .reveal-on-scroll { opacity: 0; transform: translateY(28px); transition: opacity .7s var(--ease), transform .7s var(--ease); transition-delay: var(--reveal-delay, 0ms); }
body.motion-ready .reveal-on-scroll.is-visible { opacity: 1; transform: translateY(0); }

.lab-nav { position: fixed; top: 18px; left: 50%; z-index: 30; display: flex; align-items: center; justify-content: space-between; width: min(700px, calc(100vw - 40px)); min-height: 54px; padding: 0 20px 0 24px; transform: translateX(-50%); border: 1px solid rgba(241,238,229,.24); border-radius: 999px; background: rgba(13,17,18,.76); box-shadow: 0 18px 60px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.1); backdrop-filter: blur(24px) saturate(1.35); -webkit-backdrop-filter: blur(24px) saturate(1.35); }
.nav-logo { font-size: 16px; font-weight: 700; letter-spacing: .04em; }
.nav-logo span { color: var(--orange); }
.nav-links { display: flex; gap: 30px; }
.nav-links a, .nav-back { color: var(--muted); font: 11px var(--mono); transition: color .25s ease; }
.nav-links a:hover, .nav-back:hover, .nav-links .active { color: var(--ink); }
.nav-links .active::after { display: inline-block; width: 4px; height: 4px; margin: 0 0 2px 6px; border-radius: 50%; background: var(--acid); content: ''; }
.nav-back { display: flex; align-items: center; gap: 7px; }
.nav-back span { color: var(--acid); font-size: 17px; line-height: 0; }

.lab-hero { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(240px, .7fr); gap: 9vw; align-items: end; min-height: 680px; padding: 180px 0 108px; }
.hero-copy { animation: rise-in .8s var(--ease) both; }
.eyebrow, .section-index, .stepper-label, .step-kicker, .signal-kicker { color: var(--muted); font: 11px var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.eyebrow-dot { display: inline-block; width: 7px; height: 7px; margin: 0 9px 1px 0; border-radius: 50%; background: var(--acid); box-shadow: 0 0 16px rgba(201,239,84,.55); }
.hero-copy h1 { margin: 30px 0 30px; font-size: clamp(82px, 13vw, 180px); font-weight: 500; letter-spacing: -.085em; line-height: .8; }
.hero-copy h1 em, h2 em { color: var(--acid); font-style: normal; }
.hero-lede { max-width: 540px; font-size: clamp(20px, 2.4vw, 31px); letter-spacing: -.045em; line-height: 1.25; }
.hero-note { margin-top: 16px; color: var(--muted); font: 11px var(--mono); }
.hero-signal { display: grid; grid-template-columns: 26px 1fr; gap: 14px; align-items: start; padding: 0 0 2px 26px; border-left: 1px solid var(--line-bright); animation: rise-in .8s var(--ease) .15s both; }
.signal-line { position: relative; display: block; width: 10px; height: 10px; margin-top: 3px; border: 1px solid var(--acid); border-radius: 50%; }
.signal-line::after { position: absolute; inset: 3px; border-radius: 50%; background: var(--acid); content: ''; }
.signal-kicker { display: block; margin-bottom: 10px; font-size: 9px; }
.hero-signal strong { font-size: 17px; font-weight: 500; }
.signal-meta { grid-column: 2; display: flex; justify-content: space-between; padding-top: 35px; color: var(--dim); font: 10px var(--mono); }
.signal-meta span:first-child { color: var(--orange); }
@keyframes rise-in { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }

.lab-section { padding: 128px 0 0; }
.section-heading { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr); gap: 9vw; align-items: end; margin-bottom: 58px; }
.section-heading.compact { margin-bottom: 56px; }
.section-index { margin-bottom: 22px; color: var(--acid); font-size: 10px; }
h2 { font-size: clamp(52px, 8vw, 108px); font-weight: 500; letter-spacing: -.085em; line-height: .84; }
.section-intro { max-width: 430px; padding-bottom: 3px; color: var(--muted); font-size: 15px; line-height: 1.8; }
.deployment-strip { display: flex; align-items: center; gap: 16px; overflow-x: auto; padding: 17px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--muted); font: 10px var(--mono); white-space: nowrap; }
.deployment-strip i { color: var(--orange); font-style: normal; }

.stepper { margin-top: 34px; border: 1px solid var(--line); background: rgba(20,26,27,.7); }
.stepper-head, .stepper-footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 22px; border-bottom: 1px solid var(--line); }
.stepper-count { color: var(--muted); font: 11px var(--mono); }
.stepper-count span:first-child { color: var(--acid); }
.step-indicators { display: grid; grid-template-columns: auto minmax(24px,1fr) auto minmax(24px,1fr) auto minmax(24px,1fr) auto; align-items: center; gap: 12px; padding: 25px 22px 24px; border-bottom: 1px solid var(--line); }
.step-indicator { display: flex; align-items: center; gap: 9px; min-width: max-content; padding: 0; background: transparent; color: var(--muted); cursor: pointer; text-align: left; transition: color .25s ease; }
.step-indicator span { display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid var(--line-bright); border-radius: 50%; color: var(--muted); font: 10px var(--mono); transition: background .25s ease, border-color .25s ease, color .25s ease; }
.step-indicator b { font: 10px var(--mono); white-space: nowrap; }
.step-indicator:hover, .step-indicator.active { color: var(--ink); }
.step-indicator.active span { border-color: var(--acid); background: var(--acid); color: var(--night); }
.step-indicator.complete span { border-color: var(--acid); color: var(--acid); }
.step-connector { height: 1px; background: var(--line); transition: background .3s ease; }
.step-connector.complete { background: rgba(201,239,84,.75); }
.step-viewport { position: relative; min-height: 335px; overflow: hidden; }
.step-panel { display: grid; grid-template-columns: minmax(0, .95fr) minmax(300px, 1.05fr); gap: 9vw; min-height: 335px; padding: 48px 7%; animation: step-in .4s var(--ease) both; }
.step-panel[hidden] { display: none; }
@keyframes step-in { from { opacity: 0; transform: translateX(28px); } to { opacity: 1; transform: translateX(0); } }
@keyframes step-in-back { from { opacity: 0; transform: translateX(-28px); } to { opacity: 1; transform: translateX(0); } }
.step-kicker { margin-bottom: 18px; color: var(--orange); font-size: 9px; }
.step-copy h3 { margin-bottom: 18px; font-size: clamp(30px, 4vw, 52px); font-weight: 500; letter-spacing: -.06em; line-height: 1; }
.step-copy > p:not(.step-kicker) { max-width: 540px; color: var(--muted); font-size: 15px; line-height: 1.8; }
.step-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 26px; }
.step-tags span { padding: 5px 8px; border: 1px solid var(--line); color: var(--muted); font: 9px var(--mono); }
.step-diagram { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 200px; }
.diagram-node { display: grid; gap: 8px; width: 122px; min-height: 118px; padding: 15px; border: 1px solid var(--line-bright); background: var(--night); }
.diagram-node b { color: var(--orange); font: 10px var(--mono); }
.diagram-node span { font-size: 16px; }
.diagram-node small { color: var(--muted); font: 9px var(--mono); }
.diagram-node--accent { border-color: var(--acid); }
.diagram-node--accent b { color: var(--acid); }
.diagram-arrow { color: var(--dim); font-size: 18px; }
.download-checklist { display: grid; align-content: center; gap: 0; }
.download-checklist div { display: grid; grid-template-columns: 34px 1fr; gap: 10px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.download-checklist span { grid-row: span 2; color: var(--orange); font: 10px var(--mono); }
.download-checklist strong { font-size: 15px; font-weight: 500; }
.download-checklist small { color: var(--muted); font: 10px var(--mono); }
.load-meter { display: flex; flex-direction: column; justify-content: center; }
.meter-label, .load-stats { display: flex; justify-content: space-between; gap: 12px; color: var(--muted); font: 10px var(--mono); }
.meter-label b { color: var(--ink); font-weight: 400; }
.meter-track { height: 16px; margin: 17px 0 20px; padding: 3px; border: 1px solid var(--line-bright); }
.meter-track span { display: block; width: 90%; height: 100%; background: var(--acid); }
.load-stats b { color: var(--acid); font-weight: 400; }
.parameter-list { display: grid; align-content: center; gap: 25px; }
.parameter-list label { display: grid; gap: 10px; color: var(--muted); font: 10px var(--mono); }
.parameter-list label span { display: flex; justify-content: space-between; }
.parameter-list label b { color: var(--ink); font-weight: 400; }
input[type="range"] { width: 100%; height: 3px; accent-color: var(--acid); cursor: pointer; }
.stepper-footer { border-top: 1px solid var(--line); border-bottom: 0; }
.step-button { min-height: 37px; padding: 0 13px; border: 1px solid var(--line-bright); background: transparent; color: var(--ink); cursor: pointer; font: 10px var(--mono); transition: background .25s ease, color .25s ease, border-color .25s ease; }
.step-button:hover:not(:disabled) { border-color: var(--acid); background: var(--acid); color: var(--night); }
.step-button:disabled { cursor: not-allowed; opacity: .35; }
.step-next { border-color: var(--acid); color: var(--acid); }
.stepper-footer p { color: var(--muted); font: 10px var(--mono); text-align: center; }
.step-complete { display: grid; place-items: center; gap: 12px; min-height: 335px; padding: 40px; text-align: center; animation: step-in .4s var(--ease) both; }
.step-complete > span { display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid var(--acid); border-radius: 50%; color: var(--acid); font-size: 22px; }
.step-complete strong { font-size: 27px; font-weight: 500; }
.step-complete p { color: var(--muted); font: 12px var(--mono); }

.models-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--line); }
.model-card { position: relative; display: flex; flex-direction: column; min-height: 460px; padding: 28px; background: var(--night); transition: background .3s ease, transform .3s var(--ease); }
.model-card:hover { z-index: 1; background: var(--night-2); transform: translateY(-5px); }
.model-card-top { display: flex; justify-content: space-between; gap: 16px; color: var(--muted); font: 10px var(--mono); }
.model-number { color: var(--acid); }
.model-name { margin: 47px 0 12px; font-size: clamp(27px, 3.2vw, 43px); font-weight: 500; letter-spacing: -.07em; line-height: 1; }
.model-architecture { color: var(--orange); font: 10px var(--mono); }
.model-description { margin-top: 22px; color: var(--muted); font-size: 13px; line-height: 1.75; }
.model-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 27px; padding-top: 18px; border-top: 1px solid var(--line); }
.model-columns h4 { margin-bottom: 9px; color: var(--dim); font: 9px var(--mono); text-transform: uppercase; }
.model-columns ul { display: grid; gap: 6px; list-style: none; color: var(--muted); font: 11px var(--mono); line-height: 1.35; }
.model-columns li::before { margin-right: 6px; color: var(--acid); content: '+'; }
.model-columns .limits li::before { color: var(--orange); content: '-'; }
.model-bottom { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; padding-top: 27px; }
.model-bottom span { padding: 4px 7px; border: 1px solid var(--line); color: var(--dim); font: 9px var(--mono); }
.model-experience { margin-top: 17px; color: var(--dim); font: 10px var(--mono); }
.loading-state { padding: 40px; color: var(--muted); font: 10px var(--mono); }

.hardware-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--line); }
.hardware-card { min-height: 330px; padding: 28px; background: var(--night); }
.hardware-top { display: flex; justify-content: space-between; gap: 20px; color: var(--muted); font: 10px var(--mono); }
.hardware-top strong { color: var(--ink); font-size: 16px; font-weight: 500; }
.hardware-spec { margin: 50px 0 13px; color: var(--acid); font-size: 66px; letter-spacing: -.08em; line-height: .8; }
.hardware-spec span { margin-left: 7px; color: var(--ink); font: 15px var(--mono); letter-spacing: 0; }
.hardware-spec small { margin-left: 11px; color: var(--muted); font: 10px var(--mono); letter-spacing: 0; }
.hardware-card p { max-width: 490px; color: var(--muted); font-size: 13px; line-height: 1.75; }
.hardware-fit { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin-top: 24px; color: var(--dim); font: 9px var(--mono); }
.hardware-fit b { padding: 4px 7px; border: 1px solid var(--line); color: var(--muted); font-weight: 400; }
.size-explorer { display: grid; grid-template-columns: minmax(240px, .75fr) minmax(0, 1.25fr); gap: 9vw; margin-top: 58px; padding: 34px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.size-copy h3 { margin: 16px 0 12px; font-size: 26px; font-weight: 500; letter-spacing: -.05em; }
.size-copy > p:last-child { color: var(--muted); font-size: 13px; line-height: 1.7; }
.size-control { align-self: center; }
.size-scale { display: flex; justify-content: space-between; gap: 8px; margin-bottom: 22px; }
.size-scale button { padding: 0; background: transparent; color: var(--muted); cursor: pointer; font: 12px var(--mono); transition: color .2s; }
.size-scale button.active, .size-scale button:hover { color: var(--acid); }
.size-tradeoff { display: flex; justify-content: space-between; gap: 12px; margin-top: 12px; color: var(--dim); font: 9px var(--mono); }

.format-table { border-top: 1px solid var(--line-bright); }
.format-row { display: grid; grid-template-columns: .55fr 1.25fr .9fr; gap: 30px; padding: 28px 0; border-bottom: 1px solid var(--line); }
.format-row--head { padding: 13px 0; color: var(--dim); font: 9px var(--mono); }
.format-row strong { color: var(--acid); font: 23px var(--mono); font-weight: 400; }
.format-row p { color: var(--muted); font-size: 13px; line-height: 1.7; }
.format-row p b { color: var(--ink); font: 10px var(--mono); font-weight: 400; }

.timeline-section { padding-bottom: 70px; }
.timeline-toolbar { display: flex; justify-content: space-between; gap: 18px; margin-bottom: 8px; padding: 13px 0; border-top: 1px solid var(--line); color: var(--dim); font: 9px var(--mono); letter-spacing: .05em; }
.timeline-toolbar i { display: inline-block; width: 6px; height: 6px; margin-right: 7px; border-radius: 50%; background: var(--acid); }
.timeline-toolbar b { margin-left: 8px; color: var(--orange); font-weight: 400; }
.timeline-shell { position: relative; overflow: visible; padding-bottom: 12px; }
.timeline-track { --trunk-width: 1px; position: relative; padding: 36px 0 28px; }
.timeline-track::before { position: absolute; top: 54px; bottom: 54px; left: 50%; width: var(--trunk-width); background: linear-gradient(to bottom, transparent, var(--acid) 4%, var(--line-bright) 18%, var(--line-bright) 82%, var(--acid) 96%, transparent); content: ''; }
.tree-seed, .tree-canopy { position: relative; z-index: 1; display: grid; justify-items: center; gap: 5px; width: max-content; margin: 0 auto; color: var(--muted); text-align: center; }
.tree-seed span { width: 14px; height: 14px; border: 3px solid var(--acid); border-radius: 50%; background: var(--night); box-shadow: 0 0 0 7px var(--night); }
.tree-seed strong, .tree-canopy strong { color: var(--ink); font: 11px var(--mono); letter-spacing: .08em; }
.tree-seed small, .tree-canopy small { color: var(--dim); font: 9px var(--mono); }
.tree-era { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) calc(var(--tree-reach) * 2) minmax(0, 1fr); grid-auto-rows: minmax(var(--tree-row-height), auto); padding: 54px 0 30px; }
.tree-era-marker { position: relative; z-index: 2; display: grid; grid-column: 2; grid-row: 1; justify-items: center; align-content: start; gap: 8px; color: var(--muted); text-align: center; }
.tree-era-marker::before { width: 18px; height: 18px; border: 2px solid var(--acid); border-radius: 50%; background: var(--night); box-shadow: 0 0 0 7px var(--night); content: ''; }
.tree-era-marker span { color: var(--acid); font: 10px var(--mono); }
.tree-era-marker strong { color: var(--ink); font-size: 14px; font-weight: 500; letter-spacing: -.02em; white-space: nowrap; }
.tree-era-marker em { color: var(--dim); font: 9px var(--mono); font-style: normal; line-height: 1.45; }
.tree-leaf { position: relative; z-index: 1; display: flex; flex-direction: column; grid-row: var(--tree-row); align-self: center; width: min(100%, 430px); min-height: 112px; padding: 7px 0; color: var(--muted); transition: color .25s ease, transform .3s var(--ease); }
.tree-leaf--left { grid-column: 1; justify-self: end; margin-right: var(--leaf-shift); text-align: right; }
.tree-leaf--right { grid-column: 3; justify-self: start; margin-left: var(--leaf-shift); }
.tree-leaf::after { position: absolute; top: 50%; height: 1px; background: var(--line-bright); content: ''; transition: background .25s ease; }
.tree-leaf::before { position: absolute; top: 50%; z-index: 2; width: 8px; height: 8px; margin-top: -4px; border: 2px solid var(--acid); border-radius: 50%; background: var(--night); box-shadow: 0 0 0 5px var(--night); content: ''; transition: border-color .25s ease, background .25s ease, transform .25s ease; }
.tree-leaf--left::after { right: calc(0px - var(--tree-reach) - var(--leaf-shift)); width: calc(var(--tree-reach) + var(--leaf-shift)); }
.tree-leaf--left::before { right: calc(0px - var(--tree-reach) - var(--leaf-shift) - 4px); }
.tree-leaf--right::after { left: calc(0px - var(--tree-reach) - var(--leaf-shift)); width: calc(var(--tree-reach) + var(--leaf-shift)); }
.tree-leaf--right::before { left: calc(0px - var(--tree-reach) - var(--leaf-shift) - 4px); }
.tree-leaf:hover { color: var(--ink); transform: translateY(-4px); }
.tree-leaf:hover::after { background: var(--acid); }
.tree-leaf:hover::before { border-color: var(--orange); background: var(--acid); transform: scale(1.25); }
.tree-date { color: var(--acid); font: 10px var(--mono); letter-spacing: .05em; }
.tree-leaf-heading { display: flex; flex-wrap: wrap; align-items: baseline; gap: 9px; margin-top: 8px; }
.tree-leaf--left .tree-leaf-heading { justify-content: flex-end; }
.tree-leaf-heading strong { color: var(--ink); font-size: clamp(18px, 2vw, 25px); font-weight: 500; letter-spacing: -.045em; line-height: 1.1; }
.tree-leaf-heading span { color: var(--orange); font: 9px var(--mono); }
.tree-tech { margin-top: 9px; color: var(--muted); font: 9px var(--mono); }
.tree-leaf p { max-width: 390px; margin-top: 8px; color: var(--dim); font-size: 11px; line-height: 1.75; }
.tree-leaf--left p { margin-left: auto; }
.tree-era--agent .tree-era-marker::before, .tree-era--agent .tree-leaf::before { border-color: var(--orange); }
.tree-era--agent .tree-leaf:hover::before { background: var(--orange); }
.tree-era--pretraining .tree-leaf-heading strong { font-size: 19px; }
.tree-era--efficiency .tree-leaf-heading strong, .tree-era--reasoning .tree-leaf-heading strong, .tree-era--agent .tree-leaf-heading strong { font-size: clamp(20px, 2.2vw, 28px); }
.tree-era--reasoning .tree-leaf, .tree-era--agent .tree-leaf { min-height: 126px; }
.tree-canopy { margin-top: 22px; }
.tree-canopy span { width: 34px; height: 18px; border-top: 1px solid var(--acid); border-right: 1px solid var(--acid); border-left: 1px solid var(--acid); border-radius: 34px 34px 0 0; opacity: .8; }

.future-section { padding: 115px 0 150px; border-top: 1px solid var(--line); }
.future-layout { display: grid; grid-template-columns: 1.2fr .8fr; gap: 9vw; align-items: end; margin-top: 32px; }
.future-layout h2 { font-size: clamp(58px, 9vw, 125px); }
.future-layout > div { padding-bottom: 5px; }
.future-layout p { max-width: 410px; color: var(--muted); font-size: 15px; line-height: 1.8; }
.text-link { display: inline-flex; gap: 12px; align-items: center; margin-top: 27px; color: var(--acid); font: 11px var(--mono); }
.text-link span { color: var(--orange); font-size: 17px; transition: transform .2s; }
.text-link:hover span { transform: translate(4px, -4px); }
.lab-footer { display: flex; justify-content: space-between; padding: 22px 0 40px; border-top: 1px solid var(--line); color: var(--dim); font: 10px var(--mono); }

@media (max-width: 780px) {
  :root { --gutter: 22px; }
  .lab-nav { top: 12px; width: calc(100vw - 28px); padding-left: 17px; }
  .nav-links { gap: 14px; }
  .nav-back { font-size: 0; }
  .nav-back span { font-size: 20px; }
  .lab-hero { display: block; min-height: 0; padding: 164px 0 105px; }
  .hero-copy h1 { font-size: 24vw; margin: 28px 0; }
  .hero-lede { font-size: 21px; }
  .hero-signal { margin-top: 72px; padding-left: 18px; }
  .lab-section { padding-top: 105px; }
  .section-heading, .future-layout { display: block; }
  .section-intro { margin-top: 35px; }
  h2 { font-size: 18vw; }
  .step-indicators { display: flex; overflow-x: auto; gap: 25px; padding-inline: 18px; scrollbar-width: none; }
  .step-indicators::-webkit-scrollbar { display: none; }
  .step-connector { display: none; }
  .step-indicator b { display: none; }
  .step-panel { display: block; min-height: 430px; padding: 36px 24px; }
  .step-diagram, .download-checklist, .load-meter, .parameter-list { margin-top: 35px; }
  .step-diagram { min-height: 0; gap: 7px; }
  .diagram-node { width: 92px; min-height: 101px; padding: 11px; }
  .diagram-node span { font-size: 13px; }
  .diagram-arrow { font-size: 14px; }
  .stepper-footer { align-items: stretch; padding: 14px 16px; }
  .stepper-footer p { display: none; }
  .step-button { min-height: 39px; }
  .models-grid, .hardware-grid { grid-template-columns: 1fr; }
  .model-card { min-height: 0; padding: 24px; }
  .model-name { margin-top: 39px; }
  .size-explorer { display: block; }
  .size-control { margin-top: 32px; }
  .size-scale { gap: 4px; }
  .size-tradeoff { font-size: 8px; }
  .format-row { grid-template-columns: 1fr; gap: 12px; padding: 23px 0; }
  .format-row--head { display: none; }
  .format-row strong { font-size: 20px; }
  .timeline-shell { margin-right: 0; padding-right: 0; }
  .timeline-toolbar { display: block; line-height: 2; }
  .timeline-toolbar span:last-child { display: block; margin-top: 5px; }
  .timeline-track { padding: 28px 0 18px; }
  .timeline-track::before { top: 42px; bottom: 42px; left: 0; }
  .tree-seed, .tree-canopy { margin-left: 0; padding-left: 25px; justify-items: start; text-align: left; }
  .tree-era { grid-template-columns: 1px minmax(0, 1fr); grid-auto-rows: auto; column-gap: 24px; padding: 38px 0 6px; }
  .tree-era-marker { grid-column: 2; grid-row: 1; justify-items: start; padding-bottom: 12px; text-align: left; }
  .tree-era-marker::before { position: absolute; top: 0; left: -30px; }
  .tree-leaf, .tree-leaf--left, .tree-leaf--right { grid-column: 2; grid-row: auto; justify-self: stretch; width: auto; min-height: 0; margin: 0 0 27px; padding: 4px 0; text-align: left; }
  .tree-leaf--left .tree-leaf-heading { justify-content: flex-start; }
  .tree-leaf--left p { margin-left: 0; }
  .tree-leaf::after, .tree-leaf--left::after, .tree-leaf--right::after { right: auto; left: -25px; width: 25px; }
  .tree-leaf::before, .tree-leaf--left::before, .tree-leaf--right::before { right: auto; left: -29px; }
  .tree-leaf-heading strong { font-size: 20px; }
  .future-layout h2 { margin-bottom: 34px; }
  .lab-footer { display: block; line-height: 2; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Give Chinese labels and notes enough vertical room without changing the visual scale. */
.step-indicator b, .step-copy > p:not(.step-kicker), .model-description, .model-columns ul, .model-experience, .tree-leaf p, .future-layout p { line-height: 1.85; }
.step-copy h3, .model-name, .tree-leaf-heading strong { line-height: 1.15; }
