.billing-cost { margin-top: 32px; padding: clamp(20px, 4vw, 36px); scroll-margin-top: 120px; }
.billing-cost-intro { max-width: 68ch; margin-bottom: 24px; }
.billing-cost-intro p { margin-top: 12px; }
.billing-cost-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; align-items: start; }
.billing-cost fieldset { min-width: 0; border: 0; padding: 0; margin: 0; }
.billing-cost legend { font-family: var(--ff-head); font-weight: 700; margin-bottom: 18px; }
.billing-cost .form-note { margin-top: 7px; }
.billing-cost-result { padding: 24px; border-radius: var(--r-sm); background: var(--brand-50); border: 1px solid var(--brand-100); overflow-wrap: anywhere; }
.billing-cost-result h3 { margin-bottom: 14px; }
.billing-cost-result dl { margin: 0; }
.billing-cost-result dt { margin-top: 16px; font-size: .9rem; color: var(--muted); }
.billing-cost-result dd { margin: 4px 0 0; font-family: var(--ff-head); font-size: 1.2rem; font-weight: 700; color: var(--ink); }
.billing-cost-result .billing-cost-total { font-size: clamp(1.5rem, 4vw, 2rem); color: var(--brand-700); }
.billing-cost-result p { margin-top: 16px; }
.billing-cost-result a { text-decoration: underline; }
.billing-cost-note { border-top: 1px solid var(--line); padding-top: 18px; margin-top: 24px !important; }
@media (max-width: 640px) {
  .billing-cost-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .billing-cost-result { padding: 20px; }
  .billing-cost button { width: 100%; white-space: normal; }
}
