@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/barlow-condensed-latin-600-normal.DepVgxBB.woff2) format("woff2"),url(/_astro/barlow-condensed-latin-600-normal.BFJEwTuo.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/barlow-condensed-latin-700-normal.v1xN8_Wq.woff2) format("woff2"),url(/_astro/barlow-condensed-latin-700-normal.Dmwat-ge.woff) format("woff")}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/public-sans-latin-400-normal.8Rpg0ruU.woff2) format("woff2"),url(/_astro/public-sans-latin-400-normal.SBbinRkI.woff) format("woff")}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/public-sans-latin-600-normal.Fru-LXNs.woff2) format("woff2"),url(/_astro/public-sans-latin-600-normal.BR59oU-I.woff) format("woff")}:root{--paper:#f3f6f8;--white:#ffffff;--ink:#10263b;--ink-2:#1c3a56;--steel:#566b7e;--line:#c5d2dc;--grid:#e1e9ef;--signal:#f5a000;--signal-hi:#ffb81f;--dim:#c27200;--focus:#0b5cff;--radius:4px;--font-display:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--font-body:"Public Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.62}img,svg{max-width:100%;height:auto}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.04;letter-spacing:-.005em;margin:0 0 .5em;color:var(--ink)}h1{font-size:clamp(2.6rem,5.6vw,4.25rem)}h2{font-size:clamp(1.9rem,3.6vw,2.7rem)}h3{font-size:1.5rem;font-weight:600}p{margin:0 0 1em;max-width:66ch}a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:2px}.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:100}.skip:focus{left:8px;top:8px}.wrap{width:100%;max-width:1160px;margin-inline:auto;padding-inline:clamp(16px,4vw,32px)}.lead{font-size:1.25rem;line-height:1.5;color:var(--ink-2);max-width:56ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:.65em 1.35em;border-radius:var(--radius);font:600 1.05rem/1.1 var(--font-body);text-decoration:none;border:2px solid var(--ink);color:var(--ink);background:transparent;cursor:pointer;transition:background-color .15s,color .15s}.btn:hover{background:var(--ink);color:#fff;text-decoration:none}.btn-signal{background:var(--signal);border-color:var(--signal);color:var(--ink)}.btn-signal:hover{background:var(--signal-hi);border-color:var(--signal-hi);color:var(--ink)}.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.6rem}.site-header{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.wide{max-width:1280px}.bar{display:flex;align-items:center;gap:24px;min-height:72px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:700 1.55rem/1 var(--font-display);letter-spacing:.005em;white-space:nowrap}.brand:hover{text-decoration:none}.brand svg{width:40px;height:40px;flex:none}.primary{margin-left:auto;display:none}.primary ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}.primary a{font:600 1.14rem/1 var(--font-display);text-decoration:none;padding:8px 0;border-bottom:3px solid transparent;letter-spacing:.01em;white-space:nowrap}.primary a:hover{border-bottom-color:var(--line)}.primary a[aria-current=page]{border-bottom-color:var(--signal)}.bar .btn-call{display:none;min-height:44px;padding:.5em 1.1em;white-space:nowrap}.menu{margin-left:auto}.menu summary{list-style:none;cursor:pointer;font:600 1.1rem/1 var(--font-display);padding:12px 16px;border:2px solid var(--ink);border-radius:var(--radius)}.menu summary::-webkit-details-marker{display:none}.menu[open] summary{background:var(--ink);color:#fff}.menu-panel{position:absolute;left:0;right:0;top:100%;background:var(--white);border-bottom:1px solid var(--line);padding:8px clamp(16px,4vw,32px) 22px}.menu-panel ul{list-style:none;margin:0 0 14px;padding:0}.menu-panel li a{display:block;padding:13px 0;border-bottom:1px solid var(--grid);font:600 1.3rem/1.1 var(--font-display);text-decoration:none}.menu-panel li a[aria-current=page]{border-bottom-color:var(--signal)}@media(min-width:1200px){.primary{display:block}.menu{display:none}.bar .btn-call{display:inline-flex}}.callbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;justify-content:center;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--ink);border-top:3px solid var(--signal)}.callbar a{color:#fff;font:700 1.35rem/1 var(--font-display);text-decoration:none;letter-spacing:.02em;padding:6px 10px}@media(min-width:721px){.callbar{display:none}}@media(max-width:720px){body{padding-bottom:66px}}.sheet{background:linear-gradient(var(--grid) 1px,transparent 1px) 0 0/28px 28px,linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0/28px 28px,var(--paper)}.hero{padding-block:clamp(40px,7vw,88px)}.hero-grid{display:grid;gap:clamp(32px,5vw,64px);align-items:center}@media(min-width:900px){.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}.hero h1{max-width:15ch;margin-bottom:.35em}.where{margin:1.4rem 0 0;color:var(--steel);font-size:1rem}.measure{margin:0;display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:auto 30px auto;gap:8px}.measure img{grid-column:2;grid-row:1;width:100%;height:auto;display:block;border:1px solid var(--ink);background:var(--white)}.dim-v,.dim-h{position:relative;color:var(--ink)}.dim-v{grid-column:1;grid-row:1;background:linear-gradient(var(--dim),var(--dim)) 50% 0/1px 100% no-repeat,linear-gradient(var(--dim),var(--dim)) 50% 0/20px 2px no-repeat,linear-gradient(var(--dim),var(--dim)) 50% 100%/20px 2px no-repeat}.dim-h{grid-column:2;grid-row:2;background:linear-gradient(var(--dim),var(--dim)) 0 50%/100% 1px no-repeat,linear-gradient(var(--dim),var(--dim)) 0 50%/2px 20px no-repeat,linear-gradient(var(--dim),var(--dim)) 100% 50%/2px 20px no-repeat}.dim-v span,.dim-h span{position:absolute;background:var(--paper);padding:2px 8px;font:600 1rem/1 var(--font-display);letter-spacing:.04em;white-space:nowrap}.dim-v span{left:50%;top:50%;transform:translate(-50%,-50%) rotate(180deg);writing-mode:vertical-rl}.dim-h span{left:50%;top:50%;transform:translate(-50%,-50%)}.measure figcaption{grid-column:2;grid-row:3;color:var(--steel);font-size:.95rem;margin-top:2px}@media(prefers-reduced-motion:no-preference){.dim-v{animation:draw-v 1.1s .3s cubic-bezier(.3,.7,.2,1) both}.dim-h{animation:draw-h 1.1s .5s cubic-bezier(.3,.7,.2,1) both}.dim-v span,.dim-h span{animation:fade .5s 1.35s both}}@keyframes draw-v{0%{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}@keyframes draw-h{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}.section{padding-block:clamp(48px,7vw,88px)}.section-tight{padding-block:clamp(32px,5vw,56px)}.section>.wrap>h2{max-width:20ch}.band-white{background:var(--white);border-block:1px solid var(--line)}.products{display:grid;grid-template-columns:repeat(2,1fr);margin-top:2rem}@media(min-width:1000px){.products{grid-template-columns:repeat(4,1fr)}}.product{display:block;padding:18px 14px 24px;text-decoration:none;border-top:1px solid var(--line)}@media(min-width:640px){.product{padding:24px 22px 28px}}.product:hover{background:var(--paper);text-decoration:none}.product:hover h3{text-decoration:underline;text-decoration-thickness:2px}.product .dwg{width:100%;max-width:170px;margin:0 0 12px;display:block}.product h3{font-size:1.3rem}.product p{margin:0;color:var(--steel);font-size:.95rem}.product:nth-child(2n){border-left:1px solid var(--line)}@media(min-width:1000px){.product{border-top:0}.product+.product{border-left:1px solid var(--line)}}.dwg{color:var(--ink);overflow:visible}.dwg .mesh{stroke:var(--steel)}.dwg .dimline{stroke:var(--dim);fill:none;stroke-width:1.2}.dwg .dimfill{fill:var(--dim);stroke:none}.dwg text{font:600 15px var(--font-display);fill:var(--ink);stroke:none;letter-spacing:.04em}.dwg .paper{fill:var(--white)}.steps-band{background:var(--ink);color:#fff;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:28px 28px}.steps-band h2{color:#fff}.steps{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:28px;counter-reset:step}@media(min-width:820px){.steps{grid-template-columns:repeat(3,1fr);gap:40px}}.steps li{counter-increment:step;border-top:3px solid var(--signal);padding-top:16px}.steps li:before{content:counter(step);display:block;font:700 3.4rem/1 var(--font-display);color:var(--signal);margin-bottom:6px}.steps h3{color:#fff;margin-bottom:.3em}.steps p{color:#d5e0ea;margin:0}.split{display:grid;gap:clamp(28px,5vw,64px);align-items:start}@media(min-width:900px){.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.photo{display:block;width:100%;height:auto;border:1px solid var(--ink)}.checks{list-style:none;margin:0;padding:0;columns:1;column-gap:40px}@media(min-width:560px){.checks{columns:2}}.checks li{break-inside:avoid;padding:11px 0 11px 30px;border-bottom:1px solid var(--line);position:relative}.checks li:before{content:"";position:absolute;left:2px;top:1.05em;width:14px;height:8px;border-left:3px solid var(--dim);border-bottom:3px solid var(--dim);transform:rotate(-45deg) translateY(-30%)}.checks a{font-weight:600}.cta{background:var(--signal);color:var(--ink)}.cta .wrap{display:grid;gap:20px;align-items:center}@media(min-width:820px){.cta .wrap{grid-template-columns:1fr auto}}.cta h2{margin:0;max-width:22ch}.cta p{margin:.4em 0 0}.cta .big{font:700 clamp(2rem,5vw,3rem)/1 var(--font-display);text-decoration:none;display:block;margin-bottom:12px;letter-spacing:.01em}.cta .btn{border-color:var(--ink)}.cta .btn:hover{background:var(--ink)}.cta .btn-solid{background:var(--ink);color:#fff}.cta .btn-solid:hover{background:#000}.page-head{padding-block:clamp(36px,6vw,72px) clamp(28px,4vw,48px);border-bottom:1px solid var(--line)}.page-head h1{font-size:clamp(2.4rem,5.4vw,4rem);margin-bottom:.25em;max-width:18ch}.crumbs{margin:0 0 1rem;font-size:.95rem;color:var(--steel)}.crumbs a{color:var(--steel)}.product-grid{display:grid;gap:clamp(28px,5vw,64px);align-items:start}@media(min-width:940px){.product-grid{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr)}.drawing-col{position:sticky;top:96px}}.prose h2{font-size:1.9rem;margin-top:1.6em}.prose h2:first-child{margin-top:0}.titleblock{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--ink);background:var(--white);margin:2rem 0 0;max-width:640px}.titleblock div{padding:12px 16px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.titleblock div:nth-child(2n){border-right:0}.titleblock div:nth-last-child(-n+2){border-bottom:0}.titleblock dt{font:600 .92rem/1.2 var(--font-body);color:var(--steel);margin:0 0 3px}.titleblock dd{margin:0;font:600 1.18rem/1.2 var(--font-display);letter-spacing:.01em}@media(max-width:520px){.titleblock{grid-template-columns:1fr}.titleblock div{border-right:0}.titleblock div:nth-last-child(2){border-bottom:1px solid var(--ink)}}.drawing-sheet{background:var(--white);border:2px solid var(--ink);padding:22px 22px 18px}.drawing-sheet .dwg{width:100%;max-width:340px;margin-inline:auto;display:block}.drawing-sheet figcaption{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--ink);font:600 1.05rem/1.2 var(--font-display);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;letter-spacing:.02em}.drawing-sheet figcaption span:last-child{color:var(--steel)}.photo-strip{margin:20px 0 0;display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.photo-strip img{display:block;border:1px solid var(--ink);width:auto;max-width:100%;height:auto;flex:0 1 auto}.prose .photo-strip{margin:2rem 0 0}.quote-box{margin-top:28px;border-left:6px solid var(--signal);background:var(--white);padding:18px 20px;border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.quote-box h2{font-size:1.7rem;margin-bottom:.3em}.quote-box p{margin-bottom:.8em}blockquote.choice{margin:1.4em 0;padding:4px 0 4px 20px;border-left:6px solid var(--line);font-size:1.12rem;color:var(--ink-2)}blockquote.choice cite{display:block;margin-top:.5em;font-style:normal;color:var(--steel);font-size:.95rem}.seealso{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;margin:1.2rem 0 0;padding:0}.seealso a{font:600 1.2rem/1 var(--font-display)}.contact-grid{display:grid;gap:clamp(28px,5vw,64px);align-items:start}@media(min-width:900px){.contact-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}.details{margin:0}.details div{padding:16px 0;border-top:1px solid var(--line)}.details div:last-child{border-bottom:1px solid var(--line)}.details dt{color:var(--steel);font-size:.95rem;margin:0 0 4px}.details dd{margin:0;font:600 1.5rem/1.2 var(--font-display);letter-spacing:.01em}.details dd a{text-decoration:none}.details dd a:hover{text-decoration:underline}.details dd.plain{font:400 1.05rem/1.5 var(--font-body)}.form-card{background:var(--white);border:2px solid var(--ink);padding:clamp(20px,4vw,36px)}.form-card h2{font-size:2rem}.form-note{color:var(--steel)}.cf-form label{font-weight:600;font-size:.98rem}.cf-form input[type=text],.cf-form input[type=email],.cf-form input[type=tel],.cf-form textarea,.cf-form select{width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--steel);border-radius:var(--radius);padding:12px 14px;min-height:48px}.cf-form textarea{min-height:140px;resize:vertical}.cf-form input:focus,.cf-form textarea:focus,.cf-form select:focus{outline:3px solid var(--focus);outline-offset:1px;border-color:var(--ink)}.cf-form button[type=submit]{font:600 1.05rem/1.1 var(--font-body);background:var(--signal);color:var(--ink);border:2px solid var(--signal);border-radius:var(--radius);padding:.8em 1.6em;min-height:50px;cursor:pointer}.cf-form button[type=submit]:hover{background:var(--signal-hi);border-color:var(--signal-hi)}.cf-form button[disabled]{opacity:.65;cursor:progress}.site-footer{background:var(--white);border-top:1px solid var(--line);padding-block:44px 36px}.foot{display:grid;gap:32px}@media(min-width:820px){.foot{grid-template-columns:1.2fr 1fr 1fr}}.foot h2{font-size:1.25rem;margin-bottom:.6em;color:var(--steel);font-weight:600}.foot ul{list-style:none;margin:0;padding:0}.foot li{margin:0 0 .35em}.foot a{text-decoration:none;font-weight:500}.foot a:hover{text-decoration:underline}.foot .phone{font:700 2rem/1 var(--font-display);letter-spacing:.01em}.legal{margin-top:34px;padding-top:18px;border-top:1px solid var(--line);color:var(--steel);font-size:.92rem}.legal p{margin:0;max-width:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}.legal .credits{margin-top:.5em}.legal .credits a{color:inherit;text-underline-offset:2px}
