#estimator .estimator-hero{background:linear-gradient(120deg,#0b234a,#1263a1);color:#fff;padding:52px 56px}
#estimator .estimator-hero h1{color:#fff;font-size:clamp(32px,4vw,52px);max-width:850px;margin:10px 0 16px;line-height:1.12}
#estimator .estimator-hero p{font-size:18px;max-width:730px;color:#e7f2fa;margin:0}
#estimator .estimator-hero .estimator-year-note{margin-top:12px;font-size:14px;color:#fff}
#estimator .estimator-year-expired{margin:0 0 18px;padding:15px 18px;border:1px solid #c38a31;border-radius:12px;background:#fff7e9;color:#4d3409;font-size:15px;line-height:1.5}
#estimator .estimator-year-expired a{color:#0b4f88;font-weight:800;text-decoration:underline}
#estimator .estimator-controls button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}
#estimator .estimator-section{background:#f5f9fd}
#estimator .estimator-intro{display:grid;grid-template-columns:1.6fr 1fr;gap:22px;align-items:center;margin-bottom:26px}
#estimator .estimator-intro h2{font-size:30px;color:#0b234a;margin:7px 0 8px}
#estimator .estimator-intro p{max-width:700px;margin:0;color:#4b617a}
#estimator .estimator-intro-note{background:#e7f3fc;border:1px solid #a8d1ed;border-radius:16px;padding:20px;display:grid;gap:6px;color:#123d64}
#estimator .estimator-form{display:grid;gap:18px}
#estimator fieldset{min-width:0;border:1px solid #d0e1ee;background:#fff;border-radius:18px;padding:24px;box-shadow:0 8px 22px rgba(7,26,56,.05)}
#estimator legend{font-size:20px;font-weight:850;color:#0b234a;padding:0 8px}
#estimator legend small{font-size:13px;font-weight:500;color:#61758b}
#estimator .estimator-step{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f47c20;color:#fff;font-size:14px;margin-right:7px}
#estimator .estimator-help{color:#5e7086;margin:0 0 17px;font-size:14px}
#estimator .estimator-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}
#estimator .estimator-fields>label{display:grid;align-content:start;gap:5px;font-size:15px;font-weight:750;color:#12395f}
#estimator .estimator-fields>label>span:not(.estimator-check span){color:#5c7086;font-weight:400;font-size:13px;line-height:1.4}
#estimator .estimator-fields input:not([type="checkbox"]),#estimator .estimator-fields select{width:100%;min-height:46px;border:1px solid #a8c1d7;border-radius:10px;background:#fff;padding:10px 12px;color:#112c4b;font:inherit;margin-top:3px}
#estimator .estimator-fields input:focus-visible,#estimator .estimator-fields select:focus-visible,#estimator .estimator-controls button:focus-visible,#estimator a:focus-visible{outline:3px solid #e96912;outline-offset:2px}
#estimator .estimator-fields .estimator-check{grid-column:1/-1;display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:12px;background:#eff7fd;font-weight:500;font-size:14px}
#estimator .estimator-check input{margin-top:4px;width:19px;height:19px;flex:none;accent-color:#1263a1}
#estimator .estimator-controls{display:flex;gap:12px;flex-wrap:wrap}
#estimator .estimator-controls button{min-height:48px}
#estimator .estimator-error{padding:12px 16px;border-radius:10px;background:#fff0ed;border:1px solid #c5412c;color:#842b20;margin:0}
#estimator .estimator-results{background:#fff;border:2px solid #99c7e9;border-radius:20px;padding:28px;margin-top:30px;box-shadow:0 12px 32px rgba(7,26,56,.07)}
#estimator .estimator-results-header h2{margin:4px 0 20px;color:#0b234a;font-size:28px}
#estimator .estimator-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#estimator .estimator-result-grid>div,#estimator .estimator-payment>div{display:flex;flex-direction:column;gap:5px;padding:18px;border-radius:13px;background:#f2f8fc;border:1px solid #d6e7f1}
#estimator .estimator-result-grid span,#estimator .estimator-payment span{font-size:14px;color:#48637a}
#estimator .estimator-result-grid strong,#estimator .estimator-payment strong{font-size:25px;color:#0b234a;line-height:1.1}
#estimator .estimator-result-grid .estimator-total{background:#0b3767;border-color:#0b3767}
#estimator .estimator-total span,#estimator .estimator-total strong{color:#fff}
#estimator .estimator-payment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
#estimator .estimator-payment>div{background:#e8f6f0;border-color:#a2d5b9}
#estimator .estimator-payment small{font-size:12px;color:#496779;line-height:1.4}
#estimator .estimator-paid-note{color:#214e69;margin:15px 0}
#estimator .estimator-limitations{border-left:4px solid #2476a8;background:#edf6fd;border-radius:8px;padding:15px 18px;margin:22px 0;font-size:14px;color:#25415c}
#estimator .estimator-limitations p{margin:6px 0 0}
#estimator .estimator-next{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:22px;background:linear-gradient(120deg,#0b234a,#1165a1);border-radius:15px;color:#fff}
#estimator .estimator-next h3{margin:0 0 5px;color:#fff;font-size:21px}
#estimator .estimator-next p{margin:0;color:#e6f1f9}
#estimator .estimator-next .cta{flex:none}
#estimator .estimator-sources{font-size:13px;color:#50677d;margin:24px 0 0}
#estimator .estimator-sources a{color:#075b96;text-decoration:underline}
#estimator [hidden]{display:none!important}
@media(max-width:820px){#estimator .estimator-hero{padding:42px 28px}#estimator .estimator-intro{grid-template-columns:1fr}}
@media(max-width:620px){#estimator .estimator-hero{padding:34px 20px}#estimator .estimator-hero p{font-size:16px}#estimator .estimator-section{padding:30px 18px}#estimator fieldset{padding:17px 14px}#estimator legend{font-size:17px}#estimator .estimator-fields,#estimator .estimator-result-grid,#estimator .estimator-payment{grid-template-columns:1fr}#estimator .estimator-next{flex-direction:column;align-items:stretch}#estimator .estimator-next .cta{width:100%;text-align:center}#estimator .estimator-controls button{flex:1 1 100%}#estimator .estimator-results{padding:18px}}
