
:root{
  --violet-50:#f8f0fa; --violet-500:#9b59b6; --violet-600:#8e44ad;
  --muted:#64748b; --border:#e5e7eb; --card:#ffffff;
}
*{box-sizing:border-box}
body{background:var(--violet-50);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial;margin:0}
header{display:flex;align-items:center;gap:16px;justify-content:center;padding:18px 16px;background:var(--violet-600);flex-wrap:wrap;text-align:center}
header img{max-width:180px; height:auto}
h1{font-size:2.6rem;font-weight:800;color:#fff;letter-spacing:.3px;margin:6px 0 0}
.section{max-width:1100px;margin:0 auto;padding:32px 16px}
h2.section-title{color:#6d28d9;margin:0 0 12px;text-align:center;font-size:1.8rem}
.lead{color:var(--muted)}
.subnav{max-width:1100px;margin:12px auto 0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.subnav a{background:#fff;border:1px solid var(--border);padding:8px 12px;border-radius:999px;text-decoration:none;color:#333}
.subnav a:hover{background:#f3e8ff}
.grid{display:grid;gap:16px}
.grid.cols-2{grid-template-columns:repeat(2,1fr)}
.grid.cols-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.grid.cols-2,.grid.cols-3{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:0 2px 12px rgba(0,0,0,.04);text-align:center}
.card img{max-width:100%;border-radius:12px;margin-bottom:12px}
.card .service-logo{width:80px;height:80px;object-fit:contain;margin:0 auto 12px;display:block}
.hours{display:grid;gap:16px}
.hours .hours-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px}
.hours .hours-card table{width:100%;border-collapse:separate;border-spacing:0 4px}
.hours .hours-card th{width:150px;white-space:nowrap;text-align:left;padding:4px 8px 4px 0;color:#374151;font-weight:600}
.hours .hours-card td{text-align:left;padding:4px 0}
.hours-card h3 a{ color: inherit; text-decoration: none; border-bottom: 2px solid transparent; }
.hours-card h3 a:hover{ border-bottom-color: currentColor; }
.price-table{width:100%;border-collapse:collapse;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff}
.price-table th,.price-table td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left}
.price-table thead th{background:var(--violet-600);color:#fff}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:16px}
.gallery img{width:100%;border-radius:12px;object-fit:cover}
footer{text-align:center;padding:20px;color:#888}
#mapa iframe{width:100%;height:320px;border:0;border-radius:12px}
