/** Shopify CDN: Minification failed

Line 211:26 The "-" operator only works if there is whitespace on both sides

**/
@charset "UTF-8";
/*------------------------------------------------------------------
[Table of contents]
1. Body
2. Header / #header
3. Navigation / #navbar
4. Content / #content
5. Left column / #leftcolumn
6. Right column / #rightcolumn
7. Sidebar / #sidebar
8. RSS / #rss
9. Search / #search
10. Boxes / .box
11. Sideblog / #sideblog
12. Advertisements / .ads
13. Footer / #footer
-------------------------------------------------------------------*/
/* === RESET Y UTILIDADES === */
* {
  outline: 0 !important;
  box-sizing: border-box; }

.nav > li > a:focus {
  background: transparent; }

a:hover {
  text-decoration: none !important; }

a:focus {
  text-decoration: none; }

.clear-none {
  clear: none !important; }

.clear-space {
  padding: 0 !important; }

.clear-space-left {
  padding-left: 0; }

.clear-space-right {
  padding-right: 0; }

.red {
  color: #ff3636; }

.left {
  float: left; }

.right {
  float: right; }

.flex {
  display: flex; }

.inline-block {
  display: inline-block; }

.text-center {
  text-align: center; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.row.flex {
  display: flex;
  flex-direction: row; }

.relative {
  position: relative; }

.absolute {
  position: absolute; }

.fixed {
  position: fixed; }

/* Transiciones */
.delay02 {
  transition: all .2s ease; }

.delay03 {
  transition: all .3s ease; }

.delay04 {
  transition: all .4s ease; }

.delay05 {
  transition: all .5s ease; }

.delay1 {
  transition: all 1s ease; }

.delay1_5 {
  transition: all 1.5s ease; }

.delay2 {
  transition: all 2s ease; }

/* Texto y Columnas */
.uppercase {
  text-transform: uppercase; }

.capital {
  text-transform: capitalize; }

.full-width {
  width: 100%; }

.column-10 {
  width: 10%; }

.column-6 {
  width: 16.66667%; }

.column-20 {
  width: 20%; }

.column-4 {
  width: 25%; }

.column-30 {
  width: 30%; }

.column-3 {
  width: 33.33333%; }

.column-40 {
  width: 40%; }

.column-50 {
  width: 50%; }

.column-60 {
  width: 60%; }

.column-70 {
  width: 70%; }

.column-80 {
  width: 80%; }

.column-90 {
  width: 90%; }

/* === MENU & DROPDOWN === */
.dropdown-menu {
  transform: translateY(10px);
  transition: .3s; }

.dropdown-menu li a {
  font-size: 14px !important;
  line-height: 24px; }

.dropdown:hover .dropdown-menu,
.dropdown:focus .dropdown-menu {
  transform: none;
  transition: .3s; }

.mega-menu-main {
  padding-bottom: 30px;
  min-width: 550px;
  box-shadow: 0px 5px 11.88px 0.12px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 5px 11.88px 0.12px rgba(0, 0, 0, 0.1);
  border: 0;
  border-radius: 0; }

.menu-main li {
  list-style-type: none; }

.menu-main .lv1 li a {
  font-size: 16px; }

/* Enlaces del menú */
li .link-menu {
  color: #323232; }

li .link-menu.white {
  color: #fff; }

li:hover .link-menu {
  color: #ee9051; }

.link-menu.white .st0 {
  stroke: #fff; }

.link-menu:hover i {
  color: #ee9051; }

/* === FORMULARIOS Y INPUTS === */
.form-control:focus {
  border-color: #ddd;
  box-shadow: unset; }

.input-number-group {
  display: flex; }

.input-number-group input[type=number]::-webkit-inner-spin-button,
.input-number-group input[type=number]::-webkit-outer-spin-button {
  appearance: none; }

.input-number-group .input-group-button {
  line-height: calc(80px/2-10px); }

.input-number-group .input-number {
  width: 40px;
  text-align: center;
  outline: none;
  display: block;
  margin: 0; }

.input-number-group .input-number,
.input-number-group .input-number-decrement,
.input-number-group .input-number-increment {
  user-select: none; }

.input-number-group .input-number-decrement,
.input-number-group .input-number-increment {
  display: inline-block;
  width: 30px;
  background: #fff;
  color: #909090;
  text-align: center;
  font-weight: 400;
  cursor: pointer; }

.input-number-group .input-number-decrement {
  margin-right: 0.3rem; }

.input-number-group .input-number-increment {
  margin-left: 0.3rem; }

input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none; }

/* === BOTONES UNIFICADOS (ATTMOSFERAS RED #ff3636) === */
/* Agrupa todos los selectores de botones rojos aquí */
.btn-default,
.button-shop,
.button-main2,
.btn-addToCart,
.btn,
.btn-dark,
.checkout-button,
.button-checkout,
.button-viewcart,
.shop-button,
.ai-carousel-cta-,
.cart-update input[type="submit"],
.wc-proceed-to-checkout .checkout-button,
.continue-shopping-1 a,
input.btn,
button.btn,
button[type="submit"] {
  background-color: #ff3636 !important;
  color: #ffffff !important;
  border: 2px solid #ff3636 !important;
  border-radius: 4px !important;
  /* Unificado radius */
  box-shadow: unset;
  transition: all 0.3s ease;
  opacity: 1;
  font-weight: 500;
  text-transform: uppercase !important;
  /* Unificado uppercase */
  padding: 12px 30px !important;
  /* Unificado padding */
  display: inline-block;
  cursor: pointer; }

/* Hover Unificado */
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.button-shop:hover,
.button-main2:hover,
.btn-addToCart:hover,
.btn:hover,
.btn-dark:hover,
.checkout-button:hover,
.button-checkout:hover,
.button-viewcart:hover,
.shop-button:hover,
.ai-carousel-cta-:hover,
.cart-update input[type="submit"]:hover,
.wc-proceed-to-checkout .checkout-button:hover,
.continue-shopping-1 a:hover,
input.btn:hover,
button.btn:hover,
button[type="submit"]:hover {
  background: #ffffff !important;
  color: #ff3636 !important;
  border-color: #ff3636 !important;
  box-shadow: unset;
  text-decoration: none !important; }

/* Corrección texto interior */
.button-shop span,
.button-main2 span,
.button-checkout span,
.button-viewcart span {
  color: inherit !important; }

/* === OTROS ESTILOS === */
.link-default {
  color: black;
  transition: all .3s ease; }

.link-default:hover {
  color: #ee9051; }

.circle {
  border-radius: 50%;
  border: 1px solid #f0f0f0;
  width: 15px;
  height: 15px;
  display: inline-block;
  margin-right: 5px;
  transition: .3s; }

.circle:hover {
  transform: scale(1.2); }

.table > tbody > tr > td {
  vertical-align: middle; }

.title-hover:hover {
  color: #ee9051 !important; }

.hover-zoom-out {
  overflow: hidden;
  transition: all .5s ease; }

.hover-zoom-out:hover {
  transform: scale(1.05); }

.over-hidden {
  overflow: hidden; }

/* === OVERLAYS & SEARCH === */
.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  z-index: 30;
  background: rgba(29, 29, 31, 0.6);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: all .3s ease; }

.overlay.active {
  opacity: 1;
  visibility: visible; }

.overlay-mini {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: all .3s ease;
  transform: scale(0);
  top: 0; }

.form-search {
  z-index: 100;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  background: #fff;
  padding: 10% 0 0 0; }

.form-search h3 {
  font-size: 50px;
  padding-bottom: 55px;
  text-transform: capitalize;
  line-height: 60px; }

.form-search i {
  cursor: pointer;
  position: absolute;
  top: 50px;
  right: 50px;
  font-size: 50px;
  color: #333;
  transition: all .3s ease; }

.form-search i:hover {
  transform: rotate(90deg); }

.form-search form {
  justify-content: center;
  display: flex; }

.form-search form input {
  font-weight: 300;
  font-size: 40px;
  color: #000;
  height: 50px;
  width: 60%;
  border-radius: 0;
  border: 0;
  outline: 0;
  box-shadow: unset; }

.form-search form input::-webkit-input-placeholder,
.form-search form input::-moz-placeholder {
  color: #000; }

.form-search form button {
  margin-left: 15px;
  border-radius: 0;
  border: 0;
  font-size: 18px;
  background: #000;
  color: #fff;
  padding: 5px 50px;
  text-transform: uppercase;
  transition: all .3s ease; }

.form-search form button:hover {
  background: #41cce5; }

/* === CART === */
.form-cart {
  position: fixed;
  overflow: hidden;
  right: -470px;
  height: 100%;
  width: 470px;
  top: 0;
  z-index: 100;
  background: #fff; }

.form-cart i {
  cursor: pointer;
  position: absolute;
  top: 50px;
  right: 50px;
  font-size: 30px;
  color: #333;
  transition: all .3s ease; }

.form-cart i:hover {
  transform: rotate(90deg); }

.form-cart h3 {
  font-size: 36px;
  text-align: left;
  padding-left: 30px;
  padding-top: 26px; }

.form-cart .empty-cart {
  padding-top: 50%; }

.form-cart .empty-cart p {
  font-size: 22px;
  text-align: center;
  padding-bottom: 20px; }

.form-cart .empty-cart a {
  width: 187px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  display: inline-block;
  background: #ee9051;
  color: #fff;
  font-size: 18px;
  margin-left: 30%; }

.form-cart .empty-cart a:hover {
  background: #f47d2e; }

@media (max-width: 480px) {
  .form-cart {
    width: 300px; }

  .form-cart .empty-cart a {
    margin-left: 20%; } }
.st0 {
  fill: none;
  stroke: #000000;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-miterlimit: 10; }

#myVideo {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

/* === SWATCHES / VARIANTS === */
.swatch .title_variant {
  color: #000000;
  margin: 0;
  position: relative;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 20px;
  font-weight: 600;
  min-width: 55px;
  border-bottom: 2px solid #000;
  margin-right: 27px; }

.swatch .title_variant.header:after {
  bottom: 10px; }

.swatch .link_color {
  display: inline-block;
  height: 20px !important;
  min-width: 20px !important;
  margin-right: 10px;
  border-radius: 50%;
  border: 1px solid #ccc;
  transition: all .3s ease;
  position: relative;
  margin-bottom: 5px; }

/* Corrección de Nesting en .link_color */
.swatch .link_color:after {
  content: "";
  border: 1px solid #b0b0b0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: inline-block;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0; }

.swatch .link_color:hover:after {
  content: "";
  width: 26px;
  height: 26px;
  border: 1px solid #b0b0b0;
  border-radius: 50%;
  display: inline-block;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 1; }

@media (max-width: 576px) {
  .swatch .link_color:hover:after {
    border: 2px solid #b0b0b0; } }
.swatch input:checked + .border-color .link_color:after {
  content: "";
  border: 1px solid #b0b0b0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: inline-block;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 1; }

@media (max-width: 576px) {
  .swatch input:checked + .border-color .link_color:after {
    border: 2px solid #b0b0b0; } }
.swatch .variant_color.variant_quickview .link_color {
  margin-bottom: 0; }

.swatch .variant_color .link_color:hover {
  border: 1px solid #000; }

.swatch .variant_color .link_color .ciloe_filter_color {
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%; }

.swatch .variant_color {
  top: 5px; }

.swatch .variant_other {
  min-width: 43px;
  display: inline-block;
  height: unset !important;
  line-height: unset;
  padding: 10px 15px;
  border: 1px solid #ccc !important;
  color: #000;
  margin: 0 10px 10px 0 !important;
  text-align: center;
  transition: all .3s ease;
  font-size: 14px;
  font-weight: 600;
  opacity: .2; }

.swatch .variant_other:hover,
.swatch .variant_other:focus,
.swatch input:checked + .variant_other {
  border: 1px solid #000 !important;
  opacity: 1; }

.swatch input:checked + label {
  background: unset;
  color: #000; }

/* === FILTROS & FACETS === */
/* Título principal: Filtrar Por */
.facets-wrapper h4 {
  font-size: 14px !important;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-weight: 700;
  margin-bottom: 20px;
  color: #111; }

/* Texto de opciones */
.facets-wrapper span,
.facets-wrapper label,
.facets-wrapper .facet-checkbox label {
  font-size: 14px !important;
  color: #333;
  letter-spacing: normal;
  line-height: 1.5;
  text-transform: none; }

/* Inputs de Precio */
.facets-wrapper input[type="number"] {
  font-size: 14px !important;
  padding: 8px !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 0 !important; }

/* Títulos de filtros (Precio, Color) */
.facets-wrapper h5,
.ai-facets-heading- {
  font-size: 15px !important;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 15px;
  color: #333; }

.prod_largeimg .content-page-detail .detail-info {
  width: 100% !important;
  max-width: 100% !important; }

/* === KEYFRAMES === */
/* FadeInUp */
@-webkit-keyframes smoothFadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px); }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

@keyframes smoothFadeInUp {
  0% {
    opacity: 0;
    transform: translateY(10px); }

  100% {
    opacity: 1;
    transform: translateY(0); } }

/* FadeInDown */
@-webkit-keyframes smoothFadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes smoothFadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -10px, 0); }

  to {
    opacity: 1;
    transform: none; } }

/* FadeInLeft */
@-webkit-keyframes smoothFadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes smoothFadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-10px, 0, 0); }

  to {
    opacity: 1;
    transform: none; } }

/* FadeInRight */
@-webkit-keyframes smoothFadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes smoothFadeInRight {
  from {
    opacity: 0;
    transform: translate3d(10px, 0, 0); }

  to {
    opacity: 1;
    transform: none; } }

/* FadeInTop */
@-webkit-keyframes smoothFadeInTop {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes smoothFadeInTop {
  from {
    opacity: 0;
    transform: translate3d(0, 10px, 0); }

  to {
    opacity: 1;
    transform: none; } }

/* FadeInBottom */
@-webkit-keyframes smoothFadeInBottom {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes smoothFadeInBottom {
  from {
    opacity: 0;
    transform: translate3d(0, -10px, 0); }

  to {
    opacity: 1;
    transform: none; } }

/* FadeOutUp */
@-webkit-keyframes smoothFadeOutUp {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); } }

@keyframes smoothFadeOutUp {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    transform: translate3d(0, -10px, 0); } }

/* FadeOutDown */
@-webkit-keyframes smoothFadeOutDown {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); } }

@keyframes smoothFadeOutDown {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    transform: translate3d(0, 10px, 0); } }

/* FadeOutLeft */
@-webkit-keyframes smoothFadeOutLeft {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); } }

@keyframes smoothFadeOutLeft {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    transform: translate3d(-10px, 0, 0); } }

/* FadeOutRight */
@-webkit-keyframes smoothFadeOutRight {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

@keyframes smoothFadeOutRight {
  from {
    opacity: 1; }

  to {
    opacity: 0;
    transform: translate3d(10px, 0, 0); } }

/* --- AJUSTE DE IMÁGENES DE PRODUCTO (ESCAlADO COMPLETO) --- */
/* Forzamos a que la imagen principal y las miniaturas no se corten */
.engoj_img_main,
.product-single__photos img,
.img-responsive,
.engoj-nav-item img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  /* Mantiene la proporción y muestra la imagen completa */
  object-position: center;
  /* Centra la imagen si el contenedor es más grande */
  aspect-ratio: 1 / 1;
  /* Opcional: fuerza a que el contenedor sea cuadrado */
  background-color: #fff;
  /* Rellena los espacios vacíos con blanco (opcional) */ }

/* Asegura que el contenedor de la imagen no tenga una altura fija que la corte */
.engoj-img-main-parent {
  height: auto !important;
  display: flex;
  align-items: center;
  justify-content: center; }

/* Forzar los colores de la barra de promoción */
.promo_topbar span,
.promo_topbar a.btn_promo {
  color: inherit !important;
  /* Esto obliga a usar el color del padre (el que pusimos arriba) */ }

.promo_topbar svg path {
  fill: currentColor !important;
  /* Esto hace que la 'X' de cerrar sea del mismo color que el texto */ }

/* --- REFINAMIENTO PROMO TOP BAR --- */
.promo_topbar {
  background-color: #f5f5f5 !important;
  /* Gris muy claro de fondo */
  border-bottom: 1px solid #e0e0e0;
  /* Línea divisoria sutil */
  padding: 8px 0 !important;
  /* Reduce la altura total de la barra */ }

.promo_topbar span {
  font-size: 12px !important;
  /* Texto más pequeño y legible */
  font-weight: 400;
  letter-spacing: 0.5px;
  color: #333 !important;
  /* Gris oscuro para el texto */ }

.promo_topbar .btn_promo {
  font-size: 11px !important;
  /* Botón proporcional al texto */
  padding: 4px 12px !important;
  margin-left: 15px; }

.close_promo_topbar {
  top: 50% !important;
  transform: translateY(-50%);
  /* Centra verticalmente la X de cierre */
  right: 20px !important; }

/* Limitar el ancho del Store Locator para que coincida con el Header/Contenedor */
.bss-map-block,
#store-locator-page-parent {
  max-width: 1200px !important;
  /* Ajusta a 1200px o 1400px según tu diseño */
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 15px;
  /* Margen interno para móviles */
  padding-right: 15px; }

/* Opcional: Ajustar el mapa interno para que no se desborde */
#bss-map-wrapper {
  border-radius: 8px;
  /* Un toque estético para que no se vea tan rígido */
  overflow: hidden; }

/* Ajuste para que el buscador del mapa no se pegue a los bordes */
.search-bar-container {
  padding: 15px 0; }

/* --- AJUSTE EXPERTO: HEADER FIXED VS MAPA --- */
/* Aseguramos que el header se mantenga fijo y arriba de todo al hacer scroll */
header#header.jsheader_sticky.menu_scroll_v1 {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
  /* Capa máxima */
  background-color: #ffffff !important;
  /* Evita que sea transparente */
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important; }

/* Forzamos que el bloque del mapa y sus capas internas se queden al fondo */
.bss-map-block,
#bss-map-wrapper,
.leaflet-pane,
.leaflet-top,
.leaflet-bottom,
.bss-map-block * {
  z-index: 1 !important;
  /* Capa mínima */ }

/* Ajuste para los controles del mapa (zoom, etc) para que no floten sobre el menu */
.leaflet-control-container {
  z-index: 10 !important; }

/* Custom Global H2 Style */
h2, .h2, .section-heading, [class*="title"] h2 {
  color: #ff3636 !important; }
