/* Shared blue/navy brand styling for the existing legal documents */
:root {
  --legal-blue: #3f639a;
  --legal-deep: #1d416f;
  --legal-ink: #172a43;
  --legal-muted: #61738b;
  --legal-wash: #f5f8fd;
}
html {
  scroll-behavior: smooth;
}
body {
  background: #f5f8fd !important;
  color: var(--legal-ink) !important;
  font-family: "Inter", system-ui, sans-serif !important;
}
.bg-purple-950 {
  background: #f5f8fd !important;
  color: var(--legal-ink) !important;
}
.bg-purple-900 {
  background: #edf3fb !important;
}
.bg-purple-800 {
  background: #e2ebf8 !important;
}
.text-white {
  color: var(--legal-ink) !important;
}
.text-purple-200 {
  color: #5d7089 !important;
}
.text-purple-300 {
  color: #667d9d !important;
}
.text-purple-400 {
  color: #496b9a !important;
}
.text-purple-500 {
  color: #3f639a !important;
}
.text-purple-950 {
  color: #fff !important;
}
.bg-purple-600 {
  background: #1d416f !important;
}
.bg-purple-600.text-white,
.bg-purple-500.text-white,
.nav-cta,
.btn-primary {
  color: #fff !important;
}
.bg-purple-500 {
  background: #3f639a !important;
}
.border-purple-500\/30,
.border-purple-500\/20 {
  border-color: #d8e4f3 !important;
}
.nav-blur {
  background: rgba(255, 255, 255, 0.92) !important;
  border-bottom: 1px solid #dee7f2 !important;
  backdrop-filter: blur(18px) !important;
}
.legal-content {
  max-width: 880px !important;
  background: #fff !important;
  border-radius: 22px !important;
  padding: clamp(22px, 4vw, 42px) !important;
  box-shadow: 0 20px 50px rgba(24, 55, 94, 0.08) !important;
  border: 1px solid #e0e8f2 !important;
}
.legal-content h1 {
  font-size: clamp(28px, 4vw, 38px) !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #1d416f !important;
  border-left: 4px solid #3f639a !important;
  padding-left: 16px !important;
}
.legal-content h2 {
  font-size: clamp(19px, 3vw, 24px) !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  color: #203955 !important;
  margin-top: 2rem !important;
}
.legal-content h3 {
  color: #2d4869 !important;
}
.legal-content p,
.legal-content li {
  color: #5e718a !important;
  line-height: 1.8 !important;
}
.legal-content a {
  color: #315f96 !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.legal-content .effective-date {
  background: #eaf1fb !important;
  color: #315f96 !important;
  border-radius: 999px !important;
}
.legal-content hr {
  background: #e0e8f2 !important;
}
.logo-img {
  width: 40px !important;
  height: 40px !important;
  object-fit: contain !important;
  background: #fff !important;
  border: 1px solid #e0e8f2 !important;
  border-radius: 50%;
  box-shadow: 0 4px 12px rgba(29, 65, 111, 0.08) !important;
  padding: 3px;
}
footer {
  background: #f7f9fc !important;
  border-top: 1px solid #e0e8f2 !important;
}
footer a {
  color: #3f639a !important;
}
footer a:hover {
  color: #1d416f !important;
}
.support-modal {
  background: #fff !important;
  color: #172a43 !important;
  border: 1px solid #dce5f1 !important;
  box-shadow: 0 25px 60px rgba(20, 48, 87, 0.2) !important;
}
.support-modal h2,
.support-modal h3 {
  color: #172a43 !important;
}
.support-modal p {
  color: #657791 !important;
}
.donation-card {
  background: #f6f9fd !important;
  border: 1px solid #dee7f1 !important;
  border-radius: 14px !important;
  color: #1d416f !important;
}
.donation-card h3 {
  color: #1d416f !important;
}
.crypto-card {
  background: #f7fafe !important;
  border: 1px solid #dee7f1 !important;
  color: #223a58 !important;
}
.crypto-card code {
  color: #2b4f7a !important;
  overflow-wrap: anywhere;
}
.copy-btn {
  background: #1d416f !important;
  color: #fff !important;
  border-radius: 8px !important;
}
@media (max-width: 640px) {
  .legal-content {
    padding: 20px !important;
    border-radius: 16px !important;
  }
  .legal-content h1 {
    font-size: 28px !important;
  }
  .legal-content h2 {
    font-size: 21px !important;
  }
}
