/* vsz-core - product page layout (frontend/80-product-buy-card.php)
   Loaded on product pages only, after site.css, while option vsz_pdp_v2 = 1.
   Every rule is scoped to body.vsz-pdp, so switching the option off restores
   the old page with no leftovers. Tokens match the [archive-grid] block. */
body.vsz-pdp{--pdp-royal:#0A1F8F;--pdp-ink:#050A24;--pdp-muted:#5A6580;--pdp-line:#DBE2F0;--pdp-panel:#EDF1F9;--pdp-wa:#0F8A45;--pdp-wa-h:#0B7339}

/* Top: gallery + buy card */
body.vsz-pdp .vsz-pdp-top{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin:0 0 40px}
body.vsz-pdp .vsz-pdp-top > .woocommerce-product-gallery,
body.vsz-pdp .vsz-pdp-top > .summary{float:none !important;width:auto !important;max-width:none !important;margin:0 !important;clear:none !important}
@media(min-width:768px){
  body.vsz-pdp .vsz-pdp-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:8px}
  body.vsz-pdp .vsz-pdp-top > .summary{padding:24px !important;border:1px solid var(--pdp-line);border-radius:18px;background:#fff}
}
@media(min-width:921px){
  body.vsz-pdp .vsz-pdp-top{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px}
  body.vsz-pdp .vsz-pdp-top > .summary{position:sticky;top:124px;padding:28px !important}
}
body.vsz-pdp .woocommerce-product-gallery{border:1px solid var(--pdp-line);border-radius:18px;overflow:hidden;background:#fff}
body.vsz-pdp .woocommerce-product-gallery .flex-control-thumbs{padding:12px !important;gap:8px;display:flex}
body.vsz-pdp .woocommerce-product-gallery .flex-control-thumbs li{width:64px !important;border:1px solid var(--pdp-line);border-radius:10px;overflow:hidden}

/* Buy card content order */
body.vsz-pdp .vsz-pdp-top > .summary{display:flex;flex-direction:column}
body.vsz-pdp .summary .woocommerce-breadcrumb{order:0;margin:0 0 14px !important;font-size:.82rem;color:var(--pdp-muted)}
body.vsz-pdp .summary .woocommerce-breadcrumb a{color:var(--pdp-muted)}
body.vsz-pdp .summary .single-product-category{order:1;margin:0 0 6px}
body.vsz-pdp .summary .single-product-category a{display:inline-block;padding:4px 12px;border-radius:999px;background:var(--pdp-panel);color:var(--pdp-royal);font-size:.8rem;font-weight:700;text-decoration:none}
body.vsz-pdp .summary .product_title{order:2;margin:0 0 10px !important;font-size:clamp(1.5rem,2.6vw,2.05rem) !important;font-weight:800 !important;line-height:1.3 !important;color:var(--pdp-ink) !important}
body.vsz-pdp .summary .price{order:3;margin:0 0 20px !important;font-size:1.9rem !important;font-weight:800 !important;color:var(--pdp-royal) !important;font-variant-numeric:tabular-nums}
body.vsz-pdp .summary .price .woocommerce-Price-currencySymbol{font-size:.6em;font-weight:600;color:var(--pdp-muted)}
body.vsz-pdp .summary .price del{opacity:.5;font-size:.6em}
body.vsz-pdp .summary .price ins{text-decoration:none;background:none}
body.vsz-pdp .summary .stock{order:4;margin:-8px 0 16px !important;font-size:.9rem;font-weight:700}
body.vsz-pdp .summary .vsz-order-wrap{order:4}
body.vsz-pdp .summary .vsz-trust{order:5}
body.vsz-pdp .summary .woocommerce-product-details__short-description{order:6;margin:20px 0 0;padding-top:20px;border-top:1px solid var(--pdp-line);font-size:.98rem;line-height:1.85;color:#3A4256}
body.vsz-pdp .summary .woocommerce-product-details__short-description p{margin:0}
body.vsz-pdp .summary form.cart{order:7}
body.vsz-pdp .summary .product_meta{order:8;display:flex;flex-wrap:wrap;gap:8px 16px;margin:18px 0 0 !important;padding:0 !important;border:0 !important;font-size:.85rem;color:var(--pdp-muted)}
body.vsz-pdp .summary .product_meta a{color:var(--pdp-royal);font-weight:700}

/* WhatsApp order button */
.vsz-order{display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 20px;border-radius:14px;background:var(--pdp-wa);color:#fff !important;font-size:1.08rem;font-weight:800;text-decoration:none !important;transition:background-color .2s ease-out}
.vsz-order:hover{background:var(--pdp-wa-h)}
.vsz-order:focus-visible{outline:3px solid #7DD8F5;outline-offset:2px}
.vsz-order svg{width:22px;height:22px;flex-shrink:0}
.vsz-order-note{display:block;margin:8px 0 0;text-align:center;font-size:.8rem;color:var(--pdp-muted)}

/* Trust list */
.vsz-trust{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}
.vsz-trust li{display:flex;align-items:center;gap:10px;margin:0;font-size:.9rem;font-weight:500;color:var(--pdp-ink)}
.vsz-trust li::before{content:"";flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--pdp-panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A1F8F' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat}

/* Tabs: one scrollable row of pills */
body.vsz-pdp .woocommerce-tabs{margin:0 0 48px !important;padding:0 !important;border:0 !important}
body.vsz-pdp .woocommerce-tabs ul.tabs{display:flex !important;flex-wrap:nowrap;gap:8px;margin:0 0 24px !important;padding:0 0 4px !important;border:0 !important;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}
body.vsz-pdp .woocommerce-tabs ul.tabs::-webkit-scrollbar{display:none}
body.vsz-pdp .woocommerce-tabs ul.tabs::before,body.vsz-pdp .woocommerce-tabs ul.tabs::after{display:none !important}
body.vsz-pdp .woocommerce-tabs ul.tabs li{flex:0 0 auto;margin:0 !important;padding:0 !important;border:0 !important;background:none !important;scroll-snap-align:start}
body.vsz-pdp .woocommerce-tabs ul.tabs li::before,body.vsz-pdp .woocommerce-tabs ul.tabs li::after{display:none !important}
body.vsz-pdp .woocommerce-tabs ul.tabs li a{display:flex !important;align-items:center;min-height:44px;padding:0 18px !important;border:1px solid var(--pdp-line);border-radius:999px;background:#fff;color:var(--pdp-ink) !important;font-size:.92rem;font-weight:700;white-space:nowrap;transition:border-color .15s,background-color .15s}
body.vsz-pdp .woocommerce-tabs ul.tabs li a:hover{border-color:var(--pdp-royal)}
body.vsz-pdp .woocommerce-tabs ul.tabs li.active a{border-color:var(--pdp-royal);background:var(--pdp-royal);color:#fff !important}
body.vsz-pdp .woocommerce-tabs .panel{max-width:880px;margin:0 !important;padding:0 !important;font-size:1rem;line-height:1.85}
body.vsz-pdp .woocommerce-tabs .panel > h2{margin:0 0 14px !important;font-size:1.35rem !important;font-weight:800 !important;color:var(--pdp-ink)}

/* Phones: flat card + sticky order bar */
@media(max-width:920px){
  body.vsz-pdp main.site-main{padding-top:12px !important}
  body.vsz-pdp .wac-floating-button{display:none !important}
  body.vsz-pdp .woocommerce-tabs ul.tabs{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;scroll-snap-type:none}
  body.vsz-pdp .woocommerce-tabs ul.tabs li{display:flex !important}
  body.vsz-pdp .woocommerce-tabs ul.tabs li a{flex:1;justify-content:center;padding:6px 10px !important;border-radius:12px;white-space:normal;text-align:center;line-height:1.35}
  .vsz-pdp-bar{position:fixed;inset-inline:0;bottom:0;z-index:99;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--pdp-line);transform:translateY(110%);visibility:hidden;transition:transform .25s ease-out,visibility 0s linear .25s}
  .vsz-pdp-bar.is-on{transform:none;visibility:visible;transition:transform .25s ease-out,visibility 0s}
  .vsz-pdp-bar .vsz-bar-price{line-height:1.2;font-size:1.2rem;font-weight:800;color:var(--pdp-royal);white-space:nowrap}
  .vsz-pdp-bar .vsz-bar-price del{display:none}
  .vsz-pdp-bar .vsz-bar-price ins{text-decoration:none;background:none}
  .vsz-pdp-bar .vsz-bar-price .woocommerce-Price-currencySymbol{font-size:.65em;font-weight:600;color:var(--pdp-muted)}
  .vsz-pdp-bar .vsz-order{flex:1;min-height:48px;font-size:1rem}
  body.vsz-pdp{padding-bottom:76px}
}
@media(min-width:601px) and (max-width:920px){body.vsz-pdp .woocommerce-tabs ul.tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:921px){.vsz-pdp-bar{display:none}}
@media(prefers-reduced-motion:reduce){.vsz-pdp-bar,.vsz-order,body.vsz-pdp .woocommerce-tabs ul.tabs li a{transition:none}}

/* Related products: same cards as the archives ([archive-grid]) */
body.vsz-pdp section.related > h2,body.vsz-pdp section.up-sells > h2{margin:0 0 18px !important;font-size:1.5rem !important;font-weight:800 !important;color:var(--pdp-ink)}
body.vsz-pdp section.related ul.products,body.vsz-pdp section.up-sells ul.products{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;margin:0 0 40px !important;padding:0 !important;list-style:none !important}
@media(min-width:700px){body.vsz-pdp section.related ul.products,body.vsz-pdp section.up-sells ul.products{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:16px !important}}
body.vsz-pdp section.related ul.products::before,body.vsz-pdp section.related ul.products::after{content:none !important;display:none !important}
body.vsz-pdp section.related ul.products li.product{position:relative;display:flex !important;flex-direction:column;width:auto !important;max-width:none !important;margin:0 !important;padding:0 !important;float:none !important;background:#fff !important;border:1px solid var(--pdp-line) !important;border-radius:14px !important;box-shadow:none !important;overflow:hidden;text-align:start !important;transition:border-color .2s}
body.vsz-pdp section.related ul.products li.product:hover{border-color:#1B3FD8 !important}
body.vsz-pdp section.related ul.products li.product .astra-shop-thumbnail-wrap{position:static !important;margin:0 !important;padding:0 !important;background:#fff}
body.vsz-pdp section.related ul.products li.product .astra-shop-thumbnail-wrap img{width:100% !important;height:auto;margin:0 !important}
body.vsz-pdp section.related ul.products li.product :is(.ast-on-card-button,.onsale,.star-rating,.button,.added_to_cart,.ast-woo-shop-product-description){display:none !important}
body.vsz-pdp section.related ul.products li.product .astra-shop-summary-wrap{position:static !important;display:flex;flex-direction:column;gap:4px;flex:1;padding:12px 14px 14px !important;text-align:start !important}
body.vsz-pdp section.related ul.products li.product .astra-shop-summary-wrap > *{text-align:start !important}
body.vsz-pdp section.related ul.products li.product .ast-woo-product-category{display:block;margin:0 !important;font-size:.74rem;font-weight:700;color:#136C93;opacity:1}
body.vsz-pdp section.related ul.products li.product .ast-loop-product__link{color:var(--pdp-ink) !important;text-decoration:none !important}
body.vsz-pdp section.related ul.products li.product .ast-loop-product__link::after{content:"";position:absolute;inset:0;z-index:1}
body.vsz-pdp section.related ul.products li.product .woocommerce-loop-product__title{margin:0 !important;padding:0 !important;min-height:3em;font-size:.95rem !important;font-weight:700 !important;line-height:1.5 !important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.vsz-pdp section.related ul.products li.product .price{display:block;margin:auto 0 0 !important;padding-top:6px;font-size:1.08rem !important;font-weight:800 !important;color:var(--pdp-royal) !important}
body.vsz-pdp section.related ul.products li.product .price .woocommerce-Price-currencySymbol{font-size:.72em;font-weight:500;color:var(--pdp-muted)}
/* EN: the specs list lives in its own tab, leaving an empty "Key Specifications:" h3 at the end of the description */
body.vsz-pdp .woocommerce-Tabs-panel--description > h3:last-child{display:none}
