
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;line-height:1.55;font-size:17px}
img{max-width:100%;display:block}a{color:inherit}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.bar{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.logoplate{display:block;background:#fff;padding:6px 12px;border-radius:var(--r0,0)}.logoplate img{height:46px;width:auto}
nav{display:flex;gap:6px;flex:1;flex-wrap:wrap}nav a{text-decoration:none;padding:8px 12px;font-weight:600}
.phone{text-decoration:none;font-weight:800;font-size:1.25rem;text-align:right;line-height:1.1}.phone small{display:block;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.strip{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;padding-top:7px;padding-bottom:7px}
.herogrid{display:grid;grid-template-columns:1.05fr 1fr;gap:36px;align-items:center;padding-top:48px;padding-bottom:48px}
.kicker{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin:0 0 12px}
h1{font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.05;margin:0 0 16px}
.lead{font-size:1.15rem;margin:0 0 24px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 0}
.btn{display:inline-block;padding:14px 22px;font-weight:800;text-decoration:none;border:2px solid transparent}
.heroimg{margin:0}.heroimg img{width:100%;aspect-ratio:16/10;object-fit:cover}.heroimg figcaption{font-size:.75rem;padding-top:6px;opacity:.7}
.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.statgrid div{padding:22px 20px}
.statgrid b{display:block;font-size:2rem;line-height:1}.statgrid span{font-size:.9rem;display:block;margin-top:6px}
.sec{padding:56px 0}h2{font-size:1.7rem;line-height:1.15;margin:0 0 8px}.sub{margin:0 0 28px;max-width:60ch}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:s}
.steps>li{counter-increment:s;padding:20px}.steps>li::before{content:counter(s);display:inline-grid;place-items:center;width:34px;height:34px;font-weight:800;margin-bottom:10px}
.steps b{display:block;font-size:1.1rem;margin-bottom:6px}.steps span{font-size:.95rem}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cards h3{margin:14px 0 6px;font-size:1.1rem}.cards p{margin:0;font-size:.95rem}
.ph{aspect-ratio:4/3;display:grid;place-items:center;text-align:center;font-size:.8rem;background:repeating-linear-gradient(135deg,rgba(128,128,128,.14) 0 12px,rgba(128,128,128,.24) 12px 24px);border:1px dashed rgba(128,128,128,.7)}
.ph.wide{aspect-ratio:16/10}.ph i{font-style:normal;opacity:.8}
.two{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.tags li{padding:8px 12px;font-weight:600;font-size:.92rem}
.ind{list-style:none;padding:0;margin:0}.ind li{padding:11px 0;border-bottom:1px solid rgba(128,128,128,.35)}.ind b{display:block}
.contact{padding:48px 0}.fgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.contact h2{margin-bottom:12px}.contact p{margin:0 0 14px}.small{font-size:.85rem;opacity:.85}
@media(max-width:860px){.herogrid,.two,.fgrid{grid-template-columns:1fr}.statgrid,.steps,.cards{grid-template-columns:1fr 1fr}.phone{text-align:left}}
@media(max-width:520px){.statgrid,.steps,.cards{grid-template-columns:1fr}}

:root{--bg:#262422;--surface:#322f2c;--bg2:#1b1a18;--ink:#f2efe9;--muted:#b9b2a8;--line:#4a4642;--acc:#F58026;--wash:#3d3935}
body{background:var(--bg);color:var(--ink);font-family:'Barlow',sans-serif;font-size:17.5px}
h1,h2,h3,.statgrid b,.phone{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.03em}
h1{font-weight:700}h2{font-weight:700;font-size:1.9rem}h2::after{content:"";display:block;width:56px;height:6px;background:var(--acc);margin-top:8px}h3{font-weight:700;letter-spacing:.04em}
.top{background:var(--bg2);border-bottom:5px solid var(--acc)}.strip{max-width:none;background:var(--acc);color:#1b1a18;font-weight:600;padding-left:max(20px,calc((100% - 1160px)/2 + 20px));padding-right:max(20px,calc((100% - 1160px)/2 + 20px))}
.logoplate{background:#fff;padding:3px 8px;border-radius:3px}nav a{color:var(--ink)}nav a.on{background:var(--acc);color:#1b1a18}.phone{color:var(--acc);font-size:1.6rem}
.kicker{color:var(--acc)}.btn{background:var(--acc);color:#1b1a18;border-color:var(--acc);border-radius:3px}.btn.alt{background:transparent;color:var(--ink);border-color:var(--ink)}
.heroimg img{border-radius:3px;box-shadow:10px 10px 0 var(--acc)}.heroimg figcaption{margin-top:12px}
.stats{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.statgrid b{color:var(--acc);font-size:2.6rem}.statgrid div{border-right:2px solid var(--bg2)}.statgrid div:last-child{border:0}
.steps{gap:12px}.steps>li{background:var(--surface);border-left:6px solid var(--acc);border-radius:3px}.steps>li::before{background:var(--acc);color:#1b1a18;font-family:'Barlow Condensed';border-radius:3px}
.sec.alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cards article{background:var(--bg);border:1px solid var(--line);border-radius:3px;padding:12px 12px 18px}.cards .ph{border-radius:2px}
.tags li{background:var(--acc);color:#1b1a18;border-radius:2px;font-weight:700}.ind li{border-color:var(--line)}
.contact{background:var(--bg2);border-top:5px solid var(--acc)}.contact a{color:var(--acc)}
.skip:focus{color:#1b1a18}

img{height:auto}
.photo{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:2px}.photo.wide{aspect-ratio:16/10}.photo.tall{aspect-ratio:4/5;max-height:620px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery .photo{aspect-ratio:4/3}
@media(max-width:860px){.gallery{grid-template-columns:1fr}}
html{scroll-padding-top:120px}.top{position:sticky;top:0;z-index:50}
.logoplate img{height:60px;width:auto}
.pagehead{background:var(--surface);border-bottom:1px solid var(--line);padding:44px 0 36px}.pagehead h1{margin:0 0 10px}.pagehead .lead{max-width:62ch;margin:0}
.crumb{font-size:.85rem;color:var(--muted);margin:0 0 10px}.crumb a{color:var(--muted)}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
.prose p{max-width:68ch}.prose h2{margin-top:34px}.prose h2:first-child{margin-top:0}
.spec{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line)}.spec th,.spec td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.spec th{width:34%;font-weight:600}
.spec tr:last-child th,.spec tr:last-child td{border-bottom:0}
.blocks{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.block{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px}.block h3{margin:0 0 10px;font-size:1.25rem}.block ul{margin:0;padding-left:1.1rem}.block li{margin:5px 0}
.prodrow{display:grid;grid-template-columns:1fr 1.2fr;gap:36px;align-items:start;padding:36px 0;border-bottom:1px solid var(--line)}.prodrow:last-child{border-bottom:0}
.prodrow ul{padding-left:1.1rem;margin:12px 0 0}.prodrow li{margin:5px 0}
.callout{background:var(--wash);border-left:6px solid var(--acc);padding:18px 22px;border-radius:0 3px 3px 0;margin:24px 0}
.ctagrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ctabox{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px}.ctabox h2{font-size:1.3rem}.ctabox .big{font-family:'Barlow Condensed',sans-serif;font-size:2rem;font-weight:700;display:block;line-height:1.1}.ctabox a{color:var(--acc);font-weight:600}
.band{background:var(--acc);color:#1b1a18;padding:36px 0}.band .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.band h2{margin:0;color:#1b1a18}.band h2::after{background:#1b1a18}.band .btn{background:#1b1a18;color:var(--acc);border-color:#1b1a18}
.band + .contact{border-top:0}
@media(max-width:860px){.blocks,.prodrow,.ctagrid{grid-template-columns:1fr}}
.steps ul{margin:10px 0 0;padding-left:1.1rem}.steps ul li{margin:6px 0;font-size:.95rem}
.headgrid{display:grid;grid-template-columns:minmax(0,1fr) clamp(120px,28vw,280px);gap:clamp(14px,3vw,32px);align-items:center}.headgrid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:3px;display:block}
