/* Garage Floor Coating — corridor rank-and-rent site
   Fast, minimal, SEO-clean. No external fonts/scripts (loads instantly). */
:root{
  --navy:#122036; --steel:#1f3a5f; --accent:#e8571f; --accent-dk:#c8460f;
  --ink:#1a1f28; --muted:#5a6472; --line:#e3e7ee; --bg:#ffffff; --soft:#f4f6fa;
  --ok:#1f8a4c; --star:#f5a623;
  --wrap:1080px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg)}
img{max-width:100%;display:block}
a{color:var(--accent-dk);text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
h1,h2,h3{line-height:1.2;color:var(--navy);font-weight:800}
h1{font-size:2.15rem;margin-bottom:.5rem}
h2{font-size:1.6rem;margin:0 0 1rem}
h3{font-size:1.15rem;margin-bottom:.35rem}
p{margin-bottom:1rem}
.sr{position:absolute;left:-9999px}

/* top call bar */
.callbar{background:var(--navy);color:#fff;text-align:center;font-size:.92rem;padding:8px 12px}
.callbar a{color:#fff;font-weight:700}

/* header */
header{border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:20}
.nav{display:flex;align-items:center;justify-content:space-between;height:66px}
.brand{font-weight:800;color:var(--navy);font-size:1.15rem;letter-spacing:-.2px}
.brand span{color:var(--accent)}
.nav .phone{background:var(--accent);color:#fff;padding:10px 16px;border-radius:8px;font-weight:800;font-size:1.02rem}
.nav .phone:hover{background:var(--accent-dk)}
.navlinks{display:none;gap:22px}
.navlinks a{color:var(--steel);font-weight:600}
@media(min-width:820px){.navlinks{display:flex}}

/* hero */
.hero{background:linear-gradient(150deg,var(--navy),var(--steel));color:#fff;padding:56px 0}
.hero h1{color:#fff}
.hero .lead{font-size:1.15rem;color:#cdd6e4;max-width:620px}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.btn{display:inline-block;background:var(--accent);color:#fff;font-weight:800;padding:15px 26px;border-radius:9px;font-size:1.05rem}
.btn:hover{background:var(--accent-dk)}
.btn.alt{background:#fff;color:var(--navy)}
.trustline{margin-top:22px;display:flex;flex-wrap:wrap;gap:18px;color:#cdd6e4;font-size:.92rem;font-weight:600}
.trustline b{color:#fff}

/* sections */
section{padding:52px 0}
.soft{background:var(--soft)}
.grid{display:grid;gap:20px}
@media(min-width:720px){.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}.g4{grid-template-columns:repeat(4,1fr)}}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}
.card h3{color:var(--steel)}
.center{text-align:center}
.eyebrow{color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;margin-bottom:.4rem}

/* steps */
.steps{counter-reset:s;display:grid;gap:18px}
@media(min-width:720px){.steps{grid-template-columns:repeat(4,1fr)}}
.step{position:relative;padding-top:14px}
.step::before{counter-increment:s;content:counter(s);display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--accent);color:#fff;border-radius:50%;font-weight:800;margin-bottom:10px}

/* quote form */
.quote{background:var(--navy);color:#fff}
.quote h2{color:#fff}
.form{background:#fff;border-radius:14px;padding:26px;max-width:520px}
.form label{display:block;font-weight:700;color:var(--steel);margin:12px 0 5px;font-size:.9rem}
.form input,.form select,.form textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;font-size:1rem;font-family:inherit}
.form .btn{width:100%;border:0;margin-top:18px;cursor:pointer}
.note{font-size:.82rem;color:var(--muted);margin-top:10px}

/* faq */
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin-bottom:12px}
.faq summary{font-weight:700;color:var(--navy);cursor:pointer}
.faq p{margin:10px 0 0;color:var(--muted)}

/* stars + reviews */
.stars{color:var(--star);font-size:1.1rem;letter-spacing:2px}

/* cities links */
.cities{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.cities a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-weight:700;color:var(--steel)}
.cities a:hover{border-color:var(--accent);color:var(--accent-dk)}

/* footer */
footer{background:var(--navy);color:#aab6c8;padding:40px 0;font-size:.9rem}
footer a{color:#dce3ee}
footer .cols{display:grid;gap:24px}
@media(min-width:720px){footer .cols{grid-template-columns:2fr 1fr 1fr}}
.placeholder{background:#fff6ef;border:1px dashed var(--accent);color:var(--accent-dk);padding:3px 7px;border-radius:5px;font-weight:700;font-size:.85em}
