/* =============================================
   PRIVACY POLICY — page-specific styles
   Long-form legal text. Centered reading column,
   generous line-height, subtle section breaks.
   Reuses tokens + .gradient-orb / .section-badge /
   .footer from landing.css. All net-new rules
   scoped under .privacy-page (mirrors .contact-page).
   ============================================= */

.privacy-page {
  max-width: 100vw;
  padding-top: calc(72px + var(--space-3xl));
  padding-bottom: var(--space-3xl);

  /* Hero — title, version, effective date */
  .privacy-hero {
    max-width: 760px;
    margin: 0 auto var(--space-3xl);
    padding: 0 var(--section-pad);
    text-align: center;

    h1 {
      font-family: var(--font-heading);
      font-size: clamp(2rem, 4vw, 3rem);
      font-weight: var(--fw-bold);
      letter-spacing: -0.02em;
      margin: var(--space-md) 0 var(--space-md);
    }
  }

  .privacy-meta {
    color: var(--text-tertiary);
    font-size: 0.92rem;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;

    strong {
      color: var(--text-secondary);
      font-weight: var(--fw-semibold);
    }
  }

  .privacy-meta-divider {
    color: var(--text-tertiary);
    opacity: 0.5;
  }

  /* Content column — readable width */
  .privacy-content {
    max-width: 760px;
    margin: 0 auto;
    padding: 0 var(--section-pad);
  }

  .privacy-section {
    background: var(--surface-strong);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: var(--space-2xl);
    margin-bottom: var(--space-lg);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);

    h2 {
      font-family: var(--font-heading);
      font-size: 1.25rem;
      font-weight: var(--fw-semibold);
      color: var(--text-primary);
      letter-spacing: -0.01em;
      margin: 0 0 var(--space-md);
      padding-bottom: var(--space-sm);
      border-bottom: 1px solid var(--border-subtle);
    }

    h3 {
      font-family: var(--font-heading);
      font-size: 1rem;
      font-weight: var(--fw-semibold);
      color: var(--text-primary);
      letter-spacing: -0.005em;
      margin: var(--space-lg) 0 var(--space-sm);
    }

    p {
      color: var(--text-secondary);
      font-size: 0.97rem;
      line-height: 1.65;
      margin: 0 0 var(--space-md);

      &:last-child {
        margin-bottom: 0;
      }
    }

    ul {
      color: var(--text-secondary);
      font-size: 0.97rem;
      line-height: 1.6;
      margin: 0 0 var(--space-md);
      padding-left: var(--space-lg);

      ul {
        margin: 0.4rem 0 0.4rem;
      }
    }

    li {
      margin-bottom: 0.45rem;

      &:last-child {
        margin-bottom: 0;
      }
    }

    strong {
      color: var(--text-primary);
      font-weight: var(--fw-semibold);
    }

    em {
      color: var(--text-tertiary);
      font-style: italic;
    }

    a {
      color: var(--accent-primary);
      text-decoration: underline;
      text-decoration-thickness: 1px;
      text-underline-offset: 2px;
      transition: color 0.15s ease;

      &:hover {
        color: oklch(from var(--accent-primary) calc(l + 0.08) c h);
      }
    }
  }

  .privacy-contact {
    font-size: 0.97rem;
    line-height: 1.9;
    color: var(--text-primary);

    strong {
      font-family: var(--font-heading);
      font-size: 1.05rem;
    }
  }

  /* Footer overrides — keep some breathing room above */
  .footer {
    border-top: 1px solid var(--border-subtle);
    padding-top: var(--space-2xl);
  }

  /* Responsive */
  @media (max-width: 640px) {
    .privacy-section {
      padding: var(--space-xl) var(--space-lg);
    }

    .privacy-meta {
      flex-direction: column;
      gap: 0.2rem;
    }

    .privacy-meta-divider {
      display: none;
    }
  }
}
