/* Resend-style layer (#632) for every page except the homepage, which carries
   its own copy inline. Linked after each page's inline <style>, so it wins at
   equal specificity: black, Libre Caslon Display headlines, Inter text,
   rounded surfaces. */
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 100 900; font-display: swap; src: url('/fonts/inter-latin.woff2') format('woff2'); }
@font-face { font-family: 'Libre Caslon Display'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/libre-caslon-display-latin.woff2') format('woff2'); }

:root {
  --black: #000000; --black-2: #050505; --black-3: #0A0A0A; --black-4: #111111;
  --black-5: rgba(255,255,255,0.08); --black-6: rgba(255,255,255,0.12); --gray-dark: #2a2a2a; --gray-mid: #555;
  --gray: #8a8a8a; --gray-light: #a1a1a1; --gray-lighter: #c8c8c8; --white: #ededed;
  --white-pure: #ffffff; --accent: #ededed; --accent-dim: #d4d4d4;
  --accent-glow: rgba(255,255,255,0.04); --wheat: #a1a1a1; --health: #3fb98a;
  --serif: 'Libre Caslon Display', Georgia, serif;
  --sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --mono: 'JetBrains Mono', ui-monospace, monospace;
  --radius: 14px;
}
body { background: #000; }

nav { background: rgba(0,0,0,0.72); border-bottom: 1px solid var(--black-5); padding: 1.1rem 2rem; }
.logo { font-family: var(--sans); font-weight: 600; font-size: 1rem; letter-spacing: -0.01em; text-transform: none; }
.logo span { color: var(--gray-light); }
.nav-link { font-family: var(--sans); font-size: 0.875rem; letter-spacing: 0; text-transform: none; color: var(--gray-light); }
.nav-cta, .mobile-menu .mm-cta { font-family: var(--sans); font-size: 0.875rem; letter-spacing: 0; text-transform: none; font-weight: 500; background: #161616; color: var(--white-pure); border: 1px solid var(--black-6); border-radius: 10px; padding: 0.55rem 1.1rem; }
.nav-cta:hover { background: #1f1f1f; }
.mobile-menu a { font-family: var(--sans); font-size: 1.15rem; }
.hamburger { border-radius: 10px; border-color: var(--black-6); }
.breadcrumb a, .breadcrumb span { font-family: var(--sans); letter-spacing: 0; text-transform: none; font-size: 0.8rem; }

h1, h2 { font-family: var(--serif); font-weight: 400; background: linear-gradient(180deg, #ffffff 35%, #8f8f8f 115%); -webkit-background-clip: text; background-clip: text; color: transparent; padding-bottom: 0.08em; }
h1 em, h2 em { font-style: normal; color: inherit; }
h3 { font-family: var(--sans); font-weight: 600; letter-spacing: -0.01em; }

.btn, button[type="submit"] { font-family: var(--sans); letter-spacing: 0; text-transform: none; font-weight: 500; border-radius: 12px; }
.btn-primary { background: #ffffff; color: #000; border-color: #ffffff; }
.btn-primary:hover { background: #e5e5e5; border-color: #e5e5e5; }
input, textarea, select { border-radius: 10px; }

pre { border-radius: 10px; }
blockquote, .callout, .highlight-box, .disclaimer-inner, .team-card { border-radius: var(--radius); }

footer { border-top: 1px solid var(--black-5); }
footer .mono { font-family: var(--sans); letter-spacing: 0; text-transform: none; font-size: 0.8rem; }
footer .ai-disclosure { font-family: var(--sans); letter-spacing: 0; font-size: 0.72rem; color: var(--gray); }

/* Small labels: Inter in sentence case, as on the homepage, instead of spaced
   uppercase mono. Code stays mono. */
.section-label, .persona-label, .persona-meta, .tag, .pill, .page-header .last-updated, .data-table th, th,
aside .grp, .variant-widget label, .team-card h4, .related-section h3, .related-meta, .related h3,
.privacy-content h4, .pipeline-step h4, .credential-badge, .author-subtitle, .author-links a, .author-label,
.articles-heading, .article-meta span, .article-meta .author-title, .article-meta .author-name, .article-list-meta,
.inline-cta button, .inline-cta .social-proof, .inline-cta .cta-report-link, .inline-cta .cta-divider,
.final-form button, .final-cta .social-proof, .final-cta .cta-report-link, .final-cta .cta-divider,
.cta-form button, .cta-btn, .form-success, .ai-disclosure {
  font-family: var(--sans); letter-spacing: 0; text-transform: none; font-size: 0.8rem;
}
.tag, .pill, .credential-badge { border-radius: 999px; }
.inline-cta button, .final-form button, .cta-form button, .cta-btn { border-radius: 12px; font-size: 0.9rem; font-weight: 500; }
.blog-hero .label, .featured-badge, .hero-badge, .hero-badge p, .cta-badge, .cta-badge p, .section-num, .ticker, .desk-link {
  font-family: var(--sans); letter-spacing: 0; text-transform: none; font-size: 0.8rem;
}
.featured-badge { border-radius: 999px; }
.desk-link { font-size: 0.875rem; }
/* Page styles give some heading accents higher specificity (".hero h1 em"). */
h1 em, h2 em { font-style: normal !important; color: inherit !important; }
nav .nav-cta, .nav-links a.nav-cta { font-family: var(--sans); font-size: 0.875rem; letter-spacing: 0; text-transform: none; font-weight: 500; background: #161616; color: var(--white-pure); border: 1px solid var(--black-6); border-radius: 10px; padding: 0.55rem 1.1rem; }
