/* Terms & Conditions page */
main{ padding-top: 68px; }

.terms-section{ padding: clamp(28px,6vw,72px) 0; }

.terms-title{
  font-family: "Playfair Display", serif;
  font-size: clamp(26px,3.4vw,42px);
  margin: 0 0 12px 0;
  text-shadow: 0 2px 14px rgba(93,211,255,.15);
}

/* Required block highlight */
.required-clauses{
  border:1px solid rgba(255,255,255,.12);
  border-radius: calc(var(--radius) + 6px);
  background:
    radial-gradient(800px 260px at 50% -10%, rgba(138,255,193,.08), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  box-shadow: var(--shadow);
  padding: clamp(14px, 2.6vw, 20px);
  margin-bottom: clamp(16px, 3vw, 28px);
}
.required-clauses p{ margin: 10px 0; }
.required-clauses a{ color: var(--brand); text-decoration: none; }
.required-clauses a:hover{ text-decoration: underline; }

/* Body */
.terms-body{
  border:1px solid rgba(255,255,255,.08);
  border-radius: calc(var(--radius) + 4px);
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  box-shadow: var(--shadow);
  padding: clamp(14px, 2.6vw, 20px);
}
.terms-body h2{ margin: 10px 0 6px 0; font-size: clamp(18px,2.2vw,22px); }
.terms-body p{ margin: 8px 0; color: var(--muted); }

/* Accessibility helper */
.sr-only{
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}
