.quote-header{max-width:1500px;margin:auto;border-bottom:1px solid var(--line)}
.header-phone{margin-left:auto;color:var(--blue);font-size:14px}.header-phone strong{margin-left:7px}
.quote-shell{min-height:calc(100vh - 150px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);background:linear-gradient(90deg,var(--blue) 0,var(--blue) 45%,var(--pale) 45%,var(--pale) 100%)}
.quote-intro{color:#fff;background:#024bb5;padding:70px clamp(34px,6vw,105px) 65px;position:relative;overflow:hidden}.quote-intro:after{content:"";position:absolute;width:360px;height:360px;border:1px solid #ffffff38;border-radius:50%;right:-210px;top:210px;box-shadow:0 0 0 55px #ffffff0b,0 0 0 110px #ffffff0b;pointer-events:none}.eyebrow{font-size:12px;letter-spacing:.1em;display:flex;align-items:center;gap:10px}.eyebrow span{width:7px;height:7px;background:white;border-radius:50%}.quote-intro h1{font-size:clamp(50px,5.7vw,84px);margin:55px 0 24px;position:relative;z-index:1}.lead{font-size:18px;line-height:1.6;max-width:570px;color:#fff}.timing-card{display:grid;grid-template-columns:auto auto 1px auto auto;align-items:baseline;gap:8px 12px;margin:45px 0 55px;padding:20px 0;border-top:1px solid #ffffff70;border-bottom:1px solid #ffffff70;max-width:620px}.timing-number{font-size:18px;font-weight:700}.timing-card p{font-size:12px;color:#fff}.timing-divider{height:32px;background:#ffffff70;margin:0 11px}.trust-list{list-style:none;padding:0;margin:0;display:grid;gap:18px;max-width:560px}.trust-list li{display:grid;grid-template-columns:32px 1fr;column-gap:13px;align-items:baseline}.trust-list li>span{font-size:11px;color:#dce8ff}.trust-list strong{font-size:15px}.trust-list small{grid-column:2;font-size:12px;color:#fff;margin-top:2px}
.quote-panel{align-self:start;background:#fff;margin:54px clamp(25px,5vw,80px);padding:32px clamp(24px,3.5vw,48px) 38px;box-shadow:0 24px 60px #15377b1c;max-width:720px;min-height:650px}.progress-row{display:flex;align-items:center;margin-bottom:42px}.progress-step{width:29px;height:29px;border-radius:50%;border:1px solid #b8c9ec;display:grid;place-items:center;color:#7786a5;font-size:12px}.progress-step.active{background:var(--blue);color:#fff;border-color:var(--blue)}.progress-step.complete{background:var(--ink);color:#fff;border-color:var(--ink)}.progress-row i{height:1px;background:#cad6ed;width:35px}.progress-row small{margin-left:auto;color:#73809a;font-size:10px;letter-spacing:.1em}.form-step{animation:fade-in .28s ease}.form-step[hidden],.conditional-block[hidden],.success-state[hidden]{display:none}@keyframes fade-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.step-kicker{font-size:11px;font-weight:600;color:var(--blue);letter-spacing:.1em;margin-bottom:12px}.form-step h2,.success-state h2{font-size:clamp(36px,4vw,52px);font-weight:600}.helper{color:#687895;font-size:14px;margin:12px 0 25px}.helper.large{font-size:17px;line-height:1.6;max-width:480px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin:28px 0 14px}.project-choice{position:relative;border:1px solid #cbd7ed;padding:20px 14px;min-height:160px;display:flex;flex-direction:column;cursor:pointer;transition:.18s}.project-choice input{position:absolute;opacity:0}.project-choice:has(input:checked){background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 10px 24px #3065d52a}.project-choice:focus-within{outline:3px solid #152243;outline-offset:3px}.choice-icon{font-size:28px;line-height:1;color:var(--blue);margin-bottom:auto}.project-choice:has(input:checked) .choice-icon{color:#fff}.project-choice strong{font-size:15px}.project-choice small{font-size:11px;line-height:1.3;margin-top:5px;color:#71809b}.project-choice:has(input:checked) small{color:#e7efff}.primary-action{width:100%;border:0;background:var(--blue);color:#fff;min-height:56px;padding:15px 19px;display:flex;align-items:center;justify-content:space-between;font:600 15px/1.2 'Space Grotesk',Arial,sans-serif;cursor:pointer}.primary-action:hover{background:#174fae}.primary-action:disabled{opacity:.6;cursor:wait}.primary-action span{font-size:22px}.form-error{color:#a62a32;font-size:13px;min-height:20px;margin:8px 0}.simple-note{display:flex;gap:16px;padding:22px;background:var(--pale);margin:30px 0 45px}.simple-note>span{width:30px;height:30px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;flex:0 0 auto}.simple-note p{font-size:14px;color:#52617d}.simple-note strong{color:var(--ink)}.chip-grid{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px}.chip-grid label{position:relative}.chip-grid input{position:absolute;opacity:0}.chip-grid span{display:block;padding:10px 14px;border:1px solid #c6d3e9;font-size:13px;cursor:pointer}.chip-grid input:checked+span{background:var(--blue);color:#fff;border-color:var(--blue)}.chip-grid label:focus-within span{outline:2px solid var(--ink);outline-offset:2px}.quantity-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 28px}.quantity-row label{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid #c6d3e9;padding:8px 9px 8px 14px;font-size:13px}.quantity-row input{width:62px;padding:8px;border:1px solid #d7dfed;font:inherit}.form-step h3{font-size:18px;letter-spacing:-.02em;margin-top:5px}.text-field{display:block;margin:17px 0}.text-field>span{display:block;font-size:12px;color:#53617e;margin-bottom:7px}.text-field em,.upload-field em{font-style:normal;color:#929db1;font-size:11px}.text-field input,.text-field textarea{width:100%;border:1px solid #c6d3e9;border-radius:0;background:#fff;color:var(--ink);padding:13px 14px;font:inherit;resize:vertical}.text-field input:focus,.text-field textarea:focus,.quantity-row input:focus{outline:2px solid var(--blue);outline-offset:2px}.optional-field{margin-top:23px}.upload-field{border:1px dashed #9eb2d6;background:var(--pale);padding:18px;display:grid;grid-template-columns:40px 1fr;column-gap:13px;cursor:pointer}.upload-icon{width:40px;height:40px;background:#fff;display:grid;place-items:center;color:var(--blue);font-size:24px;grid-row:1/3}.upload-field strong{font-size:14px}.upload-field small{font-size:11px;color:#687895}.file-input{position:absolute;width:1px;height:1px;opacity:0}.file-list{display:grid;gap:6px;margin-top:8px;font-size:12px;color:#53617e}.file-list span{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:6px 0}.step-actions{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;margin-top:26px}.back-action{border:0;background:none;color:#53617e;font:600 13px 'Space Grotesk',Arial,sans-serif;padding:15px 8px;cursor:pointer}.back-action:hover{text-decoration:underline}.consent{display:flex;align-items:flex-start;gap:10px;margin:20px 0;font-size:12px;color:#53617e}.consent input{margin-top:2px;width:17px;height:17px;accent-color:var(--blue)}.fine-print{text-align:center;font-size:11px;color:#7c89a1;margin-top:13px}.success-state{text-align:center;padding:28px 10px}.success-mark{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:27px;margin:0 auto 25px}.success-state>p:not(.step-kicker){color:#60708c;font-size:16px;line-height:1.6;max-width:480px;margin:18px auto}.success-note{background:var(--pale);padding:20px;text-align:left;display:grid;gap:6px;margin:27px auto;max-width:480px}.success-note strong{font-size:13px}.success-note span{font-size:13px;color:#5e6e8a}.success-state .primary-action{max-width:480px;margin:auto}.quote-footer{display:flex;justify-content:space-between;gap:20px;padding:20px 5%;font-size:11px;letter-spacing:.05em;border-top:1px solid var(--line)}.quote-footer a{color:var(--blue)}
@media(max-width:1050px){.quote-shell{grid-template-columns:.8fr 1.2fr}.quote-intro{padding:55px 40px}.quote-panel{margin:40px 25px}.timing-card{grid-template-columns:1fr}.timing-divider{display:none}.timing-card p{margin-bottom:6px}.project-grid{grid-template-columns:1fr}.project-choice{min-height:105px;display:grid;grid-template-columns:42px 1fr;align-content:center}.choice-icon{grid-row:1/3;margin:auto 0}.project-choice strong,.project-choice small{grid-column:2}}
@media(max-width:760px){.quote-header{padding:11px 5%}.quote-header .logo{width:60px;height:60px}.quote-header .location{display:none}.header-phone{font-size:12px}.header-phone strong{display:block;margin:0}.quote-shell{display:block;background:var(--pale)}.quote-intro{padding:40px 6% 42px}.quote-intro h1{font-size:clamp(43px,13vw,63px);margin:38px 0 19px}.lead{font-size:16px}.timing-card{grid-template-columns:auto 1fr;gap:7px 12px;margin:30px 0}.trust-list{gap:14px}.quote-panel{margin:0;padding:30px 6% 42px;max-width:none;min-height:620px;box-shadow:none}.project-grid{grid-template-columns:1fr}.quantity-row{grid-template-columns:1fr}.step-actions{grid-template-columns:74px 1fr}.quote-footer{flex-wrap:wrap;padding:18px 6%;font-size:9px}.quote-footer span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){.form-step{animation:none}}
