/* Production adaptation of approved Claude package v3. */
:root{--navy:#17233a;--paper:#f7f4ee;--orange:#d4622a;--orange-text:#a94716;--ink:#2a3446;--muted:#5e6878;--line:#ddd7cc;--sand:#efeae0;--green:#2f6049;--sans:Archivo,Arial,Helvetica,system-ui,sans-serif;--serif:"Source Serif 4",Georgia,serif;--mono:"Build It Out Mono",ui-monospace,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--sans);-webkit-font-smoothing:antialiased}img,svg{max-width:100%}img{height:auto}a{color:var(--navy);text-underline-offset:3px}a:hover{color:var(--orange-text)}a,button,summary,input{touch-action:manipulation}button,input,select{font:inherit}*:focus-visible{outline:3px solid var(--orange);outline-offset:3px}h1,h2,h3,h4{font-family:var(--sans)}h1{font-size:clamp(34px,4.8vw,52px);line-height:1.05;letter-spacing:-.03em;font-weight:800;text-wrap:balance}p{line-height:1.65}main{min-height:45vh}.skip-link{position:fixed;left:16px;top:-100px;z-index:200;background:var(--navy);color:var(--paper);padding:12px 16px}.skip-link:focus{top:8px}.site-header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{max-width:1240px;margin:auto;padding:0 clamp(16px,4vw,32px);height:64px;display:flex;gap:28px;align-items:center}.brand{display:inline-flex;align-items:center;flex:none;text-decoration:none}.brand img{display:block;width:auto;height:28px;max-width:193px}.desktop-nav{height:100%;display:flex;align-items:stretch;gap:4px;margin-left:auto}.desktop-nav a{display:flex;align-items:center;padding:0 12px;border-top:3px solid transparent;border-bottom:3px solid transparent;font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap}.desktop-nav a[aria-current=page]{border-bottom-color:var(--orange)}.mobile-menu{display:none;margin-left:auto}.mobile-menu summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px;font-size:15px;font-weight:600;cursor:pointer;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;top:100%;left:0;right:0;padding:12px 20px 20px;background:white;border-bottom:1px solid var(--line);box-shadow:0 14px 22px -18px #17233a55}.mobile-menu nav a{display:block;padding:14px 8px;border-bottom:1px solid var(--sand);font-size:16px;text-decoration:none}.mobile-menu nav a[aria-current=page]{color:var(--orange-text);font-weight:700}
.page-wrap,.container{max-width:1240px;margin:auto;padding:28px clamp(16px,4vw,32px) 88px}.breadcrumb{font-size:14px;color:var(--muted);line-height:1.55}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.breadcrumb li+li:before{content:"/";padding-right:8px;color:var(--muted)}.breadcrumb a{color:#3a475c}.article-header{max-width:760px;margin:32px auto;display:flex;flex-direction:column;gap:16px}.article-header h1,.article-header p{margin:0}.category,.eyebrow{font-family:var(--mono);font-size:12px;line-height:1.6;letter-spacing:.12em;text-transform:uppercase;color:var(--orange-text)}.dek{font-family:var(--serif);font-size:21px;line-height:1.55;color:var(--ink)}.article-meta{display:flex;flex-wrap:wrap;gap:8px 20px;padding-top:14px;border-top:1px solid var(--line);font-size:14px;line-height:1.5;color:var(--muted)}.article-meta strong{color:var(--navy)}.article-meta a{color:#3a475c}.hero{max-width:1000px;margin:0 auto 48px}.hero img,.hero>svg{display:block;width:100%;height:auto;border-radius:6px;background:var(--sand)}figcaption{font:13px/1.55 var(--sans);color:var(--muted);margin-top:10px}.reading-layout{display:grid;grid-template-columns:220px minmax(0,720px);justify-content:center;gap:48px;align-items:start}.toc{position:sticky;top:88px;font:14px/1.45 var(--sans);padding:16px 0}.toc h2,.toc .toc-label{font:11px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 10px}.toc ol,.toc ul{list-style:none;margin:0;padding:0}.toc a{display:block;padding:7px 0 7px 12px;border-left:2px solid #e1dacd;text-decoration:none;color:#3a475c}.toc a:hover{border-left-color:var(--orange);color:var(--navy)}.prose{min-width:0;font:18px/1.7 var(--serif);color:var(--ink);overflow-wrap:anywhere}.prose h2{font-size:30px;letter-spacing:-.02em;line-height:1.2;color:var(--navy);margin:46px 0 16px;scroll-margin-top:90px}.prose>h2:first-child,.prose>section:first-child>h2:first-child{margin-top:0}.prose h3{font-size:21px;line-height:1.3;color:var(--navy);margin:28px 0 10px}.prose p{margin:0 0 20px}.prose ul,.prose ol{margin:0 0 24px;padding-left:24px}.prose li+li{margin-top:7px}.prose a{color:var(--orange-text);text-decoration-thickness:1px}.prose strong{font-weight:700}.prose figure{margin:30px 0}.prose figure img,.prose figure svg{display:block;max-width:100%;height:auto;border-radius:6px}.prose blockquote{margin:24px 0;padding:8px 20px;border-left:3px solid var(--orange);background:var(--sand)}.prose blockquote p:last-child{margin-bottom:0}.prose table{display:block;max-width:100%;width:100%;overflow:auto;border:1px solid var(--line);border-radius:6px;border-collapse:separate;border-spacing:0;background:white;font:15px/1.5 var(--sans);margin:26px 0}.prose caption{text-align:left;padding:12px 16px;font-size:13px;color:var(--muted)}.prose th,.prose td{text-align:left;vertical-align:top;padding:12px 16px;border-bottom:1px solid var(--sand);min-width:120px}.prose th{font-weight:600;color:var(--navy)}.prose thead th{background:var(--sand);font-size:13px}.prose tr:last-child td,.prose tr:last-child th{border-bottom:0}.table-wrap{max-width:100%;overflow:auto}.callout,.prose aside,.prose .answer-box,.prose .quick-answer{margin:24px 0;padding:20px;background:#e6efe9;border-radius:4px;font:16px/1.6 var(--sans);color:#24473a;border-left:3px solid var(--green)}.callout h2,.callout h3,.prose aside h2,.prose aside h3{font-size:19px;margin:0 0 10px}.callout p:last-child,.prose aside p:last-child{margin-bottom:0}.callout.warning,.prose .caution{background:#fbebd9;color:#5e2a0e;border-left-color:var(--orange)}.sources,.prose section#sources{margin-top:48px;padding:24px;background:var(--sand);border-radius:6px;font:14px/1.65 var(--sans)}.sources h2,.prose section#sources h2{font-size:20px;margin:0 0 14px}.sources ol,.prose section#sources ol{margin-bottom:14px}.sources a,.prose section#sources a{overflow-wrap:anywhere;color:#3a475c}.related{margin-top:48px;padding-top:28px;border-top:1px solid var(--line);font-family:var(--sans)}.related h2{font-size:24px;margin-top:0}.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.related a{display:flex;flex-direction:column;padding:20px;background:white;border:1px solid var(--line);border-radius:6px;text-decoration:none;font-size:17px;line-height:1.4}.related a:hover{border-color:var(--orange)}
.home-hero{border-bottom:1px solid var(--line)}.hero-grid{max-width:1240px;margin:auto;padding:clamp(40px,6vw,80px) clamp(16px,4vw,32px);display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(32px,5vw,64px);align-items:center}.hero-copy{min-width:0}.hero-copy h1{font-size:clamp(38px,5.4vw,64px);line-height:1.02;letter-spacing:-.035em;margin:20px 0 24px}.hero-copy>p{font-size:clamp(17px,1.6vw,20px);line-height:1.55;color:#3a475c;max-width:560px}.hero-actions{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;margin-top:28px}.button{display:inline-flex;justify-content:center;align-items:center;gap:14px;min-height:46px;padding:12px 20px;background:var(--orange-text);color:white;border:1px solid var(--orange-text);border-radius:4px;font:600 15px/1.35 var(--sans);text-decoration:none}.button:hover{background:#85350e;color:white;border-color:#85350e}.home-visual{min-width:0;margin:0}.home-visual img,.home-visual svg{display:block;width:100%;height:auto;border-radius:6px;background:var(--sand)}.home-section{max-width:1240px;margin:auto;padding:clamp(48px,6vw,80px) clamp(16px,4vw,32px)}.section-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:28px}.section-heading h2{font-size:clamp(28px,3.4vw,40px);letter-spacing:-.025em;line-height:1.1;margin:0}.section-heading p{font-size:17px;line-height:1.55;color:#3a475c;margin:10px 0 0;max-width:700px}.section-heading>a{font-size:15px;font-weight:600;color:var(--orange-text)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.guide-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;min-width:0}.guide-card img{display:block;width:100%;aspect-ratio:3/2;object-fit:contain;background:var(--sand);border-radius:6px}.guide-card h2,.guide-card h3,.guide-card strong{font-size:21px;font-weight:700;line-height:1.25;letter-spacing:-.01em;margin:0}.guide-card p{font-size:15px;line-height:1.55;color:#4a5568;margin:0}.guide-card .category{font-size:11px}.guide-card .read-link{font-size:14px;font-weight:600;color:var(--orange-text)}.guide-card:hover h2,.guide-card:hover h3,.guide-card:hover strong{text-decoration:underline;text-underline-offset:4px}.intro-header{max-width:760px;margin:32px 0 40px}.intro-header h1{margin:0 0 18px;font-size:clamp(36px,5vw,56px)}.intro-header p{font-size:19px;line-height:1.6;color:#3a475c}.editorial-band{background:var(--navy);color:var(--paper);padding:clamp(24px,4vw,40px);border-radius:8px;display:grid;grid-template-columns:1fr 1.5fr;gap:32px}.editorial-band h2{font-size:28px;line-height:1.2;letter-spacing:-.02em;margin:0 0 12px}.editorial-band p{margin:0;color:#c9d0da;font-size:16px}.editorial-band a{color:var(--paper)}.editorial-band ul{margin:0;padding-left:20px;line-height:1.8}.utility-content{max-width:760px;margin:32px auto 0}.utility-content h1{margin:0 0 20px}.utility-content .prose{margin-top:28px}
.site-footer{background:var(--navy);color:#d9dee6;font-family:var(--sans)}.footer-inner{max-width:1240px;margin:auto;padding:48px clamp(16px,4vw,32px) 32px}.footer-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;padding-bottom:32px;border-bottom:1px solid #2e3b52}.footer-brand img{height:30px;max-width:207px}.footer-top p{font-size:15px;line-height:1.55;color:#b8c0cc;margin:12px 0 0}.footer-top .button{background:var(--orange-text);border-color:var(--orange-text);color:#fff}.footer-top .button:hover{background:#85350e}.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:32px 0}.footer-links nav{display:flex;flex-direction:column;gap:10px}.footer-label{font:11px/1.5 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#f1a678;margin-bottom:4px}.footer-links a{color:#d9dee6;font-size:14px;line-height:1.5;text-decoration:none;align-self:start}.footer-links a:hover{color:white;text-decoration:underline}.footer-bottom{padding-top:24px;border-top:1px solid #2e3b52;color:#aeb7c4;font-size:13px}.footer-bottom p{max-width:950px;margin:0 0 14px;line-height:1.65}.footer-bottom strong{color:var(--paper)}
@media(min-width:1500px){.prose{font-size:19px}}
@media(max-width:1000px){.reading-layout{grid-template-columns:180px minmax(0,720px);gap:32px}.desktop-nav a{padding:0 8px}.hero-grid{grid-template-columns:1fr 1fr;gap:32px}.card-grid{gap:24px 16px}}
@media(max-width:800px){.desktop-nav{display:none}.mobile-menu{display:block}.reading-layout{display:block}.toc{position:static;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:0 0 32px}.toc ol,.toc ul{display:flex;flex-wrap:wrap;gap:6px 18px}.toc li{flex:1 1 200px}.toc a{padding:6px 0 6px 10px}.hero-grid{grid-template-columns:1fr}.hero-copy h1{max-width:670px}.home-visual{max-width:650px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-band{grid-template-columns:1fr}.article-header{margin-top:28px}.hero{margin-bottom:32px}.footer-links{gap:24px}}
@media(max-width:520px){.page-wrap,.container{padding-bottom:56px}.header-inner{gap:12px}.brand img{height:25px;max-width:172px}.dek{font-size:19px}.article-meta{font-size:13px;gap:8px 14px}.prose{font-size:18px;line-height:1.7}.prose h2{font-size:26px;margin-top:38px}.prose h3{font-size:20px}.prose th,.prose td{padding:10px 12px}.prose aside,.callout,.sources,.prose section#sources{padding:18px}.hero-grid{padding-top:40px;padding-bottom:40px}.hero-copy h1{font-size:39px}.hero-copy>p{font-size:18px}.card-grid{grid-template-columns:1fr;gap:32px}.guide-card h2,.guide-card h3{font-size:23px}.related-grid{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr 1fr;gap:28px 20px}.footer-top .button{width:100%}.footer-inner{padding-top:36px}.footer-brand img{height:29px;max-width:200px}.toc li{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.quick-answer,.answer-box{padding:20px 24px;background:#e6efe9;border-left:3px solid #2f6049;border-radius:4px;font-family:var(--sans);font-size:17px;line-height:1.6;margin-bottom:28px}.quick-answer p:last-child,.answer-box p:last-child{margin-bottom:0}.privacy-link{border:0;padding:0;background:none;color:inherit;text-decoration:underline;font:inherit;text-underline-offset:3px;cursor:pointer}.site-footer .privacy-link{min-height:44px}.safety-note{background:#fbebd9}.article-sources{margin-top:48px;padding:24px;background:var(--sand);border-radius:6px;font:14px/1.65 var(--sans)}

.footer-brand>svg{height:30px;width:207px;display:block}.diagram-link{display:block}.table-wrap{max-width:100%;overflow:auto}.table-wrap:focus-visible{outline:3px solid var(--orange)}

/* Decorative architectural pencil studies; page content remains above this layer.
   Persist this in the build's source CSS as well as the generated public CSS. */
body{position:relative;isolation:isolate;background-color:var(--paper,#f7f4ee)}
body::before{
  content:"";
  position:fixed;
  inset:64px 0 0;
  z-index:-1;
  pointer-events:none;
  background-image:url("/assets/construction-pencil.svg");
  background-repeat:repeat-y;
  background-position:center top;
  background-size:1600px 1100px;
  opacity:.34;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.8) 15%,transparent 34%,transparent 72%,rgba(0,0,0,.8) 92%,#000 100%);
  mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.8) 15%,transparent 34%,transparent 72%,rgba(0,0,0,.8) 92%,#000 100%);
}
/* On compact screens the sketch stays at the outer edges, away from the text. */
@media(max-width:800px){
  body::before{
    background-size:1100px auto;
    background-position:left top;
    opacity:.2;
    -webkit-mask-image:linear-gradient(90deg,#000,transparent 23%,transparent 88%,rgba(0,0,0,.45));
    mask-image:linear-gradient(90deg,#000,transparent 23%,transparent 88%,rgba(0,0,0,.45));
  }
}
@media(prefers-contrast:more){body::before{display:none}}
@media print{body::before{display:none}}
