/*
Theme Name: Virelly Jewelry
Theme URI: https://virellyjewelry.com
Description: Tema premium Virelle. Hijo de Blocksy. v5.0
Author: Ax1oma
Author URI: https://ax1oma.com
Template: blocksy
Version: 6.0.0
Text Domain: virelly
*/

/* ═════════════════════════════════════════════════════════════
   1. TOKENS + RESET BLOCKSY
═════════════════════════════════════════════════════════════ */
:root {
    --vy-ink:#0F0F0F; --vy-graphite:#3A3A3A; --vy-gold:#B89B5E; --vy-gold-s:#D4BC85;
    --vy-cream:#F5F0E6; --vy-bone:#FBF8F2; --vy-line:#E5DFD0; --vy-muted:#8A8579;
    --vy-error:#B23A48; --vy-success:#5A7D3A;
    --ff-d:'Inter', -apple-system, sans-serif;
    --ff-b:'Inter',-apple-system,sans-serif;
    --g:20px; --ease:cubic-bezier(.4,0,.2,1); --t:320ms;

    /* Override Blocksy */
    --theme-palette-color-1:#B89B5E;
    --theme-palette-color-2:#9A8040;
    --theme-palette-color-3:#3A3A3A;
    --theme-palette-color-4:#0F0F0F;
    --theme-palette-color-5:#E5DFD0;
    --theme-palette-color-6:#F5F0E6;
    --theme-palette-color-7:#FBF8F2;
    --theme-palette-color-8:#FFFFFF;
    --theme-button-background-initial-color:#0F0F0F;
    --theme-button-background-hover-color:#B89B5E;
    --theme-button-text-initial-color:#FFFFFF;
    --theme-button-text-hover-color:#0F0F0F;
    --theme-link-initial-color:#0F0F0F;
    --theme-link-hover-color:#B89B5E;
    --theme-selection-background-color:#B89B5E;
    --theme-form-field-border-focus-color:#0F0F0F;
}
@media(min-width:600px){:root{--g:32px;}}
@media(min-width:1200px){:root{--g:48px;}}

/* ═════════════════════════════════════════════════════════════
   2. BASE
═════════════════════════════════════════════════════════════ */
.vt{font-family:var(--ff-b);color:var(--vy-ink);background:var(--vy-bone);-webkit-font-smoothing:antialiased;}
.vt :focus-visible{outline:2px solid var(--vy-gold);outline-offset:2px;}
.vt ::selection{background:var(--vy-gold);color:var(--vy-ink);}
.vt img{max-width:100%;display:block;}
.vt a{color:inherit;text-decoration:none;}
.vt h1,.vt h2,.vt h3,.vt h4,.vt h5,.vt h6,
.vt .product_title,.vt .woocommerce-loop-product__title{
    font-family: var(--ff-b);font-weight:700;line-height:1.05;letter-spacing:-.01em;
}
.vt h1 em,.vt h2 em,.vt h3 em{font-style:italic;color:var(--vy-gold);}
.vy-wrap{max-width:1320px;margin:0 auto;padding-inline:var(--g);}

/* ═════════════════════════════════════════════════════════════
   3. BOTONES — TODOS NEGROS TEXTO BLANCO
═════════════════════════════════════════════════════════════ */
.vt .button,
.vt input[type="submit"],
.woocommerce.vt a.button,
.woocommerce.vt button.button,
.vt .single_add_to_cart_button,
.vt .add_to_cart_button,
.vt .added_to_cart,
.vt .checkout-button,
.vt #place_order,
.vt .wp-element-button,
.vt .wp-block-button__link,
.vt .wc-block-components-button:not(.wc-block-components-quantity-selector__button),
.vt .wc-block-cart__submit-button,
.vt .wc-block-components-checkout-place-order-button,
.vt .wc-block-proceed-to-checkout-block__button {
    font-family:var(--ff-b) !important;
    font-size:12px !important;
    font-weight:500 !important;
    letter-spacing:.16em !important;
    text-transform:uppercase !important;
    padding:14px 28px !important;
    background:var(--vy-ink) !important;
    background-color:var(--vy-ink) !important;
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
    border:1px solid var(--vy-ink) !important;
    border-radius:0 !important;
    box-shadow:none !important;
    min-height:48px !important;
    cursor:pointer !important;
    text-decoration:none !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    transition:background var(--t) var(--ease),color var(--t) var(--ease) !important;
}
.vt .button:hover,
.woocommerce.vt a.button:hover,
.vt .single_add_to_cart_button:hover,
.vt .added_to_cart:hover,
.vt .checkout-button:hover,
.vt #place_order:hover,
.vt .wp-element-button:hover,
.vt .wc-block-cart__submit-button:hover,
.vt .wc-block-components-checkout-place-order-button:hover {
    background:var(--vy-gold) !important;
    background-color:var(--vy-gold) !important;
    border-color:var(--vy-gold) !important;
    color:var(--vy-ink) !important;
    -webkit-text-fill-color:var(--vy-ink) !important;
}
.vt .button.alt,.woocommerce.vt a.button.alt{background:transparent !important;background-color:transparent !important;color:var(--vy-ink) !important;-webkit-text-fill-color:var(--vy-ink) !important;border-color:var(--vy-ink) !important;}
.vt .button.alt:hover{background:var(--vy-ink) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;}

/* Botón hero/sections */
.vt .vy-btn{
    display:inline-flex !important;align-items:center !important;justify-content:center !important;
    font-family:var(--ff-b) !important;font-size:12px !important;font-weight:500 !important;
    letter-spacing:.16em !important;text-transform:uppercase !important;
    padding:16px 32px !important;background:var(--vy-ink) !important;
    color:#FFFFFF !important;-webkit-text-fill-color:#FFFFFF !important;
    border:1px solid var(--vy-ink) !important;border-radius:0 !important;
    min-height:48px !important;text-decoration:none !important;box-shadow:none !important;cursor:pointer;
}
.vt .vy-btn:hover{background:var(--vy-gold) !important;border-color:var(--vy-gold) !important;color:var(--vy-ink) !important;-webkit-text-fill-color:var(--vy-ink) !important;}
.vt .vy-btn--ghost{background:transparent !important;color:var(--vy-ink) !important;-webkit-text-fill-color:var(--vy-ink) !important;}
.vt .vy-btn--ghost:hover{background:var(--vy-ink) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;}
.vt .vy-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid var(--vy-ink);padding-bottom:3px;color:var(--vy-ink);}
.vt .vy-link:hover{color:var(--vy-gold);border-color:var(--vy-gold);}

/* "Ver carrito" tras añadir - botón negro */
.vt .woocommerce-message a.button.wc-forward,
.vt a.added_to_cart {
    background:var(--vy-ink) !important;
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
    border-color:var(--vy-ink) !important;
}

/* ═════════════════════════════════════════════════════════════
   4. ANUNCIO + HEADER + STICKY
═════════════════════════════════════════════════════════════ */
.vy-announce{background:var(--vy-ink);color:var(--vy-cream);padding:10px var(--g);text-align:center;font-family:var(--ff-b);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;}
.vy-announce strong{color:var(--vy-gold);}

.vt .ct-header,
.vt .ct-header [data-row="middle"]{
    background:var(--vy-bone) !important;
    --height:72px !important;
}
@media(max-width:999px){.vt .ct-header [data-row="middle"]{--height:64px !important;}}

.vt #header{position:sticky !important;top:0 !important;z-index:100 !important;background:var(--vy-bone) !important;width:100% !important;transition:box-shadow .32s ease;}
.vt.vy-scrolled #header{box-shadow:0 2px 16px rgba(0,0,0,.06) !important;}
@media(min-width:601px){.admin-bar.vt #header{top:32px !important;}}
@media(max-width:600px){.admin-bar.vt #header{top:46px !important;}}

/* Logo */
.vt .ct-header .site-branding .site-title{display:none !important;}
.vt .ct-header .site-branding a{display:block;}
.vt .ct-header .site-branding a::after{
    content:'';display:block;width:150px;height:40px;
    background:var(--vy-logo-url,none) center/contain no-repeat;
}
@media(min-width:900px){.vt .ct-header .site-branding a::after{width:190px;height:50px;}}

/* Nav */
.vt .ct-header [data-id="menu"] ul>li>a{
    font-family:var(--ff-b) !important;font-size:12px !important;font-weight:500 !important;
    letter-spacing:.16em !important;text-transform:uppercase !important;
    color:var(--vy-ink) !important;
}
.vt .ct-header [data-id="menu"] ul>li>a:hover,
.vt .ct-header [data-id="menu"] ul>li.current-menu-item>a{color:var(--vy-gold) !important;}

/* Iconos header */
.vt .ct-header svg{color:var(--vy-ink) !important;}
.vt .ct-cart-item .ct-cart-count{background:var(--vy-gold) !important;color:var(--vy-ink) !important;font-weight:600 !important;}

/* Mobile offcanvas */
.vt #offcanvas .ct-panel-inner{background:var(--vy-bone) !important;}
.vt #offcanvas .ct-menu-link,.vt #offcanvas nav a{
    color:var(--vy-ink) !important;font-family:var(--ff-b) !important;
    font-size:18px !important;font-weight:500 !important;
    text-transform:uppercase !important;letter-spacing:.06em !important;
}
.vt #offcanvas .ct-menu-link:hover{color:var(--vy-gold) !important;}
.vt #offcanvas .current-menu-item>a{color:var(--vy-gold) !important;}
.vt [data-id="trigger"] svg rect{fill:var(--vy-ink) !important;}

/* Mini cart drawer Blocksy */
.vt #woo-cart-panel{background:var(--vy-bone) !important;}
.vt #woo-cart-panel .ct-cart-header,
.vt #woo-cart-panel .ct-panel-heading{
    font-family: var(--ff-b) !important;font-size:28px !important;font-weight:400 !important;
    color:var(--vy-ink) !important;padding:24px !important;
    border-bottom:1px solid var(--vy-line) !important;
}
.vt #woo-cart-panel img{object-fit:cover !important;}
.vt #woo-cart-panel .woocommerce-mini-cart__total{
    background:var(--vy-cream) !important;border-top:1px solid var(--vy-line) !important;padding:16px 24px !important;
}
.vt #woo-cart-panel .woocommerce-mini-cart__total .amount{color:var(--vy-gold) !important;font-weight:600 !important;font-size:20px !important;}
.vt #woo-cart-panel .checkout{background:var(--vy-ink) !important;color:#fff !important;}

