/* ============================================================
   We're Doing This Wrong — Design System
   Editorial / mustard + black / off-white paper
   ============================================================ */

:root {
  /* Type scale — fluid */
  --text-xs:    clamp(0.75rem,  0.7rem  + 0.15vw, 0.8125rem);
  --text-sm:    clamp(0.875rem, 0.83rem + 0.2vw,  0.9375rem);
  --text-base:  clamp(1rem,     0.97rem + 0.18vw, 1.125rem);
  --text-lg:    clamp(1.125rem, 1.05rem + 0.4vw,  1.375rem);
  --text-xl:    clamp(1.5rem,   1.25rem + 1vw,    2.125rem);
  --text-2xl:   clamp(2rem,     1.4rem  + 2.2vw,  3.25rem);
  --text-3xl:   clamp(2.5rem,   1.4rem  + 3.5vw,  4.5rem);
  --text-hero:  clamp(3rem,     1rem    + 6.5vw,  7.5rem);

  /* Spacing — 4px base */
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-7:  1.75rem;
  --space-8:  2rem;
  --space-9:  2.25rem;
  --space-10: 2.5rem;
  --space-11: 2.75rem;
  --space-12: 3rem;
  --space-14: 3.5rem;
  --space-16: 4rem;
  --space-18: 4.5rem;
  --space-20: 5rem;
  --space-22: 5.5rem;
  --space-24: 6rem;
  --space-32: 8rem;
  --space-40: 10rem;

  /* Brand palette — light (default = "paper") */
  --color-bg:           #F6F1E4;   /* warm off-white, close to the book mockup light */
  --color-surface:      #FFF9EA;   /* crisp card */
  --color-surface-2:    #EDE5CF;   /* offset stripe */
  --color-surface-deep: #D8CCAA;   /* strong divider band */
  --color-divider:      #C8BA97;
  --color-border:       #0E0E0C;

  --color-ink:          #0E0E0C;   /* near-black text */
  --color-ink-2:        #1B1A16;
  --color-ink-muted:    #5A554A;
  --color-ink-faint:    #8C8676;

  --color-accent:       #EFA11B;   /* book-cover yellow sampled from supplied cover art */
  --color-accent-text:  #9A5F00;   /* darker cover-yellow companion for readable text on cream */
  --color-accent-2:     #D9860A;   /* deeper cover-yellow hover */
  --color-accent-soft:  #F3C25E;
  --color-accent-tint:  #F8D98C;

  /* Semantics */
  --color-text:         var(--color-ink);
  --color-text-muted:   var(--color-ink-muted);
  --color-text-faint:   var(--color-ink-faint);
  --color-primary:      var(--color-accent);
  --color-primary-hover:var(--color-accent-2);

  /* Radii (editorial = mostly square) */
  --radius-sm: 0px;
  --radius-md: 0px;
  --radius-lg: 0px;
  --radius-pill: 999px;

  /* Transitions */
  --transition-fast: 160ms cubic-bezier(0.16, 1, 0.3, 1);
  --transition: 240ms cubic-bezier(0.16, 1, 0.3, 1);

  /* Shadows */
  --shadow-sm: 3px 3px 0 rgba(14,14,12,0.18);
  --shadow-md: 7px 7px 0 rgba(14,14,12,0.18);
  --shadow-lg: 14px 14px 0 rgba(14,14,12,0.2);

  /* Layout widths */
  --content-narrow: 680px;
  --content-default: 1080px;
  --content-wide: 1280px;
  --gutter: clamp(1.25rem, 4vw, 3rem);

  /* Fonts */
  --font-display: 'Satoshi', 'Inter', 'Helvetica Neue', system-ui, sans-serif;
  --font-body:    'Satoshi', 'Inter', 'Helvetica Neue', system-ui, sans-serif;
  --font-mono:    'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
}

/* Dark mode — black paper */
[data-theme="dark"] {
  --color-bg:           #0E0E0C;
  --color-surface:      #15140F;
  --color-surface-2:    #1B1A14;
  --color-surface-deep: #211F18;
  --color-divider:      #2B2920;
  --color-border:       #3A372C;

  --color-ink:          #F2EBD7;
  --color-ink-2:        #E6DEC4;
  --color-ink-muted:    #B5AC91;
  --color-ink-faint:    #74705F;

  --color-accent:       #EFA11B;
  --color-accent-text:  #EFA11B;   /* dark mode: cover yellow passes contrast */
  --color-accent-2:     #FFB733;
  --color-accent-soft:  #5A3A08;
  --color-accent-tint:  #3B2706;

  --color-text:         var(--color-ink);
  --color-text-muted:   var(--color-ink-muted);
  --color-text-faint:   var(--color-ink-faint);
  --color-primary:      var(--color-accent);
  --color-primary-hover:var(--color-accent-2);

  --shadow-sm: 0 1px 2px rgba(0,0,0,0.5);
  --shadow-md: 0 6px 18px rgba(0,0,0,0.5);
  --shadow-lg: 0 22px 50px rgba(0,0,0,0.6);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    --color-bg:           #0E0E0C;
    --color-surface:      #15140F;
    --color-surface-2:    #1B1A14;
    --color-surface-deep: #211F18;
    --color-divider:      #2B2920;
    --color-border:       #3A372C;
    --color-ink:          #F2EBD7;
    --color-ink-2:        #E6DEC4;
    --color-ink-muted:    #B5AC91;
    --color-ink-faint:    #74705F;
    --color-accent:       #EFA11B;
    --color-accent-text:  #EFA11B;
    --color-accent-2:     #FFB733;
    --color-accent-soft:  #5A3A08;
    --color-accent-tint:  #3B2706;
    --color-text:         var(--color-ink);
    --color-text-muted:   var(--color-ink-muted);
    --color-text-faint:   var(--color-ink-faint);
    --color-primary:      var(--color-accent);
    --color-primary-hover:var(--color-accent-2);
  }
}

/* ===================== Reset / Base ===================== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  scroll-behavior: smooth;
  hanging-punctuation: first last;
  scroll-padding-top: 96px;
  overflow-x: clip;
}
body {
  min-height: 100dvh;
  line-height: 1.6;
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-feature-settings: "ss01", "cv01";
  color: var(--color-text);
  background-color: var(--color-bg);
  background-image:
    linear-gradient(rgba(14,14,12,0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(14,14,12,0.035) 1px, transparent 1px),
    radial-gradient(circle at 12% -10%, rgba(239,161,27,0.13), transparent 38%);
  background-size: 48px 48px, 48px 48px, auto;
  animation: pageFade 360ms cubic-bezier(0.16, 1, 0.3, 1) both;
  overflow-x: clip;
}
@keyframes pageFade {
  from { opacity: 0; }
  to { opacity: 1; }
}
img, picture, video, canvas, svg { display: block; max-width: 100%; height: auto; }
input, button, textarea, select { font: inherit; color: inherit; }
button { cursor: pointer; background: none; border: none; }
a { color: inherit; text-decoration: none; }
ul[role="list"], ol[role="list"] { list-style: none; }

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display);
  font-weight: 700;
  line-height: 0.98;
  letter-spacing: -0.035em;
  text-wrap: balance;
  color: var(--color-ink);
}
p, li, figcaption { text-wrap: pretty; }
p { max-width: 64ch; }

::selection {
  background: var(--color-accent);
  color: #0E0E0C;
}
:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
  border-radius: 2px;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

a, button, [role="button"], input, textarea, select {
  transition:
    color var(--transition-fast),
    background var(--transition-fast),
    border-color var(--transition-fast),
    box-shadow var(--transition-fast),
    transform var(--transition-fast);
}

.sr-only {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* ===================== Layout primitives ===================== */
.container {
  width: 100%;
  max-width: var(--content-wide);
  margin-inline: auto;
  padding-inline: var(--gutter);
}
.container--default { max-width: var(--content-default); }
.container--narrow { max-width: var(--content-narrow); }

section[id],
h1[id],
h2[id],
.argument-intro,
.chapter-map {
  scroll-margin-top: 104px;
}

.section {
  padding-block: clamp(var(--space-16), 9vw, var(--space-32));
  position: relative;
}
.section--tight { padding-block: clamp(var(--space-12), 6vw, var(--space-20)); }

.eyebrow {
  font-family: var(--font-body);
  font-size: var(--text-xs);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-text-muted);
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}
.eyebrow::before {
  content: "";
  width: var(--space-6);
  height: 1px;
  background: var(--color-accent);
  display: inline-block;
}

.rule {
  height: 1px;
  background: var(--color-divider);
  border: 0;
  margin-block: var(--space-12);
}

/* ===================== Header ===================== */
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(14,14,12,0.94);
  backdrop-filter: saturate(140%) blur(14px);
  -webkit-backdrop-filter: saturate(140%) blur(14px);
  border-bottom: 1px solid rgba(239,161,27,0.24);
  transition: border-color var(--transition);
}
.site-header.is-scrolled { border-bottom-color: rgba(239,161,27,0.48); }
.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  padding-block: var(--space-4);
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--text-base);
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #F6F1E4;
}
.brand__mark { width: 36px; height: 36px; flex: none; color: var(--color-accent); }
.brand__mark .accent { color: var(--color-accent); }
.brand__name b { font-weight: 700; }
.brand__name span { color: rgba(246,241,228,0.62); font-style: normal; font-weight: 500; }
.brand__name { white-space: nowrap; }

.nav {
  display: none;
  gap: var(--space-8);
  align-items: center;
}
@media (min-width: 880px) { .nav { display: inline-flex; } }
.nav a {
  font-size: var(--text-sm);
  color: rgba(246,241,228,0.7);
  font-weight: 700;
  letter-spacing: 0.005em;
  position: relative;
  white-space: nowrap;
}
.nav a:hover { color: var(--color-accent); }
.nav a::after {
  content: "";
  position: absolute;
  inset: auto 0 -6px 0;
  height: 1px;
  background: var(--color-accent);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform var(--transition);
}
.nav a:hover::after { transform: scaleX(1); }

.nav-dropdown {
  position: relative;
}

.nav-dropdown__trigger {
  position: relative;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(246,241,228,0.7);
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 700;
  letter-spacing: 0.005em;
  cursor: pointer;
}

.nav-dropdown__trigger::after {
  content: "";
  position: absolute;
  inset: auto 0 -6px 0;
  height: 1px;
  background: var(--color-accent);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform var(--transition);
}

.nav-dropdown:hover .nav-dropdown__trigger,
.nav-dropdown:focus-within .nav-dropdown__trigger,
.nav-dropdown.is-open .nav-dropdown__trigger {
  color: var(--color-accent);
}

.nav-dropdown:hover .nav-dropdown__trigger::after,
.nav-dropdown:focus-within .nav-dropdown__trigger::after,
.nav-dropdown.is-open .nav-dropdown__trigger::after {
  transform: scaleX(1);
}

.nav-dropdown__menu {
  position: absolute;
  top: calc(100% + 1rem);
  left: 50%;
  z-index: 30;
  display: grid;
  min-width: 310px;
  padding: var(--space-3);
  border: 1px solid rgba(239,161,27,0.36);
  background: rgba(14,14,12,0.98);
  box-shadow: 0 22px 60px rgba(0,0,0,0.34);
  transform: translateX(-50%) translateY(-0.35rem);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition), transform var(--transition), visibility var(--transition);
}

.nav-dropdown__menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -1rem;
  height: 1rem;
}

.nav-dropdown:hover .nav-dropdown__menu,
.nav-dropdown:focus-within .nav-dropdown__menu,
.nav-dropdown.is-open .nav-dropdown__menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.nav-dropdown__menu a {
  display: block;
  padding: 0.85rem 1rem;
  border-bottom: 1px solid rgba(246,241,228,0.12);
  color: rgba(246,241,228,0.78);
}

.nav-dropdown__menu a:last-child {
  border-bottom: 0;
}

.nav-dropdown__menu a::after {
  display: none;
}

.nav-dropdown__menu a:hover {
  background: rgba(239,161,27,0.12);
  color: var(--color-accent);
}

.header-cta { display: flex; align-items: center; gap: var(--space-2); flex: none; }

.theme-toggle {
  width: 38px; height: 38px;
  border: 1px solid rgba(246,241,228,0.28);
  color: rgba(246,241,228,0.72);
  border-radius: var(--radius-md);
  display: inline-flex; align-items: center; justify-content: center;
  background: transparent;
}
.theme-toggle:hover { color: var(--color-accent); border-color: var(--color-accent); }

.menu-toggle {
  display: inline-flex;
  width: 38px; height: 38px;
  border: 1px solid rgba(246,241,228,0.28);
  color: #F6F1E4;
  border-radius: var(--radius-md);
  align-items: center; justify-content: center;
}
@media (min-width: 880px) { .menu-toggle { display: none; } }
@media (max-width: 1320px) {
  .site-header__inner { gap: var(--space-4); }
  .nav { gap: var(--space-4); }
  .nav a { font-size: 0.8rem; }
  .nav-dropdown__trigger { font-size: 0.8rem; }
  .brand__mark { width: 32px; height: 32px; }
  .brand { gap: var(--space-2); font-size: 0.95rem; }
  .btn--sm { padding-inline: 0.8rem; }
}
@media (max-width: 1120px) {
  .nav { gap: var(--space-4); }
  .nav a { font-size: 0.82rem; }
  .nav-dropdown__trigger { font-size: 0.82rem; }
  .brand__name { max-width: 150px; line-height: 1.05; overflow: hidden; text-overflow: ellipsis; }
}
@media (max-width: 520px) {
  .site-header__inner { gap: var(--space-3); padding-block: var(--space-3); }
  .brand__mark { width: 30px; height: 30px; }
  .brand__name { font-size: 0.9rem; max-width: 118px; }
  .header-cta .btn { display: none; }
  .theme-toggle,
  .menu-toggle { width: 34px; height: 34px; }
}

