.estimate-field { margin-bottom: 1.2rem; }
.estimate-field label { display:block; font-weight:600; font-size:.94rem; }
.estimate-field p { color:#c4cddd; font-size:.78rem; margin:.3rem 0 .65rem; }
.estimate-stepper { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; border:1px solid #7a8baa; }
.estimate-stepper button { min-height:44px; background:transparent; color:white; border:0; font-size:1.3rem; }
.estimate-stepper button:hover { background:rgba(255,255,255,.12); }
.estimate-stepper input { min-width:0; width:100%; text-align:center; color:white; background:rgba(0,0,0,.15); border:0; border-inline:1px solid #7a8baa; font-size:1.2rem; appearance:textfield; }
.estimate-stepper input::-webkit-inner-spin-button { appearance:none; }
.estimate-result p { line-height:1.5; font-size:.8rem; }
.reward-block { padding:1.5rem 0; border-bottom:1px solid #ffffff40; }
.reward-block strong { font-size:clamp(2.7rem,4.5vw,4rem); letter-spacing:-.06em; color:var(--acid); font-weight:400; }
.reward-block h3 { font-size:1rem; margin:.4rem 0; }
.reward-block p,.referral-example p { color:#d4dce9; }
.reward-note { font-size:.8rem; color:#cad4e5; line-height:1.6; margin:1.4rem 0; }
.referral-example { border-top:1px solid #ffffff40; padding-top:1.5rem; margin-top:2rem; }
@media(max-width:600px) { .header-actions { flex-wrap:wrap; justify-content:flex-end; } .header-actions .header-cta { white-space:normal; font-size:.62rem; padding:.65rem; } }

.referral-context{padding:13px 24px;background:#0d261b;border-bottom:1px solid #2b7958;color:#b7f4d5;font:14px/1.6 var(--sans,Arial,sans-serif);text-align:center;overflow-wrap:anywhere}.referral-context.is-error{background:#302118;color:#f5cf9f;border-color:#786043}

/* The reference calculator's navy panels, green sliders, and cream result. */
.calculator-input-wide { grid-column: 1 / -1; }
.calculator-input .slider-heading { gap: .3rem; }
.calculator-input .slider-heading label { min-height: 2.6em; }
.calculator-input-wide .slider-heading label { min-height: 0; }
.calculator-input input[type="number"] { width: 100%; min-width: 0; padding: .25rem 0; border: 0; border-bottom: 1px solid #ffffff35; border-radius: 0; color: var(--acid); background: transparent; font-size: 1rem; font-variant-numeric: tabular-nums; }
.calculator-input-hint { margin: .35rem 0 0; color: #c4cddd; font-size: .7rem; line-height: 1.4; }
.region-buttons { grid-template-columns: .75fr 1.6fr .75fr; }
.region-buttons span { white-space: normal; min-height: 52px; padding: .5rem; font-size: .8rem; }
.calculator-page { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 4rem; padding-block: 5rem; }
.calculator-page h1 { font-size: clamp(2.5rem, 4.5vw, 4.5rem); line-height: 1.1; font-weight: 400; letter-spacing: -.06em; }
.calculator-page h1 em { font-family: var(--serif); color: var(--acid); font-weight: 400; }
.calculator-page-intro > p:not(.eyebrow) { max-width: 38rem; color: #c4cddd; }
.calculator-page-intro .calculator-page-note { font-size: .85rem; margin-block: 2rem; }
.calculator-page-details { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; border-top: 1px solid #ffffff40; padding-top: 2rem; }
.calculator-page-details h2 { font-size: 1.3rem; font-weight: 500; }
.calculator-page-details p { color: #c4cddd; }
@media (max-width: 850px) { .calculator-page { grid-template-columns: 1fr; gap: 2rem; padding-block: 2.5rem; } }
@media (max-width: 600px) { .calculator-page-details { grid-template-columns: 1fr; gap: 1rem; } }

.estimate-copy { color: var(--white); background: transparent; border: 1px solid #91a2be; padding: .75rem 1rem; margin-top: .75rem; font: 500 .72rem var(--mono); text-transform: uppercase; }
.estimate-copy:hover { border-color: var(--acid); color: var(--acid); }
.estimate-copy:disabled { opacity: .5; cursor: not-allowed; }
#copy-status:empty { display:none; }

/* Keep native number controls legible on the calculator’s navy surface. */
.calculator input[type="number"] { color-scheme: dark; }
.calculator input[type="number"]::-webkit-inner-spin-button { opacity: 1; }