/* Side Cart plugin (XootiX) */
.vt .xoo-wsc-modal,.vt .xoo-wsc-container{background:var(--vy-bone) !important;}
.vt .xoo-wsc-header{background:var(--vy-bone) !important;border-bottom:1px solid var(--vy-line) !important;}
.vt .xoo-wsc-cart-name{font-family: var(--ff-b) !important;font-size:24px !important;font-weight:400 !important;color:var(--vy-ink) !important;}
.vt .xoo-wsc-ft-amt-value,.vt .xoo-wsc-sum-total{color:var(--vy-gold) !important;font-weight:600 !important;}
.vt .xoo-wsc-ft-btn{background:var(--vy-ink) !important;color:#fff !important;font-family:var(--ff-b) !important;letter-spacing:.16em !important;text-transform:uppercase !important;border:none !important;border-radius:0 !important;}
.vt .xoo-wsc-product-name a{font-family: var(--ff-b) !important;color:var(--vy-ink) !important;}
.vt .xoo-wsc-qty-btn{border:1px solid var(--vy-line) !important;background:transparent !important;color:var(--vy-ink) !important;}

/* Ocultar footer Blocksy y blog en home */
.vt #footer,.vt footer#footer,.vt .ct-footer{display:none !important;}
.vt.home .entries,.vt.home .ct-page-hero-section{display:none !important;}

/* Container 100% */
.vt .ct-container{max-width:100% !important;padding:0 var(--g) !important;}

/* ═════════════════════════════════════════════════════════════
   5. HERO BORDE A BORDE
═════════════════════════════════════════════════════════════ */
.vt .vy-hero{
    display:grid;grid-template-columns:1fr;min-height:70vh;
    background:var(--vy-cream);overflow:hidden;
    margin-left:calc(-1 * var(--g));margin-right:calc(-1 * var(--g));
    width:calc(100% + var(--g) * 2);
}
@media(min-width:900px){.vt .vy-hero{grid-template-columns:1fr 1fr;min-height:85vh;}}
.vt .vy-hero__content{display:flex;flex-direction:column;justify-content:center;padding:64px var(--g);z-index:2;}
@media(min-width:900px){.vt .vy-hero__content{padding:96px;}}
.vt .vy-eyebrow{font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--vy-gold);display:block;margin-bottom:24px;}
.vt .vy-hero__title{font-family: var(--ff-b);font-size:clamp(42px,7vw,100px);font-weight:700;line-height:.95;letter-spacing:-.01em;color:var(--vy-ink);margin:0 0 24px;max-width:9ch;}
.vt .vy-hero__subtitle{font-size:17px;line-height:1.7;color:var(--vy-graphite);margin:0 0 48px;max-width:42ch;}
.vt .vy-hero__actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;}
.vt .vy-hero__visual{position:relative;min-height:320px;overflow:hidden;background:#5A4B2E;}
.vt .vy-hero__visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* ═════════════════════════════════════════════════════════════
   6. TICKER
═════════════════════════════════════════════════════════════ */
.vt .vy-ticker{
    background:var(--vy-ink);color:var(--vy-cream);padding:10px 0;overflow:hidden;
    border-top:1px solid var(--vy-graphite);border-bottom:1px solid var(--vy-graphite);
    margin-left:calc(-1 * var(--g));margin-right:calc(-1 * var(--g));
    width:calc(100% + var(--g) * 2);
}
.vt .vy-ticker__track{display:flex;gap:48px;animation:vyTick 40s linear infinite;white-space:nowrap;width:max-content;}
.vt .vy-ticker:hover .vy-ticker__track{animation-play-state:paused;}
.vt .vy-ticker__item{display:inline-flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;}
.vt .vy-ticker__item span{color:var(--vy-gold);}
.vt .vy-ticker__sep{color:var(--vy-graphite);}
@keyframes vyTick{to{transform:translateX(-50%);}}

/* ═════════════════════════════════════════════════════════════
   7. SECCIONES GENÉRICAS
═════════════════════════════════════════════════════════════ */
.vt .vy-sec{padding:96px 0;}
.vt .vy-sec--cream{background:var(--vy-cream);}
.vt .vy-sec__head{text-align:center;max-width:640px;margin:0 auto 64px;}
.vt .vy-sec__ey{font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--vy-gold);display:block;margin-bottom:12px;}
.vt .vy-sec__title{font-family: var(--ff-b);font-size:36px;font-weight:700;line-height:1.05;margin:0 0 16px;}
@media(min-width:600px){.vt .vy-sec__title{font-size:42px;}}
@media(min-width:900px){.vt .vy-sec__title{font-size:56px;}}
.vt .vy-sec__lead{font-size:17px;line-height:1.7;color:var(--vy-graphite);margin:0;}

/* ═════════════════════════════════════════════════════════════
   8. CATEGORÍAS
═════════════════════════════════════════════════════════════ */
.vt .vy-cats{display:grid;grid-template-columns:1fr;gap:16px;}
@media(min-width:600px){.vt .vy-cats{grid-template-columns:repeat(2,1fr);gap:24px;}}
@media(min-width:900px){.vt .vy-cats{grid-template-columns:repeat(3,1fr);}}
.vt .vy-cat{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--vy-cream);display:block;}
.vt .vy-cat__media{position:absolute;inset:0;overflow:hidden;transition:transform .6s ease;}
.vt .vy-cat__media img{width:100%;height:100%;object-fit:cover;}
.vt .vy-cat:hover .vy-cat__media{transform:scale(1.06);}
.vt .vy-cat__overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.5));}
.vt .vy-cat__content{position:absolute;left:0;right:0;bottom:0;padding:24px;color:#fff;z-index:2;}
.vt .vy-cat__title{font-family: var(--ff-b);font-size:28px;font-weight:700;color:#fff;margin:0 0 8px;}
.vt .vy-cat__link{font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--vy-gold-s);display:inline-flex;gap:6px;transition:gap var(--t) ease;}
.vt .vy-cat:hover .vy-cat__link{gap:12px;}

/* ═════════════════════════════════════════════════════════════
   9. USP
═════════════════════════════════════════════════════════════ */
.vt .vy-usp{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;padding:48px 0;border-top:1px solid var(--vy-line);border-bottom:1px solid var(--vy-line);}
@media(min-width:900px){.vt .vy-usp{grid-template-columns:repeat(4,1fr);}}
.vt .vy-usp__item{text-align:center;padding:12px;}
.vt .vy-usp__icon{width:32px;height:32px;margin:0 auto 12px;color:var(--vy-gold);display:block;}
.vt .vy-usp__title{font-family: var(--ff-b);font-size:17px;font-weight:500;margin:0 0 4px;color:var(--vy-ink);}
.vt .vy-usp__text{font-size:13px;color:var(--vy-muted);line-height:1.5;}

/* ═════════════════════════════════════════════════════════════
   10. LOOP PRODUCTOS (tienda + secciones home)
═════════════════════════════════════════════════════════════ */
.vt [data-products] ul.products,
.vt ul.products{
    display:grid !important;
    grid-template-columns:repeat(2,1fr) !important;
    gap:24px 12px !important;
    list-style:none !important;padding:0 !important;margin:48px 0 !important;
}
@media(min-width:600px){.vt [data-products] ul.products,.vt ul.products{gap:48px 16px !important;}}
@media(min-width:900px){.vt [data-products] ul.products,.vt ul.products{grid-template-columns:repeat(3,1fr) !important;gap:64px 24px !important;}}
@media(min-width:1200px){.vt [data-products] ul.products,.vt ul.products{grid-template-columns:repeat(4,1fr) !important;}}

.vt ul.products li.product{
    background:transparent !important;border:none !important;
    padding:0 !important;margin:0 !important;width:100% !important;
    display:flex !important;flex-direction:column !important;box-shadow:none !important;
}
.vt ul.products li.product figure{
    aspect-ratio:4/5;overflow:hidden;background:var(--vy-cream);
    position:relative;margin:0 0 16px !important;padding:0 !important;
}
.vt ul.products li.product figure img{
    position:absolute !important;inset:0;width:100% !important;height:100% !important;
    object-fit:cover !important;margin:0 !important;transition:transform .6s ease !important;
}
.vt ul.products li.product:hover figure img{transform:scale(1.04) !important;}
.vt ul.products li.product .product-category{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--vy-muted);margin-bottom:4px;}
.vt ul.products li.product .ct-woo-card-entry-meta,
.vt ul.products li.product .entry-meta[data-id="default"]{display:none !important;}
.vt ul.products li.product .woocommerce-loop-product__title{
    font-family: var(--ff-b) !important;font-size:22px !important;font-weight:700 !important;
    color:var(--vy-ink) !important;line-height:1.2 !important;margin:0 0 8px !important;padding:0 !important;
}
.vt ul.products li.product .price{
    font-size:15px !important;font-weight:500 !important;color:var(--vy-ink) !important;
    margin:0 !important;padding:0 !important;display:flex !important;gap:8px;align-items:center;
}
.vt ul.products li.product .price ins{text-decoration:none !important;color:var(--vy-gold) !important;font-weight:600;}
.vt ul.products li.product .price del{color:var(--vy-muted) !important;opacity:1 !important;font-weight:400 !important;}
.vt span.onsale{
    background:var(--vy-ink) !important;color:var(--vy-gold) !important;
    font-family:var(--ff-b) !important;font-size:10px !important;font-weight:500 !important;
    letter-spacing:.16em !important;text-transform:uppercase !important;
    border-radius:0 !important;padding:5px 10px !important;
    min-height:auto !important;min-width:auto !important;line-height:1 !important;
    top:12px !important;left:12px !important;
}
@media(max-width:599px){
    .vt ul.products li.product .add_to_cart_button{display:none !important;}
}
@media(hover:hover) and (min-width:600px){
    .vt ul.products li.product .add_to_cart_button{
        opacity:0 !important;transform:translateY(8px) !important;
        transition:opacity var(--t) ease,transform var(--t) ease !important;
        width:100% !important;margin-top:12px !important;
    }
    .vt ul.products li.product:hover .add_to_cart_button{opacity:1 !important;transform:translateY(0) !important;}
}

/* ═════════════════════════════════════════════════════════════
   11. TIENDA — page hero + sidebar + toolbar
═════════════════════════════════════════════════════════════ */
.vt .woocommerce-products-header{background:var(--vy-cream);padding:64px 0;text-align:center;margin-bottom:48px !important;}
.vt .woocommerce-products-header__title{font-family: var(--ff-b) !important;font-size:42px !important;font-weight:400 !important;color:var(--vy-ink) !important;}
@media(min-width:900px){.vt .woocommerce-products-header__title{font-size:56px !important;}}
.vt .woo-listing-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:0 0 16px;border-bottom:1px solid var(--vy-line);}
.vt .woo-listing-top .woocommerce-result-count{font-size:12px !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--vy-muted) !important;margin:0;}
.vt .woocommerce-ordering select{font-family:var(--ff-b);font-size:12px;border:1px solid var(--vy-line);border-radius:0;padding:10px 36px 10px 16px;background:transparent;min-height:44px;color:var(--vy-ink);letter-spacing:.08em;text-transform:uppercase;}
.vt .ct-breadcrumbs{font-size:12px !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--vy-muted) !important;}
.vt .ct-breadcrumbs a{color:var(--vy-muted) !important;}
.vt .ct-breadcrumbs a:hover{color:var(--vy-gold) !important;}

