:root{
  --ink:#292524;
  --muted:#78716c;
  --brass:#b45309;
  --brass-deep:#92400e;
  --ivory:#fffbeb;
  --cream:#fef3c7;
  --line:#e7e5e4;
  --radius:14px;
  --maxw:1060px;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Georgia,"Times New Roman",serif;color:var(--ink);background:var(--ivory);line-height:1.7;font-size:1.04rem}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.3rem}
a{color:var(--brass-deep)}

.topbar{background:#1c1917;color:#fef3c7;padding:.75rem 0}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.topbar-brand{font-family:system-ui,sans-serif;font-size:.95rem}
.topbar-brand span{color:#d6d3d1;font-size:.82rem}
.topbar-call{background:var(--brass);color:#fff;text-decoration:none;font-weight:700;font-family:system-ui,sans-serif;padding:.55rem 1.2rem;border-radius:999px}
.topbar-call:hover{background:var(--brass-deep)}

.hero{padding:3.4rem 0 2.2rem;text-align:center}
.hero-eyebrow{font-family:system-ui,sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;color:var(--brass);font-weight:700;margin-bottom:1rem}
.hero h1{font-size:2.2rem;line-height:1.18;margin-bottom:1.1rem;max-width:22ch;margin-left:auto;margin-right:auto}
@media(min-width:820px){.hero h1{font-size:2.9rem}}
.hero-lede{max-width:62ch;margin:0 auto 1.8rem;color:#44403c}
.hero-actions{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;margin-bottom:1rem}
.cta{font-family:system-ui,sans-serif;display:inline-block;padding:.85rem 1.7rem;border-radius:999px;font-weight:700;text-decoration:none;font-size:1rem;border:2px solid var(--brass);cursor:pointer}
.cta-solid{background:var(--brass);color:#fff}
.cta-solid:hover{background:var(--brass-deep);border-color:var(--brass-deep)}
.cta-outline{color:var(--brass-deep);background:transparent}
.cta-outline:hover{background:var(--cream)}
.hero-hours{font-size:.85rem;color:var(--muted);font-family:system-ui,sans-serif}

.hero-photo{padding:0 1.3rem 2.6rem}
.hero-photo img{border-radius:var(--radius);box-shadow:0 12px 40px rgba(120,53,15,.18)}

.block{margin-bottom:3rem}
.block h2{font-size:1.6rem;margin-bottom:1rem;color:#1c1917;text-align:center}
.block>p{max-width:68ch;margin:0 auto 1.4rem}
.block.alt{background:var(--cream);border-radius:var(--radius);padding:2rem 1.6rem}
.block.alt p{max-width:66ch}

.fixture-grid{display:grid;gap:1.2rem;margin-top:1.6rem}
@media(min-width:760px){.fixture-grid{grid-template-columns:1fr 1fr}}
.fixture{background:#fff;border-top:4px solid var(--brass);border-radius:0 0 var(--radius) var(--radius);padding:1.5rem;box-shadow:0 3px 14px rgba(120,53,15,.08)}
.fixture h3{font-size:1.2rem;margin-bottom:.6rem;color:var(--brass-deep)}

.process{list-style:none;counter-reset:step;max-width:44rem;margin:0 auto}
.process li{counter-increment:step;position:relative;padding:.9rem 0 .9rem 3.4rem;border-bottom:1px dashed var(--line)}
.process li::before{content:counter(step);position:absolute;left:0;top:.8rem;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--brass);color:#fff;font-family:system-ui,sans-serif;font-weight:700;display:flex;align-items:center;justify-content:center}

.areas{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:1.4rem}
.areas li{background:#fff;border:1px solid var(--brass);border-radius:999px;padding:.35rem 1.1rem;font-family:system-ui,sans-serif;font-size:.9rem;font-weight:600}

.faq{max-width:46rem;margin-left:auto;margin-right:auto}
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:.7rem;padding:1rem 1.2rem}
.faq summary{font-family:system-ui,sans-serif;font-weight:700;cursor:pointer;color:var(--brass-deep)}
.faq details p{margin:.7rem 0 0;color:var(--muted);font-size:.98rem}

.estimate-form{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem;max-width:620px;margin:0 auto}
.field{margin-bottom:1.1rem}
.field label{display:block;font-family:system-ui,sans-serif;font-weight:600;margin-bottom:.35rem;font-size:.95rem}
.field input,.field textarea{width:100%;padding:.7rem .85rem;border:1px solid #d6d3d1;border-radius:8px;font-size:1rem;font-family:system-ui,sans-serif}
.field input:focus,.field textarea:focus{outline:2px solid var(--brass);border-color:var(--brass)}

.company-strip{background:#1c1917;color:#e7e5e4;padding:2.8rem 0}
.company-strip h2{font-size:1.45rem;margin-bottom:1rem;color:#fff;text-align:center}
.co-name{font-family:system-ui,sans-serif;font-weight:800;font-size:1.15rem;color:var(--brass);margin-bottom:1rem;text-align:center}
.co-facts{list-style:none;max-width:40rem;margin:0 auto;font-family:system-ui,sans-serif}
.co-facts li{padding:.4rem 0}
.co-facts a{color:var(--brass)}

.page-footer{background:#0c0a09;color:#a8a29e;padding:1.4rem 0;font-size:.88rem;text-align:center;font-family:system-ui,sans-serif}
.page-footer a{color:#d6d3d1}

.sticky-call{display:none}
@media(max-width:720px){
  .sticky-call{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--brass);color:#fff;text-align:center;font-weight:700;font-family:system-ui,sans-serif;font-size:1.15rem;padding:.95rem;text-decoration:none;z-index:100;box-shadow:0 -2px 12px rgba(0,0,0,.25)}
  body{padding-bottom:64px}
  .topbar-call{display:none}
}
