.quote-banner{height:180px;background:#f0f1f2 url('/quote-banner.webp') center/cover no-repeat}
.quote-main{max-width:1140px;margin:0 auto;padding:48px 15px 64px;min-height:540px;color:#212529;font:16px/24px Montserrat,Arial,sans-serif}
.quote-main h1{font-size:32px;line-height:38.4px;font-weight:500;letter-spacing:0;text-align:center;text-transform:uppercase;margin:0 0 8px;outline:none}
.quote-progress-wrap{padding:32px 0;margin:0 auto 24px;max-width:860px}.quote-progress{position:relative;height:16px;background:#6c757d;border-radius:20px}.quote-fill{height:100%;background:#047c3c;border-radius:20px;transition:width .3s}.quote-percent{position:absolute;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;display:grid;place-items:center;border:4px solid #047c3c;border-radius:50%;background:#fff;color:#047c3c;font-size:16px;transition:left .3s}
#quote-panel{opacity:1;transition:opacity .2s}#quote-panel.leaving{opacity:0;pointer-events:none}.quote-choices{display:flex;justify-content:center;align-items:start;margin:32px 0 20px;gap:0}.quote-choice{position:relative;display:flex;flex:0 1 226px;min-width:0;flex-direction:column;padding-left:20px;margin-bottom:8px;cursor:pointer;text-align:center;font-size:16px;font-weight:400;line-height:24px}.quote-choice input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0}.quote-art{display:block;width:100%;max-width:206px;margin:auto}.quote-art svg{display:block;width:100%;height:auto;max-height:206px}.quote-choice input:checked+.quote-art,.quote-choice:hover .quote-art{filter:drop-shadow(0 0 4px #047c3c66)}.quote-choice input:focus-visible+.quote-art{outline:3px solid #4169e1;outline-offset:5px;border-radius:50%}.quote-choice-label{display:block;margin-top:10px}
.quote-fields{max-width:640px;margin:32px auto 24px;display:grid;gap:16px}.quote-fields input,.quote-fields select{font:16px/24px Montserrat,Arial,sans-serif;color:#495057;border:1px solid #ced4da;padding:6px 12px;border-radius:4px;width:100%;min-height:38px;height:38px}.quote-range{max-width:640px;margin:24px auto 32px;text-align:center}.quote-range output{font-size:24px;line-height:36px;display:block;margin-bottom:24px}.quote-range input{appearance:none;padding:0;border:0;min-height:18px;height:18px;border-radius:5px;background:#e7e7e7;box-shadow:inset 0 1px 1px #aaa;width:100%;cursor:pointer}.quote-range input::-webkit-slider-thumb{appearance:none;width:34px;height:28px;border:1px solid #d9d9d9;border-radius:3px;background:linear-gradient(90deg,#fff 35%,#ddd 36%,#ddd 39%,#fff 40%,#fff 58%,#ddd 59%,#ddd 62%,#fff 63%);box-shadow:inset 0 0 1px #fff,0 3px 6px -3px #bbb}.quote-range input::-moz-range-thumb{width:34px;height:28px;border:1px solid #d9d9d9;border-radius:3px;background:#fff}
.quote-actions{display:flex;justify-content:center;align-items:center;gap:26px;margin:30px auto 0}.quote-next{background:#047c3c;border:3px solid #047c3c;border-radius:800px;color:#fff;padding:6px 48px;font:700 16px/24px Montserrat,Arial,sans-serif;min-height:42px}.quote-back{background:none;border:0;font:italic 16px/24px Montserrat,Arial,sans-serif;color:#212529;padding:9px 12px}.quote-back:before{content:'‹';font-style:normal;padding-right:8px}.quote-actions [hidden]{display:none}.quote-actions button:disabled{opacity:.55;cursor:default}.quote-consent{display:flex;gap:8px;font-size:16px;line-height:24px;font-weight:400;margin:24px 0;text-align:left;align-items:start}.quote-consent input{width:16px;height:16px;min-height:16px;flex-shrink:0;padding:0;margin:5px 0 0;accent-color:#047c3c}.quote-consent a{color:#047c3c;text-decoration:underline}#quote-error{color:#9f2525;text-align:center;margin:12px auto 0;font-size:16px}#quote-error:empty{display:none}.quote-success{text-align:center;font-size:20px;margin:32px auto;max-width:640px}
@media(max-width:767px){.quote-banner{height:120px}.quote-main{padding:32px 15px 48px;min-height:500px}.quote-main h1{font-size:26px;line-height:1.3}.quote-progress-wrap{margin:0 24px 24px}.quote-choices{flex-wrap:wrap;gap:20px 0;margin-top:24px}.quote-choice{flex-basis:50%;padding:0 10px}.quote-art{max-width:150px}.quote-choice-label{font-size:16px}.quote-fields{margin-top:24px}.quote-consent{font-size:14px;line-height:21px}.quote-range{padding:0 10px}.quote-next{padding:6px 38px}}
@media(prefers-reduced-motion:reduce){#quote-panel,.quote-fill,.quote-percent{transition:none}}
@media(max-width:900px){.main-nav a[href="/#estimate"]{display:none}}
@media(max-width:640px){body{padding-bottom:0}.main-nav a[href="/#guide"],.main-nav a[href="/#home-value"]{display:none}}