/* WOOF Filters override */
.vt .woof_redraw_zone{background:transparent !important;}
.vt .woof_container{margin-bottom:24px;}
.vt .woof_container_inner{background:transparent !important;border:none !important;border-bottom:1px solid var(--vy-line);padding-bottom:16px;}
.vt .woof_container_inner>h4{font-family:var(--ff-b) !important;font-size:12px !important;font-weight:600 !important;letter-spacing:.2em !important;text-transform:uppercase !important;color:var(--vy-ink) !important;margin-bottom:12px !important;}
.vt .woof_list li{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--vy-ink);padding:4px 0;}
.vt .woof_list li input[type="checkbox"]{accent-color:var(--vy-gold);}
.vt .woof_list li label{cursor:pointer;}
.vt .woof_show_button{background:var(--vy-ink) !important;color:#fff !important;border-radius:0 !important;padding:14px 24px !important;font-family:var(--ff-b) !important;font-size:12px !important;letter-spacing:.16em !important;text-transform:uppercase !important;border:none !important;}

/* Paginación */
.vt .woocommerce-pagination,.vt .ct-pagination{margin:48px 0;text-align:center;}
.vt .woocommerce-pagination ul,.vt .page-numbers{display:inline-flex;list-style:none;padding:0;gap:8px;}
.vt .page-numbers li,.vt .page-numbers{display:inline-block;}
.vt .page-numbers a,.vt .page-numbers span{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:40px;height:40px;padding:0 12px;
    border:1px solid var(--vy-line) !important;color:var(--vy-ink) !important;
    font-family:var(--ff-b);font-size:13px;background:transparent !important;
}
.vt .page-numbers.current{background:var(--vy-ink) !important;color:#fff !important;border-color:var(--vy-ink) !important;}
.vt .page-numbers a:hover{background:var(--vy-cream) !important;border-color:var(--vy-ink) !important;}

/* ═════════════════════════════════════════════════════════════
   12. PRODUCTO SINGLE
═════════════════════════════════════════════════════════════ */
.vt .single-product div.product{
    display:grid !important;grid-template-columns:1fr !important;
    gap:32px !important;max-width:100% !important;padding:32px var(--g) !important;
}
@media(min-width:900px){.vt .single-product div.product{grid-template-columns:1.1fr 1fr !important;gap:64px !important;}}
.vt .single-product .woocommerce-product-gallery{width:100% !important;float:none !important;}
.vt .single-product .entry-summary,.vt .single-product .summary{width:100% !important;float:none !important;}
.vt .single-product .product_title{
    font-family: var(--ff-b) !important;font-size:36px !important;font-weight:700 !important;
    line-height:1.05 !important;margin-bottom:16px !important;
}
@media(min-width:900px){.vt .single-product .product_title{font-size:48px !important;}}
.vt .entry-summary-items>.price,.vt .single-product .summary>.price{
    font-size:28px !important;font-weight:500 !important;
    padding:16px 0 !important;margin-bottom:24px !important;
    border-top:1px solid var(--vy-line) !important;border-bottom:1px solid var(--vy-line) !important;
    display:flex !important;gap:12px !important;align-items:baseline !important;color:var(--vy-ink) !important;
}
.vt .single-product .price ins{color:var(--vy-gold) !important;font-weight:600 !important;text-decoration:none !important;}
.vt .single-product .price del{color:var(--vy-muted) !important;font-size:17px !important;}
.vt .single-product .woocommerce-product-details__short-description{font-size:15px;line-height:1.7;color:var(--vy-graphite);margin-bottom:24px;}

/* Cart form */
.vt .single-product form.cart{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px !important;align-items:stretch !important;}
.vt .single-product .quantity{display:inline-flex;align-items:center;border:1px solid var(--vy-ink);min-height:52px;}
.vt .single-product .quantity input{width:60px;height:50px;text-align:center;border:none;background:transparent;font-family:var(--ff-b);font-size:15px;color:var(--vy-ink);}
.vt .single-product .single_add_to_cart_button{flex:1;min-width:200px;min-height:52px !important;}
.vt .single-product .product_meta{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--vy-muted);padding-top:16px;border-top:1px solid var(--vy-line);margin-top:24px;}

/* Variation Swatches plugin override */
.vt .variations{margin-bottom:24px;}
.vt .variations tr{display:block;margin-bottom:16px;}
.vt .variations td.label{display:block;padding:0;text-align:left;}
.vt .variations td.label label{font-family:var(--ff-b) !important;font-size:12px !important;font-weight:500 !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--vy-ink) !important;margin-bottom:12px !important;display:block;}
.vt .variations td.value{display:block;padding:0;}
.vt .variations .reset_variations{font-size:11px !important;color:var(--vy-muted) !important;text-transform:uppercase;letter-spacing:.1em;}

/* Swatches color (círculos) */
.vt .variable-items-wrapper{display:flex;flex-wrap:wrap;gap:12px;}
.vt .variable-item.color-variable-item,.vt li.color-variable-item{
    width:40px !important;height:40px !important;border-radius:50% !important;
    border:2px solid var(--vy-line) !important;cursor:pointer;
    padding:0 !important;margin:0 !important;
}
.vt .variable-item.color-variable-item.selected,.vt li.color-variable-item.selected{
    border:2px solid var(--vy-gold) !important;
    outline:2px solid var(--vy-gold-s) !important;outline-offset:2px;
}
/* Swatches botón (talla) */
.vt .variable-item.button-variable-item,.vt li.button-variable-item{
    min-width:56px !important;height:44px !important;padding:8px 16px !important;
    border:1px solid var(--vy-line) !important;background:transparent !important;
    font-family:var(--ff-b) !important;font-size:13px !important;color:var(--vy-ink) !important;
    cursor:pointer;border-radius:0 !important;
}
.vt .variable-item.button-variable-item.selected,.vt li.button-variable-item.selected{
    background:var(--vy-ink) !important;color:#fff !important;border-color:var(--vy-ink) !important;
}
.vt .variable-item.disabled,.vt li.button-variable-item.disabled{opacity:.4 !important;text-decoration:line-through !important;cursor:not-allowed;}

/* Trust signals */
.vt .vy-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:24px;background:var(--vy-cream);margin-bottom:24px;}
.vt .vy-trust__item{display:flex;align-items:flex-start;gap:12px;}
.vt .vy-trust__icon{width:28px;height:28px;flex-shrink:0;color:var(--vy-gold);}
.vt .vy-trust__text strong{display:block;font-family: var(--ff-b);font-size:17px;font-weight:500;color:var(--vy-ink);margin-bottom:2px;}
.vt .vy-trust__text span{font-size:13px;color:var(--vy-graphite);line-height:1.4;}

/* Tabs */
.vt .woocommerce-tabs ul.tabs{
    border-bottom:1px solid var(--vy-line) !important;padding:0 !important;
    margin:0 0 32px !important;display:flex !important;gap:24px !important;
    list-style:none !important;overflow-x:auto !important;scrollbar-width:none !important;background:transparent !important;
}
.vt .woocommerce-tabs ul.tabs::before,.vt .woocommerce-tabs ul.tabs::after{display:none !important;}
.vt .woocommerce-tabs ul.tabs li{background:transparent !important;border:none !important;border-radius:0 !important;margin:0 !important;padding:0 !important;}
.vt .woocommerce-tabs ul.tabs li a{
    font-family:var(--ff-b) !important;font-size:12px !important;font-weight:500 !important;
    letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--vy-muted) !important;
    padding:16px 0 !important;border-bottom:2px solid transparent !important;
    display:block !important;white-space:nowrap !important;background:transparent !important;
}
.vt .woocommerce-tabs ul.tabs li.active a,.vt .woocommerce-tabs ul.tabs li a:hover{color:var(--vy-ink) !important;border-bottom-color:var(--vy-gold) !important;}
.vt .woocommerce-tabs .panel h2{font-family: var(--ff-b) !important;font-size:28px !important;font-weight:400 !important;margin-bottom:16px !important;}

/* Productos relacionados */
.vt .related,.vt .upsells{margin-top:96px;padding-top:48px;border-top:1px solid var(--vy-line);}
.vt .related h2,.vt .upsells h2,.vt .related .ct-module-title{font-family: var(--ff-b) !important;font-size:36px !important;font-weight:400 !important;text-align:center;margin-bottom:48px !important;}

/* ═════════════════════════════════════════════════════════════
   13. CARRITO + CHECKOUT
═════════════════════════════════════════════════════════════ */
.vt .wp-block-woocommerce-cart{max-width:100% !important;}
.vt .wc-block-cart__main-title{font-family: var(--ff-b) !important;font-weight:400 !important;font-size:42px !important;color:var(--vy-ink) !important;letter-spacing:-.01em !important;}
.vt .wc-block-cart-items__header span{font-family:var(--ff-b) !important;font-size:12px !important;font-weight:500 !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--vy-muted) !important;}
.vt .wc-block-cart-item__product-name,.vt .wc-block-cart-item__product-name a{font-family: var(--ff-b) !important;font-size:20px !important;font-weight:400 !important;color:var(--vy-ink) !important;}
.vt .wc-block-cart-item__prices .wc-block-components-product-price{font-size:15px !important;font-weight:500 !important;color:var(--vy-ink) !important;}
.vt .wc-block-cart-item__prices .wc-block-components-product-price .is-discounted{color:var(--vy-gold) !important;font-weight:600 !important;}

/* Botones qty +/- NO grises */
.vt .wc-block-components-quantity-selector{display:inline-flex !important;border:1px solid var(--vy-ink) !important;border-radius:0 !important;}
.vt .wc-block-components-quantity-selector__button{
    background:transparent !important;background-color:transparent !important;
    color:var(--vy-ink) !important;-webkit-text-fill-color:var(--vy-ink) !important;
    border:none !important;border-radius:0 !important;
    width:36px !important;height:44px !important;
    font-size:18px !important;font-weight:400 !important;padding:0 !important;
    min-height:auto !important;box-shadow:none !important;
}
.vt .wc-block-components-quantity-selector__button:hover{background:var(--vy-cream) !important;color:var(--vy-ink) !important;-webkit-text-fill-color:var(--vy-ink) !important;border:none !important;}
.vt .wc-block-components-quantity-selector input{
    border:none !important;border-left:1px solid var(--vy-line) !important;border-right:1px solid var(--vy-line) !important;
    width:48px !important;height:44px !important;text-align:center !important;
    background:transparent !important;color:var(--vy-ink) !important;
    font-family:var(--ff-b) !important;font-size:15px !important;
}
.vt .wc-block-components-sale-badge{display:none !important;}
.vt .wc-block-cart-item{border-bottom:1px solid var(--vy-line) !important;}
.vt .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-family: var(--ff-b) !important;font-size:20px !important;font-weight:400 !important;color:var(--vy-ink) !important;}
.vt .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family: var(--ff-b) !important;font-size:20px !important;font-weight:600 !important;color:var(--vy-gold) !important;}

/* Carrito clásico */
.vt table.cart thead th{font-family:var(--ff-b) !important;font-size:12px !important;font-weight:500 !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--vy-muted) !important;background:transparent !important;border-bottom:1px solid var(--vy-ink) !important;padding:16px 12px !important;}
.vt table.cart .cart_item td{border-top:none !important;border-bottom:1px solid var(--vy-line) !important;padding:16px 12px !important;vertical-align:middle;background:transparent !important;}
.vt .woocommerce-cart .product-thumbnail img{width:80px !important;height:100px !important;object-fit:cover;}
.vt .woocommerce-cart .product-name a{font-family: var(--ff-b) !important;font-size:17px !important;font-weight:400 !important;color:var(--vy-ink) !important;}
.vt .cart_totals{background:var(--vy-cream) !important;padding:24px !important;border:none !important;}
.vt .cart_totals h2{font-family: var(--ff-b) !important;font-size:28px !important;font-weight:400 !important;margin-bottom:16px !important;}
.vt .order-total .woocommerce-Price-amount{color:var(--vy-gold) !important;font-weight:600 !important;}

