/* === LPDO CARTA IMAGENES + LAYOUT REV 1.87 === */
/* Solo Carta / Nuestros productos destacados. No toca Pedidos, hero ni flotantes. */

#carta.lpdo-carta-87 {
  position: relative !important;
  overflow: hidden !important;
}

#carta .lpdo-carta-grid-87 {
  display: grid !important;
  align-items: stretch !important;
}

#carta .lpdo-product-card-87 {
  overflow: hidden !important;
  border-radius: 18px !important;
  background: rgba(255, 248, 237, .94) !important;
  border: 1px solid rgba(181, 91, 48, .16) !important;
  box-shadow: 0 18px 38px rgba(70, 38, 18, .09) !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  position: relative !important;
}

/* La foto siempre arriba, nunca con texto encima */
#carta .lpdo-product-card-87 .product-media {
  width: 100% !important;
  display: block !important;
  position: relative !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 auto !important;
  z-index: 1 !important;
}

#carta .lpdo-product-card-87 .product-media img {
  width: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  transform: none !important;
  max-width: none !important;
}

/* Todo el texto queda debajo de la foto */
#carta .lpdo-product-card-87 > *:not(.product-media),
#carta .lpdo-product-card-87 .product-content,
#carta .lpdo-product-card-87 .product-copy,
#carta .lpdo-product-card-87 .product-body {
  position: static !important;
  z-index: 2 !important;
  background: transparent !important;
}

#carta .lpdo-product-card-87 h3 {
  color: #101827 !important;
}

#carta .lpdo-product-card-87 p {
  color: rgba(15, 23, 42, .82) !important;
}

#carta .lpdo-product-card-87 a,
#carta .lpdo-product-card-87 button {
  width: fit-content !important;
}

/* Desktop */
@media (min-width: 1181px) {
  #carta.lpdo-carta-87 {
    padding-top: 82px !important;
    padding-bottom: 90px !important;
  }

  #carta.lpdo-carta-87 > * {
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  #carta .lpdo-carta-grid-87 {
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }

  #carta .lpdo-product-card-87 {
    min-height: 318px !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
  }

  #carta .lpdo-product-card-87:hover {
    transform: translateY(-6px) !important;
    border-color: rgba(181, 91, 48, .28) !important;
    box-shadow: 0 24px 46px rgba(70, 38, 18, .14) !important;
  }

  #carta .lpdo-product-card-87 .product-media img {
    height: 150px !important;
  }

  #carta .lpdo-product-card-87 h3 {
    margin: 20px 16px 9px !important;
  }

  #carta .lpdo-product-card-87 p {
    margin: 0 16px 18px !important;
    min-height: 46px !important;
    line-height: 1.42 !important;
  }

  #carta .lpdo-product-card-87 a,
  #carta .lpdo-product-card-87 button {
    margin: auto 16px 16px !important;
  }

  #carta .lpdo-product-card-87 small,
  #carta .lpdo-product-card-87 .eyebrow,
  #carta .lpdo-product-card-87 .tag,
  #carta .lpdo-product-card-87 .badge {
    margin: 20px 16px 8px !important;
  }
}

/* Tablet */
@media (min-width: 769px) and (max-width: 1180px) {
  #carta.lpdo-carta-87 {
    padding: 74px 32px 84px !important;
  }

  #carta.lpdo-carta-87 > * {
    max-width: 860px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  #carta .lpdo-carta-grid-87 {
    max-width: 860px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }

  #carta .lpdo-product-card-87 .product-media img {
    height: 165px !important;
  }

  #carta .lpdo-product-card-87 h3 {
    margin: 20px 17px 9px !important;
  }

  #carta .lpdo-product-card-87 p {
    margin: 0 17px 18px !important;
    line-height: 1.42 !important;
  }

  #carta .lpdo-product-card-87 a,
  #carta .lpdo-product-card-87 button {
    margin: auto 17px 17px !important;
  }

  #carta .lpdo-product-card-87 small,
  #carta .lpdo-product-card-87 .eyebrow,
  #carta .lpdo-product-card-87 .tag,
  #carta .lpdo-product-card-87 .badge {
    margin: 20px 17px 8px !important;
  }
}

/* Mobile */
@media (max-width: 768px) {
  #carta.lpdo-carta-87 {
    padding: 58px 18px 74px !important;
  }

  #carta.lpdo-carta-87 h2 {
    max-width: 360px !important;
    line-height: .98 !important;
    margin-bottom: 18px !important;
  }

  #carta.lpdo-carta-87 h2 + p {
    max-width: 350px !important;
    line-height: 1.45 !important;
    margin-bottom: 34px !important;
  }

  #carta .lpdo-carta-grid-87 {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  #carta .lpdo-product-card-87 {
    border-radius: 20px !important;
    background: rgba(255, 248, 237, .96) !important;
  }

  #carta .lpdo-product-card-87 .product-media img {
    height: 245px !important;
    border-radius: 20px 20px 0 0 !important;
  }

  #carta .lpdo-product-card-87 h3 {
    margin: 22px 18px 10px !important;
    font-size: 22px !important;
    line-height: 1.08 !important;
  }

  #carta .lpdo-product-card-87 p {
    margin: 0 18px 22px !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    max-width: 320px !important;
  }

  #carta .lpdo-product-card-87 a,
  #carta .lpdo-product-card-87 button {
    margin: 0 18px 20px !important;
    min-height: 39px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  #carta .lpdo-product-card-87 small,
  #carta .lpdo-product-card-87 .eyebrow,
  #carta .lpdo-product-card-87 .tag,
  #carta .lpdo-product-card-87 .badge {
    margin: 20px 18px 8px !important;
  }
}

@media (max-width: 390px) {
  #carta .lpdo-product-card-87 .product-media img {
    height: 224px !important;
  }
}
