/* ===== Páginas por localidad (/veterinarias-de-turno/...) — diseño "opción B" ===== */
/* Base igual a las páginas de provincia */
.seo-hero { padding: 80px 0 40px; background: var(--bg2); }
.seo-hero h1 { font-size: 2.2rem; font-weight: 800; margin-bottom: 12px; line-height: 1.2; }
.seo-breadcrumb { font-size: .88rem; color: var(--muted); margin-bottom: 20px; }
.seo-breadcrumb a { color: var(--accent); text-decoration: none; }
.seo-stats { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 20px; }
.seo-stat { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 16px 22px; }
.seo-stat-num { font-size: 1.6rem; font-weight: 800; color: var(--accent); }
.seo-stat-label { font-size: .85rem; color: var(--muted); }
.seo-faq { padding: 0 0 50px; }
.seo-faq h2 { font-size: 1.3rem; font-weight: 700; margin-bottom: 20px; }
.seo-faq-list { display: flex; flex-direction: column; gap: 16px; }
.seo-faq-item { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 18px 20px; }
.seo-faq-item h3 { font-size: .98rem; font-weight: 700; margin-bottom: 6px; }
.seo-faq-item p { color: var(--muted); font-size: .9rem; line-height: 1.55; }
.seo-cta { padding: 34px 0 0; text-align: center; }
.seo-cta p { color: var(--muted); margin-bottom: 16px; }
.seo-cta a { display: inline-block; background: var(--accent); color: #fff; padding: 14px 32px; border-radius: 50px; font-weight: 700; text-decoration: none; }

/* Propio de las páginas de localidad */
.cd-split { display: grid; grid-template-columns: 1.05fr 1fr; gap: 28px; align-items: center; }
#cd-mapa { height: 340px; border-radius: 20px; border: 1px solid var(--border); box-shadow: 0 10px 30px rgba(15,23,42,.08); background: #e5edf6; z-index: 0; }
.cd-sec { padding: 34px 0 6px; }
.cd-sec h2 { font-size: 1.35rem; font-weight: 800; margin-bottom: 14px; }
.cd-prov { margin-top: 26px; }
.cd-prov a { color: inherit; text-decoration: none; }
.cd-filtros { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px; }
.cd-chip { border: 1px solid var(--border); background: var(--card); border-radius: 999px; padding: 8px 16px; font-weight: 700; font-size: .86rem; cursor: pointer; font-family: inherit; color: inherit; }
.cd-chip.on { background: #1d4ed8; color: #fff; border-color: #1d4ed8; }
.cd-badge24 { display: inline-flex; align-items: center; background: #1d4ed8; color: #fff; font-size: .72rem; font-weight: 800; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
.cd-estado { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.vet-result-card .vrc-name { margin: 0; }
.vet-result-card .vrc-name a { color: inherit; text-decoration: none; }
.vet-result-card.es24 { border-color: #bfdbfe; box-shadow: 0 0 0 3px rgba(29,78,216,.07); }
.vet-result-card[hidden] { display: none; }
.cd-verif { display: inline-flex; align-items: center; gap: 8px; font-size: .84rem; color: var(--muted); margin-top: 14px; }
.cd-verif svg { width: 16px; height: 16px; color: #16a34a; flex-shrink: 0; }
.cd-cerca { display: flex; flex-wrap: wrap; gap: 10px; }
.cd-cerca a { background: var(--card); border: 1px solid var(--border); border-radius: 999px; padding: 9px 16px; font-weight: 600; font-size: .88rem; text-decoration: none; color: inherit; }
.cd-cerca a:hover { border-color: var(--accent); color: var(--accent); }
.cd-cerca small { color: var(--muted); font-weight: 500; margin-left: 4px; }
.cd-vacio { color: var(--muted); padding: 10px 0 4px; }
.cd-pin { width: 16px; height: 16px; border-radius: 50%; border: 3px solid #fff; box-shadow: 0 2px 6px rgba(0,0,0,.35); }
@media (max-width: 860px) {
  .cd-split { grid-template-columns: 1fr; }
  #cd-mapa { height: 260px; }
}
@media (max-width: 600px) {
  .seo-hero { padding-top: 70px; }
  .seo-hero h1 { font-size: 1.6rem; }
  .seo-stat { flex: 1; min-width: 100px; padding: 12px 14px; }
}
