/* ========== LEGAL PAGES STYLES ========== */

/* Hero Section */
.legal-hero {
  min-height: 40vh;
  background: var(--color-navy-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: var(--space-xl) var(--space-md);
}

.legal-hero h1 {
  color: var(--color-white);
  font-size: clamp(2.5rem, 6vw, 4rem);
  margin: 0;
  line-height: 1.2;
}

.legal-hero__subtitle {
  color: var(--color-gold);
  font-family: var(--font-accent);
  font-size: var(--text-lg);
  margin-top: var(--space-sm);
}

/* Content Section */
.legal-content {
  padding: var(--space-xl) var(--space-md);
}

.legal-content h2 {
  color: var(--color-navy);
  margin-top: var(--space-lg);
  margin-bottom: var(--space-sm);
  font-size: var(--text-2xl);
  padding-bottom: 0.5rem;
  border-bottom: 2px solid rgba(196, 164, 105, 0.2);
}

.legal-content h2:first-child {
  margin-top: 0;
}

.legal-content p {
  font-size: var(--text-lg);
  line-height: var(--leading-relaxed);
  color: var(--color-text-secondary);
  margin-bottom: var(--space-sm);
}

.legal-content a {
  color: var(--color-gold);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 0.3s ease;
}

.legal-content a:hover {
  border-bottom-color: var(--color-gold);
}

/* --- Lists -------------------------------------------------------------
   base.css applies `ul, ol { list-style: none }` as a global reset, so lists
   inside legal copy lost their bullets and fell back to default type sizing,
   making them read as cramped unstyled lines beside the surrounding
   paragraphs. Restored here to match .legal-content p exactly.
   Added 2026-08-05. */
.legal-content ul,
.legal-content ol {
  list-style: disc outside;
  padding-left: 1.6rem;
  margin: 0 0 var(--space-sm);
}

.legal-content ol {
  list-style: decimal outside;
}

.legal-content li {
  font-size: var(--text-lg);
  line-height: var(--leading-relaxed);
  color: var(--color-text-secondary);
  margin-bottom: 0.6rem;
  padding-left: 0.25rem;
}

.legal-content li:last-child {
  margin-bottom: 0;
}

.legal-content li::marker {
  color: var(--color-gold);
}

.legal-content li strong {
  color: var(--color-navy);
}

/* Placeholder Notice */
.placeholder-notice {
  background: rgba(196, 164, 105, 0.08);
  border-left: 4px solid var(--color-gold);
  padding: 1rem 1.25rem;
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  color: rgba(15, 27, 51, 0.6);
  font-style: italic;
  font-size: var(--text-sm);
  margin-bottom: var(--space-md);
}

.placeholder-notice p {
  margin: 0;
  color: rgba(15, 27, 51, 0.6);
}

/* Disclaimer Highlight */
.disclaimer-highlight {
  background: rgba(15, 27, 51, 0.03);
  border: 1px solid rgba(15, 27, 51, 0.08);
  border-radius: var(--radius-lg);
  padding: var(--space-md);
  margin-bottom: var(--space-md);
}

.disclaimer-highlight p {
  font-size: var(--text-xl);
  line-height: var(--leading-relaxed);
  color: var(--color-navy);
  font-weight: 500;
  margin: 0 0 var(--space-sm) 0;
}

.disclaimer-highlight p:last-child {
  margin-bottom: 0;
}

/* Footer Legal Links */
.footer__legal {
  text-align: center;
  margin-top: var(--space-lg);
  padding-top: var(--space-lg);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: var(--text-sm);
}

.footer__legal a {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer__legal a:hover {
  color: var(--color-gold);
}

/* Responsive */
@media (max-width: 768px) {
  .legal-hero {
    min-height: 35vh;
    padding: var(--space-lg) var(--space-md);
  }

  .legal-hero h1 {
    font-size: clamp(2rem, 5vw, 2.5rem);
  }

  .legal-hero__subtitle {
    font-size: var(--text-base);
  }

  .legal-content {
    padding: var(--space-lg) var(--space-md);
  }

  .legal-content h2 {
    font-size: var(--text-xl);
    margin-top: var(--space-md);
  }

  .legal-content p {
    font-size: var(--text-base);
  }

  .legal-content li {
    font-size: var(--text-base);
  }

  .disclaimer-highlight p {
    font-size: var(--text-lg);
  }
}
