/* =========================
   La Patrona – Theme
   ========================= */
:root {
  --bg: #fdfaf5;
  --paper: #ffffff;
  --ink: #2b2118;
  --accent: #8b3e2f;    /* Guinda del logo */
  --accent-2: #2f5d50;  /* Verde del logo */
  --gold: #b0893f;
  --border: #e5dccd;
}

body {
  background: var(--bg);
  color: var(--ink);
  font-family: 'Georgia', serif;
  margin: 0;
}

/* Header & Logo */
.header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: white;
  border-bottom: 3px solid var(--accent);
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.logo {
  height: 52px;
  width: auto;
}

.brand .title {
  color: var(--accent);
  font-weight: bold;
  font-size: 22px;
}

/* Grid de Imágenes (Tiles) */
.grid {
  max-width: 1100px;
  margin: 20px auto;
  padding: 0 15px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 15px;
}

.tile {
  height: 160px;
  position: relative;
  border-radius: 15px;
  overflow: hidden;
  cursor: pointer;
  border: 1px solid var(--border);
  transition: transform 0.2s;
}

.tile:hover { transform: scale(1.02); }

.tile-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: brightness(0.6); /* Oscurece la imagen para que el texto se lea */
  transition: 0.3s;
}

.tile:hover .tile-bg { filter: brightness(0.8); }

.tile-content {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-align: center;
  padding: 10px;
}

.tile-content h3 {
  margin: 0;
  font-size: 20px;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
}

/* RUTAS DE IMÁGENES CORREGIDAS */
.antojitos-bg { background-image: url('images/antojitos.jpg'); }
.lunch-menu-bg { background-image: url('images/lunch-menu.jpg'); }
.sides-bg { background-image: url('images/sides.jpg'); }
.a-la-carte-bg { background-image: url('images/a-la-carte.jpg'); }
.la-patrona-kids-bg { background-image: url('images/la-patrona-kids.jpg'); }
.nachos-bg { background-image: url('images/nachos.jpg'); }
.burritos-bg { background-image: url('images/burritos.jpg'); }
.rice-bowls-bg { background-image: url('images/rice-bowls.jpg'); }
.chimichangas-bg { background-image: url('images/chimichangas.jpg'); }
.enchiladas-bg { background-image: url('images/enchiladas.jpg'); }
.quesadillas-bg { background-image: url('images/quesadillas.jpg'); }
.soups-and-salads-bg { background-image: url('images/soups-and-salads.jpg'); }
.sandwiches-bg { background-image: url('images/sandwiches.jpg'); }
.tacos-bg { background-image: url('images/tacos.jpg'); }
.fajitas-bg { background-image: url('images/fajitas.jpg'); }
.steaks-carne-asada-bg { background-image: url('images/steaks-carne-asada.jpg'); }
.chicken-bg { background-image: url('images/chicken.jpg'); }
.seafood-bg { background-image: url('images/seafood.jpg'); }
.pork-bg { background-image: url('images/pork.jpg'); }
.house-specialties-bg { background-image: url('images/platillos-de-la-casa-house-specialities.jpg'); }
.molcajetes-bg { background-image: url('images/molcajetes.jpg'); }
.catering-bg { background-image: url('images/catering.jpg'); }

/* Menu Items (Mejor Legibilidad) */
.menu-item {
  background: white;
  margin: 10px 0;
  padding: 15px;
  border-radius: 10px;
  border-left: 5px solid var(--accent); /* Detalle guinda */
}

.row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}

.item-name {
  color: var(--accent);
  font-weight: bold;
  font-size: 1.2rem;
}

.price {
  color: var(--accent-2);
  font-weight: bold;
  font-size: 1.1rem;
}

:root {
  --bg: #fdfaf5;        /* Fondo crema suave */
  --paper: #ffffff;
  --ink: #2b2118;
  --accent: #8b3e2f;    /* Rojo/Guinda del logo */
  --accent-2: #2f5d50;  /* Verde oscuro del logo */
  --gold: #b0893f;
  --border: #e5dccd;
}

/* Header estilizado para el logo */
.header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: white;
  border-bottom: 3px solid var(--accent); /* Línea de marca */
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.logo {
  height: 52px;
  width: auto;
}

/* Tiles como protagonistas */
.grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
  max-width: 1100px;
  margin: 40px auto;
  padding: 0 20px;
}

.tile {
  height: 200px;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  border: 1px solid var(--border);
}

.tile-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: brightness(0.65); /* Para que el texto blanco resalte */
  transition: transform 0.4s, filter 0.4s;
}

.tile:hover .tile-bg {
  transform: scale(1.05);
  filter: brightness(0.8);
}

.tile-content {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-shadow: 0 2px 8px rgba(0,0,0,0.8);
}

/* Platos del menú (Nombres largos optimizados) */
.menu-item {
  background: var(--paper);
  border-radius: 12px;
  padding: 18px;
  margin-bottom: 15px;
  border-left: 5px solid var(--accent); /* Detalle de color */
  box-shadow: 0 2px 5px rgba(0,0,0,0.03);
}

.row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
}

.item-name {
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--accent);
  margin: 0;
}

.price {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--accent-2);
  background: #f0f7f4;
  padding: 2px 10px;
  border-radius: 6px;
}

/* Quitar puntos que estorban en nombres largos */
.leaders { display: none; }

.back-button {
  background: var(--accent);
  color: white;
  border: none;
  padding: 10px 20px;
  border-radius: 99px;
  cursor: pointer;
  margin-bottom: 20px;
  font-family: inherit;
  font-weight: bold;
}

/* Ocultar pestañas por defecto en todas las pantallas */
.tabs {
  display: none; 
}

/* Solo se muestran cuando tienen la clase is-open (al presionar los puntos) */
.tabs.is-open {
  display: flex !important;
  flex-direction: column;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: var(--paper);
  z-index: 100;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* Asegurar que el botón de menú sea siempre visible si deseas usarlo como acceso principal */
#menu-toggle {
  display: block;
  font-size: 2rem;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--accent);
}