/* ============================================================
   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:'Cormorant Garamond',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:'Cormorant Garamond',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:'Poppins',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:'Poppins',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 /* 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{max-width:60px;max-height:36px;width:auto;height:auto;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{max-width:54px;max-height:32px;}
}
.vt-pdp /* ---------- TABS ---------- */
  .tabs-wrap{margin-top:44px;border-top:1px solid var(--line);padding-top:0;}
.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:18px 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:'Cormorant Garamond',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:'Cormorant Garamond',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:'Poppins',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:auto;min-height:280px;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 */

/* 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{font-size:12.5px;color:var(--muted);margin:22px 0;padding:12px 14px;background:var(--crema,#F7F4EC);border-radius:8px;max-width:680px;}
.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: selector con el diseño de la ficha ====== */
.vt-pdp .vt-variations{margin:8px 0 6px;}
.vt-pdp .vt-variation-row{display:flex;flex-direction:column;gap:6px;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-field select{
	width:100%;font:inherit;font-size:15px;color:var(--vt-navy,#1B446E);
	background:#fff;border:1.5px solid #dbe3ea;border-radius:12px;
	padding:13px 44px 13px 16px;min-height:50px;cursor:pointer;outline:none;
	appearance:none;-webkit-appearance:none;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231B446E' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 16px center;background-size:12px;
	transition:border-color .15s,box-shadow .15s;
}
.vt-pdp .vt-variation-field select:focus{border-color:var(--vt-teal,#77D3CB);box-shadow:0 0 0 4px rgba(119,211,203,.18);}
.vt-pdp .reset_variations{display:inline-block;margin-top:2px;font-size:12.5px;color:#6c7c89;text-decoration:underline;}

/* 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;}
