.refund-policy {
  width: 100%;
  max-width: 900px;
  margin: 32px auto;
  padding: clamp(20px, 4vw, 56px);
  overflow-wrap: anywhere;
  color: var(--text);
  font-family: var(--font-sans);
  line-height: 1.7;
}

.refund-policy h1,
.refund-policy h2,
.refund-policy h3 {
  color: var(--text);
  line-height: 1.3;
}

.refund-policy h1 {
  margin-bottom: 8px;
  font-family: var(--font-serif);
  font-size: 34px;
  font-weight: 400;
}

.refund-policy h2 {
  margin: 36px 0 12px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
  font-size: 21px;
  font-weight: 600;
}

.refund-policy h3 {
  margin: 24px 0 8px;
  font-size: 17px;
  font-weight: 600;
}

.refund-policy p,
.refund-policy li {
  color: var(--text2);
  font-size: 15px;
}

.refund-policy p { margin: 0 0 16px; }
.refund-policy .updated { color: var(--text2); font-size: 13px; }
.refund-policy ul { margin: 0 0 18px; padding-left: 24px; }
.refund-policy li { margin: 5px 0; padding-left: 4px; }
.refund-policy li::marker { color: var(--accent); }
.refund-policy a { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.refund-policy a:hover { color: var(--text); }
.refund-policy strong { color: var(--text); font-weight: 600; }

@media (max-width: 600px) {
  .refund-policy { margin: 16px auto; padding: 20px 16px; }
  .refund-policy h1 { font-size: 29px; }
  .refund-policy h2 { margin-top: 30px; font-size: 19px; }
}