:root{--asphalt:#1f2326;--asphalt-2:#2b3034;--steel:#5c6770;--concrete:#e6e7e3;--orange:#ff7a1a;--stripe:#ffd23f;--white:#fbfbf9}
*{box-sizing:border-box}
body{margin:0;background:var(--concrete);color:var(--asphalt);font:400 1.0625rem/1.55 Barlow,system-ui,sans-serif;overflow-x:clip}
h1,h2,h3{font-family:"Big Shoulders Display",Impact,sans-serif;font-weight:900;line-height:.98;margin:0;letter-spacing:.005em}
h2{font-size:clamp(2.2rem,4.6vw,3.3rem)}
h3{font-weight:700;font-size:1.6rem}
p{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:2px}

.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px clamp(16px,4vw,56px);background:var(--asphalt);color:var(--white);border-bottom:6px solid var(--orange)}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo svg{width:42px;height:42px}
.logo span{font:900 1.9rem/0.9 "Big Shoulders Display",sans-serif;display:flex;flex-direction:column}
.logo small{font:600 .8rem Barlow,sans-serif;color:#b9c0c5;letter-spacing:.02em}
.bar-call{font-weight:700;text-decoration:none;border:2px solid var(--orange);color:var(--white);padding:9px 16px;border-radius:4px}
.bar-call:hover{background:var(--orange);color:var(--asphalt)}

.hero{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:56px clamp(16px,4vw,56px) 72px;background:var(--asphalt);color:var(--white);position:relative}
.hero h1{font-size:clamp(2.9rem,6.6vw,5.6rem);max-width:12ch;text-transform:none}
.lede{margin-top:22px;font-size:1.2rem;max-width:44ch;color:#c9cfd3}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 26px;border-radius:4px;font:700 1.08rem Barlow,sans-serif;text-decoration:none;border:2px solid transparent;cursor:pointer}
.btn-orange{background:var(--orange);color:var(--asphalt)}
.btn-orange:hover{background:var(--stripe)}
.btn-ghost{border-color:#7d878f;color:var(--white)}
.btn-ghost:hover{border-color:var(--white)}
.hero-art svg{width:100%;height:auto;display:block}

.services{padding:80px clamp(16px,4vw,56px);max-width:1200px;margin:0 auto}
.svc-head p{margin-top:12px;max-width:64ch;color:#454d53}
.work{width:100%;border-collapse:collapse;margin-top:36px;background:var(--white);border:2px solid var(--asphalt)}
.work thead th{background:var(--asphalt);color:var(--white);text-align:left;font-weight:600;font-size:.95rem;padding:12px 16px}
.work tbody th,.work td{text-align:left;vertical-align:top;padding:16px;border-top:1px solid #cfd2cd}
.work tbody th{font:700 1.15rem Barlow,sans-serif;width:24%}
.work td{color:#454d53}
.work td:nth-child(3){white-space:nowrap;width:12%}
.work td.p{font:900 1.9rem/1 "Big Shoulders Display",sans-serif;color:var(--asphalt);white-space:nowrap;width:10%}
.work tbody tr:nth-child(even){background:#f2f2ef}
.warranty{display:flex;gap:24px;align-items:center;margin-top:32px;padding:24px 28px;background:var(--stripe);border:2px solid var(--asphalt);border-radius:4px}
.warranty svg{width:110px;height:110px;flex:none}
.warranty p{margin-top:8px;max-width:60ch}

.dropoff{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;padding:80px clamp(16px,4vw,56px);background:var(--asphalt-2);color:var(--white)}
.drop-copy p{margin-top:14px;color:#c9cfd3;max-width:44ch}
.drop-facts{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:12px}
.drop-facts li{padding-left:22px;position:relative;color:#e2e5e7}
.drop-facts li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;background:var(--orange)}
.dform{display:grid;gap:16px;background:var(--white);color:var(--asphalt);padding:28px;border-radius:4px;border-top:6px solid var(--orange)}
.dform label{display:grid;gap:6px;font-weight:600;font-size:.95rem}
.dform input:not([type=checkbox]),.dform select,.dform textarea{font:inherit;font-weight:400;min-height:48px;padding:10px 12px;border:2px solid #9aa3aa;border-radius:4px;background:#fff;color:var(--asphalt);width:100%}
.dform input:focus,.dform select:focus,.dform textarea:focus{border-color:var(--asphalt)}
.dform textarea{resize:vertical}
.opt{font-weight:400;color:var(--steel)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.check{display:flex !important;align-items:center;gap:10px;font-weight:500 !important}
.check input{width:22px;height:22px;accent-color:var(--orange)}
.demo-note{background:var(--asphalt);color:var(--white);border-radius:4px;padding:10px 14px;font-weight:600;font-size:.95rem}
.form-status{min-height:1.5em;font-weight:600}

.info{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:72px clamp(16px,4vw,56px);max-width:1200px;margin:0 auto}
.hours{margin-top:18px;border-collapse:collapse;width:100%;max-width:440px}
.hours th,.hours td{text-align:left;padding:12px 0;border-bottom:2px solid #c9ccc6}
.hours td{text-align:right;font-weight:600}
.addr{margin-top:16px;max-width:44ch}

.reviews{padding:72px clamp(16px,4vw,56px) 80px;background:var(--white);border-top:6px solid var(--stripe)}
.sample-tag{display:inline-block;margin-top:12px;padding:4px 12px;border-radius:4px;background:var(--concrete);color:#454d53;font-size:.9rem;font-weight:600}
.rev{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:32px}
.rev figure{margin:0;padding:22px;border-left:6px solid var(--orange);background:var(--concrete)}
.stars{color:var(--orange);letter-spacing:2px}
.rev blockquote{margin:10px 0 0;font-size:1.1rem}
.rev figcaption{margin-top:12px;color:var(--steel);font-weight:600}

.foot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:32px clamp(16px,4vw,56px) 40px;background:var(--asphalt);color:#b9c0c5;font-size:.95rem}
.foot strong{color:var(--white)}

.callbar{display:none}
@media (max-width:900px){
  .hero,.dropoff,.info{grid-template-columns:1fr}
  .hero-art{max-width:460px;width:100%}
  .rev{grid-template-columns:1fr}
  .work thead{display:none}
  .work,.work tbody,.work tr,.work th,.work td{display:block;width:auto !important}
  .work tr{display:grid;grid-template-columns:1fr auto;padding:16px;border-top:1px solid #cfd2cd}
  .work tbody th,.work td{border:0;padding:0}
  .work td:nth-child(2){grid-column:1/-1;grid-row:2;margin-top:6px}
  .work td:nth-child(3){grid-column:1/-1;grid-row:3;margin-top:6px;font-size:.92rem;color:var(--steel)}
  .work td:nth-child(3)::before{content:"Usually takes "}
  .work td.p{grid-column:2;grid-row:1;text-align:right}
  .work td.p::before{content:"from ";font:600 .85rem Barlow,sans-serif;color:var(--steel)}
}
@media (max-width:640px){
  .bar-call{display:none}
  .hero{padding-top:28px;padding-bottom:48px}
  .services,.dropoff,.info{padding-top:56px;padding-bottom:56px}
  .row{grid-template-columns:1fr}
  .dform{padding:20px}
  .warranty{flex-direction:column;align-items:flex-start;padding:20px}
  .warranty svg{width:84px;height:84px}
  .callbar{display:flex;align-items:center;justify-content:center;position:fixed;right:16px;bottom:16px;left:16px;min-height:58px;border-radius:4px;background:var(--orange);color:var(--asphalt);font-weight:700;font-size:1.15rem;text-decoration:none;box-shadow:0 8px 24px rgba(31,35,38,.4);z-index:40}
  .foot{padding-bottom:100px}
}
