#calculator{background:linear-gradient(140deg,var(--ds-color-surface-assistant),var(--ds-color-surface-soft) 65%)}
#calculator .section-heading{margin-bottom:32px}
.calc-design-intro{font-size:17px;line-height:1.7;color:var(--ds-color-text-secondary);margin-top:20px;max-width:620px}
#calculator .quote-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px;align-items:start}
#calculator .quote-controls{padding:36px;border:1px solid #dce7eb;box-shadow:var(--ds-shadow-card)}
#calculator .calc-field>label,#calculator .calc-field>legend{font-size:17px;font-weight:600}
#calculator .count-row{gap:18px;flex-wrap:wrap}
.calc-stepper{display:flex;align-items:center;padding:5px;border:1px solid #bfd2db;border-radius:var(--ds-radius-small);background:var(--ds-color-surface-assistant)}
.calc-stepper button{width:42px;height:44px;border:0;border-radius:var(--ds-radius-chip);background:#fff;color:var(--ds-color-accent);font-size:26px;cursor:pointer;transition:background .18s,transform .18s}
.calc-stepper button:hover:not(:disabled){background:#dcf1f6;transform:translateY(-1px)}
.calc-stepper button:disabled{opacity:.35;cursor:default}
#calculator .calc-stepper #count{width:70px;border:0;background:transparent;text-align:center;font-size:24px;font-weight:700;padding:6px;appearance:textfield;box-shadow:none}
#calculator #count::-webkit-inner-spin-button,#calculator #count::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.calc-presets{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:14px}
.calc-count-range{margin-top:24px}
#calculator .calc-count-range label{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:8px}
.calc-count-range label strong{color:var(--ds-color-accent)}
#calculator #count-range{appearance:none;width:100%;height:32px;padding:0;border:0;border-radius:0;cursor:pointer;background:linear-gradient(to right,var(--ds-color-action) var(--range-fill,0%),#dce7eb var(--range-fill,0%)) center/100% 6px no-repeat;box-shadow:none;accent-color:var(--ds-color-action)}
#count-range::-webkit-slider-thumb{appearance:none;width:24px;height:24px;border:3px solid #fff;border-radius:50%;background:var(--ds-color-action);box-shadow:0 2px 8px #10344030}
#count-range::-moz-range-thumb{width:20px;height:20px;border:3px solid #fff;border-radius:50%;background:var(--ds-color-action);box-shadow:var(--ds-shadow-raise)}
.calc-range-limits{display:flex;justify-content:space-between;font-size:12px;color:var(--ds-color-text-secondary);margin-top:2px}
#calculator #count-mode-status:empty{display:none}
#calculator #count-mode-status{color:var(--ds-color-accent)}
@media(max-width:700px){.calc-presets{grid-template-columns:repeat(5,minmax(0,1fr))}}
.calc-presets button{border:1px solid #dce7eb;background:#fff;color:var(--ds-color-text-secondary);border-radius:var(--ds-radius-card);padding:7px 14px;font:inherit;font-size:12px;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.calc-presets button[aria-pressed=true]{background:#eaf5f7;color:var(--ds-color-accent);border-color:#7bc6d7}
#calculator .calc-versions label{border-radius:var(--ds-radius-media);padding:20px 16px;transition:border-color .2s,background .2s,box-shadow .2s,transform .2s}
#calculator .calc-versions label:has(input:checked){background:#eaf5f7;border-color:var(--ds-color-action);box-shadow:0 0 0 1px var(--ds-color-action)}
#calculator .calc-versions label:hover{transform:translateY(-2px)}
#calculator .calc-versions small{line-height:1.6;margin-top:8px}
#calculator .calc-option{padding:18px;border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-small);background:var(--ds-color-surface-soft)}
#calculator .quote-result{padding:30px;background:var(--ds-color-night-deep);color:#fff;border:0;border-radius:var(--ds-radius-card);box-shadow:var(--ds-shadow-float);overflow:hidden}
.calc-kit-preview{background:#eaf5f7;border-radius:var(--ds-radius-media);padding:18px 20px;margin-bottom:24px;color:#173d48}
.calc-kit-badge{font-size:12px;letter-spacing:.13em;font-weight:600}
.calc-kit-images{display:flex;align-items:center;justify-content:center;gap:10px;height:140px}
.calc-kit-images img{width:32%;height:128px;object-fit:contain;min-width:0}
.calc-kit-images img[hidden]{display:none}
.calc-kit-images>span{font-size:24px;color:#438191}
.calc-kit-caption{font-size:12px;line-height:1.6;text-align:center;margin-top:8px;color:#42616c}
#calculator .quote-result>.eyebrow{color:#aacdd7;font-size:12px}
#calculator .quote-name{color:#eaf5f7;font-size:17px}
#calculator .quote-total{color:#fff;font-size:clamp(36px,4.4vw,62px);line-height:1.2;font-variant-numeric:tabular-nums;letter-spacing:-.04em;overflow-wrap:anywhere}
#calculator .quote-lines{border-color:#365660;color:#deedf1}
#calculator .quote-lines p,#calculator .quote-lines strong{color:#deedf1}
#calculator .quote-result .field-help{color:#bbd1d8;line-height:1.8}
#calculator #quote-cta{display:flex;align-items:center;justify-content:space-between;background:var(--ds-color-win);color:var(--ds-color-on-win);border:0;border-radius:var(--ds-radius-small);min-height:54px;padding:16px 22px;font-size:16px;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s}
#calculator #quote-cta:hover{background:#d1f79f;transform:translateY(-2px);box-shadow:var(--ds-shadow-card)}
#calculator #quote-cta[aria-disabled=true]{opacity:.5;pointer-events:none}
.calc-request-help{font-size:12px;line-height:1.65;color:#bbd1d8;margin:12px 0;text-align:center}
#calculator .quote-contact,#calculator .quote-contact a{color:var(--ds-color-on-night-deep)}
#calculator button:focus-visible,#calculator input:focus-visible,#calculator #quote-cta:focus-visible{outline:3px solid #0aa4c4;outline-offset:4px}
@media(max-width:1000px){#calculator .quote-grid{grid-template-columns:1fr}#calculator .quote-controls,#calculator .quote-result{padding:26px}}
@media(max-width:400px){#calculator .quote-controls,#calculator .quote-result{padding:20px}#calculator .calc-versions{grid-template-columns:1fr}#calculator .calc-option{padding:12px}.calc-kit-preview{padding:14px}.calc-kit-images{gap:5px}.calc-kit-images img{height:100px}.calc-kit-images{height:115px}}
@media(prefers-reduced-motion:reduce){#calculator *,#calculator *:before{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
