/* Page: Privacy Policy */

.policy-title{
  text-align:center;
  padding-top: clamp(68px, 10vw, 96px); /* gives room under fixed header */
  margin: 0;
}

.policy-hero,
.policy-required,
.policy-details,
.policy-contact{
  padding: clamp(24px,5vw,56px) 0;
  position: relative;
}

.policy-hero::before,
.policy-required::before,
.policy-details::before,
.policy-contact::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(900px 360px at 12% 18%, rgba(86,240,255,.08), transparent 60%),
    radial-gradient(900px 360px at 88% 82%, rgba(127,91,255,.08), transparent 60%);
}

.policy-narrow{
  max-width: 860px;
}

.policy-required h2,
.policy-details h2,
.policy-contact h2{
  margin: 0 0 8px 0;
}

.policy-required h3{
  margin: 18px 0 6px;
}

.lead{
  color: var(--qc-dim);
}

.meta{
  color: var(--qc-dim);
  font-size: .95rem;
}

.policy-required p,
.policy-details p,
.policy-contact p{
  line-height: 1.7;
  margin: 8px 0;
}

.policy-details strong,
.policy-contact strong{
  color: #dfe9ff;
  font-weight: 700;
}

/* links */
.policy-required a,
.policy-contact a{
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* small screens readability */
@media (max-width: 640px){
  .policy-title{ padding-top: 64px; }
  .policy-narrow{ padding: 0 6px; }
}
