    /* Cards */
    .gallery_item{padding:10px}
    .product-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.08);transition:.22s;cursor:pointer;position:relative}
    .product-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.12)}
    .product-img{position:relative;aspect-ratio:1/1;background:#f8fafc}
    .product-img img{width:100%;height:100%;object-fit:cover;display:block}
    .quick-view{position:absolute;right:10px;bottom:10px;background:rgba(255,255,255,.92);border:0;border-radius:10px;padding:8px 10px;font-weight:700;box-shadow:0 4px 12px rgba(0,0,0,.12);opacity:0;transform:translateY(6px);transition:all .2s}
    .product-img:hover .quick-view{opacity:1;transform:translateY(0)}
    .product-info{padding:12px 14px 16px;display:grid;gap:6px}
    .product-category{font-size:.6rem;color:#64748b;text-transform:uppercase;letter-spacing:.08em}
    .product-title {
  margin: 0;
  font-size: 0.8rem;
  font-weight: 400; /* m¨¢s delgado */
  color: #0f172a;
  line-height: 1.2;
}

    .product-price{justify-self:start;background:#F4A6A6;color:#fff;font-weight:800;font-size:.9rem;padding:6px 10px;border-radius:999px}
    .gallery_heading{font-weight:800;letter-spacing:.08em;font-size:clamp(1.1rem,2.5vw,1.3rem)}

    /* Fondo cabecera galerÃ­a */
    .gallery_image{height:220px;background-size:cover;background-position:center;border-radius:0 0 18px 18px;box-shadow:0 10px 30px rgba(0,0,0,.12) inset}

    /* Lightbox */
    .lightbox{position:fixed;inset:0;display:none;z-index:9999}
    .lightbox[aria-hidden="false"]{display:block}
    .lightbox-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.6);backdrop-filter:blur(2px)}
    .lightbox-dialog{position:absolute;left:50%;top:5%;transform:translateX(-50%);max-width:min(1024px,92vw);width:100%;background:#0b1220;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5)}
    .lightbox-dialog img{width:100%;max-height:68vh;display:block;object-fit:contain;background:#e3bfce}
    .lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;top:10px;background:rgba(255,255,255,.9);border:0;border-radius:10px;width:40px;height:40px;display:grid;place-items:center;font-size:20px;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.2)}
    .lightbox-close{right:10px}.lightbox-prev{left:10px;top:50%;transform:translateY(-50%)}.lightbox-next{right:10px;top:50%;transform:translateY(-50%)}
    .lightbox-caption{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;background:#0b1220;color:#e2e8f0;flex-wrap:wrap}
    .caption-category{font-size:.8rem;color:#94a3b8;letter-spacing:.08em;text-transform:uppercase}
    .caption-title{margin:2px 0 0;font-weight:800;color:#fff}
    .caption-price{background:#38bdf8;color:#0b1220;font-weight:900;padding:6px 10px;border-radius:999px}
    .caption-actions{display:flex;gap:10px}

    /* Modal QR */
    .qr-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(10,15,25,.55);backdrop-filter:blur(2px);z-index:9999;transition:opacity .2s;opacity:0}
    .qr-overlay.activo{display:flex;opacity:1}
    .qr-card{width:min(92vw,420px);background:#fff;border-radius:16px;box-shadow:0 15px 45px rgba(0,0,0,.25);padding:22px 18px 18px;text-align:center;position:relative}
    .qr-close{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;border:none;background:#f3f4f6;color:#111827;display:grid;place-items:center;cursor:pointer}
    .qr-img{width:230px;max-width:75%;height:auto;border-radius:8px;display:block;margin:8px auto 0}
    .btn-ghost,.btn-solid{border:0;border-radius:10px;padding:8px 14px;font-weight:600;cursor:pointer}
    .btn-ghost{background:#f3f4f6;color:#111827}.btn-ghost:hover{background:#e5e7eb}
    .btn-solid{background:#111827;color:#fff}
    
    :root{
  --rose-light: #ffeef2;
  --rose: #f48ca1;
  --rose-dark: #d96b86;
  --ink: #3d2e32;
  --muted: #8f7e86;
}

/* SecciÃ³n */
.promo{
  background: linear-gradient(180deg, #fff, var(--rose-light));
  padding: 60px 0 70px;
}
.section_subtitle{
  font-family: "Poppins", sans-serif;
  color: var(--rose-dark);
  letter-spacing:.25em;
  font-size:.82rem;
  margin-bottom: .3rem;
  font-weight: 300;
  text-transform: uppercase;
}
.section_title{
  font-family: "Playfair Display", serif;
  color: var(--ink);
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 1px;
  margin-bottom: 2.2rem;
}

/* Tarjeta */
.product-card{
  border:0;
  border-radius: 16px;
  overflow: hidden;
  background:#fff;
  box-shadow:0 8px 24px rgba(212,110,140,.18);
  transition: transform .25s ease, box-shadow .25s ease;
}
.product-card:hover{
  transform: translateY(-6px);
  box-shadow:0 12px 30px rgba(212,110,140,.25);
}
.product-media{
  position: relative;
  aspect-ratio: 4/5;
  background: #fafafa;
}
.product-media img{
  width:100%; height:100%;
  object-fit:cover;
}
.product-caption {
  position: absolute; 
  left: 0; 
  right: 0; 
  bottom: 0;
  background: #F4A6A6; /* Chestnut */
  padding: 8px 10px;
  text-align: center;
}

.product-name {
  font-family: "Playfair Display", serif;
  font-weight: 400;
  font-size: 1.05rem;
  color:  #9D3E39; /* Amarillo claro como en la imagen */
  letter-spacing: .5px;
}


/* Precio badge */
.price-badge{
  position:absolute; top:12px; left:12px;
  background: var(--rose);
  color:#fff;
  padding:6px 12px;
  border-radius:20px;
  font-family:"Poppins", sans-serif;
  font-weight:400;
  font-size:.9rem;
  letter-spacing:.3px;
  box-shadow:0 6px 16px rgba(244,111,144,.25);
}

/* Cinta NUEVO */
.ribbon{
  position:absolute; top:12px; right:-38px;
  background:#fff;
  color: var(--rose-dark);
  font-family:"Poppins", sans-serif;
  font-weight:400;
  font-size:.75rem;
  padding:5px 50px;
  transform:rotate(35deg);
  box-shadow:0 4px 12px rgba(0,0,0,.06);
}

/* Acciones */
.product-actions{
  padding: 14px 16px 18px;
  display:flex; gap:.6rem; justify-content:center; flex-wrap:wrap;
}
.btn-rose{
  background: #F4A6A6;
  color:#fff !important;
  border:0;
  border-radius:999px;
  padding:.45rem .85rem;
  font-family:"Poppins", sans-serif;
  font-weight:400;
  font-size:.88rem;
  letter-spacing:.3px;
  box-shadow:0 6px 14px rgba(244,111,144,.25);
  transition: all .2s ease;
}
.btn-rose:hover{
  background: var(--rose-dark);
  transform: translateY(-2px);
}
.btn-ghost{
  background:#fff;
  color: #F4A6A6;
  border:1px solid var(--rose-light);
  border-radius:999px;
  padding:.45rem .85rem;
  font-family:"Poppins", sans-serif;
  font-weight:400;
  font-size:.88rem;
  letter-spacing:.3px;
  transition: all .2s ease;
}
.btn-ghost:hover{
  border-color: var(--rose-dark);
  color: var(--rose-dark) !important;
}

.small-note{
  color: var(--muted);
  font-size:.8rem;
  margin-top:.35rem;
  font-family:"Poppins", sans-serif;
}
  
  .catalog-actions {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-top: 20px;
  flex-wrap: wrap; /* por si se hace pequeÃ±o en mÃ³vil */
}

.btn-global {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  border-radius: 30px;
  background: #F4A6A6; /* fondo oscuro neutro */
  color: white;
  transition: all 0.3s ease;
  box-shadow: 0px 4px 8px rgba(0,0,0,0.2);
}

.btn-global i {
  font-size: 18px;
}

.btn-global:hover {
  background: #333;
  transform: translateY(-3px);
  box-shadow: 0px 6px 12px rgba(0,0,0,0.3);
}

/* Estilo especial para WhatsApp */
.btn-global.whatsapp {
  background: #F4A6A6;
  color: white;
}

.btn-global.whatsapp:hover {
  background: #1ebe57;
}  