.elementor-2040 .elementor-element.elementor-element-fba4975{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--gap:0px 0px;--background-transition:0.3s;--padding-block-start:120px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-fba4975:not(.elementor-motion-effects-element-type-background), .elementor-2040 .elementor-element.elementor-element-fba4975 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-2040 .elementor-element.elementor-element-fba4975, .elementor-2040 .elementor-element.elementor-element-fba4975::before{--border-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-e82e5bb{--display:flex;--gap:0px 0px;--background-transition:0.3s;--margin-block-start:0px;--margin-block-end:0px;--margin-inline-start:0px;--margin-inline-end:0px;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-089b622 .elementor-heading-title{color:#FFFFFF;font-family:"Sahitya", Sans-serif;font-size:41px;font-weight:600;text-transform:uppercase;line-height:40px;letter-spacing:1.6px;}.elementor-2040 .elementor-element.elementor-element-4a88b68{--e-rating-icon-font-size:25px;--e-rating-gap:6px;--e-rating-icon-marked-color:#CFB5E2;--e-rating-icon-color:#000000;}.elementor-2040 .elementor-element.elementor-element-4a88b68 > .elementor-widget-container{margin:0px 0px 020px 0px;}.elementor-2040 .elementor-element.elementor-element-decbf32{text-align:left;}.woocommerce .elementor-2040 .elementor-element.elementor-element-decbf32 .woocommerce-product-details__short-description{color:#E4E3E3;font-family:"Sahitya", Sans-serif;font-size:45px;font-weight:700;text-transform:uppercase;line-height:44px;letter-spacing:1.1px;word-spacing:8px;}.elementor-2040 .elementor-element.elementor-element-decbf32 > .elementor-widget-container{padding:0% 1% 0% 0%;}.elementor-2040 .elementor-element.elementor-element-a045f89{--display:flex;--gap:0px 0px;--background-transition:0.3s;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-1c11af2{--display:flex;--background-transition:0.3s;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-3cc58f8 .elementor-heading-title{color:#FFFFFF;font-family:"Sahitya", Sans-serif;font-size:30px;font-weight:600;text-transform:uppercase;letter-spacing:1.6px;}.elementor-2040 .elementor-element.elementor-element-914eaa4{--e-rating-icon-font-size:17px;--e-rating-gap:6px;--e-rating-icon-marked-color:#CFB5E2;--e-rating-icon-color:#000000;}.elementor-2040 .elementor-element.elementor-element-914eaa4 > .elementor-widget-container{margin:0px 0px 020px 0px;}.elementor-2040 .elementor-element.elementor-element-4851bfa{--display:flex;--background-transition:0.3s;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-1573684{text-align:center;}.elementor-2040 .elementor-element.elementor-element-1573684 .elementor-heading-title{color:#CFB5E2;font-family:"Sahitya", Sans-serif;font-size:16px;font-weight:400;text-decoration:underline;line-height:1px;}.elementor-2040 .elementor-element.elementor-element-1573684 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2040 .elementor-element.elementor-element-1573684.elementor-element{--align-self:center;--order:-99999 /* order start hack */;--flex-grow:0;--flex-shrink:1;}.elementor-2040 .elementor-element.elementor-element-d9d6662 .cart button, .elementor-2040 .elementor-element.elementor-element-d9d6662 .cart .button{font-family:"Sahitya", Sans-serif;font-weight:600;text-transform:uppercase;color:#FFFFFF;background-color:#BD99E0;transition:all 0.2s;}.elementor-2040 .elementor-element.elementor-element-d9d6662 .added_to_cart{font-family:"Sahitya", Sans-serif;font-weight:700;}.elementor-2040 .elementor-element.elementor-element-d9d6662{--view-cart-spacing:0px;}.elementor-2040 .elementor-element.elementor-element-d9d6662 .quantity .qty{transition:all 0.2s;}.woocommerce .elementor-2040 .elementor-element.elementor-element-d9d6662 form.cart table.variations label{color:#FFFFFF;font-family:"Sahitya", Sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;letter-spacing:1.2px;}.elementor-2040 .elementor-element.elementor-element-eb9c141{color:#B1B1B1;font-family:"Sahitya", Sans-serif;font-size:14px;font-weight:400;line-height:14px;}.elementor-2040 .elementor-element.elementor-element-37d445c{--divider-border-style:solid;--divider-color:#3A3A3A;--divider-border-width:1px;}.elementor-2040 .elementor-element.elementor-element-37d445c .elementor-divider-separator{width:100%;margin:0 auto;margin-center:0;}.elementor-2040 .elementor-element.elementor-element-37d445c .elementor-divider{text-align:center;padding-block-start:16px;padding-block-end:16px;}.elementor-2040 .elementor-element.elementor-element-37d445c > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-2040 .elementor-element.elementor-element-20baa2d .elementor-icon-list-icon i{color:#CFB5E2;transition:color 0.3s;}.elementor-2040 .elementor-element.elementor-element-20baa2d .elementor-icon-list-icon svg{fill:#CFB5E2;transition:fill 0.3s;}.elementor-2040 .elementor-element.elementor-element-20baa2d{--e-icon-list-icon-size:12px;--icon-vertical-offset:0px;}.elementor-2040 .elementor-element.elementor-element-20baa2d .elementor-icon-list-icon{padding-right:0px;}.elementor-2040 .elementor-element.elementor-element-20baa2d .elementor-icon-list-item > .elementor-icon-list-text, .elementor-2040 .elementor-element.elementor-element-20baa2d .elementor-icon-list-item > a{font-family:"Sahitya", Sans-serif;font-size:16px;font-weight:400;text-transform:none;}.elementor-2040 .elementor-element.elementor-element-20baa2d .elementor-icon-list-text{text-shadow:0px 0px 10px rgba(0,0,0,0.3);color:#BBBBBB;transition:color 0.3s;}.elementor-2040 .elementor-element.elementor-element-4a63253{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--background-transition:0.3s;--margin-block-start:0px;--margin-block-end:0px;--margin-inline-start:0px;--margin-inline-end:0px;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-4a63253:not(.elementor-motion-effects-element-type-background), .elementor-2040 .elementor-element.elementor-element-4a63253 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-2040 .elementor-element.elementor-element-4a63253, .elementor-2040 .elementor-element.elementor-element-4a63253::before{--border-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-b4500ca{--divider-border-style:solid;--divider-color:#3A3A3A;--divider-border-width:1px;}.elementor-2040 .elementor-element.elementor-element-b4500ca .elementor-divider-separator{width:95%;margin:0 auto;margin-center:0;}.elementor-2040 .elementor-element.elementor-element-b4500ca .elementor-divider{text-align:center;padding-block-start:28px;padding-block-end:28px;}.elementor-2040 .elementor-element.elementor-element-b4500ca > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-2040 .elementor-element.elementor-element-efaf3d9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--gap:0px 0px;--background-transition:0.3s;--margin-block-start:0px;--margin-block-end:0px;--margin-inline-start:0px;--margin-inline-end:0px;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-efaf3d9:not(.elementor-motion-effects-element-type-background), .elementor-2040 .elementor-element.elementor-element-efaf3d9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-2040 .elementor-element.elementor-element-efaf3d9, .elementor-2040 .elementor-element.elementor-element-efaf3d9::before{--border-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-c971064{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-acc3974 .elementor-heading-title{color:#FFFFFF;font-family:"Sahitya", Sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;line-height:18px;}.elementor-2040 .elementor-element.elementor-element-79a02bd{color:#B1B1B1;font-family:"Sahitya", Sans-serif;font-size:16px;font-weight:400;line-height:16px;}.elementor-2040 .elementor-element.elementor-element-c1759aa{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--background-transition:0.3s;--margin-block-start:0px;--margin-block-end:0px;--margin-inline-start:0px;--margin-inline-end:0px;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-c1759aa:not(.elementor-motion-effects-element-type-background), .elementor-2040 .elementor-element.elementor-element-c1759aa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-2040 .elementor-element.elementor-element-c1759aa, .elementor-2040 .elementor-element.elementor-element-c1759aa::before{--border-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-c8a92fb{--divider-border-style:solid;--divider-color:#9C9C9C;--divider-border-width:1px;}.elementor-2040 .elementor-element.elementor-element-c8a92fb .elementor-divider-separator{width:95%;margin:0 auto;margin-center:0;}.elementor-2040 .elementor-element.elementor-element-c8a92fb .elementor-divider{text-align:center;padding-block-start:28px;padding-block-end:28px;}.elementor-2040 .elementor-element.elementor-element-c8a92fb > .elementor-widget-container{padding:050px 0px 0px 0px;}.elementor-2040 .elementor-element.elementor-element-406ba84{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--gap:0px 0px;--background-transition:0.3s;--margin-block-start:0px;--margin-block-end:0px;--margin-inline-start:0px;--margin-inline-end:0px;--padding-block-start:100px;--padding-block-end:100px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-2040 .elementor-element.elementor-element-406ba84:not(.elementor-motion-effects-element-type-background), .elementor-2040 .elementor-element.elementor-element-406ba84 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-2040 .elementor-element.elementor-element-406ba84, .elementor-2040 .elementor-element.elementor-element-406ba84::before{--border-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-5814cf3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-310e9be .elementor-icon-box-wrapper{text-align:left;}.elementor-2040 .elementor-element.elementor-element-310e9be.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-310e9be.elementor-view-framed .elementor-icon, .elementor-2040 .elementor-element.elementor-element-310e9be.elementor-view-default .elementor-icon{fill:#FFFFFF;color:#FFFFFF;border-color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-310e9be{--icon-box-icon-margin:10px;}.elementor-2040 .elementor-element.elementor-element-310e9be .elementor-icon{font-size:22px;}.elementor-2040 .elementor-element.elementor-element-310e9be .elementor-icon-box-title{color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-310e9be .elementor-icon-box-title, .elementor-2040 .elementor-element.elementor-element-310e9be .elementor-icon-box-title a{font-family:"Sahitya", Sans-serif;font-size:18px;font-weight:600;letter-spacing:0.5px;}.elementor-2040 .elementor-element.elementor-element-310e9be .elementor-icon-box-description{color:#C2C2C2;font-family:"Sahitya", Sans-serif;font-weight:400;}.elementor-2040 .elementor-element.elementor-element-3939f94{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-14e821d .elementor-icon-box-wrapper{text-align:left;}.elementor-2040 .elementor-element.elementor-element-14e821d.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-14e821d.elementor-view-framed .elementor-icon, .elementor-2040 .elementor-element.elementor-element-14e821d.elementor-view-default .elementor-icon{fill:#FFFFFF;color:#FFFFFF;border-color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-14e821d{--icon-box-icon-margin:10px;}.elementor-2040 .elementor-element.elementor-element-14e821d .elementor-icon{font-size:20px;}.elementor-2040 .elementor-element.elementor-element-14e821d .elementor-icon-box-title{color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-14e821d .elementor-icon-box-title, .elementor-2040 .elementor-element.elementor-element-14e821d .elementor-icon-box-title a{font-family:"Sahitya", Sans-serif;font-size:18px;font-weight:600;letter-spacing:0.5px;}.elementor-2040 .elementor-element.elementor-element-14e821d .elementor-icon-box-description{color:#C2C2C2;font-family:"Sahitya", Sans-serif;font-weight:400;}.elementor-2040 .elementor-element.elementor-element-37eba22{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-2040 .elementor-element.elementor-element-0578460 .elementor-icon-box-wrapper{text-align:left;}.elementor-2040 .elementor-element.elementor-element-0578460.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-0578460.elementor-view-framed .elementor-icon, .elementor-2040 .elementor-element.elementor-element-0578460.elementor-view-default .elementor-icon{fill:#FFFFFF;color:#FFFFFF;border-color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-0578460{--icon-box-icon-margin:10px;}.elementor-2040 .elementor-element.elementor-element-0578460 .elementor-icon{font-size:20px;}.elementor-2040 .elementor-element.elementor-element-0578460 .elementor-icon-box-title{color:#FFFFFF;}.elementor-2040 .elementor-element.elementor-element-0578460 .elementor-icon-box-title, .elementor-2040 .elementor-element.elementor-element-0578460 .elementor-icon-box-title a{font-family:"Sahitya", Sans-serif;font-size:18px;font-weight:600;letter-spacing:0.5px;}.elementor-2040 .elementor-element.elementor-element-0578460 .elementor-icon-box-description{color:#C2C2C2;font-family:"Sahitya", Sans-serif;font-weight:400;}@media(max-width:767px){.elementor-2040 .elementor-element.elementor-element-a045f89{--padding-block-start:10px;--padding-block-end:10px;--padding-inline-start:10px;--padding-inline-end:10px;}.elementor-2040 .elementor-element.elementor-element-1573684 > .elementor-widget-container{margin:020px 0px 0px 0px;}}@media(min-width:768px){.elementor-2040 .elementor-element.elementor-element-fba4975{--content-width:90%;}.elementor-2040 .elementor-element.elementor-element-e82e5bb{--width:50%;}.elementor-2040 .elementor-element.elementor-element-a045f89{--width:50%;}.elementor-2040 .elementor-element.elementor-element-efaf3d9{--content-width:90%;}.elementor-2040 .elementor-element.elementor-element-c971064{--width:100%;}.elementor-2040 .elementor-element.elementor-element-406ba84{--content-width:90%;}.elementor-2040 .elementor-element.elementor-element-5814cf3{--width:33.3%;}.elementor-2040 .elementor-element.elementor-element-3939f94{--width:33.3%;}.elementor-2040 .elementor-element.elementor-element-37eba22{--width:33.3%;}}/* Start custom CSS for woocommerce-product-images, class: .elementor-element-802cfba *//* ==================================================
   RARE — GALERÍA DE PRODUCTO
   WOO VARIATION GALLERY
   ================================================== */


/* ==================================================
   1. HACER QUE EL WIDGET USE TODO EL ANCHO DISPONIBLE
   ================================================== */

.single-product
.elementor-widget-woocommerce-product-images,
.single-product
.elementor-widget-woocommerce-product-images > .elementor-widget-container{
    width:99% !important;
    max-width:none !important;
}


/* ==================================================
   2. CONTENEDOR PRINCIPAL DEL PLUGIN
   ================================================== */

.single-product .woo-variation-product-gallery{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    float:none !important;
    margin:0 !important;
}


/* ==================================================
   3. WRAPPERS INTERNOS
   ================================================== */

.single-product .woo-variation-gallery-wrapper,
.single-product .woo-variation-gallery-container,
.single-product .woo-variation-gallery-slider-wrapper,
.single-product .woo-variation-gallery-slider{
    width:100% !important;
    max-width:none !important;
}


/* ==================================================
   4. SLICK
   NO TOCAMOS .slick-track NI .slick-slide
   porque Slick calcula esos anchos por JavaScript.
   ================================================== */

.single-product
.woo-variation-gallery-slider .slick-list{
    width:100% !important;
    max-width:none !important;
}


/* ==================================================
   5. IMAGEN PRINCIPAL
   ================================================== */

.single-product
.woo-variation-gallery-slider
.wvg-single-gallery-image-container{
    width:100% !important;
    max-width:none !important;
}

.single-product
.woo-variation-gallery-slider
.wvg-single-gallery-image-container > img:not(.zoomImg){
    display:block !important;

    width:100% !important;
    max-width:100% !important;
    height:auto !important;

    object-fit:contain !important;
    object-position:center !important;

    cursor:default !important;
}


/* ==================================================
   6. QUITAR IMAGEN DE ZOOM
   ================================================== */

.single-product
.woo-variation-gallery-slider img.zoomImg{
    display:none !important;
}


/* ==================================================
   7. QUITAR LUPA
   ================================================== */

.single-product .woo-variation-gallery-trigger{
    display:none !important;
}


/* ==================================================
   8. EVITAR ARRASTRAR / SELECCIONAR IMÁGENES
   ================================================== */

.single-product .woo-variation-product-gallery img{
    -webkit-user-drag:none !important;

    user-select:none !important;
    -webkit-user-select:none !important;
}


/* ==================================================
   9. MINIATURAS
   ================================================== */

.single-product
.woo-variation-gallery-thumbnail-slider{
    margin-top:10px !important;
}

.single-product
.woo-variation-gallery-thumbnail-slider
.wvg-gallery-thumbnail-image{
    opacity:.55 !important;

    transition:opacity .18s ease !important;
}

.single-product
.woo-variation-gallery-thumbnail-slider
.wvg-gallery-thumbnail-image:hover,
.single-product
.woo-variation-gallery-thumbnail-slider
.wvg-gallery-thumbnail-image.current-thumbnail{
    opacity:1 !important;
}

/* Flechas */
.wvg-slider-prev-arrow,
.wvg-slider-next-arrow{
    width:auto !important;
    height:auto !important;

    background:transparent !important;
    border:none !important;
    box-shadow:none !important;

    opacity:.45;
    transition:.2s;
}

.wvg-slider-prev-arrow:hover,
.wvg-slider-next-arrow:hover{
    opacity:1;
}

background:rgba(255,255,255,.08);
backdrop-filter:blur(8px);
border:1px solid rgba(255,255,255,.08);
border-radius:50%;


.wvg-slider-prev-arrow::before,
.wvg-slider-next-arrow::before{
    display:none !important;
}

.wvg-slider-prev-arrow{
    font-size:0 !important;
}

.wvg-slider-next-arrow{
    font-size:0 !important;
}

.wvg-slider-prev-arrow::after{
    content:"⟵";
    font-size:30px;
    color:#fff;
    font-weight:300;
    opacity:.35;
    transition:.2s;
}

.wvg-slider-next-arrow::after{
    content:"⟶";
    font-size:30px;
    color:#fff;
    font-weight:300;
    opacity:.35;
    transition:.2s;
}

.wvg-slider-prev-arrow:hover::after,
.wvg-slider-next-arrow:hover::after{
    opacity:1;
}
/* ==========================================
RARE — FLECHAS DEL CARRUSEL DE MINIATURAS
========================================== */

.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-prev-arrow,
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-next-arrow {
    opacity: .45 !important;
    visibility: visible !important;
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 30px !important;
    height: 100% !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    font-size: 0 !important;
    color: transparent !important;

    z-index: 50 !important;

    transition: opacity .2s ease !important;
}


/* Flecha izquierda */
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-prev-arrow::before {
    content: "⟵" !important;

    font-family: Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    line-height: 1 !important;

    color: #fff !important;
    opacity: 1 !important;
}


/* Flecha derecha */
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-next-arrow::before {
    content: "⟶" !important;

    font-family: Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    line-height: 1 !important;

    color: #fff !important;
    opacity: 1 !important;
}


/* Posición */
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-prev-arrow {
    left: 0 !important;
    right: auto !important;
}

.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-next-arrow {
    right: 0 !important;
    left: auto !important;
}


/* Hover */
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-prev-arrow:hover,
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-next-arrow:hover {
    opacity: 1 !important;
}

/* Estado normal: ocultas y ligeramente fuera */
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-prev-arrow,
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-next-arrow {
    opacity: 0 !important;
    visibility: hidden !important;

    transition:
        opacity .22s ease,
        transform .22s ease,
        visibility .22s ease !important;
}

/* Izquierda escondida hacia afuera */
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-prev-arrow {
    transform: translateX(-10px) !important;
}

/* Derecha escondida hacia afuera */
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-next-arrow {
    transform: translateX(10px) !important;
}

/* Al entrar al slider, aparecen y vuelven a su sitio */
.elementor-2040 .elementor-element.elementor-element-802cfba .woo-variation-gallery-thumbnail-slider:hover
.wvg-thumbnail-prev-arrow,
.elementor-2040 .elementor-element.elementor-element-802cfba .woo-variation-gallery-thumbnail-slider:hover
.wvg-thumbnail-next-arrow {
    opacity: .55 !important;
    visibility: visible !important;
    transform: translateX(0) !important;
}

/* Hover directo sobre la flecha */
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-prev-arrow:hover,
.elementor-2040 .elementor-element.elementor-element-802cfba .wvg-thumbnail-next-arrow:hover {
    opacity: 1 !important;
}





/* RARE — Protección imágenes galería */

.elementor-2040 .elementor-element.elementor-element-802cfba .woo-variation-product-gallery img.wvg-post-image {
    -webkit-user-select: none !important;
    user-select: none !important;
    -webkit-user-drag: none !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-1573684 */.mini{
    text-transform: none !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-d9d6662 */.single_variation_wrap{
    color: white;
}

.single_variation_wrap h{
    color: white;
}


/* Contenedor principal */
.products-uploads-dragandrophandler{
    background:#111 !important;
    border:2px dashed #555 !important;
    border-radius:12px !important;
    padding:24px !important;
    transition:.2s ease;
    max-width: 80%;

}

.products-uploads-dragandrophandler-container{
    margin-left: 0 !important;
}

/* Al arrastrar un archivo */
.products-uploads-dragandrophandler.dragover{
    border-color:#C8A2F0 !important;
    background:#181818 !important;
}

/* Todos los textos */
.products-uploads-dragandrophandler,
.products-uploads-dragandrophandler *{
    color:#f5f5f5 !important;
}

/* Nombre del archivo */
.products-uploads-drop-filename{
    font-weight:600;
}

/* Tamaño del archivo */
.products-uploads-drop-filesize{
    color:#9a9a9a !important;
}

/* Barra de progreso */
.products-uploads-drop-progressBar{
    background:#2a2a2a !important;
    border-radius:4px;
    overflow:hidden;
}

.products-uploads-drop-progressBar > div{
    background:#C8A2F0 !important;
}


.products-uploads-drop-type{
    width:22px !important;
    height:22px !important;
    background-size:contain !important;
}
 
 
 
 
/* ÁREA COMPLETA DE SUBIDA */
.products-uploads-dragandrophandler {
    max-width: 80% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 22px 16px !important;

    background: #111 !important;
    border: 1px solid #3f3f3f !important;
    border-radius: 2px !important;

    color: #fff !important;
    text-align: center !important;

    transition:
        background-color .2s ease,
        border-color .2s ease !important;
}

/* Estado al arrastrar */
.products-uploads-dragandrophandler.dragover,
.products-uploads-dragandrophandler[style] {
    background: #181818 !important;
    border-color: #c8a2f0 !important;
}

/* “ARRASTRA” Y “O” */
.products-uploads-text-drop,
.products-uploads-text-or {
    font-family: "Sahitya", serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: .02em !important;
    color: #fff !important;
}

.products-uploads-text-drop {
    margin: 0 0 3px !important;
}

.products-uploads-text-or {
    margin: 0 0 10px !important;
}

/* CONTENEDOR EXTERIOR DEL BOTÓN */
.products-uploads-text-browser {
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* BOTÓN Y CUALQUIER ELEMENTO INTERIOR */
.products-uploads-text-browser,
.products-uploads-text-browser * {
    box-sizing: border-box !important;
}

.products-uploads-text-browser > *,
.products-uploads-text-browser button,
.products-uploads-text-browser input,
.products-uploads-text-browser label,
.products-uploads-text-browser a {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;

    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;
    padding: 7px 16px !important;

    background: #111 !important;
    color: #fff !important;

    border: 1px solid #fff !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    font-family: "Sahitya", serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;

    cursor: pointer !important;
    transition:
        background-color .18s ease,
        color .18s ease !important;
}

/* HOVER */
.products-uploads-text-browser:hover > *,
.products-uploads-text-browser button:hover,
.products-uploads-text-browser input:hover,
.products-uploads-text-browser label:hover,
.products-uploads-text-browser a:hover {
    background: white !important;
    color: #000 !important;
}


/* BOTÓN AÑADIR AL CARRITO — ESTILO RARE */
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart .single_add_to_cart_button:disabled,
.single-product form.cart .single_add_to_cart_button.wc-variation-selection-needed {
    width: auto !important;
    min-height: 0 !important;

    padding: 10px 22px !important;

    background: #c49aeb !important;
    color: #fff !important;

    border: 1px solid #c49aeb !important;
    border-radius: 4px !important;
    box-shadow: none !important;

    font-family: "Sahitya", serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;

    opacity: 1 !important;
    transition:
        background-color .18s ease,
        color .18s ease,
        border-color .18s ease !important;
}

/* HOVER: solamente cuando ya puede comprarse */
.single-product form.cart .single_add_to_cart_button:not(:disabled):not(.disabled):hover {
    background: #fff !important;
    color: #000 !important;
    border-color: #fff !important;
}

/* Antes de seleccionar las variaciones */
.single-product form.cart .single_add_to_cart_button:disabled,
.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart .single_add_to_cart_button.wc-variation-selection-needed {
    cursor: not-allowed !important;
    opacity: .55 !important;
}


/* TEXTOS GENERALES DEL FORMULARIO */
.single-product form.cart,
.single-product form.cart p,
.single-product form.cart small,
.single-product form.cart .description,
.single-product form.cart .form-row {
    font-family: "Sahitya", serif !important;
    color: #fff !important;
    font-weight: 400 !important;
}

/* TÍTULOS Y ETIQUETAS */
.single-product form.cart label,
.single-product form.cart .product-addon-title,
.single-product form.cart [class*="label"],
.single-product form.cart legend {
    font-family: "Sahitya", serif !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
}

/* TEXTOS DE AYUDA */
.single-product form.cart .description,
.single-product form.cart small,
.single-product form.cart .form-row p {
    font-family: "Sahitya", serif !important;
    color: #fff !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
}

/* Separación entre grupos */
.single-product form.cart .form-row {
    margin-bottom: 18px !important;
}


/* CONTENEDOR DE CANTIDAD */
.single-product form.cart .quantity {
    display: inline-flex !important;
    align-items: center !important;
    width: 58px !important;
    height: 42px !important;
    margin-right: 14px !important;

    background: #111 !important;
    border: 1px solid #444 !important;
    border-radius: 2px !important;
    overflow: hidden !important;
}

/* NÚMERO */
.single-product form.cart .quantity input.qty {
    width: 100% !important;
    height: 100% !important;
    padding: 0 8px !important;

    background: #111 !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    text-align: center !important;
    font-family: "Sahitya", serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;

    -moz-appearance: textfield;
}

/* Quitar flechas nativas */
.single-product form.cart .quantity input.qty::-webkit-inner-spin-button,
.single-product form.cart .quantity input.qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Hover/focus */
.single-product form.cart .quantity:hover,
.single-product form.cart .quantity:focus-within {
    border-color: #c8a2f0 !important;
}


/* SELECTOR COMPLETO: − 1 + */
.single-product form.cart .quantity {
    display: inline-flex !important;
    align-items: stretch !important;

    width: auto !important;
    height: 42px !important;
    margin-right: 14px !important;

    background: #111 !important;
    border: 1px solid #444 !important;
    border-radius: 2px !important;
    overflow: hidden !important;
}

/* BOTONES + Y − */
.single-product form.cart .quantity .rare-qty-button {
    width: 30px !important;
    height: 42px !important;
    padding: 0 !important;

    background: #111 !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    font-family: Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 300 !important;
    line-height: 1 !important;

    cursor: pointer !important;
    transition: background-color .18s ease, color .18s ease !important;
}

.single-product form.cart .quantity .rare-qty-button:hover {
    background: #fff !important;
    color: #000 !important;
}

/* NÚMERO CENTRAL */
.single-product form.cart .quantity input.qty {
    width: 40px !important;
    height: 42px !important;
    padding: 0 !important;

    background: #111 !important;
    color: #fff !important;
    border: 0 !important;
    border-left: 1px solid #333 !important;
    border-right: 1px solid #333 !important;
    border-radius: 0 !important;

    text-align: center !important;
    font-family: "Sahitya", serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}

/* Quitar margen automático de Elementor */
.single-product form.cart .rare-qty-plus{
    margin-left:0 !important;
}

/* Texto de las tallas */
.cfvsw-label-option{
    color:#000 !important;
}

/* Estado seleccionado */
.cfvsw-label-option.cfvsw-selected,
.cfvsw-label-option.cfvsw-selected *{
    color:#000 !important;
}

/* Hover */
.cfvsw-label-option:hover{
    color:#000 !important;
}

.cfvsw-label-option span{
    color:#000 !important;
}

/* Swatch normal */
.cfvsw-label-option{
    background:#111;
    border:1px solid #555 !important;
    color:#fff;
    transition:.18s;
}

/* Hover */
.cfvsw-label-option:hover{
    border-color:#C8A2F0 !important;
}

/* Seleccionado */
.cfvsw-label-option.cfvsw-selected{
    background:#C8A2F0;
    border-color:#C8A2F0 !important;
    color:#000 !important;
}

/* ==================================================
   SWATCHES DE TALLA Y COLOR
   ================================================== */

/* Base de todos los swatches */
.single-product .cfvsw-swatches-option {
    position: relative !important;
    box-sizing: border-box !important;

    border: 1px solid #555 !important;
    box-shadow: none !important;

    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        background-color .18s ease !important;
}

/* Tallas */
.single-product .cfvsw-label-option {
    background: #fff !important;
    color: #000 !important;

    font-family: "Sahitya", serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

/* Asegura que el texto interior también sea negro */
.single-product .cfvsw-label-option,
.single-product .cfvsw-label-option *,
.single-product .cfvsw-label-option .cfvsw-swatch-inner {
    color: #000 !important;
}

/* Hover únicamente en opciones no seleccionadas */
.single-product
.cfvsw-swatches-option:not(.cfvsw-selected-swatch):hover {
    border-color: #c8a2f0 !important;
    box-shadow: 0 0 0 1px #c8a2f0 !important;
}

/* Estado seleccionado: tallas y colores */
.single-product
.cfvsw-swatches-option.cfvsw-selected-swatch {
    border-color: #c8a2f0 !important;
    box-shadow: 0 0 0 3px #c8a2f0 !important;
    z-index: 2 !important;
}

/* Talla seleccionada */
.single-product
.cfvsw-label-option.cfvsw-selected-swatch {
    background: #fff !important;
    color: #000 !important;
}

/* Texto de la talla seleccionada */
.single-product
.cfvsw-label-option.cfvsw-selected-swatch,
.single-product
.cfvsw-label-option.cfvsw-selected-swatch * {
    color: #000 !important;
}

/* Opciones no disponibles */
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled {
    opacity: .35 !important;
    cursor: not-allowed !important;
}

/* Opciones no disponibles */
.single-product .cfvsw-swatches-option.cfvsw-swatches-disabled {
    position: relative !important;
    opacity: .45 !important;
    cursor: not-allowed !important;
}

/* Quitar la cruz original del plugin */
.single-product .cfvsw-swatches-option.cfvsw-swatches-disabled::before,
.single-product .cfvsw-swatches-option.cfvsw-swatches-disabled::after,
.single-product .cfvsw-swatches-option.cfvsw-swatches-disabled .cfvsw-swatch-inner::before,
.single-product .cfvsw-swatches-option.cfvsw
}



/* Quitar solamente la cruz original del contenedor */
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled::before,
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled::after,
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled
.cfvsw-swatch-inner::before {
    content: none !important;
    display: none !important;
}

/* Línea diagonal minimalista */
.single-product .cfvsw-swatches-option.cfvsw-swatches-disabled {
    background-image:
        linear-gradient(
            135deg,
            transparent 47%,
            #c8a2f0 48%,
            #c8a2f0 52%,
            transparent 53%
        ) !important;
}

/* =====================================================
   1. SWATCHES DE TALLA — OSCUROS, TEXTO BLANCO
   ===================================================== */

.single-product .cfvsw-label-option {
    background: #151515 !important;
    color: #fff !important;
    border: 1px solid #444 !important;

    font-family: "Sahitya", serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

/* Texto interior */
.single-product .cfvsw-label-option *,
.single-product .cfvsw-label-option .cfvsw-swatch-inner {
    color: #fff !important;
}

/* Hover */
.single-product
.cfvsw-label-option:not(.cfvsw-selected-swatch):hover {
    background: #1d1d1d !important;
    border-color: #c8a2f0 !important;
    box-shadow: 0 0 0 1px #c8a2f0 !important;
}

/* Talla seleccionada */
.single-product
.cfvsw-label-option.cfvsw-selected-swatch {
    background: #151515 !important;
    color: #fff !important;
    border-color: #c8a2f0 !important;
    box-shadow: 0 0 0 3px #c8a2f0 !important;
}

/* Mantener texto blanco al seleccionar */
.single-product
.cfvsw-label-option.cfvsw-selected-swatch,
.single-product
.cfvsw-label-option.cfvsw-selected-swatch * {
    color: #fff !important;
}


/* =====================================================
   2. OPCIONES NO DISPONIBLES
   ===================================================== */

.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled {
    position: relative !important;
    background-color: #101010 !important;
    border-color: #333 !important;
    opacity: .45 !important;
    cursor: not-allowed !important;

    background-image:
        linear-gradient(
            135deg,
            transparent 47%,
            #888 48%,
            #888 52%,
            transparent 53%
        ) !important;
}

/* Quitar cruz roja del plugin */
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled::before,
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled::after,
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled
.cfvsw-swatch-inner::before,
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled
.cfvsw-swatch-inner::after {
    content: none !important;
    display: none !important;
}


/* =====================================================
   3. COLORES SELECCIONADOS
   ===================================================== */

/* Mantiene el color original, solo agrega anillo lila */
.single-product
.cfvsw-swatches-option.cfvsw-selected-swatch {
    border-color: #c8a2f0 !important;
    box-shadow: 0 0 0 3px #c8a2f0 !important;
    z-index: 2 !important;
}


/* =====================================================
   4. TÍTULOS Y TEXTOS DEL FORMULARIO
   ===================================================== */

/* Títulos: Talla, Color, Nombre o apodo, Nota, Fotos... */
.single-product form.cart .form-row > label,
.single-product form.cart .product-addon-title,
.single-product form.cart legend,
.single-product form.cart table.variations th.label > label,
.single-product form.cart label[for] {
    font-family: "Sahitya", serif !important;
    color: #fff !important;

    font-size: 17px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: .01em !important;
}

.single-product span {
    font-size: 17px !important;
    text-transform: uppercase;
}

.upload-lb label{
    font-size: 17px !important;
    text-transform: uppercase;
}


/* Texto explicativo debajo de los títulos */
.single-product form.cart .description,
.single-product form.cart small,
.single-product form.cart .form-row p,
.single-product form.cart .form-row .description {
    font-family: "Sahitya", serif !important;
    color: #fff !important;

    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
}


/* =====================================================
   5. CAMPOS OSCUROS Y UNIFICADOS
   ===================================================== */

.single-product form.cart input[type="text"],
.single-product form.cart input[type="email"],
.single-product form.cart input[type="url"],
.single-product form.cart input[type="number"],
.single-product form.cart textarea,
.single-product form.cart select {
    background: #151515 !important;
    color: #fff !important;

    border: 1px solid #444 !important;
    border-radius: 2px !important;
    box-shadow: none !important;

    font-family: "Sahitya", serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;

    padding: 10px 12px !important;

    transition:
        border-color .18s ease,
        background-color .18s ease !important;
}

.titles textarea{
    margin-top: 10px !important;
}


/* ==========================================
   ÚNICO CAMBIO:
   mismo margen para todos los inputs WAPF
   de tipo texto, incluido CANCIÓN
   ========================================== */

.wapf-field-container.wapf-field-text input {
    margin-top: 10px !important;
}


/* Placeholder */
.single-product form.cart input::placeholder,
.single-product form.cart textarea::placeholder {
    color: #888 !important;
    opacity: 1 !important;
}

/* Focus */
.single-product form.cart input:focus,
.single-product form.cart textarea:focus,
.single-product form.cart select:focus {
    background: #181818 !important;
    border-color: #c8a2f0 !important;
    outline: none !important;
}


/* =====================================================
   6. QUITAR LÍNEA ENTRE VARIACIONES Y FORMULARIO
   ===================================================== */

.single-product form.variations_form,
.single-product form.cart table.variations,
.single-product .single_variation_wrap,
.single-product .woocommerce-variation,
.single-product .woocommerce-variation-add-to-cart {
    border-top: 0 !important;
    border-bottom: 0 !important;
}

/* Por si Elementor la genera con pseudo-elementos */
.single-product .single_variation_wrap::before,
.single-product .single_variation_wrap::after,
.single-product form.variations_form::before,
.single-product form.variations_form::after {
    border: 0 !important;
    background: none !important;
}


/* =====================================================
   7. PRECIO
   ===================================================== */

.single-product
.elementor-widget-woocommerce-product-price .price,
.single-product
.elementor-widget-woocommerce-product-price .price bdi,
.single-product
.elementor-widget-woocommerce-product-price
.woocommerce-Price-amount,
.single-product .summary .price,
.single-product .summary .price bdi {
    color: #fff !important;

    font-family: "Roboto Condensed", sans-serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;
}

/* Símbolo $ con el mismo estilo */
.single-product .woocommerce-Price-currencySymbol {
    color: #fff !important;
    font-family: "Roboto Condensed", sans-serif !important;
}

/* =====================================================
   PRECIO DE LA VARIACIÓN
   ===================================================== */

.single-product .single_variation{
    display:block !important;
    min-height:36px !important;
    margin:12px 0 16px !important;
}

.single-product .woocommerce-variation-price{
    display:block !important;
}

.single-product .woocommerce-variation-price .price,
.single-product .woocommerce-variation-price .price bdi,
.single-product .woocommerce-variation-price .woocommerce-Price-amount,
.single-product .woocommerce-variation-price .woocommerce-Price-currencySymbol{

    color:#fff !important;

    font-family:"Roboto Condensed",sans-serif !important;
    font-size:32px !important;
    font-weight:700 !important;
    line-height:1 !important;
    letter-spacing:-.02em !important;
}

/* ==================================================
   COLOR DEL DISEÑO — IMAGE SWATCHES RARE
   ================================================== */


/* Nombre */
.rare-design-color-option label span {
    display: block !important;
    padding: 6px 4px !important;

    color: #fff !important;
    font-family: "Sahitya", serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-align: center !important;
}


/* Hover */
.rare-design-color-option label:hover {
    border-color: #c8a2f0 !important;
    box-shadow: 0 0 0 1px #c8a2f0 !important;
}

/* Seleccionado */
.rare-design-color-option input:checked + label {
    border-color: #c8a2f0 !important;
    box-shadow: 0 0 0 3px #c8a2f0 !important;
}

/* Accesibilidad con teclado */
.rare-design-color-option input:focus-visible + label {
    outline: 2px solid #fff !important;
    outline-offset: 4px !important;
}

.rare-design-color-help {
    margin: 11px 0 0 !important;

    color: #aaa !important;
    font-family: "Sahitya", serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}

/* Evitar que un swatch seleccionado cubra el tooltip de otro */
.single-product .cfvsw-swatches-option {
    position: relative !important;
}

.single-product .cfvsw-swatches-option:hover {
    z-index: 9999 !important;
}

.single-product .cfvsw-swatches-container,
.single-product .cfvsw-product-container,
.single-product table.variations td.value {
    overflow: visible !important;
}


/*=================================================
=            COLOR DEL DISEÑO — RARE             =
=================================================*/

.rare-design-color-field{
    margin:30px 0 20px;
    overflow:visible !important;
}

.rare-design-color-title{
    margin-bottom:12px;

    color:#fff;
    font-family:"Sahitya",serif;
    font-size:17px;
    font-weight:600;
    text-transform:uppercase;
}

/* fila */
.rare-design-color-options{
    
    margin-left: 72px;

    display:flex;
    justify-content:flex;
    flex-wrap:wrap;
    gap: 12px;

    overflow:visible !important;
    position:relative;
    z-index:20;

}

/* cada opción */

.rare-design-color-option{

    position:relative;

    width:35px;
    height:35px;

    overflow:visible !important;
    z-index:1;

}

.rare-design-color-option:hover{
    z-index:99999;
}

/* ocultar radio */

.rare-design-color-option input{

    display:none;

}

/* cuadro */

.rare-design-color-option label{

    display:block;

    width:35px;
    height:35px;

    cursor:pointer;

    border:1px solid #444;

    overflow:visible !important;

    transition:.18s;

    position:relative;

}

/* imagen */

.rare-design-color-option img{

    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
    pointer-events:none;

}

/* hover */

.rare-design-color-option label:hover{

    border-color:#C8A2F0;

    box-shadow:0 0 0 2px #C8A2F0;

}

/* seleccionado */

.rare-design-color-option input:checked+label{

    border-color:#C8A2F0;

    box-shadow:0 0 0 3px #C8A2F0;

}


/*==========================
        TOOLTIP
==========================*/

.rare-design-color-option label::after{

    content:attr(data-tooltip);

    position:absolute;

    bottom:calc(100% + 8px);

    left:50%;

    transform:translateX(-50%);

    padding:4px 10px;

    background:#000;

    color:#fff;

    border:1px solid #fff;

    border-radius:4px;

    white-space:nowrap;

    font-family:"Sahitya",serif;

    font-size:14px;

    font-weight:600;

    line-height:1;

    opacity:0;
    visibility:hidden;

    pointer-events:none;

    transition:
        opacity .18s,
        visibility .18s,
        transform .5s;

    z-index:999999;
    
    text-transform: none;

}



.rare-design-color-option label:hover::after,
.rare-design-color-option label:hover::before{

    opacity:1;
    visibility:visible;

    transform:translateX(-50%) translateY(0);

}

.rare-design-color-help{

    display:none;

}

/* Eliminar borde blanco interno de los swatches de color */
.cfvsw-swatches-option .cfvsw-swatch-inner{
    border: none !important;
    box-shadow: none !important;
}

/* =========================================
   RARE — SWATCHES UNIFICADOS
   ========================================= */

/* Estado normal */
.cfvsw-swatches-option{
    background:#181818 !important;
    border:1px solid #3a3a3a !important;
    box-shadow:none !important;
    transition:.18s ease !important;
}

/* Elimina el marco blanco interno */
.cfvsw-swatches-option .cfvsw-swatch-inner{
    border:none !important;
    box-shadow:none !important;
    outline:none !important;
}

/* Hover */
.cfvsw-swatches-option:hover{
    border-color:#ffffff !important;
}

/* Seleccionado */
.cfvsw-swatches-option.cfvsw-selected-swatch{
    border:3px solid #C8A2F0 !important;
    box-shadow:none !important;
}

/* Mantener la imagen limpia */
.cfvsw-swatches-option img{
    border:none !important;
    box-shadow:none !important;
}

/* Cuadro */
.rare-design-color-option label{
    position:relative;
    display:block;
    width:40px;
    height:40px;
    box-sizing:border-box;

    border:1px solid #3a3a3a !important;
    overflow:hidden;
    background:#181818;
}

/* Imagen con margen interior */
.rare-design-color-option label img{
    position:absolute;
    inset:3px;
    width:calc(100% - 6px);
    height:calc(100% - 6px);
    object-fit:cover;
    display:block;
}

/* Hover */
.rare-design-color-option label:hover{
    border:2px solid #C8A2F0 !important;
}

/* Seleccionado */
.rare-design-color-option input:checked + label{
    border:3px solid #C8A2F0 !important;
}

/* ==================================================
   LÍNEA DE NO DISPONIBLE SOBRE SWATCHES DE COLOR
   ================================================== */

.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled
.cfvsw-swatch-inner {
    position: relative !important;
    overflow: hidden !important;
}

/* Dibujar la diagonal encima del color */
.single-product
.cfvsw-swatches-option.cfvsw-swatches-disabled
.cfvsw-swatch-inner::after {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    inset: -8px !important;

    background:
        linear-gradient(
            135deg,
            transparent calc(50% - 1px),
            #777 calc(50% - 1px),
            #777 calc(50% + 1px),
            transparent calc(50% + 1px)
        ) !important;

    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    z-index: 20 !important;
}

/* =========================================
   PRECIO DE LA VARIACIÓN SELECCIONADA
   ========================================= */

.single-product .single_variation {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    min-height: 32px !important;
    margin: 14px 0 16px !important;

    color: #fff !important;
}

/* Contenedor del precio dinámico */
.single-product .woocommerce-variation-price {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    margin: 0 !important;
}

/* Precio */
.single-product .woocommerce-variation-price .price,
.single-product .woocommerce-variation-price .price bdi,
.single-product .woocommerce-variation-price .woocommerce-Price-amount,
.single-product .woocommerce-variation-price .woocommerce-Price-currencySymbol {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;

    color: #fff !important;

    font-family: "Roboto Condensed", sans-serif !important;
    font-size: 30px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;
}

/* Evitar que enlaces o estilos heredados cambien el color */
.single-product .woocommerce-variation-price a {
    color: #fff !important;
}

/* =========================================
   RARE — CORREGIR CONTADOR DEL CARRITO
   SOLO EN SINGLE PRODUCT
   ========================================= */

.single-product .elementor-menu-cart__toggle .elementor-button-icon-qty,
.single-product .elementor-menu-cart__toggle .elementor-button-icon-qty[data-counter]{
    width:18px !important;
    height:18px !important;

    min-width:18px !important;
    min-height:18px !important;

    padding:0 !important;
    margin:0 !important;

    font-size:11px !important;
    line-height:18px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    border-radius:50% !important;

    transform:none !important;
    scale:1 !important;
}

/* Estado inicial */
.wapf-field-description{
    max-height:0;
    opacity:0;
    overflow:hidden;

    margin-top:0 !important;
    padding-top:0 !important;

    transition:
        opacity .25s ease,
        max-height .25s ease;
}

/* Mostrar al enfocar cualquier campo del contenedor */
.wapf-field-row:has(textarea:focus) .wapf-field-description{

    max-height:80px;
    opacity:.8;

    padding-top:5px !important;
}

.cfvsw-swatches-option,
.cfvsw-swatches-option::before,
.cfvsw-swatches-option::after,
.cfvsw-swatches-option * {
    text-transform: none !important;
}


/* MINERAL WASH */

.cfvsw-swatches-option[data-slug="Mineral Wash"] .cfvsw-swatch-inner {
    background-image:
        linear-gradient(rgba(0,0,0,.08), rgba(255,255,255,.05)),
        url("https://rareshirtshop.com/wp-content/uploads/2026/08/mineral-wash-texture.jpg") !important;

    background-size: cover !important;
    background-position: center !important;
}

/* ==========================================
   RARE — I ♥ MY
   Campo: girlfriend / boyfriend
   ========================================== */


/* ------------------------------------------
   TÍTULO DEL CAMPO
   ------------------------------------------ */

.wapf-field-container[for="6a7a9488dde4f"] .wapf-field-label label {
    text-decoration: none !important;
    border-bottom: none !important;
}


/* Quitar asterisco de requerido */
.wapf-field-container[for="6a7a9488dde4f"] .wapf-field-label label::after,
.wapf-field-container[for="6a7a9488dde4f"] .required,
.wapf-field-container[for="6a7a9488dde4f"] abbr.required {
    display: none !important;
    content: none !important;
}


/* ------------------------------------------
   OPCIONES
   ------------------------------------------ */

.wapf-field-container[for="6a7a9488dde4f"] .wapf-checkable {
    margin: 0 0 6px 0 !important;
}


/* Labels */
.wapf-field-container[for="6a7a9488dde4f"] .wapf-input-label {
    display: flex !important;
    align-items: center !important;

    gap: 8px !important;

    margin: 0 !important;
    padding: 0 !important;

    cursor: pointer !important;
}


/* Texto GIRLFRIEND / BOYFRIEND */
.wapf-field-container[for="6a7a9488dde4f"] .wapf-label-text {
    padding: 0 !important;

    font-family: "Sahitya", serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;

    color: #fff !important;
}


/* ------------------------------------------
   CHECKBOX RARE
   ------------------------------------------ */

.wapf-field-container[for="6a7a9488dde4f"] input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;

    width: 14px !important;
    height: 14px !important;

    min-width: 14px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1px solid #666 !important;
    border-radius: 0 !important;

    background: #111 !important;

    box-shadow: none !important;
    outline: none !important;

    cursor: pointer !important;

    transition:
        border-color .15s ease,
        background-color .15s ease !important;
}


/* Hover */
.wapf-field-container[for="6a7a9488dde4f"] input[type="checkbox"]:hover {
    border-color: #aaa !important;
}


/* Seleccionado */
.wapf-field-container[for="6a7a9488dde4f"] input[type="checkbox"]:checked {
    background: #b99ac9 !important;
    border-color: #b99ac9 !important;

    box-shadow:
        inset 0 0 0 3px #111 !important;
}

/* ==========================================
   PRINT FRONTAL POSTERIOR
   ========================================== */


/* ------------------------------------------
   TÍTULO DEL CAMPO
   ------------------------------------------ */

.wapf-field-container[for="6a7d4704af272"] .wapf-field-label label {
    text-decoration: none !important;
    border-bottom: none !important;
}


/* Quitar asterisco de requerido */
.wapf-field-container[for="6a7d4704af272"] .wapf-field-label label::after,
.wapf-field-container[for="6a7d4704af272"] .required,
.wapf-field-container[for="6a7b9e3d64cda"] abbr.required {
    display: none !important;
    content: none !important;
}


/* ------------------------------------------
   OPCIONES
   ------------------------------------------ */

.wapf-field-container[for="6a7d4704af272"] .wapf-checkable {
    margin: 0 0 6px 0 !important;
}


/* Labels */
.wapf-field-container[for="6a7d4704af272"] .wapf-input-label {
    display: flex !important;
    align-items: center !important;

    gap: 8px !important;

    margin: 0 !important;
    padding: 0 !important;

    cursor: pointer !important;
}


/* Texto GIRLFRIEND / BOYFRIEND */
.wapf-field-container[for="6a7d4704af272"] .wapf-label-text {
    padding: 0 !important;

    font-family: "Sahitya", serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;

    color: #fff !important;
}


/* ------------------------------------------
   CHECKBOX RARE
   ------------------------------------------ */

.wapf-field-container[for="6a7d4704af272"] input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;

    width: 14px !important;
    height: 14px !important;

    min-width: 14px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1px solid #666 !important;
    border-radius: 0 !important;

    background: #111 !important;

    box-shadow: none !important;
    outline: none !important;

    cursor: pointer !important;

    transition:
        border-color .15s ease,
        background-color .15s ease !important;
}


/* Hover */
.wapf-field-container[for="6a7d4704af272"] input[type="checkbox"]:hover {
    border-color: #aaa !important;
}


/* Seleccionado */
.wapf-field-container[for="6a7d4704af272"] input[type="checkbox"]:checked {
    background: #b99ac9 !important;
    border-color: #b99ac9 !important;

    box-shadow:
        inset 0 0 0 3px #111 !important;
}



/* Ocultar resumen de totales de WAPF */
.wapf-product-totals {
    display: none !important;
}

.wapf-pricing-hint {
    display: none !important;
}

/* Permitir que los colores salten a una segunda fila */
.variations tr:nth-child(2) .cfvsw-swatches-container {
    display: flex !important;
    flex-wrap: wrap !important;
    max-width: 360px !important;
    gap: 6px !important;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-7c96cb8 *//* ==========================================================
   RARE — COMBO EN PRODUCTO INDIVIDUAL
   Link + preview hover
   ========================================================== */

.rare-single-combo {
    display: flex;
    align-items: baseline;
    gap: 10px;

    position: relative;

    margin: 10px 0 18px;
    padding: 0;

    font-family: "Sahitya", serif;
}


/* ==========================================================
   LABEL COMBO
   ========================================================== */

.rare-single-combo-label {
    flex: 0 0 auto;

    color: #A78FBA;

    font-size: 11px;
    font-weight: 600;
    line-height: 1;

    letter-spacing: .05em;
    text-transform: uppercase;
}


/* ==========================================================
   LINK / TEXTO
   ========================================================== */

.rare-single-combo-link {
    position: relative;

    display: inline-block;

    color: #ddd !important;

    text-decoration: none !important;

    cursor: pointer;
}


.rare-single-combo-text {
    color: inherit;

    font-size: 13px;
    font-weight: 400;
    line-height: 1.35;

    transition: color .15s ease;
}


.rare-single-combo-link:hover {
    color: #A78FBA !important;
}


/* ==========================================================
   THUMBNAIL FLOTANTE
   ========================================================== */

.rare-combo-product-preview {
    position: absolute;

    left: 0;
  

    z-index: 9999;

      width: 122px;
    bottom: calc(100% + 16px);

    padding: 7px;

    background: #0b0b0b;

    border: 1px solid #333;
    border-radius: 0;

    box-shadow: none;

    opacity: 0;
    visibility: hidden;

    transform: translateY(5px);

    pointer-events: none;

    transition:
        opacity .15s ease,
        transform .15s ease,
        visibility .15s ease;
}


/* Imagen */
.rare-combo-product-preview img {
    display: block;

    width: 100%;
    height: auto;

    margin: 0;
    padding: 0;

    object-fit: cover;

    border: 0;
}


/* Nombre debajo */
.rare-combo-preview-name {
    display: block;

    margin-top: 6px;
    color: #aaa;
    font-size: 10px;

    font-family: "Sahitya", serif;

    font-weight: 400;
    line-height: 1.25;

    text-align: left;
}


/* Mostrar preview */
.rare-single-combo-link:hover
.rare-combo-product-preview {
    opacity: 1;
    visibility: visible;

    transform: translateY(0);
}


/* ==========================================================
   MOBILE
   En touch no mostramos preview flotante
   ========================================================== */

@media (max-width: 767px) {

    .rare-combo-product-preview {
        display: none !important;
    }

    .rare-single-combo {
        align-items: flex-start;
    }

}

/* ==========================================================
   RARE — TEXTO COMBO
   MISMO COLOR CON O SIN LINK
   ========================================================== */

.rare-single-combo .rare-single-combo-text {
    color: #ddd !important;
    -webkit-text-fill-color: #ddd !important;
}

.rare-single-combo-link:hover .rare-single-combo-text {
    color: #A78FBA !important;
    -webkit-text-fill-color: #A78FBA !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a045f89 *//* =========================================
   RARE — PRODUCT INFO STICKY NATIVO
   ========================================= */

@media (min-width:1025px){

    .rare-product-sticky{
        position:sticky !important;
        top:120px !important;

        align-self:flex-start !important;

        z-index:10 !important;

        overflow:visible !important;
    }

}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-79a02bd */.w{
    max-width: 700px !important;
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-310e9be */.rare-link,
.rare-link:visited{
    color:#C7A3E8;
    text-decoration:none;
}

.rare-link:hover{
    color:#D7B5F2;
    text-decoration:underline;
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-14e821d */.rare-link,
.rare-link:visited{
    color:#C7A3E8;
    text-decoration:none;
}

.rare-link:hover{
    color:#D7B5F2;
    text-decoration:underline;
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-0578460 */.rare-link,
.rare-link:visited{
    color:#C7A3E8;
    text-decoration:none;
}

.rare-link:hover{
    color:#D7B5F2;
    text-decoration:underline;
}/* End custom CSS */