
:root{--ink-900:#17150f;--ink-700:#3a362c;--ink-500:#6b6455;--ink-300:#a39b88;--white:#fff;--paper-000:#fffdf8;--paper-100:#f7f2e7;--paper-200:#efe8d8;--paper-300:#e3d9c4;--grey-200:#e8e6e1;--grey-400:#b5b1a8;--grey-600:#7a756b;--clay-700:#8e3c22;--clay-600:#a8482a;--clay-500:#c25a34;--clay-200:#ebc7b6;--clay-100:#f5e1d7;--moss-700:#3c4830;--moss-600:#4c5b3c;--moss-500:#5f7049;--moss-200:#cdd7bb;--moss-100:#e4e9d8;--brass-600:#a87722;--brass-500:#c4922f;--brass-200:#edd9a8;--brass-100:#f7ecd3;--blueprint-600:#5b7385;--blueprint-500:#7c93a3;--blueprint-200:#c6d5de;--blueprint-100:#e1eaef;--text-heading:var(--ink-900);--text-body:var(--ink-700);--text-muted:var(--ink-500);--text-faint:var(--ink-300);--text-accent:var(--clay-600);--text-on-ink:var(--paper-100);--text-on-accent:#fffdf8;--surface-page:var(--white);--surface-card:var(--white);--surface-tint:var(--paper-100);--surface-sunken:var(--paper-200);--surface-ink:var(--ink-900);--surface-accent:var(--clay-600);--surface-keep:var(--moss-100);--surface-skip:var(--clay-100);--surface-budget:var(--brass-100);--surface-measure:var(--blueprint-100);--line-hairline:var(--grey-200);--line-warm:var(--paper-300);--line-strong:var(--ink-900);--text-eyebrow:var(--clay-600);--text-byline:var(--grey-600);--line-measure:var(--blueprint-500);--line-focus:var(--clay-600);--verdict-need:var(--moss-600);--verdict-skip:var(--clay-600);--verdict-cost:var(--brass-600)}
:root{--font-display:"Newsreader",Georgia,"Times New Roman",serif;--font-body:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;--text-2xs:11px;--text-xs:13px;--text-sm:15px;--text-base:17px;--text-lg:19px;--text-xl:22px;--text-2xl:28px;--text-3xl:36px;--text-4xl:48px;--text-5xl:64px;--text-6xl:80px;--leading-tight:1.06;--leading-snug:1.2;--leading-normal:1.4;--leading-body:1.62;--leading-loose:1.75;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-display:-.02em;--tracking-normal:0;--tracking-label:.09em;--tracking-wide:.14em;--measure-narrow:34ch;--measure-body:66ch;--measure-wide:78ch;--type-display:var(--weight-regular) var(--text-5xl)/var(--leading-tight) var(--font-display);--type-h1:var(--weight-regular) var(--text-4xl)/1.1 var(--font-display);--type-h2:var(--weight-regular) var(--text-2xl)/1.22 var(--font-display);--type-h3:var(--weight-semibold) var(--text-lg)/1.3 var(--font-body);--type-body:var(--weight-regular) var(--text-base)/var(--leading-body) var(--font-body);--type-lede:var(--weight-regular) var(--text-xl)/1.5 var(--font-display);--type-small:var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-body);--type-label:var(--weight-medium) var(--text-2xs)/1 var(--font-mono);--type-dimension:var(--weight-medium) var(--text-xs)/1 var(--font-mono)}
:root{--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--gutter:24px;--gutter-wide:40px;--page-max:1160px;--article-max:720px;--rail:300px;--section-gap:var(--space-20);--block-gap:var(--space-8);--stack-gap:var(--space-4);--pad-card:var(--space-6);--pad-card-tight:var(--space-4);--pad-control-x:var(--space-5)}
:root{--border-hairline:1px solid var(--line-hairline);--border-strong:2px solid var(--line-strong);--border-measure:1px dashed var(--line-measure);--border-accent:2px solid var(--clay-600);--radius-none:0;--radius-sm:3px;--radius-md:6px;--radius-lg:10px;--radius-pill:999px;--radius-card:var(--radius-md);--radius-control:var(--radius-sm);--radius-tag:var(--radius-pill);--rule-section:2px;--rule-hair:1px}
:root{--shadow-none:none;--shadow-card:0 1px 0 0 var(--paper-300);--shadow-raised:0 2px 0 0 var(--paper-300), 0 10px 22px -16px #17150f47;--shadow-lifted:0 3px 0 0 var(--paper-300), 0 20px 40px -24px #17150f57;--shadow-inset:inset 0 1px 0 0 #17150f0f;--shadow-focus:0 0 0 3px var(--clay-200)}
:root{--duration-fast:.12s;--duration-base:.2s;--duration-slow:.32s;--ease-standard:cubic-bezier(.2,.6,.2,1);--ease-out:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.5,0,.5,1);--transition-control:background-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);--press-shift:1px}
*,:before,:after{box-sizing:border-box}body{background:var(--surface-page);color:var(--text-body);font:var(--type-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{color:var(--text-heading);margin:0}h1{font:var(--type-h1);letter-spacing:var(--tracking-display)}h2{font:var(--type-h2)}h3{font:var(--type-h3)}p{margin:0 0 var(--space-4);text-wrap:pretty}a{color:var(--text-accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--clay-700);-webkit-text-decoration-color:var(--clay-500);text-decoration-color:var(--clay-500)}a:focus-visible,button:focus-visible{outline:2px solid var(--line-focus);outline-offset:2px}table{border-collapse:collapse}strong{font-weight:var(--weight-semibold);color:var(--text-heading)}em{font-style:italic}code,kbd{font-family:var(--font-mono);font-size:.92em}::selection{background:var(--clay-200)}
html,body{max-width:100vw}button{font:inherit;background:0 0;border:none}.page{max-width:var(--page-max);padding:var(--space-10) var(--gutter) 0;margin:0 auto}h1{font:var(--weight-regular) clamp(2.25rem, 5vw, 4rem)/1.08 var(--font-display);letter-spacing:-.025em;max-width:27ch;margin:var(--space-5) 0}h2{font:var(--weight-semibold) var(--text-xl)/1.3 var(--font-body);margin:0 0 var(--space-4)}h3{font:var(--weight-semibold) var(--text-base)/1.4 var(--font-body);margin:0 0 var(--space-2)}p{max-width:var(--measure-body)}.lede{font:var(--type-lede);color:var(--ink-700)}a{text-underline-offset:3px}:where(a,button,summary,[tabindex]):focus-visible{outline:3px solid var(--clay-600);outline-offset:4px}section[id]{scroll-margin-top:24px}.skip-link{z-index:100;background:#fff;padding:12px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:8px}.site-header{border-bottom:var(--border-hairline);background:var(--surface-page)}.nav-inner{max-width:var(--page-max);padding:var(--space-5) var(--gutter);justify-content:space-between;align-items:center;gap:var(--space-6);margin:auto;display:flex}.nav-inner>a{text-decoration:none}.nav-inner nav{gap:var(--space-6);flex-wrap:wrap;align-items:center;display:flex}.nav-inner nav>a,summary{color:var(--ink-900);padding:10px 0;font-weight:600}.nav-inner details{position:relative}summary{cursor:pointer}.nav-inner details ul{z-index:10;background:var(--surface-page);border:var(--border-hairline);width:280px;box-shadow:var(--shadow-raised);margin:0;padding:20px;list-style:none;position:absolute;top:100%;right:0}.nav-inner li+li{margin-top:16px}.nav-inner li a{display:block}.breadcrumb{font:var(--type-small);flex-wrap:wrap;gap:10px;display:flex}.home-hero{padding:var(--space-6) 0 var(--space-12);align-items:center;gap:var(--space-10);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);display:grid}.home-hero-copy{min-width:0}.home-hero em{color:var(--clay-600)}.text-link{padding:12px 0;font-weight:600;display:inline-block}.section-heading{border-bottom:var(--border-strong);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:24px;display:flex}.guide-cards{gap:var(--space-5);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.editorial-note{margin-top:var(--space-12);padding:var(--space-8);background:var(--surface-tint);border-top:var(--border-strong)}.article-header{padding:var(--space-6) 0 var(--space-8);border-bottom:var(--border-strong);margin-bottom:var(--space-8)}.eyebrow{flex-wrap:wrap;gap:12px;display:flex}.byline{font:var(--type-small);color:var(--ink-700);margin-top:24px}.article-grid{gap:var(--space-10);grid-template-columns:minmax(0,1fr) 220px;align-items:start;display:grid}.article-body{gap:var(--space-10);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.editorial-photo{border-radius:var(--radius-card);margin:0;overflow:hidden}.editorial-photo img{width:100%;height:auto;display:block}.editorial-photo figcaption{font:var(--type-small);font-weight:var(--weight-regular);color:var(--ink-700);padding-top:6px}.reason-list{margin:0;padding:0;list-style:none}.reason-list li{border-top:var(--border-hairline);padding:20px 0}.reason-list p{margin:0}.toc{border-left:var(--border-hairline);padding-left:20px;position:sticky;top:24px}.toc h2{font-size:var(--text-sm)}.toc a{font:var(--type-small);padding:8px 0;display:block}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;display:flex}.filters button{cursor:pointer;border:1px solid var(--paper-300);border-radius:var(--radius-pill);min-height:44px;color:var(--ink-900);padding:10px 16px}.filters button[aria-pressed=true]{background:var(--ink-900);border-color:var(--ink-900);color:var(--paper-100)}.filters [role=status]{font:var(--type-small);padding:8px}.plan-grid{grid-template-columns:minmax(0,1fr);gap:24px;display:grid}.measured-plan{border:var(--border-hairline);border-radius:var(--radius-card);background:var(--surface-measure);box-shadow:var(--shadow-card);margin:0;overflow:hidden}.diagram-heading{background:var(--surface-card);font:var(--type-small);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:12px 16px;display:flex}.measured-plan img{object-fit:contain;width:100%;height:auto;max-height:480px;display:block}.measured-plan figcaption{background:var(--surface-card);font:var(--type-small);color:var(--ink-700);padding:12px 16px}.guide-figure{border:var(--border-hairline);border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--shadow-card);margin:0;overflow:hidden}.guide-figure img{width:100%;height:auto;display:block}.guide-figure figcaption{background:var(--surface-card);font:var(--type-small);color:var(--ink-700);padding:12px 16px}.responsive-figure-frame picture,.responsive-figure-frame img{width:100%;height:auto;display:block}.guide-figure-companion{border-top:var(--border-hairline);background:var(--surface-card);gap:12px;padding:16px;display:grid}.guide-figure-companion h3{font:var(--weight-semibold) var(--text-base)/1.4 var(--font-body);margin:0}.guide-figure-companion p,.guide-figure-companion ul{max-width:100%;margin:0}.guide-figure-companion ul{gap:8px;padding-left:24px;display:grid}.guide-figure-b4{background:var(--paper-200,#f7f2e7)}.guide-figure-b4 figcaption{border-top:var(--border-hairline)}.a3-inline-figure{gap:24px;padding:24px;display:grid}.a3-inline-title{font:var(--weight-regular) clamp(1.5rem, 3vw, 2rem)/1.2 var(--font-display);margin:0}.a3-states{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.a3-state{gap:12px;min-width:0;display:grid}.a3-state h4,.a3-meta h4,.a3-room h4{font:var(--weight-semibold) var(--text-base)/1.4 var(--font-body);margin:0}.a3-drawing{background:var(--surface-measure);border:var(--border-hairline);position:relative}.a3-drawing img{background:var(--surface-measure)}.a3-key{text-align:center;min-width:18px;color:var(--ink-900);font:700 14px/18px var(--font-body);background:#fffdf8f2;border-radius:2px;padding:0 2px;position:absolute;transform:translate(-50%,-50%)}.a3-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.a3-meta section{gap:12px;display:grid}.a3-meta p,.a3-meta ul,.a3-assumptions,.a3-rooms{max-width:100%;margin:0}.a3-meta ul,.a3-assumptions{gap:8px;padding-left:24px;display:grid}.a3-swatch{vertical-align:middle;border:2px solid var(--ink-700);width:28px;height:16px;margin-right:8px;display:inline-block}.a3-swatch.basket{background:#829c8b}.a3-swatch.sweep{border-style:dashed}.a3-swatch.floor{background:repeating-linear-gradient(135deg,#e9e9da 0 4px,#c6ccb9 4px 5px)}.a3-swatch.motion{background:#946242;border:0;height:3px}.a3-rooms{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.a3-room{background:var(--surface-tint);border-top:3px solid #829c8b;gap:12px;min-width:0;padding:18px;display:grid}.a3-room p,.a3-room ol{max-width:100%;margin:0}.a3-room ol{gap:4px;padding-left:24px;display:grid}.a3-note{background:#f4eee3;border-left:3px solid #946242;max-width:100%;margin:0;padding:16px}.article-list{max-width:var(--measure-body);gap:12px;margin:0;padding-left:24px;display:grid}.article-list-ordered{padding-left:28px}.download-card{border:var(--border-hairline);border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--shadow-card);padding:20px}.download-list{gap:12px;margin:0;padding-left:24px;display:grid}.download-list p,.download-card>p{color:var(--ink-700);margin:6px 0 0}.measured-plan.illustrated-plan{background:var(--paper-200,#f7f2e7);box-shadow:none;border:0;border-radius:0}.illustrated-plan img{max-width:600px;max-height:none;margin-inline:auto}.illustrated-plan .diagram-heading{border-bottom:var(--border-hairline)}.illustrated-plan figcaption a{min-height:44px;padding-block:12px;display:inline-block}.dimension-legend{padding-left:24px}.dimension-legend li{margin-bottom:8px}.dimension-legend strong{font-family:var(--font-mono);font-size:var(--text-sm)}.table-scroll{max-width:100%;padding-bottom:8px;overflow-x:auto}.table-scroll table{min-width:580px}.table-scroll>figure>div{overflow:visible!important}footer>div:first-child{grid-template-columns:minmax(0,1fr) repeat(2,minmax(0,1fr))!important}footer a:hover{text-decoration:underline!important}footer>div:last-child span{color:var(--paper-300)!important}@media (max-width:900px){.home-hero{gap:var(--space-8);grid-template-columns:minmax(0,1fr)}.guide-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.article-grid{grid-template-columns:minmax(0,1fr)}.toc{border-left:0;border-bottom:var(--border-hairline);grid-row:1;padding:0 0 20px;position:static}.toc nav{flex-wrap:wrap;gap:8px 20px;display:flex}.toc h2{width:100%;margin-bottom:0}}@media (max-width:600px){.nav-inner{flex-direction:column;align-items:flex-start;gap:16px}.nav-inner nav{gap:8px 20px;width:100%}.nav-inner details ul{width:auto;box-shadow:none;margin-top:8px;position:static}.nav-inner details[open]{width:100%}.guide-cards{grid-template-columns:minmax(0,1fr)}.a3-inline-figure{padding:16px}.a3-states,.a3-meta,.a3-rooms{grid-template-columns:minmax(0,1fr);gap:24px}.a3-room{padding:16px}footer>div:first-child{grid-template-columns:minmax(0,1fr)!important}.editorial-note{padding:24px}}
