/* Vitara product bundle - generated from vitara-pdp-base.css + vitara-header.css + vitara-pdp.css */
/* ============================================================
   VITARA - base minima para ficha de producto
   Solo reset/tokens, footer, cards relacionadas y toast.
   ============================================================ */
:root{
  --vt-teal:#77D3CB;--vt-teal-soft:#77D3CB;--vt-teal-dark:#026286;
  --vt-orange:#F6A656;--vt-orange-dark:#F6A656;--vt-tan:#E6C88A;
  --vt-navy:#1B446E;--vt-navy-deep:#1B446E;--vt-apricot:#F6A656;
  --vt-cream:#EDEAD9;--vt-gray:#F1F0EA;--vt-line:#e6e6e0;
  --vt-text:#1B446E;--vt-white:#fff;
  --vt-font-head:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --vt-font-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --vt-container:1300px;--vt-radius-sm:10px;--vt-radius:14px;--vt-radius-btn:10px;
  --vt-radius-lg:20px;--vt-radius-pill:30px;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--vt-font-body);color:var(--vt-text);font-size:16px;line-height:1.6;background:var(--vt-white)}
h1,h2,h3,h4,h5,h6{font-family:var(--vt-font-head);color:var(--vt-navy);margin:0 0 .5em;line-height:1.2}
a{color:var(--vt-navy);text-decoration:none}a:hover{color:var(--vt-orange)}
img{max-width:100%;height:auto;display:block}img[width="1"][height="1"],img[width="0"][height="0"],body>img[src*="facebook.com/tr"]{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important}ul{margin:0;padding:0;list-style:none}
.vt-container{max-width:var(--vt-container);margin:0 auto;padding:0 24px}
.vt-btn{display:inline-block;font-family:var(--vt-font-head);font-weight:500;border:0;cursor:pointer;border-radius:10px;padding:12px 26px;font-size:14px;line-height:1;transition:.2s}
.vt-btn--orange{background:var(--vt-orange);color:#fff}.vt-btn--orange:hover{background:var(--vt-orange-dark);filter:brightness(.93);color:#fff}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Footer */
.vt-footer{background:var(--vt-navy-deep);color:#cfd8e2;padding:54px 0 0;font-size:14px}
.vt-footer a{color:#cfd8e2}.vt-footer a:hover{color:#fff}
.vt-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:32px;padding-bottom:40px}
.vt-footer__logo{font-family:var(--vt-font-head);font-weight:700;font-size:24px;color:#fff;margin-bottom:18px;display:inline-block}
.vt-footer__logo img{max-height:56px;width:auto;display:block}.vt-footer__logo small{display:block;font-size:10px;font-weight:400;letter-spacing:.18em;color:var(--vt-teal)}
.vt-footer__social{display:flex;gap:12px;margin:14px 0 18px}.vt-footer__social a{display:flex;width:30px;height:30px;border:1px solid #3a567a;border-radius:50%;align-items:center;justify-content:center}.vt-footer__social svg{width:15px;height:15px}
.vt-footer h4{color:#fff;font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}.vt-footer ul li{margin-bottom:10px}.vt-footer__contact p{margin:4px 0;display:flex;align-items:center;gap:8px}
.vt-pay{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:8px}.vt-pay__card{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:6px;height:48px;padding:0 8px;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.vt-pay__card svg,.vt-pay__card img{width:60px;height:36px;object-fit:contain;display:block}.vt-footer__bottom{border-top:1px solid #2b496b;padding:16px 0;font-size:13px;color:#9fb1c4}
.vt-lr__link{display:inline-flex;align-items:center;margin-top:18px;color:inherit;transition:opacity .15s}.vt-lr__link:hover{opacity:.82}.vt-lr__img{display:block;width:auto;height:64px;max-width:100%;object-fit:contain}
@media(max-width:980px){.vt-footer__grid{grid-template-columns:1fr 1fr;gap:26px 40px;align-items:start}.vt-footer__contact{grid-column:1;grid-row:1}.vt-footer__grid>div:nth-child(2){grid-column:1;grid-row:2}.vt-footer__grid>div:nth-child(3){grid-column:2;grid-row:1}.vt-footer__payband{grid-column:2;grid-row:2}}
@media(max-width:680px){.vt-footer__grid{grid-template-columns:1fr;justify-items:center;text-align:center;gap:16px}.vt-footer__contact,.vt-footer__grid>div:nth-child(2),.vt-footer__grid>div:nth-child(3),.vt-footer__payband{grid-column:auto;grid-row:auto}.vt-footer__contact{display:block;text-align:center}.vt-footer__logo{display:inline-block;margin:0 0 8px}.vt-footer__logo img{max-height:52px}.vt-footer__social{justify-content:center;margin:12px 0}.vt-footer__contact p{justify-content:center;margin:3px 0}.vt-footer__grid>div:not(.vt-footer__contact):not(.vt-footer__payband) h4{display:none}.vt-footer__grid>div:not(.vt-footer__contact):not(.vt-footer__payband) ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin:0}.vt-footer__grid>div:not(.vt-footer__contact):not(.vt-footer__payband) li{margin:0}.vt-footer__payband{text-align:center;margin-top:8px;padding-top:22px;border-top:1px solid #2b496b}.vt-pay{justify-content:center}.vt-footer__payband .vt-lr__link{justify-content:center;margin-top:30px}.vt-footer .vt-lr__img{max-width:230px;height:auto}}
@media(max-width:420px){.vt-container{padding:0 16px}}

/* Tarjetas de productos relacionados */
.vt-pdp .vt-product-card{position:relative;background:#fff;border:1px solid var(--vt-line);border-radius:var(--vt-radius-lg);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 14px rgba(27,68,110,.05);transition:transform .3s ease,box-shadow .3s ease}
.vt-pdp .vt-product-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(27,68,110,.12)}
.vt-pdp .vt-product-card__media{position:relative;display:block;background:#fff;padding:20px;aspect-ratio:1/1;border-bottom:1px solid var(--vt-line)}
.vt-pdp .vt-product-card__media img{width:100%;height:100%;object-fit:contain}.vt-pdp .vt-product-card__body{display:flex;flex-direction:column;flex:1;padding:16px}
.vt-pdp .vt-product-card__brand{font-family:var(--vt-font-head);font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--vt-teal);margin-bottom:7px}
.vt-pdp .vt-product-card__name{font-family:var(--vt-font-head);font-weight:600;font-size:15px;line-height:1.3;color:var(--vt-navy);margin:0 0 10px;min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vt-pdp .vt-product-card__name a{color:inherit}.vt-pdp .vt-product-card__name a:hover{color:var(--vt-orange)}
.vt-pdp .vt-product-card__sub{font-family:var(--vt-font-body);font-size:12px;line-height:1.45;color:var(--vt-navy);margin:8px 0 14px;padding:9px 11px;background:#DDF5F2;border-radius:10px;min-height:62px}
.vt-pdp .vt-product-card__price{font-family:var(--vt-font-head);font-weight:600;font-size:17px;color:var(--vt-orange);margin:auto 0 16px}.vt-pdp .vt-product-card__price ins{text-decoration:none;color:inherit}.vt-pdp .vt-product-card__price del{color:#aab4bd;font-weight:400;font-size:13px;margin-right:6px}.vt-pdp .vt-product-card__cart{width:100%;text-align:center}
.vt-pdp .vt-fav{position:absolute;top:12px;right:12px;z-index:3;width:40px;height:40px;border:0;border-radius:50%;background:#fff;box-shadow:0 5px 14px rgba(27,68,110,.16);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.vt-pdp .vt-fav svg{width:20px;height:20px;fill:transparent;stroke:var(--vt-navy);stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.vt-pdp .vt-fav.is-active{background:#fff6ee}.vt-pdp .vt-fav.is-active svg{fill:var(--vt-orange);stroke:var(--vt-orange)}
.vt-pdp .vt-product-card .added_to_cart.wc-forward{display:block;width:100%;text-align:center;margin:0 0 12px;font-family:var(--vt-font-head);font-weight:600;font-size:13px;color:var(--vt-navy)}
@media(max-width:520px){.vt-pdp .vt-product-card__media{padding:12px}.vt-pdp .vt-product-card__body{padding:12px}.vt-pdp .vt-product-card__sub{display:none}.vt-pdp .vt-btn{padding:11px 10px;font-size:12px}}

/* Toast de carrito */
.vt-toasts{position:fixed;right:20px;bottom:20px;z-index:2000;display:flex;flex-direction:column;gap:10px;max-width:min(360px,calc(100vw - 40px));pointer-events:none}.vt-toast{display:flex;align-items:flex-start;gap:11px;background:#fff;border:1px solid var(--vt-line);border-left:4px solid var(--vt-teal);border-radius:12px;padding:13px 14px;box-shadow:0 16px 38px -12px rgba(27,68,110,.28);pointer-events:auto;opacity:0;transform:translateX(20px);transition:opacity .3s ease,transform .3s ease}.vt-toast.is-in{opacity:1;transform:translateX(0)}.vt-toast--err{border-left-color:#d9534f}.vt-toast__ic{flex:none;display:flex;color:var(--vt-teal);margin-top:1px}.vt-toast--err .vt-toast__ic{color:#d9534f}.vt-toast__ic svg{width:22px;height:22px}.vt-toast__msg{flex:1;min-width:0;font-family:var(--vt-font-head);font-size:13.5px;line-height:1.4;color:var(--vt-navy)}.vt-toast__x{flex:none;background:none;border:0;color:#9aa6b0;font-size:20px;line-height:1;cursor:pointer;padding:0 2px}@media(max-width:600px){.vt-toasts{right:12px;left:12px;bottom:12px;max-width:none}}

/* ============================================================
   VITARA — Header / Navbar (port del HTML de referencia)
   Clases con prefijo vh- para no colisionar. Colores de marca.
   ============================================================ */
:root{
	--vh-navy:#1B446E; --vh-navy-dark:#1B446E;
	--vh-tan:#F6A656; --vh-tan-dark:#F6A656;
	--vh-teal:#77D3CB; --vh-cream:#EDEAD9; --vh-cream-2:#FBF8F1;
	--vh-ink:#1B446E; --vh-ink-soft:#5C7186; --vh-max:1300px;
}
body.vh-menu-open{overflow:hidden;}

/* ===== Barra superior ===== */
.vh-topbar{background:linear-gradient(90deg,var(--vh-tan) 0%,var(--vh-tan-dark) 100%);color:#fff;font-family:var(--vt-font-head,'Plus Jakarta Sans',sans-serif);font-weight:500;font-size:13px;letter-spacing:.3px;}
.vh-topbar-inner{max-width:var(--vh-max);margin:0 auto;padding:9px clamp(16px,4vw,32px);display:flex;align-items:center;justify-content:space-between;gap:16px;}
.vh-topbar-spacer{flex:0 0 auto;visibility:hidden;}
.vh-topbar-msg{flex:1;text-align:center;text-transform:uppercase;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vh-topbar-links{display:flex;align-items:center;gap:14px;white-space:nowrap;flex:0 0 auto;}
.vh-topbar-links a{color:#fff;opacity:.95;transition:opacity .15s;}
.vh-topbar-links a:hover{opacity:1;color:#fff;text-decoration:underline;}
.vh-topbar-divider{width:1px;height:12px;background:rgba(255,255,255,.5);}

/* ===== Header principal ===== */
.vh-header{background:#EEF1F4;position:relative;z-index:50;}
.vh-header-inner{max-width:var(--vh-max);margin:0 auto;padding:24px clamp(16px,4vw,32px);display:flex;align-items:center;gap:clamp(16px,3vw,36px);}

.vh-logo{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.vh-logo img,.vh-logo .custom-logo{display:block;width:auto;max-height:39px;}
.vh-logo-text{display:flex;flex-direction:column;line-height:1.05;font-family:var(--vt-font-head,'Plus Jakarta Sans',sans-serif);}
.vh-logo-text .brand{font-size:clamp(19px,2.4vw,24px);font-weight:700;color:var(--vh-navy);letter-spacing:1px;}
.vh-logo-text .tagline{font-size:11px;font-weight:500;color:var(--vh-teal);letter-spacing:1.5px;text-transform:uppercase;}

/* Buscador */
.vh-search-wrap{flex:1;max-width:720px;position:relative;min-width:0;}
.vh-search-bar{display:flex;align-items:stretch;background:#fff;border-radius:10px;border:1.5px solid #E4D9C2;overflow:hidden;transition:border-color .15s,box-shadow .15s;}
.vh-search-bar.is-active{border-color:var(--vh-teal);box-shadow:0 0 0 4px rgba(119,211,203,.15);}
.vh-search-category{display:flex;align-items:center;gap:6px;padding:0 18px;font-size:14px;font-weight:600;color:var(--vh-navy);border:0;border-right:1px solid #E4D9C2;white-space:nowrap;flex-shrink:0;background:none;cursor:pointer;font-family:inherit;transition:color .15s;}
.vh-search-category:hover{color:var(--vh-tan-dark);}
.vh-search-category svg{width:11px;height:11px;flex-shrink:0;transition:transform .2s;}
.vh-search-category[aria-expanded="true"] svg{transform:rotate(180deg);}
.vh-cat-dropdown{position:absolute;top:calc(100% + 10px);left:0;min-width:240px;max-width:320px;max-height:340px;overflow-y:auto;background:#fff;border:1px solid #F0E8D6;border-radius:14px;box-shadow:0 12px 32px rgba(27,58,92,.14);padding:8px;display:none;z-index:41;}
.vh-cat-dropdown.open{display:block;}
.vh-cat-dropdown a{display:block;padding:9px 12px;border-radius:8px;font-size:14px;color:var(--vh-ink);}
.vh-cat-dropdown a:hover{background:var(--vh-cream);color:var(--vh-navy);}
.vh-search-input{flex:1;min-width:0;border:none;background:transparent;padding:13px 14px;font-size:14.5px;color:var(--vh-ink);outline:none;font-family:inherit;}
.vh-search-input::placeholder{color:var(--vh-ink-soft);}
.vh-search-btn{background:var(--vh-tan);color:#fff;width:50px;min-width:44px;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0;border:0;cursor:pointer;}
.vh-search-btn:hover{background:var(--vh-tan-dark);filter:brightness(.93);}
.vh-search-btn svg{width:18px;height:18px;}
.vh-search-dropdown{position:absolute;top:calc(100% + 10px);left:0;right:0;background:#fff;border-radius:14px;box-shadow:0 12px 32px rgba(27,58,92,.14);padding:18px 20px;display:none;z-index:40;border:1px solid #F0E8D6;}
.vh-search-dropdown.open{display:block;}
.vh-search-dropdown-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--vh-ink-soft);margin-bottom:12px;}
.vh-pill-row{display:flex;flex-wrap:wrap;gap:10px;}
.vh-pill{background:var(--vh-cream);color:var(--vh-navy);font-size:13.5px;font-weight:500;padding:8px 16px;border-radius:999px;transition:background .15s,color .15s;border:0;cursor:pointer;}
.vh-pill:hover{background:var(--vh-teal);color:#fff;}

/* Acciones */
.vh-actions{display:flex;align-items:center;gap:clamp(10px,2vw,22px);flex-shrink:0;margin-left:auto;}
.vh-action{display:flex;align-items:center;gap:9px;position:relative;color:var(--vh-navy);}
.vh-icon-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;position:relative;border-radius:50%;transition:background .15s;}
.vh-icon-btn svg{width:22px;height:22px;stroke:var(--vh-navy);}
.vh-action:hover .vh-icon-btn{background:var(--vh-cream);}
.vh-badge{position:absolute;top:2px;right:2px;background:var(--vh-tan-dark);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;padding:0 3px;border-radius:999px;display:flex;align-items:center;justify-content:center;pointer-events:none;}
.vh-badge[hidden]{display:none;}
.vh-cart-amount{font-size:14px;font-weight:700;color:var(--vh-navy);white-space:nowrap;}

/* Hamburguesa (solo móvil) */
.vh-hamburger{display:none;width:44px;height:44px;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0;border:0;background:none;cursor:pointer;}
.vh-hamburger:hover{background:var(--vh-cream);}
.vh-hamburger span{display:block;width:20px;height:2px;background:var(--vh-navy);position:relative;transition:transform .2s,opacity .2s;}
.vh-hamburger span::before,.vh-hamburger span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:var(--vh-navy);transition:transform .2s,opacity .2s;}
.vh-hamburger span::before{top:-6px;} .vh-hamburger span::after{top:6px;}
.vh-hamburger.is-active span{background:transparent;}
.vh-hamburger.is-active span::before{transform:translateY(6px) rotate(45deg);}
.vh-hamburger.is-active span::after{transform:translateY(-6px) rotate(-45deg);}

/* ===== Barra de menú (desktop) ===== */
.vh-navbar{background:linear-gradient(to bottom,#EEF1F4 0 50%,transparent 50% 100%);position:relative;z-index:40;padding:0;margin-bottom:-27px;pointer-events:none;}
.single-product .vh-navbar{background:linear-gradient(to bottom,#EEF1F4 0 50%,#F7F4EC 50% 100%);}
.vh-navbar-inner{width:95%;max-width:var(--vh-max);margin:0 auto;padding:0 clamp(24px,4vw,44px);min-height:54px;display:flex;align-items:stretch;justify-content:center;background:linear-gradient(180deg,var(--vh-navy) 0%,var(--vh-navy-dark) 100%);border-radius:14px;pointer-events:auto;}
.vh-drawer-head{display:none;}
.vh-nav-links{display:flex;align-items:stretch;justify-content:center;gap:clamp(22px,4vw,54px);min-width:0;}
.vh-nav-links a{display:flex;align-items:center;color:var(--vh-cream);font-size:14.5px;font-weight:500;padding:15px 6px;position:relative;opacity:.9;transition:color .18s ease,opacity .18s ease;white-space:nowrap;}
.vh-nav-links a::after{content:"";position:absolute;left:6px;right:6px;bottom:0;height:2px;background:var(--vh-tan);border-radius:2px 2px 0 0;transform:scaleX(0);transform-origin:center;transition:transform .22s ease;}
.vh-nav-links a:hover{color:#fff;opacity:1;}
.vh-nav-links a:hover::after{transform:scaleX(1);}
.vh-nav-links a.active{color:#fff;opacity:1;}
.vh-nav-links a.active::after{transform:scaleX(1);}
.vh-nav-highlight{background:var(--vh-tan);color:var(--vh-navy-dark);font-size:13.5px;font-weight:700;padding:14px 26px;display:flex;align-items:center;white-space:nowrap;}
.vh-nav-highlight:hover{background:var(--vh-tan-dark);color:#fff;}

/* ===== Overlay ===== */
.vh-overlay{position:fixed;inset:0;background:rgba(19,44,72,.45);opacity:0;visibility:hidden;transition:opacity .25s;z-index:45;}
.vh-overlay.is-visible{opacity:1;visibility:visible;}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1023px){
	.vh-nav-links{gap:18px;}
	.vh-nav-links a{font-size:14px;}
	.vh-nav-highlight{padding:14px 18px;font-size:13px;}
}

/* El buscador pasa a segunda fila; logo izq., acciones der. */
@media (max-width:900px){
	.vh-header-inner{flex-wrap:wrap;row-gap:14px;}
	.vh-search-wrap{order:3;flex-basis:100%;max-width:none;}
	.vh-logo{order:1;}
	.vh-actions{order:2;margin-left:auto;}
}

/* Menú lateral (off-canvas) en móvil */
@media (max-width:860px){
	.vh-hamburger{display:flex;}
	.vh-action--fav{display:none;}
	.vh-navbar,.home .vh-navbar,.page-template-page-nosotros-php .vh-navbar{background:transparent;position:static;z-index:auto;padding:0;margin:0;transform:none;pointer-events:auto;}
	.vh-navbar-inner,.home .vh-navbar-inner{left:auto;border-radius:0;position:fixed;top:0;right:0;height:100vh;width:min(300px,84vw);max-width:300px;background:var(--vh-navy);flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;transform:translateX(100%);transition:transform .28s ease;z-index:1000;box-shadow:-8px 0 24px rgba(0,0,0,.18);overflow-y:auto;}
	.vh-navbar.is-open .vh-navbar-inner{transform:translateX(0);}
	.vh-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.12);flex-shrink:0;}
	.vh-drawer-title{color:var(--vh-cream);font-weight:600;font-size:15px;}
	.vh-drawer-close{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--vh-cream);border:0;background:none;cursor:pointer;}
	.vh-drawer-close:hover{background:rgba(255,255,255,.1);}
	.vh-nav-links{flex-direction:column;align-items:stretch;gap:0;width:100%;padding:8px 4px;}
	.vh-nav-links a{padding:15px 16px;border-radius:8px;opacity:.92;}
	.vh-nav-links a::after{display:none;}
	.vh-nav-links a:hover{background:rgba(255,255,255,.07);}
	.vh-nav-links a:active{background:rgba(255,255,255,.1);}
	.vh-nav-links a.active{background:rgba(255,255,255,.08);}
	.vh-nav-links a[style]{margin-left:0 !important;}
	.vh-nav-highlight{margin:auto 16px 20px;justify-content:center;border-radius:10px;}
}

/* No mostrar "Mi cuenta" y "Checkout" de la barra superior en móvil */
@media (max-width:768px){
	.vh-topbar-links{display:none;}
	.vh-topbar-spacer{display:none;}
	.vh-topbar-msg{text-align:center;}
}

@media (max-width:640px){
	.vh-topbar-msg{font-size:11px;}
	.vh-logo-text .tagline{display:none;}
}

@media (max-width:480px){
	.vh-search-category{display:flex;justify-content:center;gap:4px;min-width:94px;padding:0 10px;font-size:12px;}
	.vh-search-input{padding:12px 9px;font-size:13px;}
	.vh-search-btn{width:44px;min-width:44px;}
	.vh-cat-dropdown{left:0;right:0;width:100%;min-width:0;max-width:none;}
	.vh-actions{gap:6px;}
	.vh-icon-btn{width:40px;height:40px;}
}

@media (max-width:380px){
	.vh-search-category{min-width:86px;padding:0 8px;font-size:11.5px;}
	.vh-cart-amount{display:none;}
}

/* ============================================================
   VITARA - Ficha de producto (PDP)
   Diseno portado de la maqueta, aislado bajo .vt-pdp.
   ============================================================ */

.vt-pdp{/* ---- Sistema VITARA (confirmado) ---- */
    --navy:#1b446e;
    --navy-deep:#123353;
    --teal:#026286;
    --turq:#77d3cb;
    --turq-tint:#e7f6f3;
    --orange:#f6a656;
    --orange-deep:#e08a3c;
    --gold:#e6c88a;
    --gold-tint:#f5ead0;
    --crema:#F7F4EC;
    --crema-dim:#efe8d8;
    --carbon:#2C2B27;
    /* ---- derivados de trabajo ---- */
    --ink:#1b446e;
    --muted:#586472;      /* contraste AA sobre crema */
    --line:#e6ddc9;
    --line-soft:#eee7d6;
    --white:#ffffff;
    --radius-s:8px;
    --radius-m:14px;
    --radius-l:20px;
    --ease:cubic-bezier(.22,.68,0,1);
    --shadow-soft:0 1px 2px rgba(27,68,110,.04), 0 8px 24px -12px rgba(27,68,110,.14);}
.vt-pdp *{box-sizing:border-box;}
.vt-pdp{margin:0;background:var(--crema);color:var(--ink);
    font-family:'Inter',system-ui,sans-serif;font-size:15px;line-height:1.55;
    -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
.vt-pdp h1, .vt-pdp h2, .vt-pdp h3, .vt-pdp h4{margin:0;font-weight:600;}
.vt-pdp .display{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;letter-spacing:.005em;line-height:1.08;}
.vt-pdp a{color:inherit;text-decoration:none;}
.vt-pdp img, .vt-pdp svg{display:block;max-width:100%;}
.vt-pdp button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
.vt-pdp .wrap{max-width:1140px;margin:0 auto;padding:0 24px;}
@media (max-width:640px){
.vt-pdp .wrap{padding:0 16px;}
}
.vt-pdp ::selection{background:var(--gold);color:var(--navy-deep);}
.vt-pdp :focus-visible{outline:2.5px solid var(--teal);outline-offset:2px;border-radius:4px;}
.vt-pdp .tabnums{font-variant-numeric:tabular-nums;}
@media (prefers-reduced-motion: reduce){
.vt-pdp *{animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
}
.vt-pdp /* ---------- TOPBAR ---------- */
  .topbar{background:var(--navy-deep);color:rgba(247,244,236,.82);font-size:12px;padding:8px 0;}
.vt-pdp .topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;}
.vt-pdp .topbar .accent{color:var(--turq);}
@media (max-width:560px){
.vt-pdp .topbar span.hide-sm{display:none;}
}
.vt-pdp /* ---------- NAV ---------- */
  .nav{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40;}
.vt-pdp .nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;}
@media (max-width:640px){
.vt-pdp .nav .wrap{padding:12px 16px;}
}
.vt-pdp .logo{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:23px;letter-spacing:.02em;
        display:flex;align-items:center;gap:9px;color:var(--navy-deep);}
.vt-pdp .isotipo{width:26px;height:26px;flex:none;}
.vt-pdp .nav-icons{display:flex;gap:8px;align-items:center;}
.vt-pdp .nav-icons button{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.vt-pdp .nav-icons button:hover{background:var(--crema-dim);}
.vt-pdp .cart-btn{position:relative;}
.vt-pdp .cart-btn .count{position:absolute;top:1px;right:1px;background:var(--orange);color:var(--navy-deep);
        font-size:10px;font-weight:700;min-width:16px;height:16px;padding:0 3px;border-radius:9px;
        display:flex;align-items:center;justify-content:center;}
.vt-pdp /* ---------- BREADCRUMB ---------- */
  .breadcrumb{padding:16px 0 0;font-size:12.5px;color:var(--muted);}
.vt-pdp .breadcrumb a:hover{color:var(--teal);}
.vt-pdp .breadcrumb span{margin:0 7px;opacity:.5;}
.vt-pdp /* ---------- PRODUCTO ---------- */
  .product-main{padding:52px 0 40px;}
.vt-pdp .product-grid{display:grid;grid-template-columns:minmax(0,500px) 1fr;gap:52px;align-items:start;}
@media (max-width:920px){
.vt-pdp .product-grid{grid-template-columns:1fr;gap:28px;}
}
.vt-pdp /* galería */
  .gallery{display:flex;flex-direction:column;gap:12px;position:sticky;top:78px;}
@media (max-width:920px){
.vt-pdp .gallery{position:static;}
}
@media (max-width:920px){
.vt-pdp .gallery{max-width:400px;margin-left:auto;margin-right:auto;width:100%;}
}
@media (max-width:640px){
.vt-pdp .main-image{aspect-ratio:4/3;border-radius:var(--radius-m);}
.vt-pdp .main-image .bottle{width:46%;}
.vt-pdp .thumb{width:52px;height:52px;}
.vt-pdp .thumb svg{width:24px;height:24px;}
}
@media (max-width:400px){
.vt-pdp .gallery{max-width:300px;}
}
.vt-pdp .thumbs{display:flex;flex-direction:row;gap:10px;}
.vt-pdp .thumb{width:60px;height:60px;border-radius:var(--radius-s);border:1.5px solid var(--line);
    background:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;
    transition:border-color .2s, transform .2s;flex:none;}
.vt-pdp .thumb:hover{transform:translateY(-1px);}
.vt-pdp .thumb.active{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal);}
.vt-pdp .thumb svg{width:28px;height:28px;}
.vt-pdp .main-image{width:100%;aspect-ratio:1/1;border-radius:var(--radius-l);
    background:var(--crema);
    border:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.vt-pdp .badge-pill{position:absolute;top:16px;left:16px;background:var(--navy-deep);color:var(--gold);
    font-size:11.5px;font-weight:600;letter-spacing:.03em;padding:6px 12px;border-radius:100px;}
.vt-pdp .main-image .bottle{width:52%;filter:drop-shadow(0 24px 34px rgba(27,68,110,.18));}
.vt-pdp /* buy box */
  .buybox .eyebrow{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:14px;}
.vt-pdp .buybox h1{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:32px;line-height:1.14;margin-bottom:10px;color:var(--navy-deep);letter-spacing:-.01em;}
.vt-pdp .buybox .sub{font-size:16px;color:var(--navy-deep);font-weight:500;margin-bottom:12px;}
.vt-pdp .rating-line{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted);margin-bottom:18px;}
.vt-pdp .stars{display:inline-flex;gap:2px;}
.vt-pdp .stars svg{width:15px;height:15px;fill:var(--orange);}
.vt-pdp .rating-line a{color:var(--teal);text-decoration:underline;text-underline-offset:2px;font-weight:500;}
.vt-pdp .price-block{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:20px;}
.vt-pdp .price-now{font-family:'Plus Jakarta Sans',sans-serif;font-size:40px;font-weight:700;color:var(--navy-deep);line-height:1;font-variant-numeric:tabular-nums;}
.vt-pdp .price-was{font-size:15px;color:var(--muted);text-decoration:line-through;}
.vt-pdp .price-save{font-size:11.5px;font-weight:600;background:var(--turq-tint);color:var(--teal);padding:4px 9px;border-radius:100px;}
.vt-pdp .bullets{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:9px;}
.vt-pdp .bullets li{display:flex;gap:10px;font-size:14px;color:var(--navy);align-items:flex-start;}
.vt-pdp .bullets .petal{width:16px;height:16px;flex:none;margin-top:2px;}
.vt-pdp /* modo de compra: única vs suscripción */
  .buy-modes{display:flex;flex-direction:column;gap:10px;margin-bottom:18px;}
.vt-pdp .mode{display:flex;align-items:flex-start;gap:12px;border:1.5px solid var(--line);border-radius:var(--radius-m);
    padding:14px 16px;cursor:pointer;transition:border-color .2s, background .2s;background:var(--white);}
.vt-pdp .mode:hover{border-color:var(--turq);}
.vt-pdp .mode.sel{border-color:var(--teal);background:var(--turq-tint);box-shadow:0 0 0 1px var(--teal) inset;}
.vt-pdp .mode .radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--muted);flex:none;margin-top:2px;position:relative;transition:border-color .2s;}
.vt-pdp .mode.sel .radio{border-color:var(--teal);}
.vt-pdp .mode.sel .radio::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--teal);}
.vt-pdp .mode .mode-body{flex:1;}
.vt-pdp .mode .mode-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
.vt-pdp .mode .mode-title{font-size:14px;font-weight:600;color:var(--navy-deep);}
.vt-pdp .mode .mode-price{font-size:14px;font-weight:600;color:var(--navy-deep);}
.vt-pdp .mode .mode-note{font-size:12px;color:var(--muted);margin-top:2px;}
.vt-pdp .mode .tag-save{font-size:10.5px;font-weight:700;letter-spacing:.02em;color:var(--white);background:var(--teal);padding:2px 7px;border-radius:100px;margin-left:6px;vertical-align:middle;}
.vt-pdp /* fila de compra */
  .buy-row{display:flex;gap:12px;margin-bottom:12px;}
.vt-pdp .qty-select{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:100px;overflow:hidden;flex:none;background:var(--white);}
.vt-pdp .qty-select button{width:40px;height:52px;font-size:18px;color:var(--muted);transition:background .2s;}
.vt-pdp .qty-select button:hover{background:var(--crema-dim);color:var(--navy);}
.vt-pdp .qty-select span{width:34px;text-align:center;font-size:15px;font-weight:600;}
.vt-pdp .btn-add{flex:1;background:linear-gradient(180deg, var(--orange), var(--orange-deep));
    color:var(--navy-deep);border-radius:100px;font-size:15px;font-weight:700;letter-spacing:.005em;
    display:flex;align-items:center;justify-content:center;gap:9px;min-height:52px;
    box-shadow:0 14px 28px -12px rgba(224,138,60,.6), inset 0 1px 0 rgba(255,255,255,.35);
    transition:transform .22s var(--ease), box-shadow .22s var(--ease);}
.vt-pdp .btn-add:hover{transform:translateY(-2px);box-shadow:0 18px 34px -12px rgba(224,138,60,.7), inset 0 1px 0 rgba(255,255,255,.4);}
.vt-pdp .btn-add:active{transform:translateY(0);}
.vt-pdp .btn-buy-now{width:100%;background:transparent;color:var(--navy-deep);border:1.5px solid var(--navy);
    border-radius:100px;min-height:50px;font-size:14.5px;font-weight:600;margin-bottom:16px;
    transition:background .22s var(--ease), color .22s var(--ease);}
.vt-pdp .btn-buy-now:hover{background:var(--navy-deep);color:var(--white);}
.vt-pdp /* feedback de carrito (aria-live) */
  .cart-toast{font-size:12.5px;color:var(--teal);font-weight:500;min-height:18px;margin:-6px 0 12px;}
.vt-pdp /* envío gratis */
  .ship-bar{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-m);padding:12px 14px;margin-bottom:14px;}
.vt-pdp .ship-bar .txt{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--navy);margin-bottom:8px;}
.vt-pdp .ship-bar .txt svg{width:16px;height:16px;color:var(--teal);flex:none;}
.vt-pdp .ship-bar .txt b{color:var(--teal);}
.vt-pdp .ship-track{height:6px;background:var(--crema-dim);border-radius:100px;overflow:hidden;}
.vt-pdp .ship-fill{height:100%;width:100%;background:linear-gradient(90deg,var(--turq),var(--teal));border-radius:100px;}
.vt-pdp .stock-line{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--teal);font-weight:500;margin-bottom:16px;}
.vt-pdp .stock-line .dot{width:8px;height:8px;border-radius:50%;background:var(--turq);box-shadow:0 0 0 3px var(--turq-tint);}
.vt-pdp .stock-line.is-out{color:#7a8791;}
.vt-pdp .stock-line.is-out .dot{background:#aeb8c0;box-shadow:0 0 0 3px rgba(174,184,192,.18);}
.vt-pdp /* garantías */
  .trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;}
.vt-pdp .trust-grid div{display:flex;gap:9px;align-items:center;font-size:12px;color:var(--navy);background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-s);padding:11px 12px;}
.vt-pdp .trust-grid svg{width:17px;height:17px;flex:none;color:var(--teal);}
.vt-pdp .payments{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted);}
.vt-pdp .payments__label{font-weight:500;}
.vt-pdp .pay-logos{display:flex;gap:8px;flex-wrap:wrap;}
.vt-pdp .pay-chip{height:48px;min-width:68px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;background:var(--white);border:1px solid var(--line-soft);border-radius:8px;box-shadow:0 1px 2px rgba(27,68,110,.05);}
.vt-pdp .pay-chip svg,.vt-pdp .pay-chip img{width:60px;height:36px;object-fit:contain;display:block;}
@media (max-width:520px){
.vt-pdp .pay-chip{height:44px;min-width:60px;padding:0 8px;}
.vt-pdp .pay-chip svg,.vt-pdp .pay-chip img{width:54px;height:32px;}
}
.vt-pdp /* ---------- TABS ---------- */
  .vt-tabs-gap{height:28px;}
.vt-pdp .tabs-wrap{margin-top:0;border-top:0;padding-top:0;}
.vt-pdp .tabs-wrap::before{content:"";display:block;border-top:1px solid var(--line);margin-bottom:8px;}
.vt-pdp .tabs-nav{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;}
.vt-pdp .tabs-nav::-webkit-scrollbar{display:none;}
.vt-pdp .tab-btn{padding:20px;font-size:14px;font-weight:500;color:var(--muted);white-space:nowrap;
    border-bottom:2px solid transparent;transition:color .2s, border-color .2s;background:none;}
.vt-pdp .tab-btn:hover{color:var(--navy-deep);}
.vt-pdp .tab-btn[aria-selected="true"]{color:var(--navy-deep);border-color:var(--orange);font-weight:600;}
.vt-pdp .tab-panel{display:none;padding:30px 0 8px;}
.vt-pdp .tab-panel.active{display:block;animation:fade .28s var(--ease);}
@keyframes fade{from{opacity:0;transform:translateY(5px);}to{opacity:1;transform:translateY(0);}}
.vt-pdp .tab-panel p{color:var(--navy);font-size:14.5px;max-width:680px;margin:0 0 14px;}
.vt-pdp .tab-panel h4{font-size:15px;color:var(--navy-deep);margin:22px 0 10px;}
.vt-pdp .tab-panel h4:first-child{margin-top:0;}
.vt-pdp .kv-table{width:100%;border-collapse:collapse;max-width:540px;}
.vt-pdp .kv-table tr{border-bottom:1px solid var(--line-soft);}
.vt-pdp .kv-table td{padding:11px 4px;font-size:13.5px;}
.vt-pdp .kv-table td:first-child{color:var(--muted);}
.vt-pdp .kv-table td:last-child{text-align:right;font-weight:600;color:var(--navy-deep);}
.vt-pdp .kv-table tr.bold td{font-weight:700;border-bottom:2px solid var(--navy);color:var(--navy-deep);}
.vt-pdp .kv-table tr.indent td:first-child{padding-left:18px;color:var(--muted);font-size:13px;}
.vt-pdp .steps{display:flex;flex-direction:column;gap:14px;max-width:540px;list-style:none;padding:0;margin:0;}
.vt-pdp .steps li{display:flex;gap:14px;font-size:14px;align-items:flex-start;color:var(--navy);}
.vt-pdp .steps .n{font-size:12px;font-weight:700;color:var(--teal);background:var(--turq-tint);border-radius:50%;
        width:26px;height:26px;display:flex;align-items:center;justify-content:center;flex:none;}
.vt-pdp .ingredient{border-left:3px solid var(--teal);padding:2px 0 2px 16px;margin-bottom:18px;max-width:640px;}
.vt-pdp .ingredient h4{margin:0 0 4px;font-size:14.5px;}
.vt-pdp .ingredient p{margin:0 0 6px;font-size:13.5px;}
.vt-pdp .ingredient .caution{font-size:12.5px;color:var(--muted);font-style:italic;}
.vt-pdp .flags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;}
.vt-pdp .flag{font-size:11.5px;font-weight:500;padding:7px 13px;border-radius:100px;background:var(--white);border:1px solid var(--line);color:var(--navy);}
.vt-pdp .faq .faq-item{border-bottom:1px solid var(--line-soft);}
.vt-pdp .faq summary{padding:16px 2px;font-size:14.5px;font-weight:500;color:var(--navy-deep);cursor:pointer;display:flex;justify-content:space-between;align-items:center;list-style:none;}
.vt-pdp .faq summary::-webkit-details-marker{display:none;}
.vt-pdp .faq summary::after{content:"+";color:var(--teal);font-size:19px;margin-left:14px;transition:transform .25s;}
.vt-pdp .faq [open] summary::after{transform:rotate(45deg);}
.vt-pdp .faq p{padding:0 2px 18px;font-size:13.5px;color:var(--muted);max-width:620px;margin:0;}
.vt-pdp .rev-summary{display:flex;gap:32px;align-items:center;margin-bottom:24px;flex-wrap:wrap;}
.vt-pdp .rev-score{font-family:'Plus Jakarta Sans',sans-serif;font-size:52px;font-weight:700;color:var(--navy-deep);line-height:1;}
.vt-pdp .rev-score-meta p{margin:6px 0 0;font-size:12.5px;color:var(--muted);}
.vt-pdp .rev-list{display:flex;flex-direction:column;gap:16px;max-width:660px;}
.vt-pdp .rev-card{border-bottom:1px solid var(--line-soft);padding-bottom:16px;}
.vt-pdp .rev-card .stars{margin-bottom:7px;}
.vt-pdp .rev-card p{margin:0 0 6px;font-size:14px;color:var(--navy);}
.vt-pdp .rev-who{font-size:11.5px;color:var(--muted);display:flex;align-items:center;gap:6px;}
.vt-pdp .rev-who .vfy{color:var(--teal);font-weight:600;}
.vt-pdp .rev-more{font-size:13px;color:var(--teal);text-decoration:underline;text-underline-offset:2px;font-weight:500;}
.vt-pdp .btn-review{margin-left:auto;border:1.5px solid var(--teal);color:var(--teal);border-radius:100px;padding:11px 20px;font-size:13px;font-weight:600;transition:background .2s, color .2s;}
.vt-pdp .btn-review:hover{background:var(--teal);color:var(--white);}
@media (max-width:520px){
.vt-pdp .btn-review{margin-left:0;width:100%;}
}
.vt-pdp /* ---------- MODAL RESEÑA ---------- */
  .modal-overlay{position:fixed;inset:0;background:rgba(18,51,83,.55);display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;animation:fade .2s var(--ease);}
.vt-pdp .modal-overlay[hidden]{display:none;}
.vt-pdp .modal{background:var(--white);border-radius:var(--radius-l);padding:30px;max-width:460px;width:100%;position:relative;max-height:92vh;overflow:auto;box-shadow:0 30px 70px -20px rgba(18,51,83,.45);}
.vt-pdp .modal h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:30px;color:var(--navy-deep);margin-bottom:4px;}
.vt-pdp .modal .modal-sub{font-size:13px;color:var(--muted);margin:0 0 18px;}
.vt-pdp .modal label{display:block;font-size:12px;font-weight:600;color:var(--navy);margin:16px 0 7px;letter-spacing:.02em;text-transform:uppercase;}
.vt-pdp .modal input, .vt-pdp .modal textarea{width:100%;border:1.5px solid var(--line);border-radius:var(--radius-s);padding:12px;font-family:inherit;font-size:14px;color:var(--navy-deep);background:var(--crema);transition:border-color .2s, background .2s;}
.vt-pdp .modal input:focus, .vt-pdp .modal textarea:focus{border-color:var(--teal);outline:none;background:var(--white);}
.vt-pdp .modal textarea{min-height:96px;resize:vertical;}
.vt-pdp .modal-close{position:absolute;top:16px;right:18px;font-size:26px;line-height:1;color:var(--muted);width:36px;height:36px;border-radius:50%;transition:background .2s;}
.vt-pdp .modal-close:hover{background:var(--crema-dim);color:var(--navy-deep);}
.vt-pdp .star-input{display:flex;gap:6px;}
.vt-pdp .star-input button{padding:2px;line-height:0;}
.vt-pdp .star-input svg{width:32px;height:32px;fill:#e6ddc9;transition:fill .12s, transform .12s;}
.vt-pdp .star-input button.on svg, .vt-pdp .star-input button.hov svg{fill:var(--orange);}
.vt-pdp .star-input button:hover svg{transform:scale(1.08);}
.vt-pdp .modal .btn-add{width:100%;margin-top:22px;}
.vt-pdp .rv-feedback{font-size:13px;color:var(--teal);font-weight:500;margin:12px 0 0;min-height:18px;text-align:center;}
.vt-pdp .rv-feedback.err{color:var(--orange-deep);}
.vt-pdp /* ---------- RELACIONADOS ---------- */
  .related{padding:36px 0 60px;border-top:1px solid var(--line);}
.vt-pdp .related h2{font-size:32px;color:var(--navy-deep);margin-bottom:20px;}
.vt-pdp .related-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
@media (max-width:820px){
.vt-pdp .related-row{grid-template-columns:repeat(2,1fr);}
}
.vt-pdp .related-card{border:1px solid var(--line);border-radius:var(--radius-m);padding:16px;background:var(--white);transition:transform .2s, box-shadow .2s;}
.vt-pdp .related-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);}
.vt-pdp .related-thumb{aspect-ratio:1/1;background:var(--crema);border-radius:var(--radius-s);display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.vt-pdp .related-thumb svg{width:42%;}
.vt-pdp .related-card h4{font-size:13.5px;font-weight:500;margin:0 0 6px;line-height:1.35;color:var(--navy-deep);}
.vt-pdp .related-card .r-rating{font-size:11px;color:var(--muted);margin-bottom:6px;display:flex;align-items:center;gap:4px;}
.vt-pdp .related-card .r-rating svg{width:11px;height:11px;fill:var(--orange);}
.vt-pdp .related-card .price{font-size:14px;font-weight:600;color:var(--navy-deep);}
.vt-pdp footer{background:var(--navy-deep);color:rgba(247,244,236,.6);padding:30px 0;font-size:12px;text-align:center;}
.vt-pdp footer .isotipo{width:22px;height:22px;margin:0 auto 10px;opacity:.9;}
.vt-pdp /* ---------- sticky bar móvil ---------- */
  .sticky-cta{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--white);border-top:1px solid var(--line);
    padding:11px 16px;z-index:50;align-items:center;gap:14px;box-shadow:0 -8px 22px rgba(27,68,110,.08);}
.vt-pdp .sticky-cta .s-price{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:700;color:var(--navy-deep);font-variant-numeric:tabular-nums;}
.vt-pdp .sticky-cta .btn-add{min-height:46px;font-size:14px;}
@media (max-width:640px){
.vt-pdp .sticky-cta.show{display:flex;}
.vt-pdp .buybox h1{font-size:27px;}
}

/* ============================================================
   OVERRIDES DE INTEGRACION (galeria WooCommerce, ficha, resenas)
   ============================================================ */

/* La imagen real de WooCommerce reemplaza al frasco SVG de la maqueta. */
.vt-pdp .main-image{aspect-ratio:1/1;min-height:0;padding:20px;}
.vt-pdp .main-image .woocommerce-product-gallery{width:100%;margin:0;float:none;}
.vt-pdp .main-image .woocommerce-product-gallery__wrapper{margin:0;}
.vt-pdp .main-image .woocommerce-product-gallery__image img,
.vt-pdp .main-image img{width:100%;height:auto;border-radius:var(--radius-m);display:block;}
.vt-pdp .main-image .flex-control-thumbs{display:flex;gap:10px;margin:12px 0 0;padding:0;list-style:none;flex-wrap:wrap;}
.vt-pdp .main-image .flex-control-thumbs li{width:56px;}
.vt-pdp .main-image .flex-control-thumbs img{border:1.5px solid var(--line);border-radius:var(--radius-s);cursor:pointer;}
.vt-pdp .main-image .woocommerce-product-gallery__trigger{display:none;} /* lupa de zoom */
@media (max-width:640px){
.vt-pdp .main-image{aspect-ratio:4/3;}
}

/* Formulario de compra real: mantiene el diseno de la maqueta. */
.vt-buyform{margin:0;}
.vt-buyform .vt-qty-input{display:none;}

/* Bloques de ficha del JSON. */
.vt-pdp .tab-panel p.ficha-nota{position:relative;font-size:12.5px;color:var(--muted);margin:22px 0;padding:12px 0;background:var(--crema,#F7F4EC);border-radius:8px;max-width:680px;}
.vt-pdp .tab-panel p.ficha-nota::before{content:"";position:absolute;inset:0 -10px;border:1px solid rgba(2,98,134,.32);border-radius:8px;pointer-events:none;}
.vt-pdp .tab-sub{font-size:14px;color:var(--muted);margin:0 0 16px;max-width:680px;}
.vt-pdp .ficha-bullets{list-style:disc;padding-left:20px;margin:0 0 14px;}
.vt-pdp .ficha-bullets li{color:var(--navy);font-size:14.5px;margin:0 0 6px;}

/* Formulario nativo de resenas revelado dentro de la pestana. */
.vt-pdp .vt-review-form{margin-top:22px;border-top:1px solid var(--line);padding-top:20px;}
.vt-pdp .vt-review-form .comment-form label{display:block;font-size:13px;color:var(--navy-deep);margin:12px 0 5px;}
.vt-pdp .vt-review-form input[type=text],
.vt-pdp .vt-review-form input[type=email],
.vt-pdp .vt-review-form textarea{width:100%;max-width:460px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-s);font:inherit;}
.vt-pdp .vt-review-form .submit,
.vt-pdp .vt-review-form input[type=submit]{margin-top:14px;background:var(--orange);color:var(--white);border:0;padding:11px 22px;border-radius:100px;font-weight:600;cursor:pointer;}

/* "Proximamente" cuando el producto no tiene precio. */
.vt-pdp .vt-soon{font-weight:600;color:var(--teal);}

/* Pestañas que dependen de la variante elegida */
.vt-pdp .tab-btn[hidden]{display:none!important;}

/* ====== Producto variable: opciones marcables ====== */
.vt-pdp .vt-variations{margin:8px 0 8px;}
.vt-pdp .vt-variation-row{display:flex;flex-direction:column;gap:7px;margin-bottom:12px;}
.vt-pdp .vt-variation-label{font-size:12.5px;font-weight:700;color:var(--vt-navy,#1B446E);text-transform:uppercase;letter-spacing:.03em;}
.vt-pdp .vt-variation-native-fields{display:none!important;}
.vt-pdp .vt-variation-choices{display:flex;flex-wrap:wrap;gap:9px;}
.vt-pdp .vt-variation-choice{position:relative;display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:10px 14px;border:1.5px solid #dbe3ea;border-radius:10px;background:#fff;color:var(--vt-navy,#1B446E);font-size:14px;font-weight:600;line-height:1.25;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s;}
.vt-pdp .vt-variation-choice:hover{border-color:var(--vt-teal,#77D3CB);}
.vt-pdp .vt-variation-choice:focus-within{border-color:var(--vt-teal,#77D3CB);box-shadow:0 0 0 4px rgba(119,211,203,.16);}
.vt-pdp .vt-variation-choice.is-selected{border-color:var(--vt-teal,#77D3CB);background:rgba(119,211,203,.10);box-shadow:0 0 0 1px var(--vt-teal,#77D3CB);}
.vt-pdp .vt-variation-choice input{position:absolute;opacity:0;pointer-events:none;}
.vt-pdp .vt-variation-check{width:18px;height:18px;flex:0 0 18px;border:1.5px solid #aebbc6;border-radius:50%;background:#fff;position:relative;transition:border-color .15s,background .15s;}
.vt-pdp .vt-variation-choice.is-selected .vt-variation-check{border-color:var(--vt-teal,#77D3CB);background:var(--vt-teal,#77D3CB);}
.vt-pdp .vt-variation-choice.is-selected .vt-variation-check::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.vt-pdp .vt-variation-choice-stock{font-size:10.5px;font-weight:700;color:#7a8791;text-transform:uppercase;letter-spacing:.03em;}
.vt-pdp .vt-variation-choice.is-out{opacity:.68;}
@media(max-width:520px){.vt-pdp .vt-variation-choices{display:grid;grid-template-columns:1fr;}.vt-pdp .vt-variation-choice{width:100%;}}

/* El precio de la variación se muestra en el bloque grande (JS); ocultamos el de WC. */
.vt-pdp .single_variation{display:none;}

/* Botones deshabilitados hasta elegir la variante. */
.vt-pdp .woocommerce-variation-add-to-cart-disabled .btn-add,
.vt-pdp .woocommerce-variation-add-to-cart-disabled .btn-buy-now,
.vt-pdp .btn-add:disabled{opacity:.45;pointer-events:none;}

/* Radio uniforme de botones (ficha): 10px */
.vt-pdp .btn-add,.vt-pdp .btn-buy-now,.vt-pdp .qty-select,.vt-pdp .btn-review,.vt-pdp .single_add_to_cart_button,.vt-pdp .buy-row .btn-add{border-radius:10px;}

/* Galería propia de la variante en la ficha */
.vt-pdp .vt-vargal{width:100%;}
.vt-pdp .vt-vargal__main{border-radius:14px;overflow:hidden;background:transparent;}
.vt-pdp .vt-vargal__main img{width:100%;height:auto;display:block;object-fit:contain;}
.vt-pdp .vt-vargal__thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap;}
.vt-pdp .vt-vargal__t{width:64px;height:64px;border-radius:10px;overflow:hidden;border:1.5px solid var(--line);background:transparent;cursor:pointer;padding:0;}
.vt-pdp .vt-vargal__t.is-on{border-color:var(--orange);}
.vt-pdp .vt-vargal__t img{width:100%;height:100%;object-fit:cover;}


/* ====== Galeria unificada: producto simple y variable ====== */
.vt-pdp [data-vt-lite-gallery] .main-image{padding:20px;}
.vt-pdp .vt-lite-gallery__open{width:100%;height:100%;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden;}
.vt-pdp .main-image .vt-lite-gallery__img{width:100%;height:100%;min-width:0;min-height:0;max-height:100%;object-fit:contain;border-radius:var(--radius-m);opacity:1;visibility:visible;}
.vt-pdp .vt-lite-gallery__thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;padding:2px 2px 4px;scrollbar-width:thin;}
.vt-pdp .vt-lite-gallery__thumb{width:58px;height:58px;flex:0 0 58px;padding:4px;border:1.5px solid var(--line);border-radius:var(--radius-s);background:var(--white);display:flex;align-items:center;justify-content:center;}
.vt-pdp .vt-lite-gallery__thumb.is-active{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal);}
.vt-pdp .vt-lite-gallery__thumb img{width:100%;height:100%;object-fit:contain;border-radius:6px;}
.vt-image-dialog{border:0;padding:0;background:transparent;max-width:min(92vw,900px);max-height:92vh;overflow:visible;}
.vt-image-dialog::backdrop{background:rgba(12,31,50,.78);backdrop-filter:blur(2px);}
.vt-image-dialog__box{position:relative;background:#fff;border-radius:16px;padding:18px;box-shadow:0 24px 70px rgba(0,0,0,.34);}
.vt-image-dialog__img{display:block;max-width:min(84vw,820px);max-height:82vh;width:auto;height:auto;object-fit:contain;margin:auto;}
.vt-image-dialog__close{position:absolute;right:8px;top:8px;width:40px;height:40px;border:0;border-radius:50%;background:#fff;color:#123353;font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,.18);z-index:2;cursor:pointer;}
@media(max-width:640px){.vt-pdp .vt-lite-gallery__thumb{width:52px;height:52px;flex-basis:52px}.vt-image-dialog__box{padding:10px}.vt-image-dialog__img{max-width:88vw;max-height:78vh}}

/* WooCommerce notices siguen legibles aunque el CSS general de Woo no se cargue en el PDP. */
.woocommerce-notices-wrapper{max-width:1140px;margin:14px auto 0;padding:0 24px;}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 14px;padding:12px 16px;border:1px solid #e6ddc9;border-left:4px solid #77d3cb;border-radius:10px;background:#fff;color:#1b446e;font-family:'Inter',system-ui,sans-serif;font-size:14px;line-height:1.45;}
.woocommerce-error{border-left-color:#d9534f;}
@media(max-width:640px){.woocommerce-notices-wrapper{padding:0 16px;}}


/* PDP 0.9.69: evita trabajo de estilo/layout fuera del primer viewport. */
.vt-pdp .tabs-wrap,.vt-pdp .related,.vt-footer{content-visibility:auto;}
.vt-pdp .tabs-wrap{contain-intrinsic-size:auto 760px;}
.vt-pdp .related{contain-intrinsic-size:auto 680px;}
.vt-footer{contain-intrinsic-size:auto 520px;}

/* ============================================================
   TEXTO JUSTIFICADO — bloques de prosa
   ------------------------------------------------------------
   Cada línea empieza y termina en el mismo punto, formando un
   bloque rectangular.

   - hyphens:none -> nunca se parte una palabra con guion.
   - word-break:normal + overflow-wrap:break-word -> solo se
     rompe una "palabra" si es más ancha que la columna (URLs
     largas), para que no se desborde del contenedor.
   - text-wrap:pretty -> los navegadores que ya lo soportan
     reparten mejor las últimas líneas; el resto lo ignora.

   La ÚLTIMA línea de cada párrafo queda corta a propósito
   (text-align-last por defecto). Estirarla dejaría dos o tres
   palabras separadas por huecos enormes.

   Solo afecta a prosa: no toca titulares, botones, precios,
   etiquetas, migas de pan ni bloques centrados por diseño.
   ============================================================ */
/* Ficha de producto: pestañas de contenido. */
.vt-pdp .tab-panel p,
.vt-pdp .tab-panel li,
.vt-pdp .ficha-bullets li,
.vt-pdp .tab-sub {
	text-align: justify;
	text-justify: inter-word;
	-webkit-hyphens: none;
	hyphens: none;
	word-break: normal;
	overflow-wrap: break-word;
	text-wrap: pretty;
}


/* ============================================================
   GALERIA DE LA FICHA
   ------------------------------------------------------------
   1) Zoom propio de la galeria unificada (producto simple o variable). El panel se coloca
      exactamente sobre el rectangulo real de la foto, que por object-fit
      casi nunca es el cuadro completo.
   2) Estado de carga al cambiar de miniatura: atenuar la foto actual da
      senal de que el clic conto mientras llega la nueva.
   3) Galeria de WooCommerce (producto variable). Sus miniaturas viven DENTRO
      del mismo bloque, asi que el marco cuadrado pasa de .main-image al
      visor: de lo contrario las miniaturas quedaban recortadas por el
      overflow:hidden del cuadro y la foto salia aplastada.
   ============================================================ */
.vt-pdp .vt-lite-gallery__open{position:relative;width:100%;height:100%;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden;}
.vt-pdp .vt-lite-gallery__zoom{position:absolute;pointer-events:none;opacity:0;z-index:2;background-repeat:no-repeat;border-radius:var(--radius-m);transition:opacity .12s ease;}
.vt-pdp .vt-lite-gallery__zoom.is-on{opacity:1;}
.vt-pdp [data-vt-lite-gallery].is-loading .vt-lite-gallery__img{opacity:.55;}
.vt-pdp .main-image .vt-lite-gallery__img{width:100%;height:100%;min-width:0;min-height:0;max-height:100%;object-fit:contain;border-radius:var(--radius-m);opacity:1;visibility:visible;transition:opacity .15s ease;}
@media (prefers-reduced-motion:reduce){
  .vt-pdp .vt-lite-gallery__zoom,.vt-pdp .vt-lite-gallery__img{transition:none;}
}

.vt-pdp .main-image--wc{aspect-ratio:auto;min-height:0;padding:0;border:0;background:transparent;border-radius:0;overflow:visible;display:block;}
.vt-pdp .main-image--wc .badge-pill{z-index:3;}
.vt-pdp .main-image--wc .flex-viewport,
.vt-pdp .main-image--wc .woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__wrapper{
  height:auto !important;aspect-ratio:1/1;background:var(--crema);border:1px solid var(--line);border-radius:var(--radius-l);overflow:hidden;
}
.vt-pdp .main-image--wc .flex-viewport .woocommerce-product-gallery__wrapper{height:100%;}
.vt-pdp .main-image--wc .woocommerce-product-gallery__image{height:100%;padding:20px;position:relative;}
.vt-pdp .main-image--wc .woocommerce-product-gallery__image>a{display:block;height:100%;}
.vt-pdp .main-image--wc .woocommerce-product-gallery__image img{width:100%;height:100%;object-fit:contain;border-radius:0;}
.vt-pdp .main-image--wc .flex-control-thumbs{display:flex;gap:10px;margin:12px 0 0;padding:0;list-style:none;flex-wrap:wrap;}
.vt-pdp .main-image--wc .flex-control-thumbs li{width:58px;}
.vt-pdp .main-image--wc .flex-control-thumbs img{width:100%;height:58px;object-fit:contain;padding:4px;border:1.5px solid var(--line);border-radius:var(--radius-s);background:var(--white);cursor:pointer;opacity:1;}
.vt-pdp .main-image--wc .flex-control-thumbs img.flex-active{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal);}
@media (max-width:640px){
  .vt-pdp .main-image--wc .woocommerce-product-gallery__image{padding:14px;}
}
