.elementor-kit-10{--e-global-color-primary:#51A092;--e-global-color-secondary:#222222;--e-global-color-text:#5F6B6A;--e-global-color-accent:#2E5E56;--e-global-color-6fc3c04:#F7F7F5;--e-global-color-1c313ae:#FFFFFF;--e-global-color-6eb1cd8:#0F1720;--e-global-color-23349c9:#D9E2DF;--e-global-color-9848320:#F7F7F5;--e-global-typography-primary-font-family:"Plus Jakarta Sans";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;}.elementor-kit-10 button,.elementor-kit-10 input[type="button"],.elementor-kit-10 input[type="submit"],.elementor-kit-10 .elementor-button{background-color:#51A092;font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:0em;color:var( --e-global-color-1c313ae );border-style:none;}.elementor-kit-10 button:hover,.elementor-kit-10 button:focus,.elementor-kit-10 input[type="button"]:hover,.elementor-kit-10 input[type="button"]:focus,.elementor-kit-10 input[type="submit"]:hover,.elementor-kit-10 input[type="submit"]:focus,.elementor-kit-10 .elementor-button:hover,.elementor-kit-10 .elementor-button:focus{background-color:#2E5E56;color:var( --e-global-color-1c313ae );border-style:none;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}body.e-wc-message-notice .woocommerce-message, body.e-wc-message-notice .wc-block-components-notice-banner.is-success{background-color:var( --e-global-color-9848320 );}body.e-wc-info-notice .woocommerce-info, body.e-wc-info-notice .wc-block-components-notice-banner.is-info{background-color:var( --e-global-color-9848320 );}body.e-wc-info-notice .woocommerce-info .button:hover, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-info .woocommerce-Button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .wc-block-components-notice-banner.is-info .woocommerce-Button:hover{background-color:var( --e-global-color-accent );background-image:var( --e-global-color-accent );}.elementor-kit-10 h1{font-family:"Plus Jakarta Sans", Sans-serif;font-size:56px;font-weight:800;}.elementor-kit-10 h2{font-family:"Plus Jakarta Sans", Sans-serif;font-size:40px;font-weight:700;line-height:1.15em;letter-spacing:0.5px;}.elementor-kit-10 h3{font-family:"Plus Jakarta Sans", Sans-serif;font-size:30px;font-weight:700;line-height:1.2em;}.elementor-kit-10 h4{font-family:"Plus Jakarta Sans", Sans-serif;font-size:24px;font-weight:600;line-height:1.25em;}.elementor-kit-10 label{color:var( --e-global-color-secondary );font-family:"Inter", Sans-serif;font-size:15px;font-weight:500;}.elementor-kit-10 input:not([type="button"]):not([type="submit"]),.elementor-kit-10 textarea,.elementor-kit-10 .elementor-field-textual{color:var( --e-global-color-secondary );background-color:var( --e-global-color-1c313ae );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-23349c9 );border-radius:10px 10px 10px 10px;padding:16px 14px 16px 14px;}.elementor-kit-10 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-10 textarea:focus,.elementor-kit-10 .elementor-field-textual:focus{border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1300px;}.e-con{--container-max-width:1300px;--container-default-padding-top:90px;--container-default-padding-right:40px;--container-default-padding-bottom:90px;--container-default-padding-left:40px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{--error-message-text-color:var( --e-global-color-secondary );--error-message-icon-color:var( --e-global-color-primary );--error-message-normal-links-color:var( --e-global-color-primary );--error-message-hover-links-color:var( --e-global-color-accent );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{--message-message-text-color:var( --e-global-color-primary );--message-message-icon-color:var( --e-global-color-primary );--message-buttons-normal-text-color:var( --e-global-color-secondary );--message-buttons-hover-text-color:var( --e-global-color-secondary );--message-border-color:var( --e-global-color-primary );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{--info-message-text-color:var( --e-global-color-secondary );--info-message-icon-color:var( --e-global-color-primary );--info-buttons-normal-text-color:var( --e-global-color-secondary );--info-buttons-hover-text-color:var( --e-global-color-9848320 );--info-buttons-hover-border-color:var( --e-global-color-accent );--info-border-color:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:70px;--container-default-padding-right:24px;--container-default-padding-bottom:70px;--container-default-padding-left:24px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:52px;--container-default-padding-right:20px;--container-default-padding-bottom:52px;--container-default-padding-left:20px;}}
/* Start custom CSS */.perpack-card-title {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.perpack-card-desc {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* =========================================================
   FILTRO CATÁLOGO PER-PACK
   Clase aplicada al contenedor del filtro: perpack-filter-box
   ========================================================= */

/* Caja general del filtro */
.perpack-filter-box {
  background: #ffffff;
  border: 1px solid rgba(81, 160, 146, 0.18);
  border-radius: 20px;
  padding: 24px;
  box-shadow: 0 8px 24px rgba(34, 34, 34, 0.05);
}

/* Sticky solo en desktop */
@media (min-width: 1025px) {
  .perpack-filter-box {
    position: sticky;
    top: 120px;
    align-self: flex-start;
  }
}

/* Título superior: FILTRAR PRODUCTOS */
.perpack-filter-box .elementor-heading-title,
.perpack-filter-box h2,
.perpack-filter-box h3,
.perpack-filter-box h4,
.perpack-filter-box .filter-title,
.perpack-filter-box .yith-wcan-filter-title {
  color: #222222;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 18px;
  line-height: 1.3;
}

/* Subtítulo interno: Filtrar por categoría */
.perpack-filter-box .yith-wcan-filter h4,
.perpack-filter-box .filter-title {
  font-size: 18px;
  text-transform: none;
  margin-bottom: 18px;
}

/* Formulario de búsqueda */
.perpack-filter-box form {
  margin-bottom: 24px;
}

/* Input buscador */
.perpack-filter-box input[type="search"],
.perpack-filter-box input[type="text"] {
  width: 100%;
  border: 1px solid rgba(81, 160, 146, 0.24) !important;
  border-radius: 10px !important;
  padding: 13px 14px !important;
  font-size: 14px !important;
  color: #222222 !important;
  background: #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

.perpack-filter-box input[type="search"]:focus,
.perpack-filter-box input[type="text"]:focus {
  border-color: #51A092 !important;
}

/* Botón buscar */
.perpack-filter-box button,
.perpack-filter-box input[type="submit"] {
  background: #51A092 !important;
  color: #ffffff !important;
  border: 1px solid #51A092 !important;
  border-radius: 10px !important;
  padding: 13px 18px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

.perpack-filter-box button:hover,
.perpack-filter-box input[type="submit"]:hover {
  background: #438f83 !important;
  border-color: #438f83 !important;
  color: #ffffff !important;
}

/* Lista general */
.perpack-filter-box ul {
  list-style: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  margin-bottom: 0 !important;
}

/* Subniveles */
.perpack-filter-box ul ul {
  padding-left: 12px !important;
  margin-top: 8px !important;
}

.perpack-filter-box ul ul ul {
  padding-left: 10px !important;
  margin-top: 7px !important;
}

/* Items */
.perpack-filter-box li {
  margin-bottom: 8px !important;
  line-height: 1.35 !important;
}

/* Labels */
.perpack-filter-box label {
  color: #333333 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
  display: inline !important;
}

/* Checkboxes */
.perpack-filter-box input[type="checkbox"] {
  accent-color: #51A092;
  margin-right: 7px !important;
  transform: translateY(1px);
}

/* Categorías principales */
.perpack-filter-box > ul > li > label,
.perpack-filter-box .filter-item.level-0 label,
.perpack-filter-box li.level-0 > label {
  font-weight: 700 !important;
  color: #222222 !important;
}

/* Subcategorías */
.perpack-filter-box ul ul label,
.perpack-filter-box .filter-item.level-1 label,
.perpack-filter-box li.level-1 > label {
  font-weight: 500 !important;
  font-size: 13.5px !important;
  color: #444444 !important;
}

/* Sub-subcategorías */
.perpack-filter-box ul ul ul label,
.perpack-filter-box .filter-item.level-2 label,
.perpack-filter-box li.level-2 > label {
  font-weight: 500 !important;
  font-size: 13px !important;
  color: #555555 !important;
}

/* Hover de textos del filtro */
.perpack-filter-box label:hover {
  color: #51A092 !important;
}

/* Enlaces, si el plugin muestra términos como links */
.perpack-filter-box a {
  color: #333333 !important;
  text-decoration: none !important;
  font-size: 14px !important;
}

.perpack-filter-box a:hover {
  color: #51A092 !important;
}

/* Botón limpiar / restablecer filtros */
.perpack-filter-box .reset-filters,
.perpack-filter-box .yith-wcan-reset-filters,
.perpack-filter-box .clear-selection,
.perpack-filter-box a.clear {
  display: inline-block;
  margin-top: 18px;
  color: #51A092 !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-decoration: none !important;
}

.perpack-filter-box .reset-filters:hover,
.perpack-filter-box .yith-wcan-reset-filters:hover,
.perpack-filter-box .clear-selection:hover,
.perpack-filter-box a.clear:hover {
  color: #438f83 !important;
  text-decoration: underline !important;
}

/* Responsive tablet */
@media (max-width: 1024px) {
  .perpack-filter-box {
    position: relative;
    top: auto;
    padding: 22px;
  }
}

/* Responsive móvil */
@media (max-width: 767px) {
  .perpack-filter-box {
    padding: 20px;
    border-radius: 16px;
  }

  .perpack-filter-box label {
    font-size: 13.5px !important;
  }

  .perpack-filter-box ul ul {
    padding-left: 10px !important;
  }

  .perpack-filter-box ul ul ul {
    padding-left: 8px !important;
  }
}

/* Ancla en bloque catalogo*/
#catalogo-productos {
  scroll-margin-top: 120px;
}

/* =========================================================
   BOTÓN LIMPIAR / RESTABLECER FILTROS - YITH
   ========================================================= */

.perpack-filter-box .yith-wcan-reset-filters,
.perpack-filter-box .reset-filters,
.perpack-filter-box .clear-selection,
.perpack-filter-box a.clear,
.perpack-filter-box button.reset,
.perpack-filter-box .yith-wcan-filters .reset-filters {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 42px !important;
  padding: 12px 18px !important;
  margin: 0 0 18px 0 !important;

  background: #51A092 !important;
  border: 1px solid #51A092 !important;
  border-radius: 10px !important;

  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-decoration: none !important;

  cursor: pointer !important;
  box-shadow: none !important;
}

/* Forzar color del texto interno si el plugin usa span */
.perpack-filter-box .yith-wcan-reset-filters *,
.perpack-filter-box .reset-filters *,
.perpack-filter-box .clear-selection *,
.perpack-filter-box a.clear *,
.perpack-filter-box button.reset * {
  color: #ffffff !important;
  fill: #ffffff !important;
}

/* Hover */
.perpack-filter-box .yith-wcan-reset-filters:hover,
.perpack-filter-box .reset-filters:hover,
.perpack-filter-box .clear-selection:hover,
.perpack-filter-box a.clear:hover,
.perpack-filter-box button.reset:hover {
  background: #438f83 !important;
  border-color: #438f83 !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

/* =====================================================
   FIX SCROLL HORIZONTAL - SVG DECORATIVO ELEMENTOR
   Elemento detectado: elementor-element-056d02f
   ===================================================== */

@media (max-width: 767px) {

    html,
    body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    body {
        position: relative;
    }

    .elementor-element-056d02f {
        max-width: 100% !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .elementor-element-056d02f svg {
        max-width: 100% !important;
        width: 100% !important;
        height: auto !important;
    }

    .elementor-element-056d02f path {
        max-width: 100% !important;
    }
}/* End custom CSS */