/* Overrides for standalone service/location pages.
   The base stylesheet is built for the one-page homepage layout. */
.hero{min-height:auto;grid-template-columns:1fr}
.hero-left{padding-top:calc(var(--nav-h) + 64px);padding-bottom:72px;max-width:920px}
.hero-headline{font-size:clamp(36px,5vw,64px);line-height:1.06;margin-bottom:22px}
.hero-sub{max-width:660px;margin-bottom:34px}
.hero-actions{margin-bottom:0}
.btn-primary,.btn-outline{text-decoration:none;cursor:pointer}
.sp-h2{font-family:var(--font-display);font-size:clamp(34px,4.4vw,58px);line-height:1;letter-spacing:0.01em;color:var(--black);margin:0 0 18px}
.cta-banner .sp-h2{color:var(--white)}
.sp-lead{font-size:17px;line-height:1.75;color:#3d3a36;max-width:820px;margin:0 0 32px}
.sp-cta-sub{color:rgba(255,255,255,0.6);font-size:15px;margin:0;line-height:1.6}
.why-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.sp-link{display:inline-flex;align-items:center;background:transparent;color:var(--black);font-weight:600;font-size:12px;letter-spacing:0.07em;text-transform:uppercase;padding:12px 22px;border-radius:var(--radius);border:1px solid rgba(10,10,10,0.22);text-decoration:none;margin:0 10px 10px 0;transition:border-color 0.2s,background 0.2s}
.sp-link:hover{border-color:var(--amber);background:rgba(232,160,32,0.09)}
@media(max-width:768px){
  .hero-left{padding-top:calc(var(--nav-h) + 40px);padding-bottom:52px}
  .sp-lead{font-size:16px}
}
.nav-logo{text-decoration:none;cursor:pointer}
.nav-links a{text-decoration:none}
