/* Página de reservas: el calendario del plugin va arriba del todo, justo debajo del menú */
.booking-page { position: relative; z-index: 1; padding: 88px var(--m) 48px; display: grid; justify-items: center; }
.booking-page #gcb-booking-widget { margin: 0; scroll-margin-top: 96px; }
.demo-note { position: relative; z-index: 1; text-align: center; font-size: .8125rem; color: var(--muted); padding: 0 var(--m) 120px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 700px) {
  .booking-page { padding: 68px 12px 32px; }
  .nav .status { display: none; }
  .demo-note { padding-bottom: 100px; }
}
/* Integración con la portada: rejilla de hexágonos de fondo y entrada suave del calendario */
body {
  background-color: var(--bg);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='145.5' viewBox='0 0 84 145.5'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.07' stroke-width='1.5'%3E%3Cpath d='M42 0l42 24.25v48.5L42 97 0 72.75v-48.5z'/%3E%3Cpath d='M42 97v48.5'/%3E%3C/g%3E%3C/svg%3E");
  background-attachment: fixed;
}
.booking-page #gcb-booking-widget { animation: booking-in .7s var(--ease-out) both; }
@keyframes booking-in { from { opacity: 0; transform: translateY(18px); } }
.demo-note { opacity: .8; }
@media (prefers-reduced-motion: reduce) { .booking-page #gcb-booking-widget { animation: none; } }

/* Pie oscuro en la página de reservas y fuera de la primera pantalla */
.booking-page { min-height: 100svh; align-content: start; }
.foot { background: var(--surface); color: var(--ink); }
.foot__cols { color: var(--steel); }
.foot__mark { color: var(--ink); opacity: .9; }
.foot__legal { color: var(--muted); }
