  /* ── Hero (Navy + Coral) ────────────────────────────────────── */
  /* Background + glows identical to the design template's hero section. */
  .hero {
    background: linear-gradient(180deg, #080C30 0%, #0E1240 60%, #141B4A 100%);
    color: var(--color-on-ink);
    position: relative; overflow: hidden;
  }
  .hero::before {
    content: ""; position: absolute; pointer-events: none;
    width: 1100px; height: 940px; left: -240px; top: -60px;
    border-radius: 50%; filter: blur(150px); opacity: 0.85; mix-blend-mode: screen;
    background:
      radial-gradient(closest-side at 30% 40%, #8FA0E0 0%, transparent 75%),
      radial-gradient(closest-side at 55% 60%, #E85D4A 0%, transparent 70%),
      radial-gradient(closest-side at 70% 35%, #F5C79A 0%, transparent 65%),
      radial-gradient(closest-side at 40% 80%, #C6A6E8 0%, transparent 65%);
  }
  .hero::after {
    content: ""; position: absolute; pointer-events: none;
    width: 820px; height: 720px; right: -160px; top: -40px;
    border-radius: 50%; filter: blur(150px); opacity: 0.7; mix-blend-mode: screen;
    background:
      radial-gradient(closest-side at 40% 50%, #E85D4A 0%, transparent 70%),
      radial-gradient(closest-side at 70% 30%, #F49AC3 0%, transparent 65%),
      radial-gradient(closest-side at 60% 70%, #F5C79A 0%, transparent 65%);
  }
  .hero .content {
    position: relative; z-index: 2;
    max-width: 1200px; margin: 0 auto;
    padding: 120px var(--space-3xl) 140px;
    display: grid; grid-template-columns: 1.3fr 1fr; gap: var(--space-6xl);
    align-items: center;
  }
  .hero .eyebrow { color: var(--color-coral-soft); margin-bottom: var(--space-xl); }
  .hero h1 {
    font-size: clamp(44px, 6.4vw, 76px);
    line-height: 1.04; letter-spacing: -0.03em;
    font-weight: var(--weight-semibold);
    margin: 0 0 var(--space-xl);
  }
  .hero h1 em { font-style: normal; color: var(--color-coral); }
  .hero .lead {
    font-size: 21px; line-height: 1.45; max-width: 620px;
    color: rgba(236, 233, 222, 0.82); margin: 0 0 var(--space-3xl);
  }
  .hero .ctas { display: flex; gap: var(--space-base); flex-wrap: wrap; }

  .hero-stats { display: flex; flex-direction: column; gap: var(--space-xl); }
  .hero-stat { border-top: 1px solid rgba(241, 154, 126, 0.35); padding-top: var(--space-lg); }
  .hero-stat .num {
    font-size: clamp(44px, 4.6vw, 64px); font-weight: var(--weight-bold);
    letter-spacing: -0.03em; line-height: 1;
    font-feature-settings: "tnum" 1, "lnum" 1;
  }
  .hero-stat .num sub { font-size: 0.56em; vertical-align: baseline; }
  .hero-stat .cap { font-size: var(--text-body-sm); color: var(--color-coral-soft); margin-top: var(--space-sm); }

  /* ── Trust marquee ──────────────────────────────────────────── */
  .trust {
    background: var(--color-ink-2); color: var(--color-on-ink);
    padding: var(--space-xl) 0 0;
    border-top: 1px solid rgba(236, 233, 222, 0.10);
    border-bottom: 1px solid rgba(236, 233, 222, 0.10);
  }
  .trust .label {
    font-size: 11px; letter-spacing: 0.28em; text-transform: uppercase;
    color: var(--color-bluex-soft); font-weight: var(--weight-semibold);
    margin-bottom: var(--space-base);
  }
  .trust .pathway-marquee { padding: var(--space-base) 0 var(--space-2xl); }
  /* Press logos are pre-processed to transparent, monochrome-white PNGs
     (assets/partners/mono/), trimmed + fit to a uniform box so they sit
     directly on the dark strip at an even visual size. */
  .trust .pathway-marquee__item {
    opacity: 0.78;
    transition: opacity var(--motion-fast, 160ms) ease, transform var(--motion-fast, 160ms) ease;
  }
  .trust .pathway-marquee__item img {
    display: block;
    height: auto; width: auto;
    max-height: 56px; max-width: 190px;
    object-fit: contain;
  }
  .trust a.pathway-marquee__item:hover,
  .trust a.pathway-marquee__item:focus-visible { opacity: 1; transform: translateY(-2px); }

  /* ── Pathway steps ──────────────────────────────────────────── */
  .steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-3xl); }
  .step {
    background: var(--color-bone);
    border: 1px solid var(--color-line);
    border-radius: var(--radius-xl);
    padding: var(--space-3xl) var(--space-2xl);
  }
  .step .num {
    font-family: var(--font-mono);
    font-size: var(--text-body-sm); letter-spacing: 0.2em;
    font-weight: var(--weight-semibold);
    color: var(--color-coral-deep); margin-bottom: var(--space-base);
  }
  .step h3 { font-size: var(--text-h3); font-weight: var(--weight-semibold); letter-spacing: -0.01em; margin: 0 0 var(--space-md); }
  .step p { font-size: 15px; color: rgba(14, 18, 64, 0.62); margin: 0; }
  .step .icon { width: 44px; height: 44px; margin-bottom: var(--space-lg); }
  .step .icon svg { width: 100%; height: 100%; stroke: var(--color-ink); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; fill: none; }

  /* ── EchoNext teaser ────────────────────────────────────────── */
  .product-teaser {
    display: grid; grid-template-columns: 1.1fr 1fr; gap: var(--space-5xl);
    align-items: center;
  }
  .product-teaser .report {
    background: var(--color-ink-2);
    border: 1px solid rgba(236, 233, 222, 0.08);
    border-radius: var(--radius-xl);
    padding: var(--space-2xl);
    color: var(--color-on-ink);
    box-shadow: var(--shadow-overlay);
  }
  .report .rep-head {
    display: flex; justify-content: space-between; align-items: baseline;
    border-bottom: 1px solid rgba(236, 233, 222, 0.12);
    padding-bottom: var(--space-base); margin-bottom: var(--space-lg);
  }
  .report .rep-head .id { font-family: var(--font-mono); font-size: 12px; color: rgba(236, 233, 222, 0.6); }
  .report .rep-title { font-weight: var(--weight-bold); font-size: 15px; letter-spacing: -0.01em; }
  .report .row {
    display: flex; justify-content: space-between; align-items: center;
    padding: var(--space-md) 0;
    border-bottom: 1px solid rgba(236, 233, 222, 0.07);
    font-size: var(--text-body-sm);
  }
  .report .row:last-child { border-bottom: none; }
  .report .row .name { color: rgba(236, 233, 222, 0.85); }
  .report .pill {
    font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase;
    font-weight: var(--weight-semibold);
    border-radius: var(--radius-full); padding: 3px 10px;
  }
  .pill-flag  { background: var(--color-coral); color: var(--color-on-coral); }
  .pill-clear { background: rgba(236, 233, 222, 0.12); color: rgba(236, 233, 222, 0.8); }

  /* ── News strip ─────────────────────────────────────────────── */
  .news-head {
    display: flex; align-items: flex-end; justify-content: space-between;
    flex-wrap: wrap; gap: var(--space-base); margin-bottom: var(--space-3xl);
  }
  #homepage-news-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: var(--space-xl);
  }
  .news-card {
    display: flex; flex-direction: column; gap: var(--space-sm);
    background: var(--color-bone);
    border: 1px solid var(--color-line);
    border-radius: var(--radius-lg);
    padding: var(--space-xl);
  }
  .news-card .cat {
    font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase;
    color: var(--color-coral-deep); font-weight: var(--weight-semibold);
  }
  .news-card h3 { margin: 0; font-size: 18px; font-weight: var(--weight-semibold); letter-spacing: -0.01em; line-height: 1.3; }
  .news-card p { margin: 0; font-size: var(--text-body-sm); color: rgba(14, 18, 64, 0.62); line-height: 1.5; }
  .news-card .date { margin-top: auto; font-size: var(--text-eyebrow); color: rgba(14, 18, 64, 0.55); }

  /* ── CTA card ───────────────────────────────────────────────── */
  .cta-card {
    background: linear-gradient(135deg, var(--color-ink) 0%, var(--color-ink-2) 55%, var(--color-coral) 165%);
    color: var(--color-on-ink);
    padding: var(--space-6xl) var(--space-5xl);
    border-radius: 20px;
    display: flex; align-items: center; justify-content: space-between; gap: var(--space-3xl);
  }
  .cta-card h2 { color: var(--color-on-ink); margin: 0; }
  .cta-card .right { display: flex; gap: var(--space-md); flex-wrap: wrap; }
  .cta-card .right .btn { font-size: 16px; padding: 16px var(--space-2xl); }

  @media (max-width: 920px) {
    .hero .content { grid-template-columns: 1fr; padding: 72px var(--space-xl) 88px; gap: var(--space-4xl); }
    .steps, .product-teaser { grid-template-columns: 1fr; }
    .cta-card { flex-direction: column; align-items: flex-start; padding: var(--space-4xl) var(--space-2xl); }
  }

  /* ── Aurora dark sections (template-matched background) ─────────
     Applied to formerly-light sections (Pathway, Evidence, CTA) so the
     page reads as one dark surface with colorful blurred glows.
     EchoNext + Newsroom are intentionally excluded. */
  .block.aurora {
    background: linear-gradient(180deg, #080C30 0%, #0E1240 60%, #141B4A 100%);
    color: var(--color-on-ink);
    position: relative; overflow: hidden;
  }
  .block.aurora > .container { position: relative; z-index: 2; }
  .block.aurora .lead { color: rgba(236, 233, 222, 0.75); }
  .block.aurora::before {
    content: ""; position: absolute; pointer-events: none;
    width: 1100px; height: 940px; left: -240px; top: -60px;
    border-radius: 50%; filter: blur(150px); opacity: 0.85; mix-blend-mode: screen;
    background:
      radial-gradient(closest-side at 30% 40%, #8FA0E0 0%, transparent 75%),
      radial-gradient(closest-side at 55% 60%, #E85D4A 0%, transparent 70%),
      radial-gradient(closest-side at 70% 35%, #F5C79A 0%, transparent 65%),
      radial-gradient(closest-side at 40% 80%, #C6A6E8 0%, transparent 65%);
  }
  .block.aurora::after {
    content: ""; position: absolute; pointer-events: none;
    width: 820px; height: 720px; right: -160px; top: -40px;
    border-radius: 50%; filter: blur(150px); opacity: 0.7; mix-blend-mode: screen;
    background:
      radial-gradient(closest-side at 40% 50%, #E85D4A 0%, transparent 70%),
      radial-gradient(closest-side at 70% 30%, #F49AC3 0%, transparent 65%),
      radial-gradient(closest-side at 60% 70%, #F5C79A 0%, transparent 65%);
  }
  /* Pathway step cards re-skinned for the dark aurora surface */
  .block.aurora .step {
    background: rgba(26, 32, 80, 0.35);
    border-color: rgba(143, 160, 224, 0.18);
  }
  .block.aurora .step p { color: rgba(236, 233, 222, 0.70); }
  .block.aurora .step .num { color: var(--color-coral-soft); }
  .block.aurora .step .icon svg { stroke: var(--color-coral-soft); }

  /* ── EchoNext pipeline section (light, template-matched) ────────── */
  .echonext-pipeline { background: var(--color-bone-2); position: relative; overflow: hidden; }
  .en-accent { color: var(--color-coral); }
  .en-grid {
    display: grid; grid-template-columns: 1.1fr 1fr; gap: var(--space-6xl);
    align-items: center; margin-top: var(--space-4xl);
  }
  .en-pipeline {
    display: grid; gap: var(--space-lg);
    padding: var(--space-3xl); border-radius: 24px;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(14, 18, 64, 0.08);
  }
  .en-step { display: grid; grid-template-columns: 44px 1fr; gap: var(--space-lg); align-items: center; }
  .en-ix {
    width: 36px; height: 36px; border-radius: 50%;
    display: grid; place-items: center;
    font-family: var(--font-mono); font-size: 12px; font-weight: var(--weight-semibold);
    color: var(--color-on-ink);
    background: linear-gradient(135deg, #4A5AA3, #8B6FC1 55%, #E85D4A);
  }
  .en-ix.soft { background: linear-gradient(135deg, #E85D4A, #F19A7E); }
  .en-ix.blue { background: linear-gradient(135deg, #4A5AA3, #8FA0E0); }
  .en-step h4 { font-size: 16px; font-weight: var(--weight-semibold); margin: 0 0 3px; letter-spacing: -0.01em; }
  .en-step p { margin: 0; font-size: 14px; color: #4A516A; }
  .en-bar { height: 1px; margin-left: 54px; background: linear-gradient(90deg, rgba(14, 18, 64, 0.15), transparent); }
  .en-features { display: grid; gap: var(--space-xl); }
  .en-feature { display: grid; grid-template-columns: 28px 1fr; gap: var(--space-base); }
  .en-tick {
    width: 20px; height: 20px; border-radius: 50%; background: var(--color-success);
    display: grid; place-items: center; color: var(--color-on-success);
    font-size: 12px; font-weight: var(--weight-bold); margin-top: 3px;
  }
  .en-feature h4 { font-size: 17px; margin: 0 0 4px; font-weight: var(--weight-semibold); letter-spacing: -0.01em; }
  .en-feature p { font-size: 15px; margin: 0; color: #4A516A; line-height: 1.55; }

  .en-detect { margin-top: var(--space-5xl); }
  .en-detect h3 { font-size: var(--text-h3); font-weight: var(--weight-semibold); letter-spacing: -0.01em; margin: 0 0 var(--space-lg); }
  .en-conditions { display: flex; flex-wrap: wrap; gap: var(--space-sm); }
  .en-cond {
    font-size: 14px; color: var(--color-ink); line-height: 1.3;
    background: #fff; border: 1px solid rgba(14, 18, 64, 0.12);
    border-radius: var(--radius-full); padding: 9px 16px;
  }
  .en-figure {
    margin-top: var(--space-4xl); border: 1px solid rgba(14, 18, 64, 0.12);
    border-radius: 20px; background: rgba(255, 255, 255, 0.6);
    min-height: 320px; display: grid; place-items: center; overflow: hidden;
    color: rgba(14, 18, 64, 0.5); font-size: 14px; text-align: center; padding: var(--space-2xl);
  }
  .en-figure img { width: 100%; height: 100%; object-fit: contain; display: block; }
  .en-figure code { font-family: var(--font-mono); font-size: 13px; }

  /* Evidence findings (study results) */
  .ev-findings {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-xl);
    margin: var(--space-xl) 0 var(--space-4xl);
  }
  .ev-finding {
    padding: var(--space-2xl); border: 1px solid rgba(143, 160, 224, 0.18);
    border-radius: 16px; background: rgba(26, 32, 80, 0.30);
  }
  .ev-finding .fn { font-size: clamp(34px, 4vw, 46px); font-weight: var(--weight-bold); letter-spacing: -0.02em; line-height: 1; color: var(--color-on-ink); }
  .ev-finding .fn-vs { font-size: 0.5em; font-weight: var(--weight-semibold); color: var(--color-coral-soft); letter-spacing: 0; }
  .ev-finding .fl { font-size: 14px; color: rgba(236, 233, 222, 0.72); margin-top: var(--space-md); line-height: 1.5; }

  /* ── Evidence (quote + papers, template-matched, dark) ──────────── */
  .ev-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-5xl);
    align-items: center; margin-top: var(--space-4xl);
  }
  .ev-quote {
    padding: var(--space-4xl); border: 1px solid rgba(143, 160, 224, 0.18);
    border-radius: 24px; position: relative;
    background: linear-gradient(160deg, rgba(232, 93, 74, 0.10), rgba(139, 111, 193, 0.07) 60%, transparent);
  }
  .ev-quote::before {
    content: "\201C"; position: absolute; top: 6px; left: 24px;
    font-size: 120px; color: var(--color-coral); line-height: 1; opacity: 0.4;
    font-family: Georgia, serif;
  }
  .ev-quote p {
    font-size: 22px; line-height: 1.5; color: var(--color-on-ink);
    margin: var(--space-2xl) 0; font-weight: var(--weight-medium); letter-spacing: -0.005em;
  }
  .ev-src { display: flex; align-items: center; gap: var(--space-base); }
  .ev-mark { width: 40px; height: 40px; border-radius: 50%; flex: 0 0 auto; background: linear-gradient(135deg, #1A2050, #6E5AA8 55%, #E85D4A); }
  .ev-src strong { display: block; font-weight: var(--weight-semibold); font-size: 15px; color: var(--color-on-ink); }
  .ev-src span { font-size: 13px; color: var(--color-bluex-soft); }
  .ev-papers { display: grid; gap: var(--space-lg); }
  .ev-paper {
    padding: var(--space-xl) var(--space-2xl); border: 1px solid rgba(143, 160, 224, 0.18);
    border-radius: 16px; background: rgba(26, 32, 80, 0.30);
    display: grid; grid-template-columns: 1fr auto; gap: var(--space-xl); align-items: center;
    transition: border-color var(--motion-base) ease;
  }
  .ev-paper:hover { border-color: rgba(232, 93, 74, 0.4); }
  .ev-paper .meta { font-size: 12px; color: var(--color-bluex-soft); letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 4px; }
  .ev-paper h4 { font-size: 16px; margin: 0; font-weight: var(--weight-semibold); letter-spacing: -0.005em; color: var(--color-on-ink); }
  .ev-paper .journal { font-size: 13px; color: var(--color-coral-soft); font-weight: var(--weight-medium); white-space: nowrap; }

  @media (max-width: 920px) {
    .en-grid, .ev-grid { grid-template-columns: 1fr; gap: var(--space-3xl); }
    .ev-findings { grid-template-columns: 1fr; }
  }

  @media (max-width: 700px) {
    .ev-paper {
      grid-template-columns: 1fr;
      gap: var(--space-md);
    }
    .ev-paper .journal {
      white-space: normal;
    }
  }

  /* ── Migrated inline styles ─────────────────────────────────── */
  .s1 { font-weight: 600; }
  .s2 { margin-top: var(--space-2xl); }
  .s3 { margin: 0; }
  .s4 { margin-bottom: var(--space-base); }
  .s5 { font-size: clamp(28px, 3.6vw, 44px); }
  .s6 { width: 28px; height: 28px; }
