.elementor-42 .elementor-element.elementor-element-1c66455{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-e1b1edd{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:8px;--padding-bottom:8px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-e1b1edd:not(.elementor-motion-effects-element-type-background), .elementor-42 .elementor-element.elementor-element-e1b1edd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-42 .elementor-element.elementor-element-f47edf4{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:15px;--padding-bottom:15px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-f47edf4:not(.elementor-motion-effects-element-type-background), .elementor-42 .elementor-element.elementor-element-f47edf4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-5e47873 );}.elementor-42 .elementor-element.elementor-element-2f388f6{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-42 .elementor-element.elementor-element-095634d{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-42 .elementor-element.elementor-element-c2c41c6 img{width:80px;}.elementor-42 .elementor-element.elementor-element-fb34621{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-42 .elementor-element.elementor-element-26f0fe6{--display:flex;--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-f985a54{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--overflow:hidden;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-5952e2c{padding:0px 0px 0px 0px;}.elementor-42 .elementor-element.elementor-element-8486c25{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-90bc855{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}@media(min-width:768px){.elementor-42 .elementor-element.elementor-element-2f388f6{--width:20%;}.elementor-42 .elementor-element.elementor-element-095634d{--width:60%;}.elementor-42 .elementor-element.elementor-element-fb34621{--width:20%;}}@media(max-width:767px){.elementor-42 .elementor-element.elementor-element-f47edf4{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-42 .elementor-element.elementor-element-2f388f6{--width:30%;}.elementor-42 .elementor-element.elementor-element-095634d{--width:40%;}.elementor-42 .elementor-element.elementor-element-c2c41c6 img{width:40px;}.elementor-42 .elementor-element.elementor-element-fb34621{--width:30%;}}/* Start custom CSS for html, class: .elementor-element-a883a74 *//* ============================================
   MARQUEE - LOOP INFINITO
   ============================================ */

.marquee-container {
  width: 100%;
  overflow: hidden;
  background: #1A1A1A;
  padding: 10px 0;
}

.marquee-track {
  display: flex;
  transition: transform 1s ease-in-out;
}

.marquee-item {
  flex: 0 0 100%;
  text-align: center;
  white-space: nowrap;
}

.marquee-item a {
  color: white;
  text-decoration: none;
  font-size: 12px;
  font-family: 'Inter', sans-serif;
  letter-spacing: 0.5px;
  transition: color 0.3s;
}

.marquee-item a:hover {
  color: #C9A96E;
}

/* Responsive Mobile */
@media (max-width: 768px) {
  .marquee-container {
    padding: 8px 0;
  }
  
  .marquee-item a {
    font-size: 10px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8e91e33 */.hamburger-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 5px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.hamburger-line {
  width: 24px;
  height: 2px;
  background: #1A1A1A;
  transition: 0.3s;
}

.hamburger-btn:hover .hamburger-line {
  background: #C9A96E;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8c39b15 */.header-icons {
  display: flex;
  gap: 15px;
  justify-content: flex-end;
}

.icon-link {
  color: #1A1A1A;
  text-decoration: none;
  transition: color 0.3s;
}

.icon-link:hover {
  color: #C9A96E;
}

.search-toggle {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f47edf4 *//* Carrito de compras Shimmer */
.shimmer-cart-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.shimmer-cart-link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1A1A1A;
  text-decoration: none;
  transition: color 0.3s ease;
}

.shimmer-cart-link:hover {
  color: #C9A96E;
}

.shimmer-cart-count {
  position: absolute;
  top: -8px;
  right: -10px;
  background: #C9A96E;
  color: #FFFFFF;
  font-family: 'Inter', sans-serif;
  font-size: 10px;
  font-weight: 600;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* Si el conteo es 0, ocultar badge */
.shimmer-cart-count:empty,
.shimmer-cart-count[data-count="0"] {
  display: none;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5952e2c *//* ============================================
   OFF-CANVAS MENU - PC/TABLET
   ============================================ */

/* Overlay */
.off-canvas-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1999;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}

.off-canvas-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* Panel lateral */
.off-canvas-menu {
  position: fixed;
  top: 0;
  left: -350px;
  width: 350px;
  height: 100vh;
  background: white;
  z-index: 2000;
  transition: 0.3s ease-in-out;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

.off-canvas-menu.active {
  left: 0;
}

/* Header del panel */
.off-canvas-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px;
  border-bottom: 1px solid #E5E0DB;
}

.off-canvas-title {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #1A1A1A;
  letter-spacing: 1px;
}

.off-canvas-close {
  background: none;
  border: none;
  cursor: pointer;
  padding: 5px;
  color: #1A1A1A;
}

/* Navegación */
.off-canvas-nav {
  flex: 1;
  padding: 10px 0;
}

.off-canvas-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.off-canvas-list li a {
  display: flex;
  align-items: center;
  padding: 15px 20px;
  text-decoration: none;
  color: #1A1A1A;
  border-bottom: 1px solid #F5F0EB;
  transition: background 0.3s;
}

.off-canvas-list li a:hover {
  background: #FAF7F2;
}

.menu-icon {
  margin-right: 15px;
  font-size: 18px;
}

.menu-arrow {
  margin-left: auto;
  color: #C9A96E;
  font-size: 18px;
}

.off-canvas-list li a.sale {
  color: #C1553D;
}

/* Footer del panel */
.off-canvas-footer {
  padding: 20px;
  border-top: 1px solid #E5E0DB;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.off-canvas-footer a {
  color: #1A1A1A;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.3s;
}

.off-canvas-footer a:hover {
  color: #C9A96E;
}

.off-canvas-promo {
  margin-top: 10px;
  padding: 12px;
  background: #FAF7F2;
  border-radius: 8px;
  font-size: 12px;
  color: #5A5A5A;
  text-align: center;
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 768px) {
  .off-canvas-menu {
    width: 100%;
    left: -100%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-90bc855 *//* Search Lightbox */
.search-lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;  /* ← Altura fija = pantalla */
  background: #FDF8F5;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  overflow: hidden;  /* ← Sin scroll */
}

.search-lightbox.active {
  opacity: 1;
  visibility: visible;
}

.search-lightbox-header {
  display: flex;
  justify-content: flex-end;
  padding: 20px;
}

.search-lightbox-close {
  background: white;
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.search-lightbox-content {
  padding: 0 20px;
  text-align: center;
  max-width: 500px;
  margin: 0 auto;
  height: 75vh;
  display: flex;
  flex-direction: column;
  justify-content: center;  /* ← Centrado vertical */
  align-items: center;
}

.search-label {
  font-size: 12px;
  color: #C9A96E;
  letter-spacing: 2px;
  margin-bottom: 10px;
}

.search-title {
  font-family: 'Playfair Display', serif;
  font-size: 28px;
  color: #1A1A1A;
  margin-bottom: 20px;
}

.search-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 20px;
}

.search-divider span {
  width: 40px;
  height: 1px;
  background: #C9A96E;
}

.search-divider svg {
  color: #C9A96E;
}

.search-input-wrapper {
  position: relative;
  margin: 0 auto 20px;
}

.search-input {
  width: 100%;
  padding: 20px 70px 20px 25px;
  border: 1px solid #E5E0DB;
  border-radius: 30px;
  font-size: 16px;
  background: white;
  outline: none;
}

.search-input:focus {
  border-color: #C9A96E;
}

.search-btn {
  position: absolute;
  right: -10px;
  top: 50%;
  transform: translateY(-50%);
  background: #C9A96E;
  border: none;
  border-radius: 50%;
  width: 55px;
  height: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.search-btn svg {
  color: white;
}

.popular-searches {
  margin-top: 30px;
}

.popular-label {
  font-size: 12px;
  color: #5A5A5A;
  letter-spacing: 1px;
}

.popular-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 15px;
}

.popular-tag {
  padding: 8px 16px;
  border: 1px solid #E5E0DB;
  border-radius: 20px;
  text-decoration: none;
  color: #1A1A1A;
  font-size: 12px;
  transition: 0.3s;
}

.popular-tag:hover {
  border-color: #C9A96E;
  color: #C9A96E;
}/* End custom CSS */