:root{--ink:#151719;--muted:#62676c;--paper:#fff;--surface:#f4f5f5;--line:#dfe2e3;--accent:#151719;--radius:12px;--radius-panel:20px;--font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}button,input,select{font:inherit}textarea{font:inherit;border-radius:var(--radius);resize:vertical;border:1px solid #aeb4b7;width:100%;padding:10px 12px}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23383d41' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-position:right 16px center!important;background-repeat:no-repeat!important;padding-right:44px!important}select:disabled{opacity:.6}.quote-details{border-block:1px solid var(--line);margin:22px 0;padding:16px 0}.quote-identity{border-left:2px solid var(--line);overflow-wrap:anywhere;white-space:pre-line;margin:18px 0;padding-left:14px;font-size:14px}.quote-identity:empty{display:none}.quote-identity p{margin:4px 0}.estimate-heading h2{overflow-wrap:anywhere}.preset-actions{flex-wrap:wrap;gap:10px;display:flex}button,a,input,select,summary{outline-offset:4px}:focus-visible{outline:2px solid #16646c}.masthead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;height:102px;padding:18px max(32px,50vw - 620px);display:flex}.masthead img{object-fit:contain;width:206px;height:auto}.masthead span{letter-spacing:.15em;font-size:12px;font-weight:700}.workspace{max-width:1240px;margin:0 auto;padding:36px 32px 48px}.eyebrow{letter-spacing:.13em;margin:0 0 12px;font-size:12px;font-weight:700}h1{letter-spacing:-1.3px;margin:0 0 16px;font-size:38px;line-height:1.15}h1 span{color:var(--muted)}.intro>p:last-child{color:var(--muted);margin:0}.calculator-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:46px;display:grid}.form-panel{border-top:3px solid var(--ink);padding-top:24px}.section-heading{align-items:center;gap:14px;display:flex}.section-number{border:1px solid var(--line);font-variant-numeric:tabular-nums;padding:5px 9px;font-size:12px}h2{letter-spacing:-.5px;margin:0;font-size:23px}.field{flex-direction:column;gap:7px;margin:22px 0 0;font-size:14px;font-weight:600;display:flex}input,select{border-radius:var(--radius);width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #aeb4b7;padding:10px 12px}.help{color:var(--muted);margin:8px 0;font-size:14px}.estimate-panel{background:var(--ink);color:#fff;padding:28px;position:sticky;top:24px}.estimate-panel>.eyebrow{color:#bbc0c2}.estimate-panel>p:not(.total):not(.eyebrow){color:#c3c8ca;font-size:14px}.total{letter-spacing:-1.5px;font-variant-numeric:tabular-nums;margin:12px 0 0;font-size:42px;font-weight:700;line-height:1.2}.summary-rule{background:#45494c;height:1px;margin:24px 0}.stat{justify-content:space-between;gap:20px;padding:9px 0;font-size:14px;display:flex}.aside-note{border-top:1px solid #45494c;margin-top:24px;padding-top:20px}@media (max-width:800px){.calculator-grid{grid-template-columns:1fr;gap:26px}.estimate-panel{position:static}.masthead{height:86px;padding:16px 20px}.masthead img{width:165px}.masthead span{display:none}.workspace{padding:26px 20px}h1{font-size:32px}}button{cursor:pointer;border-radius:var(--radius)}button:disabled{opacity:.5;cursor:not-allowed}.text-button{text-underline-offset:4px;color:inherit;background:0 0;border:0;padding:8px 0;font-size:14px;text-decoration:underline}.masthead>span{margin-left:auto;margin-right:24px}.intro{margin-bottom:26px}h1{letter-spacing:-1px;font-size:34px}.steps{border-bottom:1px solid var(--line);gap:0;margin:0 0 30px;display:flex}.steps button{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;margin-right:28px;padding:15px 24px 15px 0;font-size:14px;font-weight:600}.steps button>span{color:#737a80;margin-right:10px;font-size:12px;font-weight:400}.steps .active{border-bottom-color:var(--ink);color:var(--ink)}.form-panel{border-top:0;min-width:0;padding-top:0}.section-heading{justify-content:space-between}.section-heading h2{outline:none}.step-counter{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px}.section-intro{color:var(--muted);margin:8px 0}.field-grid{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.field .help{margin:0;font-weight:400}.inline-field{border:0;margin:22px 0 0;padding:0}.inline-field legend{margin-bottom:8px;font-size:14px;font-weight:600}.segmented{border-radius:var(--radius);border:1px solid #aeb4b7;width:fit-content;display:flex;overflow:hidden}.segmented label{cursor:pointer;padding:9px 18px;font-size:14px;position:relative}.segmented .active{background:var(--ink);color:#fff}.segmented input{opacity:0;width:1px;height:1px;min-height:0;position:absolute}.segmented label:has(input:focus-visible){outline-offset:-3px;outline:2px solid #168899}.primary,.secondary{border:1px solid var(--ink);min-height:46px;padding:11px 18px;font-size:14px;font-weight:600}.primary{background:var(--ink);color:#fff}.primary:hover{background:#383d41}.secondary{color:var(--ink);background:#fff}.secondary:hover{background:var(--surface)}.form-navigation{border-top:1px solid var(--line);justify-content:space-between;gap:16px;margin-top:28px;padding-top:22px;display:flex}.included-service{border-block:1px solid var(--line);margin-top:22px;padding:18px 0}.included-service>span{float:right;text-transform:uppercase;letter-spacing:.07em;font-size:12px;font-weight:700}.included-service p{color:var(--muted);margin:5px 0 0;font-size:14px}.service-option{border-bottom:1px solid var(--line);cursor:pointer;align-items:flex-start;gap:14px;padding:18px 0;display:flex}input[type=checkbox]{width:19px;height:19px;min-height:19px;accent-color:var(--ink);flex-shrink:0;margin:3px 0 0;padding:0}.option-content{flex-direction:column;gap:5px;display:flex}.option-title{font-size:16px;font-weight:600}.option-description{color:var(--muted);font-size:14px}.tag{border:1px solid var(--line);vertical-align:middle;text-transform:uppercase;letter-spacing:.03em;margin-left:10px;padding:2px 6px;font-size:12px;font-weight:500;display:inline-block}.inset{background:var(--surface);border-left:2px solid var(--ink);margin-top:20px;padding:0 20px 20px}.inline-notice,.assumption-text{background:var(--surface);color:#484e52;border-left:2px solid #9ea5a9;margin:16px 0;padding:12px 16px;font-size:14px}.area-result{border-block:1px solid var(--line);justify-content:space-between;gap:14px;padding:16px 0;font-size:14px;display:flex}.conditions-table{margin-top:24px}.conditions-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 95px 95px;align-items:center;gap:12px;padding:14px 0;font-size:14px;display:grid}.conditions-row label{text-align:center}.conditions-head{color:var(--muted);font-size:12px;line-height:1.35}.conditions-head span:not(:first-child){text-align:center}.subsection{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}h3{margin:0 0 12px;font-size:16px}.rough-label{color:var(--muted);margin-left:8px;font-size:12px;font-weight:400}.check-line{align-items:center;gap:10px;margin-top:20px;font-size:14px;display:flex}.rates-details,.method{border-block:1px solid var(--line);margin-top:24px;padding:16px 0;font-size:14px}summary{cursor:pointer;font-size:15px;font-weight:600}.rates-details .text-button{margin-top:14px}.estimate-status{color:#bbc0c2;margin:8px 0 0;font-size:14px}.total{overflow-wrap:anywhere;font-size:38px}.effort-stats{grid-template-columns:1fr 1fr;gap:20px;display:grid}.effort-stats>div{flex-direction:column;display:flex}.effort-stats strong{font-variant-numeric:tabular-nums;letter-spacing:-.5px;font-size:26px}.effort-stats span{color:#bbc0c2;font-size:12px}.effort-caption{margin:12px 0;font-size:12px!important}.effort-details{color:#c3c8ca;border-top:1px solid #45494c;padding-top:14px;font-size:12px}.effort-details summary{color:#fff;font-size:13px}.effort-details dl{margin:16px 0}.effort-details dl>div{justify-content:space-between;gap:12px;margin:8px 0;display:flex}.effort-details dd{white-space:nowrap;margin:0}.trip-breakdown{font-size:13px}.trip-breakdown ul{padding:0;list-style:none}.trip-breakdown li{flex-direction:column;padding:6px 0;display:flex}.trip-breakdown li span:first-child{font-weight:600}.rate-options label{flex-direction:column;flex:1;gap:3px;display:flex}.rate-options span{font-size:12px}.scope-list{color:#d4d8d9;margin:24px 0;padding:0;font-size:14px;list-style:none}.scope-list li{border-top:1px solid #383d40;padding:8px 0}.scope-list li:before{content:"✓";padding-right:10px;font-size:12px}.aside-button{color:#fff;background:0 0;border:1px solid #747b7f;width:100%;min-height:44px;padding:11px;font-size:14px}.aside-button:hover{background:#303539}.aside-note{line-height:1.7;font-size:12px!important}.custom-rate{margin-bottom:0;font-size:12px!important}.estimate-heading{margin-top:22px}.estimate-heading h2{font-size:21px}.currency-label{color:var(--muted);margin-top:8px;font-size:12px;display:block}.project-facts{color:var(--muted);flex-wrap:wrap;gap:8px 16px;padding:18px 0;font-size:13px;display:flex}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{border-bottom:1px solid var(--line);vertical-align:top;text-align:right;font-variant-numeric:tabular-nums;padding:13px 8px}th:first-child,td:first-child{text-align:left;padding-left:0}td:last-child,th:last-child{padding-right:0}thead th{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:500}td strong{font-size:14px;font-weight:500}td small{color:var(--muted);margin-top:3px;font-size:12px;display:block}td:not(:first-child){white-space:nowrap}tfoot th,tfoot td{border-top:2px solid var(--ink);font-size:16px;font-weight:700}.deliverables{margin-top:26px}.deliverables ul,.notice ul{color:#4a5054;padding-left:20px;font-size:14px}.deliverables li,.notice li{margin:8px 0}.notice{background:var(--surface);border-left:2px solid #91989c;margin:22px 0;padding:16px 18px}.notice ul{margin-bottom:0}.print-button{margin-top:22px}.error{color:#9e2727;background:#fff5f5;margin-top:20px;padding:12px;font-size:14px}.footer{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;gap:15px;margin-top:48px;padding-top:22px;font-size:12px;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{color:#000;z-index:20;background:#fff;padding:10px;position:absolute;top:-60px;left:16px}.skip-link:focus{top:8px}.print-only{display:none}@media (max-width:1050px){.calculator-grid{grid-template-columns:minmax(0,1fr) 320px;gap:28px}.estimate-panel{padding:24px}.steps button{margin-right:20px;padding-right:10px}.tag{width:fit-content;margin:6px 0 0;display:block}}@media (max-width:800px){.calculator-grid{grid-template-columns:1fr}.steps{overflow-x:auto}.steps button{white-space:nowrap;flex:1;margin-right:18px;padding:12px 0}.steps button>span{text-align:left;margin:0 0 4px;display:block}.intro h1{font-size:30px}.estimate-panel{position:static}.footer{flex-direction:column}.masthead>span{display:none}}@media (max-width:420px){.field-grid{grid-template-columns:1fr;gap:0}.masthead img{width:140px}.text-button{font-size:13px}.workspace{padding:24px 16px}.steps button{margin-right:14px;font-size:13px}.conditions-row{grid-template-columns:minmax(0,1fr) 70px 70px;gap:6px}.primary,.secondary{padding:10px 13px}}@media print{@page{margin:16mm}body{font-size:11pt}.no-print,.intro,.skip-link{display:none!important}.print-only{display:block}.masthead{height:70px;padding:0}.masthead img{width:170px}.workspace{max-width:none;padding:20px 0}.calculator-grid{display:none}.table-scroll{overflow:visible}tr,.notice,.deliverables{break-inside:avoid}.method{display:none}.footer{margin-top:24px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}body{background:#fafafa}.masthead{background:#fffffff0}input,select,textarea{border-color:#d0d3d6;min-height:48px;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 2px #00000005}input:hover,select:hover,textarea:hover{border-color:#aeb4ba}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px;border-color:#547980;outline:3px solid #54798033}.estimate-panel{border-radius:var(--radius-panel);box-shadow:0 6px 24px #0000000d}.segmented{background:#eceef0;border:1px solid #e2e4e7;border-radius:14px;gap:4px;padding:4px}.segmented label{border-radius:10px;padding:9px 16px}.segmented .active{color:var(--ink);background:#fff;box-shadow:0 1px 5px #0000001a}.rate-options label+label{border-left:0}.rate-options{width:100%}.service-option{border-radius:var(--radius);background:#fff;border:1px solid #e1e3e6;margin-top:10px;padding:16px}.service-option.selected{background:#f0f3f4;border-color:#adb6bb}.service-option:hover{border-color:#aab2b8}.tag{text-transform:none;background:#fff;border-radius:6px}.included-service,.inset,.inline-notice,.assumption-text,.notice,.error{border-radius:var(--radius)}.included-service{background:#f0f3f4;border:1px solid #e1e3e6;padding:18px}.inset{padding-top:1px}.steps{background:#eceef0;border:0;border-radius:14px;gap:5px;padding:5px}.steps button{text-align:left;border:0;border-radius:10px;flex:1;margin:0;padding:11px 12px}.steps .active{background:#fff;box-shadow:0 1px 5px #00000012}.primary,.secondary,.aside-button{border-radius:var(--radius)}.service-choices{border:0;gap:10px;margin:22px 0;padding:0;display:grid}.service-choice{cursor:pointer;background:#fff;border:1px solid #dfe2e5;border-radius:14px;align-items:flex-start;gap:12px;padding:17px;display:flex;position:relative}.service-choice.selected{background:#edf2f4;border-color:#62757e;box-shadow:0 0 0 1px #62757e}.service-choice input{width:18px;height:18px;min-height:18px;accent-color:var(--ink);box-shadow:none;flex-shrink:0;margin:3px 0 0;padding:0}.service-choice strong,.service-choice small{display:block}.service-choice small{color:var(--muted);margin-top:5px;font-size:14px;font-weight:400}@media (max-width:800px){.steps button{white-space:normal;margin:0;padding:10px 8px}}@media (prefers-reduced-motion:reduce){input,select,textarea{transition:none}}.select-control{min-width:0;position:relative}.select-trigger{width:100%;min-height:48px;color:var(--ink);text-align:left;background:#fff;border:1px solid #d0d3d6;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex;box-shadow:0 1px 2px #00000005}.select-trigger svg{flex-shrink:0}.select-trigger:hover{border-color:#aeb4ba}.select-trigger:focus-visible{outline-offset:1px;border-color:#547980;outline:3px solid #54798033}.select-menu{z-index:30;overscroll-behavior:contain;background:#fff;border:1px solid #dfe2e3;border-radius:14px;max-height:280px;margin:0;padding:5px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 32px #00000020}.select-menu li{cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:500;display:flex}.select-menu li.highlighted{color:#151719;background:#edf2f4}.download-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}@media (max-width:800px){input:not([type=checkbox]):not([type=radio]),textarea,.select-trigger{font-size:16px}}
