.estimate-hero{padding:38px 0 28px}.estimate-hero .breadcrumb{margin-bottom:24px}.estimate-hero h1{font-size:clamp(34px,4.8vw,64px);line-height:1.15;letter-spacing:-.05em;margin:12px 0 20px}.estimate-hero h1 em{font-style:normal;color:var(--red)}.estimate-hero>p:last-child{max-width:730px;color:var(--ink-soft);font-size:16px;line-height:1.85}.estimate-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:36px;align-items:start;padding-bottom:65px}.estimate-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.estimate-presets button{font:inherit;font-size:12px;border:1px solid var(--rule);background:transparent;padding:10px 12px;cursor:pointer;min-height:44px}.estimate-presets button[aria-pressed=true]{background:var(--ink);color:var(--cream);border-color:var(--ink)}.estimate-form fieldset{border:0;padding:24px 0;margin:0;border-top:1px solid var(--rule);min-width:0}.estimate-form legend{font-size:21px;font-weight:700;letter-spacing:-.03em;padding:0 12px 0 0}.estimate-field{margin-bottom:20px}.estimate-field label{display:block;font-weight:600;font-size:13px;margin-bottom:10px}.estimate-field select,.estimate-field input{min-height:48px;border:1px solid #a6a99c;background:var(--paper);font:inherit;font-size:16px;color:var(--ink);width:100%;border-radius:0;padding:10px 12px;min-width:0}.estimate-field small,.estimate-helper{display:block;font-size:12px;line-height:1.8;color:var(--ink-soft);margin-top:9px}.estimate-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.estimate-stepper{display:grid;grid-template-columns:44px 1fr 44px;max-width:240px}.estimate-stepper input{text-align:center;border-inline:0;padding:10px 4px;appearance:textfield;-moz-appearance:textfield}.estimate-stepper input::-webkit-inner-spin-button{appearance:none}.estimate-stepper button{font:inherit;font-size:24px;border:1px solid #a6a99c;background:var(--paper);cursor:pointer;min-height:48px;color:var(--ink)}.estimate-stepper button:hover{background:var(--sand)}.estimate-form details{border-top:1px solid var(--rule);padding-top:20px}.estimate-form summary{cursor:pointer;font-weight:600;min-height:44px}.estimate-extras{padding-top:20px}.estimate-result{position:sticky;top:110px;background:var(--ink);color:var(--cream);padding:30px}.estimate-result>.section-label{color:var(--peach)}.estimate-result h2{font-size:17px;line-height:1.5;font-weight:500;margin:12px 0 20px}.estimate-total{font-size:clamp(32px,3.4vw,48px);font-weight:700;letter-spacing:-.05em;display:block;overflow-wrap:anywhere}.estimate-unit{font-size:13px;color:#d1d5c9}.estimate-lines{margin:28px 0 20px}.estimate-lines>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;border-top:1px solid #576158;padding:15px 0}.estimate-lines dt{font-size:13px;line-height:1.7}.estimate-lines dt small{display:block;font-size:11px;color:#c5cbbf}.estimate-lines dd{font-size:14px;font-weight:600;margin:0;white-space:nowrap}.estimate-notes{padding-left:17px;font-size:12px;color:#cdd1c6;line-height:1.8}.estimate-notes li+li{margin-top:8px}.estimate-result .btn{width:100%;justify-content:center;font:inherit;font-size:13px;cursor:pointer;min-height:50px;margin-top:12px}.estimate-result .btn-red{background:#b24b37;color:white;border-color:#b24b37}.estimate-result .btn-outline{color:var(--cream);border-color:#8c978b}.estimate-result .btn:disabled{cursor:not-allowed;opacity:.5}.estimate-result .estimate-disclaimer{font-size:11px;color:#cdd1c6;line-height:1.8;margin-top:18px}.estimate-status{font-size:13px;line-height:1.8;color:#f1d2a9;margin-top:12px}.estimate-status:empty{display:none}.estimate-result details{margin-top:20px;font-size:12px}.estimate-result summary{cursor:pointer;padding:10px 0}.estimate-result textarea{font:inherit;font-size:12px;line-height:1.7;width:100%;margin-top:12px;min-height:260px;resize:vertical;padding:12px;background:var(--cream);color:var(--ink)}.estimate-boundaries{border-top:1px solid var(--rule);padding:32px 0 60px;display:grid;grid-template-columns:1fr 1fr;gap:32px}.estimate-boundaries h2{font-size:21px;margin-bottom:14px}.estimate-boundaries p,.estimate-boundaries li{font-size:13px;line-height:1.9;color:var(--ink-soft)}.estimate-boundaries ul{padding-left:18px}.estimate-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--rule);background:var(--paper);padding:24px;margin:24px 0 32px}.estimate-banner strong{font-size:23px;letter-spacing:-.03em;display:block}.estimate-banner p{font-size:14px;margin-top:8px;color:var(--ink-soft);line-height:1.8}.estimate-banner .btn{flex:none}.estimate-form :is(input,select,button):focus-visible,.estimate-presets button:focus-visible,.estimate-result button:focus-visible{outline:3px solid var(--red);outline-offset:3px}
@media(max-width:900px){.estimate-layout{gap:24px}.estimate-result{padding:24px}.estimate-lines>div{grid-template-columns:1fr}.estimate-lines dd{font-size:17px}.estimate-banner{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.estimate-layout{grid-template-columns:1fr}.estimate-result{position:static}.estimate-hero{padding-top:28px}.estimate-two{gap:16px}.estimate-field label{min-height:38px;line-height:1.5}.estimate-total{font-size:40px}.estimate-lines>div{grid-template-columns:minmax(0,1fr) auto}.estimate-lines dd{font-size:14px}.estimate-boundaries{grid-template-columns:1fr;gap:24px}.estimate-hero>p:last-child{font-size:14px}.estimate-presets button{font-size:11px}.estimate-banner{padding:20px}.estimate-banner strong{font-size:21px}}
@media(max-width:380px){.estimate-two{grid-template-columns:1fr}.estimate-field label{min-height:0}.estimate-result{padding:20px}.estimate-lines>div{grid-template-columns:1fr}.estimate-total{font-size:35px}}

.estimate-mobile-summary{display:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#estimate-result{scroll-margin-top:100px}
@media(max-width:700px){.estimate-two{grid-template-columns:1fr}.estimate-field label{min-height:0}.estimate-mobile-summary{position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--ink);color:var(--cream);padding:12px 18px max(12px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #637061}.estimate-mobile-summary small{display:block;font-size:9px;color:#d1d5c9;letter-spacing:.03em}.estimate-mobile-summary strong{font-size:23px}.estimate-mobile-summary a{font-size:12px;color:var(--cream);border:1px solid #889285;padding:12px;white-space:nowrap}.estimate-page{padding-bottom:85px}.estimate-stepper{max-width:none}}
