:root{
  --primary: #FFD43B;
  --dark: #000;
  --muted-bg: #f7f9fb;
  --radius: 12px;
}

/* Header logo */
.logo-img{
  width:48px;
  height:48px;
  object-fit:cover;
  border-radius:10px;
  border:2px solid var(--primary);
  box-shadow: 0 4px 18px rgba(0,0,0,0.08);
}


.promo-banner {
  width: 100%;
  background: #f7f131; /* rojo navideño */
  color: rgb(0, 0, 0);
  overflow: hidden;
  padding: 8px 0;
  white-space: nowrap;
  position: relative;
  font-weight: bold;
  font-size: 1rem;
  border-bottom: 2px solid #fcdf22;
}

.promo-banner span {
  display: inline-block;
  padding-left: 100%;
  animation: scrollBanner 10s linear infinite;
}

@keyframes scrollBanner {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}





/* Categories panel */
.categories{
  background:#fff;
  border-radius:12px;
  padding:16px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.04);
  position: sticky;
  top:20px;
}



/* Productos grid & cards */

#productsGrid {
  row-gap: 1.5rem;
}

@media (max-width: 576px) {
  #productsGrid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}





.product-card{
  background:#fff;
  border-radius:12px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.05);
  display:flex;
  flex-direction:column;
  height:100%;
  transition: transform .18s ease, box-shadow .18s ease;
}

.product-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 14px 40px rgba(0,0,0,0.08);
}

.color-dot{
  display:inline-block;
  width:16px;
  height:16px;
  border-radius:50%;
  border:1px solid rgba(0,0,0,0.08);
}

/* Buttons */
.btn-whatsapp{
  background:#25D366;
  color:#fff;
  border:none;
}
.btn-whatsapp:hover{ opacity:.95; }

/* Value boxes / about page */
.value-box{
  border-radius:10px;
  padding:16px;
  background:var(--primary);
  color:#000;
  box-shadow: 0 6px 18px rgba(0,0,0,0.05);
}

/* Responsive tweaks */
@media (max-width: 991px){
  .categories{ position: static; }
  .logo-img{ width:40px; height:40px; }
}

/* Misc */
.cat-click{ cursor:pointer; }
.sub-item{ cursor:pointer; padding:6px 0; }


/* Modal de producto mejorado */
#productModal .modal-body {
  padding: 2rem;
}

#productModal .row.align-items-center {
  gap: 1.5rem; /* espacio entre imagen y detalles */
}

#productModalImg {
  max-width: 100%;
  height: auto; /* que respete proporción */
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}

#productModalDesc {
  line-height: 1.6;
  margin-bottom: 1rem;
}

#productModalColors .color-dot {
  width: 20px;
  height: 20px;
  border: 1px solid #ddd;
}

#productModal .btn {
  min-width: 120px;
}

#productModal p {
  margin-bottom: 0.5rem;
}


/* footer*/
footer {
  background: #0d0d0d;
  color: #e8e8e8;
  position: relative;
  overflow: hidden;
}

/* Efecto degradado superior */
footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, #ffac2f, #ffdd8b, #ffc542);
  opacity: 0.8;
}

/* Títulos */
footer h5, footer h6 {
  font-weight: 600;
  letter-spacing: 1px;
}

/* Texto “muted” */
footer .muted {
  color: rgba(255,255,255,0.6);
}

/* Links */
footer a {
  text-decoration: none;
  color: #f5f5f5;
  transition: 0.25s;
}

footer a:hover {
  color: #ffd27c;
  padding-left: 4px;
}

/* Separador */
footer hr {
  border: none;
  height: 1px;
  background: rgba(255,255,255,0.1);
  margin-top: 25px;
  margin-bottom: 20px;
}

/* Línea final */
footer .bottom {
  color: rgba(255,255,255,0.5);
  font-size: 0.85rem;
}

/* Animación suave en los items */
footer ul li {
  transition: 0.25s;
}

footer ul li:hover {
  transform: translateX(4px);
}
/*CONTACtsnos*/
footer .btn-success {
  background: #2ba15a;
  border: none;
  font-weight: 500;
  transition: 0.25s;
}

footer .btn-success:hover {
  background: #23b65e;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(43, 212, 111, 0.3);
}