:root{--char:#1f2327;--char2:#2c3237;--orange:#f26b1d;--orange2:#d95a10;--steel:#dfe3e6;--steel2:#c3c9ce;--paper:#f7f6f3;--ink:#1d2125}
img{max-width:100%;height:auto}
html{scroll-behavior:smooth}
body{font-family:'Public Sans',system-ui,sans-serif;color:var(--ink);background:var(--paper)}
section{padding:5rem 0;scroll-margin-top:110px}
h1,h2,h3,.fbrand{font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;font-weight:800;line-height:.95}
h2{font-size:clamp(2.6rem,5vw,4rem);margin-bottom:1.2rem}
a{color:var(--orange2)}
.topbar{background:var(--char);color:#d8dcdf;font-size:.82rem;padding:.4rem 0}
.topbar a{color:#fff;text-decoration:none;font-weight:600}
.navbar{background:#fff;border-bottom:4px solid var(--orange);padding:.6rem 0}
.navbar-brand{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:2rem;text-transform:uppercase;color:var(--char)!important;letter-spacing:.02em;margin:0;display:flex;align-items:center;gap:.5rem}
.navbar-brand small{font-family:'Public Sans',sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.08em;color:#666;align-self:flex-end;margin-bottom:.35rem}
.mark{background:var(--orange);color:#fff;width:2.1rem;height:2.1rem;display:inline-grid;place-items:center;border-radius:3px}
.navbar.navbar-expand-lg .navbar-collapse{justify-content:center}
.nav-link{font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:var(--char)!important}
.nav-link:hover{color:var(--orange2)!important}
.btn{border-radius:2px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.btn-orange{background:var(--orange);color:#fff;border:0}
.btn-orange:hover{background:var(--orange2);color:#fff}
.btn-ghost{border:2px solid #fff;color:#fff}
.btn-ghost:hover{background:#fff;color:var(--char)}
.btn-dark-line{border:2px solid var(--char);color:var(--char)}
.btn-dark-line:hover{background:var(--char);color:#fff}
.hero{background:var(--char);color:#fff;padding:5rem 0 0;position:relative}
.eyebrow{font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:1.05rem;color:var(--orange)}
.eyebrow.dark{color:var(--orange2)}
.hero h1{font-size:clamp(3.6rem,9vw,7.2rem);margin:.6rem 0 1.4rem;font-weight:900}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero .lead{max-width:34rem;color:#e4e7ea}
.hazard{height:26px;margin-top:5rem;background:repeating-linear-gradient(-45deg,var(--orange) 0 22px,var(--char) 22px 44px)}
.rolldoor{max-width:400px;margin:0 auto;border:10px solid var(--steel2);border-bottom:0;background:var(--steel)}
.rd-slats{height:300px;background:repeating-linear-gradient(to bottom,#e9ecee 0 22px,#aab1b7 22px 25px);display:grid;place-items:center;text-align:center;color:var(--char)}
.rd-label{background:var(--orange);color:#fff;padding:1.2rem 1.6rem;font-family:'Big Shoulders Display',sans-serif;font-weight:800;letter-spacing:.14em;font-size:1.1rem;box-shadow:0 0 0 4px #fff}
.rd-label b{display:block;font-size:2.6rem;letter-spacing:.02em;line-height:1}
.rd-label span{font-family:'Public Sans',sans-serif;font-size:.78rem;letter-spacing:.04em;font-weight:600}
.rd-bar{height:22px;background:var(--char2);border-top:4px solid #888;position:relative}
.rd-bar::after{content:"";position:absolute;left:50%;top:5px;width:70px;height:8px;margin-left:-35px;background:#9aa1a7;border-radius:4px}
.rd-office{background:#fff;color:var(--char);padding:1rem;text-align:center;font-size:.92rem;border:0}
.sec-lead{max-width:44rem}
.photos{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.photos figure{margin:0;background:#fff;padding:8px 8px 0;box-shadow:0 0 0 1px var(--steel2)}
.photos img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.photos figcaption{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.5rem 0}
.why{background:var(--char);color:#fff;padding:1.6rem 1.8rem;border-left:8px solid var(--orange)}
.why h3{font-size:1.8rem;color:var(--orange)}
.why ul{margin:0;padding-left:1.1rem;font-size:.95rem}
.why li{margin:.3rem 0}
.steel{background:var(--steel)}
.amen{background:#fff;padding:1.2rem;height:100%;border-top:4px solid var(--orange)}
.amen b{font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;font-size:1.4rem;letter-spacing:.02em}
.amen p{margin:.3rem 0 0;font-size:.93rem}
.svc{background:var(--char);color:#fff;padding:1.5rem;height:100%}
.svc h3{color:var(--orange);font-size:1.9rem}
.svc p{margin:0}
.special{display:flex;align-items:center;gap:1.2rem;background:#fff;padding:1rem 1.4rem;font-weight:600}
.special img{width:90px;height:90px}
.special p{margin:0}
.door{background:#fff;border:1px solid var(--steel2);height:100%;position:relative;padding:0 0 1.3rem}
.slats{height:54px;background:repeating-linear-gradient(to bottom,#e9ecee 0 9px,#aab1b7 9px 11px);border-bottom:5px solid var(--char2)}
.plate{display:flex;flex-direction:column;align-items:center;margin:-22px auto 0;background:var(--orange);color:#fff;width:max-content;min-width:8.5rem;padding:.35rem 1rem;position:relative;box-shadow:0 0 0 3px #fff}
.plate .u{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:2.4rem;line-height:1}
.plate .sq{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.price{text-align:center;font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:2.8rem;line-height:1;margin-top:.8rem;color:var(--char)}
.price span{font-size:1.4rem;vertical-align:top;margin-right:2px}
.price small{font-size:1rem;font-weight:700;color:#666;margin-left:2px}
.price.none{font-size:1.15rem;color:#666;letter-spacing:.06em;text-transform:uppercase;padding-top:.5rem}
.door h3{font-size:1.25rem;padding:0 1.1rem;margin:.9rem 0 .4rem;color:var(--char);text-align:center}
.door p{font-size:.88rem;padding:0 1.1rem;margin:0;color:#444}
.ink{background:var(--char)}
.rev{background:var(--char2);color:#e9ecee;padding:1.5rem;margin:0;height:100%;border-top:4px solid var(--orange)}
.rev blockquote{margin:0 0 1rem;font-size:.95rem}
.rev figcaption{font-weight:700;color:var(--orange)}
.contact{list-style:none;padding:0;margin:0 0 1.5rem}
.contact li{padding:.7rem 0;border-bottom:1px solid var(--steel2)}
.contact b{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#666}
.contact a{font-weight:600}
iframe{display:block}
.members{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;background:#fff;padding:1rem 1.5rem}
.members span{font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;font-weight:800;font-size:1.3rem;letter-spacing:.06em}
.members img{height:70px;width:auto;object-fit:contain}
footer{background:var(--char);color:#cfd4d8;padding:2.5rem 0 1.5rem}
footer a{color:#fff}
.fbrand{font-size:2rem;color:#fff}
footer hr{border-color:#4a5258}
.powered a{color:var(--orange)}
@media(max-width:575px){section{padding:3.5rem 0}.photos{grid-template-columns:1fr}.navbar-brand{font-size:1.5rem}.navbar-brand small{display:none}.hero{padding-top:3rem}.hazard{margin-top:3rem}}
