/* Martin Environmental — shared styles, extracted from the approved candidate-02 reference.
   Owned by claude (service-area pages). Homepage keeps its own inline styles until reconcile. */
:root{
  --ink:#101410; --ink2:#1a211a; --paper:#f5f2ea; --gold:#d9a441;
  --gold-dark:#b5832e; --muted:#b9bcae; --line:rgba(245,242,234,.14);
  --soft:#3a3934; --stone:#efede6;
}
*{box-sizing:border-box;margin:0}
body{background:var(--paper);color:var(--ink);font:16px/1.65 "Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 28px}
.mono{font-family:ui-monospace,Menlo,monospace}
.draft-ribbon{background:var(--gold);color:var(--ink);font:700 11px/1.4 ui-monospace,Menlo,monospace;letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:10px 20px}

.hero{position:relative;color:var(--paper);
  background:
    radial-gradient(120% 90% at 78% 18%, rgba(217,164,65,.16), transparent 55%),
    radial-gradient(90% 70% at 15% 85%, rgba(38,68,48,.55), transparent 60%),
    linear-gradient(160deg,#1d2619 0%, var(--ink) 55%, #0b0e0b 100%);}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(245,242,234,.05) 1px,transparent 1px);background-size:26px 26px;opacity:.5}
nav{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}
.brand{font:600 15px/1 Georgia,serif;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
.brand small{display:block;font:10px ui-monospace,Menlo,monospace;color:var(--gold);letter-spacing:.22em;margin-top:4px}
.navlinks{display:flex;gap:26px;font-size:13.5px;color:var(--muted)}
.navlinks a{text-decoration:none}.navlinks a:hover{color:var(--paper)}
.phone-pill{font:600 14px ui-monospace,Menlo,monospace;text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:9px 16px;white-space:nowrap}
.phone-pill:hover{border-color:var(--gold);color:var(--gold)}
.crumbs{position:relative;z-index:2;font:11px ui-monospace,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:30px}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--gold)}
.hero-body{position:relative;z-index:2;max-width:840px;padding:34px 0 84px}
.eyebrow{font:11px ui-monospace,Menlo,monospace;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:24px}
h1{font-family:Georgia,"Times New Roman",serif;font-weight:600;font-size:clamp(38px,6vw,68px);line-height:1.04;letter-spacing:-.015em}
h1 em{font-style:italic;color:var(--gold)}
.hero-sub{margin-top:24px;max-width:600px;font-size:17px;color:var(--muted)}
.hero-sub b{color:var(--paper);font-weight:600}
.cta-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:40px;align-items:center}
.cta-call{display:inline-flex;align-items:center;gap:12px;background:var(--gold);color:var(--ink);font-weight:700;text-decoration:none;padding:18px 30px;border-radius:6px;font-size:16px}
.cta-call:hover{background:var(--gold-dark)}
.cta-note{font:12.5px ui-monospace,Menlo,monospace;color:var(--muted)}

section{padding:64px 0;border-bottom:1px solid #dcdad2}
.kicker{font:11px ui-monospace,Menlo,monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dark);margin-bottom:14px}
h2{font-family:Georgia,serif;font-weight:600;font-size:clamp(26px,3.4vw,38px);letter-spacing:-.01em;line-height:1.12}
.lead{margin-top:16px;max-width:640px;color:var(--soft);font-size:16.5px}
.prose p{margin-top:16px;max-width:640px;color:var(--soft);font-size:16px}
.prose b{color:var(--ink)}

.nearby{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:30px}
.nearby a{border:1px solid #dcdad2;background:#fff;padding:16px 18px;text-decoration:none;font-family:Georgia,serif;font-size:16px}
.nearby a:hover{border-color:var(--gold);color:var(--gold-dark)}
.nearby a.here{background:var(--ink);color:var(--paper);border-color:var(--ink)}

.callband{background:var(--ink);color:var(--paper);text-align:center;padding:66px 0}
.callband h2{color:var(--paper)}
.callband p{color:var(--muted);margin:14px auto 30px;max-width:520px}
.bigphone{font:600 clamp(26px,4vw,38px) Georgia,serif;color:var(--gold);text-decoration:none}
.bigphone:hover{color:var(--paper)}

footer{padding:44px 0;color:var(--soft);font-size:13.5px}
footer .wrap{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between}
footer .mono{font-size:12px}
@media(max-width:760px){.navlinks{display:none}}
.brand { display: flex; align-items: center; gap: 0.6rem; }
.brand-logo { border-radius: 50%; display: block; background: #fff; }
.brand-text { display: inline-block; }
.cta-msg { display: inline-block; padding: 0.8rem 1.4rem; border: 1px solid rgba(245,242,234,.5);
  border-radius: 6px; color: #f5f2ea; text-decoration: none; font-weight: 600; margin-left: .8rem; }
.cta-msg:hover { border-color: #d9a441; color: #d9a441; }
@media(max-width:640px){
  nav{flex-wrap:wrap}
  .brand-text small{display:none}
  .phone-pill{margin-left:auto;font-size:13px;padding:8px 12px}
  .cta-msg{margin-left:0;margin-top:10px}
  .cta-row{flex-wrap:wrap;gap:10px}
}
