  :root{
    --ink:#23241f;        /* asphalt */
    --green:#1e4632;      /* bottle green — truck door */
    --green-deep:#14311f;
    --cream:#f1e9d4;      /* sign lettering */
    --safety:#e8842c;     /* safety orange */
    --paper:#f7f5ef;
    --rule:#23241f;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  body{background:var(--paper);color:var(--ink);font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:15.5px;line-height:1.7}
  .disp{font-family:Haettenschweiler,'Arial Narrow','Franklin Gothic Medium','Segoe UI',sans-serif;text-transform:uppercase;letter-spacing:.01em;font-weight:400}
  .mono{font-family:'Courier New',Courier,monospace}
  .wrap{max-width:1020px;margin:0 auto;padding:0 20px}
  a{color:var(--green)}
  p{margin-bottom:14px}

  /* utility bar */
  .util{background:var(--ink);color:#cfc9b8;font-size:12px;padding:6px 0}
  .util .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
  .util b{color:var(--safety)}

  /* masthead = truck door */
  .mast{background:var(--green);color:var(--cream);border-bottom:6px double var(--cream);padding:26px 0 22px}
  .mast .wrap{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
  .mast .name{font-size:clamp(38px,6vw,64px);line-height:.95;color:var(--cream)}
  .mast .name em{font-style:normal;color:var(--safety)}
  .mast .tag{font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:#bcd3c2;margin-top:8px}
  .callboard{text-align:right;border:3px solid var(--cream);padding:12px 18px;min-width:250px}
  .callboard .lbl{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#bcd3c2}
  .callboard a{display:block;color:var(--cream);text-decoration:none;font-size:clamp(24px,3.4vw,34px);margin-top:2px}
  .callboard .hrs{font-size:11.5px;color:#bcd3c2;margin-top:4px}
  @media(max-width:700px){.mast .wrap{align-items:flex-start}.callboard{text-align:left;width:100%}}

  /* hero sign */
  .yard{padding:52px 0 40px;background:
    repeating-linear-gradient(90deg, transparent 0 118px, rgba(35,36,31,.035) 118px 120px)}
  .sign{background:var(--green);color:var(--cream);max-width:860px;margin:0 auto;padding:38px 40px 34px;border:4px solid var(--ink);box-shadow:10px 10px 0 rgba(35,36,31,.9);transform:rotate(-.6deg)}
  .sign h1{font-size:clamp(34px,5.4vw,58px);line-height:1.02;color:var(--cream)}
  .sign h1 span{color:var(--safety)}
  .sign .sub{font-family:Verdana,Geneva,sans-serif;text-transform:none;font-size:15.5px;color:#d8e4da;margin-top:14px;max-width:620px}
  .sign .row{margin-top:22px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
  .btn{display:inline-block;background:var(--safety);color:var(--ink);text-decoration:none;padding:13px 22px;border:3px solid var(--ink);font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-size:20px;letter-spacing:.04em}
  .btn:hover{background:#f29840}
  .sign .small{font-size:12px;color:#bcd3c2}

  /* notice strip */
  .notice{background:var(--safety);border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);padding:12px 0}
  .notice .wrap{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap}
  .notice .stamp{font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-size:18px;letter-spacing:.1em;white-space:nowrap}
  .notice p{margin:0;font-size:14px;max-width:820px}

  /* section scaffolding */
  section{padding:52px 0}
  .kick{font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-size:15px;letter-spacing:.30em;color:var(--green);margin-bottom:6px}
  h2{font-family:Haettenschweiler,'Arial Narrow','Franklin Gothic Medium',sans-serif;text-transform:uppercase;font-weight:400;font-size:clamp(28px,4vw,42px);line-height:1.05;margin-bottom:18px}
  .rule-thick{border:none;border-top:3px solid var(--rule);margin:0}
  .rule-thin{border:none;border-top:1px solid var(--rule);margin:0}

  /* hauling list — rate-card style */
  .haul{display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
  @media(max-width:760px){.haul{grid-template-columns:1fr}}
  .haul .item{padding:16px 0 14px;border-bottom:1px solid var(--ink)}
  .haul .item h3{font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-weight:400;font-size:21px;margin-bottom:4px}
  .haul .item p{margin:0;font-size:14px;color:#4a4a42}

  /* steps */
  .steps{counter-reset:s;max-width:760px}
  .steps .st{display:flex;gap:22px;padding:18px 0;border-bottom:1px solid var(--ink);align-items:flex-start}
  .steps .st::before{counter-increment:s;content:counter(s);font-family:Haettenschweiler,'Arial Narrow',sans-serif;font-size:44px;line-height:1;color:var(--paper);background:var(--ink);min-width:56px;text-align:center;padding:6px 0 2px}
  .steps h3{font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-weight:400;font-size:20px;margin-bottom:2px}
  .steps p{margin:0;font-size:14.5px;color:#4a4a42}

  /* two boards row */
  .boards{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:start}
  @media(max-width:820px){.boards{grid-template-columns:1fr}}

  /* gate board */
  .gate{background:var(--green-deep);color:var(--cream);border:4px solid var(--ink);padding:24px 26px;box-shadow:8px 8px 0 rgba(35,36,31,.9)}
  .gate h3{font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-weight:400;font-size:24px;letter-spacing:.06em;border-bottom:2px solid var(--cream);padding-bottom:8px;margin-bottom:12px}
  .gate table{width:100%;border-collapse:collapse;font-family:'Courier New',monospace;font-size:14px}
  .gate td{padding:6px 0;vertical-align:top}
  .gate td:last-child{text-align:right;white-space:nowrap}
  .gate tr+tr td{border-top:1px dotted #567a63}
  .gate .foot{font-size:12px;color:#bcd3c2;margin-top:12px;font-family:Verdana,sans-serif}

  /* mileage sign (SVG-ish via HTML) */
  .miles{background:var(--green);color:#fff;border:4px solid var(--ink);box-shadow:8px 8px 0 rgba(35,36,31,.9);padding:20px 26px}
  .miles h3{font-family:Haettenschweiler,'Arial Narrow',sans-serif;font-weight:400;text-transform:uppercase;font-size:22px;letter-spacing:.08em;color:#fff;border-bottom:2px solid #fff;padding-bottom:8px;margin-bottom:10px}
  .miles table{width:100%;border-collapse:collapse;font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-size:22px;letter-spacing:.05em}
  .miles td{padding:7px 0}
  .miles td:last-child{text-align:right;font-family:'Courier New',monospace;font-size:18px}
  .miles .foot{font-size:12px;font-family:Verdana,sans-serif;color:#cfe0d4;margin-top:10px;text-transform:none;letter-spacing:0}

  /* guide columns */
  .guide{columns:2;column-gap:44px;column-rule:1px solid var(--ink);max-width:100%}
  @media(max-width:760px){.guide{columns:1}}
  .guide p{font-size:14.5px}
  .guide .lead-in{font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-size:17px;letter-spacing:.04em}

  /* QA flat list */
  .qa{max-width:820px}
  .qa .q{font-family:Haettenschweiler,'Arial Narrow',sans-serif;text-transform:uppercase;font-weight:400;font-size:20px;padding-top:22px;margin-top:22px;border-top:1px solid var(--ink)}
  .qa .q:first-of-type{border-top:none;margin-top:0;padding-top:0}
  .qa .a{font-size:14.5px;color:#4a4a42;margin-top:6px}

  /* closing board + footer */
  .close{background:var(--ink);color:var(--paper);padding:56px 0;text-align:center}
  .close h2{color:var(--paper);margin-bottom:8px}
  .close p{color:#b5b0a1;max-width:520px;margin:0 auto 20px;font-size:14.5px}
  footer{background:var(--ink);border-top:1px solid #4a4a42;color:#8f8b7d;padding:26px 0 34px;font-size:12px;line-height:1.7}
  footer b{color:#b5b0a1}
  .sr{position:absolute;left:-9999px}

/* ==== mobile hardening (2026-08-18) ==== */
@media (max-width:430px){
  html,body{overflow-x:hidden}
  *,*::before,*::after{min-width:0}
  .wrap,.sheet,.band,section,article,header,footer,div{max-width:100%}
  table{display:block;width:100%;overflow-x:auto}
  td,th,.tab{white-space:normal}
  img,svg{max-width:100%;height:auto}
  h1,h2,h3,h4{overflow-wrap:break-word}
  a[href^="tel:"],a.btn,a.callbtn,a.phone,.cta a,.bigcta a,.stampcta a,.callchip a,.phoneplate a,.callboard a{display:inline-block;padding-top:13px;padding-bottom:13px;line-height:1.2}
  .callboard .hrs,.callboard .lbl{font-size:12.5px}
}