.mobile-nav {
  display: none;
  border-top: 1px solid var(--color-divider);
  background: #0E0E0C;
  padding: var(--space-4) var(--gutter);
}
.mobile-nav.is-open { display: block; }
.mobile-nav a {
  display: block;
  padding: var(--space-3) 0;
  color: rgba(246,241,228,0.86);
  font-size: var(--text-base);
  font-family: var(--font-display);
  border-bottom: 1px solid rgba(246,241,228,0.14);
}

.mobile-nav a:hover {
  color: var(--color-accent);
}
.mobile-nav a:last-child { border-bottom: 0; }

.mobile-nav__label {
  display: block;
  padding: var(--space-4) 0 var(--space-2);
  color: var(--color-accent);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.mobile-nav a.mobile-nav__child {
  padding-left: var(--space-4);
  color: rgba(246,241,228,0.72);
  font-size: 0.95rem;
}

/* ===================== Buttons ===================== */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 0.85rem 1.4rem;
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: 0.005em;
  border-radius: 0;
  border: 1px solid transparent;
  white-space: nowrap;
}
.btn--primary {
  background: var(--color-accent);
  color: #0E0E0C;
  border-color: var(--color-accent);
}
.btn--primary:hover {
  background: #0E0E0C;
  color: #F6F1E4;
  border-color: #0E0E0C;
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px 0 var(--color-accent);
}
[data-theme="dark"] .btn--primary:hover { color: #0E0E0C; }
.btn--secondary {
  background: transparent;
  color: var(--color-ink);
  border-color: currentColor;
}
.btn--secondary:hover {
  background: var(--color-ink);
  color: var(--color-bg);
  border-color: var(--color-ink);
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px 0 var(--color-accent);
}
.btn--accent {
  background: var(--color-accent);
  color: #0E0E0C;
  border-color: var(--color-accent);
}
.btn--accent:hover {
  background: #FFB733;
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px 0 #0E0E0C;
}
.btn--ghost {
  background: transparent;
  color: var(--color-ink);
  border-color: currentColor;
}
.btn--ghost:hover {
  border-color: var(--color-ink);
  background: var(--color-accent);
  color: #0E0E0C;
}
.btn--lg { padding: 1rem 1.6rem; font-size: var(--text-base); }
.btn--sm { padding: 0.55rem 0.9rem; font-size: var(--text-xs); }
.btn--temp-admin {
  background: transparent;
  color: var(--color-accent);
  border-color: var(--color-accent);
}
.btn--temp-admin:hover {
  background: var(--color-accent);
  color: #0E0E0C;
}
@media (max-width: 1080px) {
  .header-cta .btn--temp-admin { display: none; }
}

.text-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-ink);
  font-weight: 600;
  font-size: var(--text-sm);
  border-bottom: 1px solid var(--color-accent);
  padding-bottom: 2px;
}
.text-link:hover { color: var(--color-accent-2); }
.text-link svg { transition: transform var(--transition-fast); }
.text-link:hover svg { transform: translateX(3px); }

.hero .btn--ghost {
  color: #F6F1E4;
  border-color: rgba(246,241,228,0.55);
}
.hero .btn--ghost:hover {
  background: #F6F1E4;
  color: #0E0E0C;
  border-color: #F6F1E4;
  box-shadow: 5px 5px 0 var(--color-accent);
}

/* ===================== HERO ===================== */
.hero {
  padding-top: clamp(var(--space-16), 8vw, var(--space-24));
  padding-bottom: clamp(var(--space-12), 6vw, var(--space-20));
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(239,161,27,0.12) 1px, transparent 1px),
    linear-gradient(rgba(239,161,27,0.12) 1px, transparent 1px),
    radial-gradient(circle at 85% 20%, rgba(239,161,27,0.22), transparent 28%),
    #0E0E0C;
  background-size: 78px 78px, 78px 78px, auto, auto;
  color: #F6F1E4;
  border-bottom: 6px solid var(--color-accent);
}
.hero::before {
  content: "";
  position: absolute;
  width: clamp(180px, 24vw, 340px);
  aspect-ratio: 1;
  right: clamp(1rem, 5vw, 5rem);
  top: clamp(5rem, 11vw, 9rem);
  border: 10px solid rgba(239,161,27,0.28);
  background:
    linear-gradient(90deg, transparent 47%, rgba(239,161,27,0.28) 47% 53%, transparent 53%),
    linear-gradient(transparent 47%, rgba(239,161,27,0.28) 47% 53%, transparent 53%);
  transform: rotate(-2deg);
  pointer-events: none;
}
.hero__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-10), 6vw, var(--space-20));
  align-items: center;
  position: relative;
  z-index: 1;
}
@media (min-width: 1000px) {
  .hero__grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(430px, 1.12fr);
    gap: clamp(var(--space-8), 4vw, var(--space-14));
  }
}
.hero__kicker {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  margin-bottom: var(--space-8);
  flex-wrap: wrap;
}
.kicker-tag {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: 0.4rem 0.7rem;
  background: var(--color-accent);
  color: #0E0E0C;
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-radius: var(--radius-sm);
}
.kicker-tag .dot {
  width: 6px; height: 6px;
  border-radius: 0;
  background: #0E0E0C;
}
.kicker-meta {
  font-size: var(--text-xs);
  color: rgba(246,241,228,0.58);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.hero__title {
  font-size: var(--text-hero);
  font-weight: 900;
  line-height: 0.86;
  letter-spacing: -0.07em;
  color: #F6F1E4;
  text-transform: uppercase;
  max-width: 8.5ch;
}
.hero__title .em { font-style: normal; font-weight: 900; color: var(--color-accent); }
.hero__title .underline {
  background-image: linear-gradient(var(--color-accent), var(--color-accent));
  background-repeat: no-repeat;
  background-size: 100% 42%;
  background-position: 0.02em 92%;
  padding-inline: 0.02em;
}
.hero__subtitle {
  margin-top: var(--space-5);
  max-width: 32ch;
  color: var(--color-accent);
  font-size: clamp(1rem, 0.72rem + 1.1vw, 1.55rem);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.hero__subtitle::before {
  content: "";
  display: block;
  width: clamp(96px, 18vw, 180px);
  height: 8px;
  margin-bottom: var(--space-4);
  background: var(--color-accent);
}
.hero__positioning {
  margin-top: var(--space-5);
  max-width: 44ch;
  color: #F6F1E4;
  font-size: clamp(1.05rem, 1.5vw, 1.32rem);
  line-height: 1.35;
  letter-spacing: -0.025em;
  font-weight: 800;
}
.hero__lede {
  margin-top: var(--space-6);
  font-size: clamp(1rem, 1.1vw, 1.12rem);
  color: rgba(246,241,228,0.68);
  max-width: 52ch;
}
.hero__cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-8);
  align-items: center;
}
.hero__cta-row .meta {
  font-size: var(--text-xs);
  color: rgba(246,241,228,0.5);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

@media (max-width: 720px) {
  .section {
    padding-block: clamp(var(--space-14), 18vw, var(--space-24));
  }
  .section--tight {
    padding-block: clamp(var(--space-10), 14vw, var(--space-18));
  }
  .hero__kicker {
    margin-bottom: var(--space-7);
  }
  .hero__title {
    line-height: 0.9;
    letter-spacing: -0.058em;
  }
  .hero__subtitle {
    margin-top: var(--space-6);
    line-height: 1.12;
  }
  .hero__positioning {
    margin-top: var(--space-6);
    line-height: 1.42;
  }
  .hero__cta-row {
    align-items: stretch;
    gap: var(--space-3);
  }
  .hero__cta-row .btn {
    width: 100%;
    max-width: 240px;
  }
  .core-argument__head,
  .start-here__head,
  .proof__head,
  .resources__head,
  .audiences__intro {
    gap: var(--space-5);
    margin-bottom: clamp(var(--space-8), 12vw, var(--space-12));
  }
  .core-argument__head h2,
  .start-here__head h2 {
    font-size: clamp(2.55rem, 12vw, 4.25rem);
    line-height: 0.96;
    letter-spacing: -0.055em;
    max-width: 10.5ch;
  }
  .resources__title,
  .audiences__title,
  .proof__head h2,
  .quote-proof .proof__head h2 {
    line-height: 1.04;
    letter-spacing: -0.038em;
  }
  .pull-quote {
    margin-block: clamp(var(--space-10), 16vw, var(--space-16));
    line-height: 1.04;
    letter-spacing: -0.045em;
  }
  .stats-row {
    gap: var(--space-5);
  }
  .stat {
    padding: var(--space-7);
  }
}

/* ===================== Argument strip ===================== */
.core-argument {
  background: var(--color-bg);
  border-bottom: 1px solid rgba(14,14,12,0.12);
}
.core-argument .container {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-8), 8vw, var(--space-20));
  align-items: start;
}
@media (min-width: 1120px) {
  .core-argument .container {
    grid-template-columns: minmax(500px, 0.95fr) minmax(420px, 1.05fr);
    column-gap: clamp(var(--space-16), 7vw, var(--space-24));
  }
}
.core-argument__head {
  display: grid;
  justify-items: start;
  align-content: start;
  gap: var(--space-5);
  margin-bottom: 0;
  min-width: 0;
  text-align: left;
}
.core-argument__head h2 {
  max-width: 12ch;
  font-size: clamp(2.55rem, 4.35vw, 4.35rem);
  line-height: 0.94;
  letter-spacing: -0.052em;
  text-transform: uppercase;
}

@media (min-width: 760px) and (max-width: 1119px) {
  .core-argument__head h2 {
    max-width: 14ch;
    font-size: clamp(2.7rem, 6.8vw, 4.2rem);
    letter-spacing: -0.048em;
  }
}
.core-argument__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}
@media (min-width: 900px) {
  .core-argument__grid { grid-template-columns: 1fr; }
}
.core-argument__grid article {
  position: relative;
  min-height: 0;
  padding: var(--space-6);
  border: 1px solid rgba(14,14,12,0.16);
  background:
    linear-gradient(90deg, rgba(14,14,12,0.045) 1px, transparent 1px),
    linear-gradient(rgba(14,14,12,0.045) 1px, transparent 1px),
    var(--color-surface);
  background-size: 36px 36px;
  overflow: hidden;
}
.core-argument__icon {
  position: absolute;
  right: clamp(-52px, -4vw, -28px);
  top: 58%;
  width: clamp(120px, 17vw, 180px);
  height: clamp(120px, 17vw, 180px);
  color: var(--color-accent);
  fill: none;
  stroke: currentColor;
  stroke-width: 9;
  stroke-linecap: square;
  stroke-linejoin: miter;
  opacity: 0.18;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 0;
}
.core-argument__grid article > :not(.core-argument__icon) {
  position: relative;
  z-index: 1;
}
.core-argument__grid article:nth-child(2) .core-argument__icon {
  opacity: 0.16;
  right: clamp(-58px, -4.5vw, -34px);
  transform: translateY(-50%) rotate(-3deg);
}
.core-argument__grid article:nth-child(3) .core-argument__icon {
  opacity: 0.17;
  right: clamp(-56px, -4.2vw, -32px);
  transform: translateY(-50%) rotate(4deg);
}
.core-argument__grid span {
  display: inline-flex;
  margin-bottom: var(--space-4);
  color: var(--color-accent-text);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.core-argument__grid h3 {
  max-width: 18ch;
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2vw, 1.9rem);
  line-height: 1;
  letter-spacing: -0.04em;
  margin-bottom: var(--space-4);
}
.core-argument__grid p {
  position: relative;
  z-index: 1;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}

