.quote-steps{counter-reset:none;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0 40px;padding:0;list-style:none;display:grid}.quote-steps li{border-radius:var(--radius);background:var(--accent);align-items:flex-start;gap:14px;padding:20px;display:flex}.quote-steps li>span{background:var(--primary);width:36px;height:36px;color:var(--primary-text);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.quote-steps h2{font-family:var(--font-body), system-ui, sans-serif;letter-spacing:0;margin:4px 0 2px;font-size:1rem}.quote-steps p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.5}.quote{grid-template-columns:1.6fr 1fr;align-items:start;gap:40px;display:grid}.quote-aside{padding-top:8px;position:sticky;top:96px}.quote-aside h2{font-size:1.3rem}.quote-aside .contact-list span{min-width:90px}.quote-pick{border:0;margin:0;padding:0}.quote-pick legend{margin-bottom:8px;padding:0;font-size:.95rem;font-weight:600}.quote-pick>div{flex-wrap:wrap;gap:8px;display:flex}.form .quote-pick label{font-weight:500;display:block;position:relative}.form .quote-pick input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.quote-pick label>span{border:1px solid var(--line-2);border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:8px 16px;display:inline-flex}.quote-pick input:checked+span{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);background:var(--soft);color:var(--primary)}.quote-pick input:checked+span:before{content:"✓";font-weight:700}.quote-pick input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.quote-you{border-top:1px solid var(--line);gap:16px;padding-top:16px;display:grid}.quote-sent{text-align:center;padding:24px 8px}.quote-sent h2{margin:12px 0 8px;font-size:1.6rem}.quote-sent p{color:var(--muted);max-width:44ch;margin-inline:auto}.quote-check{background:var(--primary);width:56px;height:56px;color:var(--primary-text);border-radius:50%;place-items:center;font-size:1.6rem;font-weight:700;display:inline-grid}@media (max-width:860px){.quote-steps{grid-template-columns:1fr;gap:10px;margin-bottom:32px}.quote-steps li{padding:14px 16px}.quote{grid-template-columns:1fr;gap:32px}.quote-aside{position:static}}@media (prefers-reduced-motion:reduce){.plan{transition:none}}
