/* ===================================================================
   Plantilla "Sede" — Escuela Taoísta Hung Lin
   Se usa junto a css/style.css (que ya define colores y tipografía).
   =================================================================== */
.sede-block { margin-bottom: 2.25rem; }
.sede-block h2 { color: var(--tao-red); font-size: 1.3rem; margin-bottom: .75rem; }

/* Tablas de horarios */
.schedule-card { background: var(--tao-white); border: 1px solid var(--tao-line); border-top: 3px solid var(--tao-red);
    border-radius: var(--radius); box-shadow: var(--shadow-card); padding: 1.1rem 1.25rem; margin-bottom: 1.25rem; }
.schedule-card h3 { font-size: 1.05rem; color: var(--tao-red); margin-bottom: .15rem; }
.schedule-card .schedule-level { font-size: .88rem; color: var(--tao-ink-soft); margin-bottom: .75rem; }
.schedule-card table { width: 100%; border-collapse: collapse; margin-bottom: .85rem; }
.schedule-card th, .schedule-card td { padding: .5rem .6rem; border-bottom: 1px solid var(--tao-line); text-align: left; }
.schedule-card th { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--tao-ink-soft); }
.schedule-card td:first-child { font-weight: 700; }
.schedule-card .instructors { font-size: .92rem; margin: 0; }

/* Galería */
.sede-gallery { display: grid; grid-template-columns: repeat(2, 1fr); gap: .75rem; margin: 0; padding: 0; list-style: none; }
.img-frame.img-frame--wide { aspect-ratio: 16 / 9; }

/* Mapa responsivo */
.map-embed { position: relative; aspect-ratio: 4 / 3; border-radius: var(--radius); overflow: hidden; border: 1px solid var(--tao-line); }
.map-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* Líneas de colectivo */
.line-badges { display: flex; flex-wrap: wrap; gap: .35rem; list-style: none; padding: 0; margin: .5rem 0 0; }
.line-badges li { background: var(--tao-paper); border: 1px solid var(--tao-line); color: var(--tao-red-dark);
    font-weight: 700; font-size: .82rem; border-radius: 999px; padding: .1rem .6rem; }

/* Ficha lateral */
.sede-facts dt { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--tao-ink-soft); margin-top: .85rem; }
.sede-facts dt:first-child { margin-top: 0; }
.sede-facts dd { margin: 0; }
.btn-sede { display: inline-block; background: var(--tao-red); color: var(--tao-white); font-weight: 600;
    border-radius: var(--radius); padding: .55rem 1.1rem; }
.btn-sede:hover, .btn-sede:focus-visible { background: var(--tao-red-dark); color: var(--tao-white); text-decoration: none; }

@media (max-width: 575.98px) { .sede-gallery { grid-template-columns: 1fr; } }

/* Botón de WhatsApp (verde oscuro para mantener buen contraste con texto blanco) */
.btn-sede.btn-whatsapp { display: inline-flex; align-items: center; gap: .5rem; background: #0f7a3d; }
.btn-sede.btn-whatsapp:hover, .btn-sede.btn-whatsapp:focus-visible { background: #0b5f2f; }
.btn-whatsapp .wa-icon { flex-shrink: 0; }
