#estimate{background:#eaf0f5;padding-top:64px;padding-bottom:72px;border-bottom:1px solid #cbd7e2}
#estimate>.section-intro,#estimate>.offer-note{max-width:1250px;margin-left:auto;margin-right:auto}
#estimate .offer-note{border:1px solid #edbd8c;border-left:5px solid #b55600;border-radius:8px;color:#30475f}
#estimate .estimator-shell{gap:28px;grid-template-columns:minmax(0,1.6fr) minmax(310px,.8fr)}
#estimate .residential-quote{padding:0;border:1px solid #b5c6d5;border-radius:18px;background:#fff;box-shadow:0 10px 28px #10243e19}
.estimate-sheet-heading{display:flex;align-items:center;gap:18px;padding:26px 30px;background:#10243e;border-bottom:5px solid var(--orange-accent);border-radius:17px 17px 0 0;color:#fff}
.estimate-sheet-mark{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border:1px solid #f2b16d;border-radius:11px;background:#233c56;color:#ffbd78}
.estimate-sheet-mark svg{display:block}
.estimate-sheet-heading p{margin:0 0 6px;font-size:.875rem;font-weight:650;color:#ffbd78}
.estimate-sheet-heading h3{margin:0;font-size:clamp(1.5rem,2.4vw,1.9rem);line-height:1.2;letter-spacing:-.025em;color:#fff}
.estimate-sheet-body{padding:28px 30px 30px;min-width:0}
#estimate .residential-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;border:0;padding:0}
#estimate .residential-steps button{min-width:0;min-height:54px;padding:10px;border:1px solid #bdcbd7;border-radius:9px;background:#edf2f6;color:#30475f;line-height:1.3}
#estimate .residential-steps b{width:27px;height:27px;background:#dce5ee;color:#10243e}
#estimate .residential-steps button[aria-current=step]{background:#10243e;border-color:#10243e;color:#fff;box-shadow:0 3px 8px #10243e20}
#estimate .residential-steps button[aria-current=step] b{background:#ffbd77;color:#10243e}
#estimate .estimate-at-a-glance{margin:18px 0 28px;padding:14px 16px;border:1px solid #efbb86;border-radius:9px;background:#fff2e4;gap:8px 18px}
#estimate .estimate-at-a-glance p{color:#30475f;font-weight:600;font-size:.875rem}
#estimate .estimate-at-a-glance strong{color:#10243e;font-size:1.3rem;line-height:1.3}
#estimate .step-title{padding:0 0 0 13px;border-left:4px solid var(--orange-accent);color:#10243e;font-size:1.6rem}
#estimate .height-label{display:block;padding:18px;border:1px solid #cedae4;border-radius:11px;background:#f3f6f9;margin:0 0 25px}
#estimate .height-label>span{display:block;font-weight:750;margin-bottom:10px}
#estimate .frequency-help{display:block;margin-top:10px;color:#4e6377;font-size:.875rem;line-height:1.5}
#estimate input:not([type=checkbox]):not([type=radio]),#estimate select,#estimate textarea{border-color:#94aabd;background:#fff;color:#10243e;font-size:1rem}
#estimate .choice-grid.four{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#estimate .choice-card{border-color:#b8c9d7;border-radius:11px;background:#f6f9fb;min-height:0;padding:18px;transition:border-color .18s ease,background .18s ease}
#estimate .choice-icon{background:#e1e9f0;color:#10243e;margin-bottom:10px}
#estimate .choice-card strong{font-size:1rem;color:#10243e}
#estimate .choice-card small{font-size:.875rem;color:#4e6377;line-height:1.45}
#estimate .choice-card:has(input:checked){background:#10243e;border-color:#10243e;box-shadow:inset 0 -4px var(--orange-accent)}
#estimate .choice-card:has(input:checked) strong{color:#fff}
#estimate .choice-card:has(input:checked) small{color:#dae5ef}
#estimate .choice-card:has(input:checked) .choice-icon{background:#ffbd77;color:#10243e}
#estimate .toggle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#estimate .toggle-card{border-color:#b8c9d7;background:#f6f9fb;min-height:0;border-radius:10px;padding:16px}
#estimate .toggle-card:has(input:checked){border-color:#b55600;background:#fff2e4;box-shadow:inset 4px 0 var(--orange-accent)}
#estimate .toggle-card input{accent-color:#10243e}
#estimate .toggle-card small{color:#4e6377;font-size:.875rem;line-height:1.5}
#estimate .repair-option{margin-top:6px}
#estimate .residential-step-actions{border-color:#c6d3df;padding-top:22px}
#estimate .residential-secondary{border-color:#90a7ba;background:#edf2f6;color:#10243e}
#estimate .button-primary{background:#ffbd77;color:#10243e;border:1px solid #d77516;box-shadow:0 5px 12px #b75a0c20;font-size:1rem}
#estimate #residential-review{background:#f3f6f9;border-color:#a9bdce;line-height:1.65}
#estimate .residential-result{background:#fff;color:#10243e;border:1px solid #b5c6d5;border-radius:18px;padding:26px;box-shadow:0 10px 28px #10243e19;min-width:0}
#estimate .residential-result:before{display:none}
.estimate-summary-heading{margin:-26px -26px 22px;padding:26px;background:#10243e;border-bottom:5px solid var(--orange-accent);color:#fff}
#estimate .result-label{font-size:.875rem;letter-spacing:.05em;line-height:1.5;color:#e1e9f1}
#estimate .estimate-price{font-size:clamp(2rem,2.7vw,2.8rem);line-height:1.15;margin-top:14px;color:#ffbd78}
#estimate .estimate-summary{color:#dce6ef;font-size:.94rem;min-height:0;margin:15px 0 0}
#estimate .frequency-summary{font-size:.94rem;line-height:1.5;color:#30475f}
#estimate #annual-offer-summary{padding:12px;border-left:4px solid #b55600;background:#fff2e4;color:#10243e}
#estimate .estimate-breakdown{margin:20px 0;border-color:#c6d3df;padding-top:14px}
#estimate .estimate-breakdown div{font-size:.94rem;flex-wrap:wrap;gap:5px 12px;border-bottom:1px solid #e4ebf1;padding:10px 0}
#estimate .estimate-breakdown dt{color:#4e6377}
#estimate .estimate-breakdown dd{color:#10243e}
#estimate .estimate-reason,#estimate .repair-summary{border-color:#d6b189;background:#fff2e4;color:#30475f}
#estimate .included-list{padding:18px 0;border-color:#c6d3df;font-size:.94rem;line-height:1.55}
#estimate .included-list li:before{color:#b55600}
#estimate .included-list li:last-child{padding:15px 14px 15px 34px;background:#edf3f8;border-radius:9px;margin-top:17px}
#estimate .included-list li:last-child:before{left:13px;top:15px}
#estimate .quote-note{color:#4e6377;font-size:.875rem}
#estimate :focus-visible,#estimate .choice-card:has(input:focus-visible){outline:3px solid #b55600;outline-offset:4px}
#pricing .pricing-grid article{border:1px solid #b9c9d7;border-top:4px solid var(--orange-accent);background:#f3f6f9;box-shadow:0 7px 18px #10243e10}
#pricing .pricing-grid .featured-price{background:#10243e;border-color:#10243e;border-top-color:var(--orange-accent)}
#pricing .pricing-select{padding:13px 15px;margin-top:20px;border:1px solid #10243e;border-radius:8px;background:#10243e;color:#fff;text-decoration:none;font-size:.94rem;line-height:1.4;min-height:48px}
#pricing .featured-price .pricing-select{background:#ffbd77;color:#10243e;border-color:var(--orange-accent)}
@media(hover:hover){#estimate .residential-steps button:not([aria-current=step]):hover,#estimate .residential-secondary:hover{background:#dce7ef}#estimate .button-primary:hover{background:#ffab53}#estimate .choice-card:hover{transform:none;border-color:#536f88}#pricing .pricing-select:hover{background:#244562}#pricing .featured-price .pricing-select:hover{background:#ffab53}}
@media(max-width:1000px){#estimate .estimator-shell{grid-template-columns:1fr}#estimate .residential-result{position:static}}
@media(max-width:600px){#estimate .choice-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}#estimate .toggle-grid{grid-template-columns:1fr}#estimate{padding:42px 18px 50px}.estimate-sheet-heading{padding:22px 20px;gap:13px}.estimate-sheet-mark{flex-basis:40px;width:40px;height:40px}.estimate-sheet-mark svg{width:25px;height:25px}.estimate-sheet-body{padding:22px 18px}.estimate-sheet-heading h3{font-size:1.5rem}#estimate .residential-steps{gap:6px}#estimate .residential-steps button{flex-direction:column;align-items:center;text-align:center;gap:7px;padding:10px 4px;min-height:74px}#estimate .estimate-at-a-glance{align-items:flex-start;flex-direction:column;padding:13px}#estimate .estimate-at-a-glance strong{margin-left:6px}#estimate .step-title{font-size:1.4rem}#estimate .choice-card{padding:14px}#estimate .height-label{padding:15px}#estimate .residential-result{padding:22px}.estimate-summary-heading{margin:-22px -22px 20px;padding:22px}#estimate .estimate-price{font-size:2.6rem}#estimate .residential-step-actions .button{padding:12px 15px}#estimate .residential-review-actions .button{width:100%}}
@media(max-width:360px){#estimate .choice-grid.four{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#estimate .choice-card{transition:none}}
