.quote-page{--quote-glow:rgba(37,160,217,.14)}.quote-hero{padding-bottom:72px}.quote-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:38px;align-items:start;max-width:1180px}.quote-sidebar{position:sticky;top:105px;padding:30px 24px;background:linear-gradient(145deg,rgba(17,45,69,.96),rgba(7,25,43,.96));border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.2)}.quote-sidebar h2{font-size:27px;line-height:1.15;margin:15px 0 10px}.quote-sidebar>p{color:var(--muted);font-size:14px;margin:0 0 28px}.quote-progress{display:grid;gap:8px;padding:0;margin:0;list-style:none}.quote-progress li{display:flex;gap:13px;align-items:center;padding:12px;border-radius:10px;color:var(--muted);transition:.2s ease}.quote-progress li>span{display:grid;place-items:center;width:33px;height:33px;flex:0 0 33px;border:1px solid rgba(255,255,255,.18);border-radius:50%;font-size:13px;font-weight:800}.quote-progress strong,.quote-progress small{display:block}.quote-progress strong{font-size:14px;color:var(--text)}.quote-progress small{font-size:11px;margin-top:2px}.quote-progress li.is-active{background:var(--quote-glow)}.quote-progress li.is-active>span,.quote-progress li.is-complete>span{background:var(--blue);border-color:var(--blue);color:#fff}.quote-progress li.is-complete>span{font-size:0}.quote-progress li.is-complete>span:after{content:'✓';font-size:14px}.quote-form{gap:0;padding:clamp(24px,4vw,46px);border-radius:16px;box-shadow:0 28px 80px rgba(0,0,0,.2)}.quote-step{display:grid;gap:25px;animation:quoteStep .28s ease}.quote-step[hidden]{display:none}@keyframes quoteStep{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}.step-heading{padding-bottom:22px;border-bottom:1px solid var(--line)}.step-heading>span{color:var(--blue);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.step-heading h2{font-size:clamp(29px,4vw,40px);margin:8px 0}.step-heading p{margin:0;color:var(--muted)}.pill-fieldset{border:0;padding:0;margin:0;min-width:0}.pill-fieldset legend{margin-bottom:12px;font-weight:800}.choice-pills{display:flex;flex-wrap:wrap;gap:10px}.choice-pills label{display:block;cursor:pointer}.choice-pills input{position:absolute;opacity:0;pointer-events:none;width:1px}.choice-pills span{display:flex;align-items:center;gap:8px;min-height:46px;padding:11px 17px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#07192b;color:var(--blue-soft);font-size:14px;transition:.18s ease}.choice-pills input:checked+span{border-color:var(--blue);background:rgba(37,160,217,.16);color:#fff;box-shadow:0 0 0 2px rgba(37,160,217,.12)}.choice-pills.multi input:checked+span:before{content:'✓';display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--blue);color:#fff;font-size:11px;font-weight:900}.choice-pills input:focus-visible+span{outline:3px solid rgba(37,160,217,.35);outline-offset:2px}.compact-pills span{min-height:40px;padding:8px 14px}.business-fields{padding:20px;border-radius:10px;background:rgba(37,160,217,.06);border:1px solid rgba(37,160,217,.18)}.frequency-field{max-width:390px}.location-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(330px,1.2fr);gap:24px}.address-fields{display:grid;gap:18px}.form-grid.compact{grid-template-columns:130px 1fr}.map-search{width:100%;justify-content:center}.map-feedback{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.map-feedback.is-error,.field-error{color:#ff9b9b}.map-card{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#07192b}.quote-map{height:390px;background:#12283b}.map-card>p{margin:0;padding:12px 15px;color:var(--muted);font-size:11px}.map-card>p i{color:var(--blue);margin-right:5px}.leaflet-control-layers,.leaflet-bar a{color:#172839}.upload-zone{position:relative;place-items:center;text-align:center;padding:34px 20px;border:1px dashed rgba(37,160,217,.6);border-radius:12px;background:rgba(37,160,217,.06);cursor:pointer}.upload-zone:hover{background:rgba(37,160,217,.1)}.upload-zone>i{font-size:28px;color:var(--blue)}.upload-zone>span{color:var(--muted);font-weight:400;font-size:12px}.upload-zone input{position:absolute;inset:0;opacity:0;cursor:pointer}.file-list{display:flex;flex-wrap:wrap;gap:8px}.file-list span{padding:7px 10px;border-radius:6px;background:rgba(255,255,255,.06);font-size:12px;color:var(--blue-soft)}.quote-form .checkbox{display:flex;flex-direction:row;gap:0}.quote-form .checkbox span{font-weight:400}.form-navigation{display:flex;justify-content:space-between;gap:14px;margin-top:34px;padding-top:25px;border-top:1px solid var(--line)}.form-navigation .button:last-child{margin-left:auto}.field-error{min-height:18px;margin:8px 0 0;font-size:13px}.form-note{display:flex;gap:8px;align-items:flex-start}.form-note i{color:var(--blue);margin-top:2px}.quote-form input.is-invalid,.quote-form select.is-invalid,.quote-form textarea.is-invalid{border-color:#e86f6f;box-shadow:0 0 0 2px rgba(232,111,111,.12)}@media(max-width:950px){.quote-layout{grid-template-columns:1fr}.quote-sidebar{position:static}.quote-sidebar>h2,.quote-sidebar>p{display:none}.quote-progress{grid-template-columns:repeat(4,1fr)}.quote-progress li{justify-content:center;padding:8px}.quote-progress li div{display:none}.location-grid{grid-template-columns:1fr}}@media(max-width:560px){.quote-layout{padding-inline:14px}.quote-sidebar{padding:12px}.quote-form{padding:24px 18px}.quote-progress li>span{width:30px;height:30px;flex-basis:30px}.choice-pills{gap:8px}.choice-pills span{padding:9px 12px;font-size:13px}.form-grid.compact{grid-template-columns:105px 1fr}.quote-map{height:315px}.form-navigation .button{padding:12px 15px;font-size:13px}}
