.quote-page{background:#f3f7fb;min-height:100vh}
.quote-header{background:#fff;border-bottom:1px solid var(--line)}
.quote-nav{height:78px;display:flex;align-items:center;justify-content:space-between}
.quote-nav img{width:145px;height:58px;object-fit:contain}
.back-link{font-size:13px;font-weight:800;color:var(--navy)}
.quote-main{padding:56px 0 80px}
.quote-layout{display:grid;grid-template-columns:.72fr 1.28fr;border-radius:20px;overflow:hidden;box-shadow:var(--shadow);background:#fff;min-height:690px}
.quote-side{background:linear-gradient(145deg,#082a4a,#0d4d7e);color:#fff;padding:56px 46px;display:flex;flex-direction:column}
.quote-side h1{font-size:38px;line-height:1.18;letter-spacing:-.04em;margin:0 0 20px}
.quote-side>p{color:#cfdeea;font-size:14px}
.quote-points{display:grid;gap:20px;margin:38px 0}
.quote-points>div{display:flex;gap:13px}
.quote-points>div>span{width:27px;height:27px;border-radius:50%;background:rgba(255,255,255,.14);display:grid;place-items:center;font-size:12px;flex:0 0 auto}
.quote-points p{margin:0}
.quote-points strong,.quote-points small{display:block}
.quote-points strong{font-size:14px}
.quote-points small{color:#b8cad8;font-size:11px;margin-top:2px}
.quote-contact{margin-top:auto;border-top:1px solid rgba(255,255,255,.17);padding-top:24px}
.quote-contact small,.quote-contact span{display:block;color:#b8cad8;font-size:11px}
.quote-contact a{display:block;font-size:21px;font-weight:800;margin:5px 0}
.quote-form-panel{padding:52px}
.step-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}
.step-head>div:first-child span{font-size:11px;font-weight:800;color:var(--blue);letter-spacing:.08em;text-transform:uppercase}
.step-head h2{font-size:28px;letter-spacing:-.035em;margin:5px 0 0}
.step-progress{width:180px;height:5px;background:#e5edf4;border-radius:10px;overflow:hidden}
.step-progress span{display:block;height:100%;width:25%;background:var(--blue);transition:.3s}
.form-step{display:none}
.form-step.active{display:block}
.insurance-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.insurance-option{position:relative;border:1px solid var(--line);border-radius:11px;padding:17px;cursor:pointer;display:flex;align-items:center;transition:.2s}
.insurance-option:hover{border-color:#a9c8df;background:#f8fbfd}
.insurance-option input{position:absolute;opacity:0}
.insurance-option>span{padding-right:22px}
.insurance-option strong,.insurance-option small{display:block}
.insurance-option strong{font-size:14px}
.insurance-option small{font-size:11px;color:var(--muted);margin-top:2px}
.insurance-option b{margin-left:auto;color:transparent;width:23px;height:23px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:11px}
.insurance-option:has(input:checked){border-color:var(--blue);background:#eef8ff}
.insurance-option:has(input:checked) b{background:var(--blue);border-color:var(--blue);color:#fff}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.field.full{grid-column:1/-1}
.field>span{display:block;font-size:12px;font-weight:800;margin-bottom:8px}
.field em{font-style:normal;color:var(--muted);font-weight:500}
.field input,.field textarea,.field select{width:100%;border:1px solid #cad6e0;border-radius:9px;padding:14px 15px;background:#fff;outline:none;color:var(--ink);transition:.2s}
.field input:focus,.field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(23,105,170,.1)}
.field input.invalid{border-color:#c74444}
.field-error{display:block;color:#b43a3a;font-size:11px;margin:6px 0 0}
.summary-card{background:#f4f8fb;border:1px solid var(--line);border-radius:13px;padding:26px}
.summary-card h3{font-size:22px;margin:0 0 10px}
.summary-card>p{font-size:13px;color:var(--muted)}
.consent{display:flex;gap:12px;margin-top:22px;font-size:12px;line-height:1.7;cursor:pointer}
.consent input{margin-top:5px}
.consent a{color:var(--blue);font-weight:800}
.form-navigation{display:flex;justify-content:flex-end;gap:12px;margin-top:34px}
#prevBtn{margin-right:auto;display:none}
#submitBtn{display:none}
.hp-field{position:absolute;left:-9999px}
.alert{background:#fff3f3;border:1px solid #e8bebe;color:#a33232;padding:13px 16px;border-radius:9px;font-size:12px;margin-bottom:24px}
.status-card{text-align:center;padding:70px 30px}
.status-card>span{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#dff5e7;color:#18864a;font-size:30px;font-weight:800;margin:auto}
.status-card h2{font-size:30px;margin:24px 0 12px}
.status-card p{color:var(--muted);max-width:510px;margin:0 auto 30px}
@media(max-width:900px){
 .quote-layout{grid-template-columns:1fr}
 .quote-side{padding:38px}
 .quote-form-panel{padding:38px}
}
@media(max-width:620px){
 .quote-main{padding:20px 0 50px}
 .quote-layout{border-radius:14px}
 .quote-side{padding:30px 24px}
 .quote-side h1{font-size:31px}
 .quote-form-panel{padding:28px 22px}
 .step-head{display:block}
 .step-progress{width:100%;margin-top:18px}
 .insurance-options,.field-grid{grid-template-columns:1fr}
 .field.full{grid-column:auto}
 .form-navigation{flex-wrap:wrap}
 .form-navigation .btn{flex:1}
}