/* Checkout */
.vt .woocommerce-checkout .woocommerce{max-width:100% !important;}
.vt .woocommerce-checkout h3{font-family: var(--ff-b) !important;font-size:28px !important;font-weight:400 !important;margin-bottom:16px !important;padding-bottom:12px !important;border-bottom:1px solid var(--vy-line) !important;}
.vt .woocommerce-checkout label{font-family:var(--ff-b) !important;font-size:12px !important;font-weight:500 !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--vy-graphite) !important;margin-bottom:8px !important;}
.vt .woocommerce input.input-text,.vt .woocommerce-checkout select,.vt .woocommerce-checkout textarea{border:1px solid var(--vy-line) !important;border-radius:0 !important;padding:14px 16px !important;font-family:var(--ff-b) !important;font-size:15px !important;color:var(--vy-ink) !important;background:#fff !important;min-height:48px;}
.vt .woocommerce input.input-text:focus{border-color:var(--vy-ink) !important;outline:none !important;box-shadow:none !important;}
.vt #order_review{background:var(--vy-cream);padding:24px !important;}

/* Notices */
.vt .woocommerce-message{background:#EFF5E8 !important;border:none !important;border-left:3px solid var(--vy-success) !important;color:#2C4E12 !important;border-radius:0 !important;}
.vt .woocommerce-info{background:var(--vy-cream) !important;border:none !important;border-left:3px solid var(--vy-gold) !important;color:var(--vy-graphite) !important;border-radius:0 !important;}
.vt .woocommerce-error{background:#FAEBED !important;border:none !important;border-left:3px solid var(--vy-error) !important;color:#5A1B22 !important;border-radius:0 !important;}

/* Shipping progress */
.vy-ship{background:var(--vy-cream);padding:16px 24px;margin-bottom:24px;border-left:3px solid var(--vy-gold);}
.vy-ship p{margin:0 0 12px;font-size:13px;color:var(--vy-graphite);}
.vy-ship p:last-child{margin:0;}
.vy-ship strong{color:var(--vy-gold);}
.vy-ship__bar{background:var(--vy-line);height:3px;overflow:hidden;}
.vy-ship__fill{background:var(--vy-gold);height:100%;transition:width .6s ease;}

/* ═════════════════════════════════════════════════════════════
   14. EDITORIAL
═════════════════════════════════════════════════════════════ */
.vt .vy-editorial{display:grid;grid-template-columns:1fr;background:var(--vy-cream);}
@media(min-width:900px){.vt .vy-editorial{grid-template-columns:1fr 1fr;min-height:600px;}}
.vt .vy-editorial__content{padding:64px var(--g);display:flex;flex-direction:column;justify-content:center;}
@media(min-width:900px){.vt .vy-editorial__content{padding:96px;}}
.vt .vy-editorial__title{font-family: var(--ff-b);font-size:36px;font-weight:700;line-height:1.05;margin:0 0 24px;max-width:14ch;}
@media(min-width:900px){.vt .vy-editorial__title{font-size:56px;}}
.vt .vy-editorial__title em{font-style:italic;color:var(--vy-gold);}
.vt .vy-editorial__text{color:var(--vy-graphite);font-size:15px;line-height:1.7;margin:0 0 16px;max-width:46ch;}
.vt .vy-editorial__text:last-of-type{margin-bottom:32px;}
.vt .vy-editorial__media{min-height:360px;position:relative;overflow:hidden;background:#2a2218;}
.vt .vy-editorial__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* ═════════════════════════════════════════════════════════════
   15. NEWSLETTER
═════════════════════════════════════════════════════════════ */
.vt .vy-nl{background:var(--vy-ink);color:var(--vy-cream);padding:96px 0;text-align:center;}
.vt .vy-nl__inner{max-width:580px;margin:0 auto;padding:0 var(--g);}
.vt .vy-nl__ey{color:var(--vy-gold);font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;display:block;margin-bottom:12px;}
.vt .vy-nl__title{font-family: var(--ff-b);font-size:42px;color:var(--vy-cream);margin:0 0 12px;font-weight:700;line-height:1.05;}
.vt .vy-nl__title em{font-style:italic;color:var(--vy-gold);}
.vt .vy-nl__lead{color:var(--vy-line);font-size:15px;line-height:1.6;margin:0 0 32px;}
.vt .vy-nl__form{display:flex;border-bottom:1px solid var(--vy-graphite);border-top:none;border-left:none;border-right:none;background:transparent;transition:border-color var(--t) ease;}
.vt .vy-nl__form:focus-within{border-bottom-color:var(--vy-gold);}
.vt .vy-nl__form input[type="email"]{flex:1;background:transparent !important;border:none !important;box-shadow:none !important;outline:none !important;color:var(--vy-cream) !important;padding:14px 0 !important;font-family:var(--ff-b) !important;font-size:15px !important;min-width:0;}
.vt .vy-nl__form input[type="email"]::placeholder{color:var(--vy-muted);}
.vt .vy-nl__form button{background:transparent !important;background-color:transparent !important;color:var(--vy-gold) !important;-webkit-text-fill-color:var(--vy-gold) !important;border:none !important;box-shadow:none !important;padding:14px 0 14px 12px !important;min-height:auto !important;font-size:12px !important;font-weight:500 !important;letter-spacing:.16em !important;text-transform:uppercase !important;border-radius:0 !important;}
.vt .vy-nl__form button:hover{color:var(--vy-cream) !important;-webkit-text-fill-color:var(--vy-cream) !important;background:transparent !important;}

/* ═════════════════════════════════════════════════════════════
   16. FOOTER
═════════════════════════════════════════════════════════════ */
.vt .vy-footer{background:var(--vy-ink);color:var(--vy-line);padding:96px 0 24px;}
.vt .vy-footer__grid{display:grid;grid-template-columns:1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid var(--vy-graphite);}
@media(min-width:600px){.vt .vy-footer__grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:900px){.vt .vy-footer__grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:64px;}}
.vt .vy-footer__logo{margin:0 0 16px;}
.vt .vy-footer__logo img{height:56px;width:auto;display:block;}
.vt .vy-footer__brand p{color:var(--vy-line);font-size:13px;line-height:1.7;max-width:36ch;margin:0 0 16px;}
.vt .vy-footer__social{display:flex;gap:8px;}
.vt .vy-footer__social a{width:40px;height:40px;border:1px solid var(--vy-graphite);display:grid;place-items:center;color:var(--vy-line);transition:all var(--t) ease;}
.vt .vy-footer__social a:hover{color:var(--vy-gold);border-color:var(--vy-gold);}
.vt .vy-footer__col h4{font-family:var(--ff-b);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--vy-gold);margin:0 0 16px;}
.vt .vy-footer__col ul{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0;padding:0;}
.vt .vy-footer__col a{color:var(--vy-line);font-size:13px;transition:color var(--t) ease;}
.vt .vy-footer__col a:hover{color:var(--vy-gold);}
.vt .vy-footer__bottom{padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--vy-muted);}
.vt .vy-footer__bottom a{color:var(--vy-gold);}
.vt .vy-footer__pay{display:flex;gap:8px;align-items:center;}

/* My account */
.vt .woocommerce-MyAccount-navigation{background:var(--vy-cream);padding:16px;}
.vt .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;}
.vt .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--vy-line);}
.vt .woocommerce-MyAccount-navigation li:last-child{border-bottom:none;}
.vt .woocommerce-MyAccount-navigation a{font-family:var(--ff-b);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--vy-ink);padding:16px 12px;display:block;}
.vt .woocommerce-MyAccount-navigation a:hover{color:var(--vy-gold);}

/* Ratings / stars */
.vt .star-rating{font-family:'star' !important;color:var(--vy-gold) !important;}
.vt .woocommerce-product-rating{margin-bottom:16px;}

/* ═════════════════════════════════════════════════════════════
   17. FIXES v5.1 — Side Cart XootiX + HUSKY + WC en inglés
═════════════════════════════════════════════════════════════ */

/* ── SIDE CART XOOTIX (drawer real) ── */
.xoo-wsc-modal,
.xoo-wsc-container {
    background: var(--vy-bone) !important;
    font-family: var(--ff-b) !important;
}

/* Header drawer */
.xoo-wsc-header {
    background: var(--vy-bone) !important;
    border-bottom: 1px solid var(--vy-line) !important;
    padding: 24px !important;
}
.xoo-wsc-cart-name {
    font-family: var(--ff-b) !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    color: var(--vy-ink) !important;
    letter-spacing: -.01em !important;
}
.xoo-wsc-cn-count {
    background: var(--vy-gold) !important;
    color: var(--vy-ink) !important;
    font-weight: 600 !important;
}
.xoo-wsc-close { color: var(--vy-ink) !important; }
.xoo-wsc-close:hover { color: var(--vy-gold) !important; }

/* Items del drawer */
.xoo-wsc-product {
    border-bottom: 1px solid var(--vy-line) !important;
    padding: 16px 24px !important;
    background: transparent !important;
}
.xoo-wsc-img-col img {
    width: 80px !important;
    height: 100px !important;
    object-fit: cover !important;
    background: var(--vy-cream) !important;
}
.xoo-wsc-product-name,
.xoo-wsc-product-name a {
    font-family: var(--ff-b) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    color: var(--vy-ink) !important;
    text-decoration: none !important;
}
.xoo-wsc-pcat,
.xoo-wsc-product-cat {
    font-size: 10px !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    color: var(--vy-muted) !important;
    margin-bottom: 4px !important;
    display: block;
}
.xoo-wsc-sub-total,
.xoo-wsc-price-curr,
.xoo-wsc-price-original {
    color: var(--vy-ink) !important;
    font-family: var(--ff-b) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}
.xoo-wsc-price-original {
    color: var(--vy-muted) !important;
    text-decoration: line-through !important;
    font-weight: 400 !important;
}

/* OCULTAR badge "SAVE $X" del Side Cart */
.xoo-wsc-save-amount,
.xoo-wsc-discount-amount,
.xoo-wsc-price-amount-saved { display: none !important; }

/* Qty controls del drawer */
.xoo-wsc-qty {
    display: inline-flex !important;
    border: 1px solid var(--vy-line) !important;
    border-radius: 0 !important;
}
.xoo-wsc-qty-btn,
.xoo-wsc-qb-minus,
.xoo-wsc-qb-plus {
    background: transparent !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
    border: none !important;
    width: 32px !important;
    height: 32px !important;
    font-size: 16px !important;
    padding: 0 !important;
    box-shadow: none !important;
    min-height: auto !important;
}
.xoo-wsc-qty-btn:hover { background: var(--vy-cream) !important; }
.xoo-wsc-qty input,
.xoo-wsc-qty-input {
    border: none !important;
    border-left: 1px solid var(--vy-line) !important;
    border-right: 1px solid var(--vy-line) !important;
    width: 40px !important;
    height: 32px !important;
    text-align: center !important;
    background: transparent !important;
    color: var(--vy-ink) !important;
    font-family: var(--ff-b) !important;
    font-size: 14px !important;
}

/* Botón eliminar (trash icon) */
.xoo-wsc-remove,
.xoo-wsc-icon-del {
    color: var(--vy-muted) !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer;
}
.xoo-wsc-remove:hover { color: var(--vy-error) !important; }

/* Footer drawer */
.xoo-wsc-footer {
    background: var(--vy-cream) !important;
    border-top: 1px solid var(--vy-line) !important;
    padding: 16px 24px !important;
}
.xoo-wsc-ft-totals,
.xoo-wsc-subtotal {
    font-family: var(--ff-b) !important;
    color: var(--vy-ink) !important;
}
.xoo-wsc-ft-amt-value,
.xoo-wsc-sum-total,
.xoo-wsc-subtotal .xoo-wsc-amt {
    color: var(--vy-gold) !important;
    font-weight: 600 !important;
    font-size: 20px !important;
    font-family: var(--ff-b) !important;
}

/* OCULTAR "Your savings on this order" verde */
.xoo-wsc-ft-discount-amount,
.xoo-wsc-savings-text,
[class*="savings"] { display: none !important; }

