/* Page: Terms & Conditions */

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

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

.terms-hero::before,
.terms-required::before,
.terms-details::before,
.terms-closing::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%);
}

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

.terms-required h2,
.terms-details h2,
.terms-closing h2{
  margin: 0 0 8px 0;
}

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

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

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

.terms-details strong,
.terms-closing strong{
  color: #dfe9ff;
  font-weight: 700;
}

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

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