/* Book object */
.book-object {
  position: relative;
  margin-inline: auto;
  width: min(360px, 80%);
  aspect-ratio: 3 / 4.4;
  background: linear-gradient(180deg, #1B1A16 0%, #0E0E0C 100%);
  color: #F5EFE2;
  padding: clamp(1.2rem, 3vw, 2rem);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow:
    0 30px 60px -20px rgba(14,14,12,0.45),
    0 18px 36px -16px rgba(14,14,12,0.35),
    inset 0 0 0 1px rgba(245,239,226,0.08);
  border-radius: 2px;
  transform: rotate(-2deg);
  transition: transform 600ms cubic-bezier(0.16,1,0.3,1);
}
.book-object:hover { transform: rotate(0deg) translateY(-6px); }
.book-object::before {
  /* spine */
  content: "";
  position: absolute;
  left: 12px; top: 0; bottom: 0;
  width: 1px;
  background: rgba(245,239,226,0.1);
}
.book-object::after {
  /* edge highlight */
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 60%, rgba(239,161,27,0.08) 75%, transparent 90%);
  pointer-events: none;
}
.book-object__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: var(--text-xs);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(245,239,226,0.6);
}
.book-object__title {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: clamp(1.7rem, 3.2vw, 2.6rem);
  line-height: 0.95;
  letter-spacing: -0.02em;
  color: #F5EFE2;
}
.book-object__title em {
  display: block;
  font-style: italic;
  font-weight: 400;
  color: var(--color-accent);
}
.book-object__bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  font-size: var(--text-xs);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(245,239,226,0.55);
}
.book-object__bottom .author {
  font-family: var(--font-display);
  font-style: italic;
  font-size: var(--text-sm);
  text-transform: none;
  letter-spacing: 0;
  color: #F5EFE2;
}
.book-object--image {
  width: min(430px, 88%);
  aspect-ratio: auto;
  background: transparent;
  color: var(--color-text-muted);
  padding: 0;
  display: block;
  box-shadow: none;
  transform: translateY(4px);
  isolation: isolate;
}
.book-object--image::before,
.book-object--image::after { display: none; }
.book-object--image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 2px;
  border: 2px solid #0E0E0C;
  filter: drop-shadow(0 34px 46px rgba(0,0,0,0.76));
}
.book-object--image:hover {
  transform: translateY(-4px) scale(1.02);
}
@media (min-width: 1000px) {
  .book-object--image {
    width: min(520px, 96%);
  }
}
.book-object--image figcaption {
  margin-top: var(--space-4);
  max-width: 32ch;
  font-size: var(--text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(246,241,228,0.7);
  font-weight: 600;
}

/* ===================== Marquee strip ===================== */
/* Fixed-identity black band — same in both modes for editorial consistency. */
.marquee {
  border-block: 1px solid var(--color-accent);
  background: var(--color-accent);
  color: #0E0E0C;
  overflow: hidden;
  padding-block: var(--space-4);
}
[data-theme="dark"] .marquee {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: #0E0E0C;
}
.marquee__track {
  display: flex;
  gap: var(--space-12);
  white-space: nowrap;
  animation: marquee 38s linear infinite;
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -0.025em;
}
.marquee__track span { display: inline-flex; align-items: center; gap: var(--space-6); }
.marquee__track span::after {
  content: "";
  width: 8px; height: 8px;
  background: #0E0E0C;
  border-radius: 0;
}
@keyframes marquee {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .marquee__track { animation: none; }
}

/* ===================== Top quote ===================== */
.top-quote {
  background: #15130E;
  color: #F6F1E4;
  border-bottom: 1px solid rgba(239,161,27,0.3);
  position: relative;
  overflow: hidden;
  margin-block: 0;
}
.top-quote::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(239,161,27,0.08) 1px, transparent 1px),
    linear-gradient(rgba(239,161,27,0.08) 1px, transparent 1px);
  background-size: 78px 78px;
  pointer-events: none;
}
.top-quote .container {
  position: relative;
  z-index: 1;
  padding-top: clamp(var(--space-8), 4vw, var(--space-12));
  padding-bottom: clamp(var(--space-10), 5vw, var(--space-16));
}
.top-quote blockquote {
  max-width: 19ch;
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 4.35vw, 4.425rem);
  font-weight: 900;
  line-height: 0.92;
  letter-spacing: -0.07em;
  text-transform: uppercase;
  text-wrap: balance;
}
.top-quote blockquote::before {
  content: "";
  display: block;
  width: clamp(96px, 16vw, 220px);
  height: 7px;
  margin-bottom: var(--space-6);
  background: var(--color-accent);
}
.top-quote em {
  color: var(--color-accent);
  font-style: normal;
}

/* ===================== Weekly Article Section ===================== */
.weekly {
  background:
    linear-gradient(90deg, rgba(14,14,12,0.035) 1px, transparent 1px),
    linear-gradient(rgba(14,14,12,0.035) 1px, transparent 1px),
    #F8F3E8;
  background-size: 42px 42px;
  border-block: 1px solid rgba(14,14,12,0.18);
  scroll-margin-top: 96px;
}
.weekly__header {
  display: flex;
  justify-content: space-between;
  align-items: end;
  flex-wrap: wrap;
  gap: var(--space-6);
  margin-bottom: clamp(var(--space-10), 5vw, var(--space-16));
}
.weekly__header > div {
  max-width: min(760px, 100%);
}
.weekly__title {
  display: flex;
  flex-wrap: wrap;
  gap: 0.16em;
  align-items: baseline;
  font-family: var(--font-display);
  font-size: clamp(3.4rem, 10.5vw, 8.5rem);
  font-weight: 900;
  line-height: 0.78;
  letter-spacing: -0.085em;
  text-transform: uppercase;
  max-width: none;
  margin-top: var(--space-3);
}
.weekly__title span:last-child {
  position: relative;
  z-index: 0;
}
.weekly__title span:last-child::after {
  content: "";
  position: absolute;
  left: 0.02em;
  right: -0.04em;
  bottom: 0.04em;
  height: 0.18em;
  background: var(--color-accent);
  z-index: -1;
}
.weekly__dek {
  max-width: 58ch;
  margin-top: var(--space-5);
  color: var(--color-text-muted);
  font-size: clamp(1.05rem, 1.6vw, 1.28rem);
  line-height: 1.45;
  letter-spacing: -0.02em;
}
.weekly__feature {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-8), 4vw, var(--space-16));
  align-items: start;
  background: var(--color-surface);
  border: 1px solid rgba(14,14,12,0.2);
  padding: clamp(var(--space-4), 3vw, var(--space-8));
  box-shadow: var(--shadow-lg);
}
@media (min-width: 980px) {
  .weekly__feature { grid-template-columns: 1.05fr 0.95fr; }
}
.feature-art {
  width: 100%;
  aspect-ratio: 4 / 3;
  background: var(--color-ink);
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0;
  align-self: start;
  border: 2px solid #0E0E0C;
}
.feature-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.96) contrast(1.02);
}
.feature-art__inner {
  position: absolute; inset: 0;
  background:
    linear-gradient(180deg, rgba(14,14,12,0.08) 0%, rgba(14,14,12,0.62) 100%),
    radial-gradient(60% 80% at 70% 30%, rgba(239,161,27,0.18), transparent 60%);
}
.feature-art__num {
  position: absolute;
  inset: auto auto var(--space-6) var(--space-6);
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(4rem, 12vw, 9rem);
  color: rgba(245,239,226,0.92);
  line-height: 1;
  letter-spacing: -0.04em;
  mix-blend-mode: screen;
}
.feature-art__num em { color: var(--color-accent); font-style: italic; }
.feature-art__tag {
  position: absolute;
  top: var(--space-5); left: var(--space-5);
  font-size: var(--text-xs);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(245,239,226,0.7);
}
.feature-art__tag::before {
  content: "";
  display: inline-block;
  width: 24px; height: 1px;
  background: var(--color-accent);
  margin-right: var(--space-3);
  vertical-align: middle;
}
.feature-meta {
  display: flex;
  gap: var(--space-4);
  align-items: center;
  font-size: var(--text-xs);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}
.feature-meta .pill {
  padding: 0.3rem 0.55rem;
  background: var(--color-accent-tint);
  color: var(--color-ink);
  border-radius: 0;
  font-weight: 900;
  letter-spacing: 0.1em;
}
.feature-headline {
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(2rem, 4.5vw, 4.2rem);
  line-height: 1;
  letter-spacing: -0.02em;
  margin-block: var(--space-5) var(--space-5);
}
.feature-deck {
  font-size: var(--text-lg);
  color: var(--color-text-muted);
  max-width: 48ch;
}
.feature-thesis {
  margin-top: var(--space-5);
  max-width: 52ch;
  padding: var(--space-5);
  border-left: 6px solid var(--color-accent);
  background:
    linear-gradient(90deg, rgba(239,161,27,0.14), rgba(239,161,27,0.04)),
    var(--color-bg);
  color: var(--color-ink);
  font-family: var(--font-display);
  font-size: var(--text-base);
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: -0.02em;
}
.why-it-matters {
  margin-top: var(--space-5);
  padding: var(--space-5);
  background: #15130E;
  color: #F6F1E4;
  border: 1px solid rgba(239,161,27,0.34);
  position: relative;
  overflow: hidden;
}
.why-it-matters::after {
  content: "";
  position: absolute;
  right: -24px;
  top: -24px;
  width: 96px;
  height: 96px;
  border: 7px solid rgba(239,161,27,0.2);
  transform: rotate(-3deg);
}
.why-it-matters span {
  display: block;
  color: var(--color-accent);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: var(--space-3);
}
.why-it-matters p {
  position: relative;
  z-index: 1;
  color: rgba(246,241,228,0.76);
  font-size: var(--text-sm);
}
.feature-byline {
  margin-top: var(--space-8);
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}
.feature-byline .avatar {
  width: 36px; height: 36px;
  border-radius: 0;
  background: var(--color-ink);
  color: var(--color-bg);
  display: inline-flex;
  align-items: center; justify-content: center;
  font-family: var(--font-display);
  font-style: italic;
  font-size: var(--text-sm);
}
.feature-actions { margin-top: var(--space-8); display: flex; gap: var(--space-4); flex-wrap: wrap; }

/* Archive grid below feature */
.archive-grid {
  margin-top: clamp(var(--space-16), 7vw, var(--space-24));
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-8);
  border-top: 2px solid #0E0E0C;
  padding-top: var(--space-12);
}
@media (min-width: 720px) { .archive-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1080px) { .archive-grid { grid-template-columns: repeat(3, 1fr); } }

.article-card {
  display: flex;
  flex-direction: column;
  padding: var(--space-6);
  border: 2px solid #0E0E0C;
  background: var(--color-surface);
  transition: transform var(--transition);
}
.article-card:hover {
  transform: translate(-3px, -3px);
  box-shadow: 7px 7px 0 var(--color-accent);
}
.article-card__num {
  font-family: var(--font-body);
  font-style: normal;
  color: var(--color-accent-text);
  font-size: var(--text-sm);
  margin-bottom: var(--space-4);
  letter-spacing: -0.01em;
}
.article-card__title {
  font-family: var(--font-display);
  font-size: var(--text-lg);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.015em;
  margin-bottom: var(--space-3);
  color: var(--color-ink);
}
.article-card__excerpt {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  margin-bottom: var(--space-5);
}
.article-card__meta {
  margin-top: auto;
  display: flex;
  gap: var(--space-3);
  align-items: center;
  font-size: var(--text-xs);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-faint);
}
.article-card:hover .article-card__title { color: var(--color-accent-2); }

/* ===================== About section ===================== */
.about {
  position: relative;
}
.about__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-10), 5vw, var(--space-20));
  align-items: start;
}
@media (min-width: 980px) {
  .about__grid { grid-template-columns: 0.9fr 1.1fr; }
}
.about__title {
  font-size: var(--text-2xl);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1;
}
.about__title em { font-style: italic; color: var(--color-accent-text); font-weight: 400; }
.about-media {
  margin-top: var(--space-8);
  border: 2px solid #0E0E0C;
  background: var(--color-accent);
  padding: var(--space-2);
  transform: rotate(0deg);
  box-shadow: var(--shadow-md);
}
.about-media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  display: block;
}
.about__body p { margin-bottom: var(--space-5); font-size: var(--text-base); color: var(--color-text); }
.about__body p.lede { font-size: var(--text-lg); color: var(--color-text); }
.about__body p:last-child { margin-bottom: 0; }

.pull-quote {
  margin: clamp(var(--space-12), 6vw, var(--space-20)) auto clamp(var(--space-4), 2.5vw, var(--space-8));
  max-width: 24ch;
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.055em;
  text-align: left;
  text-wrap: balance;
}
.pull-quote em { color: var(--color-accent-text); font-style: normal; font-weight: 900; }
.pull-quote::before, .pull-quote::after {
  content: ""; display: block;
  width: 72px; height: 8px;
  background: var(--color-accent);
  margin: var(--space-6) 0;
}

/* author card */
.author-card {
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: var(--space-6);
  align-items: center;
  padding: var(--space-6) 0;
  border: 2px solid #0E0E0C;
  background: var(--color-surface);
  padding: var(--space-6);
  box-shadow: var(--shadow-sm);
}
.author-card__avatar {
  width: 96px; height: 96px;
  background: var(--color-ink);
  color: var(--color-accent);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-display);
  font-style: italic;
  font-size: 2rem;
  letter-spacing: -0.03em;
  border-radius: 0;
}
.author-card__name { font-family: var(--font-display); font-size: var(--text-lg); }
.author-card__role { color: var(--color-text-muted); font-size: var(--text-sm); }

/* ===================== Start here ===================== */
.start-here {
  background: var(--color-bg);
  border-bottom: 2px solid #0E0E0C;
}
.start-here__head {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  margin-bottom: clamp(var(--space-8), 4vw, var(--space-12));
}
@media (min-width: 920px) {
  .start-here__head {
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    align-items: end;
  }
  .start-here__head .eyebrow { grid-column: 1 / -1; }
}
.start-here__head h2 {
  max-width: 15ch;
  font-size: clamp(2.65rem, 6.2vw, 6.1rem);
  line-height: 0.86;
  letter-spacing: -0.075em;
  text-transform: uppercase;
}
.start-here__head p {
  color: var(--color-text-muted);
  max-width: 54ch;
}
.start-here__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}
@media (min-width: 760px) {
  .start-here__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1120px) {
  .start-here__grid { grid-template-columns: repeat(4, 1fr); }
}
.start-card {
  min-height: 310px;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: clamp(var(--space-6), 2.6vw, var(--space-8));
  border: 2px solid #0E0E0C;
  background: var(--color-surface);
  transition: transform var(--transition), box-shadow var(--transition), background var(--transition);
}
.start-card:hover {
  transform: translate(-3px, -3px);
  box-shadow: 8px 8px 0 var(--color-accent);
}
.start-card span {
  font-size: var(--text-xs);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent-text);
  font-weight: 900;
}
.start-card h3 {
  font-size: var(--text-lg);
  line-height: 1.08;
  letter-spacing: -0.025em;
}
.start-card p {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.start-card strong {
  margin-top: auto;
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-divider);
  font-size: var(--text-sm);
}
.start-card--accent {
  background: #0E0E0C;
  color: #F6F1E4;
}
.start-card--accent h3,
.start-card--accent strong { color: #F6F1E4; }
.start-card--accent p { color: rgba(246,241,228,0.7); }
.start-card--accent span { color: var(--color-accent); }

/* ===================== Argument pathway pages ===================== */
.page-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-7);
}

.argument-page {
  background:
    linear-gradient(90deg, rgba(14,14,12,0.035) 1px, transparent 1px),
    linear-gradient(rgba(14,14,12,0.035) 1px, transparent 1px),
    var(--color-bg);
  background-size: 54px 54px;
}

