.elementor-1922 .elementor-element.elementor-element-b960289{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:22px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:25px;--padding-bottom:60px;--padding-left:15px;--padding-right:15px;}.elementor-1922 .elementor-element.elementor-element-06fc5a6{--display:flex;--padding-top:0px;--padding-bottom:60px;--padding-left:15px;--padding-right:15px;}.elementor-widget-woocommerce-product-content{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-1922 .elementor-element.elementor-element-b7c87d4{font-family:"Poppins Regular", Sans-serif;font-weight:400;}.elementor-1922 .elementor-element.elementor-element-6ffa429{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:60px;--padding-left:15px;--padding-right:15px;}.elementor-1922 .elementor-element.elementor-element-786d5c6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-1922 .elementor-element.elementor-element-786d5c6:not(.elementor-motion-effects-element-type-background), .elementor-1922 .elementor-element.elementor-element-786d5c6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1922 .elementor-element.elementor-element-59f6bf0{text-align:center;}.elementor-1922 .elementor-element.elementor-element-59f6bf0 .elementor-heading-title{font-family:"Nexa", Sans-serif;font-size:30px;font-weight:600;line-height:35px;color:#0B1A51;}.elementor-1922 .elementor-element.elementor-element-a412d18{--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:space-around;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-1922 .elementor-element.elementor-element-a412d18:not(.elementor-motion-effects-element-type-background), .elementor-1922 .elementor-element.elementor-element-a412d18 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-1922 .elementor-element.elementor-element-fca68d7 .elementor-icon-box-wrapper{text-align:center;gap:20px;}.elementor-1922 .elementor-element.elementor-element-fca68d7 .elementor-icon-box-title{margin-block-end:0px;color:#0B1A51;}.elementor-1922 .elementor-element.elementor-element-fca68d7.elementor-view-stacked .elementor-icon{background-color:#00C87633;}.elementor-1922 .elementor-element.elementor-element-fca68d7.elementor-view-framed .elementor-icon, .elementor-1922 .elementor-element.elementor-element-fca68d7.elementor-view-default .elementor-icon{fill:#00C87633;color:#00C87633;border-color:#00C87633;}.elementor-1922 .elementor-element.elementor-element-fca68d7 .elementor-icon{font-size:47px;padding:23px;}.elementor-1922 .elementor-element.elementor-element-fca68d7 .elementor-icon-box-title, .elementor-1922 .elementor-element.elementor-element-fca68d7 .elementor-icon-box-title a{font-family:"Poppins Bold", Sans-serif;font-size:18px;font-weight:600;line-height:23px;}.elementor-1922 .elementor-element.elementor-element-fca68d7:has(:hover) .elementor-icon-box-title,
					 .elementor-1922 .elementor-element.elementor-element-fca68d7:has(:focus) .elementor-icon-box-title{color:#0B1A51;}.elementor-1922 .elementor-element.elementor-element-bd8a671 .elementor-icon-box-wrapper{text-align:center;gap:20px;}.elementor-1922 .elementor-element.elementor-element-bd8a671 .elementor-icon-box-title{margin-block-end:0px;color:#0B1A51;}.elementor-1922 .elementor-element.elementor-element-bd8a671.elementor-view-stacked .elementor-icon{background-color:#00C87633;}.elementor-1922 .elementor-element.elementor-element-bd8a671.elementor-view-framed .elementor-icon, .elementor-1922 .elementor-element.elementor-element-bd8a671.elementor-view-default .elementor-icon{fill:#00C87633;color:#00C87633;border-color:#00C87633;}.elementor-1922 .elementor-element.elementor-element-bd8a671 .elementor-icon{font-size:47px;padding:23px;}.elementor-1922 .elementor-element.elementor-element-bd8a671 .elementor-icon-box-title, .elementor-1922 .elementor-element.elementor-element-bd8a671 .elementor-icon-box-title a{font-family:"Poppins Bold", Sans-serif;font-size:18px;font-weight:600;line-height:23px;}.elementor-1922 .elementor-element.elementor-element-bd8a671:has(:hover) .elementor-icon-box-title,
					 .elementor-1922 .elementor-element.elementor-element-bd8a671:has(:focus) .elementor-icon-box-title{color:#0B1A51;}.elementor-1922 .elementor-element.elementor-element-6aee229 .elementor-icon-box-wrapper{text-align:center;gap:20px;}.elementor-1922 .elementor-element.elementor-element-6aee229 .elementor-icon-box-title{margin-block-end:0px;color:#0B1A51;}.elementor-1922 .elementor-element.elementor-element-6aee229.elementor-view-stacked .elementor-icon{background-color:#00C87633;}.elementor-1922 .elementor-element.elementor-element-6aee229.elementor-view-framed .elementor-icon, .elementor-1922 .elementor-element.elementor-element-6aee229.elementor-view-default .elementor-icon{fill:#00C87633;color:#00C87633;border-color:#00C87633;}.elementor-1922 .elementor-element.elementor-element-6aee229 .elementor-icon{font-size:47px;padding:23px;}.elementor-1922 .elementor-element.elementor-element-6aee229 .elementor-icon-box-title, .elementor-1922 .elementor-element.elementor-element-6aee229 .elementor-icon-box-title a{font-family:"Poppins Bold", Sans-serif;font-size:18px;font-weight:600;line-height:23px;}.elementor-1922 .elementor-element.elementor-element-6aee229:has(:hover) .elementor-icon-box-title,
					 .elementor-1922 .elementor-element.elementor-element-6aee229:has(:focus) .elementor-icon-box-title{color:#0B1A51;}.elementor-1922 .elementor-element.elementor-element-66090f8 .elementor-icon-box-wrapper{text-align:center;gap:20px;}.elementor-1922 .elementor-element.elementor-element-66090f8 .elementor-icon-box-title{margin-block-end:0px;color:#0B1A51;}.elementor-1922 .elementor-element.elementor-element-66090f8.elementor-view-stacked .elementor-icon{background-color:#00C87633;}.elementor-1922 .elementor-element.elementor-element-66090f8.elementor-view-framed .elementor-icon, .elementor-1922 .elementor-element.elementor-element-66090f8.elementor-view-default .elementor-icon{fill:#00C87633;color:#00C87633;border-color:#00C87633;}.elementor-1922 .elementor-element.elementor-element-66090f8 .elementor-icon{font-size:47px;padding:23px;}.elementor-1922 .elementor-element.elementor-element-66090f8 .elementor-icon-box-title, .elementor-1922 .elementor-element.elementor-element-66090f8 .elementor-icon-box-title a{font-family:"Poppins Bold", Sans-serif;font-size:18px;font-weight:600;line-height:23px;}.elementor-1922 .elementor-element.elementor-element-66090f8:has(:hover) .elementor-icon-box-title,
					 .elementor-1922 .elementor-element.elementor-element-66090f8:has(:focus) .elementor-icon-box-title{color:#0B1A51;}@media(max-width:767px){.elementor-1922 .elementor-element.elementor-element-b960289{--padding-top:25px;--padding-bottom:60px;--padding-left:15px;--padding-right:15px;}.elementor-1922 .elementor-element.elementor-element-a412d18{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}@media(min-width:768px){.elementor-1922 .elementor-element.elementor-element-b960289{--content-width:1290px;}.elementor-1922 .elementor-element.elementor-element-06fc5a6{--content-width:1290px;}.elementor-1922 .elementor-element.elementor-element-6ffa429{--content-width:1290px;}.elementor-1922 .elementor-element.elementor-element-786d5c6{--content-width:1290px;}.elementor-1922 .elementor-element.elementor-element-a412d18{--content-width:1290px;}}/* Start custom CSS for shortcode, class: .elementor-element-d11ee13 *//* === Layout base === */
*{
    font-family: 'Poppins Regular';
}
.psx {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 57px;
  align-items: start;
}
@media (max-width: 900px) {
  .psx { grid-template-columns: 1fr; }
}

/* === Galería === */
.psx-gallery {
  position: relative;
  padding: 20px 10px;
  border-radius: 20px;
  background: white;
  box-shadow: 0 4px 25px 0 rgba(11, 26, 81, 0.15)
  
}
.psx-stage {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 300px;
  overflow: hidden;
  padding-top: 70px;
    img{
        height: 606px;
        &:focus{
            background: none;
            outline: none;
        }
        &:hover{
            background: none;
            outline: none;
        }
        
    }
}
.psx-stage-img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
.psx-thumbs {
  display: flex;
  gap: 10px;
  margin-top: 12px;
  flex-wrap: wrap;
  justify-content: center;
    button{
        background: none;
        outline: none;
        &:focus{
            outline: none;
            background: none;
        }
        &:hover{
            background: none;
            outline: none;
        }
    }
}
.psx-thumb {
  border: 1px solid #ddd;
  border-radius: 6px;
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.psx-thumb.is-active {
  outline: 2px solid #333;
}
.psx-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #E8E9EB;
  border: 1px solid #ccc;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  user-select: none;
  &:hover{
    background: #E8E9EB;
    color:#0B1A51;
  }
  &:focus{
      color:#0B1A51;
      background: #E8E9EB;
  }
}
.psx-prev { left: 8px;
color:#0B1A51;
}
.psx-next { right: 8px;
color: #0B1A51;}

.psx-meta{
    display: flex;
    flex-direction: column;
    gap:25px;
}
/* === Texto y meta === */
.psx-cat {
  color: #0B1A51;
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 20px;
}
.psx-title {
    color: #0B1A51;
    font-size: 30px;
    font-weight: 900;
    line-height: 35px;
    margin: 0;
    margin-top: -22px;
}
.psx-price {
    display: flex;
    align-items: baseline;
    gap: 10px;
}
.psx-price-now {
    font-weight: 700;
    font-size: 40px;
    color: #00C876;
    line-height: 45px;
}
.psx-price-was {
    font-weight: 900;
    font-size: 15px;
    color: #00C876;
    text-decoration: line-through;
    line-height: 20px;
    align-self: flex-start;
}
.psx-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
}
.psx-brand,
.psx-code {
  font-size: 18px;
  font-weight: 700;
  line-height: 23px;
  color: #0B1A51;
}
.psx-short {
  font-size: 15px;
  line-height: 20px;
  color: #0B1A51;
  font-weight: 700;
}

/* === Ficha técnica === */
.psx-dl {

  display: flex;
  width: fit-content;
  padding: 10px 15px;
  align-items: center;
  gap: 10px;
  border-radius: 30px;
  background: linear-gradient(180deg, #0B1A51 0%, #6678A1 100%);
  color: var(--5, #FFF);
  text-align: center;
  font-size: 18px;
  font-style: normal;
  font-weight: 900;
  line-height: 23px;
}
.psx-dl:hover {
    background: linear-gradient(180deg, #6678A1 0%, #0B1A51 100%);
    box-shadow: 0 4px 25px 0 rgba(11, 26, 81, 0.15);
    color: white;
}

/* === Cantidad y botones === */
.psx-qty {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  a.added_to_cart.wc-forward{
        display: none;
}

}

.psx-qtybox input[type="number"]::-webkit-outer-spin-button,
.psx-qtybox input[type="number"]::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.psx-qtybox input[type="number"]{ -moz-appearance:textfield; appearance:textfield; }
.psx-qtybox {
    display:flex; 
    align-items:center; 
    justify-content:center; 
    gap:0; background:#0B1A51; 
    border-radius:50px;
}
.psx-qtybox .psx-qtybtn {
    width:40px; height:36px; 
    border-radius:999px 0 0 999px; 
    background:#0B1A51; color:#fff; 
    border:none; font-weight:900; 
    cursor:pointer}
.psx-qtybox .psx-qtybtn.psx-qtybtn-plus {
    border-radius:0 999px 999px 0
    
}
.psx-qtybox input[type="number"] {
    width:56px; height:36px; 
    text-align:center; 
    border:1px solid #0B1A51; 
    border-left:none; 
    border-right:none; 
    font-weight:700; 
    color:#fff; 
    background:#0B1A51;
}
.psx-qtybox:hover {
    background:#00C876;
}
.psx-qtybox:hover .psx-qtybtn{
    background:#00C876; 
    color:#0B1A51;
}
.psx-qtybox:hover input[type="number"]{
    color:#0B1A51; 
    border-color:#00C876;
    background:#00C876;
}

.psx-max {
  font-size: 18px;
  color: #0B1A51;
  line-height: 23px;
  font-weight: 700;
}
.psx-add {
  border-radius: 30px;
  background: linear-gradient(180deg, #00C876 0%, #6BE3B2 100%);
  display: flex;
  padding: 10px 15px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: #0B1A51;
  text-align: center;
  font-size: 18px;
  font-style: normal;
  font-weight: 900;
  line-height: 23px;
  &:hover{
    border-radius: 30px;
    background: linear-gradient(180deg, #6BE3B2 0%, #00C876 100%);
    box-shadow: 0 4px 15px 0 rgba(0, 200, 118, 0.50);
    color: #0B1A51;
  }
}
.psx-add.is-disabled {
  opacity: .6;
  pointer-events: none;
}
.psx-buynow {

  display: flex;
  padding: 15px 25px;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  border-radius: 30px;
  border: 1px solid rgba(102, 120, 161, 0.20);
  background: linear-gradient(180deg, #6678A1 0%, #14306E 100%);
    box-shadow: 0 4px 25px 0 rgba(11, 26, 81, 0.15);
  color: #F7FBFE;
  text-align: center;
  font-size: 18px;
  font-style: normal;
  font-weight: 900;
  line-height: 23px;
}
.psx-buynow:hover {
    color: white;
    border-radius: 30px;
    background: linear-gradient(180deg, #6678A1 0%, #14306E 100%);
    box-shadow: 0 4px 25px 0 rgba(11, 26, 81, 0.15);
}

/* === Atributos === */
.psx-attr {

  border-radius: 20px;
  overflow: hidden;
  background: white;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.psx-attr-row {
  display: flex;
  padding: 5px 20px;
  justify-content: space-between;
  align-items: center;
  align-self: stretch;
  color: #0B1A51;
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 20px;
  
}

/* Quitar el borde superior al primer atributo */
.psx-attr-row:first-child {
  border-top: none;
}

/* Filas impares: fondo claro */
.psx-attr-row:nth-child(odd) {
  border-radius: 22px;
  background: rgba(102, 120, 161, 0.10);
}

/* Filas pares: fondo gris suave */
.psx-attr-row:nth-child(even) {
  background: #FFF;
}





/* === Badge descuento === */
.psx-badge {
  position: absolute;
  top: 55px;
  left: 8px;
  padding: 4px 10px;
  font-size: 13px;
  font-weight: bold;
  background: #e53935;
  color: #fff;
  border-radius: 12px;
  z-index: 2;
}

.psx-stock{
    position:absolute;
    top:21px;
    left:8px;
    border-radius: 30px;
    background:  #6BE3B2;
    display: inline-flex;
    padding: 5px 10px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    color: #0B1A51;
    text-align: center;
    font-family: 'Poppins Regular';
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    z-index: 2;
    strong{
        font-weight: 900;
    }
    
}

.psx-brand-logo{
    position: absolute;
    right: 8px;
    top: 21px;
    z-index: 1;
}
.psx-stock strong{
    font-weight:800
}

.stock-wp{
    position: absolute;
    top: 20px;
    left: 8px;
    border-radius: 30px;
    background: #6678A1;
    display: inline-flex;
    padding: 5px 10px;
    align-items: center;
    gap: 10px;
    color: var(--5, #FFF);
    text-align: center;
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
    z-index: 1;
    &:hover{
        outline: none;
        color: white;
    }
}

@media(max-width: 768px){
    .psx-brand, .psx-code{
        font-size: 15px;
    }
    .centrar-btn{
        display:flex;
        width: 100%;
        justify-content: center;
    }
    .psx-short{
        text-align:center;
    }
    .psx-qty{
        justify-content: center;
        gap: 15px;
    }
    .psx-stage {
        img{
            height: 350px;
        }
    }
}

/* Zoom mas overlay*/

/* Lente magnifier (desktop only) */
.psx-magnifier-lens {
  pointer-events: none;
  position: absolute;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  box-shadow: 0 8px 24px rgba(0,0,0,.45);
  border: 2px solid rgba(255,255,255,.6);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  z-index: 99998;
  transition: opacity .18s ease;
  opacity: 0;
}


/* overlay base (keep earlier rules but ensure transitions) */
.psx-zoom-overlay {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.86);
  z-index: 99999;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  padding: 20px;
  box-sizing: border-box;
  transition: opacity .26s ease;
  opacity: 0;
}
.psx-zoom-overlay.is-open { display:flex; opacity: 1; }

/* inner wrapper */
.psx-zoom-inner { 
    max-width: 100%;
    max-height: 100%;
    display:flex; 
    align-items:center;
    justify-content:center;
    background: white;
    
}

/* overlay image default style (when not animating we keep it centered) */
.psx-zoom-img {
  max-width: 92vw;
  max-height: 92vh;
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 6px;
  box-shadow: 0 40px 90px rgba(0,0,0,.6);
  cursor: zoom-out;
  transition: transform .36s cubic-bezier(.2,.9,.2,1), opacity .2s;
}

/* close button */
.psx-zoom-close{ position: fixed; right: 18px; top: 18px; z-index:100000; background: rgba(255,255,255,.06); color:#fff; border:none; width:44px; height:44px; border-radius:50%; font-size:22px; display:none; align-items:center; justify-content:center; cursor:pointer; 
    &:focus{
        outline: none;
        background: rgba(255, 255, 255, .06);
    }
    &:hover{
        outline: none;
        background: rgba(255, 255, 255, .06);
    }
}

.centrar-btn {
    display: flex;
    justify-content: space-between;
    .btn-whatsapp-mayor{
        display: flex;
        padding: 10px 15px;
        justify-content: center;
        align-items: center;
        border-radius: 30px;
        background: white;
        border: 1px solid #57d163;
        color: #57d163;
        text-align: center;
        font-family: 'Poppins Black';
        font-size: 17px;
        font-style: normal;
        font-weight: 900;
        line-height: 23px;
        &:hover{
            background: white;
            svg{
                margin-right: 10px;
            }
            strong{
                width: 11rem;
            }
        }
        svg{
            width: 20px;
            height: auto;
            path{
                fill: #57d163;
            }
        }
        strong{
            width: 0;
            overflow: hidden;
            transition: all 0.5s;
            transform: translate(0);
            white-space: nowrap;
        }
    }
    
}
@media(max-width:768px){
    .centrar-btn{
        align-items:center;
        justify-content: space-between;
        gap: 0;
        .btn-whatsapp-mayor{
            font-size: 12px;
            gap: 5px;
            strong{
                width: fit-content;
            }
        }
    }
    .centrar-btn-2{
        display: flex;
        width: 100%;
        justify-content: center;
        align-items: center;
    }
    .psx-brand-logo{
        position: absolute;
        right: 8px;
        top: 45px;
        z-index: 1;
        width: 115px;
        height: auto;
        object-fit: cover;
        display: flex;
        align-items: center;
        justify-content: center;
        object-position: center;
    }
    .psx-dl{
        font-size: 12px;
    }
    .psx-add{
        width: 100%;
    }
}

.psx-price-was{position: relative;}
.psx-igv{
    position: absolute;
    top: 100%;
    left: 0;
    width: 9rem !important;
    color: #676767;
}

.psx-meta{
    a.added_to_cart{display: none !important;}
}
/*Boton de comprar ahora oculto*/
.psx-buynow{display: none;}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-975bbe2 *//* =============================================================================
   0) Variables (puedes ajustar paleta aquí)
   ========================================================================== */
:root{
  --fbt-text: #1f2a37;          /* texto base */
  --fbt-muted: #6b7280;         /* texto suave */
  --fbt-border: #e5e7eb;        /* bordes */
  --fbt-soft: #f3f4f6;          /* fondos claros */
  --fbt-chip: #e5e7eb;          /* chips/neutros */
  --fbt-ok: #10b981;            /* check/éxito */
  --fbt-ok-soft: #d1fae5;       /* fondo sutil de selección */
  --fbt-primary: #2563eb;       /* botón principal */
  --fbt-primary-hover: #1d4ed8; /* hover */
}
*{
    font-family: 'Poppins';
}
/* =============================================================================
   1) Contenedor general
   ========================================================================== */
.fbt{
  border-radius: 20px;
  padding: 40px 20px;
  background: #fff;
  box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.05);
  color: var(--fbt-text);
}
.fbt * { box-sizing: border-box; }
.fbt.is-collapsed{
    padding: 20px;
}
/* Estado plegado */
.fbt.is-collapsed .fbt-body{ display: none; }

/* =============================================================================
   2) Encabezado (título + toggle)
   ========================================================================== */
.fbt-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.fbt-title{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:700;
  strong{
    color: #0B1A51;
    font-size: 15px;
    font-style: normal;
    font-weight: 900;
    line-height: 20px;
  }
}

.fbt-toggle{
  border:none;
  width: 32px; height: 32px;
  border-radius: 999px;
  cursor: pointer;
  line-height: 1;
  &:hover{
    background: none;  
  }
  &:focus{
      background: none;
  }
}
.fbt-toggle:focus-visible{
  outline: 2px solid var(--fbt-primary);
  outline-offset: 2px;
}
/* Indicador rotación simple si usas ▾/▸ como contenido */
.fbt.is-collapsed .fbt-toggle{ transform: rotate(180deg); }

/* =============================================================================
   3) Grid de productos + separadores
   ========================================================================== */
.fbt-list{
  display:flex;
  justify-content: space-between;
  margin-top: 16px;
  position: relative;
}
@media (max-width: 1024px){
  .fbt-list{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px){
  .fbt-list{ grid-template-columns: 1fr; }
}

/* Separador SVG entre cards (se imprime en el HTML) */
.fbt-sep{
  align-self: center;
  justify-self: center;
  opacity: .9;
}

/* =============================================================================
   4) Card de producto
   ========================================================================== */
.fbt-card{
  display: flex;
  padding: 15px 10px;
  flex-direction: column;
  gap: 10px;
  border-radius: 20px;
  background: #FFF;
  width: 212px;
   border-radius: 20px;
    box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.05);
    .fbt-thumb{
        opacity: 1;
    }
    .fbt-price{
        color: #00C876;
        font-weight: 900;
    }
    .fbt-thumb img{
        transform: scale(1.3);
    }
    .fbt-price-was{
        font-weight: 900;
        color: #0B1A51;
    }
    .fbt-info{
        align-items: center;
    }
}

.fbt-card:focus-visible{
  outline: none;
  outline-offset: 2px;
}

/* Estado deshabilitado (no comprable) */
.fbt-card.is-disabled{
  opacity: .55;
  pointer-events: none;
}

/* Estado seleccionado */
/* 
Estilos para cuando este activo o seleccionado comentado - descomentar para que este opaco y que al presionar tenga color
.fbt-card.is-selected{
    border-radius: 20px;
    box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.05);
    .fbt-thumb{
        opacity: 1;
    }
    .fbt-price{
        color: #00C876;
        font-weight: 900;
    }
    .fbt-thumb img{
        transform: scale(1.3);
    }
    .fbt-price-was{
        font-weight: 900;
        color: #0B1A51;
    }
}*/


/* Miniatura + check */
.fbt-thumb{
  position: relative;
  border-radius: 10px;
  background: #FBFBFB;
  display: flex;
  height: 151px;
  padding: 10px;
  place-items: center;
  overflow: hidden;
  opacity: 0.5;
}
.fbt-thumb img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transition: all .5s;
}
.fbt-check{
  position: absolute;
  top: 6px;
  right: 7px;
  width: 21px; height: 21px;
  border-radius: 999px;
  background: #00C876;
  color: var(--fbt-ok);
  display: grid;
  place-items: center;
  font-size: 13px;
  border: 1px solid var(--fbt-border);
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
/* Check activo con selección */
.fbt-card.is-selected .fbt-check{
  background: #00C876;
  color: #fff;
  border-color: var(--fbt-ok);
}

/* Nombre + precio */
.fbt-info{
  display:flex;
  flex-direction: column;
  gap: 4px;
  color: #6678A1;
}
.fbt-name{
  font-size: 13px;
  font-weight: 600;
  display: flex;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4rem;
  min-height: calc(1.4rem * 2);
  margin: 0;
  align-items: center;
}
.fbt-price{
  font-size: 18px;
  font-weight: 500;
}
.fbt-price { 
    display:flex;
    gap:8px; 
    align-items:baseline;
    }
.fbt-price-was { 
    font-size: 13px; 
    text-decoration: line-through;
    align-self: flex-start;
    }


/* =============================================================================
   5) Footer (total + botón agregar)
   ========================================================================== */
.fbt-footer{
  display:flex;
  flex-wrap: wrap;
  align-items:center;
  justify-content: center;
  gap: 24px;
  margin-top: 20px;
  padding-top: 12px;
}
.fbt-total{
  color: #0B1A51;
  font-size: 25px;
  font-weight: 900;
  display:flex;
  gap: 8px;
  line-height: 30px;
  align-items: baseline;
}
.fbt-total-amount{ font-size: 20px; font-weight: 900; }

/* Botón principal */
.fbt-add-all{
    border-radius: 30px;
    background: linear-gradient(180deg, #00C876 0%, #6BE3B2 100%);
    display: flex;
    padding: 10px 15px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    color: var(--1, #0B1A51);
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 900;
    line-height: 23px;
}
.fbt-add-all:hover{ 
    background: linear-gradient(180deg, #6BE3B2 0%, #00C876 100%);
    box-shadow: 0 4px 15px 0 rgba(0, 200, 118, 0.50);
}
.fbt-add-all:focus-visible{
  outline: 2px solid var(--fbt-primary-hover);
  outline-offset: 2px;
}
/* micro feedback después de agregar (JS añade .is-done unos segundos) */
.fbt-add-all.is-done{
  box-shadow: 0 0 0 4px rgba(16,185,129,.25);
}

/* =============================================================================
   6) Miscelánea / accesibilidad
   ========================================================================== */
/* Si quieres compactar la tarjeta en móviles */
@media (max-width:560px){
  .fbt-card{ padding: 10px; }
  .fbt-thumb{ min-height: 100px; }
}

@media(max-width: 768px){
    .fbt-body{
        .splide__list{
            li{
                display: flex;
                gap: 5px;
            }
        }
    }
}


.fbt-card.is-selected{
    .fbt-thumb{
        .fbt-check{
            svg{
                display: block;
            }
        }
    }
}
.fbt-card{
    .fbt-thumb{
        .fbt-check{
            svg{
                display: none;
            }
        }
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2d89336 */.cardx-cta{
    a{
        background: none !important;
        padding: 0 !important;
    }
}/* End custom CSS */