body {
  background-color: #fcf9f8;
  font-family: "Hanken Grotesk", sans-serif;
  color: #1c1b1b;
}

.material-symbols-outlined {
  font-family: "Material Symbols Outlined";
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: "liga";
  -webkit-font-smoothing: antialiased;
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

/* Menú móvil */
#mobile-menu {
  transition: max-height 0.3s ease, opacity 0.3s ease;
}

/* Lightbox de galería */
.lightbox-backdrop {
  background-color: rgba(28, 27, 27, 0.92);
}

.lightbox-img,
.lightbox-video {
  max-height: 85vh;
  max-width: 90vw;
}

.gallery-item img,
.gallery-item video {
  display: block;
  transition: transform 0.5s ease;
}

.gallery-item:hover img,
.gallery-item:hover video {
  transform: scale(1.06);
}

/* Insignia de "video" sobre la miniatura en la galería */
.gallery-video-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background-color: rgba(28, 27, 27, 0.6);
  color: #fff;
  border-radius: 999px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

/* Tarjetas de menú */
.menu-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.menu-card:hover {
  transform: translateY(-4px);
}

/* Filtro activo del menú. Los botones usan aria-pressed (son filtros que se
   alternan), no aria-selected (que pertenece al patrón de pestañas). */
.menu-tab[aria-pressed="true"] {
  background-color: #e36a56;
  color: #000000;
}

@media print {
  nav,
  footer,
  .no-print {
    display: none !important;
  }
  body {
    background: #ffffff;
  }
  .menu-card {
    break-inside: avoid;
    box-shadow: none !important;
    border: 1px solid #e5e2e1;
  }
}