.argument-intro {
  display: grid;
  gap: var(--space-5);
  margin-bottom: var(--space-10);
  padding-bottom: var(--space-8);
  border-bottom: 2px solid rgba(14,14,12,0.16);
}

@media (min-width: 920px) {
  .argument-intro {
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    align-items: end;
  }
  .argument-intro .eyebrow { grid-column: 1 / -1; }
}

.argument-intro h2 {
  max-width: 13ch;
  font-size: clamp(2.6rem, 5.4vw, 5.6rem);
  line-height: 0.88;
  letter-spacing: -0.075em;
  text-transform: uppercase;
}

.argument-intro p {
  color: var(--color-text-muted);
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  line-height: 1.55;
  max-width: 58ch;
}

.value-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  margin-bottom: var(--space-10);
}

@media (min-width: 860px) {
  .value-grid { grid-template-columns: repeat(3, 1fr); }
  .value-grid--four { grid-template-columns: repeat(4, 1fr); }
}

.value-card {
  position: relative;
  min-height: 300px;
  padding: var(--space-6);
  border: 1px solid rgba(14,14,12,0.18);
  background: var(--color-surface);
  overflow: hidden;
}

.value-card::after {
  content: "";
  position: absolute;
  right: -42px;
  bottom: -42px;
  width: 150px;
  height: 150px;
  border: 10px solid rgba(239,161,27,0.18);
  transform: rotate(-8deg);
}

.value-card--dark {
  background: var(--color-ink);
  color: var(--color-bg);
  border-color: var(--color-ink);
}

.value-card span {
  display: inline-flex;
  margin-bottom: var(--space-8);
  color: var(--color-accent-text);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.value-card--dark span { color: var(--color-accent); }

.value-card h3 {
  position: relative;
  z-index: 1;
  max-width: 13ch;
  font-family: var(--font-display);
  font-size: clamp(1.45rem, 2.2vw, 2.15rem);
  line-height: 0.96;
  letter-spacing: -0.05em;
  margin-bottom: var(--space-5);
}

.value-card p {
  position: relative;
  z-index: 1;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  line-height: 1.65;
}

.value-card--dark h3 { color: var(--color-bg); }
.value-card--dark p { color: rgba(246,241,228,0.72); }

.argument-split {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-5);
  margin-bottom: var(--space-10);
}

@media (min-width: 940px) {
  .argument-split { grid-template-columns: 0.9fr 1.1fr; }
}

.diagnostic-panel,
.reader-outcomes,
.chapter-map,
.argument-cta {
  border: 1px solid rgba(14,14,12,0.18);
  background: rgba(246,241,228,0.72);
  backdrop-filter: blur(8px);
}

.diagnostic-panel,
.reader-outcomes {
  padding: var(--space-7);
}

.diagnostic-panel {
  background:
    linear-gradient(135deg, rgba(239,161,27,0.24), rgba(246,241,228,0.76) 48%),
    var(--color-surface);
}

.diagnostic-panel ul,
.chapter-map ol {
  list-style: none;
  padding: 0;
  margin: var(--space-5) 0 0;
  display: grid;
  gap: var(--space-3);
}

.diagnostic-panel li {
  padding: var(--space-4);
  border: 1px solid rgba(14,14,12,0.12);
  background: rgba(246,241,228,0.78);
  font-weight: 800;
  letter-spacing: -0.02em;
}

.reader-outcomes h2,
.chapter-map h2,
.argument-cta h2 {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3vw, 3.25rem);
  line-height: 0.98;
  letter-spacing: -0.055em;
  max-width: 15ch;
}

.outcome-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
  margin-top: var(--space-6);
}

@media (min-width: 720px) {
  .outcome-list { grid-template-columns: repeat(2, 1fr); }
}

.outcome-list div {
  padding: var(--space-4);
  border-left: 4px solid var(--color-accent);
  background: rgba(255,255,255,0.28);
}

.outcome-list strong {
  display: block;
  margin-bottom: var(--space-2);
  font-size: var(--text-sm);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.outcome-list p {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  line-height: 1.55;
}

.chapter-map {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
  margin-bottom: var(--space-10);
  padding: var(--space-7);
}

@media (min-width: 960px) {
  .chapter-map { grid-template-columns: 0.85fr 1.15fr; }
}

.chapter-map li {
  display: grid;
  gap: var(--space-2);
  padding: var(--space-4) 0;
  border-top: 1px solid rgba(14,14,12,0.16);
}

.chapter-map li:first-child { border-top: 0; padding-top: 0; }

.chapter-map strong {
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 1.7vw, 1.65rem);
  line-height: 1;
  letter-spacing: -0.035em;
}

.chapter-map span {
  color: var(--color-text-muted);
  line-height: 1.6;
}

.argument-cta {
  position: relative;
  padding: clamp(var(--space-7), 6vw, var(--space-11));
  background: var(--color-ink);
  color: var(--color-bg);
  overflow: hidden;
}

.argument-cta::after {
  content: "";
  position: absolute;
  right: -60px;
  top: -60px;
  width: 260px;
  height: 260px;
  border: 18px solid rgba(239,161,27,0.34);
  transform: rotate(8deg);
}

.argument-cta .eyebrow { color: var(--color-accent); }
.argument-cta h2 {
  position: relative;
  z-index: 1;
  max-width: 18ch;
  color: var(--color-bg);
  margin-bottom: var(--space-6);
}

.argument-cta .btn { position: relative; z-index: 1; }

@media (max-width: 720px) {
  .page-hero {
    padding-block: clamp(var(--space-12), 16vw, var(--space-18)) clamp(var(--space-10), 12vw, var(--space-16));
  }
  .page-hero h1 {
    font-size: clamp(2.95rem, 11.8vw, 4.35rem);
    line-height: 0.98;
    letter-spacing: -0.052em;
    max-width: 10.5ch;
  }
  .page-hero__deck {
    margin-top: var(--space-6);
    font-size: clamp(1.05rem, 5vw, 1.28rem);
    line-height: 1.48;
  }
  .page-hero__actions {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-3);
    margin-top: var(--space-6);
  }
  .page-hero__actions .btn {
    min-width: 176px;
    white-space: normal;
    text-align: center;
  }
  .argument-intro h2 {
    font-size: clamp(2.35rem, 14vw, 4rem);
    line-height: 0.96;
    letter-spacing: -0.055em;
    max-width: 11ch;
  }
  .value-card { min-height: 240px; }
}

/* ===================== Audiences ===================== */
/* Audiences is an inverted, fixed-identity insert: always black surface with
   cream type and mustard accent in both light and dark modes. */
