.allergens {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.5rem;
}

/* HEADER */
.allergens__header {
  position: fixed;
  top: 0;
  width: 100%;
  max-width: 50rem;
  padding: 0rem 1rem;
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 0.5rem;
  backdrop-filter: blur(0.3125rem);
  -webkit-backdrop-filter: blur(0.3125rem);
  z-index: 1;
  /* Animaciones */
  animation: rotation 2s;
}

/* Tamaño del logo del header: lo pone estructura-base (altura única de flota) */

.allergens__header-iconos {
  width: 100%;
  display: flex;
  justify-content: end;
  align-items: center;
  gap: 0.7rem;
  z-index: 3;
}


/* Imagen de cabecera: aspecto compartido en .hero-img (estructura-base.css).
   Aquí solo su posición: 4rem arriba para librar el header fijo de alérgenos. */
/* Hero: header fijo + hero como primer hijo → despeje vía token de la base */
.allergens {
  --hero-top: 4rem;
}

/* ************************************************************* */
/* Alérgenos INFO */
/* ************************************************************* */

/* CABECERA */
/* Tarjeta: estructura en estructura-base (estándar de flota) */
.allergens__info h1 {
  color: var(--color-titulo);
}

/* CUERPO */
.allergens__lista {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 2rem;
}
/* CUERPO */
/* .contenido: tarjeta en estructura-base */

/* Clases de cada alérgeno */
.allergen__allergen {
  width: 100%;
  max-width: 50rem;
  padding: 0.5rem;
  display: grid;
  grid-template-columns: 1fr 6fr;
  justify-content: center;
  align-items: center;
  gap: 1rem;

  & img {
    max-width: 4rem;
  }

  & .allergen__allergen-texto {
    h3 {
      font-size: 1.2rem;
      font-weight: 600;
      color: var(--color-titulo);
      margin-bottom: 0.1rem;
    }

    p {
      font-size: 1rem;
    }
  }
}

/* BANER FLOTANTE CON Nomenclaturas */
.nomenclaturas {
  position: sticky;
  top: 5rem;
  width: 90dvw;
  max-width: 50rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.2rem;
  margin-bottom: 2rem;
  padding: 1rem;
  text-align: center;
  border-radius: var(--border-radius);
  box-shadow: var(--sombra);  z-index: 1;

  img {
    width: 2.5rem;
  }

  p {
    font-size: 0.5rem;
  }
}

