/* Professional styling for policy pages: privacy + terms */
.policy-page {
  background: #f3f6fb;
}

.policy-page .policy-container {
  padding: 120px 20px 64px;
}

.policy-page .hero {
  margin-top: 0;
  min-height: auto;
  display: block;
  background: transparent;
  overflow: visible;
}

.policy-page .hero::before {
  display: none;
}

.policy-page .hero-container {
  display: block;
  max-width: 920px;
  margin: 0 auto;
  padding: 0;
  background: #fff;
  border: 1px solid rgba(42, 89, 165, 0.12);
  border-radius: 20px;
  box-shadow: 0 14px 40px rgba(17, 24, 39, 0.08);
}

.policy-page .policy-content {
  padding: 36px 36px 28px;
  color: #4b5563;
  line-height: 1.85;
}

.policy-page h1 {
  margin: 16px 0 12px;
  font-size: clamp(1.8rem, 2.2vw, 2.4rem);
  line-height: 1.25;
  color: var(--dark);
}

.policy-page h2 {
  margin-top: 28px;
  margin-bottom: 8px;
  font-size: 1.2rem;
  color: var(--primary-dark);
}

.policy-page p {
  margin-bottom: 8px;
}

.policy-page .hero-badge {
  margin: 32px 36px 0;
}

.policy-page .policy-intro {
  font-size: 1.02rem;
}

@media (max-width: 768px) {
  .policy-page .policy-container {
    padding: 104px 14px 36px;
  }

  .policy-page .hero-badge {
    margin: 24px 20px 0;
  }

  .policy-page .policy-content {
    padding: 24px 20px 20px;
  }
}