.audiences {
  background: #0E0E0C;
  color: #F5EFE2;
  --aud-line: rgba(245,239,226,0.12);
  --aud-text-dim: rgba(245,239,226,0.7);
}
.audiences::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(239,161,27,0.08) 1px, transparent 1px),
    linear-gradient(rgba(239,161,27,0.08) 1px, transparent 1px);
  background-size: 56px 56px;
  pointer-events: none;
}
.audiences .container { position: relative; z-index: 1; }
[data-theme="dark"] .audiences {
  background: #050504;
  border-block: 1px solid #2B2920;
}
[data-theme="dark"] .audience-card { background: #050504; }
.audiences h2,
.audiences h3 { color: #F5EFE2; }
.audiences__intro {
  display: flex;
  justify-content: space-between;
  align-items: end;
  flex-wrap: wrap;
  gap: var(--space-8);
  margin-bottom: clamp(var(--space-12), 6vw, var(--space-20));
}
.audiences__intro .eyebrow { color: #EFA11B; }
[data-theme="dark"] .audiences__intro .eyebrow,
.audiences__intro .eyebrow { color: #EFA11B; }
.audiences__intro .eyebrow::before { background: #EFA11B; }
.audiences__title { font-size: var(--text-2xl); font-weight: 500; letter-spacing: -0.02em; max-width: 18ch; color: #F5EFE2; }
.audiences__title em { font-style: italic; color: #EFA11B; font-weight: 400; }
.audiences__deck { font-size: var(--text-lg); color: var(--aud-text-dim); max-width: 42ch; }

.audience-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  background: transparent;
  border: 0;
}
@media (min-width: 980px) {
  .audience-grid { grid-template-columns: repeat(3, 1fr); }
}
.audience-card {
  background: rgba(14,14,12,0.92);
  padding: clamp(var(--space-8), 3vw, var(--space-12));
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  position: relative;
  transition: background var(--transition), transform var(--transition), box-shadow var(--transition);
  border: 2px solid rgba(239,161,27,0.52);
}
.audience-card:hover {
  background: #15140F;
  transform: translate(-4px, -4px);
  box-shadow: 8px 8px 0 var(--color-accent);
}
.audience-card__num {
  font-family: var(--font-display);
  font-style: italic;
  color: #EFA11B;
  font-size: var(--text-base);
  letter-spacing: 0;
}
.audience-card__title {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -0.015em;
}
.audience-card__title { color: #F5EFE2; }
.audience-card__title em { font-style: italic; color: #EFA11B; font-weight: 400; }
.audience-card__lede {
  color: rgba(245,239,226,0.75);
  font-size: var(--text-base);
}
.audience-card ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.audience-card ul li {
  font-size: var(--text-sm);
  padding-left: var(--space-5);
  position: relative;
  color: rgba(245,239,226,0.85);
}
.audience-card ul li::before {
  content: "";
  position: absolute;
  left: 0; top: 0.6em;
  width: 12px; height: 1px;
  background: #EFA11B;
}
.audience-card__cta {
  margin-top: auto;
  padding-top: var(--space-6);
  border-top: 1px solid var(--aud-line);
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  color: #F5EFE2;
  font-size: var(--text-sm);
  font-weight: 600;
}
.audience-card__cta:hover { color: #EFA11B; }
.audience-card__cta svg { transition: transform var(--transition-fast); }
.audience-card__cta:hover svg { transform: translateX(3px); }

.audiences__framework {
  margin-top: var(--space-5);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
  padding: clamp(var(--space-6), 3vw, var(--space-8));
  border: 2px solid #EFA11B;
  background: #EFA11B;
  color: #0E0E0C;
  position: relative;
  overflow: hidden;
  transition: transform var(--transition), box-shadow var(--transition);
}

@media (min-width: 860px) {
  .audiences__framework {
    grid-template-columns: 0.7fr 0.95fr 1.45fr auto;
    align-items: center;
  }
}

.audiences__framework::after {
  content: "";
  position: absolute;
  right: -42px;
  top: -42px;
  width: 150px;
  height: 150px;
  border: 12px solid rgba(14,14,12,0.15);
  transform: rotate(8deg);
}

.audiences__framework:hover {
  transform: translate(-4px, -4px);
  box-shadow: 8px 8px 0 #F5EFE2;
}

.audiences__framework span,
.audiences__framework strong,
.audiences__framework p,
.audiences__framework svg {
  position: relative;
  z-index: 1;
}

.audiences__framework span {
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.audiences__framework strong {
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  line-height: 0.98;
  letter-spacing: -0.035em;
}

.audiences__framework p {
  max-width: 62ch;
  color: rgba(14,14,12,0.72);
  font-size: var(--text-sm);
  line-height: 1.55;
}

/* ===================== Resources ===================== */
.resources__head {
  display: flex;
  justify-content: space-between;
  align-items: end;
  flex-wrap: wrap;
  gap: var(--space-6);
  margin-bottom: clamp(var(--space-10), 5vw, var(--space-16));
}
.resources__title { font-size: var(--text-2xl); font-weight: 500; letter-spacing: -0.02em; max-width: 22ch; }

.resource-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
}
@media (min-width: 720px) { .resource-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1080px) { .resource-grid { grid-template-columns: repeat(3, 1fr); } }

.resource-filters {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
  margin-bottom: clamp(var(--space-8), 4vw, var(--space-12));
  padding-bottom: var(--space-5);
  border-bottom: 2px solid #0E0E0C;
}
.resource-filter {
  appearance: none;
  border: 1px solid #0E0E0C;
  background: var(--color-surface);
  color: var(--color-ink);
  cursor: pointer;
  font-family: var(--font-body);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.72rem 0.92rem;
  transition: transform var(--transition-fast), background var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);
}
.resource-filter:hover {
  transform: translate(-2px, -2px);
  box-shadow: 4px 4px 0 var(--color-accent);
}
.resource-filter.is-active {
  background: var(--color-accent);
  color: #0E0E0C;
}
.resource-empty {
  margin-top: var(--space-8);
  padding: var(--space-6);
  border: 2px solid #0E0E0C;
  background: var(--color-surface);
  color: var(--color-text-muted);
  font-size: var(--text-base);
}

.resource-card {
  background: var(--color-surface);
  border: 2px solid #0E0E0C;
  display: flex;
  flex-direction: column;
  padding: var(--space-6);
  gap: var(--space-5);
  position: relative;
  border-radius: var(--radius-sm);
  transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.resource-card[hidden],
.resource-empty[hidden] {
  display: none !important;
}
.resource-card:hover {
  transform: translate(-3px, -3px);
  box-shadow: 8px 8px 0 var(--color-accent);
  border-color: var(--color-ink);
}
.resource-card__cover {
  aspect-ratio: 4 / 5;
  background: linear-gradient(180deg, #1B1A16 0%, #0E0E0C 100%);
  color: #F5EFE2;
  padding: var(--space-5);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  border-radius: 0;
  overflow: hidden;
  border: 2px solid #0E0E0C;
}
.resource-card__cover::before {
  content: "";
  position: absolute;
  inset: 18% 14% auto auto;
  width: 42%;
  aspect-ratio: 1;
  border: 5px solid currentColor;
  opacity: 0.18;
  transform: rotate(0deg);
}
.resource-card__cover::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 3px;
  background: var(--color-accent);
}
.resource-card__cover .kind {
  font-size: var(--text-xs);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-accent);
  font-weight: 900;
}
.resource-card__cover .num {
  font-family: var(--font-body);
  font-style: normal;
  font-weight: 900;
  font-size: 3.5rem;
  line-height: 1;
  color: rgba(245,239,226,0.9);
  letter-spacing: -0.03em;
}
.resource-card__cover .cover-title {
  font-family: var(--font-display);
  font-weight: 900;
  font-size: var(--text-lg);
  line-height: 1.05;
  letter-spacing: -0.015em;
  color: #F5EFE2;
}
.resource-card__cover.--accent { background: linear-gradient(180deg, #EFA11B 0%, #D9860A 100%); color: #0E0E0C; }
.resource-card__cover.--accent .kind { color: #0E0E0C; }
.resource-card__cover.--accent .num,
.resource-card__cover.--accent .cover-title { color: #0E0E0C; }
.resource-card__cover.--accent::after { background: #0E0E0C; }
.resource-card__cover.--paper { background: var(--color-surface-2); color: var(--color-ink); border: 1px solid var(--color-divider); }
.resource-card__cover.--paper .kind { color: var(--color-accent-2); }
.resource-card__cover.--paper .num,
.resource-card__cover.--paper .cover-title { color: var(--color-ink); }
.resource-card__cover.--paper::after { background: var(--color-ink); }
.resource-card__cover.--ebook-cover {
  padding: 0;
  background: #0E0E0C;
}
.resource-card__cover.--ebook-cover::before,
.resource-card__cover.--ebook-cover::after {
  display: none;
}
.resource-card__cover img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.72;
  filter: saturate(0.9) contrast(1.04);
}
.resource-card__cover.--ebook-cover img {
  position: static;
  opacity: 1;
  filter: none;
}
.resource-card__cover.--ebook-cover .kind,
.resource-card__cover.--ebook-cover .cover-title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.resource-card__cover img ~ * { position: relative; z-index: 1; }

.resource-card__title {
  font-family: var(--font-display);
  font-size: var(--text-lg);
  font-weight: 500;
  letter-spacing: -0.01em;
  line-height: 1.15;
}
.resource-card__excerpt {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  flex: 1;
}
.resource-card__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: var(--text-xs);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-faint);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-divider);
}

/* ===================== Proof / author / media strip ===================== */
.proof__head h2,
.about-author h2,
.press-strip h2 {
  font-size: var(--text-xl);
  line-height: 1;
  letter-spacing: -0.035em;
}
.proof__head p,
.about-author__copy p,
.press-strip p {
  margin-top: var(--space-4);
  color: var(--color-text-muted);
}

.proof {
  background: #F6F1E4;
  border-block: 1px solid rgba(14,14,12,0.18);
}
.proof__head {
  display: flex;
  justify-content: space-between;
  align-items: end;
  flex-wrap: wrap;
  gap: var(--space-6);
  margin-bottom: var(--space-10);
}
.proof__head > p { max-width: 44ch; }
.proof-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}
@media (min-width: 760px) {
  .proof-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1120px) {
  .proof-grid { grid-template-columns: repeat(4, 1fr); }
}
.proof-card {
  min-height: 260px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--space-6);
  padding: var(--space-6);
  border: 1px solid rgba(14,14,12,0.2);
  background: var(--color-surface);
  transition: transform var(--transition), box-shadow var(--transition);
}
.proof-card:hover {
  transform: translate(-3px, -3px);
  box-shadow: 7px 7px 0 var(--color-accent);
}
.proof-card span {
  color: var(--color-accent-text);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.proof-card p {
  font-family: var(--font-display);
  font-size: var(--text-lg);
  font-weight: 700;
  line-height: 1.16;
  letter-spacing: -0.025em;
  color: var(--color-ink);
}
.proof-card strong {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.quote-proof .proof__head h2 {
  max-width: 18ch;
}
.quote-proof .proof-card {
  background: var(--color-surface);
}
.quote-proof .proof-card p {
  font-size: clamp(1.1rem, 1.6vw, 1.55rem);
}
.quote-proof .proof-card strong {
  display: inline-flex;
  align-self: flex-start;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-divider);
  font-weight: 900;
  letter-spacing: 0.02em;
}

.endorsements {
  background:
    linear-gradient(90deg, rgba(14,14,12,0.035) 1px, transparent 1px),
    linear-gradient(rgba(14,14,12,0.035) 1px, transparent 1px),
    var(--color-bg);
  background-size: 44px 44px;
  border-top: 1px solid rgba(14,14,12,0.16);
}
.endorsement-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}
@media (min-width: 840px) {
  .endorsement-grid { grid-template-columns: repeat(3, 1fr); }
}
.endorsement-card {
  min-height: 250px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--space-6);
  padding: var(--space-6);
  border: 1px solid rgba(14,14,12,0.2);
  background: rgba(255,253,247,0.86);
  position: relative;
  overflow: hidden;
}
.endorsement-card::after {
  content: "";
  position: absolute;
  right: var(--space-5);
  top: var(--space-5);
  width: 36px;
  height: 36px;
  border: 5px solid rgba(239,161,27,0.22);
}
.endorsement-card span {
  color: rgba(14,14,12,0.55);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.endorsement-card p {
  font-family: var(--font-display);
  font-size: clamp(1.1rem, 1.6vw, 1.45rem);
  font-weight: 700;
  line-height: 1.16;
  letter-spacing: -0.025em;
}
.endorsement-card strong {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  border-top: 1px solid var(--color-divider);
  padding-top: var(--space-4);
}

/* ===================== Framework / preview pages ===================== */
.page-feature-grid,
.framework-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
}
@media (min-width: 900px) {
  .page-feature-grid { grid-template-columns: 0.9fr 1.1fr; align-items: start; }
  .framework-grid { grid-template-columns: repeat(3, 1fr); }
}
.page-panel,
.framework-card {
  border: 2px solid #0E0E0C;
  background: var(--color-surface);
  padding: clamp(var(--space-6), 3vw, var(--space-10));
}
.page-panel h2,
.framework-card h3 { font-size: var(--text-xl); margin-bottom: var(--space-4); }
.page-panel p,
.framework-card p { color: var(--color-text-muted); margin-bottom: var(--space-4); }
.page-panel ul,
.framework-card ul { padding-left: 1.15rem; color: var(--color-text-muted); }
.page-panel li,
.framework-card li { margin-bottom: var(--space-2); }
.framework-card span {
  display: inline-flex;
  margin-bottom: var(--space-5);
  color: var(--color-accent-text);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.framework-card--dark {
  background: #0E0E0C;
  color: #F6F1E4;
}
.framework-card--dark h3,
.framework-card--dark li { color: #F6F1E4; }
.framework-card--dark p { color: rgba(246,241,228,0.72); }

/* ===================== Motion polish ===================== */
.reveal-ready {
  opacity: 1;
  transform: none;
  transition: opacity 520ms cubic-bezier(0.16, 1, 0.3, 1), transform 520ms cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal-ready.is-visible {
  opacity: 1;
  transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
  .reveal-ready {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

.about-author {
  background: #15130E;
  color: #F6F1E4;
  border-top: 1px solid rgba(239,161,27,0.28);
}
.about-author__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-6), 4vw, var(--space-12));
  align-items: center;
  padding-block: clamp(var(--space-8), 5vw, var(--space-14));
}
@media (min-width: 900px) {
  .about-author__inner {
    grid-template-columns: 240px minmax(0, 1fr) 250px;
  }
}
.about-author__portrait {
  width: min(220px, 72vw);
  aspect-ratio: 1;
  border: 1px solid rgba(239,161,27,0.56);
  background: var(--color-accent);
  box-shadow: 9px 9px 0 rgba(239,161,27,0.72);
  overflow: hidden;
}
.about-author__portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: grayscale(0.1) contrast(1.05);
}
.about-author__copy {
  max-width: 760px;
}
.about-author .eyebrow { color: var(--color-accent); }
.about-author .eyebrow::before { background: var(--color-accent); }
.about-author__copy h2 {
  max-width: 23ch;
  color: #F6F1E4;
}
.about-author__copy p {
  color: rgba(246,241,228,0.7);
}
.about-author__links {
  display: flex;
  gap: var(--space-4);
  flex-wrap: wrap;
  margin-top: var(--space-5);
}
.about-author__links .text-link {
  color: #F6F1E4;
}
.about-author__markers {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
@media (min-width: 900px) {
  .about-author__markers {
    align-self: center;
    justify-content: flex-end;
  }
}
.about-author__markers span {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(239,161,27,0.38);
  background: rgba(239,161,27,0.1);
  color: #F6F1E4;
  padding: 0.5rem 0.68rem;
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.press-strip {
  background: #0E0E0C;
  color: #F6F1E4;
  border-bottom: 2px solid var(--color-accent);
}
.press-strip .eyebrow,
.press-strip .eyebrow::before { color: var(--color-accent); }
.press-strip .eyebrow::before { background: var(--color-accent); }
.press-strip h2 { color: #F6F1E4; }
.press-strip p { color: rgba(246,241,228,0.68); }
.press-strip__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-8);
}
.press-strip__actions {
  display: flex;
  gap: var(--space-3);
  flex-wrap: wrap;
}

/* ===================== Pre-order / Waitlist ===================== */
.preorder {
  background: #0E0E0C;
  color: #F6F1E4;
  position: relative;
  overflow: hidden;
}
.preorder::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(239,161,27,0.08) 1px, transparent 1px),
    linear-gradient(rgba(239,161,27,0.08) 1px, transparent 1px),
    radial-gradient(70% 100% at 80% 0%, rgba(239,161,27,0.18), transparent 60%);
  background-size: 58px 58px, 58px 58px, auto;
  pointer-events: none;
}
.preorder__inner { position: relative; }
.preorder .eyebrow { color: var(--color-accent); }
.preorder .eyebrow::before { background: var(--color-accent); }
.preorder__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-10), 5vw, var(--space-16));
  align-items: center;
}
@media (min-width: 980px) {
  .preorder__grid { grid-template-columns: 1.2fr 1fr; }
}
.preorder__side {
  display: grid;
  gap: var(--space-5);
}
.preorder-visual {
  background: #15130E;
  padding: var(--space-3);
  box-shadow: var(--shadow-lg);
  transform: rotate(0deg);
  border: 1px solid rgba(239,161,27,0.55);
}
.preorder-visual img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
  filter: saturate(1.02) contrast(1.02);
}
.preorder h2 {
  font-size: var(--text-3xl);
  font-weight: 900;
  letter-spacing: -0.065em;
  line-height: 0.9;
  color: #F6F1E4;
}
.preorder h2 em { font-style: normal; font-weight: 900; color: var(--color-accent); }
.preorder__lede {
  font-size: var(--text-lg);
  color: rgba(246,241,228,0.72);
  margin-top: var(--space-6);
  max-width: 48ch;
}
.preorder__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6) var(--space-10);
  margin-top: var(--space-10);
  padding-top: var(--space-6);
  border-top: 1px solid rgba(239,161,27,0.35);
}
.preorder__meta div b {
  display: block;
  font-family: var(--font-body);
  font-size: var(--text-base);
  letter-spacing: -0.01em;
  font-weight: 900;
  color: #F6F1E4;
}
.preorder__meta div span {
  display: block;
  font-size: var(--text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(246,241,228,0.58);
  margin-top: 4px;
}

.waitlist-form {
  background: #F6F1E4;
  color: #0E0E0C;
  padding: clamp(var(--space-8), 4vw, var(--space-12));
  border: 1px solid rgba(239,161,27,0.7);
  border-radius: 0;
  box-shadow: var(--shadow-lg);
}
.waitlist-form--featured {
  box-shadow:
    8px 8px 0 rgba(239,161,27,0.78),
    0 28px 70px rgba(0,0,0,0.35);
}
.waitlist-form h3 {
  font-size: var(--text-xl);
  color: #0E0E0C;
  letter-spacing: -0.01em;
  margin-bottom: var(--space-2);
}
.waitlist-form .helper {
  color: rgba(14,14,12,0.62);
  font-size: var(--text-sm);
  margin-bottom: var(--space-6);
}
.waitlist-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-6);
}
.waitlist-benefits span {
  border: 1px solid rgba(14,14,12,0.22);
  background: rgba(239,161,27,0.16);
  color: #0E0E0C;
  padding: 0.42rem 0.58rem;
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.field {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
}
.field label {
  font-size: var(--text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(14,14,12,0.7);
}
.field input,
.field select,
.field textarea {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(14,14,12,0.35);
  color: #0E0E0C;
  padding: var(--space-3) 0;
  font-size: var(--text-base);
}
.field textarea {
  min-height: 128px;
  resize: vertical;
  line-height: 1.55;
}
.field input::placeholder,
.field textarea::placeholder { color: rgba(14,14,12,0.32); }
.field input:focus,
.field select:focus,
.field textarea:focus {
  outline: 0;
  border-bottom-color: var(--color-accent);
}
.field select {
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%23EFA11B' d='M4 6l4 4 4-4z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 0 center;
  padding-right: 24px;
}
.field option { color: #0E0E0C; }
.waitlist-form button[type="submit"] {
  width: 100%;
  background: var(--color-accent);
  color: #0E0E0C;
  padding: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  border-radius: var(--radius-sm);
  font-size: var(--text-sm);
}
.waitlist-form button[type="submit"]:hover { background: #FFB733; }
.waitlist-form .fineprint {
  margin-top: var(--space-5);
  color: rgba(14,14,12,0.5);
  font-size: var(--text-xs);
  line-height: 1.5;
}

.inquiry-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-8), 5vw, var(--space-16));
  align-items: start;
}
@media (min-width: 980px) {
  .inquiry-grid { grid-template-columns: 0.9fr 1.1fr; }
}
.inquiry-card {
  background: var(--color-surface);
  border: 2px solid #0E0E0C;
  padding: clamp(var(--space-6), 3vw, var(--space-8));
  box-shadow: var(--shadow-sm);
}
.inquiry-card h3 {
  font-size: var(--text-lg);
  font-weight: 900;
  margin-bottom: var(--space-4);
}
.inquiry-card ul {
  list-style: none;
  display: grid;
  gap: var(--space-3);
}
.inquiry-card li {
  color: var(--color-text-muted);
  padding-left: var(--space-5);
  position: relative;
}
.inquiry-card li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 12px;
  height: 2px;
  background: var(--color-accent);
}
.request-form {
  background: #0E0E0C;
  color: #F6F1E4;
  border: 2px solid var(--color-accent);
  padding: clamp(var(--space-8), 4vw, var(--space-12));
  box-shadow: 12px 12px 0 var(--color-accent);
}
.request-form h2,
.request-form h3 { color: #F6F1E4; }
.request-form .helper,
.request-form .fineprint { color: rgba(246,241,228,0.62); }
.request-form .field label { color: rgba(246,241,228,0.68); }
.request-form .field input,
.request-form .field select,
.request-form .field textarea {
  color: #F6F1E4;
  border-bottom-color: rgba(246,241,228,0.28);
}
.request-form .field input::placeholder,
.request-form .field textarea::placeholder { color: rgba(246,241,228,0.34); }
.request-form button[type="submit"] {
  width: 100%;
  background: var(--color-accent);
  color: #0E0E0C;
  padding: 0.95rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  border-radius: 0;
  font-size: var(--text-sm);
}
.request-form button[type="submit"]:hover { background: #FFB733; }

/* ===================== Footer ===================== */
/* Fixed dark identity insert in both light and dark modes. */
.site-footer {
  background: #0E0E0C;
  color: #F5EFE2;
  padding-block: clamp(var(--space-16), 8vw, var(--space-24)) var(--space-8);
  border-top: 1px solid transparent;
}
[data-theme="dark"] .site-footer {
  background: #050504;
  border-top-color: #2B2920;
}
.site-footer .brand,
.site-footer h4 { color: #F5EFE2; }
.footer-grid {
  display: grid;
  grid-template-columns: 1.2fr repeat(3, 1fr);
  gap: var(--space-12);
}
@media (max-width: 880px) {
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 540px) {
  .footer-grid { grid-template-columns: 1fr; }
}
.footer-grid h4 {
  font-family: var(--font-body);
  font-size: var(--text-xs);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(245,239,226,0.5);
  margin-bottom: var(--space-5);
  font-weight: 500;
}
.footer-grid ul { list-style: none; display: flex; flex-direction: column; gap: var(--space-3); }
.footer-grid a {
  color: rgba(245,239,226,0.85);
  font-size: var(--text-sm);
}
.footer-grid a:hover { color: var(--color-accent); }
.footer-grid p {
  color: rgba(245,239,226,0.7);
  font-size: var(--text-sm);
  max-width: 38ch;
}
.site-footer__bottom {
  margin-top: var(--space-16);
  padding-top: var(--space-6);
  border-top: 1px solid rgba(245,239,226,0.12);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-4);
  font-size: var(--text-xs);
  color: rgba(245,239,226,0.5);
  letter-spacing: 0.04em;
}
.site-footer__bottom .legal { display: flex; gap: var(--space-5); flex-wrap: wrap; }
.site-footer__bottom a { color: rgba(245,239,226,0.7); }
.site-footer__bottom a:hover { color: var(--color-accent); }

/* ===================== Article (interior page) ===================== */
.article-hero {
  padding-block: clamp(var(--space-16), 8vw, var(--space-24)) var(--space-12);
  background:
    linear-gradient(90deg, rgba(239,161,27,0.1) 1px, transparent 1px),
    linear-gradient(rgba(239,161,27,0.1) 1px, transparent 1px),
    #0E0E0C;
  background-size: 56px 56px;
  border-bottom: 6px solid var(--color-accent);
  color: #F6F1E4;
}
.article-hero__meta {
  display: flex; gap: var(--space-4); align-items: center; flex-wrap: wrap;
  font-size: var(--text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(246,241,228,0.62);
  margin-bottom: var(--space-8);
}
.article-hero__meta .pill {
  padding: 0.3rem 0.55rem;
  background: var(--color-accent);
  color: #0E0E0C;
  letter-spacing: 0.12em;
  font-weight: 600;
}
.article-hero h1 {
  font-size: var(--text-3xl);
  font-weight: 900;
  letter-spacing: -0.065em;
  line-height: 0.9;
  max-width: 22ch;
  color: #F6F1E4;
}
.article-hero h1 em { font-style: normal; color: var(--color-accent); font-weight: 900; }
.article-hero__deck {
  margin-top: var(--space-6);
  font-size: var(--text-lg);
  color: rgba(246,241,228,0.72);
  max-width: 56ch;
}
.article-hero__byline {
  margin-top: var(--space-10);
  display: flex; align-items: center; gap: var(--space-3);
  padding-top: var(--space-6);
  border-top: 1px solid rgba(239,161,27,0.35);
  font-size: var(--text-sm);
}
.article-hero__byline .avatar {
  width: 44px; height: 44px;
  border-radius: 0;
  background: var(--color-ink);
  color: var(--color-accent);
  display: inline-flex; align-items: center; justify-content: center;
  font-family: var(--font-display);
  font-style: normal;
  font-weight: 900;
}
.article-hero__figure {
  margin: clamp(var(--space-8), 5vw, var(--space-12)) 0 0;
}
.article-hero__figure img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border: 1px solid rgba(239,161,27,0.42);
  box-shadow: var(--shadow-md);
  background: #15130E;
}
.article-hero__figure figcaption {
  color: rgba(246,241,228,0.6);
  font-size: var(--text-xs);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-top: var(--space-3);
}

.prose {
  max-width: 64ch;
  margin-inline: auto;
}
.prose > * + * { margin-top: var(--space-6); }
.prose p {
  font-size: var(--text-base);
  line-height: 1.7;
  color: var(--color-text);
  max-width: 64ch;
}
.prose > p:first-of-type {
  font-size: clamp(1.12rem, 2.2vw, 1.45rem);
  line-height: 1.48;
  color: var(--color-ink);
  font-family: var(--font-display);
  font-weight: 800;
  letter-spacing: -0.018em;
}
.prose p.lede {
  font-size: var(--text-lg);
  color: var(--color-text);
  font-family: var(--font-display);
  font-weight: 800;
  line-height: 1.45;
  letter-spacing: -0.01em;
}
.prose h2 {
  margin-top: var(--space-12);
  font-size: var(--text-xl);
  font-weight: 900;
  letter-spacing: -0.04em;
}
.prose h3 {
  margin-top: var(--space-10);
  font-size: var(--text-lg);
  font-weight: 600;
  font-family: var(--font-body);
  letter-spacing: 0;
}
.prose blockquote {
  margin-block: var(--space-10);
  padding-left: var(--space-6);
  border-left: 8px solid var(--color-accent);
  font-family: var(--font-display);
  font-style: normal;
  font-size: var(--text-lg);
  color: var(--color-ink);
  font-weight: 900;
  line-height: 1.4;
}
.prose ol, .prose ul { padding-left: var(--space-6); }
.prose li { margin-bottom: var(--space-2); line-height: 1.7; }
.prose ol li::marker { color: var(--color-accent); font-family: var(--font-display); font-style: italic; }
.prose strong { font-weight: 700; }
.prose em { font-style: italic; }
.prose figure {
  margin-block: var(--space-12);
}
.prose figure img,
.prose .figure-tile {
  width: 100%;
  background: var(--color-ink);
  aspect-ratio: 16/9;
  border-radius: var(--radius-sm);
}
.prose figcaption {
  margin-top: var(--space-3);
  font-size: var(--text-xs);
  color: var(--color-text-muted);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.article-aside {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-12);
  margin-top: clamp(var(--space-16), 7vw, var(--space-24));
  padding-top: var(--space-12);
  border-top: 2px solid #0E0E0C;
}
@media (min-width: 980px) {
  .article-aside { grid-template-columns: 1fr 1fr; }
}
.article-next {
  max-width: 760px;
  margin: clamp(var(--space-14), 7vw, var(--space-20)) auto 0;
  padding: clamp(var(--space-6), 4vw, var(--space-10));
  background:
    linear-gradient(90deg, rgba(239,161,27,0.1) 1px, transparent 1px),
    linear-gradient(rgba(239,161,27,0.1) 1px, transparent 1px),
    #0E0E0C;
  background-size: 36px 36px;
  color: #F6F1E4;
  border: 2px solid var(--color-accent);
}
.article-next h2 {
  margin-top: var(--space-3);
  max-width: 14ch;
  font-size: clamp(2rem, 5vw, 3.5rem);
  line-height: 0.95;
  letter-spacing: -0.055em;
  font-weight: 900;
  color: #F6F1E4;
}
.article-next p:not(.eyebrow) {
  margin: var(--space-5) 0 var(--space-6);
  max-width: 54ch;
  color: rgba(246,241,228,0.72);
}
@media (max-width: 700px) {
  .article-hero {
    padding-block: var(--space-12) var(--space-8);
  }
  .article-hero h1,
  .page-hero h1,
  .media-hero h1 {
    font-size: clamp(3rem, 18vw, 5.8rem);
    letter-spacing: -0.055em;
  }
  .article-hero__deck,
  .page-hero__deck,
  .media-hero__deck {
    font-size: var(--text-base);
  }
  .article-hero__figure img {
    aspect-ratio: 4 / 3;
  }
  .prose {
    max-width: 100%;
  }
  .prose > * + * {
    margin-top: var(--space-5);
  }
  .prose h2 {
    font-size: clamp(1.65rem, 9vw, 2.4rem);
  }
  .article-next {
    margin-top: var(--space-12);
  }
}

/* Page hero (interior pages) */
.page-hero {
  padding-block: clamp(var(--space-16), 8vw, var(--space-24)) var(--space-12);
  background:
    linear-gradient(90deg, rgba(14,14,12,0.04) 1px, transparent 1px),
    linear-gradient(rgba(14,14,12,0.04) 1px, transparent 1px);
  background-size: 48px 48px;
}
.page-hero h1 {
  font-size: var(--text-3xl);
  font-weight: 900;
  letter-spacing: -0.058em;
  line-height: 0.94;
  max-width: 18ch;
}
.page-hero h1 em { font-style: normal; color: var(--color-accent-text); font-weight: 900; }
.page-hero__deck {
  margin-top: var(--space-7);
  font-size: var(--text-lg);
  color: var(--color-text-muted);
  max-width: 60ch;
}

main > .page-hero + .section--tight {
  padding-top: clamp(var(--space-8), 5vw, var(--space-14));
}

/* Press and speaking request pages */
.media-hero {
  padding-block: clamp(var(--space-12), 7vw, var(--space-24)) var(--space-12);
  background:
    radial-gradient(circle at 84% 18%, rgba(239,161,27,0.22), transparent 28%),
    linear-gradient(90deg, rgba(14,14,12,0.04) 1px, transparent 1px),
    linear-gradient(rgba(14,14,12,0.04) 1px, transparent 1px);
  background-size: auto, 48px 48px, 48px 48px;
}
.media-hero--speaking {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 80% 24%, rgba(239,161,27,0.24), transparent 30%),
    linear-gradient(90deg, rgba(239,161,27,0.12) 1px, transparent 1px),
    linear-gradient(rgba(239,161,27,0.12) 1px, transparent 1px),
    #0E0E0C;
  background-size: auto, 48px 48px, 48px 48px, auto;
  color: #F6F1E4;
  border-bottom: 1px solid rgba(239,161,27,0.35);
}
.media-hero--speaking::after {
  content: "";
  position: absolute;
  right: -5vw;
  top: 14%;
  width: min(34vw, 460px);
  aspect-ratio: 1;
  border: 14px solid rgba(239,161,27,0.18);
  transform: rotate(-4deg);
  pointer-events: none;
}
.media-hero--speaking .container { position: relative; z-index: 1; }
.media-hero--speaking .eyebrow,
.media-hero--speaking h1,
.media-hero--speaking .media-hero__deck {
  color: inherit;
}
.media-hero--speaking .eyebrow {
  margin-bottom: clamp(var(--space-5), 2.4vw, var(--space-8));
}
.media-hero--speaking h1 {
  max-width: 14.5ch;
  text-transform: uppercase;
  line-height: 0.94;
  letter-spacing: -0.058em;
}
.media-hero--speaking .media-hero__deck {
  margin-top: clamp(var(--space-7), 3vw, var(--space-10));
  color: rgba(246,241,228,0.78);
  line-height: 1.42;
}
.media-hero--speaking .btn--secondary {
  color: #F6F1E4;
  border-color: rgba(246,241,228,0.7);
}
.media-hero--speaking .btn--secondary:hover {
  background: #F6F1E4;
  color: #0E0E0C;
  border-color: #F6F1E4;
}
.media-hero__grid {
  display: grid;
  gap: clamp(var(--space-10), 5vw, var(--space-16));
  align-items: center;
}
@media (min-width: 980px) {
  .media-hero__grid { grid-template-columns: 1.05fr 0.95fr; }
}
.media-hero h1 {
  font-size: var(--text-3xl);
  font-weight: 900;
  letter-spacing: -0.065em;
  line-height: 0.9;
  max-width: 13ch;
}
.media-hero__deck {
  margin-top: var(--space-6);
  max-width: 58ch;
  font-size: var(--text-lg);
  color: var(--color-text-muted);
}
.media-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-8);
}
.media-photo-stack {
  position: relative;
  min-height: 420px;
}
.media-photo-stack--speaking {
  min-height: clamp(390px, 40vw, 520px);
}
.media-photo {
  position: absolute;
  overflow: hidden;
  border: 2px solid #0E0E0C;
  background: var(--color-surface);
  box-shadow: var(--shadow-md);
}
.media-hero--speaking .media-photo {
  border-color: rgba(246,241,228,0.9);
  background: #151512;
  box-shadow: 16px 16px 0 rgba(239,161,27,0.28);
}
.media-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.92) contrast(1.03);
}
.media-photo--main {
  inset: 0 8% 12% 0;
  transform: rotate(-2deg);
}
.media-photo-stack--speaking .media-photo--main {
  inset: 2% 8% 16% 0;
  transform: rotate(0deg);
}
.media-photo-stack--speaking .media-photo--main img {
  object-position: center center;
}
.media-photo--secondary {
  right: 0;
  bottom: 0;
  width: 46%;
  height: 44%;
  transform: rotate(3deg);
}
.media-photo-stack--speaking .media-photo--secondary {
  width: 46%;
  height: 34%;
  right: 0;
  bottom: 4%;
  transform: rotate(2deg);
  border-color: var(--color-accent);
}
.media-photo__label {
  position: absolute;
  left: var(--space-4);
  bottom: var(--space-4);
  max-width: 18rem;
  padding: .5rem .65rem;
  background: #0E0E0C;
  color: #F5EFE2;
  font-size: var(--text-xs);
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
@media (max-width: 700px) {
  .media-photo-stack { min-height: 320px; }
  .media-photo-stack--speaking { min-height: 360px; }
  .media-photo-stack--speaking .media-photo--main { inset: 0 0 22% 0; }
  .media-photo-stack--speaking .media-photo--secondary { width: 58%; height: 34%; }
}
.speaking-signal-strip {
  background: var(--color-accent);
  border-block: 2px solid #0E0E0C;
  color: #0E0E0C;
}
.speaking-signal-strip__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  padding-block: 0;
  background: rgba(14,14,12,0.16);
}
@media (min-width: 760px) {
  .speaking-signal-strip__inner { grid-template-columns: repeat(4, 1fr); }
}
.speaking-signal-strip__inner > div {
  min-height: 168px;
  padding: clamp(var(--space-6), 2.4vw, var(--space-8));
  background:
    linear-gradient(90deg, rgba(14,14,12,0.06) 1px, transparent 1px),
    linear-gradient(rgba(14,14,12,0.06) 1px, transparent 1px),
    var(--color-accent);
  background-size: 28px 28px;
}
.speaking-signal-strip span {
  display: block;
  margin-bottom: var(--space-5);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.14em;
}
.speaking-signal-strip strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.3rem, 2vw, 1.85rem);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: -0.035em;
}
.speaking-signal-strip p {
  margin-top: var(--space-4);
  color: rgba(14,14,12,0.72);
  font-size: var(--text-sm);
  line-height: 1.5;
}
.media-section {
  padding-block: clamp(var(--space-12), 7vw, var(--space-18));
}
.media-grid {
  display: grid;
  gap: clamp(var(--space-5), 2.4vw, var(--space-7));
}
@media (min-width: 860px) {
  .media-grid--3 { grid-template-columns: repeat(3, 1fr); }
  .media-grid--2 { grid-template-columns: repeat(2, 1fr); }
}
.media-card {
  position: relative;
  background: var(--color-surface);
  border: 2px solid #0E0E0C;
  padding: clamp(var(--space-6), 2.2vw, var(--space-8));
  box-shadow: var(--shadow-sm);
}
.media-grid--3 .media-card {
  position: relative;
  overflow: hidden;
}
.media-grid--3 .media-card::after {
  content: "";
  position: absolute;
  right: -42px;
  bottom: -42px;
  width: 112px;
  height: 112px;
  border: 8px solid rgba(239,161,27,0.16);
  transform: rotate(5deg);
}
.media-card h3 {
  max-width: 18ch;
  font-size: clamp(1.25rem, 1.6vw, 1.65rem);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.02em;
  margin-bottom: var(--space-4);
}
.media-card p,
.media-card li {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  line-height: 1.58;
}
.media-card ul {
  margin: var(--space-4) 0 0;
  padding-left: 1.1rem;
}
.media-card li + li { margin-top: var(--space-3); }

