/* === Drip‑N‑Shine: Enhancements (safe drop‑in) === */
:root{
  --dns-red:#e02020;
  --dns-black:#111;
  --dns-muted:#6b7280;
  --z-sticky-cta: 60;
}
/* Ensure brand name never wraps awkwardly on small phones */
.brand-name{ white-space:nowrap; letter-spacing:0.5px; }
/* Sticky compact header already present — keep spacing tight on small screens */
.site-header .brand .tagline{ font-size:.85rem; }
@media (max-width:420px){
  .site-header .header-inner{ gap:.5rem; }
  .site-header .brand .tagline{ display:none; }
  .site-header .logo{ max-height:42px; }
}

/* Service Area Dropdown (under service-area copy) */
.service-area-drop { margin: .75rem auto 0; text-align:center; }
.service-area-toggle { display:inline-flex; align-items:center; gap:.5rem; font-size:1rem; }
.service-area-toggle .chev { transition: transform .2s ease; }
.service-area-toggle[aria-expanded="true"] .chev { transform: rotate(180deg); }

.service-area-menu { margin-top:.75rem; }
.service-area-menu a { text-decoration:none; font-weight:600; }
.service-area-menu a:hover, .service-area-menu a:focus { text-decoration:underline; }

.sa-grid {
  list-style:none; padding:0; margin:0 auto;
  display:grid; gap:.5rem .75rem;
  grid-template-columns: repeat(2, minmax(0,1fr));
  max-width:600px;
}
@media(min-width:640px){ .sa-grid{ grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(min-width:900px){ .sa-grid{ grid-template-columns: repeat(4,minmax(0,1fr)); } }


/* === Floating "Book Now" CTA (mobile-first) === */
#dns-sticky-cta{
  position:fixed; left:0; right:0; bottom:14px; margin:auto;
  width:clamp(240px, 92vw, 420px);
  z-index:var(--z-sticky-cta);
  display:flex; justify-content:center;
}
#dns-sticky-cta a{
  display:inline-block; text-align:center;
  font-weight:800; text-transform:uppercase;
  padding:.9rem 1.1rem; border-radius:999px;
  background:var(--dns-red); color:white; text-decoration:none;
  box-shadow:0 8px 24px rgba(224,32,32,.35), 0 2px 6px rgba(0,0,0,.12);
  border:2px solid #fff;
}
@media (min-width:900px){
  /* Hide sticky CTA on larger screens (header button is enough) */
  #dns-sticky-cta{ display:none; }
}

/* === Subtle long‑tail SEO footer block === */
#dns-seo-footer{
  margin:2rem auto 0; padding:1rem 0; border-top:1px dashed rgba(0,0,0,.08);
  color:var(--dns-muted); font-size:.92rem; line-height:1.5;
}
#dns-seo-footer a{ color:inherit; text-decoration:underline dotted; }
