:root {
  --ink: #12171d;
  --muted: #5e6872;
  --platinum: #d4d4d4;
  --blue: #0878df;
  --aqua: #21a0ff;
  --shadow: 0 28px 80px rgba(7, 22, 37, .24);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: #0d1117;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;
  word-break: keep-all;
}
a { color: inherit; }
img { max-width: 100%; height: auto; display: block; }
code, pre { font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace; }
.skip-link { position: fixed; z-index: 1000; top: -60px; left: 14px; padding: 10px 14px; color: #fff; background: #111; }
.skip-link:focus { top: 10px; }

.global-menubar {
  position: fixed;
  z-index: 100;
  inset: 0 0 auto 0;
  height: 30px;
  padding: 0 18px;
  display: flex;
  align-items: center;
  gap: 18px;
  color: #111;
  background: rgba(246, 246, 246, .9);
  border-bottom: 1px solid rgba(0, 0, 0, .28);
  box-shadow: 0 1px 3px rgba(0,0,0,.2);
  backdrop-filter: blur(18px) saturate(1.3);
  font: 600 12px/1 Arial, sans-serif;
}
.global-menubar nav { display: flex; gap: 18px; }
.global-menubar a { text-decoration: none; }
.global-menubar nav a:hover, .global-menubar nav a:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.apple-mark { font-size: 10px; }
.global-menubar time { margin-left: auto; font-variant-numeric: tabular-nums; }

.section-wrap { width: min(1120px, calc(100% - 40px)); margin: 0 auto; position: relative; z-index: 2; }
.section-wrap.wide { width: min(1240px, calc(100% - 40px)); }
.section-wrap.narrow { width: min(900px, calc(100% - 40px)); }
.chapter-index { margin: 0 0 18px; color: #181818; font: 700 11px/1.2 "SFMono-Regular", Consolas, monospace; letter-spacing: .18em; }
.chapter-index.light { color: #87e8b1; }
.chapter-index.aqua { color: #006cc8; }
.chapter-index.dark { color: #343434; }

/* Platinum hero */
.platinum-desktop {
  min-height: 100vh;
  padding: 92px 20px 70px;
  display: grid;
  place-items: center;
  position: relative;
  overflow: hidden;
  background-color: #bfc1c2;
  background-image: linear-gradient(90deg, rgba(255,255,255,.16) 50%, transparent 50%), linear-gradient(rgba(255,255,255,.16) 50%, transparent 50%);
  background-size: 4px 4px;
}
.platinum-desktop::before { content: ""; position: absolute; inset: 30px 0 0; background: radial-gradient(circle at 50% 30%, rgba(255,255,255,.5), transparent 55%); }
.classic-window { border: 1px solid #191919; background: #dedede; box-shadow: inset 1px 1px #fff, inset -1px -1px #777, 3px 3px 0 rgba(0,0,0,.35); }
.hero-window { width: min(900px, 92vw); position: relative; z-index: 3; }
.classic-titlebar {
  height: 26px;
  padding: 3px 8px;
  display: grid;
  grid-template-columns: 18px 1fr 18px;
  align-items: center;
  gap: 8px;
  background: repeating-linear-gradient(to bottom, #f6f6f6 0 1px, #8b8b8b 1px 2px, #f6f6f6 2px 3px);
  border-bottom: 1px solid #222;
}
.classic-titlebar h1, .classic-titlebar h2 { width: fit-content; margin: 0 auto; padding: 0 10px; background: #dedede; font: 700 12px/18px Arial, sans-serif; }
.classic-close, .classic-zoom { width: 14px; height: 14px; border: 1px solid #222; background: #ddd; box-shadow: inset 1px 1px #fff, inset -1px -1px #777; }
.hero-copy { padding: clamp(34px, 6vw, 76px); background: #f4f4f0; }
.eyebrow { margin: 0 0 22px; color: #505050; font: 700 11px/1.2 "SFMono-Regular", Consolas, monospace; letter-spacing: .15em; }
.hero h2 { margin: 0; max-width: 740px; font-size: clamp(38px, 7vw, 76px); line-height: 1.03; letter-spacing: -.055em; }
.hero-lede { max-width: 710px; margin: 28px 0 32px; color: #333; font-size: clamp(15px, 2vw, 20px); line-height: 1.8; }
.hero-font-mark { width: min(680px, 100%); margin: 10px 0 32px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.classic-button { min-width: 120px; padding: 9px 18px; text-align: center; text-decoration: none; font: 700 13px Arial, sans-serif; background: #ddd; border: 1px solid #222; box-shadow: inset 1px 1px #fff, inset -1px -1px #777, 1px 1px 0 #fff; }
.classic-button:active { box-shadow: inset 1px 1px #777; transform: translate(1px, 1px); }
.classic-button.primary { outline: 3px solid #111; outline-offset: 2px; margin: 3px; }
.classic-statusbar { min-height: 24px; padding: 4px 8px; display: flex; justify-content: space-between; gap: 10px; border-top: 1px solid #777; color: #333; font: 11px/1.4 Arial, sans-serif; }
.desktop-icon { position: absolute; z-index: 2; top: 70px; right: 5vw; text-align: center; font: 700 10px Arial, sans-serif; }
.disk-icon { width: 44px; height: 34px; margin: 0 auto 6px; display: block; border: 1px solid #222; border-radius: 3px; background: linear-gradient(#777 0 8px, #ddd 8px); box-shadow: inset 0 0 0 2px #bbb, 2px 2px rgba(0,0,0,.25); }
.scroll-cue { position: absolute; z-index: 3; bottom: 22px; color: #444; font: 11px "SFMono-Regular", Consolas, monospace; animation: bob 1.8s ease-in-out infinite; }
@keyframes bob { 50% { transform: translateY(6px); } }

/* System 6 chapter */
.system6-stage { position: relative; overflow: hidden; padding: 120px 0 130px; color: #172318; background: #7f9071; }
.system6-stage::before { content: ""; position: absolute; inset: 0; opacity: .22; background-image: radial-gradient(#142113 1px, transparent 1px); background-size: 3px 3px; }
.scanlines { pointer-events: none; position: absolute; z-index: 4; inset: 0; opacity: .12; background: repeating-linear-gradient(to bottom, transparent 0 3px, #061007 3px 4px); mix-blend-mode: multiply; }
.system6-stage h2 { max-width: 800px; margin: 0 0 50px; font: 700 clamp(42px, 7vw, 80px)/1.05 "Courier New", monospace; letter-spacing: -.07em; }
.system6-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 36px; align-items: start; }
.crt-frame { margin: 0; padding: 20px 20px 16px; border: 2px solid #1c291d; border-radius: 18px; background: #344235; box-shadow: inset 0 0 0 5px #697962, 0 28px 60px rgba(8,18,9,.3); }
.crt-screen { overflow: hidden; border-radius: 30px / 18px; filter: sepia(.2) contrast(1.15) brightness(.9); box-shadow: inset 0 0 38px #0c1b0d; }
.crt-screen img { width: 100%; image-rendering: pixelated; }
.crt-frame figcaption { padding-top: 13px; color: #c6d4bb; font: 11px "Courier New", monospace; }
.terminal-card { border: 2px solid #1a281b; background: rgba(174, 193, 151, .38); box-shadow: 8px 8px 0 rgba(22,35,23,.28); font: 14px/1.78 "Courier New", monospace; }
.terminal-title { padding: 8px 12px; color: #9aab88; background: #1a281b; letter-spacing: .14em; }
.terminal-card > p, .terminal-card > a { margin-left: 22px; margin-right: 22px; }
.terminal-card .terminal-note { padding-top:12px; color:#3f5942; border-top:1px solid rgba(38,55,39,.3); font-size:12px; }
.terminal-specs { margin: 0; padding: 16px 22px; border-bottom: 1px dashed #263727; }
.terminal-specs div { display: grid; grid-template-columns: 90px 1fr; }
.terminal-specs dt { opacity: .7; }
.terminal-specs dd { margin: 0; font-weight: 700; }
.terminal-link { display: inline-block; margin-top: 2px; margin-bottom: 20px; font-weight: 700; }
.lineage-track { margin: 70px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4,1fr); list-style: none; border-top: 3px solid #1a281b; }
.lineage-track li { padding: 16px 18px 0 0; position: relative; font-family: "Courier New", monospace; }
.lineage-track li::before { content: ""; position: absolute; width: 11px; height: 11px; top: -7px; left: 0; background: #1a281b; }
.lineage-track b, .lineage-track span, .lineage-track small { display: block; }
.lineage-track b { font-size: 13px; }
.lineage-track span { margin: 8px 0; font-weight: 700; }
.lineage-track small { line-height: 1.5; opacity: .72; }

/* OS 9 history */
.platinum-stage { padding: 120px 0; background-color: #bfc1c2; background-image: linear-gradient(90deg,rgba(255,255,255,.18) 50%,transparent 50%),linear-gradient(rgba(255,255,255,.18) 50%,transparent 50%); background-size: 4px 4px; }
.history-window { background: #e8e8e5; }
.history-grid { padding: clamp(22px, 5vw, 54px); display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(28px,5vw,64px); }
.reference-shot { margin: 0; align-self: start; padding: 10px; background: white; border: 1px solid #555; box-shadow: 2px 2px #999; }
.reference-shot img { width: 100%; }
.reference-shot figcaption { padding: 9px 4px 1px; color: #555; font: 11px Arial,sans-serif; }
.history-copy { font-size: 15px; line-height: 1.78; }
.history-copy .lead { margin-top: 0; font-size: 26px; line-height: 1.35; }
.fact-row { margin-top: 28px; display: grid; gap: 5px; }
.fact-row span { padding: 9px 12px; display: flex; justify-content: space-between; border: 1px solid #777; background: #d9d9d9; box-shadow: inset 1px 1px #fff; font: 12px Arial,sans-serif; }
.fact-row b { font-family: "SFMono-Regular",Consolas,monospace; }

/* Aqua specimens */
.aqua-stage, .lab-stage { position: relative; overflow: hidden; padding: 130px 0; background: linear-gradient(145deg,#d7f1ff 0,#77c8f5 32%,#0878d6 74%,#0352a5 100%); }
.aqua-stage::before, .lab-stage::before { content:""; position:absolute; inset:0; opacity:.32; background: repeating-linear-gradient(to bottom,rgba(255,255,255,.55) 0 1px,transparent 1px 4px); }
.aqua-bubbles { position: absolute; inset: 0; opacity: .55; background: radial-gradient(circle at 15% 22%,rgba(255,255,255,.8) 0 7%,transparent 7.2%),radial-gradient(circle at 88% 52%,rgba(255,255,255,.5) 0 11%,transparent 11.2%),radial-gradient(circle at 35% 88%,rgba(255,255,255,.32) 0 16%,transparent 16.2%); }
.aqua-heading { margin: 0; color: #042f59; text-shadow: 0 1px rgba(255,255,255,.75); font-size: clamp(42px,7vw,82px); line-height: 1.03; letter-spacing: -.06em; }
.aqua-intro { max-width: 760px; margin: 26px 0 60px; color: #07365b; font-size: 17px; line-height: 1.75; }
.aqua-window { margin: 0 0 38px; overflow: hidden; border: 1px solid rgba(28,51,74,.75); border-radius: 12px 12px 8px 8px; background: #eef3f6; box-shadow: var(--shadow), inset 0 0 0 1px rgba(255,255,255,.8); }
.aqua-titlebar { min-height: 34px; padding: 6px 12px; display: grid; grid-template-columns: 100px 1fr 100px; align-items: center; background: repeating-linear-gradient(to bottom,#f9fafb 0 1px,#ccd2d6 1px 2px,#eef1f3 2px 4px); border-bottom: 1px solid #7a8994; }
.aqua-titlebar h2, .aqua-titlebar h3 { margin: 0; text-align: center; font: 700 13px/1.2 Arial,sans-serif; text-shadow: 0 1px #fff; }
.traffic-lights { display: flex; gap: 7px; }
.traffic-lights i { width: 14px; height: 14px; border: 1px solid rgba(0,0,0,.55); border-radius: 50%; background: radial-gradient(circle at 38% 28%,#fff 0 12%,transparent 13%),linear-gradient(#ff8c83,#d80e08 65%,#ff6e65); box-shadow: inset 0 -1px 2px rgba(0,0,0,.35); }
.traffic-lights i:nth-child(2) { background: radial-gradient(circle at 38% 28%,#fff 0 12%,transparent 13%),linear-gradient(#ffe581,#e29c00 65%,#ffd84f); }
.traffic-lights i:nth-child(3) { background: radial-gradient(circle at 38% 28%,#fff 0 12%,transparent 13%),linear-gradient(#8bf49b,#13a32f 65%,#66dd7a); }
.specimen-toolbar { padding: 12px 24px; display: flex; gap: 30px; background: linear-gradient(#f6f8f9,#d6dde1); border-bottom: 1px solid #a0acb5; }
.specimen-toolbar > div { min-width: 100px; display: grid; grid-template-columns: 34px 1fr; grid-template-rows: auto auto; column-gap: 9px; align-items: center; }
.specimen-toolbar small { color: #68747e; font: 10px Arial,sans-serif; }
.specimen-toolbar b { font: 12px Arial,sans-serif; }
.toolbar-icon { grid-row: 1 / 3; width: 32px; height: 32px; display: grid; place-items: center; color: #fff; border: 1px solid #385773; border-radius: 7px; background: linear-gradient(#61baff,#0470d0); box-shadow: inset 0 1px rgba(255,255,255,.7),0 1px 2px rgba(0,0,0,.24); font-weight: 700; }
.suitcase-icon::after { content:""; width:17px; height:13px; border:2px solid #fff; border-radius:2px; box-shadow:0 -5px 0 -3px #fff; }
.specimen-paper { padding: clamp(25px,5vw,60px); min-height: 300px; display: grid; align-items: center; background-color:#fff; background-image:linear-gradient(rgba(19,82,126,.06) 1px,transparent 1px); background-size:100% 34px; }
.specimen-paper img { width: min(100%, 1000px); }
.specimen-window footer { padding: 8px 18px; display:flex; justify-content:space-between; color:#5e6972; background:#e5ebee; border-top:1px solid #bec7cd; font:10px Arial,sans-serif; }

/* Technical process */
.process-stage { padding: 130px 0; color: #eef5f4; background: #111820; }
.process-stage h2 { margin:0; font-size:clamp(42px,7vw,82px); line-height:1.03; letter-spacing:-.06em; }
.process-lede { max-width:760px; margin:26px 0 60px; color:#aebdc7; font-size:17px; line-height:1.8; }
.provenance-strip { margin-bottom:60px; padding:18px; display:flex; align-items:center; justify-content:space-between; gap:10px; border:1px solid #425260; border-radius:9px; background:#18232d; box-shadow:inset 0 1px rgba(255,255,255,.05); overflow-x:auto; }
.provenance-strip span { min-width:150px; font:700 12px "SFMono-Regular",Consolas,monospace; }
.provenance-strip small { margin-top:5px; display:block; color:#7f96a6; font-weight:400; }
.provenance-strip i { color:#55dc9c; font-style:normal; }
.process-list { min-width:0; display:grid; gap:12px; }
.process-step { min-width:0; width:100%; border:1px solid #354654; border-radius:6px; background:#16212a; }
.process-step summary { padding:20px; display:grid; grid-template-columns:48px 1fr auto; gap:14px; align-items:center; cursor:pointer; list-style:none; }
.process-step summary::-webkit-details-marker { display:none; }
.process-step summary span { color:#55dc9c; font:700 12px "SFMono-Regular",Consolas,monospace; }
.process-step summary b { font-size:17px; }
.process-step summary em { color:#7690a2; font:10px "SFMono-Regular",Consolas,monospace; letter-spacing:.12em; }
.process-step[open] summary { border-bottom:1px solid #354654; }
.step-body { min-width:0; padding:24px 32px 32px 82px; color:#c9d5dc; line-height:1.8; }
.step-body p:first-child { margin-top:0; }
.step-body pre { margin:20px 0 0; padding:18px; overflow-x:auto; color:#b8f7d5; border:1px solid #314757; border-radius:5px; background:#0d151c; line-height:1.65; }
.branch-note { padding:14px 16px; color:#f0dca7; border-left:3px solid #e7b948; background:#292619; }
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:36px; }
.two-col h3 { margin-top:0; color:#fff; font-size:1.05rem; }
.data-grid { margin-top:20px; display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.data-grid span { padding:12px; background:#0e171e; border:1px solid #30414e; font-size:12px; }
.data-grid b { margin-bottom:6px; display:block; color:#718899; font-size:9px; letter-spacing:.12em; }
.check-list { padding:0; list-style:none; }
.check-list li { margin:8px 0; padding-left:25px; position:relative; }
.check-list li::before { content:"✓"; position:absolute; left:0; color:#55dc9c; font-weight:700; }
.check-list.bad li::before { content:"×"; color:#ff7d78; }
.verify-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.verify-grid div { padding:16px; border:1px solid #375063; background:#0e171e; }
.verify-grid b,.verify-grid strong,.verify-grid span { display:block; }
.verify-grid b { color:#7890a0; font:10px "SFMono-Regular",Consolas,monospace; }
.verify-grid strong { margin:10px 0; color:#55dc9c; font-size:24px; }
.verify-grid span { color:#aebdc7; font-size:11px; line-height:1.6; }

/* Local lab */
.lab-stage { background:linear-gradient(155deg,#caedff,#3ba8ee 48%,#075cb6); }
.lab-window { margin:0; }
.lab-intro { padding:36px; display:grid; grid-template-columns:1fr .8fr; gap:44px; background:#f9fbfc; border-bottom:1px solid #aebbc3; }
.privacy-badge { padding:4px 8px; display:inline-block; color:#fff; border-radius:10px; background:#16823c; font:700 9px Arial,sans-serif; letter-spacing:.12em; }
.lab-intro h3 { margin:12px 0 8px; font-size:24px; }
.lab-intro p { color:#50606b; line-height:1.7; }
.sample-input-label { align-self:end; font-size:12px; font-weight:700; }
#sample-text { width:100%; margin-top:8px; padding:12px; resize:vertical; border:1px solid #708391; border-radius:5px; box-shadow:inset 0 1px 3px rgba(0,0,0,.18); font:15px/1.6 inherit; }
.font-loaders { padding:30px; display:grid; grid-template-columns:1fr 1fr; gap:20px; background:#dbe3e8; }
.font-loader { padding:24px; border:1px solid #97a5ae; border-radius:7px; background:linear-gradient(#fff,#eef2f4); box-shadow:inset 0 1px #fff,0 2px 6px rgba(0,0,0,.12); }
.loader-head { display:flex; align-items:center; gap:12px; }
.loader-head > span { width:38px;height:38px;display:grid;place-items:center;color:#fff;border-radius:9px;background:linear-gradient(#62bfff,#076bc6);box-shadow:inset 0 1px rgba(255,255,255,.7),0 1px 2px rgba(0,0,0,.25);font-weight:700; }
.loader-head h3,.loader-head p { margin:0; }
.loader-head h3 { font-size:20px; }
.loader-head p { color:#64727c;font-size:11px; }
.aqua-button { margin:22px 0 6px; padding:7px 20px; display:inline-block; cursor:pointer; border:1px solid #1a609b; border-radius:18px; background:linear-gradient(#dff6ff 0,#70c8ff 44%,#0791ec 52%,#5cc3ff 100%); box-shadow:inset 0 1px rgba(255,255,255,.9),0 1px 2px rgba(0,0,0,.25); text-shadow:0 1px #fff; font:700 12px Arial,sans-serif; }
.aqua-button:hover { filter:brightness(1.06); }
.load-status { margin:5px 0 18px; color:#6b7881; font-size:11px; }
.load-status.ok { color:#167536; font-weight:700; }
.load-status.error { color:#b02020; font-weight:700; }
.live-sample { min-height:150px; padding:18px; white-space:pre-wrap; overflow-wrap:anywhere; border:1px solid #bdc6cc; background:#fff; font-size:34px; line-height:1.5; letter-spacing:.03em; }
.live-seoul.font-loaded { font-family:"LocalSeoulArchive",sans-serif; }
.live-hangang.font-loaded { font-family:"LocalHangangArchive",sans-serif; }
.lab-foot { padding:8px 16px; color:#55636d; background:#e4eaed; border-top:1px solid #b7c1c7; text-align:center; font:10px Arial,sans-serif; }

/* Rights */
.rights-stage { padding:120px 0; color:#eef2f4; background:#10151b; }
.rights-stage h2 { margin:0 0 40px; font-size:clamp(40px,7vw,72px); line-height:1.05; letter-spacing:-.06em; }
.rights-card { padding:30px; display:grid; grid-template-columns:70px 1fr; gap:24px; color:#d8e0e5; border:1px solid #42505a; background:#18212a; line-height:1.8; }
.rights-icon { width:58px;height:58px;display:grid;place-items:center;border:1px solid #6f808d;border-radius:50%;font:700 30px Georgia,serif; }
.rights-card p:first-child { margin-top:0; }
.source-buttons { margin-top:22px; display:flex; flex-wrap:wrap; gap:9px; }
.source-buttons a { padding:9px 13px; text-decoration:none; color:#111; border-radius:4px; background:#81eab2; font-size:12px; font-weight:700; }
.source-list { margin-top:50px; }
.source-list h3 { color:#7f909c;font:700 11px "SFMono-Regular",Consolas,monospace;letter-spacing:.15em; }
.source-list a { padding:14px 0; display:flex; justify-content:space-between; gap:20px; color:#d8e1e7; border-bottom:1px solid #2d3942; text-decoration:none; }
.source-list a:hover b { color:#81eab2; }
.source-list span { color:#71828e; font-size:12px; text-align:right; }
.site-footer { padding:34px max(20px,calc((100% - 1120px)/2)); display:flex;justify-content:space-between;gap:30px;color:#73818b;background:#080b0f;border-top:1px solid #232a31;font:10px/1.7 "SFMono-Regular",Consolas,monospace; }
.site-footer div,.site-footer b,.site-footer span { display:block; }
.site-footer div:last-child { text-align:right; }

.reveal { opacity:0; transform:translateY(24px); transition:opacity .7s ease,transform .7s ease; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 800px) {
  .global-menubar nav { gap:12px; overflow-x:auto; scrollbar-width:none; }
  .global-menubar nav a:nth-child(3),.global-menubar nav a:nth-child(5) { display:none; }
  .desktop-icon { display:none; }
  .hero-copy { padding:32px 24px; }
  .classic-statusbar { flex-wrap:wrap; }
  .system6-grid,.history-grid,.lab-intro,.font-loaders,.two-col { grid-template-columns:1fr; }
  .lineage-track { grid-template-columns:1fr 1fr; gap:28px 0; }
  .lineage-track li:nth-child(3) { border-top:3px solid #1a281b; padding-top:16px; }
  .specimen-toolbar { gap:12px; overflow-x:auto; }
  .specimen-toolbar > div { min-width:115px; }
  .aqua-titlebar { grid-template-columns:80px 1fr 80px; }
  .provenance-strip { justify-content:flex-start; }
  .data-grid,.verify-grid { grid-template-columns:1fr 1fr; }
  .process-step summary { min-width:0; grid-template-columns:36px minmax(0,1fr); }
  .process-step summary b { min-width:0; overflow-wrap:anywhere; }
  .process-step summary em { display:none; }
  .step-body { padding:20px; }
  .source-list a,.site-footer { flex-direction:column; }
  .source-list span,.site-footer div:last-child { text-align:left; }
}

@media (max-width: 480px) {
  .section-wrap,.section-wrap.wide,.section-wrap.narrow { width:min(100% - 24px,1120px); }
  .global-menubar { padding:0 10px;gap:10px; }
  .global-menubar nav { gap:10px; }
  .hero { padding-left:8px;padding-right:8px; }
  .hero-window { width:100%; }
  .hero h2,.system6-stage h2,.aqua-heading,.process-stage h2,.rights-stage h2 { letter-spacing:-.045em; }
  .lineage-track { grid-template-columns:1fr; border-top:0; border-left:3px solid #1a281b; }
  .lineage-track li,.lineage-track li:nth-child(3) { padding:0 0 24px 18px;border:0; }
  .lineage-track li::before { top:2px;left:-7px; }
  .aqua-titlebar { grid-template-columns:66px 1fr 0; }
  .traffic-lights { gap:4px; }
  .traffic-lights i { width:12px;height:12px; }
  .specimen-paper { min-height:210px;padding:20px 14px; }
  .data-grid,.verify-grid { grid-template-columns:1fr; }
  .process-step summary { padding:16px 12px; }
  .live-sample { font-size:26px; }
  .rights-card { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important; }
  .reveal { opacity:1;transform:none; }
}

@media print {
  .global-menubar,.scroll-cue,.hero-actions,.font-loaders { display:none; }
  body,.process-stage,.rights-stage { color:#111;background:#fff; }
  section { break-inside:avoid; }
  .reveal { opacity:1;transform:none; }
}
