.elementor-414 .elementor-element.elementor-element-9280b08{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--justify-content:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-414 .elementor-element.elementor-element-f880005{--display:flex;}.elementor-414 .elementor-element.elementor-element-f880005.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-414 .elementor-element.elementor-element-df976a2{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -15px) 0px;padding:0px 0px 0px 0px;}.elementor-414 .elementor-element.elementor-element-df976a2 .woocommerce-breadcrumb{color:var( --e-global-color-vamtam_accent_1 );font-family:"Inter Tight", Sans-serif;}.elementor-414 .elementor-element.elementor-element-df976a2 .woocommerce-breadcrumb > a{color:var( --e-global-color-vamtam_accent_1 );}.elementor-414 .elementor-element.elementor-element-d461ec5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 6px) 0px;padding:0px 0px 0px 0px;}.elementor-414 .elementor-element.elementor-element-d461ec5 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:32px;font-weight:700;line-height:35px;color:var( --e-global-color-vamtam_accent_3 );}.elementor-414 .elementor-element.elementor-element-ddc0f19{--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:0px;--margin-bottom:8px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-414 .elementor-element.elementor-element-a2b0ecd{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;padding:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;text-align:start;}.elementor-414 .elementor-element.elementor-element-a2b0ecd.elementor-element{--align-self:flex-start;}.woocommerce .elementor-414 .elementor-element.elementor-element-a2b0ecd .price{color:#CA0000;font-size:15px;font-weight:600;}.woocommerce .elementor-414 .elementor-element.elementor-element-a2b0ecd .price ins{color:var( --e-global-color-vamtam_accent_1 );font-family:"Inter", Sans-serif;font-size:28px;font-weight:700;text-decoration:none;}body:not(.rtl) .elementor-414 .elementor-element.elementor-element-a2b0ecd:not(.elementor-product-price-block-yes) del{margin-right:0px;}body.rtl .elementor-414 .elementor-element.elementor-element-a2b0ecd:not(.elementor-product-price-block-yes) del{margin-left:0px;}.elementor-414 .elementor-element.elementor-element-a2b0ecd.elementor-product-price-block-yes del{margin-bottom:0px;}.elementor-414 .elementor-element.elementor-element-aae9d9e{--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;}.elementor-414 .elementor-element.elementor-element-16564af{--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:flex-start;--gap:15px 15px;--row-gap:15px;--column-gap:15px;--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-414 .elementor-element.elementor-element-e2341cf.elementor-element{--align-self:center;}.elementor-414 .elementor-element.elementor-element-e2341cf .elementor-icon-wrapper{text-align:center;}.elementor-414 .elementor-element.elementor-element-e2341cf.elementor-view-stacked .elementor-icon{background-color:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-e2341cf.elementor-view-framed .elementor-icon, .elementor-414 .elementor-element.elementor-element-e2341cf.elementor-view-default .elementor-icon{color:#FA5F005E;border-color:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-e2341cf.elementor-view-framed .elementor-icon, .elementor-414 .elementor-element.elementor-element-e2341cf.elementor-view-default .elementor-icon svg{fill:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-e2341cf .elementor-icon{font-size:31px;}.elementor-414 .elementor-element.elementor-element-e2341cf .elementor-icon svg{height:31px;}.elementor-414 .elementor-element.elementor-element-23aabb6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 00px) 0px;padding:0px 0px 0px 0px;}.elementor-414 .elementor-element.elementor-element-23aabb6.elementor-element{--align-self:center;}.elementor-414 .elementor-element.elementor-element-23aabb6 .elementor-icon-wrapper{text-align:center;}.elementor-414 .elementor-element.elementor-element-23aabb6.elementor-view-stacked .elementor-icon{background-color:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-23aabb6.elementor-view-framed .elementor-icon, .elementor-414 .elementor-element.elementor-element-23aabb6.elementor-view-default .elementor-icon{color:#FA5F005E;border-color:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-23aabb6.elementor-view-framed .elementor-icon, .elementor-414 .elementor-element.elementor-element-23aabb6.elementor-view-default .elementor-icon svg{fill:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-23aabb6 .elementor-icon{font-size:31px;}.elementor-414 .elementor-element.elementor-element-23aabb6 .elementor-icon svg{height:31px;}.elementor-414 .elementor-element.elementor-element-40edb5a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-414 .elementor-element.elementor-element-40edb5a.elementor-element{--align-self:center;}.elementor-414 .elementor-element.elementor-element-40edb5a .elementor-icon-wrapper{text-align:center;}.elementor-414 .elementor-element.elementor-element-40edb5a.elementor-view-stacked .elementor-icon{background-color:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-40edb5a.elementor-view-framed .elementor-icon, .elementor-414 .elementor-element.elementor-element-40edb5a.elementor-view-default .elementor-icon{color:#FA5F005E;border-color:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-40edb5a.elementor-view-framed .elementor-icon, .elementor-414 .elementor-element.elementor-element-40edb5a.elementor-view-default .elementor-icon svg{fill:#FA5F005E;}.elementor-414 .elementor-element.elementor-element-40edb5a .elementor-icon{font-size:31px;}.elementor-414 .elementor-element.elementor-element-40edb5a .elementor-icon svg{height:31px;}.elementor-414 .elementor-element.elementor-element-6d8e572{--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:flex-start;--gap:7px 7px;--row-gap:7px;--column-gap:7px;--margin-top:0px;--margin-bottom:6px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-414 .elementor-element.elementor-element-6d8e572.e-con{--align-self:flex-start;}.elementor-414 .elementor-element.elementor-element-96c099d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 24px) 0px;padding:0px 0px 0px 0px;}.woocommerce .elementor-414 .elementor-element.elementor-element-96c099d .woocommerce-product-details__short-description{color:var( --e-global-color-vamtam_accent_3 );font-size:14px;}.elementor-414 .elementor-element.elementor-element-3f4d562 .cart button, .elementor-414 .elementor-element.elementor-element-3f4d562 .cart .button{font-family:"Inter", Sans-serif;font-size:18px;border-radius:11000px 11000px 11000px 11000px;padding:16px 32px 16px 32px;color:var( --e-global-color-vamtam_accent_5 );background-color:var( --e-global-color-vamtam_accent_1 );border-color:var( --e-global-color-vamtam_accent_1 );transition:all 0.2s;}.elementor-414 .elementor-element.elementor-element-3f4d562 .cart button:hover, .elementor-414 .elementor-element.elementor-element-3f4d562 .cart .button:hover{background-color:#C94C00;}.elementor-414 .elementor-element.elementor-element-3f4d562 .added_to_cart{color:var( --e-global-color-vamtam_accent_5 );}.elementor-414 .elementor-element.elementor-element-3f4d562 .quantity .qty{font-family:"Inter", Sans-serif;font-weight:400;border-radius:8px 8px 8px 8px;color:var( --e-global-color-vamtam_accent_2 );background-color:var( --e-global-color-vamtam_accent_3 );transition:all 0.2s;}.woocommerce .elementor-414 .elementor-element.elementor-element-3f4d562 form.cart .variations{margin-bottom:35px;}.woocommerce .elementor-414 .elementor-element.elementor-element-3f4d562 form.cart table.variations label{color:var( --e-global-color-vamtam_accent_5 );}.woocommerce .elementor-414 .elementor-element.elementor-element-3f4d562 form.cart table.variations td.value select{color:var( --e-global-color-vamtam_accent_6 );}.woocommerce .elementor-414 .elementor-element.elementor-element-3f4d562 form.cart table.variations td.value select, .woocommerce .elementor-414 .elementor-element.elementor-element-3f4d562 form.cart table.variations td.value:before{background-color:var( --e-global-color-vamtam_accent_5 );}.woocommerce .elementor-414 .elementor-element.elementor-element-3f4d562 form.cart table.variations td.value select, .woocommerce div.product.elementor.elementor-414 .elementor-element.elementor-element-3f4d562 form.cart table.variations td.value:before{font-family:"Inter", Sans-serif;}.elementor-414 .elementor-element.elementor-element-016349a{--display:flex;--justify-content:flex-start;}.elementor-414 .elementor-element.elementor-element-0c90a74{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-414 .elementor-element.elementor-element-0c90a74.elementor-element{--align-self:flex-start;}.elementor-414 .elementor-element.elementor-element-e49585a{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:0px;--padding-right:0px;}.elementor-414 .elementor-element.elementor-element-9754117{width:var( --container-widget-width, 91% );max-width:91%;--container-widget-width:91%;--container-widget-flex-grow:0;color:var( --e-global-color-vamtam_accent_3 );}body.elementor-page-414:not(.elementor-motion-effects-element-type-background), body.elementor-page-414 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-vamtam_accent_6 );}@media(max-width:1024px){.elementor-414 .elementor-element.elementor-element-d461ec5 .elementor-heading-title{font-size:26px;}}@media(min-width:768px){.elementor-414 .elementor-element.elementor-element-f880005{--width:43.916%;}.elementor-414 .elementor-element.elementor-element-16564af{--width:50%;}.elementor-414 .elementor-element.elementor-element-016349a{--width:45%;}}/* Start custom CSS for woocommerce-product-price, class: .elementor-element-a2b0ecd */.woocommerce div.product p.price {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}

/* Precio con descuento: primero y grande */
.woocommerce div.product p.price ins {
  order: 1;
  text-decoration: none;
  font-size: 2.2rem;
  font-weight: 700;
  color: #fff;
}

/* Precio anterior: después, gris y pequeño */
.woocommerce div.product p.price del {
  order: 2;
  opacity: 1;
  color: #8a8a8a;
  font-weight: 400;
}

/* Badge de ahorro */
.woocommerce div.product p.price .badge-ahorro {
  order: 3;
  background: #FA5F00;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 4px;
  letter-spacing: 0.3px;
}

.woocommerce div.product p.price {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    align-content: center;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9c3faa5 *//* ============================================================
   MARQUEE DE BENEFICIOS
   ============================================================ */

.pg-marquee {
    display: flex;
    margin: 14px 0;
    padding: 10px 0;
    border-top: 1px solid rgba(255,255,255,.09);
    border-bottom: 1px solid rgba(255,255,255,.09);
    overflow: hidden;
    position: relative;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.pg-marquee-track {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-shrink: 0;
    padding-right: 14px;
    white-space: nowrap;
    animation: pgDesliza 26s linear infinite;
}

.pg-marquee:hover .pg-marquee-track {
    animation-play-state: paused;
}

@keyframes pgDesliza {
    from { transform: translateX(0); }
    to   { transform: translateX(-100%); }
}

.pg-mq-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 500;
    color: rgba(255,255,255,.72);
    line-height: 1;
    white-space: nowrap;
}

.pg-mq-item b {
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
}

.pg-mq-item em {
    font-style: normal;
    font-weight: 700;
    color: #fff;
}

.pg-mq-sep {
    color: rgba(249,115,22,.55);
    font-size: 11px;
    line-height: 1;
}

@media (prefers-reduced-motion: reduce) {
    .pg-marquee-track { animation: none; }
    .pg-marquee { overflow-x: auto; }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-3f4d562 *//* ============================================================
   OCULTAR VARIACIONES CON UNA SOLA OPCIÓN
   ============================================================ */

body form.variations_form table.variations tr:has(ul.variable-items-wrapper li:only-child),
body .elementor-widget-woocommerce-product-add-to-cart table.variations tr:has(ul.variable-items-wrapper li:only-child) {
    display: none !important;
}

/* Si TODAS las variaciones tienen una sola opción, oculta la tabla entera */
body form.variations_form table.variations:not(:has(ul.variable-items-wrapper li:not(:only-child))) {
    display: none !important;
}

/* Oculta el enlace "Limpiar" si no queda nada que elegir */
body form.variations_form:not(:has(ul.variable-items-wrapper li:not(:only-child))) .reset_variations {
    display: none !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-images, class: .elementor-element-0c90a74 *//* ============================================
   GALERÍA DE PRODUCTO — PETSCOTT
   ============================================ */

/* --- Imagen principal --- */
body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: auto !important;
    max-height: 520px;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    border-radius: 14px;
    background: #fff;
    cursor: zoom-in;
}

body .elementor-widget-woocommerce-product-images .flex-viewport {
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    height: auto !important;
}

/* --- Badge Sale con latido --- */
body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery {
    position: relative;
}

body .woocommerce span.onsale,
body .elementor-widget-woocommerce-product-images .onsale {
    position: absolute !important;
    display: inline-block !important;
    background: linear-gradient(135deg, #f97316, #ea580c) !important;
    color: #fff !important;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: .8px;
    text-transform: uppercase;
    line-height: 1 !important;
    min-height: 0 !important;
    min-width: 0 !important;
    width: auto !important;
    height: auto !important;
    padding: 10px 18px !important;
    border-radius: 999px !important;
    top: 14px !important;
    left: 14px !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    z-index: 9;
    pointer-events: none;
    animation: pgLatido 1.8s ease-in-out infinite;
}

@keyframes pgLatido {
    0%, 100% { transform: scale(1);    box-shadow: 0 0 0 0 rgba(249,115,22,.55); }
    50%      { transform: scale(1.07); box-shadow: 0 0 0 12px rgba(249,115,22,0); }
}

@media (prefers-reduced-motion: reduce) {
    body .woocommerce span.onsale,
    body .elementor-widget-woocommerce-product-images .onsale { animation: none; }
}

/* --- Contenedor del carrusel --- */
.pg-thumbs-carousel {
    position: relative;
    width: 100%;
    margin-top: 14px;
    padding: 0 34px;
}

/* --- Tira de miniaturas --- */
body .elementor-widget-woocommerce-product-images .flex-control-thumbs {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    position: static !important;
    transform: none !important;
}
body .elementor-widget-woocommerce-product-images .flex-control-thumbs::-webkit-scrollbar {
    display: none;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs li {
    flex: 0 0 82px !important;
    width: 82px !important;
    min-width: 82px !important;
    max-width: 82px !important;
    height: 82px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: block !important;
    list-style: none !important;
    scroll-snap-align: start;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img {
    display: block !important;
    width: 82px !important;
    height: 82px !important;
    max-width: none !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    border: 1px solid #d5d9d9 !important;
    opacity: 1 !important;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img:hover {
    border-color: #f97316 !important;
    transform: none !important;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img.flex-active {
    border-color: #f97316 !important;
    border-width: 2px !important;
    box-shadow: 0 0 0 1px rgba(249,115,22,.35);
}

/* --- Lupa --- */
body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery__trigger {
    background: #fff;
    border-radius: 50%;
    padding: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,.18);
    z-index: 10;
}

/* --- Flechas --- */
.pg-nav {
    position: absolute !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    z-index: 5;
    width: 30px !important;
    height: 30px !important;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 50%;
    background: rgba(20,20,20,.85);
    color: #fff;
    font-size: 17px;
    line-height: 1;
    cursor: pointer;
    opacity: 0;
    transition: opacity .2s ease, background .2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}
.pg-overflow .pg-nav { opacity: 1; }
.pg-nav.pg-oculto { opacity: 0; pointer-events: none; }
.pg-nav:hover { background: #f97316; border-color: #f97316; }
.pg-prev { left: 0 !important; right: auto !important; }
.pg-next { right: 0 !important; left: auto !important; }

/* ============================================
   ESCRITORIO: miniaturas verticales al lado
   ============================================ */
@media (min-width: 1025px) {

    body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery,
    body .elementor-widget-woocommerce-product-images div.woocommerce-product-gallery {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        gap: 14px !important;
        position: relative !important;
    }

    body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery > * {
        float: none !important;
    }

    body .elementor-widget-woocommerce-product-images .flex-viewport {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        order: 2;
    }

    .pg-thumbs-carousel {
        order: 1;
        flex: 0 0 96px;
        width: 96px;
        min-width: 96px;
        margin-top: 0;
        padding: 34px 0;
    }

    body .elementor-widget-woocommerce-product-images .flex-control-thumbs {
        flex-direction: column !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        scroll-snap-type: y mandatory;
        max-height: 460px;
        height: auto !important;
    }

    body .elementor-widget-woocommerce-product-images .flex-control-thumbs li,
    body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img {
        flex: 0 0 88px !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 88px !important;
    }

    body .woocommerce span.onsale,
    body .elementor-widget-woocommerce-product-images .onsale {
        left: 124px !important;
    }

    .pg-nav { left: 50% !important; right: auto !important; }
    .pg-prev { top: 0 !important;    transform: translateX(-50%) rotate(90deg) !important; }
    .pg-next { top: auto !important; bottom: 0 !important; transform: translateX(-50%) rotate(90deg) !important; }
}

/* --- Móvil --- */
@media (max-width: 767px) {
    body .elementor-widget-woocommerce-product-images .flex-control-thumbs li,
    body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img {
        flex: 0 0 66px !important;
        width: 66px !important;
        min-width: 66px !important;
        max-width: 66px !important;
        height: 66px !important;
    }
    .pg-thumbs-carousel { padding: 0 30px; }
}

/* ============================================
   MODAL — todas las imágenes en cuadrícula
   ============================================ */
.pg-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    background: rgba(12,12,12,.96);
    display: none;
    overflow-y: auto;
    padding: 60px 20px 40px;
}
.pg-modal.pg-abierto { display: block; }
body.pg-bloqueado { overflow: hidden; }

.pg-modal-cerrar {
    position: fixed;
    top: 18px;
    right: 22px;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.12);
    color: #fff;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .2s ease;
    z-index: 2;
}
.pg-modal-cerrar:hover { background: #f97316; }

.pg-modal-grid {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
}

.pg-modal-grid img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
    background: #fff;
    cursor: zoom-in;
    transition: transform .2s ease;
}
.pg-modal-grid img:hover { transform: scale(1.02); }

.pg-modal-grid img.pg-expandida {
    grid-column: 1 / -1;
    cursor: zoom-out;
    max-height: none;
}

@media (max-width: 767px) {
    .pg-modal { padding: 56px 12px 30px; }
    .pg-modal-grid { grid-template-columns: 1fr; gap: 12px; }
}/* End custom CSS */
/* Start custom CSS *//* ============================================================
   PETSCOTT — CSS PRODUCTO
   1. Galería: imagen principal
   2. Galería: badge Sale
   3. Galería: miniaturas
   4. Galería: modal
   5. Variaciones (swatches)
   6. Stock
   7. Cantidad
   8. Botones de compra
   ============================================================ */


/* ============================================================
   1. GALERÍA — IMAGEN PRINCIPAL
   ============================================================ */

body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery {
    position: relative;
}

body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: auto !important;
    max-height: 520px;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    border-radius: 14px;
    background: #fff;
    cursor: zoom-in;
}

body .elementor-widget-woocommerce-product-images .flex-viewport {
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    height: auto !important;
}

body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery__trigger {
    background: #fff;
    border-radius: 50%;
    padding: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,.18);
    z-index: 10;
}


/* ============================================================
   2. GALERÍA — BADGE SALE
   ============================================================ */

body .woocommerce span.onsale,
body .elementor-widget-woocommerce-product-images .onsale {
    position: absolute !important;
    display: inline-block !important;
    background: linear-gradient(135deg, #f97316, #ea580c) !important;
    color: #fff !important;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: .8px;
    text-transform: uppercase;
    line-height: 1 !important;
    min-height: 0 !important;
    min-width: 0 !important;
    width: auto !important;
    height: auto !important;
    padding: 10px 18px !important;
    border-radius: 999px !important;
    top: 14px !important;
    left: 14px !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    z-index: 9;
    pointer-events: none;
    animation: pgLatido 1.8s ease-in-out infinite;
}

@keyframes pgLatido {
    0%, 100% { transform: scale(1);    box-shadow: 0 0 0 0 rgba(249,115,22,.55); }
    50%      { transform: scale(1.07); box-shadow: 0 0 0 12px rgba(249,115,22,0); }
}

@media (prefers-reduced-motion: reduce) {
    body .woocommerce span.onsale,
    body .elementor-widget-woocommerce-product-images .onsale { animation: none; }
}


/* ============================================================
   3. GALERÍA — MINIATURAS
   ============================================================ */

.pg-thumbs-carousel {
    position: relative;
    width: 100%;
    margin-top: 14px;
    padding: 0;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    overscroll-behavior: contain;
    scrollbar-width: none;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    position: static !important;
    transform: none !important;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs::-webkit-scrollbar {
    display: none;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs li {
    flex: 0 0 82px !important;
    width: 82px !important;
    min-width: 82px !important;
    max-width: 82px !important;
    height: 82px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: block !important;
    list-style: none !important;
    scroll-snap-align: start;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img {
    display: block !important;
    width: 82px !important;
    height: 82px !important;
    max-width: none !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    border: 1px solid #d5d9d9 !important;
    opacity: 1 !important;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img:hover {
    border-color: #f97316 !important;
}

body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img.flex-active {
    border-color: #f97316 !important;
    border-width: 2px !important;
    box-shadow: 0 0 0 1px rgba(249,115,22,.35);
}

/* Escritorio: miniaturas verticales al lado */
@media (min-width: 1025px) {

    body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery,
    body .elementor-widget-woocommerce-product-images div.woocommerce-product-gallery {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        gap: 14px !important;
    }

    body .elementor-widget-woocommerce-product-images .woocommerce-product-gallery > * {
        float: none !important;
    }

    body .elementor-widget-woocommerce-product-images .flex-viewport {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        order: 2;
    }

    .pg-thumbs-carousel {
        order: 1;
        flex: 0 0 96px;
        width: 96px;
        min-width: 96px;
        margin-top: 0;
        padding: 0;
    }

    body .elementor-widget-woocommerce-product-images .flex-control-thumbs {
        flex-direction: column !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        scroll-snap-type: y mandatory;
        max-height: 460px;
        height: auto !important;
    }

    body .elementor-widget-woocommerce-product-images .flex-control-thumbs li,
    body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img {
        flex: 0 0 88px !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 88px !important;
    }

    body .woocommerce span.onsale,
    body .elementor-widget-woocommerce-product-images .onsale {
        left: 124px !important;
    }
}

@media (max-width: 767px) {
    body .elementor-widget-woocommerce-product-images .flex-control-thumbs li,
    body .elementor-widget-woocommerce-product-images .flex-control-thumbs li img {
        flex: 0 0 66px !important;
        width: 66px !important;
        min-width: 66px !important;
        max-width: 66px !important;
        height: 66px !important;
    }
}


/* ============================================================
   4. GALERÍA — MODAL
   ============================================================ */

.pg-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    background: rgba(12,12,12,.96);
    display: none;
    overflow-y: auto;
    padding: 60px 20px 40px;
}
.pg-modal.pg-abierto { display: block; }
body.pg-bloqueado { overflow: hidden; }

.pg-modal-cerrar {
    position: fixed;
    top: 18px;
    right: 22px;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.12);
    color: #fff;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .2s ease;
    z-index: 2;
}
.pg-modal-cerrar:hover { background: #f97316; }

.pg-modal-grid {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
}

.pg-modal-grid img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
    background: #fff;
    cursor: zoom-in;
    transition: transform .2s ease;
}
.pg-modal-grid img:hover { transform: scale(1.02); }

.pg-modal-grid img.pg-expandida {
    grid-column: 1 / -1;
    cursor: zoom-out;
}

@media (max-width: 767px) {
    .pg-modal { padding: 56px 12px 30px; }
    .pg-modal-grid { grid-template-columns: 1fr; gap: 12px; }
}


/* ============================================================
   5. VARIACIONES (SWATCHES)
   ============================================================ */

body .elementor-widget-woocommerce-product-add-to-cart table.variations,
body form.variations_form table.variations {
    display: block !important;
    width: 100% !important;
    margin: 0 0 18px !important;
    border: 0 !important;
    border-collapse: collapse !important;
}

body .elementor-widget-woocommerce-product-add-to-cart table.variations tbody,
body form.variations_form table.variations tbody,
body .elementor-widget-woocommerce-product-add-to-cart table.variations tr,
body form.variations_form table.variations tr {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
}

body .elementor-widget-woocommerce-product-add-to-cart table.variations td.label,
body .elementor-widget-woocommerce-product-add-to-cart table.variations th.label,
body form.variations_form table.variations td.label,
body form.variations_form table.variations th.label {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    padding: 0 0 8px !important;
    margin: 0 !important;
    border: 0 !important;
    vertical-align: top !important;
    float: none !important;
}

body .elementor-widget-woocommerce-product-add-to-cart table.variations label,
body form.variations_form table.variations label {
    display: inline !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: rgba(255,255,255,.65) !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: flex-start !important;
}

body .wvs-selected-label,
body .woo-selected-variation-item-name {
    font-weight: 700 !important;
    color: #fff !important;
    margin-left: 4px !important;
}

body .elementor-widget-woocommerce-product-add-to-cart table.variations td.value,
body form.variations_form table.variations td.value {
    display: block !important;
    width: 100% !important;
    padding: 0 0 20px !important;
    margin: 0 !important;
    border: 0 !important;
    float: none !important;
}

body ul.variable-items-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Botones de texto */
body ul.variable-items-wrapper li.button-variable-item {
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #4a4a4a !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    min-width: 58px !important;
    width: auto !important;
    height: auto !important;
    overflow: hidden;
    transition: border-color .15s ease, box-shadow .15s ease;
}

body ul.variable-items-wrapper li.button-variable-item .variable-item-span {
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 11px 16px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #fff !important;
    line-height: 1.2 !important;
    background: transparent !important;
    min-width: 0 !important;
}

body ul.variable-items-wrapper li.button-variable-item:hover {
    border-color: #f97316 !important;
}

body ul.variable-items-wrapper li.button-variable-item.selected {
    border-color: #f97316 !important;
    border-width: 2px !important;
    box-shadow: 0 0 0 1px rgba(249,115,22,.4) !important;
}

/* Swatches de imagen */
body ul.variable-items-wrapper li.image-variable-item {
    margin: 0 !important;
    padding: 3px !important;
    border: 1px solid #4a4a4a !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: none !important;
    width: 62px !important;
    height: 62px !important;
    transition: border-color .15s ease, box-shadow .15s ease;
}

body ul.variable-items-wrapper li.image-variable-item img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    border-radius: 5px !important;
    display: block !important;
}

body ul.variable-items-wrapper li.image-variable-item:hover {
    border-color: #f97316 !important;
}

body ul.variable-items-wrapper li.image-variable-item.selected {
    border-color: #f97316 !important;
    border-width: 2px !important;
    padding: 2px !important;
    box-shadow: 0 0 0 1px rgba(249,115,22,.4) !important;
}

body ul.variable-items-wrapper li.disabled,
body ul.variable-items-wrapper li.out-of-stock {
    opacity: .35 !important;
    cursor: not-allowed !important;
}

body .reset_variations {
    font-size: 12px !important;
    color: rgba(255,255,255,.5) !important;
    margin-top: 6px !important;
    display: inline-block !important;
}


/* ============================================================
   6. STOCK
   ============================================================ */

body .stock.in-stock {
    display: inline-flex !important;
    align-items: center;
    gap: 7px;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #22c55e !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    background: transparent !important;
}

body .stock.in-stock::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #22c55e;
    flex-shrink: 0;
}

body .stock.out-of-stock {
    display: inline-flex !important;
    align-items: center;
    gap: 7px;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ef4444 !important;
    margin: 0 0 16px !important;
}


/* ============================================================
   7. CANTIDAD
   ============================================================ */

body .quantity {
    display: inline-flex !important;
    align-items: stretch !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #4a4a4a !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    background: transparent !important;
    flex: 0 0 auto !important;
    transition: border-color .15s ease;
}

body .quantity:focus-within {
    border-color: #f97316 !important;
}

body .quantity .pg-qty-btn {
    all: unset !important;
    box-sizing: border-box !important;
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 100% !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
    color: rgba(255,255,255,.7) !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
    flex-shrink: 0 !important;
    transition: color .15s ease, background-color .15s ease !important;
}

body .quantity .pg-qty-btn:hover {
    background-color: rgba(249,115,22,.14) !important;
    color: #f97316 !important;
    transform: none !important;
    box-shadow: none !important;
}

body .quantity .pg-qty-btn:active,
body .quantity .pg-qty-btn:focus {
    background-color: rgba(249,115,22,.22) !important;
    outline: none !important;
    box-shadow: none !important;
    transform: none !important;
}

body .quantity .pg-qty-btn:disabled {
    opacity: .28 !important;
    cursor: not-allowed !important;
    background-color: transparent !important;
    color: rgba(255,255,255,.5) !important;
}

body .quantity input.qty {
    width: 46px !important;
    min-width: 46px !important;
    height: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: center !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #fff !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}

body .quantity input.qty::-webkit-outer-spin-button,
body .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
    display: none !important;
}

@media (max-width: 480px) {
    body .quantity { height: 48px !important; }
    body .quantity .pg-qty-btn {
        width: 38px !important;
        min-width: 38px !important;
        max-width: 38px !important;
        font-size: 17px !important;
    }
    body .quantity input.qty { width: 42px !important; min-width: 42px !important; }
}


/* ============================================================
   9. MENSAJE FLOTANTE AL HACER HOVER (TOOLTIP EN BOTÓN)
   ============================================================ */

body button.single_add_to_cart_button {
    position: relative !important;
    overflow: visible !important; /* IMPORTANTE: Permite que el mensaje salga del botón */
}

/* Crear el mensaje oculto usando ::before */
body button.single_add_to_cart_button::before {
    content: "⚡ Fast & Free USA Shipping!" !important; /* Cambia este texto por el que prefieras */
    position: absolute !important;
    bottom: 125% !important; /* Lo ubica justo arriba del botón */
    left: 50% !important;
    transform: translateX(-50%) translateY(5px) !important;
    background-color: #1e1e1e !important;
    color: #22c55e !important; /* Verde para destacar la oferta/envío */
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    border: 1px solid #333 !important;
    white-space: nowrap !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.2s ease, transform 0.2s ease !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.5) !important;
    z-index: 99 !important;
}

/* Mostrar el mensaje al hacer HOVER */
body button.single_add_to_cart_button:hover::before {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateX(-50%) translateY(0) !important;
}/* End custom CSS */