:root{--steel:#1f2933;--steel2:#323f4b;--spark:#f97316;--spark-d:#c2410c;--bg:#f5f7fa;--text:#1f2933;--muted:#52606d;--white:#fff;--radius:10px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);background:var(--white);line-height:1.6;font-size:17px}
img{max-width:100%;height:auto}a{color:var(--spark-d)}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
header.site{background:var(--steel);color:#fff;position:sticky;top:0;z-index:50}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;padding-bottom:10px}
.brand{color:#fff;text-decoration:none;font-weight:800;line-height:1.15;font-size:1.05rem}.brand small{display:block;font-weight:500;color:#cbd2d9;font-size:.78rem}
nav.main{display:none}nav.main a{color:#e4e7eb;text-decoration:none;margin-left:18px;font-weight:600;font-size:.95rem}nav.main a:hover{color:#fff;text-decoration:underline}
.btn{display:inline-block;background:var(--spark);color:#111;font-weight:800;text-decoration:none;padding:13px 22px;border-radius:var(--radius);border:0;cursor:pointer;font-size:1rem;text-align:center}
.btn:hover,.btn:focus{background:#fb923c}.btn.alt{background:transparent;color:#fff;border:2px solid #fff}.btn.alt:hover{background:rgba(255,255,255,.1)}
.btn.sm{padding:9px 14px;font-size:.92rem;white-space:nowrap}
:focus-visible{outline:3px solid #fbbf24;outline-offset:2px}
.hero{background:linear-gradient(135deg,rgba(31,41,51,.96),rgba(50,63,75,.92)),repeating-linear-gradient(45deg,#323f4b 0 12px,#1f2933 12px 24px);color:#fff;padding:56px 0 64px}
.hero h1{font-size:2rem;line-height:1.15;margin:0 0 14px}.hero p.lead{font-size:1.15rem;color:#e4e7eb;max-width:640px}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 18px}
.badges{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-wrap:wrap;gap:8px 18px;color:#fbd38d;font-weight:600;font-size:.95rem}.badges li::before{content:"✔ ";color:var(--spark)}
section{padding:56px 0}section.alt{background:var(--bg)}
h2{font-size:1.65rem;line-height:1.2;margin:0 0 10px}h3{margin:0 0 8px;font-size:1.15rem}
.sub{color:var(--muted);margin:0 0 28px;max-width:720px}
.grid{display:grid;gap:18px;grid-template-columns:1fr}
.card{background:#fff;border:1px solid #e4e7eb;border-radius:var(--radius);padding:22px;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.card ul{padding-left:20px;margin:8px 0 0}.card .ico{font-size:1.6rem}
.aud{border-top:5px solid var(--spark)}.aud .btn{margin-top:14px}
.areas{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:0}.areas li{background:#fff;border:1px solid #cbd2d9;border-radius:999px;padding:6px 14px;font-weight:600;font-size:.95rem}
.ph{background:repeating-linear-gradient(45deg,#e4e7eb 0 10px,#f5f7fa 10px 20px);border:2px dashed #9aa5b1;border-radius:var(--radius);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);font-weight:700;padding:10px}
.tbox{border-left:5px solid var(--spark)}.tbox p{font-style:italic;color:var(--muted)}
details{background:#fff;border:1px solid #e4e7eb;border-radius:var(--radius);padding:14px 18px;margin-bottom:10px}summary{font-weight:700;cursor:pointer}
form.quote{background:#fff;border-radius:var(--radius);padding:22px;border:1px solid #e4e7eb;box-shadow:0 2px 10px rgba(0,0,0,.06)}
.field{margin-bottom:16px}label{display:block;font-weight:700;margin-bottom:5px}label .opt{font-weight:400;color:var(--muted)}
input,select,textarea{width:100%;padding:12px;font:inherit;border:1px solid #9aa5b1;border-radius:8px;background:#fff}textarea{min-height:120px}
.row2{display:grid;gap:0 16px;grid-template-columns:1fr}.hp{position:absolute;left:-9999px}
.note{font-size:.88rem;color:var(--muted)}
.callout{background:var(--steel);color:#fff;border-radius:var(--radius);padding:26px}.callout a{color:#fbd38d}
footer.site{background:var(--steel);color:#cbd2d9;padding:40px 0 90px;font-size:.95rem}footer.site a{color:#fbd38d}footer.site h3{color:#fff}
.callbar{position:fixed;bottom:0;left:0;right:0;display:flex;z-index:60;box-shadow:0 -2px 10px rgba(0,0,0,.25)}
.callbar a{flex:1;text-align:center;padding:15px 8px;font-weight:800;text-decoration:none}.callbar .c{background:var(--spark);color:#111}.callbar .q{background:#fff;color:var(--steel)}
.draft-banner{background:#fef3c7;color:#78350f;text-align:center;font-size:.85rem;padding:6px 10px}
@media(min-width:720px){.grid.g2{grid-template-columns:1fr 1fr}.grid.g3{grid-template-columns:repeat(3,1fr)}.grid.g4{grid-template-columns:repeat(4,1fr)}.row2{grid-template-columns:1fr 1fr}.hero h1{font-size:2.7rem}.hero{padding:84px 0 92px}}
@media(min-width:960px){nav.main{display:block}.callbar{display:none}footer.site{padding-bottom:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand{display:flex;align-items:center;gap:.6rem}.brand .logo{width:56px;height:56px;flex:none;background:#fff;border-radius:50%;padding:3px;box-sizing:border-box}@media(max-width:600px){.brand .logo{width:44px;height:44px}}
/* photos */
.shot{margin:0;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.shot img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.shot figcaption{padding:10px 12px;font-size:.92rem;color:var(--muted)}
.photo-hero{background:linear-gradient(135deg,rgba(31,41,51,.88),rgba(31,41,51,.72)),url(/assets/img/custom-flatbed-body.jpg) center/cover no-repeat;background:linear-gradient(135deg,rgba(31,41,51,.88),rgba(31,41,51,.72)),image-set(url(/assets/img/custom-flatbed-body.webp) type("image/webp"),url(/assets/img/custom-flatbed-body.jpg) type("image/jpeg")) center/cover no-repeat}
.shot.natural{align-self:start}.shot.natural img{aspect-ratio:auto;object-fit:contain}
.circa{font-size:.85em;color:#9aa5b1;font-style:italic}
nav.main a{white-space:nowrap}
