/* Shared Curbwell form treatment, matching the residential estimate sheet. */
.form-sheet,.service-form.form-sheet,#vip .form-sheet{min-width:0;padding:0;background:#fff;color:#10243e;border:1px solid #b5c6d5;border-radius:18px;box-shadow:0 10px 28px #10243e19}
.portal-card.form-panel{padding:0;border:0;background:transparent;box-shadow:none;min-width:0;align-self:start}
.form-sheet .form-sheet-heading{display:flex;align-items:center;gap:18px;padding:26px 30px;background:#10243e;color:#fff;border-bottom:5px solid var(--orange-accent);border-radius:17px 17px 0 0}
.form-sheet .form-sheet-mark{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;background:#233c56;color:#ffbd78;border:1px solid #f2b16d;border-radius:11px}
.form-sheet-mark svg{display:block}
.form-sheet .form-sheet-heading p,#vip .form-sheet .form-sheet-heading p{margin:0 0 6px;color:#ffbd78;font-size:.875rem;font-weight:650;line-height:1.5;letter-spacing:0}
.form-sheet .form-sheet-heading :is(h1,h2,h3),#vip .form-sheet .form-sheet-heading h3{margin:0;color:#fff;font-size:clamp(1.5rem,2.4vw,1.9rem);line-height:1.2;letter-spacing:-.025em}
.form-sheet-body{padding:28px 30px 30px;min-width:0}
.form-sheet label,#vip .form-sheet label{display:block;font-size:1rem;font-weight:700;color:#10243e;margin:0 0 18px;line-height:1.5}
.form-sheet :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea),#vip .form-sheet :is(input:not([type=checkbox]),textarea),.commercial-section .form-sheet .contact-fields select{display:block;width:100%;max-width:100%;min-height:52px;margin:7px 0 0;padding:12px 14px;border:1px solid #94aabd;border-radius:9px;background:#fff;color:#10243e;font:inherit;font-size:1rem;line-height:1.5}
.form-sheet :is(input,textarea)::placeholder{color:#52677c;opacity:1}
.form-sheet input[type=checkbox],#vip .form-sheet input[type=checkbox]{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:3px 0 0;padding:0;accent-color:#10243e}
.form-sheet label:has(>input[type=checkbox]),#vip .form-sheet .vip-consent{display:flex;align-items:flex-start;gap:12px;font-size:.94rem;font-weight:400}
.form-sheet :is(.form-small,.muted,.frequency-help),.form-sheet label small,#vip .form-sheet .vip-small{color:#4e6377;font-size:.875rem;line-height:1.55}
.form-sheet label small{display:block;margin-top:8px;font-weight:400}
.form-sheet :is(button[type=submit],.button-primary,.portal-button),#vip .form-sheet .vip-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;max-width:100%;padding:12px 22px;border:1px solid #d77516;border-radius:10px;background:#ffbd77;color:#10243e;box-shadow:0 5px 12px #b75a0c20;font:inherit;font-size:1rem;font-weight:800;line-height:1.4;text-align:center;text-decoration:none;cursor:pointer;white-space:normal}
.form-sheet :is(.secondary-button,.portal-button){border-color:#90a7ba;background:#edf2f6;color:#10243e;box-shadow:none}
.form-sheet .quote-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0;border:0;margin:0 0 18px}
.form-sheet .quote-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}
.form-sheet .quote-steps b{width:27px;height:27px;background:#dce5ee;color:#10243e}
.form-sheet .quote-steps button[aria-current=step]{background:#10243e;border-color:#10243e;color:#fff;box-shadow:0 3px 8px #10243e20}
.form-sheet .quote-steps button[aria-current=step] b{background:#ffbd77;color:#10243e}
.form-sheet .quote-progress{color:#4e6377;font-size:.875rem}
.form-sheet legend{padding-left:13px;border-left:4px solid var(--orange-accent);color:#10243e}
.form-sheet .work-choices label{margin:0;padding:18px;border:1px solid #b8c9d7;border-radius:11px;background:#f6f9fb;font-size:1rem;font-weight:600}
.form-sheet .work-choices label:has(input:checked){background:#10243e;color:#fff;border-color:#10243e;box-shadow:inset 0 -4px var(--orange-accent)}
.form-sheet .work-choices label:has(input:checked) small{color:#dae5ef}
.form-sheet .work-choices label:has(input:checked) input{accent-color:#ffbd77}
.form-sheet .included-report{padding:14px 16px;background:#fff2e4;color:#30475f;border:1px solid #efbb86;border-radius:9px}
.form-sheet #request-review{background:#f3f6f9;border-color:#a9bdce;line-height:1.65}
.form-sheet .step-actions{border-color:#c6d3df;padding-top:22px}
.form-sheet [role=status]:not(:empty){padding:14px 16px;border-left:4px solid #b55600;border-radius:5px;background:#fff2e4;color:#10243e;font-size:.94rem;line-height:1.6;overflow-wrap:anywhere}
.form-sheet :focus-visible,#vip .form-sheet :focus-visible{outline:3px solid #b55600;outline-offset:4px}
.form-sheet button:disabled{opacity:.6;cursor:wait}
.form-sheet [hidden]{display:none!important}
.form-sheet input[type=hidden]{display:none}
#vip .form-sheet .vip-fields{gap:0 16px}
#vip .form-sheet .form-sheet-body>label{margin-bottom:18px}
#commercial-quote{background:#eaf0f5;border-bottom:1px solid #cbd7e2}
#commercial-quote .live-scope{padding:26px;border:1px solid #b5c6d5;border-radius:18px;background:#fff;color:#10243e;box-shadow:0 10px 28px #10243e19;min-width:0}
#commercial-quote .live-scope:before{display:none}
.scope-sheet-heading{margin:-26px -26px 22px;padding:26px;background:#10243e;border-bottom:5px solid var(--orange-accent)}
#commercial-quote .scope-sheet-heading .result-label{color:#e1e9f1;font-size:.875rem;letter-spacing:.05em}
#commercial-quote .scope-sheet-heading h3{color:#ffbd78;margin:14px 0 0;overflow-wrap:anywhere}
#commercial-quote .scope-facts,#commercial-quote .scope-facts div,#commercial-quote .included-list{border-color:#c6d3df}
#commercial-quote .scope-facts dt,#commercial-quote .quote-note{color:#4e6377;font-size:.875rem}
#commercial-quote .scope-facts dd{color:#10243e;overflow-wrap:anywhere}
#commercial-quote .included-list{font-size:.94rem;line-height:1.55}
#commercial-quote .included-list li:before{color:#b55600}
#commercial-quote .live-scope>.text-link{display:inline-block;margin-top:18px;color:#10243e}
@media(hover:hover){.form-sheet :is(button[type=submit],.button-primary):hover,#vip .form-sheet .vip-cta:hover{background:#ffab53;transform:none}.form-sheet :is(.secondary-button,.portal-button):hover,.form-sheet .quote-steps button:not([aria-current=step]):hover{background:#dce7ef}}
@media(max-width:600px){.form-sheet .form-sheet-heading{padding:22px 20px;gap:13px}.form-sheet .form-sheet-mark{flex-basis:40px;width:40px;height:40px}.form-sheet-mark svg{width:25px;height:25px}.form-sheet-body{padding:22px 18px}.form-sheet .form-sheet-heading :is(h1,h2,h3),#vip .form-sheet .form-sheet-heading h3{font-size:1.5rem}.form-sheet .quote-steps{gap:6px}.form-sheet .quote-steps button{flex-direction:column;align-items:center;text-align:center;gap:7px;padding:10px 4px;min-height:74px}.form-sheet :is(button[type=submit],.review-actions .button,.portal-button){width:100%}.form-sheet .step-actions .button{padding:12px 15px}.form-sheet .contact-fields{grid-template-columns:1fr;gap:0}#vip .vip-interest{min-width:0}#vip .form-sheet .form-sheet-heading{padding:20px 16px}#commercial-quote .live-scope{padding:22px}.scope-sheet-heading{margin:-22px -22px 20px;padding:22px}}
