@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--text-xs:.75rem;--text-sm:.875rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.rounded{border-radius:.25rem}.uppercase{text-transform:uppercase}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--color-ink:#14241f;--color-ink-soft:#4f6059;--color-ink-subtle:#596861;--color-forest:#1a5040;--color-forest-strong:#10382d;--color-forest-deep:#0b2c24;--color-forest-soft:#dce9e2;--color-forest-pale:#edf4ef;--color-clay:#c15436;--color-clay-dark:#983b27;--color-clay-soft:#f8e4dc;--color-sand:#f3f0e8;--color-sand-deep:#e9e4d9;--color-paper:#fffdfa;--color-line:#d7d3c8;--color-line-strong:#b9c0bb;--color-warning:#765017;--color-warning-bg:#fff4d8;--color-error:#932d25;--color-error-bg:#fff0ed;--font-body:"Segoe UI Variable Text", "Aptos", "Segoe UI", system-ui, -apple-system, sans-serif;--font-display:"Segoe UI Variable Display", "Aptos Display", "Segoe UI", system-ui, sans-serif;--text-xs:.78rem;--text-sm:.88rem;--text-body:1rem;--text-lead:clamp(1.08rem, 1.8vw, 1.3rem);--text-h3:clamp(1.18rem, 2vw, 1.35rem);--text-h2:clamp(1.75rem, 3.2vw, 2.65rem);--text-h1:clamp(2.25rem, 5.3vw, 4.15rem);--space-1:.35rem;--space-2:.6rem;--space-3:.85rem;--space-4:1.1rem;--space-5:1.5rem;--space-6:2rem;--space-7:2.75rem;--space-8:3.75rem;--section-space:clamp(3.75rem, 7vw, 6.5rem);--radius-sm:.5rem;--radius-md:.8rem;--radius-lg:1.15rem;--shadow-sm:0 1px 2px #14241f12, 0 8px 24px #14241f09;--shadow-md:0 18px 42px #14241f1a;--content-width:72rem;--reading-width:47rem;--transition:.16s ease}.laminate-workspace,.laminate-form,.laminate-result,.laminate-room-list,.laminate-room-card,.laminate-ledger-list,.laminate-evidence-line,.window-workspace,.window-form,.window-result,.window-group-list,.window-group-card,.window-benchmark-list,.window-performance-list,.window-performance-card,.bathroom-scope-workspace,.bathroom-scope-form,.bathroom-scope-result,.bathroom-scope-map,.bathroom-scope-map article,.bathroom-ventilation-counts,.bathroom-component-list{min-width:0}.bathroom-scope-workspace{grid-template-columns:minmax(0,1fr)}.bathroom-calculator-field-group+.bathroom-calculator-field-group{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-line)}.bathroom-calculator-field-group>h3{margin:0 0 var(--space-2);color:var(--color-forest-strong);align-items:center;gap:.65rem;display:flex}.bathroom-calculator-field-group>h3 span{color:#fff;background:var(--color-forest);border-radius:50%;flex:none;place-items:center;width:1.75rem;height:1.75rem;font-size:.8rem;display:inline-grid}.bathroom-calculator-group-intro{margin:0 0 var(--space-4);color:var(--color-ink-soft);line-height:1.55}.bathroom-ventilation-counts{margin:var(--space-5) 0 0;padding:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-sm)}.bathroom-ventilation-counts legend{max-width:100%;color:var(--color-forest-strong);overflow-wrap:anywhere;padding:0 .35rem;font-weight:750}.bathroom-ventilation-counts>p{margin:0 0 var(--space-4);color:var(--color-ink-soft);font-size:.86rem}.bathroom-component-list{margin:var(--space-4) 0 0;flex-wrap:wrap;gap:.45rem;padding:0;list-style:none;display:flex}.bathroom-component-list li{color:#d9e4df;overflow-wrap:anywhere;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;max-width:100%;padding:.35rem .6rem;font-size:.76rem}.bathroom-scope-map{gap:var(--space-3);display:grid}.bathroom-scope-map article{padding:var(--space-3);background:#ffffff0f;border-left:3px solid #eaa086}.bathroom-scope-map article>div{justify-content:space-between;align-items:start;gap:var(--space-3);min-width:0;display:flex}.bathroom-scope-map strong,.bathroom-scope-map span,.bathroom-scope-map p{overflow-wrap:anywhere}.bathroom-scope-map span{color:#f8e5bd;letter-spacing:.05em;text-align:right;text-transform:uppercase;background:#ffffff14;border-radius:999px;flex:0 auto;max-width:55%;padding:.2rem .42rem;font-size:.65rem;font-weight:800}.bathroom-scope-map p{color:#c5d5ce;margin:.4rem 0 0;font-size:.8rem;line-height:1.45}.laminate-workspace .estimate-panel{position:static}.laminate-room-list{gap:var(--space-4);display:grid}.laminate-room-card{padding:var(--space-4);background:var(--color-forest-pale);border-radius:var(--radius-sm);border:1px solid #c5d5cc;margin:0}.laminate-room-card legend{max-width:100%;color:var(--color-forest-strong);overflow-wrap:anywhere;padding:0 .35rem;font-size:.78rem;font-weight:800}.laminate-room-card-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-ink-soft);font-size:.78rem;font-weight:750;display:flex}.laminate-remove-room,.laminate-add-room{min-height:2.6rem;padding:.5rem .75rem}.laminate-remove-room:disabled,.laminate-add-room:disabled{cursor:not-allowed;opacity:.52}.laminate-room-name{margin-bottom:var(--space-4)}.optional-label{color:var(--color-ink-soft);font-size:.78rem;font-weight:500}.laminate-room-dimensions{gap:var(--space-3)}.laminate-add-room{margin-top:var(--space-4)}.laminate-conditional-fields{margin-top:var(--space-4);padding:var(--space-4);background:var(--color-forest-pale);border-radius:var(--radius-sm);border:1px solid #c5d5cc}.laminate-result .estimate-total{overflow-wrap:anywhere;white-space:normal;max-width:100%}.breakdown-line dt small{color:#adc2b9;margin-top:.12rem;font-size:.72rem;font-weight:500;line-height:1.4;display:block}.laminate-subtotal-line{margin-top:var(--space-3);color:#fff;border-radius:var(--radius-sm);background:#ffffff1a;border:1px solid #fff3;padding:.9rem;font-weight:800}.laminate-model-notes{margin-top:var(--space-4)}.laminate-scope-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.laminate-scope-list li{color:#d9e4df;border-radius:var(--radius-sm);overflow-wrap:anywhere;background:#ffffff13;border:1px solid #ffffff26;gap:.25rem;min-width:0;padding:.8rem .9rem;font-size:.78rem;line-height:1.45;display:grid}.laminate-scope-list strong{color:#fff;font-size:.84rem}.laminate-process-source{margin:var(--space-4) 0 0;color:#adc2b9;font-size:.78rem;line-height:1.5}.laminate-process-source a,.laminate-evidence-source a{color:#fff;text-underline-offset:.16em;text-decoration:underline}.laminate-process-source a:focus-visible,.laminate-evidence-source a:focus-visible,.laminate-evidence-line summary:focus-visible{outline-offset:3px;outline:3px solid #eaa086}.laminate-ledger-list{gap:var(--space-3);display:grid}.laminate-evidence-line{color:#d9e4df;border-radius:var(--radius-sm);background:#ffffff0f;border:1px solid #ffffff2e}.laminate-evidence-line summary{color:#fff;cursor:pointer;overflow-wrap:anywhere;gap:.3rem;padding:.85rem .9rem;font-size:.84rem;line-height:1.4;display:grid}.laminate-evidence-line summary::marker{color:#f4b49f}.laminate-evidence-line summary strong{color:#f4b49f;letter-spacing:.03em;text-transform:uppercase;font-size:.7rem}.laminate-evidence-line[open] summary{border-bottom:1px solid #ffffff29}.laminate-evidence-content{overflow-wrap:anywhere;gap:.55rem;padding:.9rem;font-size:.78rem;line-height:1.5;display:grid}.laminate-evidence-content p{margin:0}.laminate-evidence-content b{color:#fff}.laminate-overlap-note{color:#ffe2aa;background:#ffc15214;border-left:3px solid #f4b49f;padding:.6rem .7rem}.laminate-evidence-source{border-top:1px solid #ffffff24;gap:.45rem;margin-top:.2rem;padding-top:.7rem;display:grid}.laminate-warning-box{margin-top:var(--space-5)}.window-group-list,.window-benchmark-list,.window-performance-list{gap:var(--space-4);display:grid}.window-group-card{padding:var(--space-4);background:var(--color-forest-pale);border-radius:var(--radius-sm);border:1px solid #c5d5cc;margin:0}.window-group-card legend{max-width:100%;color:var(--color-forest-strong);overflow-wrap:anywhere;padding:0 .35rem;font-size:.78rem;font-weight:800}.window-group-card-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-ink-soft);font-size:.78rem;font-weight:750;display:flex}.window-remove-group,.window-add-group{min-height:2.6rem;padding:.5rem .75rem}.window-remove-group:disabled,.window-add-group:disabled{cursor:not-allowed;opacity:.52}.window-add-group,.window-conditional-fields,.window-pathway-block,.window-details-grid{margin-top:var(--space-4)}.window-conditional-fields,.window-pathway-block{padding:var(--space-4);border-radius:var(--radius-sm);background:#fff;border:1px solid #c5d5cc}.window-pathway-block{gap:var(--space-4);display:grid}.window-group-details{margin-top:var(--space-4);padding:0 var(--space-4);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-sm)}.window-group-details summary{color:var(--color-forest-strong);cursor:pointer;padding:.8rem 0;font-size:.84rem;font-weight:780}.window-group-details summary:focus-visible{outline:3px solid var(--color-forest);outline-offset:3px}.window-details-grid{padding-bottom:var(--space-4)}.window-inventory-list{margin-top:var(--space-4)}.window-performance-card{color:#d9e4df;border-radius:var(--radius-sm);overflow-wrap:anywhere;background:#ffffff13;border:1px solid #ffffff26;padding:.85rem .9rem}.window-performance-card h4{color:#fff;margin:0 0 .55rem;font-size:.9rem}.window-performance-card p{margin:0;font-size:.78rem;line-height:1.5}.window-performance-card p+p{margin-top:.35rem}.window-performance-card b{color:#fff}@media (min-width:36rem){.laminate-room-dimensions{grid-template-columns:repeat(3,minmax(0,1fr))}.laminate-evidence-line summary{grid-template-columns:minmax(0,1fr) auto;align-items:baseline}.window-pathway-block{grid-template-columns:repeat(2,minmax(0,1fr))}}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-sand);scroll-padding-top:5.5rem}body{min-height:100vh;color:var(--color-ink);background:var(--color-sand);font-family:var(--font-body);font-size:var(--text-body);text-rendering:optimizelegibility;margin:0;line-height:1.62}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:.08em}:focus-visible{outline-offset:3px;outline:3px solid #e27b5b}::selection{color:#fff;background:var(--color-forest)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;color:#fff;background:var(--color-forest-strong);border-radius:var(--radius-sm);padding:.72rem 1rem;font-weight:750;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.container{width:min(calc(100% - 2rem), var(--content-width));margin-inline:auto}main{min-height:65vh}h1,h2,h3{color:var(--color-ink);font-family:var(--font-display);letter-spacing:-.035em;margin-top:0;font-weight:780;line-height:1.08}h1{max-width:19ch;margin-bottom:var(--space-4);font-size:var(--text-h1)}h2{margin-bottom:var(--space-4);font-size:var(--text-h2)}h3{margin-bottom:var(--space-2);font-size:var(--text-h3)}.lead{max-width:62ch;color:var(--color-ink-soft);font-size:var(--text-lead);margin:0;line-height:1.58}.eyebrow{margin:0 0 var(--space-4);color:var(--color-clay-dark);font-size:var(--text-xs);letter-spacing:.105em;text-transform:uppercase;align-items:center;gap:.55rem;font-weight:820;line-height:1.3;display:inline-flex}.eyebrow:before{background:var(--color-clay);content:"";flex:none;width:1.35rem;height:2px}.text-link{color:var(--color-forest);align-items:center;gap:.35rem;font-weight:750;text-decoration:none;display:inline-flex}.text-link span{transition:transform var(--transition)}.text-link:hover{color:var(--color-forest-strong);text-decoration:underline}.text-link:hover span{transform:translate(.15rem)}.site-header{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdfaf0;border-bottom:1px solid #14241f1f;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:var(--space-5);min-height:4.15rem;display:flex;position:relative}.brand{color:var(--color-ink);letter-spacing:-.025em;align-items:center;gap:.7rem;font-weight:790;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;background:var(--color-forest);letter-spacing:.02em;border-radius:.62rem .62rem .62rem .22rem;place-items:center;width:2.15rem;height:2.15rem;font-size:.69rem;font-weight:850;display:grid;position:relative;overflow:hidden}.brand-mark:after{content:"";border:1px solid #ffffff47;border-radius:50%;width:.9rem;height:.9rem;position:absolute;bottom:-.25rem;right:-.2rem}.brand-mark span{z-index:1;position:relative}.brand-name{font-size:1.02rem}.desktop-nav,.us-desktop-nav{align-items:center;gap:.1rem;display:none}.market-nav{align-items:center;gap:.1rem;display:flex}.nav-link{min-height:2.75rem;color:var(--color-ink-soft);border-radius:var(--radius-sm);transition:color var(--transition), background-color var(--transition);padding:.6rem .78rem;font-size:.92rem;font-weight:680;text-decoration:none;display:block;position:relative}.nav-link:hover,.nav-link-active{color:var(--color-forest-strong);background:var(--color-forest-pale)}.us-nav-dropdown{position:relative}.us-nav-dropdown-trigger,.us-mobile-nav-trigger{border:0;font-family:inherit}.us-nav-dropdown-trigger{cursor:pointer;background:0 0;align-items:center;gap:.35rem;display:inline-flex}.us-nav-dropdown-trigger:hover,.us-nav-dropdown-trigger[aria-expanded=true]{color:var(--color-forest-strong);background:var(--color-forest-pale)}.us-nav-chevron{transition:transform var(--transition);font-size:.72rem;display:inline-block}[aria-expanded=true]>.us-nav-chevron{transform:rotate(180deg)}.us-nav-dropdown-panel{z-index:10;background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);width:min(34rem,100vw - 2rem);box-shadow:var(--shadow-md);padding:.75rem;position:absolute;top:calc(100% + .55rem)}.us-nav-dropdown-panel[hidden],.us-mobile-nav-links[hidden]{display:none}.us-nav-dropdown-panel-calculators{left:0}.us-nav-dropdown-panel-cost-guides{right:0}.us-nav-dropdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;display:grid}.us-nav-dropdown-link,.us-nav-dropdown-all,.us-mobile-nav-link,.us-mobile-nav-all{color:var(--color-ink-soft);border-radius:var(--radius-sm);align-items:center;font-weight:680;line-height:1.35;text-decoration:none;display:flex}.us-nav-dropdown-link{min-height:2.9rem;padding:.65rem .75rem;font-size:.9rem}.us-nav-dropdown-link:hover,.us-nav-dropdown-all:hover,.us-mobile-nav-link:hover,.us-mobile-nav-all:hover{color:var(--color-forest-strong);background:var(--color-forest-pale)}.us-nav-dropdown-all{min-height:2.75rem;color:var(--color-forest);border-top:1px solid var(--color-line);border-radius:0 0 var(--radius-sm) var(--radius-sm);margin-top:.6rem;padding:.65rem .75rem;font-size:.88rem}.mobile-navigation{position:relative}.menu-button{cursor:pointer;min-height:2.85rem;color:var(--color-ink);background:var(--color-paper);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);align-items:center;gap:.55rem;padding:.55rem .78rem;font-weight:740;display:inline-flex}.menu-button:hover,.menu-button[aria-expanded=true]{color:var(--color-forest-strong);border-color:var(--color-forest);background:var(--color-forest-pale)}.menu-icon{gap:.2rem;width:1rem;display:grid}.menu-icon span{background:currentColor;border-radius:2px;height:2px;display:block}.mobile-menu-panel{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);width:min(19rem,100vw - 2rem);box-shadow:var(--shadow-md);padding:.6rem;display:grid;position:absolute;top:calc(100% + .55rem);right:0}.mobile-menu-panel .nav-link{min-height:3rem;padding:.72rem .85rem}.us-mobile-menu-panel{max-height:min(42rem,100vh - 5.5rem);overflow-y:auto}.us-mobile-nav-group{border-bottom:1px solid var(--color-line)}.us-mobile-nav-trigger{cursor:pointer;width:100%;min-height:3rem;color:var(--color-ink-soft);border-radius:var(--radius-sm);text-align:left;background:0 0;justify-content:space-between;align-items:center;padding:.72rem .85rem;font-size:.92rem;font-weight:740;display:flex}.us-mobile-nav-trigger:hover,.us-mobile-nav-trigger[aria-expanded=true]{color:var(--color-forest-strong);background:var(--color-forest-pale)}.us-mobile-nav-links{gap:.12rem;padding:.2rem 0 .65rem .65rem;display:grid}.us-mobile-nav-link,.us-mobile-nav-all{min-height:2.65rem;padding:.58rem .7rem;font-size:.86rem}.us-mobile-nav-all{color:var(--color-forest);border-top:1px solid var(--color-line)}.button{cursor:pointer;min-height:3rem;color:var(--color-ink);border-radius:var(--radius-sm);text-align:center;transition:color var(--transition), background-color var(--transition), border-color var(--transition), box-shadow var(--transition), transform var(--transition);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.72rem 1.1rem;font-weight:760;line-height:1.25;text-decoration:none;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{color:#fff;background:var(--color-clay);box-shadow:0 8px 18px #c154362e}.button-primary:hover{background:var(--color-clay-dark);box-shadow:0 10px 24px #983b2738}.button-secondary{color:var(--color-forest-strong);background:0 0;border-color:#1a50406b}.button-secondary:hover{background:var(--color-forest-pale);border-color:var(--color-forest)}.button-block{width:100%}.hero{background:var(--color-sand);border-bottom:1px solid var(--color-line);padding:clamp(3.2rem,6vw,5.3rem) 0 0;overflow:hidden}.hero-grid{gap:var(--space-7);align-items:center;display:grid}.hero h1{max-width:16ch;margin-bottom:var(--space-5);font-size:clamp(2.55rem,6.1vw,4.75rem)}.hero-copy .lead{max-width:53ch}.hero-actions{margin-top:var(--space-6);gap:var(--space-3);flex-wrap:wrap;display:flex}.product-preview{color:#fff;background:var(--color-forest-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid #ffffff14;overflow:hidden}.product-preview-header{border-bottom:1px solid #ffffff26;padding:1.55rem 1.55rem 1.35rem}.status-label{color:#f4b49f;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.45rem;margin-bottom:1rem;font-size:.73rem;font-weight:820;display:inline-flex}.status-label>span{background:#f4b49f;border-radius:50%;width:.48rem;height:.48rem;box-shadow:0 0 0 .25rem #f4b49f1f}.product-preview-header strong{color:#fff;font-family:var(--font-display);letter-spacing:-.035em;margin-bottom:.25rem;font-size:clamp(1.5rem,3vw,2rem);line-height:1.12;display:block}.product-preview-header p{color:#cbdad4;margin:0}.preview-list{margin:0}.preview-list div{border-bottom:1px solid #ffffff1a;grid-template-columns:2.4rem minmax(0,1fr);gap:.65rem;padding:.85rem 1.55rem;display:grid}.preview-list div:last-child{border-bottom:0}.preview-list dt,.preview-list dd{margin:0}.preview-list dt{color:#f4b49f;letter-spacing:.06em;font-size:.73rem;font-weight:800}.preview-list dd{color:#e5eee9;font-size:.92rem}.assurance-strip{border-top:1px solid var(--color-line);color:var(--color-ink-soft);font-size:var(--text-sm);gap:.65rem;margin-top:clamp(2.5rem,5vw,4.25rem);padding:1rem 0;font-weight:650;display:grid}.assurance-strip span{align-items:center;gap:.55rem;display:flex}.assurance-strip span:before{background:var(--color-clay);content:"";border-radius:50%;flex:none;width:.4rem;height:.4rem}.section{padding:var(--section-space) 0}.section-compact{padding:var(--space-7) 0}.section-paper{background:var(--color-paper);border-block:1px solid var(--color-line)}.section-heading{margin-bottom:var(--space-7);justify-content:space-between;align-items:end;gap:var(--space-5);display:flex}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{margin-bottom:var(--space-3)}.section-heading>.text-link{flex:none}.card-grid{gap:var(--space-4);display:grid}.tool-card{min-height:14.2rem;color:inherit;background:var(--color-paper);border:1px solid var(--color-line);border-top:3px solid var(--color-forest);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);flex-direction:column;padding:1.35rem 1.3rem 1.2rem;text-decoration:none;display:flex;position:relative}.tool-card:hover{border-color:#1a50409e;border-top-color:var(--color-clay);box-shadow:var(--shadow-md);transform:translateY(-3px)}.tool-card-marker{width:2rem;height:2rem;color:var(--color-forest-strong);background:var(--color-forest-soft);border-radius:50%;place-items:center;margin-bottom:1.2rem;font-size:.72rem;font-weight:850;display:inline-grid}.tool-card h2,.tool-card h3{letter-spacing:-.025em;margin-bottom:.55rem;font-size:1.28rem}.tool-card p{margin:0 0 var(--space-5);color:var(--color-ink-soft);font-size:.94rem;line-height:1.52}.tool-card-cta{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-forest);font-size:var(--text-sm);margin-top:auto;font-weight:760;display:flex}.tool-card-cta>span{color:var(--color-clay-dark);transition:transform var(--transition);font-size:1.15rem}.tool-card:hover .tool-card-cta>span{transform:translate(.2rem)}.process-layout{gap:var(--space-7);display:grid}.process-intro>p:last-child{max-width:37rem;color:var(--color-ink-soft);margin:0}.steps{gap:var(--space-6);counter-reset:steps;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:steps;padding-left:3.15rem;position:relative}.steps li:before{color:#fff;background:var(--color-forest);content:counter(steps, decimal-leading-zero);border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;font-size:.75rem;font-weight:820;display:grid;position:absolute;top:-.15rem;left:0}.steps strong{margin-bottom:.25rem;font-size:1.05rem;display:block}.steps p{color:var(--color-ink-soft);margin:0;font-size:.94rem}.explain-grid{gap:var(--space-7);display:grid}.explain-block{padding-block:var(--space-4)}.explain-block h2{max-width:18ch}.explain-block p:not(.eyebrow){max-width:54ch;color:var(--color-ink-soft)}.explain-block-accent{background:var(--color-forest-pale);border-left:4px solid var(--color-forest);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:clamp(1.5rem,4vw,2.4rem)}.guide-grid{gap:var(--space-3);display:grid}.guide-card{min-width:0;min-height:12.5rem;color:inherit;background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-sm);transition:background-color var(--transition), border-color var(--transition), box-shadow var(--transition), transform var(--transition);flex-direction:column;padding:1.2rem;text-decoration:none;display:flex}.guide-card:hover{box-shadow:var(--shadow-sm);background:#fff;border-color:#1a50408c;transform:translateY(-2px)}.guide-topic{color:var(--color-clay-dark);letter-spacing:.055em;text-overflow:ellipsis;text-transform:uppercase;margin-bottom:.8rem;font-size:.72rem;font-weight:800;line-height:1.35;display:block;overflow:hidden}.guide-card strong{line-height:1.35;display:block}.guide-card>span:not(.guide-topic):not(.guide-card-link){color:var(--color-ink-soft);font-size:var(--text-sm);margin-top:.45rem;display:block}.guide-card-link{padding-top:var(--space-4);color:var(--color-forest);justify-content:space-between;align-items:center;margin-top:auto;font-size:.82rem;font-weight:760;display:flex}.calculator-discovery-grid{gap:var(--space-3);display:grid}.calculator-discovery-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-sm);min-width:0;min-height:19rem;box-shadow:var(--shadow-sm);flex-direction:column;padding:1.25rem;display:flex}.calculator-discovery-card h3{margin-bottom:.55rem;font-size:1.18rem}.calculator-discovery-card>p:not(.guide-topic){color:var(--color-ink-soft);font-size:var(--text-sm);margin:0}.calculator-discovery-card dl{margin:var(--space-4) 0;gap:.75rem;display:grid}.calculator-discovery-card dl div{gap:.15rem;display:grid}.calculator-discovery-card dt{color:var(--color-forest-strong);letter-spacing:.055em;text-transform:uppercase;font-size:.7rem;font-weight:820}.calculator-discovery-card dd{color:var(--color-ink-soft);margin:0;font-size:.82rem;line-height:1.5}.calculator-discovery-card>.text-link{margin-top:auto}.home-calculator-section,.calculator-hub-directory{padding-top:var(--space-7)}.home-calculator-section{padding-top:var(--space-6)}.home-calculator-section .section-heading,.calculator-hub-directory .section-heading{margin-bottom:var(--space-5)}.page-header.calculator-hub-header{padding-block:var(--space-6);gap:var(--space-6)}.future-section{background:var(--color-sand-deep)}.future-band{padding-top:var(--space-6);gap:var(--space-5);border-top:3px solid var(--color-forest);display:grid}.future-band h2{max-width:21ch;margin-bottom:0}.future-band p:not(.eyebrow){max-width:43rem;color:var(--color-ink-soft);margin-top:0}.page-header{padding:clamp(2.35rem,5vw,4.2rem) 0 clamp(2.5rem,5vw,3.8rem)}.page-header h1{max-width:21ch;margin-bottom:.85rem;font-size:clamp(2.25rem,5vw,3.7rem)}.page-header-split{gap:var(--space-7);align-items:end;display:grid}.page-header-note{border-block:1px solid var(--color-line-strong);gap:.25rem;max-width:28rem;padding:1rem 0;display:grid}.page-header-note strong{color:var(--color-forest-strong);font-size:.96rem}.page-header-note span{color:var(--color-ink-soft);font-size:var(--text-sm);line-height:1.5}.page-header-note-pending strong{color:var(--color-clay-dark)}.breadcrumbs{color:var(--color-ink-soft);margin:0 0 1.35rem;font-size:.84rem}.breadcrumbs ol{flex-wrap:wrap;gap:.38rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{min-width:0}.breadcrumbs li:not(:last-child):after{color:#87918c;content:"/";margin-left:.38rem}.breadcrumbs li:last-child span{color:var(--color-ink-soft)}.breadcrumbs a:hover{color:var(--color-forest)}.calculator-directory{padding-bottom:var(--section-space)}.orientation-note{margin-top:var(--space-7);padding:var(--space-5) 0;gap:var(--space-4);border-block:1px solid var(--color-line);grid-template-columns:auto minmax(0,1fr);display:grid}.orientation-note-marker{color:#fff;background:var(--color-forest);border-radius:50%;place-items:center;width:2.15rem;height:2.15rem;font-family:Georgia,serif;font-weight:800;display:grid}.orientation-note h2{margin-bottom:.35rem;font-size:1.2rem}.orientation-note p{max-width:64rem;color:var(--color-ink-soft);margin:0}.calculator-page-header{padding-bottom:var(--space-7)}.page-meta-line{margin-top:var(--space-5);color:var(--color-ink-soft);font-size:var(--text-sm);flex-wrap:wrap;gap:.55rem 1.15rem;font-weight:650;display:flex}.page-meta-line span{align-items:center;gap:.45rem;display:inline-flex}.page-meta-line span:before{background:var(--color-clay);content:"";border-radius:50%;flex:none;width:.38rem;height:.38rem}.calculator-shell{padding-bottom:clamp(3.25rem,6vw,5rem)}.calculator-workspace{gap:var(--space-4);align-items:start;display:grid}.calculator-form,.estimate-panel{border-radius:var(--radius-lg);min-width:0;padding:clamp(1.25rem,3vw,1.8rem)}.calculator-form{background:var(--color-paper);border:1px solid var(--color-line);box-shadow:var(--shadow-sm)}.calculator-form-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:start;gap:var(--space-4);display:flex}.calculator-form-header h2,.estimate-panel h2{letter-spacing:-.025em;margin:0;font-size:1.45rem}.form-step{color:var(--color-ink-subtle);letter-spacing:.07em;text-transform:uppercase;margin-bottom:.25rem;font-size:.7rem;font-weight:780;display:block}.step-label,.estimate-kicker{color:var(--color-clay-dark);letter-spacing:.075em;text-transform:uppercase;font-size:.73rem;font-weight:830}.step-label{background:var(--color-clay-soft);border-radius:999px;flex:none;padding:.25rem .5rem}.field-grid{gap:1.15rem;display:grid}.bathroom-calculator-field-group{min-width:0}.bathroom-calculator-field-group+.bathroom-calculator-field-group{margin-top:var(--space-6)}.bathroom-calculator-field-group h3{color:var(--color-ink);letter-spacing:-.012em;margin:0;font-size:1.06rem}.bathroom-calculator-group-intro{max-width:62ch;margin:.45rem 0 var(--space-4);color:var(--color-ink-soft);font-size:.84rem;line-height:1.52}.bathroom-context-only-group{padding:var(--space-4);background:var(--color-forest-pale);border-radius:var(--radius-sm);border:1px solid #c5d5cc}.context-only-badge{color:var(--color-forest-strong);letter-spacing:.055em;text-transform:uppercase;background:#dbeae2;border:1px solid #b8cec1;border-radius:999px;margin:.55rem 0 0;padding:.28rem .52rem;font-size:.69rem;font-weight:830;line-height:1.3;display:inline-flex}.project-checklist{min-width:0;margin:var(--space-5) 0 0;padding:var(--space-4);border-radius:var(--radius-sm);background:#ffffff9e;border:1px solid #b8cec1}.project-checklist:focus-visible{outline:3px solid var(--color-error);outline-offset:3px}.project-checklist legend{color:var(--color-ink);padding:0 .25rem;font-size:.92rem;font-weight:760}.project-checklist>p{margin:0 0 var(--space-3);color:var(--color-ink-soft);font-size:.8rem;line-height:1.45}.project-checklist>div{gap:.45rem;display:grid}.project-checklist label{cursor:pointer;background:#ffffffb8;border:1px solid #0000;border-radius:.35rem;align-items:start;gap:.55rem;min-width:0;padding:.45rem .55rem;font-size:.84rem;line-height:1.35;display:flex}.project-checklist label:focus-within{border-color:var(--color-forest);box-shadow:0 0 0 3px #1a50401f}.project-checklist input{width:1.05rem;height:1.05rem;accent-color:var(--color-forest);flex:none;margin:.08rem 0 0}.field{gap:.4rem;min-width:0;display:grid}.field label,.field-label{color:var(--color-ink);font-size:.92rem;font-weight:720}.field-hint{color:var(--color-ink-soft);margin:-.05rem 0 0;font-size:.82rem;line-height:1.42}.input,.select{width:100%;min-height:3.2rem;color:var(--color-ink);border-radius:var(--radius-sm);transition:border-color var(--transition), box-shadow var(--transition);background:#fff;border:1px solid #9fa8a2;padding:.7rem .82rem}.input:hover,.select:hover{border-color:var(--color-forest)}.input:focus,.select:focus{border-color:var(--color-forest);outline:none;box-shadow:0 0 0 3px #1a504029}.input-wrap{position:relative}.input-wrap .input{padding-right:3.25rem}.input-unit{color:var(--color-ink-soft);pointer-events:none;font-size:.88rem;position:absolute;top:50%;right:.82rem;transform:translateY(-50%)}.toggle-field{justify-content:space-between;align-items:center;gap:var(--space-4);background:var(--color-forest-pale);border-radius:var(--radius-sm);border:1px solid #c5d5cc;min-height:3.6rem;padding:.74rem .82rem;display:flex}.toggle-field:focus-within{border-color:var(--color-forest);box-shadow:0 0 0 3px #1a50401f}.toggle-copy{gap:.08rem;display:grid}.toggle-copy label{cursor:pointer;font-size:.91rem;font-weight:720}.toggle-copy span{color:var(--color-ink-soft);font-size:.78rem}.toggle{width:1.4rem;height:1.4rem;accent-color:var(--color-forest);flex:none;margin:0}.form-actions{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-line)}.form-note{color:var(--color-ink-soft);text-align:center;margin:.7rem 0 0;font-size:.79rem}.quote-comparison-workspace{gap:var(--space-5);display:grid}.quote-comparison-form{padding:clamp(1.1rem,3vw,2rem)}.quote-comparison-basics{align-items:start}.quote-total-fields{min-width:0}.quote-total-fields>.field-label{margin-bottom:.4rem;display:block}.quote-total-fields>.field-hint{margin-top:.4rem}.quote-scope-fieldset{min-width:0;margin:var(--space-6) 0 0;border:0;padding:0}.quote-scope-fieldset>legend{color:var(--color-ink);letter-spacing:-.02em;padding:0;font-size:1.25rem;font-weight:780}.quote-scope-intro{max-width:68rem;margin:.45rem 0 var(--space-4);color:var(--color-ink-soft);font-size:.88rem;line-height:1.55}.quote-scope-header,.quote-scope-row{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.quote-scope-header{display:none}.quote-scope-group{margin-top:var(--space-5)}.quote-scope-group h3{margin:0 0 var(--space-3);color:var(--color-forest-strong);letter-spacing:.07em;text-transform:uppercase;font-size:.78rem;font-weight:830}.quote-scope-row{padding:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff}.quote-scope-row+.quote-scope-row{margin-top:var(--space-3)}.quote-scope-item{min-width:0;line-height:1.4}.quote-status-field{gap:.35rem;min-width:0;display:grid}.quote-status-field label{color:var(--color-ink-soft);font-size:.75rem;font-weight:780}.quote-status-field .select{min-height:2.8rem;font-size:.88rem}.quote-comparison-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.quote-comparison-actions .button{flex:12rem}.quote-comparison-pending,.quote-comparison-result{background:var(--color-forest-pale);border-radius:var(--radius-lg);border:1px solid #bfd1c7;padding:clamp(1.25rem,4vw,2rem);scroll-margin-top:5.25rem}.quote-comparison-pending h2,.quote-comparison-result h2{margin-bottom:.55rem;font-size:clamp(1.5rem,3vw,2rem)}.quote-comparison-pending p:last-child,.quote-result-header>p:last-child{max-width:68rem;color:var(--color-ink-soft);margin-bottom:0}.quote-comparison-result:focus{outline:none}.quote-comparison-result:focus-visible{outline:3px solid var(--color-clay);outline-offset:4px}.quote-total-comparison{margin-top:var(--space-5);padding:var(--space-5);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);background:#fff}.quote-total-comparison h3,.quote-result-grid h3,.quote-questions h3{margin-bottom:var(--space-3);font-size:1.05rem}.quote-total-comparison dl{background:var(--color-line);border:1px solid var(--color-line);border-radius:var(--radius-sm);gap:1px;margin:0;display:grid;overflow:hidden}.quote-total-comparison dl div{justify-content:space-between;gap:var(--space-4);background:var(--color-paper);padding:.8rem;display:flex}.quote-total-comparison dt{color:var(--color-ink-soft);font-size:.82rem;font-weight:720}.quote-total-comparison dd{color:var(--color-forest-strong);margin:0;font-weight:820}.quote-total-warning{margin:var(--space-4) 0 0;padding:var(--space-3);color:var(--color-clay-dark);background:var(--color-clay-soft);border-left:4px solid var(--color-clay);border-radius:var(--radius-sm);line-height:1.5}.quote-result-grid{margin-top:var(--space-5);gap:var(--space-4);display:grid}.quote-result-grid>section{min-width:0;padding:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff}.quote-result-grid>.quote-result-conflicts{border-left:4px solid var(--color-clay)}.quote-result-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.quote-result-list li{gap:.18rem;display:grid}.quote-result-list strong{font-size:.9rem}.quote-result-list span,.quote-result-empty,.quote-result-note{color:var(--color-ink-soft);font-size:.8rem;line-height:1.45}.quote-result-empty,.quote-result-note{margin:0}.quote-result-note+.quote-result-list,.quote-result-note+.quote-result-empty{margin-top:var(--space-3)}.quote-questions{margin-top:var(--space-5);padding:var(--space-5);color:#fff;background:var(--color-forest-strong);border-radius:var(--radius-md)}.quote-questions h3{color:#fff}.quote-questions ol{margin:0;padding-left:1.25rem}.quote-questions li+li{margin-top:.7rem}.quote-questions p{color:#d4e1dc;margin:0}.quote-result-boundary{margin:var(--space-5) 0 0;padding-top:var(--space-4);color:var(--color-ink-soft);border-top:1px solid #bfd1c7;font-size:.84rem;line-height:1.55}.error-summary{margin:0 0 var(--space-4);color:var(--color-error);background:var(--color-error-bg);border:1px solid #e7b8b1;border-left:4px solid var(--color-error);border-radius:var(--radius-sm);padding:.95rem 1rem;font-size:.9rem}.error-summary strong{display:block}.error-summary ul{margin:.3rem 0 0;padding-left:1.2rem}.error-summary:focus-visible{outline:3px solid var(--color-error);outline-offset:3px}.error-summary-link{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.error-summary-link:focus-visible{outline-offset:2px;outline:2px solid}.estimate-panel{color:#fff;background:var(--color-forest-strong);border:1px solid var(--color-forest-strong);min-height:27rem;box-shadow:var(--shadow-md);scroll-margin-top:5.25rem}.estimate-panel:focus{outline:none}.estimate-panel:focus-visible{outline-offset:4px;outline:3px solid #eaa086}.estimate-panel h2,.estimate-panel h3{color:#fff}.estimate-empty{text-align:center;place-content:center;min-height:22rem;display:grid}.estimate-empty-mark{width:3.5rem;height:3.5rem;color:var(--color-forest-strong);background:#dfebe5;border-radius:50%;place-items:center;margin:0 auto 1.15rem;font-size:1.3rem;font-weight:850;display:grid}.estimate-empty p{color:#cad8d2;max-width:31ch;margin:.7rem auto 0}.estimate-summary{padding-bottom:var(--space-5);border-bottom:1px solid #fff3}.estimate-kicker{color:#f4b49f;align-items:center;gap:.48rem;display:inline-flex}.estimate-kicker>span{background:currentColor;border-radius:50%;width:.42rem;height:.42rem}.estimate-total{color:#fff;font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.055em;white-space:nowrap;margin:.62rem 0 .65rem;font-size:clamp(2rem,7.5vw,3.2rem);font-weight:830;line-height:1.02}.estimate-disclaimer{color:#cbd9d3;max-width:54ch;margin:0;font-size:.84rem;line-height:1.5}.estimate-basis{padding:var(--space-4) 0;justify-content:space-between;align-items:center;gap:var(--space-4);border-bottom:1px solid #fff3;margin:0;display:flex}.estimate-basis>span{color:#f0f5f2;font-size:.84rem;font-weight:700}.estimate-basis small{color:#adc2b9;margin-top:.08rem;font-size:.76rem;font-weight:500;display:block}.estimate-basis strong{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.05rem}.result-section{padding-top:var(--space-5)}.breakdown-title,.result-detail-block h3,.warning-box h3{letter-spacing:.01em;margin:0 0 .75rem;font-size:.88rem;font-weight:780}.breakdown-list{gap:0;margin:0;display:grid}.breakdown-line{gap:var(--space-3);color:#d9e4df;border-bottom:1px solid #ffffff1a;grid-template-columns:minmax(0,1fr) auto;padding:.55rem 0;font-size:.86rem;display:grid}.breakdown-line:last-child{border-bottom:0}.breakdown-line dt,.breakdown-line dd{margin:0}.breakdown-line dd{color:#fff;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:650}.breakdown-line .roofing-material-value{overflow-wrap:anywhere;white-space:normal;min-width:0}.breakdown-line-muted dd{color:#b9ccc4;font-size:.8rem;font-weight:560}.duration{margin:var(--space-4) 0 0;align-items:baseline;gap:var(--space-3);color:#cbdad4;border-radius:var(--radius-sm);background:#ffffff13;border:1px solid #ffffff1f;grid-template-columns:minmax(0,1fr);padding:.82rem .9rem;font-size:.84rem;display:grid}.duration strong{color:#fff;text-align:left}.result-details{margin-top:var(--space-5);gap:var(--space-4);display:grid}.result-detail-block{padding-top:var(--space-4);border-top:1px solid #fff3}.notice-list{color:#d5e1dc;margin:0;padding-left:1.15rem;font-size:.82rem;line-height:1.55}.notice-list li+li{margin-top:.38rem}.warning-box{color:#ffe2aa;border-radius:var(--radius-sm);background:#ffc15217;border:1px solid #ffc15247;padding:.9rem}.warning-box h3{color:#ffe2aa}.warning-box .notice-list{color:#f8e5bd}.us-published-result-panel .estimate-kicker{letter-spacing:.075em;margin:0;font-size:.73rem}.us-result-section{padding:var(--space-5) 0;border-bottom:1px solid #fff3}.us-result-section h3,.us-result-context h3,.us-result-source h3,.us-result-detail-group h3{letter-spacing:.01em;margin:0 0 .75rem;font-size:.88rem;font-weight:780}.us-planning-section .notice-list,.us-question-section ol{color:#d5e1dc;margin:0;padding-left:1.2rem;font-size:.84rem;line-height:1.55}.us-planning-section-important{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-sm);background:#ffc15217;border:1px solid #ffc15247}.us-planning-section-important h3,.us-planning-section-important .notice-list{color:#ffe2aa}.us-section-intro{margin:-.3rem 0 var(--space-4);color:#adc2b9;font-size:.78rem;line-height:1.5}.us-reference-list{gap:var(--space-3);display:grid}.us-relevant-reference{min-width:0;padding:var(--space-4);border-radius:var(--radius-sm);background:#ffffff13;border:1px solid #ffffff29}.us-relevant-reference-heading{gap:var(--space-3);display:grid}.us-relevant-reference h4{color:#fff;margin:.25rem 0 0;font-size:.95rem;line-height:1.35}.us-relevant-reference>p{margin:var(--space-3) 0 0;color:#d5e1dc;font-size:.78rem;line-height:1.5}.us-relevant-reference-value{display:grid;color:#fff!important;margin:0!important}.us-relevant-reference-value strong{font-size:1.05rem}.us-relevant-reference-value span{color:#adc2b9;font-size:.73rem;font-weight:700}.us-reference-boundary{background:#ffc15214;border-left:3px solid #f4b49f;padding:.65rem .75rem;color:#ffe2aa!important}.us-result-facts{gap:.65rem;margin:0;display:grid}.us-result-facts div,.us-result-source-dates div{align-items:baseline;gap:var(--space-4);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);display:grid}.us-result-facts dt,.us-result-source-dates dt{color:#adc2b9;font-size:.78rem}.us-result-facts dd,.us-result-source-dates dd{color:#fff;overflow-wrap:anywhere;text-align:right;min-width:0;margin:0;font-size:.86rem;font-weight:700}.us-result-context{margin-top:var(--space-5);padding:var(--space-4);gap:var(--space-4);border-radius:var(--radius-sm);background:#ffffff13;border:1px solid #ffffff2e;display:grid}.us-result-context h3{letter-spacing:.045em;text-transform:uppercase;margin-bottom:0}.us-result-context>div>p{color:#f4b49f;margin:.28rem 0 0;font-size:.78rem;font-weight:700}.us-result-scope p{color:#d5e1dc;margin:0;font-size:.84rem;line-height:1.55}.us-result-source{margin-top:var(--space-5);padding:var(--space-4);border-radius:var(--radius-sm);background:#ffffff13;border:1px solid #ffffff24}.us-result-source-publisher{color:#f4b49f;letter-spacing:.055em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.us-result-source-title{color:#fff;margin:.25rem 0 0;font-size:.88rem;font-weight:700;line-height:1.4}.us-result-source-section{margin:var(--space-3) 0 0;color:#d5e1dc;overflow-wrap:anywhere;font-size:.78rem;line-height:1.45}.us-result-source-section span{color:#adc2b9;margin-bottom:.15rem;font-size:.72rem;font-weight:700;display:block}.us-result-source-dates{margin:var(--space-4) 0 0;gap:.4rem;display:grid}.us-result-source-link{margin:var(--space-4) 0 0}.us-result-source-link a,.us-result-guide-link a,.us-result-quote-link a{color:#fff;text-underline-offset:.18em;font-size:.84rem;font-weight:760;text-decoration:underline;text-decoration-thickness:.08em}.us-result-source-link a:focus-visible,.us-result-guide-link a:focus-visible,.us-result-quote-link a:focus-visible,.us-result-disclosure summary:focus-visible{outline-offset:4px;outline:3px solid #eaa086}.us-result-disclosure{margin-top:var(--space-5);border-radius:var(--radius-sm);border:1px solid #fff3}.us-result-disclosure summary{color:#fff;cursor:pointer;padding:.9rem 1rem;font-size:.84rem;font-weight:760;line-height:1.4}.us-result-disclosure summary::marker{color:#f4b49f}.us-result-disclosure[open] summary{border-bottom:1px solid #ffffff29}.us-result-disclosure-content{padding:0 var(--space-4) var(--space-4);gap:var(--space-4);display:grid}.us-result-detail-group{padding-top:var(--space-4)}.us-result-warning-group{padding:var(--space-4);color:#ffe2aa;border-radius:var(--radius-sm);background:#ffc15217;border:1px solid #ffc15247}.us-result-warning-group h3,.us-result-warning-group .notice-list{color:#f8e5bd}.us-result-guide-link{margin:var(--space-5) 0 0;padding-top:var(--space-4);border-top:1px solid #fff3}.us-result-quote-link{margin:var(--space-3) 0 0;border-radius:var(--radius-sm);background:#ffffff17;border:1px solid #fff3;padding:.85rem 1rem}@media (min-width:36rem){.us-relevant-reference-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start}.us-relevant-reference-value{text-align:right}}.content-grid{gap:var(--space-5);align-items:start;display:grid}.method-card{padding:var(--space-5) 0}.method-card h2{max-width:18ch}.method-card>p:not(.eyebrow){max-width:50ch;color:var(--color-ink-soft)}.source-card,.callout{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:clamp(1.2rem,3vw,1.7rem)}.source-card{box-shadow:var(--shadow-sm)}.source-card-header{margin-bottom:var(--space-4);align-items:start;gap:var(--space-3);display:flex}.source-card-icon{color:#fff;background:var(--color-forest);border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-family:Georgia,serif;font-weight:800;display:grid}.source-card-kicker{color:var(--color-clay-dark);letter-spacing:.07em;text-transform:uppercase;margin:0 0 .18rem;font-size:.71rem;font-weight:820}.source-card h2{margin:0;font-size:1.48rem}.source-summary{padding:var(--space-4) 0;gap:var(--space-3);border-block:1px solid var(--color-line);display:grid}.source-summary div{gap:.05rem;display:grid}.source-summary span{color:var(--color-ink-subtle);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:700}.source-summary strong{color:var(--color-forest-strong);font-size:.94rem}.source-intro{margin:var(--space-4) 0;color:var(--color-ink-soft);font-size:var(--text-sm)}.source-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.source-list li{padding-top:var(--space-3);border-top:1px solid var(--color-line)}.source-list li:first-child{border-top:0;padding-top:0}.source-list a{justify-content:space-between;align-items:start;gap:var(--space-3);color:var(--color-forest);font-size:.9rem;font-weight:730;display:flex}.source-list a:hover{color:var(--color-forest-strong)}.source-list a>span:first-child{min-width:0}.source-meta{color:var(--color-ink-soft);margin-top:.2rem;font-size:.78rem;line-height:1.45;display:block}.freshness{color:var(--color-forest-strong);background:var(--color-forest-soft);border-radius:999px;margin-left:.35rem;padding:.08rem .4rem;font-size:.68rem;font-weight:820;display:inline-flex}.freshness-stale{color:var(--color-warning);background:var(--color-warning-bg)}.source-card-footer{margin-top:var(--space-4);padding-top:var(--space-4);justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);border-top:1px solid var(--color-line);flex-wrap:wrap;font-size:.78rem;display:flex}.source-card-footer p{color:var(--color-ink-subtle);margin:0}.source-card-footer a{color:var(--color-forest);font-weight:760;text-decoration:none}.related-grid{gap:var(--space-3);display:grid}.related-link{min-height:10.5rem;color:inherit;background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-sm);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);flex-direction:column;padding:1.2rem;text-decoration:none;display:flex}.related-link:hover{border-color:var(--color-forest);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.related-link strong{line-height:1.35}.related-link>span:not(.related-link-cta){color:var(--color-ink-soft);font-size:var(--text-sm);margin-top:.4rem;display:block}.related-link-cta{padding-top:var(--space-4);color:var(--color-forest);margin-top:auto;font-size:.8rem;font-weight:760}.callout p:last-child{margin-bottom:0}.disclaimer-callout{margin-top:var(--space-4);color:var(--color-ink-soft);border-left:4px solid var(--color-clay);background:0 0}.disclaimer-callout strong{color:var(--color-ink)}.guide-directory{padding-bottom:var(--section-space)}.guide-group{padding:var(--space-7) 0;gap:var(--space-6);border-top:1px solid var(--color-line-strong);display:grid}.guide-group:first-child{border-top-width:2px;border-top-color:var(--color-forest)}.guide-group-heading{gap:var(--space-4);align-items:start;display:flex}.guide-group-index{width:2.2rem;height:2.2rem;color:var(--color-forest-strong);background:var(--color-forest-soft);border-radius:50%;flex:none;place-items:center;font-size:.72rem;font-weight:830;display:grid}.guide-group-heading h2{margin-bottom:.45rem;font-size:clamp(1.55rem,2.7vw,2.1rem)}.guide-group-heading p{color:var(--color-ink-soft);font-size:var(--text-sm);margin:0}.guide-page-header{border-bottom:1px solid var(--color-line)}.article-wrap{padding:clamp(2.5rem, 5vw, 4rem) 0 var(--section-space);gap:var(--space-8);grid-template-columns:minmax(0,1fr);grid-template-areas:"article""aside";align-items:start;display:grid}.article{width:100%;max-width:var(--reading-width);grid-area:article}.article-meta{margin:0 0 var(--space-6);color:var(--color-ink-subtle);flex-wrap:wrap;gap:.4rem 1rem;font-size:.82rem;font-weight:600;display:flex}.article-meta span+span:before{color:var(--color-line-strong);content:"·";margin-right:1rem}.article section{scroll-margin-top:5.5rem}.article section+section{margin-top:clamp(2.5rem,5vw,3.5rem)}.article h2{max-width:26ch;font-size:clamp(1.55rem,3vw,2.15rem)}.article h3{margin-top:var(--space-6)}.article p,.article li{color:#34473f}.article p{line-height:1.75}.article ul,.article ol{padding-left:1.35rem}.article li{line-height:1.65}.article li+li{margin-top:.55rem}.data-table-wrap{max-width:100%;margin:var(--space-5) 0;border:1px solid var(--color-line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);overscroll-behavior-inline:contain;overflow-x:auto}.data-table-wrap:focus-visible{outline-offset:2px}.data-table{border-collapse:collapse;background:var(--color-paper);width:100%;min-width:35rem;font-size:.88rem}.data-table th,.data-table td{border-bottom:1px solid var(--color-line);text-align:left;vertical-align:top;padding:.8rem}.data-table th{color:var(--color-forest-strong);background:var(--color-forest-pale);letter-spacing:.035em;text-transform:uppercase;font-size:.74rem}.data-table tr:last-child td{border-bottom:0}.data-table caption{color:var(--color-ink-soft);background:var(--color-paper);border-bottom:1px solid var(--color-line);text-align:left;padding:.8rem;font-size:.82rem;font-weight:680}.us-price-table td:nth-child(2){color:var(--color-forest-strong);white-space:nowrap;font-weight:820}.us-price-table td strong,.us-price-table td span{display:block}.us-price-table td span{color:var(--color-ink-subtle);margin-top:.25rem;font-size:.78rem}.market-reference{margin:0 0 var(--space-7);background:var(--color-forest-pale);border-left:4px solid var(--color-forest);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:1.05rem 1.15rem}.market-reference strong{color:var(--color-forest-strong);display:block}.market-reference p{color:var(--color-ink-soft);margin:.28rem 0 0;font-size:.86rem;line-height:1.55}.guide-calculator-cta{margin:0 0 var(--space-7);background:var(--color-sand);border:1px solid var(--color-line);border-left:4px solid var(--color-clay);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:clamp(1.2rem,3vw,1.75rem)}.guide-calculator-cta h2{margin-bottom:.6rem;font-size:clamp(1.35rem,3vw,1.75rem)}.guide-calculator-cta p:not(.eyebrow){color:var(--color-ink-soft)}.guide-calculator-cta .button{margin-top:var(--space-2)}.us-context-links{margin-top:var(--space-5);background:var(--color-forest-pale);border-radius:var(--radius-sm);padding:1rem 1rem 1rem 2.3rem!important}.us-source-section>p{margin-bottom:var(--space-5)}.us-source-list{gap:var(--space-4);display:grid}.us-source-card{background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);padding:1.2rem}.us-source-card h3{margin:.2rem 0 var(--space-4);font-size:1.05rem;line-height:1.4}.us-source-card>p{font-size:.88rem;line-height:1.6}.us-source-card .us-source-publisher{color:var(--color-clay-dark);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:820}.us-source-dates{margin:0 0 var(--space-4);gap:.45rem;display:grid}.us-source-dates div{gap:var(--space-3);grid-template-columns:minmax(7rem,.55fr) minmax(0,1fr);display:grid}.us-source-dates dt{color:var(--color-ink-subtle);font-size:.76rem;font-weight:740}.us-source-dates dd{color:var(--color-ink-soft);margin:0;font-size:.8rem}.us-source-card details{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-line)}.us-source-card summary{cursor:pointer;color:var(--color-forest-strong);font-size:.84rem;font-weight:760}.us-source-card details ul{margin-bottom:0}.us-source-card details li{font-size:.84rem}.water-heater-planner-section{margin:0 0 var(--space-8);scroll-margin-top:5.5rem}.water-heater-planner-intro{margin-bottom:var(--space-5);background:var(--color-sand);border:1px solid var(--color-line);border-left:4px solid var(--color-clay);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:clamp(1.15rem,3vw,1.6rem)}.water-heater-planner-intro h2{margin-bottom:.55rem}.water-heater-planner-intro p:last-child{color:var(--color-ink-soft);margin-bottom:0}.water-heater-checklist{min-width:0;margin:var(--space-6) 0 0;padding:var(--space-4);background:var(--color-forest-pale);border-radius:var(--radius-sm);border:1px solid #c5d5cc}.water-heater-checklist:focus-visible{outline:3px solid var(--color-error);outline-offset:3px}.water-heater-checklist legend{color:var(--color-ink);padding:0 .25rem;font-size:.92rem;font-weight:760}.water-heater-checklist>p{margin:0 0 var(--space-3);color:var(--color-ink-soft);font-size:.8rem;line-height:1.45}.water-heater-checklist>div{gap:.45rem;display:grid}.water-heater-checklist label{cursor:pointer;background:#ffffffa8;border:1px solid #0000;border-radius:.35rem;align-items:start;gap:.55rem;min-width:0;padding:.45rem .55rem;font-size:.84rem;line-height:1.35;display:flex}.water-heater-checklist label:focus-within{border-color:var(--color-forest);box-shadow:0 0 0 3px #1a50401f}.water-heater-checklist input{width:1.05rem;height:1.05rem;accent-color:var(--color-forest);flex:none;margin:.08rem 0 0}.water-heater-result{padding:0;display:grid;overflow:hidden}.water-heater-result-block{border-bottom:1px solid #ffffff2e;min-width:0;padding:clamp(1.1rem,3vw,1.5rem)}.water-heater-result-block:last-child{border-bottom:0}.water-heater-result-block h2,.water-heater-result-block h3,.water-heater-result-block h4{overflow-wrap:anywhere}.water-heater-result-block h3{margin:0 0 var(--space-4);font-size:1.05rem}.water-heater-result-block h4{color:#fff;margin:0;font-size:.91rem;line-height:1.4}.water-heater-result-block p,.water-heater-result-block li{color:#d5e1dc;font-size:.82rem;line-height:1.55}.water-heater-result-block ul{margin-bottom:0;padding-left:1.15rem}.water-heater-result-step,.water-heater-card-kicker{letter-spacing:.065em;text-transform:uppercase;margin:0 0 .35rem;font-weight:820;color:#f4b49f!important;font-size:.7rem!important}.water-heater-project h2{font-size:clamp(1.2rem,3vw,1.55rem);line-height:1.3}.water-heater-project>p:last-child{color:#d5e1dc;text-transform:capitalize;margin:.5rem 0 0}.water-heater-card-list{gap:var(--space-3);display:grid}.water-heater-benchmark-card{min-width:0;padding:var(--space-4);border-radius:var(--radius-sm);background:#ffffff13;border:1px solid #ffffff29}.water-heater-benchmark-card+.water-heater-benchmark-card{margin-top:var(--space-3)}.water-heater-benchmark-card p{margin:.45rem 0 0}.water-heater-benchmark-value{letter-spacing:-.035em;font-weight:850;color:#fff!important;font-size:clamp(1.25rem,4vw,1.75rem)!important}.water-heater-benchmark-card a{color:#fff;overflow-wrap:anywhere;text-underline-offset:.18em;font-weight:740;text-decoration:underline}.water-heater-benchmark-meta{margin:var(--space-3) 0 0;gap:.35rem;display:grid}.water-heater-benchmark-meta div{gap:var(--space-3);grid-template-columns:minmax(5.5rem,.7fr) minmax(0,1.3fr);display:grid}.water-heater-benchmark-meta dt{color:#adc2b9;font-size:.74rem}.water-heater-benchmark-meta dd{color:#fff;overflow-wrap:anywhere;text-align:right;min-width:0;margin:0;font-size:.76rem}.water-heater-details{margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid #ffffff2e}.water-heater-details summary{color:#fff;cursor:pointer;font-size:.82rem;font-weight:760}.water-heater-details .water-heater-card-list{margin-top:var(--space-3)}.water-heater-overlap-note,.water-heater-no-benchmark,.water-heater-standalone{border-radius:var(--radius-sm);background:#ffffff14;padding:.7rem .8rem}.water-heater-scope-list{gap:var(--space-3);display:grid}.water-heater-scope-list article{padding:var(--space-3);background:#ffffff0f;border-left:3px solid #eaa086}.water-heater-scope-list article>div{justify-content:space-between;align-items:start;gap:var(--space-3);display:flex}.water-heater-scope-list span{color:#f8e5bd;text-transform:uppercase;background:#ffc1521a;border:1px solid #ffc15242;border-radius:999px;flex:none;padding:.2rem .42rem;font-size:.64rem;font-weight:800}.water-heater-scope-list p{margin:.4rem 0 0}.water-heater-warning{background:#ffc15214}.water-heater-warning li{color:#f8e5bd}.article-aside{color:#fff;background:var(--color-forest-strong);border-radius:var(--radius-md);grid-area:aside;min-width:0;padding:1.25rem}.article-aside-label{margin:0 0 var(--space-3);color:#f4b49f;letter-spacing:.07em;text-transform:uppercase;font-size:.72rem;font-weight:820}.article-toc{padding:0 0 var(--space-5);counter-reset:toc;border-bottom:1px solid #ffffff2b;gap:.6rem;margin:0;list-style:none;display:grid}.article-toc li{counter-increment:toc}.article-toc a{color:#dbe7e1;grid-template-columns:1.5rem minmax(0,1fr);font-size:.82rem;line-height:1.4;text-decoration:none;display:grid}.article-toc a:before{color:#f4b49f;content:"0" counter(toc);font-size:.68rem;font-weight:800}.article-toc a:hover{color:#fff;text-decoration:underline}.article-aside-cta{padding-top:var(--space-5)}.article-aside-cta>strong{color:#fff;font-size:1.05rem;line-height:1.3;display:block}.article-aside-cta p{margin:.5rem 0 var(--space-4);color:#cad9d3;font-size:.84rem;line-height:1.5}.article-aside .button{width:100%;font-size:.87rem}.article-callout{margin-top:var(--space-7);background:var(--color-sand);border-left:4px solid var(--color-clay)}.article-callout h2{font-size:1.4rem}.methodology-article,.information-article,.document-article{padding-bottom:var(--section-space)}.principle-list{gap:0;list-style:none;display:grid;padding:0!important}.principle-list li{border-bottom:1px solid var(--color-line);padding:.75rem 0 .75rem 1.75rem}.principle-list li:before{width:1.75rem;color:var(--color-clay-dark);content:"✓";margin-left:-1.75rem;font-weight:850;display:inline-block}.permit-principles{gap:var(--space-7);display:grid}.permit-block{padding-top:var(--space-5);border-top:2px solid var(--color-forest);position:relative}.permit-block-index{margin-bottom:var(--space-4);color:var(--color-clay-dark);letter-spacing:.08em;font-size:.74rem;font-weight:830;display:block}.permit-block h2{max-width:21ch}.permit-block p,.permit-block li{color:var(--color-ink-soft)}.permit-process h2{max-width:22ch}.permit-directory-header h1,.permit-city-header h1,.permit-work-header h1{max-width:24ch}.permit-work-grid{gap:var(--space-3);display:grid}.permit-work-card{min-width:0;min-height:13rem;color:inherit;background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-md);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);flex-direction:column;padding:1.2rem;text-decoration:none;display:flex}.permit-work-card:hover{border-color:var(--color-forest);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.permit-work-index{margin-bottom:var(--space-4);color:var(--color-clay-dark);letter-spacing:.08em;font-size:.72rem;font-weight:840}.permit-work-card>strong{font-size:1.08rem;line-height:1.35}.permit-work-card>span:not(.permit-work-index):not(.permit-work-cta){color:var(--color-ink-soft);margin-top:.45rem;font-size:.88rem;line-height:1.5}.permit-work-cta{padding-top:var(--space-4);color:var(--color-forest);margin-top:auto;font-size:.82rem;font-weight:780}.permit-tool-layout,.permit-intro-grid{gap:var(--space-6);align-items:start;display:grid}.permit-wizard{min-width:0}.permit-wizard-heading{margin-bottom:var(--space-5)}.permit-wizard-heading h2{max-width:22ch;margin-bottom:var(--space-3)}.permit-wizard-heading>p:last-child{max-width:42rem;color:var(--color-ink-soft);margin:0}.permit-form{gap:var(--space-5);background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:clamp(1.15rem,3vw,1.8rem);display:grid}.permit-form-step,.permit-question-intro{gap:var(--space-3);grid-template-columns:2.25rem minmax(0,1fr);display:grid}.permit-step-number{width:2.15rem;height:2.15rem;color:var(--color-forest-strong);background:var(--color-forest-soft);border-radius:50%;place-items:center;font-size:.7rem;font-weight:850;display:grid}.permit-step-content{gap:.4rem;min-width:0;display:grid}.permit-step-content>label,.permit-question legend,.permit-question-intro strong{color:var(--color-ink);font-weight:760}.permit-step-content select{width:100%;min-height:3.2rem;color:var(--color-ink);border-radius:var(--radius-sm);background:#fff;border:1px solid #9fa8a2;padding:.7rem .82rem}.permit-step-content select:not(:disabled):hover,.permit-step-content select:not(:disabled):focus{border-color:var(--color-forest)}.permit-step-content select:disabled{color:var(--color-ink-soft);background:var(--color-sand);opacity:1}.field-help,.permit-question-intro p{color:var(--color-ink-soft);margin:0;font-size:.8rem;line-height:1.45}.field-error{color:var(--color-error);margin:0;font-size:.82rem;font-weight:720}.permit-locked-value{background:var(--color-forest-pale);border-radius:var(--radius-sm);border:1px solid #b9cec3;min-height:3.2rem;margin:0;padding:.7rem .82rem;font-weight:720}.permit-conditional-fields{gap:var(--space-4);display:grid}.permit-question-intro{padding-top:var(--space-4);border-top:1px solid var(--color-line)}.permit-question{min-width:0;padding:var(--space-4);background:var(--color-sand);border:1px solid var(--color-line);border-radius:var(--radius-md);margin:0}.permit-question legend{max-width:42rem;padding:0 .25rem;line-height:1.4}.permit-question .field-help{margin:.2rem 0 var(--space-3)}.permit-question .field-help p{margin:0}.permit-question-checklist{margin:.55rem 0 0;padding-left:1.1rem}.permit-question-checklist li+li{margin-top:.3rem}.permit-question-official-link{color:var(--color-forest);margin-top:.65rem;font-weight:760;display:inline-block}.permit-answer-options{gap:.55rem;display:grid}.permit-answer{cursor:pointer;min-height:3rem;color:var(--color-ink-soft);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);background:#fff;align-items:center;display:flex;position:relative}.permit-answer:hover{border-color:var(--color-forest)}.permit-answer:has(input:checked){color:var(--color-forest-strong);background:var(--color-forest-pale);border-color:var(--color-forest)}.permit-answer input{width:1.1rem;height:1.1rem;accent-color:var(--color-forest);margin:0 .7rem}.permit-answer span{padding:.65rem .8rem .65rem 0;font-size:.9rem;font-weight:720}.permit-form-disclaimer{margin:calc(var(--space-3) * -1) 0 0;color:var(--color-ink-subtle);text-align:center;font-size:.76rem;line-height:1.5}.permit-scope-note{background:var(--color-forest-pale);border-radius:var(--radius-md);border:1px solid #bfd1c7;padding:clamp(1.2rem,3vw,1.6rem)}.permit-scope-note h2{margin-bottom:var(--space-4);font-size:1.45rem}.permit-scope-note ul,.permit-intro-grid ul{color:var(--color-ink-soft);margin:0;padding-left:1.2rem}.permit-scope-note li+li,.permit-intro-grid li+li{margin-top:.55rem}.permit-scope-note>p:last-child{margin:var(--space-5) 0 0}.permit-independence{padding-top:var(--space-4);color:var(--color-ink-soft);border-top:1px solid #bfd1c7;font-size:.8rem;line-height:1.5}.permit-result{margin-top:var(--space-6);background:var(--color-forest-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid #ffffff1f;padding:clamp(1.25rem,3vw,2rem)}.permit-result:focus{outline:none}.permit-result:focus-visible{outline:3px solid var(--color-clay)}.permit-result-label{color:#b9cdc4;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem;font-size:.72rem;font-weight:820}.permit-outcome{margin-bottom:var(--space-4);color:#fff;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:800;display:inline-flex}.permit-result h2,.permit-result h3{color:#fff}.permit-result h2{max-width:24ch;font-size:clamp(1.65rem,3vw,2.3rem)}.permit-result h3{letter-spacing:-.01em;font-size:1rem}.permit-result-summary,.permit-technical-reason{color:#d4e1dc}.permit-result-meaning{margin-top:var(--space-5);padding:var(--space-4);color:#d4e1dc;border-radius:var(--radius-sm);background:#ffffff14;border:1px solid #ffffff29}.permit-result-meaning p{margin:.4rem 0 0;font-size:.88rem;line-height:1.55}.permit-official-term strong{color:#fff}.permit-plain-language{margin-top:var(--space-4);color:#d4e1dc;border-top:1px solid #ffffff2e;border-bottom:1px solid #ffffff2e}.permit-plain-language summary{color:#fff;cursor:pointer;padding:.9rem 0;font-weight:760}.permit-plain-language summary:focus-visible{outline:3px solid var(--color-clay);outline-offset:4px}.permit-plain-language dl{padding:0 0 var(--space-4);gap:var(--space-3);margin:0;display:grid}.permit-plain-language dt{color:#fff;font-size:.86rem;font-weight:780}.permit-plain-language dd{margin:.22rem 0 0;font-size:.82rem;line-height:1.55}.information-article .permit-plain-language{color:var(--color-ink-soft);border-color:var(--color-line)}.information-article .permit-plain-language summary,.information-article .permit-plain-language dt{color:var(--color-ink)}.information-article .permit-plain-language summary:focus-visible{outline-color:var(--color-forest)}.permit-result-facts{margin:var(--space-5) 0 var(--space-3);border-radius:var(--radius-sm);background:#ffffff29;border:1px solid #ffffff29;gap:1px;display:grid;overflow:hidden}.permit-result-facts div{background:#173f34;padding:.8rem}.permit-result-facts dt{color:#aabfb6;letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:800}.permit-result-facts dd{color:#fff;margin:.18rem 0 0;font-size:.88rem;font-weight:720}.permit-technical-reason{margin:0;font-size:.82rem}.permit-municipality-grid{gap:var(--space-4);display:grid}.permit-municipality-grid .method-card{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.permit-municipality-grid .method-card .button{margin-top:auto}.permit-alternative-paths,.permit-certification-note{margin-top:var(--space-5);padding:var(--space-4);color:#d4e1dc;border-radius:var(--radius-sm);background:#ffffff12;border:1px solid #ffffff2e}.permit-alternative-paths>p,.permit-certification-note>p{margin:.4rem 0 0;font-size:.84rem;line-height:1.55}.permit-path-grid{margin-top:var(--space-4);gap:var(--space-3);display:grid}.permit-path-grid article{min-width:0;padding:var(--space-4);border-radius:var(--radius-sm);background:#173f34;border:1px solid #ffffff29}.permit-path-grid h4{color:#fff;margin:.2rem 0 .55rem}.permit-path-grid article>p:not(.permit-path-outcome){color:#d4e1dc;font-size:.82rem}.permit-path-outcome{color:#ffbfa9;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:800}.permit-path-grid a,.permit-certification-note a{margin-top:var(--space-3);color:#ffbfa9;font-weight:740;display:inline-block}.permit-certification-note ul{margin-top:var(--space-3)}.permit-result-columns{gap:var(--space-4);display:grid}.permit-section-title{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid #ffffff2e}.permit-result-columns>div,.permit-result-evidence,.permit-community-note,.permit-warnings{padding-top:var(--space-4);border-top:1px solid #ffffff2e}.permit-result ul{color:#d4e1dc;margin:0;padding-left:1.15rem;font-size:.84rem}.permit-result li+li{margin-top:.45rem}.permit-community-note strong{color:#ffd3c5}.permit-community-note p{color:#d4e1dc;margin:.35rem 0 0;font-size:.84rem}.permit-result-evidence li{padding-left:.15rem}.permit-evidence-reference{color:#aabfb6;margin-top:.25rem;font-size:.75rem;line-height:1.45;display:block}.permit-result-evidence a{color:#ffbfa9;margin-top:.18rem;font-weight:740;display:block}.permit-actions{margin-top:var(--space-3);gap:var(--space-3);flex-wrap:wrap;display:flex}.permit-actions-section{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid #ffffff2e}.permit-result .button-secondary{color:#fff;border-color:#ffffff6b}.permit-result .button-secondary:hover{background:#ffffff1a}.permit-warnings{margin-top:var(--space-5)}.permit-warnings p{color:#c1d1ca;margin:0;font-size:.76rem}.permit-warnings p+p{margin-top:.45rem}.permit-intro-grid article{padding-top:var(--space-4);border-top:2px solid var(--color-forest)}.permit-intro-grid h2{font-size:clamp(1.5rem,3vw,2.1rem)}.permit-intro-grid p:not(.source-card-kicker){color:var(--color-ink-soft)}.permit-inline-links{gap:0;margin:0;padding:0;list-style:none;display:grid}.permit-inline-links li{border-bottom:1px solid var(--color-line)}.permit-inline-links a{min-height:3rem;color:var(--color-forest);align-items:center;font-weight:720;display:flex}.permit-source-card{min-width:0}.permit-source-evidence{color:var(--color-ink-soft);margin-top:.35rem;font-size:.78rem;font-weight:500;line-height:1.5;display:block}.permit-source-official-title,.permit-source-locator{color:var(--color-ink-subtle);margin-top:.25rem;font-size:.76rem;font-weight:540;line-height:1.45;display:block}.document-header{padding-bottom:var(--space-6)}.document-header h1{font-size:clamp(2.2rem,4.5vw,3.35rem)}.document-article{max-width:50rem}.document-status{margin-bottom:var(--space-7);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#fff7e5;border:1px solid #e3c98a;border-left:4px solid #a16816;padding:1.2rem 1.3rem}.document-status-label{color:#7b5010;letter-spacing:.07em;text-transform:uppercase;margin-bottom:.35rem;font-size:.71rem;font-weight:830;display:block}.document-status>strong,.document-status h2{color:var(--color-ink);letter-spacing:-.015em;margin-bottom:.35rem;font-size:1.15rem;display:block}.document-status p{color:var(--color-ink-soft);margin:0;font-size:.91rem;line-height:1.6}.document-status-neutral{background:var(--color-forest-pale);border-color:#bcd1c5;border-left-color:var(--color-forest)}.document-status-neutral .document-status-label{color:var(--color-forest-strong)}.document-callout{margin-top:var(--space-7);background:var(--color-sand);border-left:4px solid var(--color-forest)}.legal-placeholder{color:#78281f;letter-spacing:0;background:#ffe3de;border:1px solid #e8aea6;border-radius:.3rem;margin:.08rem 0;padding:.16rem .4rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.76rem;font-weight:760;display:inline-block}.site-footer{color:#d9e4df;background:var(--color-forest-deep);padding:clamp(3rem,6vw,4.5rem) 0 1.5rem}.site-footer .brand{color:#fff}.site-footer .brand-mark{background:#1a5a47}.footer-grid{gap:var(--space-7);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.footer-brand{grid-column:1/-1}.footer-brand p{color:#b5c7bf;max-width:30rem;font-size:var(--text-sm);margin:.9rem 0 0}.footer-brand .footer-note{margin-top:var(--space-4);color:#c8d8d1;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;padding:.35rem .6rem;font-size:.72rem;display:inline-block}.footer-heading{color:#fff;letter-spacing:.09em;text-transform:uppercase;margin:0 0 .85rem;font-size:.73rem;font-weight:830}.footer-links{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.footer-links a{color:#d8e4df;min-height:2.75rem;font-size:var(--text-sm);align-items:center;text-decoration:none;display:inline-flex}.footer-links a:hover{color:#fff;text-decoration:underline}.footer-bottom{margin-top:var(--space-8);padding-top:var(--space-5);justify-content:space-between;gap:.65rem var(--space-4);color:#9fb4ab;border-top:1px solid #ffffff21;flex-wrap:wrap;font-size:.76rem;display:flex}@media (min-width:42rem){.container{width:min(calc(100% - 3rem), var(--content-width))}.assurance-strip{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid,.guide-grid,.calculator-discovery-grid,.permit-work-grid,.permit-municipality-grid,.permit-intro-grid,.permit-result-columns,.permit-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.permit-answer-options,.permit-result-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid-two,.related-grid,.content-grid,.permit-principles{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-scope-header,.quote-scope-row{grid-template-columns:minmax(13rem,1.25fr) repeat(2,minmax(10rem,.75fr));align-items:center}.quote-scope-header{padding:0 var(--space-4) var(--space-3);color:var(--color-ink-subtle);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:820;display:grid}.quote-status-field label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.quote-result-grid,.source-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.duration{grid-template-columns:minmax(0,1fr) auto}.duration strong{text-align:right}.steps{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:52rem){.desktop-nav{display:flex}.mobile-navigation{display:none}.us-mobile-navigation{display:block}.hero-grid{grid-template-columns:minmax(0,1.65fr) minmax(18rem,.78fr)}.us-calculator-discovery-hero{padding:var(--space-6) 0 var(--space-5)}.us-calculator-discovery-hero h1{max-width:100%;font-size:clamp(2.55rem,4.5vw,3.5rem);line-height:1.06}.us-calculator-discovery-hero .preview-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.us-calculator-discovery-hero .preview-list div{padding:0 1rem}.home-calculator-section{padding-top:var(--space-4)}.home-calculator-section .section-heading{margin-bottom:var(--space-2)}.process-layout{grid-template-columns:minmax(15rem,.7fr) minmax(0,1.3fr);gap:clamp(3rem,7vw,6rem)}.process-layout .steps{grid-template-columns:1fr}.explain-grid,.future-band{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(3rem,7vw,6rem)}.page-header-split{grid-template-columns:minmax(0,1.45fr) minmax(17rem,.55fr);gap:clamp(3rem,7vw,6rem)}.calculator-hub-header.page-header-split{gap:var(--space-7);grid-template-columns:minmax(0,1.2fr) minmax(22rem,.8fr);align-items:center}.calculator-workspace{gap:var(--space-5);grid-template-columns:minmax(0,1.03fr) minmax(21rem,.97fr)}.estimate-panel{position:sticky;top:5.2rem}.guide-group{grid-template-columns:minmax(13rem,.42fr) minmax(0,1.58fr);gap:clamp(2.5rem,6vw,5rem)}.article-wrap{grid-template-columns:minmax(0,1fr) 18rem;grid-template-areas:"article aside";gap:clamp(2.5rem,6vw,5rem)}.article-aside{position:sticky;top:5.4rem}.permit-tool-layout{grid-template-columns:minmax(0,1.45fr) minmax(17rem,.55fr);gap:clamp(2.5rem,5vw,4.5rem)}.permit-scope-note{position:sticky;top:5.4rem}}@media (min-width:72rem){.us-desktop-nav{display:flex}.us-mobile-navigation{display:none}}@media (min-width:68rem){.us-calculator-discovery-hero .hero-grid{gap:var(--space-6);grid-template-columns:minmax(0,3fr) minmax(25rem,2fr)}.card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.guide-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-grid-featured{grid-template-columns:repeat(4,minmax(0,1fr))}.calculator-discovery-grid,.permit-work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid{grid-template-columns:minmax(18rem,1.45fr) minmax(8rem,.75fr) minmax(13rem,1fr) minmax(8rem,.65fr)}.footer-brand{grid-column:auto}}@media (max-width:27rem){.bathroom-scope-result .breakdown-list{grid-template-columns:minmax(0,1fr)}.bathroom-scope-result .breakdown-line{grid-template-columns:repeat(2,minmax(0,1fr))}.bathroom-scope-result .breakdown-line dd{overflow-wrap:anywhere;white-space:normal;min-width:0}.breakdown-line.roofing-material-line{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}.section-heading{flex-direction:column;align-items:start}.hero-actions .button{width:100%}.calculator-form-header{align-items:start}.window-form .calculator-form-header,.bathroom-scope-form .calculator-form-header{flex-direction:column}.estimate-basis,.duration{align-items:start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
