/* ResBased unified architecture — V001 redesign successor.
   Editorial systems design: paper, ink, signal blue, evidence orange. */
:root {
  --paper: #f3f0e8;
  --paper-2: #eae6da;
  --paper-3: #ded8ca;
  --ink: #13282b;
  --ink-2: #234044;
  --muted: #607174;
  --blue: #2456d6;
  --blue-dark: #153aa1;
  --aqua: #607174;
  --orange: #2456d6;
  --lime: #bad36a;
  --white: #fffefa;
  --line: rgba(19, 40, 43, .16);
  --line-strong: rgba(19, 40, 43, .34);
  --shadow: 0 26px 70px rgba(35, 47, 44, .11);
  --max: 1240px;
  --radius: 8px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 120px; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 16px/1.65 "Segoe UI Variable", "Segoe UI", Inter, ui-sans-serif, system-ui, sans-serif;
  overflow-x: hidden;
}
body::selection { background: var(--lime); color: var(--ink); }
a { color: inherit; text-decoration: none; }
p { color: var(--muted); }
button, input, select, textarea { font: inherit; }
:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }

.skip-link { position: fixed; z-index: 1000; top: 8px; left: 8px; padding: 10px 15px; background: var(--ink); color: #fff; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
.site-grid { position: fixed; inset: 0; z-index: -4; pointer-events: none; opacity: .42; background-image: linear-gradient(rgba(19,40,43,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(19,40,43,.035) 1px, transparent 1px); background-size: 34px 34px; mask-image: linear-gradient(to bottom, #000, transparent 72%); }
.aurora { display: none; }

.utility-bar { min-height: 33px; padding: 6px clamp(20px,4vw,64px); display: flex; align-items: center; justify-content: space-between; gap: 20px; background: var(--ink); color: #f7faf7; font-size: .7rem; font-weight: 700; letter-spacing: .085em; text-transform: uppercase; }
.utility-bar p { margin: 0; color: #e4ece9; }
.utility-bar nav { display: flex; gap: 20px; }
.utility-bar a:hover { color: var(--lime); }
.utility-signal { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 4px rgba(186,211,106,.14); }

.site-header { height: 82px; padding: 0 clamp(20px,4vw,64px); position: sticky; top: 0; z-index: 60; display: flex; align-items: center; justify-content: space-between; gap: 28px; background: rgba(243,240,232,.94); border-bottom: 1px solid var(--line); backdrop-filter: blur(16px); }
.brand { display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; color: var(--ink); }
.brand-mark { width: 39px; height: 39px; flex: 0 0 39px; display: grid; place-items: center; border: 1px solid var(--ink); border-radius: 50%; color: transparent; font-size: 0; overflow: hidden; background-color: var(--ink); background-image: url('/static/resbased-logo-transparent-v2.png'); background-size: 78% auto; background-position: center; background-repeat: no-repeat; box-shadow: none; }
.brand-lockup { display: grid; line-height: 1; gap: 6px; }
.brand-lockup strong { font-size: .82rem; letter-spacing: .24em; }
.brand-lockup small { font-size: .56rem; color: var(--muted); letter-spacing: .075em; white-space: nowrap; }

.nav { display: flex; align-items: center; gap: clamp(10px,1.4vw,23px); font-size: .82rem; }
.nav-direct, .nav-group>summary { color: var(--ink-2); font-weight: 650; cursor: pointer; list-style: none; padding: 28px 0 27px; border-bottom: 2px solid transparent; }
.nav-group>summary::-webkit-details-marker { display: none; }
.nav-group>summary::after { content: "+"; display: inline-block; margin-left: 5px; color: var(--blue); font-weight: 400; }
.nav-group[open]>summary::after { content: "−"; }
.nav-direct:hover, .nav-group>summary:hover, .nav-direct.active, .nav-group[data-active="true"]>summary { color: var(--blue); border-color: var(--blue); }
.nav-group { position: relative; }
.nav-menu { position: absolute; top: calc(100% - 1px); left: 50%; transform: translateX(-28%); width: 278px; padding: 10px; display: grid; background: var(--white); border: 1px solid var(--line); box-shadow: var(--shadow); }
.nav-menu a { padding: 8px 12px; color: var(--ink-2); border-left: 2px solid transparent; }
.nav-menu a:hover { background: var(--paper); color: var(--blue); border-color: var(--blue); }
.nav-menu .nav-menu-lead { padding: 14px 12px; margin-bottom: 5px; display: grid; gap: 3px; border-bottom: 1px solid var(--line); border-left: 0; }
.nav-menu-lead strong { font-family: Georgia, serif; font-size: 1.15rem; }
.nav-menu-lead span { color: var(--muted); font-size: .7rem; }
.nav-account { display: flex; align-items: center; gap: 8px; padding-left: 13px; border-left: 1px solid var(--line); }
.nav-user { color: var(--blue); }
.nav-toggle { display: none; width: 44px; height: 44px; padding: 0; place-items: center; background: transparent; border: 1px solid var(--line); color: var(--ink); }
.nav-toggle span { position: absolute; width: 19px; height: 1px; background: currentColor; transition: .2s ease; }
.nav-toggle span:first-child { transform: translateY(-4px); }
.nav-toggle span:last-child { transform: translateY(4px); }
.nav-toggle[aria-expanded="true"] span:first-child { transform: rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:last-child { transform: rotate(-45deg); }

.btn { min-height: 43px; padding: 10px 18px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid var(--blue); border-radius: 2px; background: var(--blue); color: white !important; box-shadow: none; font-weight: 720; cursor: pointer; transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }
.btn:hover { transform: translateY(-2px); background: var(--blue-dark); box-shadow: 6px 6px 0 rgba(36,86,214,.14); }
.btn.ghost { background: transparent; color: var(--ink) !important; border-color: var(--line-strong); }
.btn.ghost:hover { background: var(--white); color: var(--blue) !important; border-color: var(--blue); }
.btn.small { min-height: 34px; padding: 6px 11px; font-size: .76rem; }
.btn.large { min-height: 51px; padding: 13px 20px; }
.text-link { display: inline-flex; gap: 7px; color: var(--blue); font-weight: 700; border-bottom: 1px solid rgba(36,86,214,.32); padding-bottom: 2px; }
.text-link:hover { color: var(--blue-dark); border-color: currentColor; }
.eyebrow { margin-bottom: 18px; color: var(--blue); font-size: .68rem; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.section { max-width: var(--max); margin: auto; padding: 110px 40px; }
.section h2 { color: var(--ink); }
.section-head { max-width: none; text-align: left; }
.split-head { display: grid; grid-template-columns: 1.4fr .7fr; gap: 80px; align-items: end; }
.split-head h2, .section-kicker h2 { margin: 0; font: 500 clamp(2.4rem,4.8vw,5rem)/.98 Georgia, serif; letter-spacing: -.045em; }
.split-head>p, .split-head>div:last-child p { margin: 0 0 14px; font-size: 1rem; }
.section-kicker { display: grid; grid-template-columns: 58px 1fr; gap: 25px; margin-bottom: 64px; }
.section-kicker>span { padding-top: 6px; color: var(--orange); font: 700 .72rem/1 ui-monospace, monospace; border-top: 1px solid var(--orange); }

/* Homepage */
.home-hero { min-height: min(860px, calc(100svh - 115px)); position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 370px); align-content: center; gap: 70px; padding: 100px max(40px, calc((100vw - var(--max))/2)); overflow: hidden; border-bottom: 1px solid var(--line-strong); }
#lattice { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .78; z-index: -2; mask-image: linear-gradient(90deg, transparent, #000 42%, #000); }
.home-hero::after { display: none; }
.hero-rule { position: absolute; top: 25px; left: max(40px, calc((100vw - var(--max))/2)); right: max(40px, calc((100vw - var(--max))/2)); display: flex; justify-content: space-between; color: rgba(19,40,43,.45); font: 600 .55rem/1 ui-monospace, monospace; letter-spacing: .16em; }
.home-hero-copy { max-width: 850px; }
.home-hero h1 { max-width: 900px; margin: 0 0 28px; font: 500 clamp(3.4rem,6.2vw,6.6rem)/.92 Georgia, serif; letter-spacing: -.06em; }
.home-hero h1 em { display: block; color: var(--blue); font-weight: 400; }
.home-hero-copy>p { max-width: 760px; margin: 0 0 34px; color: var(--ink-2); font-size: clamp(1.05rem,1.7vw,1.28rem); }
.home-hero-copy>p.home-company-definition { margin-bottom: 13px; color: var(--ink); font-weight: 650; }
.home-hero-copy>p.home-company-definition+p { margin-bottom: 30px; font-size: .98rem; }
.home-hero .hero-actions { justify-content: flex-start; align-items: center; gap: 11px; }
.hero-proof-card { align-self: end; padding: 27px; background: var(--ink); color: var(--white); border-top: 4px solid var(--lime); box-shadow: 12px 12px 0 rgba(19,40,43,.12); }
.hero-proof-card .proof-index { color: var(--lime); font: 700 .65rem/1 ui-monospace, monospace; letter-spacing: .14em; }
.hero-proof-card p { margin: 34px 0 5px; color: #aebebb; }
.hero-proof-card strong { display: block; font: 500 1.5rem/1.2 Georgia, serif; }
.proof-chain { display: flex; align-items: center; margin-top: 35px; color: #cdd7d4; font-size: .65rem; }
.proof-chain i { flex: 1; height: 1px; margin: 0 8px; background: #667a76; }
.hero-scroll { position: absolute; left: max(40px, calc((100vw - var(--max))/2)); bottom: 24px; color: var(--muted); font-size: .67rem; letter-spacing: .14em; text-transform: uppercase; }

.problem-section { padding-top: 135px; }
.problem-layout { display: grid; grid-template-columns: .75fr 1.4fr; gap: 100px; }
.problem-layout>.lead { margin: 0; color: var(--ink-2); font: 400 1.45rem/1.55 Georgia, serif; }
.evidence-checklist { border-top: 1px solid var(--line-strong); }
.evidence-checklist>div { display: grid; grid-template-columns: 45px 120px 1fr; gap: 20px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.evidence-checklist span { color: var(--orange); font: .68rem/1.6 ui-monospace, monospace; }
.evidence-checklist strong { font-size: .86rem; }
.evidence-checklist p { margin: 0; }

.pillars-section { padding-top: 45px; }
.pillar-grid { margin-top: 58px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line-strong); }
.pillar { min-height: 250px; padding: 24px; position: relative; background: rgba(255,255,255,.28); border-right: 1px solid var(--line); }
.pillar:last-child { border: 0; }
.pillar>span { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--ink); border-radius: 50%; font-family: Georgia,serif; }
.pillar h3 { margin: 65px 0 8px; font: 500 1.45rem/1 Georgia,serif; }
.pillar p { margin: 0; font-size: .9rem; }
.pillar:nth-child(2)>span { border-color: var(--blue); color: var(--blue); }
.pillar:nth-child(3)>span { border-color: var(--orange); color: var(--orange); }
.pillar:nth-child(4)>span { border-color: var(--aqua); color: #17766e; }

.build-section { padding-top: 70px; }
.build-grid { display: grid; grid-template-columns: 1.25fr .75fr; grid-template-rows: repeat(2,minmax(260px,auto)); gap: 13px; }
.build-card { position: relative; min-height: 270px; padding: 30px; display: flex; flex-direction: column; border: 1px solid var(--line-strong); background: var(--white); overflow: hidden; transition: transform .25s ease, box-shadow .25s ease; }
.build-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.build-card-1 { grid-row: 1 / 3; min-height: 545px; background: var(--ink); color: white; }
.build-card::after { content: ""; width: 180px; height: 180px; position: absolute; right: -70px; bottom: -70px; border: 1px solid currentColor; border-radius: 50%; opacity: .1; }
.card-number { color: var(--orange); font: .68rem/1 ui-monospace,monospace; }
.card-status { position: absolute; top: 25px; right: 25px; padding: 4px 7px; border: 1px solid currentColor; color: var(--muted); font-size: .58rem; letter-spacing: .1em; text-transform: uppercase; }
.build-card-1 .card-status { color: var(--lime); }
.build-card h3 { margin: auto 0 12px; font: 500 clamp(2.1rem,4vw,4rem)/1 Georgia,serif; letter-spacing: -.04em; }
.build-card:not(.build-card-1) h3 { font-size: 2rem; }
.build-card p { max-width: 520px; margin: 0 0 25px; }
.build-card-1 p { color: #b8c5c2; font-size: 1.05rem; }
.card-link { margin-top: auto; color: var(--blue); font-size: .8rem; font-weight: 750; }
.build-card-1 .card-link { color: var(--lime); }

.architecture-band { background: var(--ink); color: white; }
.architecture-inner { display: grid; grid-template-columns: .78fr 1.22fr; gap: 110px; }
.architecture-copy h2 { color: white; margin: 0 0 25px; font: 500 clamp(2.7rem,4.5vw,5rem)/.98 Georgia,serif; letter-spacing: -.045em; }
.architecture-copy p { color: #aebebb; }
.architecture-band .text-link { color: var(--lime); border-color: rgba(186,211,106,.4); }
.architecture-flow { margin: 0; padding: 0; list-style: none; }
.architecture-flow li { min-height: 72px; display: grid; grid-template-columns: 38px 1fr; gap: 18px; position: relative; }
.architecture-flow li>span { color: var(--lime); font: .64rem/1.4 ui-monospace,monospace; }
.architecture-flow li>div { display: flex; justify-content: space-between; gap: 20px; padding-bottom: 22px; border-bottom: 1px solid rgba(255,255,255,.14); }
.architecture-flow strong { font: 500 1.35rem/1 Georgia,serif; }
.architecture-flow small { color: #8fa19d; }
.architecture-flow i { position: absolute; left: 11px; top: 22px; bottom: 4px; border-left: 1px solid #536d68; }

.status-table { margin-top: 55px; border-top: 2px solid var(--ink); }
.status-row { display: grid; grid-template-columns: 1.05fr .85fr 1.7fr; gap: 25px; align-items: center; min-height: 73px; padding: 15px 8px; border-bottom: 1px solid var(--line); }
.status-row p { margin: 0; font-size: .88rem; }
.status-head { min-height: 45px; color: var(--muted); font-size: .65rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.status-chip { display: inline-block; padding: 5px 7px; background: transparent; color: var(--ink); border: 1px solid currentColor; font: 700 .62rem/1 ui-monospace,monospace; letter-spacing: .06em; }
.status-chip.status-pass { color: #18736a; background: rgba(49,169,156,.08); }
.status-chip.status-progress { color: var(--blue); background: rgba(36,86,214,.06); }
.status-chip.status-hold { color: #a44829; background: rgba(214,107,66,.07); }
.status-chip.status-none { color: #687477; }
.status-source { margin-top: 14px; font-size: .72rem; font-style: italic; }

/* Public-front-door revision: fewer destinations, real system flow, and explicit audience paths. */
.portfolio-grid { margin-top: 52px; display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 12px; }
.portfolio-card { min-height: 310px; padding: 28px; display: flex; flex-direction: column; border: 1px solid var(--line-strong); background: var(--white); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.portfolio-card:first-child { background: var(--ink); color: var(--white); border-top: 4px solid var(--lime); }
.portfolio-card:hover, .portfolio-card:focus-visible { transform: translateY(-3px); border-color: var(--blue); box-shadow: 7px 7px 0 rgba(36,86,214,.09); }
.portfolio-card .card-status { color: var(--blue); font: 750 .62rem/1.3 ui-monospace,monospace; letter-spacing: .075em; }
.portfolio-card:first-child .card-status, .portfolio-card:first-child .card-link { color: var(--lime); }
.portfolio-card h3 { margin: auto 0 12px; font: 500 clamp(2rem,3vw,3.2rem)/1 Georgia,serif; letter-spacing: -.035em; }
.portfolio-card p { margin: 0 0 24px; font-size: .9rem; }
.portfolio-card:first-child p { color: #becbc8; }
.portfolio-card .card-link { color: var(--blue); font-size: .78rem; font-weight: 750; }
.system-map { margin-top: 14px; padding: 28px; color: var(--white); background: var(--ink); }
.system-map>div { display: grid; grid-template-columns: 1fr .8fr; gap: 35px; align-items: end; }
.system-map>div p { margin: 0; color: #b6c4c1; }
.system-map .eyebrow { margin: 0; color: var(--lime); }
.system-map ol { margin: 28px 0 0; padding: 0; display: grid; grid-template-columns: repeat(7,1fr); list-style: none; border-top: 1px solid rgba(255,255,255,.22); }
.system-map li { min-width: 0; padding: 19px 16px 0 0; position: relative; display: grid; gap: 5px; }
.system-map li::before { content: ""; width: 8px; height: 8px; position: absolute; top: -5px; left: 0; border-radius: 50%; background: var(--lime); }
.system-map li:not(:last-child)::after { content: "→"; position: absolute; right: 10px; top: 18px; color: #7e928d; }
.system-map strong { font: 500 1rem/1.2 Georgia,serif; }
.system-map small { padding-right: 15px; color: #9fb0ac; font-size: .67rem; }
.audience-section { border-top: 1px solid var(--line); }
.audience-grid { margin-top: 50px; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.audience-card { min-height: 300px; padding: 28px; display: flex; flex-direction: column; border: 1px solid var(--line-strong); background: rgba(255,255,255,.42); }
.audience-card>span { color: var(--blue); font: 750 .64rem/1 ui-monospace,monospace; letter-spacing: .1em; }
.audience-card h3 { margin: 55px 0 13px; font: 500 1.85rem/1.04 Georgia,serif; }
.audience-card p { margin: 0 0 24px; font-size: .9rem; }
.audience-card a { margin-top: auto; color: var(--blue); font-size: .8rem; font-weight: 750; }
.home-evidence-grid { margin-top: 48px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 2px solid var(--ink); }
.home-evidence-link { min-height: 185px; padding: 20px 20px 20px 0; display: flex; flex-direction: column; border-bottom: 1px solid var(--line); }
.home-evidence-link:not(:last-child) { margin-right: 20px; border-right: 1px solid var(--line); }
.home-evidence-link>span { color: var(--blue); font: 750 .6rem/1.4 ui-monospace,monospace; letter-spacing: .08em; }
.home-evidence-link strong { margin: 28px 0 9px; font: 500 1.12rem/1.25 Georgia,serif; }
.home-evidence-link p { margin: 0; font-size: .8rem; }
.editorial-boundary { max-width: 880px; margin: 28px 0 0; padding: 15px 18px; border-left: 3px solid var(--blue); background: rgba(36,86,214,.045); color: var(--ink-2); font-size: .86rem; }
.writing-grid-compact { grid-template-columns: repeat(2,1fr); }
.writing-grid-compact .writing-card { min-height: 285px; }
.writing-grid-compact .writing-card .card-link { margin-top: auto; color: var(--blue); font-size: .76rem; font-weight: 750; }
.home-final-cta { padding: 75px max(40px,calc((100vw - var(--max))/2)); display: grid; grid-template-columns: 1.2fr .8fr; gap: 95px; align-items: center; background: var(--ink); color: var(--white); }
.home-final-cta h2 { max-width: 760px; margin: 0; font: 500 clamp(2.5rem,4.4vw,4.7rem)/.98 Georgia,serif; letter-spacing: -.045em; }
.home-final-cta p { max-width: 460px; color: #b6c4c1; }
.home-final-cta .eyebrow { color: var(--lime); }
.home-final-cta .btn { margin-top: 13px; background: var(--lime); border-color: var(--lime); color: var(--ink) !important; }

.lab-rail { display: grid; gap: 13px; }
.lab-card { min-height: 230px; display: grid; grid-template-columns: 230px 1fr; gap: 45px; align-items: center; padding: 28px; border: 1px solid var(--line-strong); background: rgba(255,255,255,.34); }
.lab-orbit { width: 170px; height: 170px; margin: auto; position: relative; border: 1px solid var(--line-strong); border-radius: 50%; }
.lab-orbit::before, .lab-orbit::after { content: ""; position: absolute; inset: 26px; border: 1px solid var(--line); border-radius: 50%; }
.lab-orbit::after { inset: 58px; background: var(--blue); border: 0; }
.lab-orbit span { position: absolute; top: 13px; left: 79px; width: 10px; height: 10px; background: var(--orange); border-radius: 50%; }
.lab-orbit i { position: absolute; inset: 0; border-top: 2px solid var(--blue); border-radius: 50%; transform: rotate(28deg); }
.lab-mode { color: var(--orange); font: 700 .63rem/1 ui-monospace,monospace; letter-spacing: .1em; text-transform: uppercase; }
.lab-card h3 { margin: 12px 0 8px; font: 500 2.3rem/1 Georgia,serif; }
.lab-card p { max-width: 720px; }
.lab-card a { color: var(--blue); font-weight: 700; }
.lab-card .lab-app-link { display: inline-block; margin-left: 20px; }

.evidence-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 95px; border-top: 1px solid var(--line); }
.evidence-manifesto { position: sticky; top: 145px; align-self: start; }
.quote-mark { display: block; color: var(--orange); font: 7rem/.5 Georgia,serif; }
.evidence-manifesto blockquote { margin: 30px 0 15px; color: var(--ink); font: 500 clamp(2.6rem,4.2vw,4.5rem)/.98 Georgia,serif; letter-spacing: -.045em; }
.evidence-manifesto p { font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
.evidence-stack>.eyebrow { margin-bottom: 8px; }
.evidence-link { display: grid; grid-template-columns: 120px 1fr 32px; gap: 18px; padding: 28px 0; border-bottom: 1px solid var(--line); }
.evidence-link>span { color: var(--orange); font: .62rem/1.6 ui-monospace,monospace; text-transform: uppercase; }
.evidence-link strong { font: 500 1.25rem/1.3 Georgia,serif; }
.evidence-link p { grid-column: 2; margin: -8px 0 0; font-size: .85rem; }
.evidence-link i { grid-column: 3; grid-row: 1/3; align-self: center; color: var(--blue); font-style: normal; font-size: 1.3rem; }

.writing-grid { margin-top: 52px; display: grid; grid-template-columns: repeat(3,1fr); gap: 13px; }
.writing-card { min-height: 315px; padding: 27px; display: flex; flex-direction: column; border: 1px solid var(--line-strong); background: var(--white); }
.writing-card>span { color: var(--orange); font: .63rem/1 ui-monospace,monospace; text-transform: uppercase; }
.writing-card h3 { margin: 55px 0 12px; font: 500 1.7rem/1.08 Georgia,serif; }
.writing-card h3 a:hover { color: var(--blue); }
.writing-card p { font-size: .87rem; }
.writing-card>div { display: flex; flex-wrap: wrap; gap: 5px; margin-top: auto; }
.writing-card>div a { padding: 4px 7px; border: 1px solid var(--line); color: var(--blue); font-size: .67rem; }
.writing-technical { background: var(--paper-2); }

.community-section { padding-top: 35px; }
.community-panel { padding: 65px; display: grid; grid-template-columns: 1.3fr .7fr; gap: 80px; background: var(--blue); color: white; box-shadow: 14px 14px 0 rgba(36,86,214,.13); }
.community-panel h2 { margin: 0; color: white; font: 500 clamp(2.5rem,4.5vw,4.6rem)/.96 Georgia,serif; letter-spacing: -.045em; }
.community-panel p { color: #dce4ff; }
.community-panel .eyebrow { color: var(--lime); }
.community-actions { display: flex; flex-direction: column; gap: 11px; justify-content: center; }
.community-actions .btn { background: var(--white); border-color: var(--white); color: var(--blue) !important; }
.community-actions .btn.ghost { background: transparent; color: white !important; }
.community-actions p { font-size: .72rem; text-align: center; }

/* Content architecture */
.content-shell { width: min(var(--max), calc(100% - 80px)); margin: auto; }
.content-hero { position: relative; padding: 72px 0 88px; overflow: hidden; border-bottom: 1px solid var(--line-strong); }
.content-hero-grid { position: absolute; inset: 0; z-index: -1; background: radial-gradient(circle at 87% 32%, rgba(36,86,214,.1), transparent 24%), linear-gradient(90deg, transparent 64%, rgba(19,40,43,.04) 64%); }
.breadcrumbs { display: flex; gap: 9px; align-items: center; margin-bottom: 65px; color: var(--muted); font-size: .68rem; text-transform: uppercase; letter-spacing: .1em; }
.breadcrumbs a { color: var(--blue); }
.content-hero-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(260px,.55fr); gap: 90px; align-items: end; }
.content-hero h1 { max-width: 940px; margin: 0 0 24px; font: 500 clamp(3.4rem,6.5vw,6.9rem)/.92 Georgia,serif; letter-spacing: -.06em; }
.content-hero-copy>p { max-width: 800px; margin: 0; color: var(--ink-2); font-size: 1.16rem; }
.claim-labels { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 28px; }
.claim-labels span { padding: 5px 8px; border: 1px solid var(--line-strong); color: var(--ink-2); font: 700 .59rem/1 ui-monospace,monospace; letter-spacing: .07em; }
.content-index { padding: 22px 0 5px 24px; border-left: 1px solid var(--line-strong); }
.content-index>span { color: var(--orange); font: 700 .62rem/1 ui-monospace,monospace; }
.content-index p { margin: 30px 0; font-size: .86rem; }
.content-index a { color: var(--blue); font-size: .76rem; font-weight: 700; }
.boundary-banner { background: var(--ink); color: white; }
.boundary-banner>div { width: min(var(--max), calc(100% - 80px)); margin: auto; min-height: 82px; display: grid; grid-template-columns: 130px 1fr; gap: 30px; align-items: center; }
.boundary-banner span { color: var(--lime); font: 700 .65rem/1 ui-monospace,monospace; letter-spacing: .12em; }
.boundary-banner p { margin: 0; color: #d4dfdc; }
.content-layout { display: grid; grid-template-columns: 215px minmax(0,1fr); gap: 85px; padding-top: 85px; padding-bottom: 130px; }
.section-nav { align-self: start; position: sticky; top: 118px; }
.section-nav>span { display: block; margin-bottom: 14px; color: var(--orange); font: 700 .62rem/1 ui-monospace,monospace; letter-spacing: .12em; text-transform: uppercase; }
.section-nav nav { display: grid; border-top: 1px solid var(--line-strong); }
.section-nav a { padding: 10px 5px; color: var(--muted); border-bottom: 1px solid var(--line); font-size: .76rem; }
.section-nav a:hover, .section-nav a.active { color: var(--blue); padding-left: 11px; }
.content-article { min-width: 0; }
.content-section { padding: 0 0 85px; }
.content-section+.content-section { padding-top: 75px; border-top: 1px solid var(--line); }
.content-section>h2 { max-width: 800px; margin: 0 0 24px; color: var(--ink); font: 500 clamp(2.2rem,4.1vw,4.25rem)/1 Georgia,serif; letter-spacing: -.045em; }
.content-section>p { max-width: 800px; color: var(--muted); font-size: 1.02rem; }
.content-section>p.lead { color: var(--ink-2); font: 400 1.32rem/1.6 Georgia,serif; }
.content-card-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; margin-top: 38px; }
.content-card-grid-wide { grid-template-columns: repeat(3,minmax(0,1fr)); }
.content-card { min-height: 215px; padding: 24px; display: flex; flex-direction: column; border: 1px solid var(--line-strong); background: rgba(255,255,255,.42); }
.content-card-status { align-self: start; margin-bottom: 32px; padding: 4px 6px; color: var(--orange); border: 1px solid currentColor; font: 700 .58rem/1 ui-monospace,monospace; }
.content-card h3 { margin: 0 0 11px; color: var(--ink); font: 500 1.45rem/1.1 Georgia,serif; }
.content-card h3 a:hover { color: var(--blue); }
.content-card p { margin: 0 0 18px; font-size: .89rem; }
.content-card small { margin-top: auto; padding-top: 18px; color: var(--muted); border-top: 1px solid var(--line); }
.content-card .card-link { margin-top: auto; padding-top: 12px; }
.content-flow { margin: 38px 0 0; padding: 0; list-style: none; border-top: 2px solid var(--ink); }
.content-flow li { min-height: 90px; display: grid; grid-template-columns: 55px 1fr; gap: 22px; padding: 20px 5px; border-bottom: 1px solid var(--line); }
.content-flow li>span { color: var(--orange); font: .68rem/1.6 ui-monospace,monospace; }
.content-flow strong { display: block; color: var(--ink); font: 500 1.3rem/1.2 Georgia,serif; }
.content-flow p { margin: 5px 0 0; }
.content-table-wrap { margin-top: 38px; overflow: auto; border-top: 2px solid var(--ink); }
.content-table-wrap table { width: 100%; border-collapse: collapse; min-width: 660px; }
.content-table-wrap th { padding: 13px 11px; color: var(--muted); text-align: left; font-size: .63rem; letter-spacing: .1em; text-transform: uppercase; }
.content-table-wrap td { padding: 18px 11px; color: var(--ink-2); border-top: 1px solid var(--line); vertical-align: top; font-size: .86rem; }
.content-table-wrap td:first-child { color: var(--ink); font-weight: 700; }
.content-quote { margin: 36px 0 0; padding: 42px; color: var(--ink); border-left: 4px solid var(--orange); background: var(--paper-2); font: 500 clamp(1.8rem,3vw,3rem)/1.18 Georgia,serif; }
.content-quote cite { display: block; margin-top: 20px; color: var(--muted); font: .68rem/1.4 ui-sans-serif,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.glossary-grid { margin: 35px 0 0; border-top: 2px solid var(--ink); }
.glossary-grid>div { display: grid; grid-template-columns: 180px 1fr; gap: 32px; padding: 20px 5px; border-bottom: 1px solid var(--line); }
.glossary-grid dt { color: var(--ink); font: 500 1.1rem/1.2 Georgia,serif; }
.glossary-grid dd { margin: 0; color: var(--muted); }
.glossary-grid dd strong { display: inline-block; margin: 0 8px 5px 0; padding: 3px 5px; color: var(--blue); border: 1px solid currentColor; font: 700 .55rem/1 ui-monospace,monospace; }
.glossary-grid dd span { display: block; margin-top: 6px; color: var(--ink-2); font-size: .83rem; }
.content-checklist { margin: 32px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2,1fr); gap: 9px; }
.content-checklist li { padding: 16px; border: 1px solid var(--line); background: rgba(255,255,255,.35); }
.content-checklist li span { margin-right: 10px; color: #17766e; }
.page-cta { margin-top: 20px; padding: 35px; display: flex; align-items: center; justify-content: space-between; gap: 40px; background: var(--ink); color: white; }
.page-cta h2 { margin: 0; color: white; font: 500 2rem/1.1 Georgia,serif; }
.page-cta p { margin-bottom: 0; color: #b8c5c2; }
.page-cta .btn { flex: 0 0 auto; background: var(--lime); border-color: var(--lime); color: var(--ink) !important; }
.evidence-filter-panel { margin-top: 15px; padding: 32px; border: 1px solid var(--line-strong); background: var(--paper-2); }
.evidence-filter-panel h2 { margin: 0; font: 500 2rem/1 Georgia,serif; }
.evidence-filters { margin-top: 25px; display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; }
.evidence-filters label { display: grid; gap: 5px; color: var(--muted); font-size: .7rem; text-transform: uppercase; letter-spacing: .08em; }
.evidence-filters select { padding: 10px; color: var(--ink); background: var(--white); border: 1px solid var(--line-strong); }
.filter-result { margin: 16px 0 0; color: var(--blue); font-size: .75rem; }
.contact-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: 70px; align-items: start; }
.contact-purpose-list { display: grid; border-top: 2px solid var(--ink); }
.contact-purpose-list .eyebrow { margin: 18px 0; }
.contact-purpose-list button { padding: 14px 5px; display: grid; grid-template-columns: 38px 1fr; text-align: left; color: var(--ink-2); background: transparent; border: 0; border-top: 1px solid var(--line); cursor: pointer; }
.contact-purpose-list button:hover { color: var(--blue); padding-left: 12px; }
.contact-purpose-list button span { color: var(--orange); font: .65rem/1.7 ui-monospace,monospace; }
.contact-card { width: 100%; max-width: none; }

/* Existing functional surfaces, unified */
.page-hero { max-width: var(--max); margin: auto; padding: 105px 40px 70px; }
.page-hero h1 { color: var(--ink); font: 500 clamp(3rem,6vw,6rem)/.94 Georgia,serif; letter-spacing: -.055em; }
.page-hero p { color: var(--ink-2); }
.form-page { background: transparent; }
.form-card, .daily-topic-card, .daily-article-card, .post-card, .search-result-card { background: var(--white); border-color: var(--line-strong); border-radius: var(--radius); box-shadow: none; }
.form-card { color: var(--ink); }
.form-card h1, .form-card h2, .daily-topic-card h2, .daily-article-card h2, .post-card h2, .search-result-card h2 { color: var(--ink); }
.stack-form label { color: var(--ink-2); }
.stack-form input, .stack-form textarea, .stack-form select, .commons-toolbar select, .comment-form textarea, .search-page-form input, .nav-search input { background: var(--white); border-color: var(--line-strong); color: var(--ink); border-radius: 2px; }
.stack-form input:focus, .stack-form textarea:focus, .stack-form select:focus, .comment-form textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(36,86,214,.08); }
.alert.success { color: #12645d; background: rgba(49,169,156,.08); border-color: rgba(49,169,156,.35); }
.alert.error { color: #963d23; background: rgba(214,107,66,.08); border-color: rgba(214,107,66,.35); }
.daily-hero::after { border-color: var(--line); background: radial-gradient(circle,rgba(36,86,214,.08),transparent 64%); }
.daily-editorial-disclosure { border-color: var(--blue); background: rgba(36,86,214,.05); color: var(--ink-2) !important; }
.daily-topic-card p, .daily-article-card p, .post-card p, .search-result-card p { color: var(--muted); }
.daily-filters { margin: 0 0 28px; padding: 18px; display: grid; grid-template-columns: minmax(240px,1fr) minmax(150px,190px) minmax(150px,190px) auto; gap: 12px; align-items: end; border: 1px solid var(--line-strong); background: var(--paper-2); }
.daily-filters label { display: grid; gap: 5px; color: var(--muted); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.daily-filters input, .daily-filters select { min-height: 43px; padding: 9px 11px; color: var(--ink); background: var(--white); border: 1px solid var(--line-strong); }
.daily-filters p { min-width: 100px; margin: 0 0 10px; color: var(--blue); font-size: .72rem; }
.daily-author-row a, .search-suggestions a, .tabs a.active { color: var(--blue); border-color: rgba(36,86,214,.3); background: rgba(36,86,214,.04); }
.article-breadcrumb, .post-meta, .post-foot, .author-line { color: var(--muted); }
.article-breadcrumb a { color: var(--blue); }
.daily-article h1, .article-body h2, .article-body h3, .daily-discussion h2 { color: var(--ink); }
.article-subtitle, .daily-subtitle { color: var(--ink-2); }
.article-body p { color: var(--ink-2); }
.article-body blockquote, .article-callout { background: var(--paper-2); border-color: var(--orange); color: var(--ink); }
.article-body pre { background: var(--ink); color: #e7efed; }
.article-table-wrap { border-color: var(--line-strong); }
.article-table-wrap table { background: var(--white); }
.article-table-wrap td { color: var(--ink-2); border-color: var(--line); }
.ai-attribution { border-color: rgba(36,86,214,.3); border-left-color: var(--blue); background: rgba(36,86,214,.045); color: var(--ink-2); }
.ai-attribution strong, .ai-attribution-heading { color: var(--ink) !important; }
.ai-attribution-kicker { color: var(--blue); }
.ai-attribution-footer p, .ai-attribution-byline p { color: var(--ink-2); }
.read-aloud { border-color: var(--line); background: var(--paper-2); }
.read-aloud h2 { color: var(--ink); }
.read-controls label, .read-aloud p { color: var(--muted); }
.read-controls input[type=range] { accent-color: var(--blue); }
.read-status { color: var(--blue) !important; }
.daily-voice-section { margin: 0 0 46px; padding: 32px; border: 1px solid var(--line-strong); background: var(--paper-2); }
.daily-section-head { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.72fr); gap: 36px; align-items: end; margin-bottom: 24px; }
.daily-section-head .eyebrow, .daily-related .eyebrow { display: block; margin-bottom: 9px; }
.daily-section-head h2, .daily-related h2 { margin: 0; color: var(--ink); font: 500 clamp(2rem,3.4vw,3.2rem)/1 Georgia,serif; letter-spacing: -.04em; }
.daily-section-head p { margin: 0; color: var(--muted); }
.daily-voice-directory { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.daily-voice-card { min-width: 0; padding: 22px; border: 1px solid var(--line); background: var(--white); display: flex; flex-direction: column; gap: 10px; transition: border-color .2s ease,transform .2s ease; }
.daily-voice-card:hover, .daily-voice-card:focus-visible { border-color: var(--blue); transform: translateY(-2px); }
.daily-voice-card .voice-role { color: var(--orange); font-size: .67rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.daily-voice-card strong { color: var(--ink); font: 500 1.55rem/1.05 Georgia,serif; }
.daily-voice-card>span:not(.voice-role) { color: var(--muted); font-size: .84rem; line-height: 1.55; }
.daily-voice-card small { margin-top: auto; padding-top: 10px; color: var(--blue); font-size: .76rem; font-weight: 700; }
.daily-voice-boundary { max-width: 820px; margin: 24px 0; padding: 16px 18px; border-left: 3px solid var(--blue); background: rgba(36,86,214,.05); display: grid; gap: 4px; color: var(--ink-2); }
.daily-voice-boundary strong { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: var(--blue); }
.daily-voice-switcher { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.daily-voice-switcher a { padding: 9px 14px; border: 1px solid var(--line-strong); background: var(--white); color: var(--muted); font-size: .78rem; font-weight: 700; }
.daily-voice-switcher a:hover, .daily-voice-switcher a.active { border-color: var(--blue); background: rgba(36,86,214,.05); color: var(--blue); }
.daily-voice-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.daily-voice-entry { display: flex; flex-direction: column; }
.daily-voice-entry .text-link { margin-top: auto; align-self: flex-start; }
.theme-chip-row { list-style: none; display: flex; flex-wrap: wrap; gap: 7px; margin: 18px 0 0; padding: 0; }
.theme-chip { display: inline-flex; padding: 5px 9px; border: 1px solid rgba(36,86,214,.24); background: rgba(36,86,214,.04); color: var(--blue); font-size: .66rem; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.voice-pill { color: var(--blue); }
.daily-series-nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 42px; padding-top: 28px; border-top: 1px solid var(--line); }
.series-link { min-width: 0; padding: 18px; border: 1px solid var(--line-strong); background: var(--white); display: grid; gap: 5px; }
.series-link:hover, .series-link:focus-visible { border-color: var(--blue); }
.series-link span { color: var(--orange); font-size: .66rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.series-link strong { color: var(--ink); font: 500 1.05rem/1.3 Georgia,serif; }
.series-link.next { grid-column: 2; text-align: right; }
.daily-related { margin-top: 48px; padding: 30px; border: 1px solid var(--line-strong); background: var(--paper-2); display: grid; grid-template-columns: minmax(0,1fr) minmax(220px,.65fr); gap: 30px; align-items: center; }
.daily-related h2 { font-size: clamp(1.65rem,2.7vw,2.5rem); }
.daily-related-links { display: grid; gap: 8px; }
.daily-related-links a { padding: 12px 14px; border: 1px solid var(--line); background: var(--white); color: var(--blue); display: flex; justify-content: space-between; gap: 12px; font-size: .84rem; font-weight: 700; }
.article-series-nav { margin-top: 58px; }
.article-related { margin-top: 24px; }
.architecture-pathways { display: grid; gap: 12px; margin-top: 38px; }
.architecture-pathway { padding: 24px; border: 1px solid var(--line-strong); background: rgba(255,255,255,.42); }
.architecture-pathway header { display: flex; align-items: baseline; gap: 16px; }
.architecture-pathway header>span { color: var(--orange); font: 700 .62rem/1 ui-monospace,monospace; }
.architecture-pathway h3 { margin: 0; color: var(--ink); font: 500 1.55rem/1.1 Georgia,serif; }
.architecture-pathway ol { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin: 22px 0 16px; padding: 0; list-style: none; }
.architecture-pathway li { display: flex; align-items: center; gap: 9px; color: var(--ink-2); font-size: .8rem; font-weight: 700; }
.architecture-pathway li>span { padding: 7px 9px; border: 1px solid var(--line); background: var(--white); }
.architecture-pathway li i { color: var(--blue); font-style: normal; }
.architecture-pathway p { margin: 0; color: var(--muted); font-size: .82rem; }
.architecture-pathway p strong { color: var(--ink); }
.commons-toolbar { border-color: var(--line); }
.tabs a { color: var(--muted); }
.pill { background: rgba(36,86,214,.06); color: var(--blue); }
.vote-box { border-color: var(--line); }
.proposal-section, .signal-row, .comment { border-color: var(--line); }
.proposal-section p, .comment p { color: var(--ink-2); }
.search-suggestions { background: var(--paper-2); border-color: var(--line); }
.bigeye-feature { background: rgba(36,86,214,.035); border-color: var(--line); }
.bigeye-orbit { border-color: var(--line-strong); background: var(--paper-2); }
.bigeye-orbit::before, .bigeye-orbit::after { border-color: var(--line); }
.bigeye-orbit span { background: var(--white); color: var(--muted); border-color: var(--line); }
.bigeye-orbit strong { color: var(--blue); }

/* Footer */
.footer { max-width: none; margin: 0; padding: 75px max(40px,calc((100vw - var(--max))/2)) 35px; display: grid; grid-template-columns: 1.6fr repeat(3,.65fr); gap: 55px; background: var(--ink); color: #e8eeec; border: 0; }
.footer p { color: #9fb1ad; }
.footer-intro>p { max-width: 500px; }
.footer .brand { color: white; }
.footer .brand-mark { border-color: rgba(255,255,255,.45); }
.footer .brand-lockup small { color: #91a49f; }
.footer-status { display: inline-flex; align-items: center; gap: 9px; color: var(--lime); font-size: .75rem; }
.footer-status span { width: 7px; height: 7px; background: var(--lime); border-radius: 50%; }
.footer-column { display: grid; align-content: start; gap: 8px; }
.footer-column h2 { margin: 0 0 12px; color: white; font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
.footer-column a { color: #aebebb; font-size: .8rem; }
.footer-column a:hover { color: var(--lime); }
.footer-legal { grid-column: 1/-1; display: grid; grid-template-columns: 1fr auto; gap: 25px 60px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.13); }
.footer-legal p { max-width: 800px; margin: 0; font-size: .72rem; }
.footer-legal nav { display: flex; flex-wrap: wrap; gap: 16px; color: #c1ceca; font-size: .72rem; }

@media (max-width: 1100px) {
  .brand-lockup small { display: none; }
  .nav { gap: 11px; }
  .content-card-grid-wide { grid-template-columns: repeat(2,1fr); }
  .daily-voice-directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 950px) {
  .utility-bar p { display: none; }
  .utility-bar { justify-content: flex-end; }
  .site-header { height: 72px; }
  .nav-toggle { display: grid; position: relative; }
  .nav { display: none; position: absolute; top: 72px; left: 15px; right: 15px; width: auto; max-height: calc(100svh - 90px); overflow: auto; padding: 16px; align-items: stretch; flex-direction: column; gap: 0; background: var(--white); border: 1px solid var(--line-strong); box-shadow: var(--shadow); }
  .nav.open { display: flex; }
  .nav-direct, .nav-group>summary { display: block; padding: 12px 4px; border-bottom: 1px solid var(--line); }
  .nav-menu { position: static; width: auto; padding: 2px 0 12px 14px; transform: none; border: 0; border-bottom: 1px solid var(--line); box-shadow: none; background: var(--paper); }
  .nav-menu .nav-menu-lead { display: none; }
  .nav-account { margin-top: 12px; padding: 12px 0 0; border: 0; }
  .home-hero { grid-template-columns: 1fr; align-content: center; padding-top: 110px; padding-bottom: 90px; }
  .home-hero h1 { font-size: clamp(3.5rem,11vw,6.8rem); }
  .hero-proof-card { max-width: 480px; }
  .problem-layout, .architecture-inner, .evidence-section, .community-panel { grid-template-columns: 1fr; gap: 55px; }
  .pillar-grid { grid-template-columns: repeat(2,1fr); }
  .pillar:nth-child(2) { border-right: 0; }
  .pillar:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .build-grid { grid-template-columns: 1fr 1fr; }
  .build-card-1 { grid-column: 1/-1; grid-row: auto; min-height: 380px; }
  .evidence-manifesto { position: static; }
  .content-hero-layout { grid-template-columns: 1fr; gap: 45px; }
  .content-index { max-width: 520px; }
  .content-layout { grid-template-columns: 1fr; gap: 45px; }
  .contact-layout { grid-template-columns: 1fr; gap: 40px; }
  .section-nav { position: static; }
  .section-nav nav { display: flex; overflow-x: auto; }
  .section-nav a { flex: 0 0 auto; }
  .writing-grid { grid-template-columns: repeat(2,1fr); }
  .portfolio-grid { grid-template-columns: 1fr 1fr; }
  .portfolio-card:first-child { grid-column: 1/-1; }
  .system-map>div, .home-final-cta { grid-template-columns: 1fr; gap: 32px; }
  .system-map ol { grid-template-columns: repeat(4,1fr); gap: 20px 0; border-top: 0; }
  .system-map li { border-top: 1px solid rgba(255,255,255,.22); }
  .audience-grid { grid-template-columns: 1fr 1fr; }
  .audience-card:first-child { grid-column: 1/-1; }
  .home-evidence-grid { grid-template-columns: repeat(2,1fr); }
  .footer { grid-template-columns: repeat(3,1fr); }
  .footer-intro { grid-column: 1/-1; }
}

@media (max-width: 700px) {
  .utility-bar nav { width: 100%; justify-content: space-between; gap: 8px; font-size: .58rem; }
  .section, .page-hero { padding-left: 22px; padding-right: 22px; }
  .home-hero { padding-left: 22px; padding-right: 22px; gap: 40px; }
  .hero-rule { left: 22px; right: 22px; }
  .hero-rule span:nth-child(even) { display: none; }
  .home-hero h1 { font-size: clamp(3.25rem,16vw,5.2rem); }
  .home-hero .hero-actions { align-items: stretch; flex-direction: column; }
  .home-hero .btn { width: 100%; }
  .hero-scroll { display: none; }
  .section { padding-top: 80px; padding-bottom: 80px; }
  .section-kicker { grid-template-columns: 38px 1fr; }
  .split-head { grid-template-columns: 1fr; gap: 25px; }
  .problem-layout { gap: 45px; }
  .evidence-checklist>div { grid-template-columns: 35px 82px 1fr; gap: 12px; }
  .pillar-grid, .build-grid, .writing-grid { grid-template-columns: 1fr; }
  .portfolio-grid, .audience-grid, .home-evidence-grid { grid-template-columns: 1fr; }
  .portfolio-card:first-child, .audience-card:first-child { grid-column: auto; }
  .system-map ol { grid-template-columns: 1fr; gap: 0; }
  .system-map li { padding: 15px 0 15px 18px; border-top: 0; border-left: 1px solid rgba(255,255,255,.22); }
  .system-map li::before { top: 20px; left: -5px; }
  .system-map li:not(:last-child)::after { content: "↓"; right: 5px; top: auto; bottom: -9px; }
  .home-evidence-link:not(:last-child) { margin-right: 0; border-right: 0; }
  .home-final-cta { padding: 58px 22px; }
  .pillar { min-height: 210px; border-right: 0; border-bottom: 1px solid var(--line); }
  .pillar h3 { margin-top: 38px; }
  .build-card-1 { grid-column: auto; min-height: 390px; }
  .lab-card { grid-template-columns: 1fr; gap: 20px; }
  .lab-orbit { width: 130px; height: 130px; }
  .lab-orbit::after { inset: 43px; }
  .lab-orbit span { left: 59px; }
  .lab-card .lab-app-link { display: block; margin: 10px 0 0; }
  .evidence-link { grid-template-columns: 1fr 28px; }
  .evidence-link>span { grid-column: 1; }
  .evidence-link strong, .evidence-link p { grid-column: 1; }
  .evidence-link i { grid-column: 2; grid-row: 1/4; }
  .status-row { grid-template-columns: 1fr; gap: 7px; padding: 20px 5px; }
  .status-head { display: none; }
  .community-panel { padding: 35px 25px; }
  .content-shell, .boundary-banner>div { width: calc(100% - 44px); }
  .content-hero { padding-top: 45px; }
  .breadcrumbs { margin-bottom: 44px; }
  .content-hero h1 { font-size: clamp(3.1rem,15vw,5rem); }
  .boundary-banner>div { grid-template-columns: 1fr; gap: 6px; padding: 20px 0; }
  .content-card-grid, .content-card-grid-wide, .content-checklist, .evidence-filters { grid-template-columns: 1fr; }
  .daily-filters { grid-template-columns: 1fr; align-items: stretch; }
  .daily-section-head, .daily-voice-list, .daily-related { grid-template-columns: 1fr; }
  .daily-voice-section, .daily-related { padding: 24px; }
  .glossary-grid>div { grid-template-columns: 1fr; gap: 8px; }
  .page-cta { align-items: stretch; flex-direction: column; }
  .footer { padding-left: 22px; padding-right: 22px; grid-template-columns: 1fr 1fr; gap: 40px 28px; }
  .footer-intro, .footer-legal { grid-column: 1/-1; }
  .footer-legal { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .daily-voice-directory, .daily-series-nav { grid-template-columns: 1fr; }
  .series-link.next { grid-column: 1; text-align: left; }
  .daily-voice-section { padding: 20px; }
}

@media (prefers-reduced-motion: no-preference) {
  .reveal { opacity: 0; transform: translateY(15px); transition: opacity .65s ease, transform .65s ease; }
  .reveal.visible { opacity: 1; transform: none; }
  .lab-orbit i { animation: orbit-turn 14s linear infinite; }
  @keyframes orbit-turn { to { transform: rotate(388deg); } }
}

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

@media print {
  .utility-bar, .site-header, .section-nav, .footer, #lattice, .hero-actions { display: none !important; }
  body { background: white; color: black; }
  .content-layout, .content-hero-layout { display: block; }
  .content-shell { width: 100%; }
  a { text-decoration: underline; }
}
