/* Astra Skydive · lo propio del sitio publicado. Todo lo demás viene del sistema de diseño (astra.css). */
[hidden] { display: none !important; }
html { background: var(--bg); }
body { margin: 0; background: var(--bg); color: var(--ink); font-family: var(--font-body); -webkit-font-smoothing: antialiased; }
img, video { max-width: 100%; }
body.sin-scroll { overflow: hidden; }

/* El formulario y su confirmación viven en el mismo Dialog: cada vista se comporta como hija directa */
.dialog > [data-vista] { display: contents; }

/* Mapa de Google dentro de LocationMap */
.location-map__frame > iframe.location-map__canvas { border: 0; }

/* Calendario de Calendly (asesoría AFF) */
.calendly-caja { min-width: 300px; height: 720px; border-radius: var(--radius-xl); overflow: hidden; background: var(--surface); }
@media (min-width: 1024px) { .calendly-caja { height: 680px; } }

/* Página de abono */
.pago { max-width: 560px; margin-inline: auto; }
.pago__estado { display: flex; flex-direction: column; gap: var(--space-4); }
.pago__icono { width: 44px; height: 44px; color: var(--accent-text); }
.pago__icono--alerta { color: var(--danger-text); }
.pago h1:focus, main h1:focus { outline: none; }

/* Páginas legales y 404 */
.texto-legal { max-width: 720px; }
.texto-legal .stack { gap: var(--space-4); }
.aviso-pendiente { padding: var(--space-4); border-radius: var(--radius-lg); border: var(--border-hair) solid var(--line-strong); background: var(--surface); }

/* Contador del visor de grabación */
.viewfinder__time { font-variant-numeric: tabular-nums; }
