:root{--color-background: #fff8dc;--color-surface: #fffdf5;--color-surface-strong: #ffd23f;--color-text: #080808;--color-text-muted: #3f3f37;--color-primary: #1d4ed8;--color-primary-strong: #1e3a8a;--color-accent: #ffd23f;--color-info: #8ec5ff;--color-success: #9db7ff;--color-danger: #d7263d;--color-border: #080808;--color-focus: #005fcc;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 0;--radius-md: 0;--radius-lg: 0;--border-thin: 2px solid var(--color-border);--border: 3px solid var(--color-border);--border-thick: 4px solid var(--color-border);--shadow-sm: 3px 3px 0 0 var(--color-border);--shadow-md: 5px 5px 0 0 var(--color-border);--shadow-lg: 8px 8px 0 0 var(--color-border)}*,*:before,*:after{box-sizing:border-box}html{color:var(--color-text);background:var(--color-background);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}body{min-height:100vh;margin:0;background:var(--color-background)}.site-header{width:min(100% - (2 * var(--space-6)),72rem);margin-inline:auto;padding-top:var(--space-6)}.site-brand{display:inline-flex;align-items:center;gap:var(--space-3);color:var(--color-text);font-size:1.125rem;font-weight:900;text-decoration:none;text-transform:lowercase}.site-brand img{width:44px;height:44px;flex:0 0 44px}.site-brand span{padding:.35rem .5rem;background:var(--color-surface);border:var(--border-thin);box-shadow:var(--shadow-sm)}main{width:min(100% - (2 * var(--space-6)),72rem);margin-inline:auto;padding-block:var(--space-12)}.hero{max-width:48rem;margin-bottom:var(--space-8)}h1{max-width:20ch;margin-block:var(--space-2) var(--space-4);font-size:clamp(2rem,6vw,3.75rem);font-weight:900;line-height:1.05}h2,h3{margin-block:0 var(--space-3);font-weight:850;line-height:1.2}p{max-width:62ch;margin-block:0;color:var(--color-text-muted);font-size:1.125rem}a{color:var(--color-primary-strong);font-weight:700;text-decoration-thickness:2px;text-underline-offset:3px}button,input,select{font:inherit}button,select,input:not([type=checkbox]):not([type=radio]){min-height:44px}.calculator-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-6);align-items:start}.calculator-form,.results-card,.results-placeholder{padding:clamp(var(--space-4),3vw,var(--space-8));background:var(--color-surface);border:var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.form-heading{margin-bottom:var(--space-6)}.form-heading p,.field-help,.estimate-disclaimer,.result-details small{font-size:.9rem}.field,.check-field,fieldset{margin-block:var(--space-4)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.field label,legend{display:block;margin-bottom:var(--space-2);font-weight:700}.field input,.field select{width:100%;padding:.65rem .75rem;color:var(--color-text);background:var(--color-surface);border:var(--border-thin);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.field-help{color:var(--color-text-muted)}.check-field,.radio-field{display:flex;gap:var(--space-3);align-items:flex-start;min-height:44px}.check-field input[type=checkbox]{appearance:none;width:44px;height:44px;margin:0;flex:0 0 44px;background:var(--color-surface);border:var(--border);box-shadow:var(--shadow-sm);cursor:pointer}.check-field input[type=checkbox]:checked{background:var(--color-primary);box-shadow:inset 0 0 0 8px var(--color-surface),var(--shadow-sm)}.radio-field input[type=radio]{width:1.25rem;height:1.25rem;margin-top:.15rem;flex:0 0 auto;accent-color:var(--color-primary)}.radio-field{min-height:44px;align-items:center}fieldset{padding:var(--space-3) var(--space-4);border:var(--border-thin);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.field-error{min-height:1.3em;color:var(--color-danger);font-size:.9rem;font-weight:750}[aria-invalid=true]{border-color:var(--color-danger)!important;background:#fff0f2!important}.error-summary,.form-notice,.result-notices{margin-block:var(--space-4);padding:var(--space-3);border:var(--border-thin);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.error-summary{color:var(--color-text);background:#ffe7eb;border-color:var(--color-danger)}.form-notice,.result-notices{color:var(--color-text);background:var(--color-accent);border-color:var(--color-border)}.form-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.primary-button,.secondary-button{padding:.65rem 1rem;border:var(--border-thin);border-color:var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:pointer;font-weight:800}.primary-button{color:#fff;background:var(--color-primary)}.secondary-button{color:var(--color-text);background:var(--color-surface)}.primary-button:hover,.secondary-button:hover,.primary-action:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-md)}.primary-button:active,.secondary-button:active,.primary-action:active{transform:translate(3px,3px);box-shadow:none}.result-summary{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-block:var(--space-6)}.result-summary div{padding:var(--space-3);background:var(--color-info);border:var(--border-thin);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.result-summary dt{color:var(--color-text-muted);font-size:.85rem}.result-summary dd{margin:var(--space-1) 0 0;font-size:1.2rem;font-weight:800}.result-summary .result-primary{grid-column:1 / -1;background:var(--color-success)}.result-summary .result-primary dd{color:var(--color-text);font-size:clamp(1.75rem,4vw,2.5rem)}.result-details summary{min-height:44px;padding:var(--space-3);color:var(--color-text);background:var(--color-surface-strong);border:var(--border-thin);box-shadow:var(--shadow-sm);cursor:pointer;font-weight:800;overflow-wrap:anywhere}.result-details summary:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-md)}.result-details summary:active{transform:translate(3px,3px);box-shadow:none}.result-details li{margin-bottom:var(--space-3)}.result-details strong,.result-details small{display:block;overflow-wrap:anywhere}[hidden]{display:none!important}.eyebrow{color:var(--color-primary-strong);font-size:.875rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.breadcrumbs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0 0 var(--space-6);padding:var(--space-2);background:var(--color-surface-strong);border:var(--border-thin);box-shadow:var(--shadow-sm);list-style:none;overflow-wrap:anywhere}.breadcrumbs li+li:before{margin-right:var(--space-2);content:"/";color:var(--color-text-muted)}.breadcrumbs a{color:var(--color-text)}.page-information{max-width:48rem;margin-top:var(--space-12)}.page-information article{margin-top:var(--space-6);padding:var(--space-6);background:var(--color-surface);border:var(--border);box-shadow:var(--shadow-md)}.page-information a{color:var(--color-primary);font-weight:700}.seo-article{display:grid;gap:var(--space-10);max-width:52rem}.seo-article section,.seo-article footer{display:grid;gap:var(--space-3);padding:var(--space-6);background:var(--color-surface);border:var(--border);box-shadow:var(--shadow-md)}.seo-article li{margin-block:var(--space-2);line-height:1.6}.seo-article a{overflow-wrap:anywhere}.primary-action{display:inline-block;padding:.75rem 1rem;color:#fff;background:var(--color-primary);border:var(--border-thin);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-weight:800}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(max-width:48rem){.site-header{width:min(100% - (2 * var(--space-4)),72rem);padding-top:var(--space-4)}.site-brand span{max-width:calc(100vw - 6rem);overflow-wrap:anywhere}main{width:min(100% - (2 * var(--space-4)),72rem);padding-block:var(--space-8)}.calculator-grid,.field-row,.result-summary{grid-template-columns:1fr}.result-summary .result-primary{grid-column:auto}.calculator-form,.results-card,.results-placeholder{box-shadow:var(--shadow-sm)}}
