:root {
  --ink: #090807;
  --ink-soft: #11100e;
  --panel: #17140f;
  --brass: #c79046;
  --brass-hot: #edae55;
  --copper: #8f4f2f;
  --ivory: #efe7d4;
  --smoke: #9b9384;
  --line: rgba(224, 181, 108, .28);
  --line-soft: rgba(239, 231, 212, .13);
  --font-display: "Cabinet Grotesk", "Aptos Display", "Arial Narrow", sans-serif;
  --font-body: "Segoe UI", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body {
  margin: 0;
  min-width: 320px;
  overflow-x: hidden;
  color: var(--ivory);
  background:
    radial-gradient(circle at 20% 10%, rgba(143, 79, 47, .16), transparent 32rem),
    radial-gradient(circle at 86% 40%, rgba(199, 144, 70, .08), transparent 28rem),
    var(--ink);
  font-family: var(--font-body);
  line-height: 1.55;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 30;
  pointer-events: none;
  border: 1px solid rgba(239, 231, 212, .07);
}

a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
img { display: block; max-width: 100%; }
main { width: 100%; max-width: 100%; overflow: hidden; }

::selection { color: var(--ink); background: var(--brass-hot); }
:focus-visible { outline: 2px solid var(--brass-hot); outline-offset: 4px; }

.grain {
  position: fixed;
  inset: -50%;
  z-index: 28;
  pointer-events: none;
  opacity: .045;
  background-image: 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='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.85'/%3E%3C/svg%3E");
  animation: grain-shift .22s steps(2) infinite;
}

.cursor-glow {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 2;
  width: 28rem;
  height: 28rem;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(199, 144, 70, .12), transparent 67%);
  opacity: 0;
  transition: opacity .35s ease;
}

.site-header {
  position: fixed;
  z-index: 25;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  width: min(1180px, calc(100vw - 32px));
  height: 64px;
  padding: 0 12px 0 22px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  border: 1px solid rgba(239, 231, 212, .22);
  border-radius: 3px;
  background: rgba(9, 8, 7, .76);
  box-shadow: 0 18px 60px rgba(0, 0, 0, .32), inset 0 1px rgba(255,255,255,.05);
  backdrop-filter: blur(18px);
}

.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-display);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .15em;
}

