/* ═══════════════════════════════════════════════════════════════
   TYPE.CSS — type overrides, loaded last on every page.
     h2, h3 Sora (section headlines and tile/card titles; h1 keeps
            the display face)
     body   Manrope (running text; the mock social feeds keep their
            own app-style font, set on their containers)
   ═══════════════════════════════════════════════════════════════ */
body { font-family: 'Manrope', system-ui, sans-serif !important; }
h2 { font-family: 'Sora', system-ui, sans-serif !important; font-weight: 800 !important; letter-spacing: -.01em !important; }
h3 { font-family: 'Sora', system-ui, sans-serif !important; font-weight: 700 !important; letter-spacing: -.01em !important; }

/* Pages that close with their own CTA skip the footer's repeat of it. */
.footer--no-cta .footer-manifesto { display: none; }
/* Headlines wrap to even lines instead of leaving one word stranded. */
h1, h2 { text-wrap: balance; }

/* Background glows: wider and dimmer than the per-page versions, so they
   read as a faint wash of colour rather than spots. One definition for
   every page (Studio keeps its glow switched off in about.css). */
body::before {
  background:
    radial-gradient(ellipse 110% 80% at -5% -10%, rgba(247,147,30,.075), transparent 70%),
    radial-gradient(ellipse 100% 80% at 105% 0%, rgba(233,30,99,.065), transparent 70%),
    radial-gradient(ellipse 120% 70% at 50% 115%, rgba(47,167,167,.06), transparent 70%),
    linear-gradient(180deg, rgba(6,7,9,.96) 0%, rgba(10,11,13,.95) 60%, rgba(4,6,10,.97) 100%) !important;
}

/* Numbered section label ("01 · Insights"): site-wide default for pages
   whose own stylesheet doesn't define it. :where() keeps it lowest priority. */
:where(.eyebrow-num) { display: flex; align-items: baseline; gap: .7rem; font-family: 'Space Mono', ui-monospace, monospace; margin-bottom: 1.2rem; }
:where(.eyebrow-num) em { font-style: normal; font-weight: 700; font-size: .95rem; color: #F7931E; }
:where(.eyebrow-num) span { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; color: rgba(243,236,223,.5); }

/* Display headlines: the base stylesheet tightens every h1 to -.05em, which
   makes Russo One letters touch (the E and T in "Let's talk"). Open them up
   a little everywhere; the home wordmark keeps its own spacing. */
h1:not(.hero-wordmark) { letter-spacing: .02em !important; }
