:root {
  --ink: #f3eee4;
  --muted: rgba(243,238,228,.57);
  --line: rgba(243,238,228,.16);
  --ground: #080706;
  --signal: #ff5d35;
  --sulfur: #d9ff68;
  color-scheme: dark;
  font-synthesis: none;
}
* { box-sizing: border-box; }
html { background: var(--ground); }
body {
  margin: 0;
  background:
    radial-gradient(circle at 78% 7%, rgba(255,93,53,.12), transparent 28rem),
    radial-gradient(circle at 13% 33%, rgba(217,255,104,.045), transparent 30rem),
    var(--ground);
  color: var(--ink);
  font-family: ui-monospace, "SFMono-Regular", "Cascadia Mono", monospace;
  -webkit-font-smoothing: antialiased;
}
body::before {
  position: fixed; inset: 0; z-index: 5; pointer-events: none; content: ""; opacity: .08;
  background-image: repeating-radial-gradient(circle at 24% 17%, transparent 0, rgba(255,255,255,.12) .5px, transparent .9px, transparent 5px);
  mix-blend-mode: soft-light;
}
a { color: inherit; }
.head, main, .foot { width: min(1500px, calc(100% - 72px)); margin-inline: auto; }
.head { height: 106px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 8px; letter-spacing: .24em; }
.head a { color: var(--ink); text-decoration: none; letter-spacing: .36em; }
.kicker { margin: 0 0 24px; color: var(--signal); font-size: 8px; letter-spacing: .28em; }
.hero { min-height: min(870px, calc(100svh - 106px)); padding: clamp(90px, 13vh, 170px) 0 90px; display: grid; grid-template-columns: 1fr minmax(280px, .44fr); align-items: end; column-gap: 6vw; border-bottom: 1px solid var(--line); }
.hero .kicker { grid-column: 1/-1; align-self: start; }
h1 { grid-column: 1/-1; margin: 0 0 clamp(60px, 10vh, 120px); font: italic clamp(63px, 10.2vw, 164px)/.78 Iowan Old Style, Baskerville, Georgia, serif; letter-spacing: -.065em; }
h1 span, h1 em { display: block; }
h1 span:nth-child(2) { margin-left: 9vw; }
h1 em { color: transparent; -webkit-text-stroke: 1px rgba(243,238,228,.84); margin-left: 22vw; }
.declaration { margin: 0; max-width: 720px; font: clamp(17px, 1.7vw, 27px)/1.55 Iowan Old Style, Baskerville, Georgia, serif; }
.status { align-self: end; display: flex; gap: 12px; align-items: center; color: var(--muted); font-size: 8px; letter-spacing: .17em; }
.status i { width: 8px; height: 8px; border-radius: 50%; background: var(--sulfur); box-shadow: 0 0 24px rgba(217,255,104,.6); animation: pulse 5s ease-in-out infinite; }
h2 { margin: 0; font: italic clamp(44px, 6vw, 94px)/.93 Iowan Old Style, Baskerville, Georgia, serif; letter-spacing: -.045em; }
.boundary, .method { padding: clamp(100px, 13vw, 190px) 0; display: grid; grid-template-columns: 1fr 1fr; gap: 7vw; border-bottom: 1px solid var(--line); }
.boundary__copy, .method > div:last-child { padding-top: 42px; }
.boundary__copy p, .method p:not(.kicker), .grounding > p:not(.kicker) { margin: 0 0 24px; color: var(--muted); font-size: 13px; line-height: 1.9; }
.tests, .refusals, .programme, .grounding { padding: clamp(100px, 13vw, 190px) 0; border-bottom: 1px solid var(--line); }
.tests header, .refusals header { margin-bottom: 74px; }
.tests ol, .programme ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.tests li { display: grid; grid-template-columns: 70px minmax(0,1fr); gap: 28px; padding: 30px 0; border-bottom: 1px solid var(--line); }
.tests li > b, .programme li > b { color: var(--signal); font: 10px/1 ui-monospace, monospace; letter-spacing: .15em; }
.tests h3, .programme h3 { margin: 0 0 10px; font: italic 29px/1.1 Iowan Old Style, Baskerville, Georgia, serif; }
.tests li p, .programme li p { margin: 0; max-width: 750px; color: var(--muted); font-size: 11px; line-height: 1.75; }
.refusals { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; }
.refusals ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.refusals li { padding: 19px 0; border-bottom: 1px solid var(--line); color: var(--muted); font: italic 24px/1.3 Iowan Old Style, Baskerville, Georgia, serif; }
.refusals li::before { content: "×"; display: inline-block; width: 35px; color: var(--signal); font: 15px/1 ui-monospace, monospace; }
.programme > header { max-width: 760px; margin-bottom: 90px; }
.programme > header > p:last-child { color: var(--muted); font-size: 12px; line-height: 1.8; }
.programme li { display: grid; grid-template-columns: 90px minmax(0,1fr); gap: 30px; padding: 34px 0; border-bottom: 1px solid var(--line); opacity: .56; }
.programme li.current { opacity: 1; }
.programme li > div > span { display: block; margin-bottom: 13px; color: var(--muted); font-size: 7px; letter-spacing: .18em; }
.programme li.current > b, .programme li.current h3 { color: var(--sulfur); }
.programme a { display: inline-block; margin-top: 18px; color: var(--sulfur); font-size: 8px; letter-spacing: .17em; text-decoration: none; text-transform: uppercase; }
.programme a i, .papers i { font-style: normal; }
.grounding { display: grid; grid-template-columns: .7fr 1.3fr; gap: 7vw; }
.grounding .kicker { grid-column: 1/-1; }
.grounding > p:not(.kicker) { padding-top: 22px; }
.papers { grid-column: 1/-1; margin-top: 70px; border-top: 1px solid var(--line); }
.papers a { display: grid; grid-template-columns: 210px 1fr auto; gap: 25px; padding: 21px 0; border-bottom: 1px solid var(--line); text-decoration: none; font: italic 20px/1.3 Iowan Old Style, Baskerville, Georgia, serif; transition: color .2s; }
.papers a:hover { color: var(--sulfur); }
.papers span { color: var(--muted); font: 8px/1.5 ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; }
.foot { min-height: 140px; display: flex; align-items: center; justify-content: space-between; gap: 30px; color: var(--muted); font-size: 8px; letter-spacing: .18em; }
.foot nav { display: flex; gap: 28px; }
.foot a { text-decoration: none; }
@keyframes pulse { 0%,100% { opacity: .45; transform: scale(.8); } 50% { opacity: 1; transform: scale(1.15); } }
@media (max-width: 760px) {
  .head, main, .foot { width: calc(100% - 40px); }
  .head { height: 84px; }
  .hero { min-height: calc(100svh - 84px); display: block; padding: 85px 0 72px; }
  h1 { margin-bottom: 60px; font-size: clamp(58px, 18vw, 94px); }
  h1 span:nth-child(2), h1 em { margin-left: 0; }
  .declaration { font-size: 18px; }
  .status { margin-top: 48px; }
  .boundary, .method, .refusals, .grounding { grid-template-columns: 1fr; }
  .tests li { grid-template-columns: 44px 1fr; gap: 12px; }
  .programme li { grid-template-columns: 48px 1fr; gap: 14px; }
  .papers a { grid-template-columns: 1fr auto; }
  .papers span { grid-column: 1/-1; }
  .foot { padding: 35px 0; align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { animation: none !important; } }
