/* Estilos propios del stack nuevo (tarjetas de grilla + ajustes del host).
   El CSS del cliente vive aparte en blossom-parts.css y no se toca. */

.bsl-card {
  display: block;
  text-decoration: none;
  color: inherit;
  background: #fff;
  border: 1px solid #efece8;
  border-radius: 14px;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.bsl-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 34px rgba(15, 10, 20, 0.09);
  border-color: #e2d9ea;
}
.bsl-card-img {
  aspect-ratio: 1 / 1;
  background: #f7f5f2;
  overflow: hidden;
}
.bsl-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.bsl-card:hover .bsl-card-img img {
  transform: scale(1.04);
}
.bsl-card-body {
  padding: 13px 15px 17px;
}
.bsl-card-body h3 {
  font-size: 14.5px;
  line-height: 1.38;
  font-weight: 500;
  margin: 0 0 7px;
  min-height: 40px;
  color: #1a1a1a;
  font-family: 'Outfit', system-ui, sans-serif;
}
.bsl-card-body .precio {
  margin: 0;
  color: #94429f;
  font-weight: 600;
  font-size: 15px;
}
.bsl-card-body .consultar {
  margin: 0;
  color: #9a9a9a;
  font-weight: 500;
  font-size: 14px;
}
.bsl-card-body .agotado {
  display: inline-block;
  margin-top: 5px;
  font-size: 11px;
  color: #b00020;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* El header del cliente es fixed: el contenido necesita su altura.
   La home NO lleva padding porque su hero está pensado a sangre. */
.blossom-header-host {
  position: relative;
  z-index: 900;
}
/* El header del cliente es fixed y mide 74px: el padding debe ser EXACTAMENTE eso
   o queda una franja blanca entre el header y la sección (antes 86px → 12px de hueco). */
:root {
  --bsl-header-h: 74px;
}
body.bsl-inner-page {
  padding-top: var(--bsl-header-h);
}

/* Los heroes oscuros de contacto/nosotros/archive van pegados al header */
body.bsl-inner-page > #root > div > section:first-child,
body.bsl-inner-page .blossom-wc-catalogo,
body.bsl-inner-page .bsl-page-contacto,
body.bsl-inner-page .bsl-page-nosotros {
  margin-top: 0;
}

/* El catálogo de la home se apoya en el hero */
#blossom-home {
  overflow-x: clip;
}
