/* Site-wide article and legal page redesign */
.content-page {
  --bg-body: #fbfcfb;
  --bg-surface: #f4fbfb;
  --bg-surface-highlight: #ffffff;
  --text-primary: #121821;
  --text-secondary: #4f5d6b;
  --text-muted: #687584;
  --primary: #1267d8;
  --primary-hover: #0d55ba;
  --accent: #0f8f8b;
  --border: #dfe7ea;
  --border-light: #cfdbe0;
  --primary-glow: rgba(18, 103, 216, 0.16);
  --accent-glow: rgba(15, 143, 139, 0.14);
  --shadow-glow: 0 14px 36px rgba(18, 103, 216, 0.14);
  background: #fbfcfb;
  background-image: none;
  color: var(--text-primary);
}

.content-page .site-header {
  position: sticky;
  background: rgba(251, 252, 251, 0.92);
  border-bottom: 1px solid rgba(223, 231, 234, 0.86);
  backdrop-filter: blur(18px);
  box-shadow: 0 10px 34px rgba(20, 35, 55, 0.05);
}

.content-page .logo {
  color: var(--text-primary);
  letter-spacing: 0;
}

.content-page .main-nav a {
  color: var(--text-secondary);
  font-weight: 700;
}

.content-page .main-nav a:hover,
.content-page .main-nav a[aria-current="page"] {
  color: var(--accent);
}

.content-page h1,
.content-page h2,
.content-page h3,
.content-page h4 {
  color: var(--text-primary);
  letter-spacing: 0;
  background: none;
  -webkit-text-fill-color: currentColor;
}

.content-page h1 {
  font-size: clamp(2.55rem, 5.4vw, 4.9rem);
  line-height: 1;
}

.content-page h2 {
  margin-top: 2.6rem;
  font-size: clamp(1.7rem, 3vw, 2.55rem);
}

.content-page p,
.content-page li {
  color: var(--text-secondary);
}

.content-page a {
  color: var(--primary);
}

.content-page .btn,
.content-page .cta-button,
.content-page .banner-cta {
  border-radius: 6px;
  background: var(--primary);
  color: #ffffff;
  box-shadow: none;
}

.content-page .btn:hover,
.content-page .cta-button:hover,
.content-page .banner-cta:hover {
  background: var(--primary-hover);
  color: #ffffff;
  box-shadow: var(--shadow-glow);
}

.content-page .cta-secondary {
  color: var(--primary);
  background: transparent;
  box-shadow: none;
}

.content-page .long-form {
  padding-top: calc(var(--space-xl) + 3rem);
  padding-bottom: clamp(4rem, 8vw, 7rem);
}

.content-page .article-shell,
.content-page .long-form.container,
.content-page .legal-content {
  max-width: 58rem;
}

.content-page .article-masthead {
  border-bottom: 1px solid var(--border);
}

.content-page .hero-brand {
  color: var(--accent);
}

.content-page .eyebrow,
.content-page .article-meta-badge,
.content-page .article-toc-title,
.content-page .onboarding-stage-label {
  color: var(--accent);
  letter-spacing: 0.08em;
}

.content-page .article-meta {
  color: var(--text-muted);
}

.content-page .article-meta-badge {
  background: #e4f6f4;
}

.content-page .lead {
  color: #3d4a57;
  font-size: clamp(1.12rem, 2vw, 1.35rem);
}

.content-page .card,
.content-page .cta-box,
.content-page .article-action-box,
.content-page .article-toc,
.content-page .editorial-note,
.content-page .notice-card,
.content-page .evidence-card,
.content-page .symptom-card,
.content-page .faq-item {
  border-color: var(--border);
  background: #ffffff;
  box-shadow: 0 14px 38px rgba(20, 35, 55, 0.06);
}

.content-page .article-action-box,
.content-page .cta-box {
  border-left: 4px solid var(--accent);
}

.content-page .article-summary-list li,
.content-page .source-list li,
.content-page article ul li,
.content-page article ol li {
  margin-bottom: 0.65rem;
}

.content-page .hero-inline-proof span,
.content-page .proof-badge,
.content-page .trust-badge {
  border-color: #cfe5e3;
  background: #eaf8f7;
  color: var(--text-primary);
}

.content-page .sticky-download-banner {
  background: #ffffff;
  border-top-color: var(--border);
  box-shadow: 0 -10px 28px rgba(20, 35, 55, 0.1);
}

.content-page .sticky-download-banner .banner-text,
.content-page .site-footer p,
.content-page .legal-row {
  color: var(--text-muted);
}

.content-page .sticky-download-banner .banner-text strong,
.content-page .site-footer h3,
.content-page .site-footer h4 {
  color: var(--text-primary);
}

.content-page .site-footer {
  margin-top: 0;
  background: #ffffff;
  border-top-color: var(--border);
}

.content-page .footer-links a,
.content-page .legal-links a,
.content-page .link-button {
  color: var(--text-muted);
}

.content-page .footer-links a:hover,
.content-page .legal-links a:hover,
.content-page .link-button:hover {
  color: var(--primary);
}

.content-page .cookie-banner,
.content-page .cookie-modal__dialog {
  background: #ffffff;
  border-color: var(--border);
}

@media (max-width: 768px) {
  .content-page .long-form {
    padding-top: 2.5rem;
  }

  .content-page h1 {
    font-size: clamp(2.25rem, 11vw, 3.15rem);
  }

  .content-page .header-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .content-page .header-content,
  .content-page .main-nav,
  .content-page .legal-row,
  .content-page .legal-links {
    max-width: 100%;
    min-width: 0;
  }

  .content-page .main-nav,
  .content-page .legal-links {
    overflow-wrap: anywhere;
  }

  .content-page .long-form,
  .content-page .legal-content {
    overflow-wrap: anywhere;
  }
}