#details.media-section {
  padding-top: clamp(var(--space-14), 8vw, var(--space-22));
}
#details .section-heading {
  max-width: 72rem;
  margin-bottom: clamp(var(--space-7), 4vw, var(--space-11));
}
#details .section-heading .section-kicker {
  margin-bottom: var(--space-3);
}
#details .section-heading h2 {
  max-width: 34ch;
  font-size: clamp(1.85rem, 3.2vw, 3.05rem);
  line-height: 1.02;
  letter-spacing: -0.045em;
}
#details .section-heading p {
  margin-top: var(--space-4);
  max-width: 58ch;
  color: var(--color-text-muted);
  font-size: var(--text-base);
  line-height: 1.58;
}
#details .media-card {
  min-height: 238px;
}
#details .media-card h3 {
  max-width: 20ch;
  font-size: clamp(1.2rem, 1.35vw, 1.45rem);
  line-height: 1.1;
}
#details .media-card p {
  max-width: 34ch;
}
.speaking-room {
  background:
    linear-gradient(90deg, rgba(14,14,12,0.045) 1px, transparent 1px),
    linear-gradient(rgba(14,14,12,0.045) 1px, transparent 1px),
    var(--color-bg);
  background-size: 44px 44px;
}
.speaking-room__grid {
  display: grid;
  gap: clamp(var(--space-8), 5vw, var(--space-14));
  align-items: center;
}
@media (min-width: 980px) {
  .speaking-room__grid { grid-template-columns: 0.9fr 1.1fr; }
}
.speaking-room__copy h2 {
  max-width: 13ch;
  font-size: var(--text-2xl);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.048em;
}
.speaking-room__copy > p {
  margin-top: var(--space-5);
  max-width: 60ch;
  color: var(--color-text-muted);
  font-size: var(--text-lg);
  line-height: 1.5;
}
.speaking-room__outcomes {
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-7);
}
.speaking-room__outcomes article {
  padding: var(--space-4);
  border: 1px solid rgba(14,14,12,0.16);
  background: rgba(246,241,228,0.72);
}
.speaking-room__outcomes span {
  display: block;
  margin-bottom: var(--space-2);
  color: var(--color-accent-text);
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: var(--text-xs);
}
.speaking-room__outcomes p {
  color: var(--color-text-muted);
  line-height: 1.5;
}
.speaking-photo-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
  align-items: stretch;
}
.speaking-photo-grid figure {
  overflow: hidden;
  border: 2px solid #0E0E0C;
  background: #0E0E0C;
  box-shadow: var(--shadow-sm);
}
.speaking-photo-grid__large {
  grid-column: 1 / -1;
  aspect-ratio: 16 / 10;
}
.speaking-photo-grid figure:not(.speaking-photo-grid__large) {
  aspect-ratio: 4 / 3;
}
.speaking-photo-grid img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.92) contrast(1.03);
}
.media-band {
  background: #0E0E0C;
  color: #F5EFE2;
  border-top: 1px solid rgba(239,161,27,.35);
  border-bottom: 1px solid rgba(239,161,27,.35);
}
.media-band .section-kicker,
.media-band h2,
.media-band p,
.media-band li { color: inherit; }
.media-band .media-card {
  background: #F6F1E4;
  color: #0E0E0C;
  border-color: var(--color-accent);
}
.media-band .media-card h3 {
  color: #0E0E0C;
}
.media-band .media-card p,
.media-band .media-card li {
  color: rgba(14,14,12,0.72);
}
.media-band h2 {
  max-width: 14ch;
  font-size: var(--text-2xl);
  font-weight: 900;
  letter-spacing: -0.048em;
  line-height: 1;
}
.media-band__intro {
  display: grid;
  align-content: start;
  gap: clamp(var(--space-6), 3vw, var(--space-9));
}
.media-band__visual {
  position: relative;
  overflow: hidden;
  border: 2px solid var(--color-accent);
  background: #0E0E0C;
  box-shadow: var(--shadow-md);
}
.media-band__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, transparent 52%, rgba(14,14,12,0.78)),
    linear-gradient(90deg, rgba(239,161,27,0.24) 0 1px, transparent 1px);
  background-size: auto, 36px 100%;
}
.media-band__visual img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center 58%;
  filter: saturate(0.86) contrast(1.06);
}
.media-band__visual figcaption {
  position: absolute;
  left: var(--space-5);
  right: var(--space-5);
  bottom: var(--space-5);
  z-index: 1;
  max-width: 44ch;
  color: #F6F1E4;
  font-size: var(--text-xs);
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.media-request-section {
  padding-top: clamp(var(--space-10), 6vw, var(--space-16));
}
.media-request-grid {
  align-items: stretch;
}
.media-quote {
  display: grid;
  align-content: center;
  min-height: 100%;
  gap: clamp(var(--space-4), 2vw, var(--space-6));
  padding: clamp(var(--space-6), 3.2vw, var(--space-10));
  background: var(--color-accent);
  color: #0E0E0C;
  border: 2px solid #0E0E0C;
  box-shadow: var(--shadow-md);
}
.media-quote blockquote {
  max-width: 34ch;
  font-family: var(--font-display);
  font-size: clamp(1.4rem, 1.55vw, 1.75rem);
  line-height: 1.12;
  letter-spacing: -0.022em;
  font-weight: 900;
  text-wrap: balance;
}
.media-quote p {
  margin-top: 0;
  padding-top: var(--space-4);
  max-width: 42ch;
  border-top: 1px solid rgba(14,14,12,.28);
  color: rgba(14,14,12,.72);
  font-size: var(--text-sm);
  line-height: 1.55;
}
@media (max-width: 700px) {
  .media-request-section {
    padding-top: var(--space-12);
  }
  .media-quote {
    padding: var(--space-6);
  }
  .media-quote blockquote {
    max-width: 26ch;
    font-size: clamp(1.35rem, 7vw, 1.85rem);
    line-height: 1.08;
  }
}
.media-form-wrap {
  display: grid;
  gap: clamp(var(--space-8), 4vw, var(--space-12));
  align-items: start;
}
@media (min-width: 980px) {
  .media-form-wrap { grid-template-columns: .82fr 1.18fr; }
}
.media-form-note {
  position: sticky;
  top: 100px;
}
.media-form-note h2 {
  font-size: var(--text-2xl);
  font-weight: 900;
  letter-spacing: -0.048em;
  line-height: 1;
}
.media-form-note p {
  margin-top: var(--space-4);
  color: var(--color-text-muted);
  line-height: 1.55;
}

/* Audience deep section */
.audience-detail {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-10), 5vw, var(--space-16));
  align-items: start;
}
@media (min-width: 980px) {
  .audience-detail { grid-template-columns: 0.7fr 1.3fr; }
}
.audience-detail .sticky {
  position: sticky;
  top: 100px;
}
.audience-detail h2 {
  font-size: var(--text-2xl);
  font-weight: 900;
  letter-spacing: -0.055em;
  line-height: 0.95;
}
.audience-detail h2 em { font-style: normal; color: var(--color-accent-text); font-weight: 900; }
.audience-detail h3 {
  font-size: var(--text-lg);
  font-weight: 900;
  margin-bottom: var(--space-3);
  letter-spacing: -0.005em;
}
.audience-detail .stack > * + * { margin-top: var(--space-6); }
.audience-detail .panel {
  padding: var(--space-6);
  background: var(--color-surface);
  border: 2px solid #0E0E0C;
  border-radius: 0;
  box-shadow: var(--shadow-sm);
}