/* Botones del footer drawer — solo el principal grande */
.xoo-wsc-ft-buttons-cont,
.xoo-wsc-ft-btn-cont {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}
.xoo-wsc-ft-btn,
.xoo-wsc-btn,
a.xoo-wsc-ft-btn,
button.xoo-wsc-ft-btn,
.xoo-wsc-btn-checkout {
    background: var(--vy-ink) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-family: var(--ff-b) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    padding: 14px 24px !important;
    border: 1px solid var(--vy-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: center !important;
    text-decoration: none !important;
    display: block !important;
    width: 100% !important;
    min-height: 48px !important;
    line-height: 1.2 !important;
}
.xoo-wsc-ft-btn:hover,
.xoo-wsc-btn-checkout:hover {
    background: var(--vy-gold) !important;
    border-color: var(--vy-gold) !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
}

/* Botón "View Cart" como ghost / link sutil */
.xoo-wsc-btn-vc,
a.xoo-wsc-btn-vc {
    background: transparent !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
    border: 1px solid var(--vy-line) !important;
}
.xoo-wsc-btn-vc:hover {
    background: var(--vy-ink) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    border-color: var(--vy-ink) !important;
}

/* OCULTAR "Continue Shopping" — innecesario */
.xoo-wsc-btn-cs,
a.xoo-wsc-btn-cs { display: none !important; }

/* Cart icon flotante (botón redondo) — ocultar (ya tenemos el del header Blocksy) */
.xoo-wsc-cart-trigger,
.xoo-wsc-bki-icon-2,
.xoo-wsc-bki-cont { display: none !important; }

/* ── HUSKY FILTERS (no WOOF) ── */
.husky-filter,
.woof_redraw_zone,
.husky_redraw_zone {
    background: transparent !important;
}
.husky_container,
.woof_container {
    margin-bottom: 24px !important;
    border-bottom: 1px solid var(--vy-line) !important;
    padding-bottom: 16px !important;
}
.husky_container_inner > h4,
.husky_redraw_zone h4,
.woof_container_inner > h4 {
    font-family: var(--ff-b) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    color: var(--vy-ink) !important;
    margin-bottom: 12px !important;
    padding: 0 !important;
    background: transparent !important;
}
.husky_list li,
.husky_radio_term_li,
.husky_checkbox_term_li,
.woof_list li {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 14px !important;
    color: var(--vy-ink) !important;
    padding: 4px 0 !important;
    background: transparent !important;
}
.husky_list input[type="checkbox"],
.husky_list input[type="radio"],
.woof_list input { accent-color: var(--vy-gold) !important; }
.husky_show_button,
.woof_show_button {
    background: var(--vy-ink) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    border-radius: 0 !important;
    padding: 14px 24px !important;
    font-family: var(--ff-b) !important;
    font-size: 12px !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    border: none !important;
}

/* ── ARREGLAR PÁGINA CART: cuadros negros vacíos ── */
/* El botón "Remove" del carrito clásico tiene background ink pero sin contenido visible */
.vt .woocommerce-cart-form .product-remove a,
.vt .woocommerce-cart-form .product-remove .remove {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--vy-muted) !important;
    -webkit-text-fill-color: var(--vy-muted) !important;
    border: 1px solid var(--vy-line) !important;
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    line-height: 1 !important;
    padding: 0 !important;
    min-height: auto !important;
    border-radius: 0 !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}
.vt .woocommerce-cart-form .product-remove a:hover,
.vt .woocommerce-cart-form .product-remove .remove:hover {
    background: transparent !important;
    color: var(--vy-error) !important;
    -webkit-text-fill-color: var(--vy-error) !important;
    border-color: var(--vy-error) !important;
}
/* Si el remove está dentro del bloque carrito moderno */
.vt .wc-block-cart-item__remove-link {
    color: var(--vy-muted) !important;
    text-decoration: none !important;
    font-size: 11px !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}
.vt .wc-block-cart-item__remove-link:hover { color: var(--vy-error) !important; }

/* Ocultar "save" badge verde en carrito y checkout */
.vt .wc-block-components-sale-badge,
.vt .savings-badge,
.vt [class*="save-badge"] { display: none !important; }

/* ── TIENDA: reducir hero gigante de Blocksy ── */
.vt .woocommerce-products-header,
.vt .ct-page-hero-section {
    padding: 48px 0 !important;
    margin-bottom: 32px !important;
    min-height: auto !important;
}
.vt .ct-page-hero-section .entry-header,
.vt .ct-page-hero-section { background: var(--vy-cream) !important; }

/* Si la tienda muestra el page hero de Blocksy con altura excesiva */
.vt .archive .ct-page-hero-section,
.vt .post-type-archive-product .ct-page-hero-section {
    padding: 64px 0 !important;
    text-align: center !important;
}
.vt .archive .ct-page-hero-section .entry-title,
.vt .post-type-archive-product .entry-title {
    font-family: var(--ff-b) !important;
    font-size: 56px !important;
    font-weight: 700 !important;
    color: var(--vy-ink) !important;
}
@media(max-width:899px) {
    .vt .archive .ct-page-hero-section .entry-title { font-size: 42px !important; }
}

/* ── PÁGINA CART/CHECKOUT: títulos grandes display ── */
.vt .woocommerce-cart .entry-title,
.vt .woocommerce-checkout .entry-title,
.vt .page-title {
    font-family: var(--ff-b) !important;
    font-size: 48px !important;
    font-weight: 700 !important;
    color: var(--vy-ink) !important;
    letter-spacing: -.01em !important;
    margin-bottom: 32px !important;
}
@media(max-width:899px) {
    .vt .woocommerce-cart .entry-title,
    .vt .woocommerce-checkout .entry-title { font-size: 36px !important; }
}

/* ── Block Cart (Gutenberg moderno) — botones qty no negros ── */
.vt .wc-block-components-quantity-selector {
    border: 1px solid var(--vy-line) !important;
    background: transparent !important;
}
.vt .wc-block-components-quantity-selector__button,
.vt button.wc-block-components-quantity-selector__button {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
    border: none !important;
    box-shadow: none !important;
    width: 36px !important;
    height: 36px !important;
    min-height: auto !important;
    padding: 0 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
}

/* ── Variation Swatches (Emran Ahmed) — selectores exactos ── */
.vt .woo-variation-swatches .variable-items-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}
.vt .woo-variation-swatches .variable-item,
.vt .woo-variation-swatches.wvs-style-squared .variable-item,
.vt .woo-variation-swatches.wvs-style-rounded .variable-item {
    box-shadow: none !important;
    border: 2px solid var(--vy-line) !important;
    background: transparent !important;
}
.vt .woo-variation-swatches .variable-item.selected,
.vt .woo-variation-swatches .variable-item[aria-checked="true"] {
    border-color: var(--vy-gold) !important;
    box-shadow: 0 0 0 2px var(--vy-gold-s) !important;
}
.vt .woo-variation-swatches .button-variable-item {
    min-width: 56px !important;
    height: 44px !important;
    padding: 8px 16px !important;
    font-family: var(--ff-b) !important;
    font-size: 13px !important;
    color: var(--vy-ink) !important;
    background: transparent !important;
    border: 1px solid var(--vy-line) !important;
}
.vt .woo-variation-swatches .button-variable-item.selected {
    background: var(--vy-ink) !important;
    color: #FFF !important;
    border-color: var(--vy-ink) !important;
}
.vt .woo-variation-swatches .color-variable-item {
    width: 40px !important;
    height: 40px !important;
    border-radius: 50% !important;
}

/* ── Iconos header — asegurar visibles ── */
.vt .ct-header [data-id="account"],
.vt .ct-header [data-id="cart"] {
    color: var(--vy-ink) !important;
}
.vt .ct-header [data-id="account"] svg,
.vt .ct-header [data-id="cart"] svg {
    color: var(--vy-ink) !important;
    fill: var(--vy-ink) !important;
}
.vt .ct-header .ct-cart-item { display: flex !important; align-items: center; }

/* ═════════════════════════════════════════════════════════════
   18. FIXES v5.2 — Drawer, Cart, Shop hero, Producto
═════════════════════════════════════════════════════════════ */

/* FIX 1: Drawer XootiX — ocultar texto largo "shipping taxes" y mostrar shipping bar */
.xoo-wsc-checkout-msg,
.xoo-wsc-sub-total-row + p
 {
    display: none !important;
}
/* Mostrar nuestra shipping progress dentro del drawer via JS inyectado */
.xoo-wsc-footer .vy-ship-drawer {
    background: transparent !important;
    padding: 12px 0 !important;
    margin: 0 0 16px !important;
    border-left: 3px solid var(--vy-gold);
    padding-left: 16px !important;
    font-size: 13px;
    color: var(--vy-graphite);
}
.xoo-wsc-footer .vy-ship-drawer p { font-size: 13px; margin: 0 0 8px; color: var(--vy-graphite); }
.xoo-wsc-footer .vy-ship-drawer strong { color: var(--vy-gold); font-weight: 600; }
.xoo-wsc-footer .vy-ship-drawer__bar { background: var(--vy-line); height: 3px; overflow: hidden; }
.xoo-wsc-footer .vy-ship-drawer__fill { background: var(--vy-gold); height: 100%; transition: width .6s ease; }

/* FIX 2: Cart page — cuadros negros = botón "Remove" sin contenido visible */
/* En WC 10.7 con tabla clásica el remove tiene clase .product-remove */
.vt .woocommerce-cart-form .product-remove,
.vt .cart .product-remove {
    width: 50px !important;
    text-align: center !important;
}
.vt .woocommerce-cart-form .product-remove a.remove,
.vt .cart .product-remove a.remove {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--vy-muted) !important;
    -webkit-text-fill-color: var(--vy-muted) !important;
    border: 1px solid var(--vy-line) !important;
    border-radius: 0 !important;
    width: 36px !important;
    height: 36px !important;
    line-height: 32px !important;
    font-size: 18px !important;
    padding: 0 !important;
    min-height: auto !important;
    box-shadow: none !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
}
.vt .woocommerce-cart-form .product-remove a.remove:hover,
.vt .cart .product-remove a.remove:hover {
    background: transparent !important;
    color: var(--vy-error) !important;
    -webkit-text-fill-color: var(--vy-error) !important;
    border-color: var(--vy-error) !important;
}

/* En carrito Gutenberg moderno (bloque), el botón remove también puede ser negro */
.vt .wc-block-cart-item__remove-link,
.vt button.wc-block-cart-item__remove-link {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--vy-muted) !important;
    -webkit-text-fill-color: var(--vy-muted) !important;
    border: none !important;
    text-decoration: underline !important;
    font-size: 11px !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    padding: 4px 0 !important;
    min-height: auto !important;
    box-shadow: none !important;
}
.vt .wc-block-cart-item__remove-link:hover { color: var(--vy-error) !important; }

/* Algunos temas/plugins pintan el remove como botón cuadrado negro */
.vt td.product-remove a,
.vt .product-thumbnail + .product-remove,
.vt .cart_item .product-remove a {
    background: transparent !important;
}

/* FIX 3: SHOP — quitar hero gigante "Shop", ocultar título genérico */
.vt .post-type-archive-product .ct-page-hero-section,
.vt .post-type-archive-product .entry-header,
.vt .post-type-archive-product .page-title,
.vt .post-type-archive-product .woocommerce-products-header,
.vt .tax-product_cat .ct-page-hero-section,
.vt .tax-product_cat .entry-header {
    display: none !important;
}