.brand-mark { display: flex; gap: 3px; }
.brand-mark i { width: 5px; height: 22px; transform: skew(-18deg); background: var(--brass); }
.site-header nav { display: flex; gap: clamp(22px, 4vw, 52px); }
.site-header nav a {
  position: relative;
  color: #c9c0ae;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.site-header nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -6px; height: 1px; background: var(--brass); transition: right .35s ease; }
.site-header nav a:hover::after { right: 0; }
.nav-cta {
  justify-self: end;
  min-width: 106px;
  padding: 13px 22px;
  color: var(--ink);
  background: var(--ivory);
  text-align: center;
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  transition: background .3s ease, transform .3s ease;
}
.nav-cta:hover { background: var(--brass-hot); transform: translateY(-2px); }

.hero {
  position: relative;
  min-height: 100svh;
  display: grid;
  place-items: center;
  isolation: isolate;
  overflow: hidden;
  background: #050403;
}
.hero-image { position: absolute; inset: 0; z-index: 0; width: 100%; height: 112%; object-fit: cover; object-position: center 44%; filter: contrast(1.08) saturate(.92) brightness(.84); }
.hero-vignette { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: radial-gradient(circle at 50% 53%, rgba(0,0,0,.18) 0 20%, rgba(0,0,0,.32) 58%, rgba(7,6,5,.72) 100%), linear-gradient(to bottom, rgba(0,0,0,.42), transparent 25%, transparent 68%, rgba(9,8,7,.72) 100%); }
.hero::after { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; background: linear-gradient(90deg, rgba(9,8,7,.32), transparent 20%, transparent 80%, rgba(9,8,7,.32)); }
.hero-rings { position: absolute; z-index: 3; top: 49%; left: 50%; width: min(76vw, 980px); aspect-ratio: 1; transform: translate(-50%,-50%); opacity: .42; }
.hero-rings span { position: absolute; inset: 0; border: 1px solid rgba(237,174,85,.48); border-radius: 50%; animation: ring-spin 34s linear infinite; }
.hero-rings span:nth-child(2) { inset: 10%; border-style: dashed; animation-direction: reverse; animation-duration: 26s; }
.hero-rings span:nth-child(3) { inset: 23%; border-color: rgba(239,231,212,.22); animation-duration: 18s; }
.hero-rings span::before, .hero-rings span::after { content: ""; position: absolute; left: 50%; width: 7px; height: 7px; border-radius: 50%; background: var(--brass-hot); box-shadow: 0 0 18px var(--brass-hot); }
.hero-rings span::before { top: -4px; }.hero-rings span::after { bottom: -4px; }

.hero-copy { position: relative; z-index: 4; width: min(1320px, 92vw); padding: 130px 0 120px; text-align: center; }
.hero-kicker, .chapter-line { margin: 0 0 20px; color: var(--brass-hot); font-size: .66rem; font-weight: 800; letter-spacing: .32em; text-transform: uppercase; }
.hero h1 {
  margin: 0 auto;
  width: min(1320px, 92vw);
  font-family: var(--font-display);
  font-size: clamp(4rem, 9.7vw, 9.8rem);
  font-weight: 900;
  line-height: .78;
  letter-spacing: -.065em;
  text-transform: uppercase;
  text-shadow: 0 8px 50px rgba(0,0,0,.9);
}
.hero h1::first-line { color: var(--ivory); }
.hero-intro { max-width: 570px; margin: 38px auto 0; color: #d0c6b4; font-size: clamp(.96rem, 1.4vw, 1.12rem); }
.hero-actions { display: flex; justify-content: center; gap: 12px; margin-top: 34px; }
.button { min-width: 190px; padding: 17px 26px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; font-size: .68rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; transition: transform .35s ease, background .35s ease, border-color .35s ease; }
.button:hover { transform: translateY(-4px); }
.button-brass { color: var(--ink); background: var(--brass-hot); }
.button-brass:hover { background: var(--ivory); }
.button-ghost { color: var(--ivory); border-color: rgba(239,231,212,.46); background: rgba(9,8,7,.4); backdrop-filter: blur(10px); }
.button-ghost:hover { border-color: var(--brass-hot); background: rgba(199,144,70,.14); }

.pressure-console { position: absolute; z-index: 4; right: clamp(24px,5vw,80px); bottom: 42px; display: flex; align-items: center; gap: 14px; color: #cfc5b3; }
.pressure-console small, .pressure-console strong, .status-line { display: block; }
.pressure-console small { font-size: .54rem; letter-spacing: .2em; }
.pressure-console strong { color: var(--ivory); font-family: var(--font-display); font-size: 1.25rem; }
.status-line { color: var(--brass); font-size: .52rem; letter-spacing: .13em; }
.gauge { position: relative; width: 62px; height: 62px; border: 1px solid var(--line); border-radius: 50%; background: radial-gradient(circle, #1c1812 0 42%, #090807 44%); box-shadow: inset 0 0 20px #000, 0 0 24px rgba(199,144,70,.12); }
.gauge::before { content: ""; position: absolute; inset: 7px; border: 1px dashed rgba(239,231,212,.28); border-radius: 50%; }
.gauge-needle { position: absolute; z-index: 2; left: 50%; bottom: 50%; width: 1px; height: 20px; background: var(--brass-hot); transform-origin: 50% 100%; transform: rotate(38deg); box-shadow: 0 0 7px var(--brass-hot); transition: transform .7s cubic-bezier(.2,.8,.2,1); }
.gauge-core { position: absolute; z-index: 3; left: 50%; top: 50%; width: 6px; height: 6px; margin: -3px; border-radius: 50%; background: var(--ivory); }
.domain-label { position: absolute; z-index: 4; left: clamp(24px,5vw,80px); bottom: 44px; margin: 0; color: rgba(239,231,212,.72); font-size: .55rem; font-weight: 800; letter-spacing: .22em; }

.manifesto, .world-grid-wrap, .districts, .archive, .transmissions { padding: clamp(120px, 16vw, 240px) clamp(20px, 5vw, 80px); }
.manifesto { width: min(1420px, 100%); margin: 0 auto; }
.manifesto h2 { max-width: 1320px; margin: 0; font-family: var(--font-display); font-size: clamp(3.2rem, 7vw, 7.4rem); font-weight: 850; line-height: .96; letter-spacing: -.055em; }
.inline-world { display: inline-block; width: clamp(80px, 12vw, 180px); height: .56em; margin: 0 .08em; vertical-align: .08em; border: 1px solid var(--line); border-radius: 999px; background: linear-gradient(rgba(199,144,70,.12),rgba(9,8,7,.32)), url('/meridian-engine.webp') center 58% / 380% auto; box-shadow: inset 0 0 24px #000; }
.manifesto-copy { margin: 72px 0 0 auto; max-width: 760px; display: grid; grid-template-columns: 1fr 1fr; gap: 48px; color: #aaa291; font-size: 1.02rem; }
.manifesto-copy p { margin: 0; }.manifesto-copy em { color: var(--brass-hot); font-style: normal; }

.world-grid-wrap { border-top: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); background: linear-gradient(180deg, rgba(199,144,70,.03), transparent 30% 70%, rgba(143,79,47,.05)); }
.section-heading { width: min(1400px, 100%); margin: 0 auto 76px; display: flex; justify-content: space-between; align-items: end; gap: 40px; }
.section-heading h2 { margin: 0; font-family: var(--font-display); font-size: clamp(2.9rem, 5.3vw, 6rem); line-height: .95; letter-spacing: -.05em; }
.section-heading .chapter-line { align-self: start; }
.world-grid { width: min(1400px, 100%); margin: auto; display: grid; grid-template-columns: repeat(12, 1fr); grid-template-rows: repeat(2, minmax(250px, 1fr)); grid-auto-flow: dense; gap: 1px; background: var(--line); border: 1px solid var(--line); }
.world-card { position: relative; min-height: 260px; overflow: hidden; isolation: isolate; background: var(--panel); }
.core-card { grid-column: span 7; grid-row: span 2; min-height: 520px; }
.atlas-card, .time-card { grid-column: span 5; }
.world-card::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .32; transition: transform .8s ease, opacity .8s ease; }
.core-card::before { background: radial-gradient(circle at 72% 42%, rgba(237,174,85,.32), transparent 24%), url('/meridian-engine.webp') 52% 57% / cover; filter: contrast(1.22) brightness(.42); }
.atlas-card::before { background: linear-gradient(120deg, rgba(199,144,70,.12), transparent), url('/meridian-engine.webp') 12% 62% / 170% auto; filter: grayscale(.55) brightness(.33); }
.time-card::before { background: radial-gradient(circle at 78% 40%, rgba(199,144,70,.16), transparent 25%); }
.world-card:hover::before { transform: scale(1.05); opacity: .48; }
.card-copy { position: absolute; z-index: 3; left: clamp(24px,4vw,56px); right: clamp(24px,4vw,56px); bottom: clamp(24px,4vw,50px); }
.card-copy p, .archive-card p { margin: 0 0 12px; color: var(--brass-hot); font-size: .6rem; font-weight: 800; letter-spacing: .22em; }
.card-copy h3 { max-width: 620px; margin: 0 0 16px; font-family: var(--font-display); font-size: clamp(1.8rem,3vw,3.4rem); line-height: .95; letter-spacing: -.035em; }
.card-copy span { display: block; max-width: 520px; color: #a9a08f; font-size: .9rem; }
.card-glow { position: absolute; right: 20%; top: 34%; width: 220px; height: 220px; border-radius: 50%; background: rgba(199,144,70,.14); filter: blur(80px); }
.turbine { position: absolute; right: 6%; top: 9%; width: min(31vw, 390px); aspect-ratio: 1; }
.turbine-ring { position: absolute; inset: 0; border: 1px dashed rgba(237,174,85,.48); border-radius: 50%; animation: ring-spin 30s linear infinite; }
.turbine-ring::before, .turbine-ring::after { content: ""; position: absolute; inset: 10%; border: 7px dotted rgba(199,144,70,.25); border-radius: 50%; }
.ring-two { inset: 16%; animation-direction: reverse; animation-duration: 18s; }.ring-three { inset: 33%; animation-duration: 12s; }
.turbine-heart { position: absolute; inset: 44%; border-radius: 50%; background: var(--brass-hot); box-shadow: 0 0 28px 8px rgba(237,174,85,.42); animation: pulse 2.4s ease-in-out infinite; }
.atlas-lines { position: absolute; inset: 22px; opacity: .65; }
.atlas-lines i { position: absolute; background: var(--line); }
.atlas-lines i:nth-child(1), .atlas-lines i:nth-child(2) { top: 0; bottom: 0; width: 1px; transform: rotate(22deg); }.atlas-lines i:nth-child(1){left:32%}.atlas-lines i:nth-child(2){right:24%}
.atlas-lines i:nth-child(3), .atlas-lines i:nth-child(4) { left: 0; right: 0; height: 1px; transform: rotate(-9deg); }.atlas-lines i:nth-child(3){top:32%}.atlas-lines i:nth-child(4){bottom:28%}
.clock-face { position: absolute; right: 8%; top: 50%; width: 150px; height: 150px; transform: translateY(-50%); border: 1px solid var(--line); border-radius: 50%; box-shadow: inset 0 0 28px #000; }
.clock-face::before { content: ""; position: absolute; inset: 12px; border: 2px dotted rgba(239,231,212,.24); border-radius: 50%; }
.clock-face i, .clock-face b { position: absolute; left: 50%; bottom: 50%; width: 2px; transform-origin: bottom; background: var(--brass-hot); }
.clock-face i { height: 48px; animation: clock-hand 18s linear infinite; }.clock-face b { height: 33px; animation: clock-hand 90s linear infinite; }

.districts { width: min(1540px, 100%); margin: auto; }
.section-heading.compact { align-items: end; }.section-heading.compact > p:last-child { max-width: 280px; color: var(--smoke); }
.district-accordion { display: flex; height: min(680px, 72vh); min-height: 560px; gap: 2px; overflow: hidden; }
.district { position: relative; flex: .72 1 0; min-width: 0; overflow: hidden; isolation: isolate; border: 1px solid var(--line-soft); transition: flex .7s cubic-bezier(.2,.75,.2,1); }
.district::before { content: ""; position: absolute; inset: -4%; z-index: -2; background-image: linear-gradient(to top, rgba(7,6,5,.96), rgba(9,8,7,.12) 75%), url('/meridian-engine.webp'); background-size: auto 110%; filter: contrast(1.15) brightness(.55) saturate(.75); transition: transform .8s ease, filter .8s ease; }
.district[data-district="brass"]::before { background-position: 14% center; }.district[data-district="smoke"]::before { background-position: 37% center; }.district[data-district="aether"]::before { background-position: 68% center; }.district[data-district="foundry"]::before { background-position: 91% center; }
.district::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(9,8,7,.64), transparent); }
.district:hover, .district:focus-within, .district.is-open { flex: 2.4 1 0; }
.district:hover::before, .district:focus-within::before, .district.is-open::before { transform: scale(1.06); filter: contrast(1.2) brightness(.72) saturate(.9); }
.district button { position: absolute; inset: 0; width: 100%; border: 0; padding: 28px; background: transparent; cursor: pointer; }
.district-name { position: absolute; left: 28px; top: 30px; font-family: var(--font-display); font-size: .82rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; writing-mode: vertical-rl; transform: rotate(180deg); transition: writing-mode .2s; }
.district-symbol { position: absolute; right: 28px; top: 24px; color: rgba(239,231,212,.5); font-family: Georgia, serif; font-size: 3rem; }
.district-content { position: absolute; left: 36px; right: 36px; bottom: 36px; opacity: 0; transform: translateY(20px); transition: opacity .45s ease .1s, transform .45s ease .1s; }
.district:hover .district-content, .district:focus-within .district-content, .district.is-open .district-content { opacity: 1; transform: translateY(0); }
.district-content p { max-width: 440px; margin: 0 0 18px; font-family: var(--font-display); font-size: clamp(1.5rem,2.5vw,2.5rem); line-height: 1; letter-spacing: -.03em; }
.district-content span { color: var(--brass-hot); font-size: .56rem; font-weight: 800; letter-spacing: .2em; }

.archive { background: #0c0a08; border-top: 1px solid var(--line-soft); }
.archive-layout { width: min(1400px,100%); margin: auto; display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(50px,8vw,130px); align-items: start; }
.archive-pin { padding-top: 24px; }
.archive-pin h2 { margin: 0; font-family: var(--font-display); font-size: clamp(3rem,5.8vw,6.4rem); line-height: .9; letter-spacing: -.05em; }
.archive-pin > p:last-child { max-width: 430px; margin-top: 32px; color: var(--smoke); }
.archive-cards { display: grid; gap: 22px; padding-bottom: 120px; }
.archive-card { position: sticky; top: 130px; min-height: 430px; padding: clamp(28px,4vw,58px); display: grid; grid-template-columns: auto 1fr; gap: 40px; align-items: end; border: 1px solid var(--line); background: linear-gradient(145deg, #221b12, #100e0b 58%); box-shadow: 0 -28px 70px rgba(0,0,0,.42); overflow: hidden; }
.archive-card:nth-child(2) { top: 155px; background: linear-gradient(145deg, #23180f, #0e0d0a 62%); }.archive-card:nth-child(3){top:180px;background:linear-gradient(145deg,#1a1711,#0b0a08 65%)}
.archive-card::before { content: ""; position: absolute; width: 420px; height: 420px; right: -140px; top: -160px; border: 1px solid var(--line); border-radius: 50%; box-shadow: 0 0 0 24px rgba(199,144,70,.03), 0 0 0 48px rgba(199,144,70,.025); }
.archive-glyph { align-self: start; color: var(--brass); font-family: Georgia,serif; font-size: 5rem; line-height: 1; }
.archive-card h3 { max-width: 640px; margin: 0 0 20px; font-family: var(--font-display); font-size: clamp(2rem,3.6vw,3.8rem); line-height: .97; letter-spacing: -.04em; }
.archive-card div > span { color: var(--smoke); }

.transmissions { text-align: center; }
.transmission-device { width: min(440px,70vw); height: 140px; margin: 0 auto 54px; display: flex; justify-content: center; align-items: center; gap: 22px; }
.coil { width: 110px; height: 42px; border-top: 6px double var(--brass); border-bottom: 6px double var(--brass); transform: skewX(-25deg); opacity: .65; }
.signal-eye { width: 96px; height: 96px; border: 1px solid var(--line); border-radius: 50%; background: radial-gradient(circle, var(--brass-hot) 0 4%, rgba(237,174,85,.28) 5% 18%, #0b0907 20% 50%, transparent 52%); box-shadow: 0 0 80px rgba(199,144,70,.15); animation: pulse 3s ease-in-out infinite; }
.transmissions h2 { margin: 0 auto; font-family: var(--font-display); font-size: clamp(3rem,6vw,6.8rem); line-height: .9; letter-spacing: -.05em; }
.transmission-carousel { width: min(1120px,100%); margin: 72px auto 0; display: grid; grid-template-columns: 70px 1fr 70px; align-items: center; gap: 24px; }
.transmission-carousel blockquote { margin: 0; }
.transmission-carousel blockquote p { max-width: 860px; margin: auto; font-family: Georgia, serif; font-size: clamp(1.7rem,3.2vw,3.2rem); font-style: italic; line-height: 1.25; }
.transmission-carousel footer { margin-top: 26px; color: var(--brass); font-size: .58rem; font-weight: 800; letter-spacing: .22em; }
.carousel-arrow { width: 62px; height: 62px; border: 1px solid var(--line); border-radius: 50%; background: transparent; cursor: pointer; font-size: 1.3rem; transition: color .3s ease, background .3s ease, transform .3s ease; }
.carousel-arrow:hover { color: var(--ink); background: var(--brass-hot); transform: scale(1.06); }
.signal-dots { display: flex; justify-content: center; gap: 8px; margin-top: 48px; }
.signal-dots i { width: 24px; height: 2px; background: rgba(239,231,212,.2); transition: width .35s ease, background .35s ease; }.signal-dots i.is-active { width: 56px; background: var(--brass-hot); }

.portal { position: relative; min-height: 96svh; padding: 150px 20px; display: flex; flex-direction: column; justify-content: center; align-items: center; overflow: hidden; text-align: center; background: var(--brass-hot); color: var(--ink); }
.portal::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(237,174,85,.86),rgba(237,174,85,.95)), url('/meridian-engine.webp'); background-size: cover; background-position: center; mix-blend-mode: multiply; opacity: .32; }
.portal > * { position: relative; z-index: 1; }
.portal .chapter-line { color: var(--ink); }
.portal h2 { margin: 0; font-family: var(--font-display); font-size: clamp(5rem,13vw,13rem); font-weight: 900; line-height: .72; letter-spacing: -.075em; }
.portal > p:not(.chapter-line) { max-width: 500px; margin: 42px auto; font-weight: 600; }
.button-ivory { color: var(--ivory); background: var(--ink); }
.button-ivory:hover { background: #2b1a0e; }
.portal-gear { position: absolute; z-index: 0; width: min(68vw,900px); aspect-ratio: 1; opacity: .18; animation: ring-spin 50s linear infinite; }
.portal-gear span { position: absolute; inset: 0; border: 3px dashed var(--ink); border-radius: 50%; }.portal-gear span:nth-child(2){inset:18%;border-style:dotted}.portal-gear span:nth-child(3){inset:42%;border-style:solid}

.site-footer { min-height: 110px; padding: 28px clamp(20px,5vw,80px); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; color: #847d70; background: #070605; border-top: 1px solid var(--line-soft); font-size: .55rem; font-weight: 800; letter-spacing: .18em; }
.site-footer span:last-child { justify-self: end; }
.noscript { position: fixed; z-index: 40; left: 12px; right: 12px; bottom: 12px; margin: 0; padding: 12px; color: var(--ink); background: var(--brass-hot); text-align: center; }

.not-found { min-height: 100svh; display: grid; place-items: center; padding: 32px; background: linear-gradient(rgba(9,8,7,.55),rgba(9,8,7,.92)), url('/meridian-engine.webp') center / cover; }
.not-found-card { width: min(820px,100%); padding: clamp(40px,8vw,100px); border: 1px solid var(--line); background: rgba(9,8,7,.78); backdrop-filter: blur(18px); text-align: center; }
.not-found-card strong { display: block; color: var(--brass); font-family: Georgia,serif; font-size: clamp(5rem,14vw,10rem); line-height: .8; }
.not-found-card h1 { margin: 28px 0 16px; font-family: var(--font-display); font-size: clamp(2.6rem,7vw,5.5rem); line-height: .9; letter-spacing: -.05em; }
.not-found-card p { margin: 0 auto 34px; max-width: 520px; color: var(--smoke); }

@keyframes ring-spin { to { transform: rotate(360deg); } }
@keyframes pulse { 50% { transform: scale(1.09); opacity: .72; } }
@keyframes clock-hand { to { transform: rotate(360deg); } }
@keyframes grain-shift { 0%{transform:translate(0,0)}25%{transform:translate(2%,-1%)}50%{transform:translate(-1%,2%)}75%{transform:translate(1%,1%)}100%{transform:translate(0,0)} }

@media (max-width: 900px) {
  .site-header { grid-template-columns: 1fr auto; }.site-header nav { display: none; }
  .hero h1 { font-size: clamp(3.7rem,14.2vw,7rem); line-height: .82; }
  .pressure-console { display: none; }.domain-label { left: 50%; transform: translateX(-50%); white-space: nowrap; }
  .manifesto-copy { grid-template-columns: 1fr; gap: 24px; }
  .section-heading { display: block; }.section-heading .chapter-line { margin-bottom: 28px; }.section-heading.compact > p:last-child { margin-top: 24px; }
  .world-grid { grid-template-columns: 1fr; grid-template-rows: none; }.core-card,.atlas-card,.time-card{grid-column:auto;grid-row:auto}.core-card{min-height:540px}.atlas-card,.time-card{min-height:330px}
  .district-accordion { display: grid; height: auto; min-height: 0; }.district { min-height: 220px; }.district,.district:hover,.district:focus-within,.district.is-open{flex:none}.district button{position:absolute}.district-name{writing-mode:horizontal-tb;transform:none}.district-content{opacity:0;pointer-events:none}.district.is-open{min-height:480px}.district.is-open .district-content{opacity:1;pointer-events:auto}.district::before{background-size:cover}
  .archive-layout { grid-template-columns: 1fr; }.archive-pin { position: static !important; transform: none !important; }.archive-cards{padding-bottom:0}.archive-card,.archive-card:nth-child(2),.archive-card:nth-child(3){position:relative;top:auto;min-height:390px}
  .site-footer { grid-template-columns: 1fr; text-align:center; }.site-footer span:last-child{justify-self:center}
}

@media (max-width: 560px) {
  .site-header { top: 10px; width: calc(100vw - 20px); height: 58px; padding-left: 14px; }.brand span:last-child { display: none; }.nav-cta{min-width:94px;padding:11px 16px}
  .hero-copy { width: calc(100vw - 28px); padding-top: 120px; }.hero h1{width:100%;font-size:clamp(3.15rem,16.4vw,5.5rem)}.hero-intro{max-width:340px;margin-top:28px}.hero-actions{flex-direction:column;align-items:center}.button{width:min(300px,100%)}
  .manifesto,.world-grid-wrap,.districts,.archive,.transmissions{padding-left:16px;padding-right:16px}.manifesto h2{font-size:clamp(2.8rem,13vw,4.8rem)}
  .turbine{width:260px;right:-48px}.clock-face{opacity:.5;right:-20px}.card-copy{left:24px;right:24px;bottom:26px}
  .archive-card{grid-template-columns:1fr;gap:20px;padding:28px}.archive-glyph{font-size:3.2rem}.archive-card h3{font-size:2.2rem}
  .transmission-carousel{grid-template-columns:46px 1fr 46px;gap:10px}.carousel-arrow{width:44px;height:44px}.transmission-carousel blockquote p{font-size:1.5rem}
  .portal h2{font-size:clamp(4.1rem,20vw,7rem)}
}

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