/* Stats row */
.stats-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  background: transparent;
  border: 0;
}
@media (min-width: 720px) {
  .stats-row { grid-template-columns: repeat(3, 1fr); }
}
.stat {
  background: var(--color-bg);
  border: 2px solid #0E0E0C;
  padding: var(--space-8);
  box-shadow: var(--shadow-sm);
}
.stat .num {
  font-family: var(--font-display);
  font-size: var(--text-3xl);
  font-weight: 900;
  line-height: 0.9;
  letter-spacing: -0.06em;
  color: var(--color-ink);
}
.stat .num em { font-style: normal; color: var(--color-accent-text); font-weight: 900; }
.stat .label {
  margin-top: var(--space-3);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

/* Governments & universities audience case page */
.audience-case-page {
  background:
    radial-gradient(circle at 16% 8%, rgba(239,161,27,0.12), transparent 32rem),
    linear-gradient(180deg, var(--color-bg), #EFE5D2 78%, var(--color-bg));
}

.policy-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(7.5rem, 12vw, 11rem) 0 clamp(4rem, 7vw, 7rem);
  background: var(--color-ink);
  color: var(--color-bg);
}

.policy-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(239,161,27,0.18) 1px, transparent 1px),
    linear-gradient(rgba(239,161,27,0.12) 1px, transparent 1px);
  background-size: 68px 68px;
  opacity: 0.28;
  mask-image: linear-gradient(90deg, black, transparent 74%);
}

.policy-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(var(--space-8), 6vw, var(--space-14));
  align-items: center;
}

@media (min-width: 980px) {
  .policy-hero__grid { grid-template-columns: minmax(0, 0.95fr) minmax(420px, 0.88fr); }
}

.policy-hero .eyebrow { color: var(--color-accent); }
.policy-hero .eyebrow::before { background: var(--color-accent); }

.policy-hero h1 {
  max-width: 11ch;
  margin-top: var(--space-5);
  color: var(--color-bg);
  font-size: clamp(4.25rem, 10.5vw, 9.5rem);
  line-height: 0.78;
  letter-spacing: -0.09em;
  text-transform: uppercase;
}