/* Reemplazar con header minimalista usando breadcrumb + título inline pequeño */
.vt .post-type-archive-product .ct-container,
.vt .tax-product_cat .ct-container {
    padding-top: 32px !important;
}

/* Si quieren mostrar el título "Tienda" pequeño arriba del grid */
.vt .post-type-archive-product .woo-listing-top,
.vt .tax-product_cat .woo-listing-top {
    padding-top: 16px !important;
    border-top: none !important;
}

/* FIX 4: PRODUCTO — replicar layout del prototipo */
/* Galería con borde y aspect ratio */
.vt .single-product .woocommerce-product-gallery {
    background: var(--vy-cream) !important;
    border: 1px solid var(--vy-line) !important;
}
.vt .single-product .woocommerce-product-gallery__image {
    aspect-ratio: 1/1 !important;
    overflow: hidden !important;
    background: var(--vy-cream) !important;
}
.vt .single-product .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Breadcrumb arriba de producto */
.vt .single-product .ct-breadcrumbs,
.vt .single-product .woocommerce-breadcrumb {
    padding: 24px var(--g) 0 !important;
    margin-bottom: 16px !important;
    max-width: 100% !important;
}

/* Summary: meta superior antes del título (categoría + colección) */
.vt .single-product .product_meta,
.vt .single-product .entry-summary .product_meta {
    font-size: 11px !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    color: var(--vy-muted) !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 0 16px !important;
    order: -10;
}
.vt .single-product .product_meta a {
    color: var(--vy-muted) !important;
    text-decoration: none !important;
}
.vt .single-product .product_meta .sku_wrapper,
.vt .single-product .product_meta .tagged_as { display: none !important; }

/* Título grande */
.vt .single-product .product_title {
    font-size: 48px !important;
    margin: 0 0 24px !important;
    line-height: 1 !important;
}
@media(max-width:899px){.vt .single-product .product_title{font-size:36px !important;}}

/* Precio con badge ahorro */
.vt .single-product .summary > .price,
.vt .single-product .entry-summary-items > .price {
    border-top: 1px solid var(--vy-line) !important;
    border-bottom: 1px solid var(--vy-line) !important;
    padding: 20px 0 !important;
    margin: 0 0 24px !important;
    font-size: 32px !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    flex-wrap: wrap;
}
.vt .single-product .price .woocommerce-Price-amount,
.vt .single-product .price ins .woocommerce-Price-amount {
    color: var(--vy-gold) !important;
    font-weight: 600 !important;
    font-size: 32px !important;
}
.vt .single-product .price del .woocommerce-Price-amount {
    color: var(--vy-muted) !important;
    font-weight: 400 !important;
    font-size: 20px !important;
}

/* Descripción corta */
.vt .single-product .woocommerce-product-details__short-description,
.vt .single-product .entry-summary > p,
.vt .single-product .entry-summary-items > .ct-product-divider + div p {
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: var(--vy-graphite) !important;
    margin: 0 0 24px !important;
    padding-bottom: 24px !important;
    border-bottom: 1px solid var(--vy-line) !important;
}

/* Cart form con qty + add-to-cart en línea */
.vt .single-product form.cart {
    display: flex !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    margin: 24px 0 !important;
}
.vt .single-product .quantity {
    border: 1px solid var(--vy-ink) !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 56px !important;
}
.vt .single-product .quantity input.qty {
    width: 56px !important;
    height: 54px !important;
    text-align: center !important;
    border: none !important;
    background: transparent !important;
    color: var(--vy-ink) !important;
    font-size: 15px !important;
    font-family: var(--ff-b) !important;
    padding: 0 !important;
}
/* Botones +/- de Blocksy en quantity */
.vt .single-product .quantity .ct-increase,
.vt .single-product .quantity .ct-decrease {
    width: 40px !important;
    height: 54px !important;
    border: none !important;
    background: transparent !important;
    color: var(--vy-ink) !important;
    cursor: pointer;
    font-size: 18px;
}
.vt .single-product .quantity .ct-increase:hover,
.vt .single-product .quantity .ct-decrease:hover { background: var(--vy-cream) !important; }
.vt .single-product .single_add_to_cart_button {
    flex: 1 1 280px !important;
    min-height: 56px !important;
    padding: 16px 32px !important;
    font-size: 12px !important;
}

/* Trust signals igual al prototipo - 2x2 grid con border-left dorado */
.vt .vy-trust {
    background: var(--vy-cream) !important;
    padding: 24px !important;
    margin: 24px 0 !important;
    border: 1px solid var(--vy-line) !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
}
@media(max-width:599px){.vt .vy-trust{grid-template-columns: 1fr !important;}}

/* Meta inferior (SKU, Category, Tags) */
.vt .single-product .product_meta {
    border-top: 1px solid var(--vy-line) !important;
    padding-top: 16px !important;
    margin-top: 24px !important;
}

/* Productos relacionados / upsells */
.vt .related.products,
.vt .upsells.products {
    margin-top: 96px !important;
    padding: 0 var(--g) 96px !important;
    grid-column: 1 / -1 !important;
}
.vt .related.products > h2,
.vt .upsells.products > h2 {
    text-align: center !important;
    font-family: var(--ff-b) !important;
    font-size: 42px !important;
    font-weight: 400 !important;
    color: var(--vy-ink) !important;
    margin-bottom: 48px !important;
}
@media(min-width:900px){.vt .related.products > h2{font-size:56px !important;}}

/* Layout grid producto - asegurar el padding y gap correctos */
.vt .single-product.woocommerce {
    padding-top: 0 !important;
}
.vt .single-product div.product {
    padding: 32px var(--g) 64px !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
}

/* ═════════════════════════════════════════════════════════════
   19. FIXES v5.3 — Cuadros negros + Drawer ship bar
═════════════════════════════════════════════════════════════ */

/* FIX: cuadro negro al lado del qty selector — es el botón "Update cart" / "Actualizar carrito" */
.vt .woocommerce-cart-form button[name="update_cart"],
.vt .woocommerce-cart-form input[name="update_cart"],
.vt button[name="update_cart"] {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
    border: 1px solid var(--vy-line) !important;
    font-family: var(--ff-b) !important;
    font-size: 11px !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    padding: 10px 16px !important;
    min-height: 36px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.vt button[name="update_cart"]:hover {
    background: var(--vy-ink) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* Cualquier botón vacío genérico que se vea cuadrado negro en cart o checkout */
.vt .woocommerce-cart-form td.actions button.button,
.vt .woocommerce-cart-form td.actions input.button {
    background: transparent !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
    border: 1px solid var(--vy-line) !important;
    margin-left: 8px !important;
}
.vt .woocommerce-cart-form td.actions button.button:hover {
    background: var(--vy-ink) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* Si el cuadro negro es el "Apply coupon" en cart */
.vt .coupon button[name="apply_coupon"] {
    background: transparent !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
    border: 1px solid var(--vy-ink) !important;
}
.vt .coupon button[name="apply_coupon"]:hover {
    background: var(--vy-ink) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* En checkout — el cuadrito junto al item del order_review puede ser un thumb */
.vt .wp-block-woocommerce-checkout .wc-block-cart-item__image,
.vt .wp-block-woocommerce-checkout img {
    background: transparent !important;
}

/* Si hay un botón sin texto (vacío) en el cart, ocultarlo */
.vt .woocommerce-cart-form button:empty,
.vt .woocommerce-cart-form a.button:empty,
.vt button[name="update_cart"]:empty::before {
    content: "Actualizar";
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
}

/* Drawer XootiX — barra envío gratis inyectada por JS */
.xoo-wsc-footer .vy-ship-drawer {
    background: transparent !important;
    padding: 12px 16px !important;
    margin: 0 0 12px !important;
    border-left: 3px solid var(--vy-gold);
    font-size: 13px;
    color: var(--vy-graphite);
    order: -1 !important;
}
.xoo-wsc-footer { display: flex !important; flex-direction: column !important; }
.xoo-wsc-footer .vy-ship-drawer p {
    font-size: 13px !important;
    margin: 0 0 8px !important;
    color: var(--vy-graphite) !important;
    line-height: 1.4 !important;
}
.xoo-wsc-footer .vy-ship-drawer strong {
    color: var(--vy-gold) !important;
    font-weight: 600 !important;
}
.xoo-wsc-footer .vy-ship-drawer__bar {
    background: var(--vy-line) !important;
    height: 3px !important;
    overflow: hidden !important;
    width: 100% !important;
    border-radius: 0 !important;
}
.xoo-wsc-footer .vy-ship-drawer__fill {
    background: var(--vy-gold) !important;
    height: 100% !important;
    transition: width .6s ease !important;
}

/* ═════════════════════════════════════════════════════════════
   20. FIXES v5.4 — Home Inicio header / Shop hero / Drawer / Cart
═════════════════════════════════════════════════════════════ */

/* FIX 1: HOME - eliminar el bloque "Inicio" arriba del hero */
.vt.page-template-default .ct-page-hero-section,
.vt.home .ct-page-hero-section,
.vt .single-page .ct-page-hero-section,
.vt body.page .ct-page-hero-section { display: none !important; }

/* Específicamente en la home: ocultar entry-header del page */
.vt.home .entry-header,
.vt.home > main > article > .entry-header,
.vt.home article.page > .entry-header,
.vt.page-id-* .entry-header.page-title { display: none !important; }

/* Eliminar TODO el page hero section en cualquier página */
.vt .ct-page-hero-section,
.vt .hero-section,
.vt section.hero-section { display: none !important; }

/* Padding del contenido en home: cero arriba */
.vt.home main#main,
.vt.home .ct-main-content-wrap,
.vt.home article.page,
.vt.home .entry-content { padding-top: 0 !important; margin-top: 0 !important; }

/* FIX 2: TIENDA - eliminar woocommerce-products-header completamente */
.vt .woocommerce-products-header,
.vt .post-type-archive-product .woocommerce-products-header,
.vt body.post-type-archive-product .ct-page-hero-section,
.vt body.tax-product_cat .ct-page-hero-section,
.vt .archive .woocommerce-products-header,
.vt .archive.post-type-archive .ct-page-hero-section { display: none !important; }

/* Padding correcto en tienda sin hero */
.vt .post-type-archive-product main,
.vt .post-type-archive-product .ct-container { padding-top: 32px !important; }

/* FIX 3: DRAWER XootiX - clonar prototipo exacto */
.xoo-wsc-modal,
.xoo-wsc-container { background: var(--vy-bone) !important; }

.xoo-wsc-cart-name {
    font-family: var(--ff-b) !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    color: var(--vy-ink) !important;
}

/* Ocultar el mensaje genérico de shipping/taxes */
.xoo-wsc-checkout-msg,
.xoo-wsc-checkout-text,
.xoo-wsc-info-msg,
.xoo-wsc-tax-text,
.xoo-wsc-shipping-text,
.xoo-wsc-footer p:not(.xoo-wsc-ft-amt):not(.vy-ship-drawer p),
.xoo-wsc-footer > p,
.xoo-wsc-footer > div > p:not(.vy-ship-drawer p),
.xoo-wsc-footer .xoo-wsc-text-info {
    display: none !important;
}



/* Footer drawer */
.xoo-wsc-footer {
    background: var(--vy-cream) !important;
    border-top: 1px solid var(--vy-line) !important;
    padding: 20px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

/* Barra de envío PRIMERO */
.xoo-wsc-footer .vy-ship-drawer {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 0 4px !important;
    border: none !important;
    order: -10 !important;
}
.xoo-wsc-footer .vy-ship-drawer p {
    font-family: var(--ff-b) !important;
    font-size: 16px !important;
    color: var(--vy-ink) !important;
    margin: 0 0 8px !important;
    text-align: left !important;
}
.xoo-wsc-footer .vy-ship-drawer strong {
    color: var(--vy-gold) !important;
    font-weight: 600 !important;
    font-family: var(--ff-b) !important;
}
.xoo-wsc-footer .vy-ship-drawer__bar {
    background: rgba(229, 223, 208, .6) !important;
    height: 4px !important;
    overflow: hidden !important;
    width: 100% !important;
    margin-bottom: 4px;
}
.xoo-wsc-footer .vy-ship-drawer__fill {
    background: linear-gradient(90deg, var(--vy-gold) 0%, var(--vy-gold-s) 100%) !important;
    height: 100% !important;
}

/* Subtotal */
.xoo-wsc-sub-total-row,
.xoo-wsc-ft-amt {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-family: var(--ff-b) !important;
    font-size: 18px !important;
    color: var(--vy-ink) !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    border: none !important;
    order: 0 !important;
}
.xoo-wsc-sum-total,
.xoo-wsc-ft-amt-value,
.xoo-wsc-sub-total .xoo-wsc-amt,
.xoo-wsc-sub-total-row .amount {
    color: var(--vy-gold) !important;
    font-weight: 600 !important;
    font-size: 20px !important;
    font-family: var(--ff-b) !important;
}

/* Botones del drawer */
.xoo-wsc-ft-buttons-cont,
.xoo-wsc-ft-btn-cont {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin-top: 8px !important;
    order: 1 !important;
}



/* Botón View cart secundario - ghost */
.xoo-wsc-btn-vc,
a.xoo-wsc-btn-vc {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
    border: 1px solid var(--vy-ink) !important;
    font-family: var(--ff-b) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    padding: 12px 24px !important;
    text-align: center !important;
    text-decoration: none !important;
    display: block !important;
    width: 100% !important;
    min-height: 44px !important;
    border-radius: 0 !important;
    order: 2 !important;
}
.xoo-wsc-btn-vc:hover {
    background: var(--vy-ink) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* OCULTAR continue shopping (innecesario, ya tiene el close) */
.xoo-wsc-btn-cs,
a.xoo-wsc-btn-cs { display: none !important; }

/* FIX 4: CART PAGE - layout estilo "Aliquam Ododiam" pero con paleta Virelly */
.vt .woocommerce-cart {
    background: var(--vy-bone);
}

.vt .woocommerce-cart .woocommerce {
    display: grid !important;
    grid-template-columns: 1fr 380px !important;
    gap: 48px !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 48px var(--g) !important;
    align-items: start;
}
@media(max-width: 999px) {
    .vt .woocommerce-cart .woocommerce {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
        padding: 24px var(--g) !important;
    }
}

/* Form ocupa columna izquierda */
.vt .woocommerce-cart-form { width: 100% !important; }

/* Tabla del carrito - estilo limpio */
.vt .woocommerce-cart table.cart {
    width: 100% !important;
    border-collapse: collapse !important;
    background: transparent !important;
}
.vt .woocommerce-cart table.cart thead {
    background: transparent !important;
    border-bottom: 1px solid var(--vy-line) !important;
}
.vt .woocommerce-cart table.cart thead th {
    font-family: var(--ff-b) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: var(--vy-graphite) !important;
    background: transparent !important;
    border: none !important;
    padding: 16px 12px !important;
    text-align: left !important;
}
.vt .woocommerce-cart table.cart thead th.product-quantity { text-align: center !important; }
.vt .woocommerce-cart table.cart thead th.product-subtotal,
.vt .woocommerce-cart table.cart thead th.product-price { text-align: right !important; }

/* Filas del carrito */
.vt .woocommerce-cart table.cart .cart_item {
    background: transparent !important;
    border-bottom: 1px solid var(--vy-line) !important;
}
.vt .woocommerce-cart table.cart .cart_item td {
    background: transparent !important;
    border: none !important;
    padding: 20px 12px !important;
    vertical-align: middle !important;
}

/* Thumbnail producto */
.vt .woocommerce-cart .product-thumbnail {
    width: 100px !important;
    padding-left: 0 !important;
}
.vt .woocommerce-cart .product-thumbnail img {
    width: 80px !important;
    height: 80px !important;
    object-fit: cover !important;
    background: var(--vy-cream) !important;
    border-radius: 4px !important;
}

/* Nombre + precio juntos en columna producto */
.vt .woocommerce-cart .product-name {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.vt .woocommerce-cart .product-name a {
    font-family: var(--ff-b) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: var(--vy-ink) !important;
    text-decoration: none !important;
}
.vt .woocommerce-cart .product-name a:hover { color: var(--vy-gold) !important; }
.vt .woocommerce-cart .product-name .price-mobile,
.vt .woocommerce-cart .product-name .variation { font-size: 13px; color: var(--vy-graphite); }

/* Precio columna - oculto en mobile (mostrar en product-name) */
.vt .woocommerce-cart .product-price {
    text-align: right !important;
    font-family: var(--ff-b) !important;
    font-size: 14px !important;
    color: var(--vy-ink) !important;
}

/* Qty selector estilo prototipo - borde gris claro, +/- pequeños */
.vt .woocommerce-cart .product-quantity {
    text-align: center !important;
    width: 140px;
}
.vt .woocommerce-cart .quantity {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid var(--vy-line) !important;
    background: #fff !important;
    border-radius: 4px !important;
    overflow: hidden;
    height: 40px !important;
}
.vt .woocommerce-cart .quantity input.qty {
    width: 48px !important;
    height: 38px !important;
    text-align: center !important;
    border: none !important;
    border-left: 1px solid var(--vy-line) !important;
    border-right: 1px solid var(--vy-line) !important;
    background: transparent !important;
    color: var(--vy-ink) !important;
    font-family: var(--ff-b) !important;
    font-size: 14px !important;
    padding: 0 !important;
    -moz-appearance: textfield;
}
.vt .woocommerce-cart .quantity input.qty::-webkit-inner-spin-button,
.vt .woocommerce-cart .quantity input.qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
/* Blocksy genera botones .ct-increase / .ct-decrease */
.vt .woocommerce-cart .quantity .ct-increase,
.vt .woocommerce-cart .quantity .ct-decrease,
.vt .woocommerce-cart .quantity button {
    width: 36px !important;
    height: 38px !important;
    background: transparent !important;
    border: none !important;
    color: var(--vy-graphite) !important;
    -webkit-text-fill-color: var(--vy-graphite) !important;
    cursor: pointer;
    font-size: 16px !important;
    font-weight: 400 !important;
    padding: 0 !important;
    min-height: auto !important;
    box-shadow: none !important;
}
.vt .woocommerce-cart .quantity .ct-increase:hover,
.vt .woocommerce-cart .quantity .ct-decrease:hover { background: var(--vy-cream) !important; color: var(--vy-ink) !important; }

/* Subtotal columna */
.vt .woocommerce-cart .product-subtotal {
    text-align: right !important;
    font-family: var(--ff-b) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: var(--vy-ink) !important;
}

/* Botón eliminar trash icon */
.vt .woocommerce-cart .product-remove {
    width: 40px !important;
    padding-right: 0 !important;
    text-align: right !important;
}
.vt .woocommerce-cart .product-remove a.remove {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--vy-muted) !important;
    -webkit-text-fill-color: transparent !important;
    border: none !important;
    width: 32px !important;
    height: 32px !important;
    line-height: 1 !important;
    font-size: 0 !important;
    padding: 0 !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative;
}
.vt .woocommerce-cart .product-remove a.remove::before {
    content: '';
    width: 18px;
    height: 18px;
    background: currentColor;
    color: var(--vy-muted);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.8'%3E%3Cpolyline points='3 6 5 6 21 6'/%3E%3Cpath d='M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6'/%3E%3Cpath d='M10 11v6'/%3E%3Cpath d='M14 11v6'/%3E%3Cpath d='M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.8'%3E%3Cpolyline points='3 6 5 6 21 6'/%3E%3Cpath d='M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6'/%3E%3Cpath d='M10 11v6'/%3E%3Cpath d='M14 11v6'/%3E%3Cpath d='M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2'/%3E%3C/svg%3E") center/contain no-repeat;
}
.vt .woocommerce-cart .product-remove a.remove:hover::before { color: var(--vy-error); }

/* Fila Acciones (coupon + update) */
.vt .woocommerce-cart table.cart tr.actions {
    border-bottom: none !important;
}
.vt .woocommerce-cart table.cart tr.actions td {
    padding: 32px 0 0 !important;
}
.vt .woocommerce-cart .coupon {
    display: inline-flex;
    gap: 0;
    align-items: stretch;
}
.vt .woocommerce-cart .coupon input[name="coupon_code"] {
    border: 1px solid var(--vy-line) !important;
    border-right: none !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    height: 44px !important;
    background: #fff !important;
    border-radius: 4px 0 0 4px !important;
    min-width: 180px;
}
.vt .woocommerce-cart .coupon button[name="apply_coupon"] {
    background: var(--vy-ink) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border: 1px solid var(--vy-ink) !important;
    padding: 12px 24px !important;
    height: 44px !important;
    min-height: 44px !important;
    border-radius: 0 4px 4px 0 !important;
    font-size: 11px !important;
    letter-spacing: .14em !important;
    margin: 0 !important;
}

/* Botón Update cart - ghost a la derecha */
.vt .woocommerce-cart button[name="update_cart"],
.vt .woocommerce-cart input[name="update_cart"] {
    float: right;
    background: var(--vy-cream) !important;
    color: var(--vy-graphite) !important;
    -webkit-text-fill-color: var(--vy-graphite) !important;
    border: 1px solid var(--vy-line) !important;
    padding: 12px 24px !important;
    font-size: 11px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    min-height: 44px !important;
    height: 44px !important;
    border-radius: 4px !important;
    cursor: pointer;
    box-shadow: none !important;
}
.vt .woocommerce-cart button[name="update_cart"]:hover {
    background: var(--vy-line) !important;
    color: var(--vy-ink) !important;
}
.vt .woocommerce-cart button[name="update_cart"][disabled] {
    opacity: .5;
    cursor: not-allowed;
}

/* Cart totals - panel derecho con borde */
.vt .woocommerce-cart .cart_totals,
.vt .woocommerce-cart .cart-collaterals .cart_totals {
    background: #fff !important;
    border: 1px solid var(--vy-line) !important;
    padding: 28px !important;
    border-radius: 8px !important;
    width: 100% !important;
    float: none !important;
    position: sticky;
    top: 100px;
}
.vt .woocommerce-cart .cart_totals h2 {
    font-family: var(--ff-b) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    color: var(--vy-ink) !important;
    margin: 0 0 20px !important;
    padding-bottom: 0 !important;
    border: none !important;
}
.vt .woocommerce-cart .cart_totals table {
    width: 100% !important;
    border-collapse: collapse !important;
}
.vt .woocommerce-cart .cart_totals table th,
.vt .woocommerce-cart .cart_totals table td {
    padding: 12px 0 !important;
    border-bottom: 1px solid var(--vy-line) !important;
    background: transparent !important;
    font-size: 14px !important;
    color: var(--vy-ink) !important;
}
.vt .woocommerce-cart .cart_totals table th {
    font-family: var(--ff-b) !important;
    font-weight: 500 !important;
    text-align: left !important;
}
.vt .woocommerce-cart .cart_totals table td {
    text-align: right !important;
    font-weight: 500 !important;
}
.vt .woocommerce-cart .cart_totals .order-total th {
    font-family: var(--ff-b) !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    border-bottom: none !important;
    padding-top: 16px !important;
}
.vt .woocommerce-cart .cart_totals .order-total td {
    font-family: var(--ff-b) !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    color: var(--vy-gold) !important;
    border-bottom: none !important;
    padding-top: 16px !important;
}
.vt .woocommerce-cart .cart_totals .order-total .woocommerce-Price-amount {
    color: var(--vy-gold) !important;
    font-weight: 600 !important;
}

/* Botón Proceder al checkout - grande negro */
.vt .woocommerce-cart .wc-proceed-to-checkout {
    padding: 24px 0 0 !important;
    margin: 0 !important;
}
.vt .woocommerce-cart .checkout-button {
    width: 100% !important;
    background: var(--vy-ink) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border: 1px solid var(--vy-ink) !important;
    padding: 16px 24px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    text-decoration: none !important;
    display: block !important;
    min-height: 52px !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    line-height: 1.2 !important;
}
.vt .woocommerce-cart .checkout-button:hover {
    background: var(--vy-gold) !important;
    border-color: var(--vy-gold) !important;
    color: var(--vy-ink) !important;
    -webkit-text-fill-color: var(--vy-ink) !important;
}

/* Mensaje envío gratis arriba del cart */
.vt .woocommerce-cart .vy-ship {
    background: #fff !important;
    border: 1px solid var(--vy-line) !important;
    border-left: 3px solid var(--vy-gold) !important;
    padding: 16px 20px !important;
    margin-bottom: 24px !important;
    border-radius: 4px !important;
}
.vt .woocommerce-cart .vy-ship p {
    font-family: var(--ff-b) !important;
    font-size: 14px !important;
    color: var(--vy-graphite) !important;
}

/* Responsive cart */
@media(max-width: 768px) {
    /* En mobile, tabla a layout vertical card */
    .vt .woocommerce-cart table.cart thead { display: none !important; }
    .vt .woocommerce-cart table.cart .cart_item {
        display: grid !important;
        grid-template-columns: 80px 1fr auto !important;
        gap: 12px !important;
        padding: 16px 0 !important;
        border-bottom: 1px solid var(--vy-line) !important;
    }
    .vt .woocommerce-cart table.cart .cart_item td {
        display: contents !important;
        padding: 0 !important;
    }
    .vt .woocommerce-cart .product-thumbnail { grid-row: span 3; }
    .vt .woocommerce-cart .product-thumbnail img { width: 80px !important; height: 80px !important; }
    .vt .woocommerce-cart .product-name { grid-column: 2 / 3; grid-row: 1; }
    .vt .woocommerce-cart .product-price { grid-column: 2 / 3; grid-row: 2; text-align: left !important; font-size: 13px !important; }
    .vt .woocommerce-cart .product-quantity { grid-column: 2 / 3; grid-row: 3; text-align: left !important; }
    .vt .woocommerce-cart .product-subtotal { grid-column: 3 / 4; grid-row: 1; text-align: right !important; }
    .vt .woocommerce-cart .product-remove { grid-column: 3 / 4; grid-row: 3; text-align: right !important; }

    .vt .woocommerce-cart .coupon { flex-direction: column; width: 100%; }
    .vt .woocommerce-cart .coupon input[name="coupon_code"] {
        border-right: 1px solid var(--vy-line) !important;
        border-radius: 4px !important;
        width: 100%;
    }
    .vt .woocommerce-cart .coupon button[name="apply_coupon"] {
        border-radius: 4px !important;
        width: 100%;
        margin-top: 8px !important;
    }
    .vt .woocommerce-cart button[name="update_cart"] { float: none; width: 100%; margin-top: 12px !important; }

    .vt .woocommerce-cart .cart_totals { position: static; }
}

/* ═════════════════════════════════════════════════════════════
   21. v5.5 — CART + DRAWER ESTILO REFERENCIA (paleta Virelly)
═════════════════════════════════════════════════════════════ */

/* FIX 1: ocultar título "Inicio" en la home — refuerzo CSS */
.vt.home .entry-title,
.vt.home h1.page-title,
.vt.home article.page > header,
.vt.home article.page > .entry-header,
.vt.home .ct-page-hero-section,
body.home .entry-title { display: none !important; }

/* ═════════════════════════════════════════
   PÁGINA CART — estilo referencia exacta
═════════════════════════════════════════ */
.vt .woocommerce-cart {
    background: var(--vy-bone) !important;
}

/* Título "Cart" o "Carrito" — grande bold */
.vt .woocommerce-cart .entry-title,
.vt .woocommerce-cart .page-title,
.vt .woocommerce-cart h1 {
    font-family: var(--ff-b) !important;
    font-size: 36px !important;
    font-weight: 700 !important;
    color: var(--vy-ink) !important;
    letter-spacing: -.01em !important;
    margin: 0 0 32px !important;
    text-transform: none !important;
    line-height: 1.2 !important;
}
@media(max-width: 768px) {
    .vt .woocommerce-cart .entry-title,
    .vt .woocommerce-cart h1 { font-size: 28px !important; }
}

/* Layout 2 columnas */
.vt .woocommerce-cart .woocommerce {
    display: grid !important;
    grid-template-columns: 1fr 380px !important;
    gap: 48px !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 32px var(--g) 64px !important;
    align-items: start !important;
}
@media(max-width: 999px) {
    .vt .woocommerce-cart .woocommerce {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
}
.vt .woocommerce-cart-form { width: 100% !important; min-width: 0 !important; }

/* Tabla carrito limpia */
.vt .woocommerce-cart table.cart,
.vt .woocommerce-cart .shop_table {
    width: 100% !important;
    border-collapse: collapse !important;
    background: transparent !important;
    border: none !important;
}
.vt .woocommerce-cart table.cart thead {
    background: transparent !important;
    border-bottom: 1px solid var(--vy-line) !important;
}
.vt .woocommerce-cart table.cart thead th {
    font-family: var(--ff-b) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: var(--vy-ink) !important;
    background: transparent !important;
    border: none !important;
    padding: 16px 12px !important;
    text-align: left !important;
}
.vt .woocommerce-cart table.cart thead th.product-quantity { text-align: center !important; }
.vt .woocommerce-cart table.cart thead th.product-subtotal,
.vt .woocommerce-cart table.cart thead th.product-price { text-align: right !important; }

/* Ocultar el header "Price" si Blocksy lo tiene separado del nombre */
.vt .woocommerce-cart table.cart thead th.product-price { display: none !important; }
.vt .woocommerce-cart table.cart .cart_item td.product-price { display: none !important; }

/* Filas */
.vt .woocommerce-cart table.cart .cart_item {
    background: transparent !important;
    border-bottom: 1px solid var(--vy-line) !important;
}
.vt .woocommerce-cart table.cart .cart_item td {
    background: transparent !important;
    border: none !important;
    padding: 24px 12px !important;
    vertical-align: middle !important;
}

/* Thumbnail */
.vt .woocommerce-cart .product-thumbnail {
    width: 100px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.vt .woocommerce-cart .product-thumbnail img {
    width: 80px !important;
    height: 80px !important;
    object-fit: cover !important;
    background: var(--vy-cream) !important;
    border-radius: 4px !important;
}

/* Nombre del producto */
.vt .woocommerce-cart .product-name a {
    font-family: var(--ff-b) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--vy-ink) !important;
    text-decoration: none !important;
    display: block;
    margin-bottom: 4px;
}
.vt .woocommerce-cart .product-name a:hover { color: var(--vy-gold) !important; }

/* Precio debajo del nombre (mobile y desktop) */
.vt .woocommerce-cart .product-name .price-mobile,
.vt .woocommerce-cart .product-name > div.amount,
.vt .woocommerce-cart .product-name > span:not(.variation) {
    font-family: var(--ff-b) !important;
    font-size: 14px !important;
    color: var(--vy-graphite) !important;
    font-weight: 500 !important;
}

/* Inyectar precio en mobile via CSS */
@media(max-width: 768px) {
    .vt .woocommerce-cart .product-price { display: none !important; }
}

/* Quantity selector — ESTILO REFERENCIA */
.vt .woocommerce-cart .product-quantity {
    text-align: center !important;
    width: 140px !important;
    padding: 24px 8px !important;
}
.vt .woocommerce-cart .quantity {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid var(--vy-line) !important;
    background: #FFFFFF !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    height: 38px !important;
}
.vt .woocommerce-cart .quantity input.qty {
    width: 44px !important;
    height: 36px !important;
    text-align: center !important;
    border: none !important;
    border-left: 1px solid var(--vy-line) !important;
    border-right: 1px solid var(--vy-line) !important;
    background: transparent !important;
    color: var(--vy-ink) !important;
    font-family: var(--ff-b) !important;
    font-size: 14px !important;
    padding: 0 !important;
    -moz-appearance: textfield;
}
.vt .woocommerce-cart .quantity input.qty::-webkit-inner-spin-button,
.vt .woocommerce-cart .quantity input.qty::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}
.vt .woocommerce-cart .quantity .ct-increase,
.vt .woocommerce-cart .quantity .ct-decrease,
.vt .woocommerce-cart .quantity .plus,
.vt .woocommerce-cart .quantity .minus,
.vt .woocommerce-cart .quantity button {
    width: 36px !important;
    height: 36px !important;
    background: transparent !important;
    border: none !important;
    color: var(--vy-graphite) !important;
    -webkit-text-fill-color: var(--vy-graphite) !important;
    cursor: pointer !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    padding: 0 !important;
    min-height: auto !important;
    box-shadow: none !important;
}
.vt .woocommerce-cart .quantity .ct-increase:hover,
.vt .woocommerce-cart .quantity .ct-decrease:hover { background: var(--vy-cream) !important; }

/* Subtotal */
.vt .woocommerce-cart .product-subtotal {
    text-align: right !important;
    font-family: var(--ff-b) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--vy-ink) !important;
    width: 100px !important;
    padding-right: 0 !important;
}

/* Botón eliminar (trash) */
.vt .woocommerce-cart .product-remove {
    width: 50px !important;
    padding-right: 0 !important;
    text-align: right !important;
}
.vt .woocommerce-cart .product-remove a.remove,
.vt .woocommerce-cart .product-remove .remove {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--vy-muted) !important;
    -webkit-text-fill-color: transparent !important;
    border: none !important;
    width: 32px !important;
    height: 32px !important;
    line-height: 1 !important;
    font-size: 0 !important;
    padding: 0 !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
.vt .woocommerce-cart .product-remove a.remove::before,
.vt .woocommerce-cart .product-remove .remove::before {
    content: '' !important;
    width: 20px !important;
    height: 20px !important;
    background: var(--vy-muted) !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpolyline points='3 6 5 6 21 6'/%3E%3Cpath d='M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6'/%3E%3Cpath d='M10 11v6'/%3E%3Cpath d='M14 11v6'/%3E%3Cpath d='M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2'/%3E%3C/svg%3E") center/contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpolyline points='3 6 5 6 21 6'/%3E%3Cpath d='M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6'/%3E%3Cpath d='M10 11v6'/%3E%3Cpath d='M14 11v6'/%3E%3Cpath d='M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.vt .woocommerce-cart .product-remove a.remove:hover::before { background: var(--vy-error) !important; }