.policy-hero h1 em {
  color: var(--color-accent);
  font-style: italic;
  font-weight: 400;
  letter-spacing: -0.075em;
}

.policy-hero__deck {
  max-width: 58ch;
  margin-top: var(--space-7);
  color: rgba(246,241,228,0.74);
  font-size: clamp(1.08rem, 1.55vw, 1.32rem);
  line-height: 1.55;
}

.policy-hero .btn--secondary {
  border-color: rgba(246,241,228,0.38);
  color: var(--color-bg);
}

.policy-hero__visual {
  position: relative;
  min-height: min(74vw, 560px);
}

.policy-photo {
  margin: 0;
  position: absolute;
  overflow: hidden;
  border: 2px solid rgba(246,241,228,0.7);
  background: #111;
  box-shadow: 0 28px 70px rgba(0,0,0,0.32);
}

.policy-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.82) contrast(1.04);
}

.policy-photo--large {
  top: 0;
  right: 0;
  width: min(88%, 540px);
  height: min(62vw, 430px);
}

.policy-photo--small {
  left: 0;
  bottom: 0;
  width: min(54%, 310px);
  height: min(38vw, 260px);
  border-color: var(--color-accent);
}

.policy-hero__note {
  position: absolute;
  right: clamp(0rem, 2vw, 2rem);
  bottom: clamp(0rem, 3vw, 2.5rem);
  max-width: 270px;
  padding: var(--space-5);
  background: var(--color-accent);
  color: var(--color-ink);
  border: 2px solid var(--color-ink);
  box-shadow: 10px 10px 0 rgba(246,241,228,0.2);
}

.policy-hero__note span {
  display: block;
  margin-bottom: var(--space-3);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.18em;
}

.policy-hero__note strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2.3vw, 2rem);
  line-height: 0.95;
  letter-spacing: -0.055em;
}

.policy-thesis {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
  padding: clamp(var(--space-7), 5vw, var(--space-10));
  border: 2px solid var(--color-ink);
  background: var(--color-bg);
  box-shadow: var(--shadow-sm);
}

@media (min-width: 920px) {
  .policy-thesis { grid-template-columns: 0.62fr 1.25fr 0.9fr; align-items: center; }
}

.policy-thesis blockquote {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 0.92;
  letter-spacing: -0.06em;
  color: var(--color-ink);
}

.policy-thesis p:last-child {
  color: var(--color-text-muted);
  line-height: 1.65;
  font-size: var(--text-md);
}

.policy-diagnostic {
  display: grid;
  gap: var(--space-7);
  margin: var(--space-10) 0;
  padding: clamp(var(--space-7), 5vw, var(--space-10));
  background: var(--color-ink);
  color: var(--color-bg);
}

@media (min-width: 980px) {
  .policy-diagnostic { grid-template-columns: 0.75fr 1.25fr; align-items: start; }
}

.policy-diagnostic .eyebrow { color: var(--color-accent); }
.policy-diagnostic .eyebrow::before { background: var(--color-accent); }

.policy-diagnostic h2 {
  max-width: 14ch;
  font-family: var(--font-display);
  font-size: clamp(2.1rem, 4.2vw, 4.7rem);
  line-height: 0.88;
  letter-spacing: -0.07em;
}

.policy-diagnostic__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}

@media (min-width: 760px) {
  .policy-diagnostic__grid { grid-template-columns: repeat(2, 1fr); }
}

.policy-diagnostic__grid article {
  min-height: 210px;
  padding: var(--space-5);
  border: 1px solid rgba(246,241,228,0.18);
  background: rgba(246,241,228,0.055);
}

.policy-diagnostic__grid strong {
  display: block;
  margin-bottom: var(--space-4);
  color: var(--color-accent);
  font-size: var(--text-md);
  letter-spacing: -0.02em;
}

.policy-diagnostic__grid p {
  color: rgba(246,241,228,0.72);
  line-height: 1.62;
}

.equity-trap-feature {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-5);
  margin: var(--space-10) 0;
}

@media (min-width: 940px) {
  .equity-trap-feature { grid-template-columns: 1.2fr 0.8fr; }
}

.equity-trap-feature__copy,
.equity-trap-feature__quote {
  border: 1px solid rgba(14,14,12,0.18);
  background: rgba(246,241,228,0.86);
  padding: clamp(var(--space-6), 4vw, var(--space-9));
}

.equity-trap-feature__copy h2 {
  max-width: 13ch;
  font-family: var(--font-display);
  font-size: clamp(2.15rem, 4vw, 4.55rem);
  line-height: 0.9;
  letter-spacing: -0.07em;
}

.equity-trap-feature__copy p {
  max-width: 66ch;
  margin-top: var(--space-5);
  color: var(--color-text-muted);
  font-size: var(--text-md);
  line-height: 1.68;
}

.equity-trap-feature__quote {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 420px;
  background:
    linear-gradient(135deg, rgba(239,161,27,0.92), rgba(239,161,27,0.72)),
    var(--color-accent);
  color: var(--color-ink);
}

.equity-trap-feature__quote span {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.equity-trap-feature__quote blockquote {
  margin: var(--space-10) 0 0;
  font-family: var(--font-display);
  font-size: clamp(2rem, 3.7vw, 4.1rem);
  line-height: 0.94;
  letter-spacing: -0.065em;
}

.policy-use-cases {
  margin: var(--space-10) 0;
  padding-top: var(--space-8);
  border-top: 2px solid rgba(14,14,12,0.16);
}

.policy-use-cases__header {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-5);
  margin-bottom: var(--space-6);
}

@media (min-width: 900px) {
  .policy-use-cases__header { grid-template-columns: 0.55fr 1.2fr; align-items: end; }
}

.policy-use-cases__header h2 {
  max-width: 16ch;
  font-family: var(--font-display);
  font-size: clamp(2.3rem, 4.6vw, 5rem);
  line-height: 0.9;
  letter-spacing: -0.075em;
}

.policy-use-cases__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}

@media (min-width: 860px) {
  .policy-use-cases__grid { grid-template-columns: repeat(4, 1fr); }
}

.policy-use-cases__grid article {
  position: relative;
  min-height: 280px;
  padding: var(--space-5);
  border: 2px solid var(--color-ink);
  background: var(--color-bg);
  overflow: hidden;
}

.policy-use-cases__grid article::after {
  content: "";
  position: absolute;
  right: -46px;
  bottom: -46px;
  width: 128px;
  height: 128px;
  background: var(--color-accent);
  opacity: 0.18;
  transform: rotate(18deg);
}

.policy-use-cases__grid span {
  display: block;
  margin-bottom: var(--space-9);
  color: var(--color-accent-text);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.16em;
}

.policy-use-cases__grid h3 {
  position: relative;
  z-index: 1;
  font-family: var(--font-display);
  font-size: clamp(1.45rem, 2.1vw, 2rem);
  line-height: 0.98;
  letter-spacing: -0.05em;
}

.policy-use-cases__grid p {
  position: relative;
  z-index: 1;
  margin-top: var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  line-height: 1.62;
}

@media (max-width: 720px) {
  .policy-hero__visual { min-height: 560px; }
  .policy-photo--large { width: 100%; height: 360px; }
  .policy-photo--small { width: 58%; height: 190px; }
  .policy-hero__note { left: var(--space-4); right: var(--space-4); bottom: var(--space-5); max-width: none; }
}

/* Explore Ecosystem Architecture page */
.architecture-page {
  background:
    radial-gradient(circle at 84% 8%, rgba(239, 161, 27, 0.14), transparent 30rem),
    linear-gradient(180deg, var(--color-bg), #efe5d2 72%, var(--color-bg));
}

.architecture-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(7.5rem, 12vw, 11rem) 0 clamp(4rem, 7vw, 7rem);
  background: var(--color-ink);
  color: var(--color-bg);
}

.architecture-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.18;
  background-image:
    linear-gradient(rgba(246, 241, 228, 0.16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(246, 241, 228, 0.16) 1px, transparent 1px);
  background-size: 72px 72px;
}

.architecture-hero::after {
  content: "";
  position: absolute;
  right: -10vw;
  top: 12%;
  width: min(46vw, 620px);
  height: min(46vw, 620px);
  border: 2px solid rgba(239, 161, 27, 0.42);
  transform: rotate(18deg);
}

.architecture-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(var(--space-8), 6vw, var(--space-14));
  align-items: center;
}

@media (min-width: 980px) {
  .architecture-hero__grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(400px, 0.85fr);
  }
}

.architecture-hero .eyebrow {
  color: var(--color-accent);
}

.architecture-hero .eyebrow::before {
  background: var(--color-accent);
}

.architecture-hero h1 {
  max-width: 10ch;
  margin-top: var(--space-5);
  color: var(--color-bg);
  font-family: var(--font-display);
  font-size: clamp(4rem, 10vw, 9rem);
  line-height: 0.78;
  letter-spacing: -0.09em;
  text-transform: uppercase;
}

.architecture-hero__subtitle {
  max-width: 15ch;
  margin-top: var(--space-4);
  color: var(--color-accent);
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3.2vw, 3.25rem);
  line-height: 0.95;
  letter-spacing: -0.055em;
}

.architecture-hero__deck {
  max-width: 58ch;
  margin-top: var(--space-6);
  color: rgba(246, 241, 228, 0.74);
  font-size: clamp(1.08rem, 1.55vw, 1.32rem);
  line-height: 1.55;
}

.architecture-hero .btn--secondary {
  border-color: rgba(246, 241, 228, 0.38);
  color: var(--color-bg);
}

.architecture-hero__visual {
  position: relative;
  min-height: min(74vw, 560px);
  display: grid;
  place-items: center;
}

.architecture-hero__visual figure {
  position: absolute;
  right: 0;
  top: 0;
  width: min(72%, 420px);
  margin: 0;
  border: 2px solid rgba(246, 241, 228, 0.7);
  background: #111;
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.32);
  transform: rotate(2deg);
}

.architecture-hero__visual img {
  display: block;
  width: 100%;
  height: auto;
}

.architecture-book-card {
  position: absolute;
  left: 0;
  bottom: clamp(0rem, 3vw, 2.5rem);
  z-index: 2;
  width: min(68%, 360px);
  padding: var(--space-6);
  border: 2px solid var(--color-ink);
  background: var(--color-accent);
  color: var(--color-ink);
  box-shadow: 10px 10px 0 rgba(246, 241, 228, 0.2);
}

.architecture-book-card span {
  display: block;
  margin-bottom: var(--space-4);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.architecture-book-card strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 4.5rem);
  line-height: 0.85;
  letter-spacing: -0.07em;
  text-transform: uppercase;
}

.architecture-book-card p {
  margin-top: var(--space-5);
  font-weight: 800;
  line-height: 1.35;
}

.architecture-thesis {
  margin-top: clamp(var(--space-8), 7vw, var(--space-13));
  padding: clamp(var(--space-7), 5vw, var(--space-10));
  border: 2px solid var(--color-ink);
  background: var(--color-bg);
  box-shadow: var(--shadow-sm);
}

.architecture-thesis blockquote {
  max-width: 18ch;
  margin: var(--space-5) 0 0;
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 6vw, 6.2rem);
  line-height: 0.85;
  letter-spacing: -0.075em;
}

.architecture-contrast {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  margin: var(--space-10) 0;
}

@media (min-width: 900px) {
  .architecture-contrast {
    grid-template-columns: repeat(2, 1fr);
  }
}

.architecture-contrast article {
  min-height: 420px;
  padding: clamp(var(--space-6), 4vw, var(--space-9));
  border: 2px solid var(--color-ink);
  background: var(--color-bg);
}

.architecture-contrast__accent {
  background: var(--color-ink) !important;
  color: var(--color-bg);
}

.architecture-contrast h3 {
  max-width: 12ch;
  font-family: var(--font-display);
  font-size: clamp(2.3rem, 4.5vw, 5rem);
  line-height: 0.87;
  letter-spacing: -0.075em;
}

.architecture-contrast ul {
  display: grid;
  gap: var(--space-4);
  margin: var(--space-7) 0 0;
  padding: 0;
  list-style: none;
}

.architecture-contrast li {
  padding: var(--space-4);
  border-left: 4px solid var(--color-accent);
  background: rgba(14, 14, 12, 0.04);
  color: var(--color-text-muted);
  font-weight: 700;
  line-height: 1.55;
}

.architecture-contrast__accent li {
  background: rgba(246, 241, 228, 0.07);
  color: rgba(246, 241, 228, 0.78);
}

.architecture-layers {
  border-top-color: rgba(14, 14, 12, 0.24);
}

.architecture-layers .policy-use-cases__grid article {
  background:
    linear-gradient(180deg, rgba(246, 241, 228, 0.92), rgba(246, 241, 228, 0.74)),
    var(--color-bg);
}

.architecture-flywheel .equity-trap-feature__quote {
  background:
    linear-gradient(135deg, rgba(14, 14, 12, 0.96), rgba(14, 14, 12, 0.86)),
    var(--color-ink);
  color: var(--color-bg);
}

.architecture-flywheel .equity-trap-feature__quote span {
  color: var(--color-accent);
}

@media (max-width: 720px) {
  .architecture-hero {
    padding-top: 6.5rem;
  }

  .architecture-hero h1 {
    max-width: 100%;
    font-size: clamp(3.15rem, 13.2vw, 4.1rem);
    line-height: 0.84;
    letter-spacing: -0.075em;
  }

  .architecture-hero__visual {
    min-height: 560px;
  }

  .architecture-hero__visual figure {
    right: 0;
    top: 0;
    width: 80%;
  }

  .architecture-book-card {
    left: 0;
    right: 0;
    bottom: var(--space-4);
    width: auto;
  }

  .architecture-thesis blockquote {
    max-width: none;
  }
}
