/*
Theme Name: VOREVIA Premium V6.18.76 Catalogue Research Expansion
Theme URI: https://vorevia.co.uk
Author: VOREVIA
Description: Homepage matched to the approved V6.1.3 rendering.
Version: 6.18.76
Text Domain: vorevia-premium-v6-1-4
*/

:root{
 --black:#050709;
 --black2:#0b0f12;
 --line:#2e3337;
 --white:#ffffff;
 --muted:#b9bec2;
 --text:#111315;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;
 background:var(--black);
 color:#fff;
 font-family:Arial,Helvetica,sans-serif;
 line-height:1.4;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.vv-wrap{width:min(1450px,95vw);margin:0 auto}

/* top utility bar */
.vv-topbar{
 height:30px;
 background:#020304;
 border-bottom:1px solid #25292c;
 font-size:10px;
 font-weight:700;
 letter-spacing:.04em;
}
.vv-topbar .vv-wrap{
 height:100%;
 display:flex;
 align-items:center;
 justify-content:space-between;
}
.vv-top-left{letter-spacing:.03em}
.vv-top-center{letter-spacing:.14em}
.vv-top-right{display:flex;gap:16px;align-items:center}

/* white navigation */
.vv-header{
 height:68px;
 background:#fff;
 color:#111;
 border-bottom:1px solid #dcdede;
}
.vv-header .vv-wrap{
 height:100%;
 display:grid;
 grid-template-columns:300px 1fr 125px;
 align-items:center;
 gap:22px;
}
.vv-logo img{
 width:250px;
 height:60px;
 object-fit:cover;
 object-position:left center;
}
.vv-nav{
 display:flex;
 justify-content:center;
 gap:30px;
 font-size:12px;
 font-weight:700;
}
.vv-nav a{
 padding:24px 2px 22px;
 position:relative;
 white-space:nowrap;
 overflow:visible;
}
.vv-nav a.is-active:after{
 content:"";
 position:absolute;
 left:0; right:0; bottom:14px;
 height:2px; background:#111;
}
.vv-actions{
 display:flex;
 justify-content:flex-end;
 gap:18px;
 align-items:center;
 font-size:20px;
}
.vv-search-icon{width:23px;height:23px;display:inline-block;position:relative;flex:0 0 23px}
.vv-search-icon:before{content:"";position:absolute;width:11px;height:11px;border:2px solid #111;border-radius:50%;left:2px;top:2px}
.vv-search-icon:after{content:"";position:absolute;width:9px;height:2px;background:#111;transform:rotate(45deg);left:12px;top:15px;transform-origin:left center}

/* hero */
.vv-hero{
 background:#020405;
 border-bottom:1px solid #2a2f33;
}
.vv-hero .vv-wrap{
 min-height:385px;
 display:grid;
 grid-template-columns:47% 53%;
}
.vv-hero-copy{
 padding:38px 28px 34px 22px;
 display:flex;
 flex-direction:column;
 justify-content:center;
}
.vv-kicker{
 font-size:11px;
 font-weight:700;
 letter-spacing:.20em;
 margin-bottom:12px;
}
.vv-hero h1{
 margin:0;
 font-weight:600;
 font-size:59px;
 line-height:.98;
 letter-spacing:-.01em;
}
.vv-hero-rule{
 width:475px;
 height:2px;
 background:#fff;
 margin:14px 0 15px;
 opacity:.95;
}
.vv-hero-copy>p{
 margin:0 0 18px;
 font-size:17px;
 max-width:520px;
 color:#f0f1f2;
 line-height:1.45;
}
.vv-hero-buttons{
 display:flex;
 gap:12px;
 margin-bottom:26px;
}
.vv-btn{
 min-height:43px;
 padding:0 24px;
 border:1px solid #8b9094;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 gap:18px;
 font-size:11px;
 font-weight:700;
}
.vv-btn.light{background:#fff;color:#111;border-color:#fff}
.vv-btn.dark{background:transparent;color:#fff}
.vv-trust{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:26px;
 max-width:680px;
}
.vv-trust-item{
 display:flex;
 gap:12px;
 align-items:center;
}
.vv-trust-icon{font-size:28px;line-height:1}
.vv-trust-copy b{
 display:block;
 font-size:11px;
 margin-bottom:10px;
 padding-top:2px;
 overflow:visible;
}
.vv-trust-copy small{
 display:block;
 font-size:10px;
 color:#d5d8da;
}
.vv-hero-image{
 min-height:385px;
 background:url("assets/images/v613-hero.webp") center center/cover no-repeat;
}

/* featured products */
.vv-featured{
 background:#fff;
 color:#111;
 padding:14px 0 12px;
}
.vv-featured-head{
 text-align:center;
 margin-bottom:2px;
}
.vv-featured-head .vv-kicker{
 color:#111;
 margin:0 0 1px;
 font-size:10px;
}
.vv-featured h2{
 margin:0;
 padding:2px 0 1px;
 line-height:1.25;
 overflow:visible;
 font-size:24px;
 letter-spacing:.05em;
 font-weight:600;
}
.vv-head-rule{
 width:50px;
 height:2px;
 background:#111;
 margin:6px auto 2px;
}
.vv-products{
 display:grid;
 grid-template-columns:repeat(4,1fr);
}
.vv-product{
 min-height:332px;
 padding:0 26px 12px;
 border-right:1px solid #e2e4e5;
 display:grid;
 grid-template-rows:205px auto;
}
.vv-product:last-child{border-right:0}
.vv-product-image{
 display:flex;
 justify-content:center;
 align-items:center;
 overflow:hidden;
}
.vv-product-image img{
 max-height:205px;
 width:auto;
 object-fit:contain;
 border:0 !important;
 box-shadow:none !important;
 outline:0 !important;
}
.vv-product-meta{
 font-size:10px;
 letter-spacing:.04em;
 color:#5f6468;
 margin-bottom:3px;
}
.vv-product h3{
 font-size:20px;
 font-weight:500;
 margin:0 0 1px;
}
.vv-price{
 font-size:18px;
 font-weight:700;
 margin-bottom:1px;
}
.vv-stock{
 font-size:12px;
 color:#202427;
 margin-bottom:7px;
}
.vv-stock-dot{color:#12a541}
.vv-product-actions{
 display:grid;
 grid-template-columns:1fr 46px;
 gap:7px;
}
.vv-product-actions a{
 min-height:38px;
 border:1px solid #878c90;
 display:flex;
 align-items:center;
 justify-content:center;
 font-size:11px;
 font-weight:700;
}
.vv-cart{background:#081015;color:#fff;border-color:#081015 !important}

/* QA */
.vv-qa{
 min-height:160px;
 background:#05090c;
 border-top:1px solid #252b2f;
}
.vv-qa .vv-wrap{
 min-height:160px;
 display:grid;
 grid-template-columns:1.2fr .75fr .9fr;
}
.vv-qa-copy{
 padding:18px 28px 15px 0;
}
.vv-qa-copy .vv-kicker{
 margin:0 0 2px;
 font-size:10px;
}
.vv-qa-copy h2{
 margin:0 0 7px;
 font-size:24px;
 font-weight:600;
 letter-spacing:.02em;
}
.vv-qa-copy p{
 margin:0 0 10px;
 font-size:12px;
 line-height:1.45;
 color:#e3e6e8;
 max-width:620px;
}
.vv-qa-points{
 border-left:1px solid #2d3236;
 border-right:1px solid #2d3236;
 display:flex;
 flex-direction:column;
 justify-content:center;
 gap:16px;
 padding:0 30px;
 font-size:12px;
}
.vv-qa-point{
 display:flex;
 align-items:center;
 gap:13px;
}
.vv-qa-point span{font-size:22px}
.vv-qa-image{
 min-height:160px;
 background:url("assets/images/v613-qa.jpg") center/cover no-repeat;
}

/* responsive */
@media(max-width:1100px){
 .vv-nav{gap:18px;font-size:11px}
 .vv-header .vv-wrap{grid-template-columns:250px 1fr}
 .vv-actions{display:none}
 .vv-products{grid-template-columns:repeat(2,1fr)}
 .vv-product:nth-child(2){border-right:0}
}
@media(max-width:760px){
 .vv-top-center{display:none}
 .vv-header{height:auto}
 .vv-header .vv-wrap{grid-template-columns:1fr;padding:6px 0}
 .vv-nav{display:none}
 .vv-hero .vv-wrap{grid-template-columns:1fr}
 .vv-hero-copy{padding:36px 10px 28px}
 .vv-hero h1{font-size:43px}
 .vv-hero-rule{width:100%}
 .vv-trust{grid-template-columns:1fr}
 .vv-hero-image{min-height:320px}
 .vv-products{grid-template-columns:1fr}
 .vv-product{border-right:0;border-bottom:1px solid #e2e4e5}
 .vv-qa .vv-wrap{grid-template-columns:1fr}
 .vv-qa-points{border:0;border-top:1px solid #2d3236;border-bottom:1px solid #2d3236;padding:20px 0}
 .vv-qa-copy{padding:20px 0}
 .vv-qa-image{min-height:220px}
}


/* V6.1.4 footer restored */
.vv-footer{background:#05090c;color:#fff;border-top:1px solid #2d3236;padding-top:28px}
.vv-footer-grid{display:grid;grid-template-columns:1.35fr .7fr .7fr 1fr 1.25fr;gap:36px;padding-bottom:28px}
.vv-footer-brand img{width:220px;height:54px;object-fit:cover;object-position:left center;filter:invert(1) grayscale(1);opacity:.95}
.vv-footer-brand p{font-size:12px;color:#cfd3d6;margin:8px 0 0}
.vv-footer h3,.vv-footer h4{font-size:11px;letter-spacing:.09em;margin:0 0 10px;color:#fff}
.vv-footer-col a{display:block;font-size:12px;color:#d7dbde;margin:0 0 7px}
.vv-footer-col a:hover{text-decoration:underline}
.vv-footer-research p{font-size:11px;line-height:1.5;color:#d7dbde;margin:0}
.vv-footer-bottom{border-top:1px solid #2d3236;padding:11px 0;font-size:10px;color:#aeb4b8}
.vv-footer-bottom .vv-wrap{display:flex;justify-content:space-between}
@media(max-width:900px){.vv-footer-grid{grid-template-columns:repeat(2,1fr)}.vv-footer-brand,.vv-footer-research{grid-column:1/-1}}
@media(max-width:560px){.vv-footer-grid{grid-template-columns:1fr}.vv-footer-brand,.vv-footer-research{grid-column:auto}.vv-footer-bottom .vv-wrap{display:block}.vv-footer-bottom span{display:block;margin:3px 0}}

/* V6.1.5 surgical fixes only */
.vv-nav a{
  text-rendering:geometricPrecision;
  -webkit-font-smoothing:antialiased;
  font-kerning:normal;
}

/* V6.1.7 surgical cleanup: SHOP label and top-right banner icons only. */
.vv-nav a:nth-child(2)::before,
.vv-nav a:nth-child(2)::after{
  content:none !important;
  display:none !important;
}
.vv-nav a:nth-child(2){
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
  text-decoration:none;
}


/* =========================================================
   V6.2.0 — SHOP / PRODUCT CATALOGUE
   V6.1.7 homepage design language preserved unchanged.
   ========================================================= */

.vv-shop-page{
  background:#050709;
  color:#fff;
}
.vv-shop-intro{
  background:#050709;
  border-bottom:1px solid #303539;
}
.vv-shop-intro .vv-wrap{
  padding:38px 0 30px;
  text-align:center;
}
.vv-shop-intro .vv-shop-kicker{
  font-size:11px;
  font-weight:700;
  letter-spacing:.20em;
  margin-bottom:5px;
}
.vv-shop-intro h1{
  margin:0;
  font-size:34px;
  line-height:1.05;
  font-weight:600;
  letter-spacing:.045em;
}
.vv-shop-intro-rule{
  width:52px;
  height:2px;
  background:#fff;
  margin:10px auto 12px;
}
.vv-shop-intro p{
  max-width:720px;
  margin:0 auto;
  font-size:14px;
  line-height:1.55;
  color:#d5d9dc;
}

.vv-shop-filterbar{
  border-bottom:1px solid #303539;
  background:#090c0f;
}
.vv-shop-filterbar .vv-wrap{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.vv-shop-filters{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}
.vv-filter{
  min-height:34px;
  padding:0 15px;
  border:1px solid #555b60;
  background:transparent;
  color:#fff;
  font:inherit;
  font-size:10px;
  font-weight:700;
  letter-spacing:.035em;
  cursor:pointer;
}
.vv-filter.is-active{
  background:#fff;
  color:#111;
  border-color:#fff;
}
.vv-shop-count{
  font-size:10px;
  letter-spacing:.10em;
  color:#c4c9cc;
  white-space:nowrap;
}

.vv-catalogue{
  background:#fff;
  color:#111;
  padding:22px 0 28px;
}
.vv-catalogue-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid #e0e2e3;
  border-left:1px solid #e0e2e3;
}
.vv-catalogue-card{
  min-width:0;
  min-height:390px;
  padding:12px 22px 16px;
  border-right:1px solid #e0e2e3;
  border-bottom:1px solid #e0e2e3;
  display:grid;
  grid-template-rows:225px auto;
  background:#fff;
}
.vv-catalogue-card[hidden]{display:none}
.vv-catalogue-image{
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.vv-catalogue-image img{
  max-height:220px;
  width:auto;
  max-width:94%;
  object-fit:contain;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.vv-catalogue-meta{
  color:#5f6468;
  font-size:10px;
  letter-spacing:.055em;
  margin-bottom:4px;
  min-height:14px;
}
.vv-catalogue-card h2{
  margin:0 0 3px;
  font-size:19px;
  line-height:1.15;
  font-weight:500;
  min-height:44px;
}
.vv-catalogue-price{
  font-size:18px;
  font-weight:700;
  margin-bottom:2px;
}
.vv-catalogue-stock{
  font-size:12px;
  margin-bottom:9px;
  color:#202427;
}
.vv-catalogue-stock span{color:#12a541}
.vv-catalogue-actions{
  display:grid;
  grid-template-columns:1fr 46px;
  gap:7px;
}
.vv-catalogue-actions a{
  min-height:38px;
  border:1px solid #878c90;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:700;
}
.vv-catalogue-actions .vv-catalogue-cart{
  background:#081015;
  color:#fff;
  border-color:#081015;
}
.vv-catalogue-note{
  margin-top:18px;
  padding:15px 18px;
  border:1px solid #d7d9da;
  text-align:center;
  font-size:11px;
  line-height:1.5;
  color:#404549;
}
.vv-catalogue-note strong{color:#111}

.vv-shop-quality{
  background:#05090c;
  border-top:1px solid #252b2f;
  border-bottom:1px solid #252b2f;
}
.vv-shop-quality .vv-wrap{
  min-height:130px;
  display:grid;
  grid-template-columns:1.15fr 1fr;
  align-items:center;
  gap:50px;
}
.vv-shop-quality h2{
  margin:2px 0 6px;
  font-size:23px;
  font-weight:600;
}
.vv-shop-quality p{
  margin:0;
  color:#d6dade;
  font-size:12px;
  line-height:1.5;
}
.vv-shop-quality-points{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.vv-shop-quality-point{
  display:flex;
  gap:10px;
  align-items:center;
  font-size:11px;
  font-weight:700;
}
.vv-shop-quality-point span{font-size:22px}

@media(max-width:1100px){
  .vv-catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .vv-shop-intro .vv-wrap{padding:28px 10px 24px}
  .vv-shop-intro h1{font-size:28px}
  .vv-shop-filterbar .vv-wrap{
    padding:12px 0;
    align-items:flex-start;
    flex-direction:column;
  }
  .vv-shop-count{white-space:normal}
  .vv-catalogue-grid{grid-template-columns:1fr}
  .vv-catalogue-card{grid-template-rows:235px auto}
  .vv-shop-quality .vv-wrap{
    grid-template-columns:1fr;
    padding:22px 0;
    gap:18px;
  }
  .vv-shop-quality-points{grid-template-columns:1fr}
}


/* =========================================================
   V6.2.2 — SHOP NAVIGATION + PRODUCT PAGE REFINEMENT
   ========================================================= */

.vv-commerce-nav{
  background:#0a0f13;
  border-top:1px solid #242a2f;
  border-bottom:1px solid #30363b;
  color:#fff;
}
.vv-commerce-nav .vv-wrap{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.vv-commerce-trail{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}
.vv-commerce-trail a{color:#fff}
.vv-commerce-trail .vv-sep{opacity:.45}
.vv-back-shop{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:0 14px;
  border:1px solid #6a7075;
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}
.vv-back-shop:hover{background:#fff;color:#111}

.single-product .product{
  max-width:1180px;
  margin:0 auto!important;
  padding:44px 0 34px!important;
}
.single-product div.product div.images{
  background:#fff;
  padding:28px;
  box-sizing:border-box;
}
.single-product div.product div.images img{
  width:auto!important;
  max-width:100%!important;
  max-height:520px;
  margin:0 auto!important;
  object-fit:contain;
}
.single-product div.product div.summary{
  padding:18px 0 0 20px;
}
.single-product div.product .product_title{
  font-size:30px;
  line-height:1.08;
}
.single-product div.product p.price,
.single-product div.product span.price{
  color:#d7b46a!important;
  font-weight:700;
}
.single-product div.product .button{
  background:#fff!important;
  color:#111!important;
  border-radius:0!important;
  min-height:40px;
  padding:0 18px!important;
}
.single-product div.product .quantity .qty{
  min-height:40px;
}
.vv-product-image-fallback{
  width:100%;
  min-height:510px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
}
.vv-product-image-fallback img{
  max-width:78%;
  max-height:480px;
  object-fit:contain;
}
@media(max-width:760px){
  .vv-commerce-nav .vv-wrap{
    padding:10px 0;
    align-items:flex-start;
    flex-direction:column;
  }
  .single-product .product{padding:24px 0!important}
  .single-product div.product div.summary{padding-left:0}
  .vv-product-image-fallback{min-height:360px}
}


/* =========================================================
   V6.2.3 — APPROVED INDIVIDUAL PRODUCT PAGE DESIGN
   ========================================================= */

.vv-product-page{
  background:#fff;
  color:#0b1116;
}
.vv-product-breadcrumb{
  background:#f5f6f7;
  border-bottom:1px solid #dde0e2;
}
.vv-product-breadcrumb .vv-wrap{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.vv-product-breadcrumb .trail{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
  font-size:11px;
}
.vv-product-breadcrumb .trail a{color:#10161a}
.vv-product-breadcrumb .sep{opacity:.45}
.vv-product-breadcrumb .back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:700;
  color:#0c1115;
  white-space:nowrap;
}

.vv-product-shell{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,1.18fr);
  gap:38px;
  padding:18px 0 34px;
}
.vv-product-visual{
  background:#f1f2f3;
  min-height:585px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.vv-product-visual img{
  max-width:92%;
  max-height:555px;
  object-fit:contain;
}
.vv-product-info{
  padding:8px 0 0;
}
.vv-product-category{
  font-size:11px;
  font-weight:700;
  letter-spacing:.18em;
  margin-bottom:9px;
}
.vv-product-info h1{
  margin:0 0 13px;
  font-size:40px;
  line-height:1.03;
  font-weight:700;
  letter-spacing:-.02em;
}
.vv-product-price{
  font-size:38px;
  line-height:1;
  font-weight:700;
  margin-bottom:22px;
}
.vv-product-summary{
  font-size:16px;
  line-height:1.55;
  margin-bottom:21px;
  max-width:690px;
}
.vv-product-stock{
  font-size:14px;
  margin-bottom:18px;
}
.vv-product-stock .dot{
  color:#17a653;
  font-size:18px;
  vertical-align:-1px;
}
.vv-buy-row{
  display:flex;
  align-items:stretch;
  gap:12px;
  margin-bottom:23px;
}
.vv-buy-row form.cart{
  display:flex!important;
  align-items:stretch;
  margin:0!important;
}
.vv-buy-row .quantity .qty{
  height:54px!important;
  width:76px!important;
  border:1px solid #bfc4c7!important;
  border-radius:0!important;
  font-size:16px;
}
.vv-buy-row .single_add_to_cart_button{
  min-width:320px;
  height:54px!important;
  border:0!important;
  border-radius:0!important;
  background:#08141c!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:700!important;
}
.vv-product-meta{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  font-size:12px;
  margin-bottom:28px;
}
.vv-product-meta span+span{
  border-left:1px solid #c8cccf;
  padding-left:18px;
}
.vv-assurance-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #d8dcde;
  border-bottom:1px solid #d8dcde;
  padding:17px 0;
  margin-bottom:26px;
}
.vv-assurance-item{
  display:flex;
  align-items:center;
  gap:11px;
  padding:0 17px;
  min-width:0;
}
.vv-assurance-item:first-child{padding-left:0}
.vv-assurance-item+.vv-assurance-item{border-left:1px solid #d8dcde}
.vv-assurance-icon{
  width:33px;
  height:33px;
  border:2px solid #0b1217;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 33px;
  font-weight:700;
}
.vv-assurance-item strong{
  display:block;
  font-size:10px;
  letter-spacing:.025em;
}
.vv-assurance-item small{
  display:block;
  font-size:10px;
  margin-top:3px;
}

.vv-product-tabs{
  border-bottom:1px solid #d7dbde;
  display:flex;
  gap:34px;
  margin-bottom:22px;
}
.vv-product-tabs span{
  display:inline-block;
  padding:0 12px 12px;
  font-size:13px;
}
.vv-product-tabs .active{
  border-bottom:2px solid #0a1116;
  font-weight:700;
}
.vv-product-description{
  font-size:14px;
  line-height:1.7;
  max-width:740px;
}

.vv-product-service-strip{
  border-top:1px solid #d9dddf;
  border-bottom:1px solid #d9dddf;
  background:#fff;
}
.vv-product-service-strip .vv-wrap{
  min-height:88px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.vv-product-service{
  display:flex;
  align-items:center;
  gap:13px;
  padding:0 25px;
}
.vv-product-service+.vv-product-service{
  border-left:1px solid #d9dddf;
}
.vv-service-icon{
  font-size:28px;
  line-height:1;
}
.vv-product-service strong{
  display:block;
  font-size:10px;
}
.vv-product-service small{
  display:block;
  font-size:10px;
  margin-top:2px;
}

@media(max-width:900px){
  .vv-product-shell{grid-template-columns:1fr}
  .vv-product-visual{min-height:440px}
  .vv-product-info h1{font-size:34px}
  .vv-product-price{font-size:31px}
  .vv-buy-row .single_add_to_cart_button{min-width:220px}
  .vv-product-service-strip .vv-wrap{grid-template-columns:repeat(2,1fr)}
  .vv-product-service:nth-child(3){border-left:0}
}
@media(max-width:620px){
  .vv-product-breadcrumb .vv-wrap{
    padding:10px 0;
    align-items:flex-start;
    flex-direction:column;
  }
  .vv-product-shell{gap:22px}
  .vv-product-visual{min-height:340px}
  .vv-product-info h1{font-size:29px}
  .vv-buy-row{display:block}
  .vv-buy-row form.cart{width:100%}
  .vv-buy-row .single_add_to_cart_button{min-width:0;flex:1}
  .vv-assurance-row{grid-template-columns:1fr}
  .vv-assurance-item{padding:12px 0}
  .vv-assurance-item+.vv-assurance-item{
    border-left:0;
    border-top:1px solid #d8dcde;
  }
  .vv-product-service-strip .vv-wrap{grid-template-columns:1fr}
  .vv-product-service{
    min-height:68px;
    padding:0;
  }
  .vv-product-service+.vv-product-service{
    border-left:0;
    border-top:1px solid #d9dddf;
  }
}


/* =========================================================
   V6.2.4 — FINAL PRODUCT IMAGE CONSISTENCY
   ========================================================= */

/* Shop catalogue: all vials occupy the same visual footprint */
.vv-catalogue-image{
  background:#fff!important;
  min-height:245px;
}
.vv-catalogue-image img{
  display:block;
  width:auto!important;
  height:auto!important;
  max-width:88%!important;
  max-height:235px!important;
  object-fit:contain!important;
  background:#fff!important;
}

/* Individual product pages: larger product imagery */
.vv-product-visual{
  min-height:640px!important;
  background:#fff!important;
}
.vv-product-visual img{
  width:auto!important;
  height:auto!important;
  max-width:96%!important;
  max-height:610px!important;
  object-fit:contain!important;
  background:#fff!important;
}

/* Slightly favour the image column on desktop */
@media(min-width:901px){
  .vv-product-shell{
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
    gap:42px!important;
  }
}
@media(max-width:900px){
  .vv-product-visual{
    min-height:500px!important;
  }
  .vv-product-visual img{
    max-height:470px!important;
  }
}
@media(max-width:620px){
  .vv-product-visual{
    min-height:390px!important;
  }
  .vv-product-visual img{
    max-height:365px!important;
    max-width:94%!important;
  }
}

/* V6.2.5 — approved large vial proportions on individual product pages only */
@media(min-width:901px){
 .vv-product-shell{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)!important;gap:46px!important;padding-top:24px!important}
 .vv-product-visual{min-height:690px!important;height:690px!important;padding:0!important;background:#fff!important;overflow:hidden!important}
 .vv-product-visual img{display:block!important;width:auto!important;height:650px!important;max-width:98%!important;max-height:650px!important;object-fit:contain!important;margin:auto!important;background:#fff!important}
}
@media(max-width:900px) and (min-width:621px){
 .vv-product-visual{min-height:570px!important;height:570px!important}
 .vv-product-visual img{height:535px!important;width:auto!important;max-width:96%!important;max-height:535px!important;object-fit:contain!important}
}
@media(max-width:620px){
 .vv-product-visual{min-height:450px!important;height:450px!important}
 .vv-product-visual img{height:420px!important;width:auto!important;max-width:96%!important;max-height:420px!important;object-fit:contain!important}
}


/* =========================================================
   V6.3.0 — QUALITY ASSURANCE
   Built on frozen V6.2.5 design language.
   ========================================================= */
.vv-qa-page{background:#fff;color:#0a1116}
.vv-qa-hero{
  background:#071016;
  color:#fff;
  border-top:1px solid #283138;
  border-bottom:1px solid #283138;
}
.vv-qa-hero .vv-wrap{
  min-height:330px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
  gap:70px;
}
.vv-qa-kicker{
  font-size:11px;font-weight:700;letter-spacing:.20em;margin-bottom:10px
}
.vv-qa-hero h1{
  margin:0 0 14px;font-size:48px;line-height:1.02;font-weight:650;letter-spacing:.02em
}
.vv-qa-hero p{
  margin:0;max-width:650px;color:#d5dadd;font-size:15px;line-height:1.65
}
.vv-qa-hero-mark{
  display:flex;align-items:center;justify-content:center;min-height:220px;
  border-left:1px solid #343d43
}
.vv-qa-hero-mark-inner{text-align:center}
.vv-qa-hero-symbol{
  width:108px;height:108px;border:1px solid #7e878d;border-radius:54px;
  display:flex;align-items:center;justify-content:center;margin:0 auto 16px;
  font-size:48px;font-weight:300
}
.vv-qa-hero-mark strong{font-size:12px;letter-spacing:.16em}
.vv-qa-intro{padding:55px 0 48px}
.vv-qa-intro-grid{
  display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start
}
.vv-qa-section-label{
  font-size:10px;font-weight:700;letter-spacing:.18em;margin-bottom:9px
}
.vv-qa-intro h2,.vv-qa-process h2,.vv-qa-docs h2{
  margin:0;font-size:31px;line-height:1.12;font-weight:600
}
.vv-qa-intro-copy{font-size:15px;line-height:1.75;color:#30363a}
.vv-qa-intro-copy p:first-child{margin-top:0}
.vv-qa-principles{
  background:#f4f5f5;border-top:1px solid #dadddf;border-bottom:1px solid #dadddf
}
.vv-qa-principles .vv-wrap{
  display:grid;grid-template-columns:repeat(4,1fr)
}
.vv-qa-principle{
  min-height:185px;padding:32px 28px;border-right:1px solid #d7dbdd
}
.vv-qa-principle:first-child{border-left:1px solid #d7dbdd}
.vv-qa-principle-icon{
  width:42px;height:42px;border:1px solid #10171c;
  display:flex;align-items:center;justify-content:center;margin-bottom:20px;font-size:20px
}
.vv-qa-principle h3{
  margin:0 0 8px;font-size:13px;letter-spacing:.06em
}
.vv-qa-principle p{
  margin:0;font-size:12px;line-height:1.55;color:#555c60
}
.vv-qa-process{padding:58px 0}
.vv-qa-process-head{
  display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:30px
}
.vv-qa-process-head p{
  max-width:580px;margin:0;font-size:13px;line-height:1.6;color:#555c60
}
.vv-qa-steps{
  display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bfc5c8
}
.vv-qa-step{position:relative;padding:28px 30px 0 0}
.vv-qa-step:not(:last-child){margin-right:25px}
.vv-qa-step-no{
  width:32px;height:32px;border-radius:50%;background:#09131a;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;
  margin-top:-45px;margin-bottom:23px
}
.vv-qa-step h3{font-size:14px;margin:0 0 8px}
.vv-qa-step p{font-size:12px;line-height:1.6;color:#555c60;margin:0}
.vv-qa-docs{
  background:#071016;color:#fff;padding:54px 0
}
.vv-qa-docs-grid{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center
}
.vv-qa-docs p{color:#d2d7da;font-size:13px;line-height:1.65}
.vv-qa-doc-list{border-top:1px solid #3a4349}
.vv-qa-doc-row{
  min-height:64px;border-bottom:1px solid #3a4349;
  display:grid;grid-template-columns:42px 1fr;align-items:center;gap:12px
}
.vv-qa-doc-row span{font-size:20px}
.vv-qa-doc-row strong{display:block;font-size:12px;letter-spacing:.04em}
.vv-qa-doc-row small{display:block;color:#bfc5c9;font-size:10px;margin-top:3px}
.vv-qa-standards{padding:48px 0}
.vv-qa-standards-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px
}
.vv-qa-standard{
  border:1px solid #d6dade;padding:25px;min-height:140px
}
.vv-qa-standard h3{font-size:13px;margin:0 0 9px}
.vv-qa-standard p{font-size:12px;line-height:1.6;color:#555c60;margin:0}
.vv-qa-disclaimer{
  border-top:1px solid #d8dcde;background:#f5f6f6
}
.vv-qa-disclaimer .vv-wrap{
  min-height:90px;display:flex;align-items:center;justify-content:center;text-align:center
}
.vv-qa-disclaimer p{
  max-width:900px;margin:0;font-size:11px;line-height:1.6;color:#4d5458
}
@media(max-width:900px){
 .vv-qa-hero .vv-wrap,.vv-qa-intro-grid,.vv-qa-docs-grid{grid-template-columns:1fr}
 .vv-qa-hero .vv-wrap{padding:42px 0;gap:28px}
 .vv-qa-hero-mark{border-left:0;border-top:1px solid #343d43;padding-top:25px}
 .vv-qa-principles .vv-wrap,.vv-qa-steps{grid-template-columns:repeat(2,1fr)}
 .vv-qa-process-head{align-items:start;flex-direction:column}
}
@media(max-width:620px){
 .vv-qa-hero h1{font-size:36px}
 .vv-qa-principles .vv-wrap,.vv-qa-steps,.vv-qa-standards-grid{grid-template-columns:1fr}
 .vv-qa-principle{border-left:1px solid #d7dbdd}
 .vv-qa-step{margin-bottom:35px}
}

/* V6.3.0.1 — inner-page navigation */
.vv-inner-nav{background:#f4f5f5;border-bottom:1px solid #d9dddf}
.vv-inner-nav .vv-wrap{
  min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:20px
}
.vv-inner-crumbs{font-size:12px;color:#4c5459}
.vv-inner-crumbs a{color:#111820;text-decoration:none}
.vv-inner-crumbs span{padding:0 10px;color:#92999d}
.vv-back-button{
  display:inline-flex;align-items:center;gap:9px;color:#0b1319!important;
  text-decoration:none!important;font-size:12px;font-weight:650;letter-spacing:.03em;
  border:1px solid #aeb5b9;padding:10px 15px;background:#fff
}
.vv-back-button:hover{background:#09131a;color:#fff!important;border-color:#09131a}
@media(max-width:620px){
 .vv-inner-nav .vv-wrap{min-height:70px}
 .vv-inner-crumbs{font-size:10px}
 .vv-back-button{padding:9px 11px;font-size:10px}
}


/* V6.3.0.2 — reliable QA navigation controls */
.vv-inner-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.vv-nav-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:88px;
  padding:10px 14px;
  border:1px solid #aeb5b9;
  background:#fff;
  color:#0b1319!important;
  text-decoration:none!important;
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
}
.vv-nav-button:hover{
  background:#09131a;
  border-color:#09131a;
  color:#fff!important;
}
@media(max-width:620px){
  .vv-inner-nav .vv-wrap{
    align-items:flex-start;
    flex-direction:column;
    padding:12px 0;
  }
  .vv-inner-actions{width:100%}
  .vv-nav-button{flex:1}
}


/* V6.3.0.3 — QA hero brand emphasis */
.vv-qa-hero-mark strong{
  display:block!important;
  font-size:24px!important;
  line-height:1.15!important;
  letter-spacing:.10em!important;
  font-weight:650!important;
  max-width:360px;
  margin:0 auto;
}
.vv-qa-hero-symbol{
  width:122px!important;
  height:122px!important;
  border-radius:61px!important;
  font-size:54px!important;
  margin-bottom:22px!important;
}
@media(max-width:620px){
  .vv-qa-hero-mark strong{font-size:18px!important}
}


/* =========================================================
   V6.3.1 — PREMIUM QUALITY ASSURANCE HERO
   ========================================================= */
.vv-qa-hero{
  background:#07131c!important;
  color:#fff!important;
  overflow:hidden;
}
.vv-qa-hero .vv-wrap{
  max-width:none!important;
  width:100%!important;
  min-height:350px!important;
  display:grid!important;
  grid-template-columns:1fr 1.18fr!important;
  gap:0!important;
  padding:0!important;
}
.vv-qa-hero-copy{
  padding:48px max(5vw,60px)!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:linear-gradient(105deg,#07131c 0%,#091823 100%);
}
.vv-qa-hero .vv-qa-kicker{
  font-size:12px!important;
  letter-spacing:.28em!important;
  margin-bottom:14px!important;
}
.vv-qa-hero h1{
  font-size:54px!important;
  line-height:1.02!important;
  letter-spacing:.015em!important;
  margin:0 0 18px!important;
  max-width:680px!important;
}
.vv-qa-hero-copy p{
  max-width:650px!important;
  font-size:14px!important;
  line-height:1.55!important;
  color:#e0e5e8!important;
}
.vv-qa-hero-features{
  display:flex;
  gap:34px;
  margin-top:24px;
  flex-wrap:wrap;
}
.vv-qa-hero-feature{
  display:grid;
  grid-template-columns:30px auto;
  gap:10px;
  align-items:center;
}
.vv-qa-hero-feature-icon{
  width:28px;height:28px;border:1px solid #fff;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;
}
.vv-qa-hero-feature strong{
  display:block;font-size:10px;letter-spacing:.05em
}
.vv-qa-hero-feature small{
  display:block;color:#c8d0d5;font-size:9px;margin-top:2px
}
.vv-qa-hero-visual{
  position:relative;
  min-height:350px;
  background:#07131c center center/cover no-repeat;
}
.vv-qa-hero-visual:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(7,19,28,.35) 0%,rgba(7,19,28,0) 30%,rgba(7,19,28,.20) 100%);
}
.vv-qa-hero-words{
  position:absolute;
  z-index:2;
  right:34px;
  top:50%;
  transform:translateY(-50%);
  text-align:center;
  color:#fff;
  font-size:11px;
  font-weight:700;
  letter-spacing:.30em;
  line-height:2.8;
  text-shadow:0 1px 4px rgba(0,0,0,.45);
}
.vv-qa-hero-words i{
  display:block;
  width:20px;
  height:1px;
  background:#fff;
  margin:0 auto;
  opacity:.7;
}
@media(max-width:1050px){
 .vv-qa-hero h1{font-size:45px!important}
 .vv-qa-hero-copy{padding:40px!important}
}
@media(max-width:800px){
 .vv-qa-hero .vv-wrap{grid-template-columns:1fr!important}
 .vv-qa-hero-visual{min-height:300px}
 .vv-qa-hero h1{font-size:40px!important}
}
@media(max-width:520px){
 .vv-qa-hero-copy{padding:34px 22px!important}
 .vv-qa-hero h1{font-size:34px!important}
 .vv-qa-hero-features{gap:18px}
 .vv-qa-hero-visual{min-height:245px}
 .vv-qa-hero-words{right:16px;font-size:9px}
}

/* V6.4.1: never show mobile-only markup unless the phone stylesheet explicitly enables it. */
.vv-mobile-only{display:none!important}


/* =========================================================
   V6.5.2 — ABOUT US COMPACT SPACING
   About Us page only. Frozen V6.4.15 site layouts untouched.
   ========================================================= */

/* DESKTOP */
.vv-about-page .vv-qa-hero .vv-wrap{
  min-height:315px!important;
}
.vv-about-page .vv-qa-hero-copy{
  padding:38px max(4.5vw,52px)!important;
}
.vv-about-page .vv-qa-hero h1{
  margin-bottom:14px!important;
}
.vv-about-page .vv-qa-hero-features{
  margin-top:18px!important;
}
.vv-about-page .vv-qa-hero-visual{
  min-height:315px!important;
}

.vv-about-page .vv-qa-intro{
  padding:34px 0 30px!important;
}
.vv-about-page .vv-qa-intro-grid{
  gap:52px!important;
}
.vv-about-page .vv-qa-intro-copy{
  line-height:1.58!important;
}
.vv-about-page .vv-qa-intro-copy p{
  margin-bottom:10px!important;
}

.vv-about-page .vv-qa-principle{
  min-height:142px!important;
  padding:22px 22px!important;
}
.vv-about-page .vv-qa-principle-icon{
  width:38px!important;
  height:38px!important;
  margin-bottom:12px!important;
}
.vv-about-page .vv-qa-principle h3{
  margin-bottom:6px!important;
}
.vv-about-page .vv-qa-principle p{
  line-height:1.45!important;
}

.vv-about-page .vv-qa-process{
  padding:34px 0 32px!important;
}
.vv-about-page .vv-qa-process-head{
  gap:34px!important;
  margin-bottom:0!important;
  align-items:flex-start!important;
}
.vv-about-page .vv-qa-process-head > div:last-child{
  max-width:620px!important;
}
.vv-about-page .vv-qa-process-head p{
  margin:0 0 8px!important;
  line-height:1.48!important;
}

.vv-about-page .vv-qa-standards{
  padding:30px 0 32px!important;
}
.vv-about-page .vv-qa-standards h2{
  margin-bottom:18px!important;
}
.vv-about-page .vv-qa-standards-grid{
  gap:14px!important;
}
.vv-about-page .vv-qa-standard{
  min-height:108px!important;
  padding:18px 20px!important;
}
.vv-about-page .vv-qa-standard h3{
  margin-bottom:6px!important;
}
.vv-about-page .vv-qa-standard p{
  line-height:1.45!important;
}

.vv-about-page .vv-qa-docs{
  padding:36px 0!important;
}
.vv-about-page .vv-qa-docs-grid{
  gap:44px!important;
}
.vv-about-page .vv-qa-docs p{
  margin:0 0 9px!important;
  line-height:1.5!important;
}

.vv-about-page .vv-qa-disclaimer .vv-wrap{
  min-height:64px!important;
}

/* TABLET */
@media(max-width:900px){
  .vv-about-page .vv-qa-hero .vv-wrap{
    min-height:0!important;
    padding:0!important;
    gap:0!important;
  }
  .vv-about-page .vv-qa-hero-copy{
    padding:30px 32px!important;
  }
  .vv-about-page .vv-qa-hero-visual{
    min-height:235px!important;
  }

  .vv-about-page .vv-qa-intro{
    padding:28px 0 24px!important;
  }
  .vv-about-page .vv-qa-intro-grid{
    gap:18px!important;
  }
  .vv-about-page .vv-qa-intro-copy p{
    margin:0 0 8px!important;
  }

  .vv-about-page .vv-qa-principle{
    min-height:128px!important;
    padding:18px!important;
  }

  .vv-about-page .vv-qa-process{
    padding:28px 0!important;
  }
  .vv-about-page .vv-qa-process-head{
    gap:15px!important;
    margin:0!important;
  }

  .vv-about-page .vv-qa-standards{
    padding:26px 0!important;
  }
  .vv-about-page .vv-qa-standard{
    min-height:96px!important;
    padding:16px 18px!important;
  }

  .vv-about-page .vv-qa-docs{
    padding:30px 0!important;
  }
  .vv-about-page .vv-qa-docs-grid{
    gap:18px!important;
  }

  .vv-about-page .vv-qa-disclaimer .vv-wrap{
    min-height:58px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
}

/* MOBILE */
@media(max-width:620px){
  .vv-about-page .vv-inner-nav .vv-wrap{
    padding-top:9px!important;
    padding-bottom:9px!important;
    gap:8px!important;
  }

  .vv-about-page .vv-qa-hero-copy{
    padding:24px 20px!important;
  }
  .vv-about-page .vv-qa-hero h1{
    font-size:31px!important;
    margin-bottom:10px!important;
  }
  .vv-about-page .vv-qa-hero-copy p{
    line-height:1.45!important;
  }
  .vv-about-page .vv-qa-hero-features{
    gap:12px!important;
    margin-top:14px!important;
  }
  .vv-about-page .vv-qa-hero-visual{
    min-height:185px!important;
  }

  .vv-about-page .vv-qa-intro{
    padding:22px 0 18px!important;
  }
  .vv-about-page .vv-qa-intro-grid{
    gap:12px!important;
  }
  .vv-about-page .vv-qa-intro h2,
  .vv-about-page .vv-qa-process h2,
  .vv-about-page .vv-qa-docs h2{
    font-size:27px!important;
  }
  .vv-about-page .vv-qa-intro-copy{
    font-size:14px!important;
    line-height:1.48!important;
  }

  .vv-about-page .vv-qa-principle{
    min-height:0!important;
    padding:16px!important;
  }
  .vv-about-page .vv-qa-principle-icon{
    width:34px!important;
    height:34px!important;
    margin-bottom:9px!important;
  }

  .vv-about-page .vv-qa-process{
    padding:22px 0!important;
  }
  .vv-about-page .vv-qa-process-head{
    gap:12px!important;
  }
  .vv-about-page .vv-qa-process-head p{
    font-size:12px!important;
    line-height:1.45!important;
    margin-bottom:7px!important;
  }

  .vv-about-page .vv-qa-standards{
    padding:22px 0!important;
  }
  .vv-about-page .vv-qa-standards h2{
    font-size:28px!important;
    line-height:1.08!important;
    margin-bottom:14px!important;
  }
  .vv-about-page .vv-qa-standards-grid{
    gap:9px!important;
  }
  .vv-about-page .vv-qa-standard{
    min-height:0!important;
    padding:15px!important;
  }

  .vv-about-page .vv-qa-docs{
    padding:24px 0!important;
  }
  .vv-about-page .vv-qa-docs-grid{
    gap:12px!important;
  }
  .vv-about-page .vv-qa-docs p{
    font-size:12px!important;
    line-height:1.45!important;
    margin-bottom:8px!important;
  }

  .vv-about-page .vv-qa-disclaimer .vv-wrap{
    min-height:50px!important;
    padding:10px 0!important;
  }
  .vv-about-page .vv-qa-disclaimer p{
    line-height:1.45!important;
  }
}


/* =========================================================
   V6.5.3 — ABOUT US MOBILE TITLE + GAP REFINEMENT
   Mobile only. Desktop and tablet remain unchanged.
   ========================================================= */
@media(max-width:620px){

  /* Reduce section-title scale on mobile */
  .vv-about-page .vv-qa-hero h1{
    font-size:27px!important;
    line-height:1.02!important;
  }

  .vv-about-page .vv-qa-intro h2,
  .vv-about-page .vv-qa-process h2,
  .vv-about-page .vv-qa-docs h2{
    font-size:23px!important;
    line-height:1.08!important;
  }

  .vv-about-page .vv-qa-standards h2{
    font-size:24px!important;
    line-height:1.06!important;
    margin-bottom:12px!important;
  }

  /* Pull VOREVIA STANDARD directly up beneath A FOCUSED STANDARD */
  .vv-about-page .vv-qa-process{
    padding-bottom:12px!important;
  }

  .vv-about-page .vv-qa-standards{
    padding-top:10px!important;
  }

  .vv-about-page .vv-qa-process-head{
    margin-bottom:0!important;
  }

  /* Tighten internal bottom spacing of focused standard copy */
  .vv-about-page .vv-qa-process-head p:last-child{
    margin-bottom:0!important;
  }
}


/* =========================================================
   V6.6.0 — QUALITY ASSURANCE PAGE
   Built directly from frozen V6.5.3. Scoped to QA only.
   ========================================================= */
.vv-quality-page{background:#fff;color:#111}
.vv-quality-page *{box-sizing:border-box}
.vv-quality-page .vvq-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}
.vv-quality-page .vvq-breadcrumb{padding:18px 0;border-bottom:1px solid #e5e5e5;font-size:13px;letter-spacing:.02em}
.vv-quality-page .vvq-breadcrumb a{color:#555;text-decoration:none}
.vv-quality-page .vvq-hero{background:#071c28;color:#fff;padding:70px 0 62px}
.vv-quality-page .vvq-kicker{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:13px}
.vv-quality-page .vvq-hero h1{font-size:56px;line-height:.98;letter-spacing:-.025em;margin:0 0 20px;max-width:760px}
.vv-quality-page .vvq-hero p{font-size:18px;line-height:1.55;max-width:760px;margin:0;color:#eef2f3}
.vv-quality-page .vvq-hero-points{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.22);margin-top:42px;border:1px solid rgba(255,255,255,.22)}
.vv-quality-page .vvq-hero-point{background:#071c28;padding:22px 20px;min-height:100px}
.vv-quality-page .vvq-icon{width:34px;height:34px;border:1px solid currentColor;display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-size:15px}
.vv-quality-page .vvq-hero-point strong{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.vv-quality-page .vvq-hero-point span{font-size:13px;color:#cbd5d9}
.vv-quality-page .vvq-intro{padding:58px 0 52px;border-bottom:1px solid #e5e5e5}
.vv-quality-page .vvq-two{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.vv-quality-page .vvq-section-kicker{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#69747a;margin-bottom:11px}
.vv-quality-page h2{font-size:36px;line-height:1.05;letter-spacing:-.015em;margin:0}
.vv-quality-page .vvq-copy p{font-size:16px;line-height:1.65;color:#42484b;margin:0 0 15px}
.vv-quality-page .vvq-pillars{padding:0}
.vv-quality-page .vvq-pillar{display:grid;grid-template-columns:130px 1fr;gap:34px;padding:42px 0;border-bottom:1px solid #e5e5e5}
.vv-quality-page .vvq-num{font-size:12px;letter-spacing:.16em;color:#7a858a;padding-top:5px}
.vv-quality-page .vvq-pillar h3{font-size:25px;margin:0 0 10px;letter-spacing:-.01em}
.vv-quality-page .vvq-pillar p{font-size:15px;line-height:1.62;color:#4b5255;margin:0;max-width:850px}
.vv-quality-page .vvq-docs{background:#f4f5f5;padding:54px 0}
.vv-quality-page .vvq-doc-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;margin-bottom:30px}
.vv-quality-page .vvq-doc-head p{margin:0;font-size:15px;line-height:1.6;color:#4c5356}
.vv-quality-page .vvq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.vv-quality-page .vvq-card{background:#fff;border:1px solid #dcdede;padding:26px;min-height:175px}
.vv-quality-page .vvq-card h3{font-size:16px;margin:13px 0 8px;letter-spacing:.02em}
.vv-quality-page .vvq-card p{font-size:14px;line-height:1.55;color:#555d60;margin:0}
.vv-quality-page .vvq-transparency{background:#071c28;color:#fff;padding:54px 0}
.vv-quality-page .vvq-transparency .vvq-two{align-items:center}
.vv-quality-page .vvq-transparency p{font-size:16px;line-height:1.65;color:#e1e8ea;margin:0 0 12px}
.vv-quality-page .vvq-note{font-size:12px!important;color:#aebcc1!important}
.vv-quality-page .vvq-cta{padding:26px 0;background:#fff;border-bottom:1px solid #e5e5e5}
.vv-quality-page .vvq-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.vv-quality-page .vvq-cta strong{font-size:13px;letter-spacing:.09em;text-transform:uppercase}
.vv-quality-page .vvq-button{display:inline-block;background:#071c28;color:#fff!important;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
 .vv-quality-page .vvq-wrap{width:min(100% - 42px,900px)}
 .vv-quality-page .vvq-hero{padding:52px 0 48px}
 .vv-quality-page .vvq-hero h1{font-size:46px}
 .vv-quality-page .vvq-hero-points{grid-template-columns:repeat(2,1fr)}
 .vv-quality-page .vvq-two,.vv-quality-page .vvq-doc-head{grid-template-columns:1fr;gap:22px}
 .vv-quality-page .vvq-intro{padding:44px 0 40px}
 .vv-quality-page .vvq-pillar{grid-template-columns:75px 1fr;gap:22px;padding:34px 0}
 .vv-quality-page .vvq-cards{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
 .vv-quality-page .vvq-wrap{width:calc(100% - 30px)}
 .vv-quality-page .vvq-breadcrumb{padding:13px 0;font-size:12px}
 .vv-quality-page .vvq-hero{padding:38px 0 34px}
 .vv-quality-page .vvq-kicker{font-size:10px;margin-bottom:10px}
 .vv-quality-page .vvq-hero h1{font-size:35px;line-height:1.01;margin-bottom:14px}
 .vv-quality-page .vvq-hero p{font-size:15px;line-height:1.5}
 .vv-quality-page .vvq-hero-points{margin-top:28px;grid-template-columns:repeat(2,1fr)}
 .vv-quality-page .vvq-hero-point{padding:16px 14px;min-height:88px}
 .vv-quality-page .vvq-icon{width:29px;height:29px;margin-bottom:9px}
 .vv-quality-page .vvq-intro{padding:32px 0 28px}
 .vv-quality-page h2{font-size:27px}
 .vv-quality-page .vvq-copy p{font-size:15px;line-height:1.55}
 .vv-quality-page .vvq-pillar{grid-template-columns:1fr;gap:7px;padding:27px 0}
 .vv-quality-page .vvq-num{padding-top:0}
 .vv-quality-page .vvq-pillar h3{font-size:21px;margin-bottom:7px}
 .vv-quality-page .vvq-pillar p{font-size:14px;line-height:1.55}
 .vv-quality-page .vvq-docs{padding:34px 0}
 .vv-quality-page .vvq-doc-head{margin-bottom:20px}
 .vv-quality-page .vvq-cards{grid-template-columns:1fr;gap:10px}
 .vv-quality-page .vvq-card{padding:20px;min-height:0}
 .vv-quality-page .vvq-transparency{padding:35px 0}
 .vv-quality-page .vvq-transparency p{font-size:14px;line-height:1.55}
 .vv-quality-page .vvq-cta{padding:20px 0}
 .vv-quality-page .vvq-cta-inner{display:block}
 .vv-quality-page .vvq-cta strong{display:block;margin-bottom:14px}
}


/* =========================================================
   V6.6.1 — QUALITY ASSURANCE SPACING + MOBILE TYPE REFINEMENT
   QA page only. All other V6.6.0 / V6.5.3 pages unchanged.
   ========================================================= */

/* DESKTOP — close the transition from intro to the 4 evidence rows */
.vv-quality-page .vvq-intro{
  padding-top:46px!important;
  padding-bottom:28px!important;
}
.vv-quality-page .vvq-pillar{
  padding-top:28px!important;
  padding-bottom:28px!important;
}
.vv-quality-page .vvq-pillar:first-child{
  padding-top:24px!important;
}

/* Tighten the internal vertical rhythm of the four evidence rows */
.vv-quality-page .vvq-pillar h3{
  margin-bottom:7px!important;
}
.vv-quality-page .vvq-pillar p{
  line-height:1.52!important;
}

/* Supporting information section slightly tighter */
.vv-quality-page .vvq-docs{
  padding-top:42px!important;
  padding-bottom:42px!important;
}
.vv-quality-page .vvq-doc-head{
  margin-bottom:22px!important;
}
.vv-quality-page .vvq-cards{
  gap:10px!important;
}

/* TABLET */
@media(max-width:900px){
  .vv-quality-page .vvq-intro{
    padding-top:34px!important;
    padding-bottom:22px!important;
  }
  .vv-quality-page .vvq-pillar{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }
  .vv-quality-page .vvq-pillar:first-child{
    padding-top:20px!important;
  }
  .vv-quality-page .vvq-docs{
    padding-top:34px!important;
    padding-bottom:34px!important;
  }
  .vv-quality-page .vvq-doc-head{
    margin-bottom:18px!important;
  }
  .vv-quality-page .vvq-cards{
    gap:8px!important;
  }
}

/* MOBILE — match About Us typography and compactness */
@media(max-width:620px){

  /* Main QA hero title matches About Us mobile title scale */
  .vv-quality-page .vvq-hero{
    padding-top:28px!important;
    padding-bottom:26px!important;
  }
  .vv-quality-page .vvq-hero h1{
    font-size:27px!important;
    line-height:1.02!important;
    margin-bottom:10px!important;
  }
  .vv-quality-page .vvq-hero p{
    font-size:14px!important;
    line-height:1.45!important;
  }
  .vv-quality-page .vvq-hero-points{
    margin-top:18px!important;
  }
  .vv-quality-page .vvq-hero-point{
    padding:13px 12px!important;
    min-height:78px!important;
  }

  /* Section headings use the same hierarchy as About Us */
  .vv-quality-page h2{
    font-size:23px!important;
    line-height:1.08!important;
  }
  .vv-quality-page .vvq-pillar h3{
    font-size:19px!important;
    line-height:1.12!important;
  }

  /* Close section gaps */
  .vv-quality-page .vvq-intro{
    padding-top:22px!important;
    padding-bottom:14px!important;
  }
  .vv-quality-page .vvq-two{
    gap:10px!important;
  }
  .vv-quality-page .vvq-copy p{
    font-size:14px!important;
    line-height:1.45!important;
    margin-bottom:8px!important;
  }

  .vv-quality-page .vvq-pillar{
    padding-top:18px!important;
    padding-bottom:18px!important;
    gap:5px!important;
  }
  .vv-quality-page .vvq-pillar:first-child{
    padding-top:15px!important;
  }
  .vv-quality-page .vvq-pillar p{
    font-size:13px!important;
    line-height:1.45!important;
  }

  .vv-quality-page .vvq-docs{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }
  .vv-quality-page .vvq-doc-head{
    gap:10px!important;
    margin-bottom:14px!important;
  }
  .vv-quality-page .vvq-doc-head p{
    font-size:13px!important;
    line-height:1.45!important;
  }
  .vv-quality-page .vvq-cards{
    gap:8px!important;
  }
  .vv-quality-page .vvq-card{
    padding:16px!important;
  }

  .vv-quality-page .vvq-transparency{
    padding-top:26px!important;
    padding-bottom:26px!important;
  }
  .vv-quality-page .vvq-transparency p{
    font-size:13px!important;
    line-height:1.45!important;
    margin-bottom:8px!important;
  }

  .vv-quality-page .vvq-cta{
    padding-top:16px!important;
    padding-bottom:16px!important;
  }
}


/* =========================================================
   V6.6.2 — QA TABLET TRACEABILITY LABEL CLEARANCE
   Tablet-only. Typography sizes and all other layouts unchanged.
   ========================================================= */
@media (min-width:621px) and (max-width:900px){
  .vv-quality-page .vvq-pillar{
    grid-template-columns: 150px minmax(0, 1fr) !important;
    column-gap: 24px !important;
    align-items: start !important;
  }

  .vv-quality-page .vvq-pillar .vvq-num{
    width: 150px !important;
    min-width: 150px !important;
    max-width: 150px !important;
    padding-right: 10px !important;
    box-sizing: border-box !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .vv-quality-page .vvq-pillar .vvq-num span{
    display: block !important;
    max-width: 100% !important;
    white-space: normal !important;
    line-height: 1.25 !important;
  }

  .vv-quality-page .vvq-pillar h3,
  .vv-quality-page .vvq-pillar p{
    min-width: 0 !important;
  }
}


/* =========================================================
   V6.7.0 — VOREVIA GLOBAL RESPONSIVE TYPOGRAPHY SYSTEM
   One coherent hierarchy per breakpoint across Home, Shop,
   About Us, Quality Assurance and future content pages.
   Layout, imagery, spacing and functionality remain unchanged.
   ========================================================= */

:root{
  --vv-type-display: 52px;
  --vv-type-section: 34px;
  --vv-type-card: 21px;
  --vv-type-body: 16px;
  --vv-type-small: 13px;
  --vv-type-label: 11px;
  --vv-leading-display: 1.02;
  --vv-leading-section: 1.10;
  --vv-leading-card: 1.18;
  --vv-leading-body: 1.55;
}

/* Semantic heading hierarchy */
.vv-page h1,
.vv-home h1,
.vv-shop-page h1,
.vv-about-page h1,
.vv-quality-page h1,
.woocommerce .vv-product-page h1{
  font-size:var(--vv-type-display)!important;
  line-height:var(--vv-leading-display)!important;
}

.vv-page h2,
.vv-home h2,
.vv-shop-page h2,
.vv-about-page h2,
.vv-quality-page h2,
.woocommerce .vv-product-page h2{
  font-size:var(--vv-type-section)!important;
  line-height:var(--vv-leading-section)!important;
}

.vv-page h3,
.vv-home h3,
.vv-shop-page h3,
.vv-about-page h3,
.vv-quality-page h3,
.woocommerce .vv-product-page h3{
  font-size:var(--vv-type-card)!important;
  line-height:var(--vv-leading-card)!important;
}

/* Common body copy */
.vv-page p,
.vv-home p,
.vv-shop-page p,
.vv-about-page p,
.vv-quality-page p,
.woocommerce .vv-product-page p{
  font-size:var(--vv-type-body)!important;
  line-height:var(--vv-leading-body)!important;
}

/* Eyebrows, kickers and numbered labels retain premium small-cap hierarchy */
.vv-page .eyebrow,
.vv-home .eyebrow,
.vv-shop-page .eyebrow,
.vv-about-page .eyebrow,
.vv-quality-page .eyebrow,
.vv-about-page [class*="kicker"],
.vv-quality-page [class*="kicker"],
.vv-quality-page .vvq-num{
  font-size:var(--vv-type-label)!important;
  line-height:1.3!important;
}

/* TABLET — unified tablet scale */
@media (min-width:621px) and (max-width:900px){
  :root{
    --vv-type-display: 42px;
    --vv-type-section: 29px;
    --vv-type-card: 20px;
    --vv-type-body: 15px;
    --vv-type-small: 12px;
    --vv-type-label: 10px;
    --vv-leading-display: 1.03;
    --vv-leading-section: 1.10;
    --vv-leading-card: 1.18;
    --vv-leading-body: 1.52;
  }
}

/* MOBILE — unified mobile scale based on approved About Us / QA hierarchy */
@media (max-width:620px){
  :root{
    --vv-type-display: 27px;
    --vv-type-section: 23px;
    --vv-type-card: 19px;
    --vv-type-body: 14px;
    --vv-type-small: 13px;
    --vv-type-label: 10px;
    --vv-leading-display: 1.02;
    --vv-leading-section: 1.08;
    --vv-leading-card: 1.12;
    --vv-leading-body: 1.45;
  }
}

/* Preserve catalogue/product-card information hierarchy:
   product names are card titles; prices/meta remain intentionally compact. */
.vv-catalogue-card h2,
.vv-catalogue-card h3,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:var(--vv-type-card)!important;
  line-height:var(--vv-leading-card)!important;
}


/* =========================================================
   V6.7.1 — ABOUT US CTA MATCHES QUALITY ASSURANCE
   Surgical change only: About Us CTA now uses the exact
   Quality Assurance CTA geometry, typography and button style.
   No other page, spacing, typography or functionality changed.
   ========================================================= */
.vv-about-page .vvq-wrap{
  width:min(1180px,calc(100% - 64px));
  margin:0 auto;
}
.vv-about-page .vvq-cta{
  padding:26px 0;
  background:#fff;
  border-bottom:1px solid #e5e5e5;
}
.vv-about-page .vvq-cta-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.vv-about-page .vvq-cta strong{
  font-size:13px;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.vv-about-page .vvq-button{
  display:inline-block;
  background:#071c28;
  color:#fff!important;
  text-decoration:none;
  padding:15px 23px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

@media(max-width:900px){
  .vv-about-page .vvq-wrap{
    width:min(100% - 42px,900px);
  }
}

@media(max-width:620px){
  .vv-about-page .vvq-wrap{
    width:calc(100% - 30px);
  }
  .vv-about-page .vvq-cta{
    padding:16px 0;
  }
  .vv-about-page .vvq-cta-inner{
    display:block;
  }
  .vv-about-page .vvq-cta strong{
    display:block;
    margin-bottom:14px;
  }
}

/* =========================================================
   V6.8.0 — SHIPPING & DELIVERY
   Uses the approved VOREVIA responsive typography and CTA system.
   ========================================================= */
.vv-shipping-page{background:#fff;color:#111}
.vv-shipping-page *{box-sizing:border-box}
.vv-shipping-page .vvs-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}
.vv-shipping-page .vvs-breadcrumb{padding:18px 0;border-bottom:1px solid #e5e5e5;font-size:13px;letter-spacing:.02em}
.vv-shipping-page .vvs-breadcrumb a{color:#555;text-decoration:none}
.vv-shipping-page .vvs-hero{background:#071c28;color:#fff;padding:70px 0 62px}
.vv-shipping-page .vvs-kicker,.vv-shipping-page .vvs-section-kicker{font-size:var(--vv-type-label);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.vv-shipping-page .vvs-kicker{margin-bottom:13px}
.vv-shipping-page .vvs-section-kicker{color:#69747a;margin-bottom:11px}
.vv-shipping-page h1{font-size:var(--vv-type-display);line-height:var(--vv-leading-display);letter-spacing:-.025em;margin:0 0 20px;max-width:850px}
.vv-shipping-page h2{font-size:var(--vv-type-section);line-height:var(--vv-leading-section);letter-spacing:-.015em;margin:0}
.vv-shipping-page h3{font-size:var(--vv-type-card);line-height:var(--vv-leading-card)}
.vv-shipping-page p{font-size:var(--vv-type-body);line-height:var(--vv-leading-body)}
.vv-shipping-page .vvs-hero> .vvs-wrap > p{max-width:790px;margin:0;color:#eef2f3}
.vv-shipping-page .vvs-hero-points{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.22);margin-top:42px;border:1px solid rgba(255,255,255,.22)}
.vv-shipping-page .vvs-hero-point{background:#071c28;padding:22px 20px;min-height:105px}
.vv-shipping-page .vvs-icon{width:34px;height:34px;border:1px solid currentColor;display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-size:15px}
.vv-shipping-page .vvs-hero-point strong{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.vv-shipping-page .vvs-hero-point span{font-size:13px;color:#cbd5d9}
.vv-shipping-page .vvs-two{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.vv-shipping-page .vvs-intro{padding:46px 0 28px;border-bottom:1px solid #e5e5e5}
.vv-shipping-page .vvs-copy p{color:#42484b;margin:0 0 15px}
.vv-shipping-page .vvs-row{display:grid;grid-template-columns:150px 1fr;gap:34px;padding:28px 0;border-bottom:1px solid #e5e5e5}
.vv-shipping-page .vvs-num{font-size:var(--vv-type-label);line-height:1.3;letter-spacing:.16em;color:#7a858a;padding-top:5px}
.vv-shipping-page .vvs-row h3{margin:0 0 7px;letter-spacing:-.01em}
.vv-shipping-page .vvs-row p{color:#4b5255;margin:0;max-width:850px}
.vv-shipping-page .vvs-info{background:#f4f5f5;padding:42px 0}
.vv-shipping-page .vvs-info-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;margin-bottom:22px}
.vv-shipping-page .vvs-info-head p{margin:0;color:#4c5356}
.vv-shipping-page .vvs-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.vv-shipping-page .vvs-card{background:#fff;border:1px solid #dcdede;padding:26px;min-height:190px}
.vv-shipping-page .vvs-card h3{font-size:16px;margin:13px 0 8px;letter-spacing:.02em}
.vv-shipping-page .vvs-card p{font-size:14px;line-height:1.55;color:#555d60;margin:0}
.vv-shipping-page .vvs-support{background:#071c28;color:#fff;padding:54px 0}
.vv-shipping-page .vvs-support .vvs-section-kicker{color:#b8c5ca}
.vv-shipping-page .vvs-support p{color:#e1e8ea;margin:0 0 12px}
.vv-shipping-page .vvs-note{font-size:12px!important;color:#aebcc1!important}
.vv-shipping-page .vvs-cta{padding:26px 0;background:#fff;border-bottom:1px solid #e5e5e5}
.vv-shipping-page .vvs-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.vv-shipping-page .vvs-cta strong{font-size:13px;letter-spacing:.09em;text-transform:uppercase}
.vv-shipping-page .vvs-button{display:inline-block;background:#071c28;color:#fff!important;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
 .vv-shipping-page .vvs-wrap{width:min(100% - 42px,900px)}
 .vv-shipping-page .vvs-hero{padding:52px 0 48px}
 .vv-shipping-page .vvs-hero-points{grid-template-columns:repeat(2,1fr)}
 .vv-shipping-page .vvs-two,.vv-shipping-page .vvs-info-head{grid-template-columns:1fr;gap:22px}
 .vv-shipping-page .vvs-intro{padding:34px 0 22px}
 .vv-shipping-page .vvs-row{grid-template-columns:150px minmax(0,1fr);gap:24px;padding:24px 0}
 .vv-shipping-page .vvs-cards{grid-template-columns:repeat(2,1fr);gap:8px}
 .vv-shipping-page .vvs-info{padding:34px 0}
}
@media(max-width:620px){
 .vv-shipping-page .vvs-wrap{width:calc(100% - 30px)}
 .vv-shipping-page .vvs-breadcrumb{padding:13px 0;font-size:12px}
 .vv-shipping-page .vvs-hero{padding:28px 0 26px}
 .vv-shipping-page .vvs-kicker{margin-bottom:10px}
 .vv-shipping-page .vvs-hero> .vvs-wrap > p{line-height:1.45}
 .vv-shipping-page .vvs-hero-points{margin-top:18px;grid-template-columns:repeat(2,1fr)}
 .vv-shipping-page .vvs-hero-point{padding:13px 12px;min-height:78px}
 .vv-shipping-page .vvs-icon{width:29px;height:29px;margin-bottom:9px}
 .vv-shipping-page .vvs-intro{padding:22px 0 14px}
 .vv-shipping-page .vvs-two{gap:10px}
 .vv-shipping-page .vvs-copy p{margin-bottom:8px}
 .vv-shipping-page .vvs-row{grid-template-columns:1fr;gap:5px;padding:18px 0}
 .vv-shipping-page .vvs-num{padding-top:0}
 .vv-shipping-page .vvs-row h3{margin-bottom:7px}
 .vv-shipping-page .vvs-row p{font-size:13px;line-height:1.45}
 .vv-shipping-page .vvs-info{padding:24px 0}
 .vv-shipping-page .vvs-info-head{gap:10px;margin-bottom:14px}
 .vv-shipping-page .vvs-info-head p{font-size:13px;line-height:1.45}
 .vv-shipping-page .vvs-cards{grid-template-columns:1fr;gap:8px}
 .vv-shipping-page .vvs-card{padding:16px;min-height:0}
 .vv-shipping-page .vvs-support{padding:26px 0}
 .vv-shipping-page .vvs-support p{font-size:13px;line-height:1.45;margin-bottom:8px}
 .vv-shipping-page .vvs-cta{padding:16px 0}
 .vv-shipping-page .vvs-cta-inner{display:block}
 .vv-shipping-page .vvs-cta strong{display:block;margin-bottom:14px}
}


/* =========================================================
   V6.9.0 — RETURNS & REFUNDS
   Uses established VOREVIA desktop/tablet/mobile hierarchy.
   ========================================================= */
.vv-returns-page{background:#fff;color:#111}
.vv-returns-page *{box-sizing:border-box}
.vv-returns-page .vvr-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}
.vv-returns-page .vvr-breadcrumb{padding:18px 0;border-bottom:1px solid #e5e5e5;font-size:13px;letter-spacing:.02em}
.vv-returns-page .vvr-breadcrumb a{color:#555;text-decoration:none}
.vv-returns-page .vvr-hero{background:#071c28;color:#fff;padding:70px 0 62px}
.vv-returns-page .vvr-kicker,.vv-returns-page .vvr-section-kicker{font-size:var(--vv-type-label);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.vv-returns-page .vvr-kicker{margin-bottom:13px}
.vv-returns-page .vvr-section-kicker{color:#69747a;margin-bottom:11px}
.vv-returns-page h1{font-size:var(--vv-type-display);line-height:var(--vv-leading-display);letter-spacing:-.025em;margin:0 0 20px;max-width:850px}
.vv-returns-page h2{font-size:var(--vv-type-section);line-height:var(--vv-leading-section);letter-spacing:-.015em;margin:0}
.vv-returns-page h3{font-size:var(--vv-type-card);line-height:var(--vv-leading-card)}
.vv-returns-page p{font-size:var(--vv-type-body);line-height:var(--vv-leading-body)}
.vv-returns-page .vvr-hero>.vvr-wrap>p{max-width:800px;margin:0;color:#eef2f3}
.vv-returns-page .vvr-hero-points{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.22);margin-top:42px;border:1px solid rgba(255,255,255,.22)}
.vv-returns-page .vvr-hero-point{background:#071c28;padding:22px 20px;min-height:105px}
.vv-returns-page .vvr-icon{width:34px;height:34px;border:1px solid currentColor;display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-size:15px}
.vv-returns-page .vvr-hero-point strong{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.vv-returns-page .vvr-hero-point span{font-size:13px;color:#cbd5d9}
.vv-returns-page .vvr-two{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.vv-returns-page .vvr-intro{padding:46px 0 28px;border-bottom:1px solid #e5e5e5}
.vv-returns-page .vvr-copy p{color:#42484b;margin:0 0 15px}
.vv-returns-page .vvr-row{display:grid;grid-template-columns:150px 1fr;gap:34px;padding:28px 0;border-bottom:1px solid #e5e5e5}
.vv-returns-page .vvr-num{font-size:var(--vv-type-label);line-height:1.3;letter-spacing:.16em;color:#7a858a;padding-top:5px}
.vv-returns-page .vvr-row h3{margin:0 0 7px;letter-spacing:-.01em}
.vv-returns-page .vvr-row p{color:#4b5255;margin:0;max-width:850px}
.vv-returns-page .vvr-process{background:#f4f5f5;padding:42px 0}
.vv-returns-page .vvr-process-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;margin-bottom:22px}
.vv-returns-page .vvr-process-head p{margin:0;color:#4c5356}
.vv-returns-page .vvr-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.vv-returns-page .vvr-card{background:#fff;border:1px solid #dcdede;padding:26px;min-height:190px}
.vv-returns-page .vvr-card h3{font-size:16px;margin:13px 0 8px;letter-spacing:.02em}
.vv-returns-page .vvr-card p{font-size:14px;line-height:1.55;color:#555d60;margin:0}
.vv-returns-page .vvr-important{background:#071c28;color:#fff;padding:54px 0}
.vv-returns-page .vvr-important .vvr-section-kicker{color:#b8c5ca}
.vv-returns-page .vvr-important p{color:#e1e8ea;margin:0 0 12px}
.vv-returns-page .vvr-note{font-size:12px!important;color:#aebcc1!important}
.vv-returns-page .vvr-cta{padding:26px 0;background:#fff;border-bottom:1px solid #e5e5e5}
.vv-returns-page .vvr-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.vv-returns-page .vvr-cta strong{font-size:13px;letter-spacing:.09em;text-transform:uppercase}
.vv-returns-page .vvr-button{display:inline-block;background:#071c28;color:#fff!important;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
 .vv-returns-page .vvr-wrap{width:min(100% - 42px,900px)}
 .vv-returns-page .vvr-hero{padding:52px 0 48px}
 .vv-returns-page .vvr-hero-points{grid-template-columns:repeat(2,1fr)}
 .vv-returns-page .vvr-two,.vv-returns-page .vvr-process-head{grid-template-columns:1fr;gap:22px}
 .vv-returns-page .vvr-intro{padding:34px 0 22px}
 .vv-returns-page .vvr-row{grid-template-columns:150px minmax(0,1fr);gap:24px;padding:24px 0}
 .vv-returns-page .vvr-cards{grid-template-columns:repeat(2,1fr);gap:8px}
 .vv-returns-page .vvr-process{padding:34px 0}
}
@media(max-width:620px){
 .vv-returns-page .vvr-wrap{width:calc(100% - 30px)}
 .vv-returns-page .vvr-breadcrumb{padding:13px 0;font-size:12px}
 .vv-returns-page .vvr-hero{padding:28px 0 26px}
 .vv-returns-page .vvr-kicker{margin-bottom:10px}
 .vv-returns-page .vvr-hero>.vvr-wrap>p{line-height:1.45}
 .vv-returns-page .vvr-hero-points{margin-top:18px;grid-template-columns:repeat(2,1fr)}
 .vv-returns-page .vvr-hero-point{padding:13px 12px;min-height:78px}
 .vv-returns-page .vvr-icon{width:29px;height:29px;margin-bottom:9px}
 .vv-returns-page .vvr-intro{padding:22px 0 14px}
 .vv-returns-page .vvr-two{gap:10px}
 .vv-returns-page .vvr-copy p{margin-bottom:8px}
 .vv-returns-page .vvr-row{grid-template-columns:1fr;gap:5px;padding:18px 0}
 .vv-returns-page .vvr-num{padding-top:0}
 .vv-returns-page .vvr-row h3{margin-bottom:7px}
 .vv-returns-page .vvr-row p{font-size:13px;line-height:1.45}
 .vv-returns-page .vvr-process{padding:24px 0}
 .vv-returns-page .vvr-process-head{gap:10px;margin-bottom:14px}
 .vv-returns-page .vvr-process-head p{font-size:13px;line-height:1.45}
 .vv-returns-page .vvr-cards{grid-template-columns:1fr;gap:8px}
 .vv-returns-page .vvr-card{padding:16px;min-height:0}
 .vv-returns-page .vvr-important{padding:26px 0}
 .vv-returns-page .vvr-important p{font-size:13px;line-height:1.45;margin-bottom:8px}
 .vv-returns-page .vvr-cta{padding:16px 0}
 .vv-returns-page .vvr-cta-inner{display:block}
 .vv-returns-page .vvr-cta strong{display:block;margin-bottom:14px}
}


/* =========================================================
   V6.10.0 — FREQUENTLY ASKED QUESTIONS
   ========================================================= */
.vv-faq-page{background:#fff;color:#111}
.vv-faq-page *{box-sizing:border-box}
.vv-faq-page .vvf-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}
.vv-faq-page .vvf-breadcrumb{padding:18px 0;border-bottom:1px solid #e5e5e5;font-size:13px;letter-spacing:.02em}
.vv-faq-page .vvf-breadcrumb a{color:#555;text-decoration:none}
.vv-faq-page .vvf-hero{background:#071c28;color:#fff;padding:70px 0 62px}
.vv-faq-page .vvf-kicker,.vv-faq-page .vvf-section-kicker{font-size:var(--vv-type-label);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.vv-faq-page .vvf-kicker{margin-bottom:13px}
.vv-faq-page .vvf-section-kicker{color:#69747a;margin-bottom:11px}
.vv-faq-page h1{font-size:var(--vv-type-display);line-height:var(--vv-leading-display);letter-spacing:-.025em;margin:0 0 20px;max-width:900px}
.vv-faq-page h2{font-size:var(--vv-type-section);line-height:var(--vv-leading-section);letter-spacing:-.015em;margin:0}
.vv-faq-page p{font-size:var(--vv-type-body);line-height:var(--vv-leading-body)}
.vv-faq-page .vvf-hero p{max-width:790px;color:#e4ebed;margin:0}
.vv-faq-page .vvf-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:42px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.22)}
.vv-faq-page .vvf-nav a{display:block;background:#071c28;color:#fff;text-decoration:none;padding:22px 20px;min-height:98px}
.vv-faq-page .vvf-nav span{display:block;color:#aebcc1;font-size:11px;letter-spacing:.14em;margin-bottom:9px}
.vv-faq-page .vvf-nav strong{font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.vv-faq-page .vvf-intro{padding:44px 0 28px;border-bottom:1px solid #e5e5e5}
.vv-faq-page .vvf-two{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.vv-faq-page .vvf-intro p{margin:0;color:#485053}
.vv-faq-page .vvf-section{padding:38px 0 12px}
.vv-faq-page .vvf-section + .vvf-section{padding-top:26px}
.vv-faq-page .vvf-section-head{display:grid;grid-template-columns:180px 1fr;gap:28px;padding-bottom:18px;border-bottom:1px solid #111}
.vv-faq-page .vvf-section-num{font-size:var(--vv-type-label);letter-spacing:.16em;color:#7a858a;padding-top:5px}
.vv-faq-page details{border-bottom:1px solid #dedede}
.vv-faq-page summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 30px;gap:20px;align-items:center;padding:22px 0;font-size:16px;font-weight:650;letter-spacing:.01em}
.vv-faq-page summary::-webkit-details-marker{display:none}
.vv-faq-page summary::after{content:"+";font-size:23px;font-weight:300;text-align:center;line-height:1}
.vv-faq-page details[open] summary::after{content:"−"}
.vv-faq-page .vvf-answer{padding:0 54px 22px 0;max-width:930px}
.vv-faq-page .vvf-answer p{font-size:14px;line-height:1.6;color:#4c5457;margin:0 0 9px}
.vv-faq-page .vvf-answer p:last-child{margin-bottom:0}
.vv-faq-page .vvf-research{margin-top:36px;background:#071c28;color:#fff;padding:52px 0}
.vv-faq-page .vvf-research .vvf-section-kicker{color:#b8c5ca}
.vv-faq-page .vvf-research p{color:#e1e8ea;margin:0}
.vv-faq-page .vvf-cta{padding:26px 0;background:#f3f4f4;border-bottom:1px solid #e5e5e5}
.vv-faq-page .vvf-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.vv-faq-page .vvf-cta strong{font-size:13px;letter-spacing:.09em;text-transform:uppercase}
.vv-faq-page .vvf-button{display:inline-block;background:#071c28;color:#fff!important;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
 .vv-faq-page .vvf-wrap{width:min(100% - 42px,900px)}
 .vv-faq-page .vvf-hero{padding:52px 0 48px}
 .vv-faq-page .vvf-nav{grid-template-columns:repeat(2,1fr)}
 .vv-faq-page .vvf-two{grid-template-columns:1fr;gap:22px}
 .vv-faq-page .vvf-section-head{grid-template-columns:150px 1fr}
}
@media(max-width:620px){
 .vv-faq-page .vvf-wrap{width:calc(100% - 30px)}
 .vv-faq-page .vvf-breadcrumb{padding:13px 0;font-size:12px}
 .vv-faq-page .vvf-hero{padding:28px 0 26px}
 .vv-faq-page .vvf-kicker{margin-bottom:10px}
 .vv-faq-page .vvf-hero p{font-size:13px;line-height:1.45}
 .vv-faq-page .vvf-nav{margin-top:18px;grid-template-columns:repeat(2,1fr)}
 .vv-faq-page .vvf-nav a{padding:13px 12px;min-height:73px}
 .vv-faq-page .vvf-nav span{margin-bottom:5px}
 .vv-faq-page .vvf-intro{padding:22px 0 14px}
 .vv-faq-page .vvf-two{gap:10px}
 .vv-faq-page .vvf-intro p{font-size:13px;line-height:1.45}
 .vv-faq-page .vvf-section{padding:24px 0 4px}
 .vv-faq-page .vvf-section + .vvf-section{padding-top:18px}
 .vv-faq-page .vvf-section-head{grid-template-columns:1fr;gap:5px;padding-bottom:12px}
 .vv-faq-page .vvf-section-num{padding-top:0}
 .vv-faq-page summary{padding:16px 0;font-size:14px;line-height:1.35;grid-template-columns:1fr 24px;gap:10px}
 .vv-faq-page .vvf-answer{padding:0 30px 16px 0}
 .vv-faq-page .vvf-answer p{font-size:13px;line-height:1.5}
 .vv-faq-page .vvf-research{margin-top:24px;padding:26px 0}
 .vv-faq-page .vvf-research p{font-size:13px;line-height:1.45}
 .vv-faq-page .vvf-cta{padding:16px 0}
 .vv-faq-page .vvf-cta-inner{display:block}
 .vv-faq-page .vvf-cta strong{display:block;margin-bottom:14px}
}


/* =========================================================
   V6.11.0 — CONTACT US
   ========================================================= */
.vv-contact-page{background:#fff;color:#111}
.vv-contact-page *{box-sizing:border-box}
.vv-contact-page .vvc-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}
.vv-contact-page .vvc-breadcrumb{padding:18px 0;border-bottom:1px solid #e5e5e5;font-size:13px;letter-spacing:.02em}
.vv-contact-page .vvc-breadcrumb a{color:#555;text-decoration:none}
.vv-contact-page .vvc-hero{background:#071c28;color:#fff;padding:70px 0 62px}
.vv-contact-page .vvc-kicker,.vv-contact-page .vvc-section-kicker{font-size:var(--vv-type-label);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.vv-contact-page .vvc-kicker{margin-bottom:13px}
.vv-contact-page .vvc-section-kicker{color:#69747a;margin-bottom:11px}
.vv-contact-page h1{font-size:var(--vv-type-display);line-height:var(--vv-leading-display);letter-spacing:-.025em;margin:0 0 20px}
.vv-contact-page h2{font-size:var(--vv-type-section);line-height:var(--vv-leading-section);letter-spacing:-.015em;margin:0}
.vv-contact-page h3{font-size:var(--vv-type-card);line-height:var(--vv-leading-card)}
.vv-contact-page p{font-size:var(--vv-type-body);line-height:var(--vv-leading-body)}
.vv-contact-page .vvc-hero p{max-width:780px;color:#e4ebed;margin:0}
.vv-contact-page .vvc-route-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:42px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.22)}
.vv-contact-page .vvc-route{background:#071c28;padding:22px 20px;min-height:116px}
.vv-contact-page .vvc-route span{display:block;color:#aebcc1;font-size:11px;letter-spacing:.14em;margin-bottom:12px}
.vv-contact-page .vvc-route strong{display:block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.vv-contact-page .vvc-route small{font-size:12px;line-height:1.4;color:#cbd5d9}
.vv-contact-page .vvc-main{padding:48px 0}
.vv-contact-page .vvc-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:72px;align-items:start}
.vv-contact-page .vvc-intro p{color:#4a5255;margin:14px 0 0}
.vv-contact-page .vvc-support-note{margin-top:30px;padding-top:22px;border-top:1px solid #ddd}
.vv-contact-page .vvc-support-note strong{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px}
.vv-contact-page .vvc-support-note p{font-size:13px;line-height:1.55;margin:0;color:#596164}
.vv-contact-page .vvc-form{background:#f3f4f4;padding:34px}
.vv-contact-page .vvc-form-head{margin-bottom:24px}
.vv-contact-page .vvc-form-head h3{margin:0 0 7px}
.vv-contact-page .vvc-form-head p{font-size:13px;line-height:1.5;color:#596164;margin:0}
.vv-contact-page .vvc-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.vv-contact-page .vvc-field{margin-bottom:18px}
.vv-contact-page .vvc-fields .vvc-field{margin-bottom:0}
.vv-contact-page label{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px}
.vv-contact-page input,.vv-contact-page select,.vv-contact-page textarea{width:100%;border:1px solid #cfd3d4;background:#fff;color:#111;border-radius:0;padding:13px 14px;font:inherit;font-size:14px;outline:none}
.vv-contact-page input:focus,.vv-contact-page select:focus,.vv-contact-page textarea:focus{border-color:#071c28}
.vv-contact-page textarea{min-height:155px;resize:vertical}
.vv-contact-page .vvc-submit{border:0;border-radius:0;background:#071c28;color:#fff;padding:15px 24px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}
.vv-contact-page .vvc-required{font-size:11px;color:#70787b;margin-top:12px}
.vv-contact-page .vvc-status{padding:13px 15px;margin:0 0 20px;border:1px solid #cfd3d4;background:#fff;font-size:13px;line-height:1.5}
.vv-contact-page .vvc-status--success{border-color:#8aa39a}
.vv-contact-page .vvc-info{background:#071c28;color:#fff;padding:50px 0}
.vv-contact-page .vvc-info-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:start}
.vv-contact-page .vvc-info .vvc-section-kicker{color:#b8c5ca}
.vv-contact-page .vvc-info p{color:#e1e8ea;margin:0 0 11px}
.vv-contact-page .vvc-info p:last-child{margin-bottom:0}
.vv-contact-page .vvc-cta{padding:26px 0;background:#f3f4f4;border-bottom:1px solid #e5e5e5}
.vv-contact-page .vvc-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.vv-contact-page .vvc-cta strong{font-size:13px;letter-spacing:.09em;text-transform:uppercase}
.vv-contact-page .vvc-button{display:inline-block;background:#071c28;color:#fff!important;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
 .vv-contact-page .vvc-wrap{width:min(100% - 42px,900px)}
 .vv-contact-page .vvc-hero{padding:52px 0 48px}
 .vv-contact-page .vvc-route-grid{grid-template-columns:repeat(2,1fr)}
 .vv-contact-page .vvc-grid,.vv-contact-page .vvc-info-grid{grid-template-columns:1fr;gap:28px}
 .vv-contact-page .vvc-main{padding:38px 0}
}
@media(max-width:620px){
 .vv-contact-page .vvc-wrap{width:calc(100% - 30px)}
 .vv-contact-page .vvc-breadcrumb{padding:13px 0;font-size:12px}
 .vv-contact-page .vvc-hero{padding:28px 0 26px}
 .vv-contact-page .vvc-kicker{margin-bottom:10px}
 .vv-contact-page .vvc-hero p{font-size:13px;line-height:1.45}
 .vv-contact-page .vvc-route-grid{margin-top:18px;grid-template-columns:repeat(2,1fr)}
 .vv-contact-page .vvc-route{padding:13px 12px;min-height:91px}
 .vv-contact-page .vvc-route span{margin-bottom:6px}
 .vv-contact-page .vvc-main{padding:24px 0}
 .vv-contact-page .vvc-grid{gap:18px}
 .vv-contact-page .vvc-intro p{font-size:13px;line-height:1.45;margin-top:9px}
 .vv-contact-page .vvc-support-note{margin-top:18px;padding-top:15px}
 .vv-contact-page .vvc-form{padding:18px}
 .vv-contact-page .vvc-fields{grid-template-columns:1fr;gap:14px}
 .vv-contact-page .vvc-field{margin-bottom:14px}
 .vv-contact-page .vvc-fields .vvc-field{margin-bottom:0}
 .vv-contact-page textarea{min-height:130px}
 .vv-contact-page .vvc-info{padding:26px 0}
 .vv-contact-page .vvc-info-grid{gap:10px}
 .vv-contact-page .vvc-info p{font-size:13px;line-height:1.45;margin-bottom:8px}
 .vv-contact-page .vvc-cta{padding:16px 0}
 .vv-contact-page .vvc-cta-inner{display:block}
 .vv-contact-page .vvc-cta strong{display:block;margin-bottom:14px}
 .vv-contact-page .vvc-button{display:block;text-align:center;width:100%}
}


/* =========================================================
   V6.12.0 — TERMS & CONDITIONS
   ========================================================= */
.vv-terms-page{background:#fff;color:#111}
.vv-terms-page *{box-sizing:border-box}
.vv-terms-page .vvt-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}
.vv-terms-page .vvt-breadcrumb{padding:18px 0;border-bottom:1px solid #e5e5e5;font-size:13px;letter-spacing:.02em}
.vv-terms-page .vvt-breadcrumb a{color:#555;text-decoration:none}
.vv-terms-page .vvt-hero{background:#071c28;color:#fff;padding:70px 0 62px}
.vv-terms-page .vvt-kicker,.vv-terms-page .vvt-section-kicker{font-size:var(--vv-type-label);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.vv-terms-page .vvt-kicker{margin-bottom:13px}
.vv-terms-page .vvt-section-kicker{color:#69747a;margin-bottom:11px}
.vv-terms-page h1{font-size:var(--vv-type-display);line-height:var(--vv-leading-display);letter-spacing:-.025em;margin:0 0 20px}
.vv-terms-page h2{font-size:var(--vv-type-section);line-height:var(--vv-leading-section);letter-spacing:-.015em;margin:0}
.vv-terms-page h3{font-size:var(--vv-type-card);line-height:var(--vv-leading-card)}
.vv-terms-page p,.vv-terms-page li{font-size:var(--vv-type-body);line-height:var(--vv-leading-body)}
.vv-terms-page .vvt-hero p{max-width:830px;color:#e4ebed;margin:0}
.vv-terms-page .vvt-meta{display:flex;gap:28px;flex-wrap:wrap;margin-top:32px;padding-top:22px;border-top:1px solid rgba(255,255,255,.2)}
.vv-terms-page .vvt-meta div{font-size:12px;color:#c8d2d6}
.vv-terms-page .vvt-meta strong{display:block;color:#fff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.vv-terms-page .vvt-intro{padding:44px 0 30px;border-bottom:1px solid #e5e5e5}
.vv-terms-page .vvt-two{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.vv-terms-page .vvt-intro p{margin:0;color:#485053}
.vv-terms-page .vvt-body{padding:22px 0 44px}
.vv-terms-page .vvt-row{display:grid;grid-template-columns:180px 1fr;gap:30px;padding:27px 0;border-bottom:1px solid #dedede}
.vv-terms-page .vvt-num{font-size:var(--vv-type-label);letter-spacing:.15em;color:#7a858a;padding-top:5px}
.vv-terms-page .vvt-content h3{margin:0 0 10px;letter-spacing:-.01em}
.vv-terms-page .vvt-content p{font-size:14px;line-height:1.62;color:#4c5457;margin:0 0 10px}
.vv-terms-page .vvt-content p:last-child{margin-bottom:0}
.vv-terms-page .vvt-content ul{margin:8px 0 10px;padding-left:19px}
.vv-terms-page .vvt-content li{font-size:14px;line-height:1.58;color:#4c5457;margin:5px 0}
.vv-terms-page .vvt-highlight{background:#f3f4f4;padding:48px 0}
.vv-terms-page .vvt-highlight p{color:#4b5356;margin:0 0 10px}
.vv-terms-page .vvt-highlight p:last-child{margin-bottom:0}
.vv-terms-page .vvt-research{background:#071c28;color:#fff;padding:52px 0}
.vv-terms-page .vvt-research .vvt-section-kicker{color:#b8c5ca}
.vv-terms-page .vvt-research p{color:#e1e8ea;margin:0}
.vv-terms-page .vvt-cta{padding:26px 0;background:#f3f4f4;border-bottom:1px solid #e5e5e5}
.vv-terms-page .vvt-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.vv-terms-page .vvt-cta strong{font-size:13px;letter-spacing:.09em;text-transform:uppercase}
.vv-terms-page .vvt-button{display:inline-block;background:#071c28;color:#fff!important;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
 .vv-terms-page .vvt-wrap{width:min(100% - 42px,900px)}
 .vv-terms-page .vvt-hero{padding:52px 0 48px}
 .vv-terms-page .vvt-two{grid-template-columns:1fr;gap:22px}
 .vv-terms-page .vvt-row{grid-template-columns:150px 1fr;gap:24px}
}
@media(max-width:620px){
 .vv-terms-page .vvt-wrap{width:calc(100% - 30px)}
 .vv-terms-page .vvt-breadcrumb{padding:13px 0;font-size:12px}
 .vv-terms-page .vvt-hero{padding:28px 0 26px}
 .vv-terms-page .vvt-kicker{margin-bottom:10px}
 .vv-terms-page .vvt-hero p{font-size:13px;line-height:1.45}
 .vv-terms-page .vvt-meta{gap:16px;margin-top:18px;padding-top:15px}
 .vv-terms-page .vvt-intro{padding:22px 0 14px}
 .vv-terms-page .vvt-two{gap:10px}
 .vv-terms-page .vvt-intro p{font-size:13px;line-height:1.45}
 .vv-terms-page .vvt-body{padding:8px 0 24px}
 .vv-terms-page .vvt-row{grid-template-columns:1fr;gap:5px;padding:18px 0}
 .vv-terms-page .vvt-num{padding-top:0}
 .vv-terms-page .vvt-content h3{margin-bottom:7px}
 .vv-terms-page .vvt-content p,.vv-terms-page .vvt-content li{font-size:13px;line-height:1.5}
 .vv-terms-page .vvt-highlight{padding:25px 0}
 .vv-terms-page .vvt-highlight p{font-size:13px;line-height:1.45}
 .vv-terms-page .vvt-research{padding:26px 0}
 .vv-terms-page .vvt-research p{font-size:13px;line-height:1.45}
 .vv-terms-page .vvt-cta{padding:16px 0}
 .vv-terms-page .vvt-cta-inner{display:block}
 .vv-terms-page .vvt-cta strong{display:block;margin-bottom:14px}
 .vv-terms-page .vvt-button{display:block;text-align:center;width:100%}
}


/* =========================================================
   V6.13.0 — PRIVACY POLICY
   ========================================================= */
.vv-privacy-page{background:#fff;color:#111}
.vv-privacy-page *{box-sizing:border-box}
.vv-privacy-page .vvp-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}
.vv-privacy-page .vvp-breadcrumb{padding:18px 0;border-bottom:1px solid #e5e5e5;font-size:13px;letter-spacing:.02em}
.vv-privacy-page .vvp-breadcrumb a{color:#555;text-decoration:none}
.vv-privacy-page .vvp-hero{background:#071c28;color:#fff;padding:70px 0 62px}
.vv-privacy-page .vvp-kicker,.vv-privacy-page .vvp-section-kicker{font-size:var(--vv-type-label);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.vv-privacy-page .vvp-kicker{margin-bottom:13px}
.vv-privacy-page .vvp-section-kicker{color:#69747a;margin-bottom:11px}
.vv-privacy-page h1{font-size:var(--vv-type-display);line-height:var(--vv-leading-display);letter-spacing:-.025em;margin:0 0 20px}
.vv-privacy-page h2{font-size:var(--vv-type-section);line-height:var(--vv-leading-section);letter-spacing:-.015em;margin:0}
.vv-privacy-page h3{font-size:var(--vv-type-card);line-height:var(--vv-leading-card)}
.vv-privacy-page p,.vv-privacy-page li{font-size:var(--vv-type-body);line-height:var(--vv-leading-body)}
.vv-privacy-page .vvp-hero p{max-width:850px;color:#e4ebed;margin:0}
.vv-privacy-page .vvp-meta{display:flex;gap:28px;flex-wrap:wrap;margin-top:32px;padding-top:22px;border-top:1px solid rgba(255,255,255,.2)}
.vv-privacy-page .vvp-meta div{font-size:12px;color:#c8d2d6}
.vv-privacy-page .vvp-meta strong{display:block;color:#fff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.vv-privacy-page .vvp-intro{padding:44px 0 30px;border-bottom:1px solid #e5e5e5}
.vv-privacy-page .vvp-two{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.vv-privacy-page .vvp-intro p{margin:0;color:#485053}
.vv-privacy-page .vvp-principles{background:#f3f4f4;padding:34px 0}
.vv-privacy-page .vvp-principle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d9dddd;border:1px solid #d9dddd}
.vv-privacy-page .vvp-principle{background:#fff;padding:22px 20px;min-height:120px}
.vv-privacy-page .vvp-principle span{display:block;font-size:11px;letter-spacing:.14em;color:#7a858a;margin-bottom:10px}
.vv-privacy-page .vvp-principle strong{display:block;font-size:13px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:5px}
.vv-privacy-page .vvp-principle small{display:block;font-size:12px;line-height:1.45;color:#596164}
.vv-privacy-page .vvp-body{padding:22px 0 44px}
.vv-privacy-page .vvp-row{display:grid;grid-template-columns:180px 1fr;gap:30px;padding:27px 0;border-bottom:1px solid #dedede}
.vv-privacy-page .vvp-num{font-size:var(--vv-type-label);letter-spacing:.15em;color:#7a858a;padding-top:5px}
.vv-privacy-page .vvp-content h3{margin:0 0 10px;letter-spacing:-.01em}
.vv-privacy-page .vvp-content p{font-size:14px;line-height:1.62;color:#4c5457;margin:0 0 10px}
.vv-privacy-page .vvp-content p:last-child{margin-bottom:0}
.vv-privacy-page .vvp-content ul{margin:8px 0 10px;padding-left:19px}
.vv-privacy-page .vvp-content li{font-size:14px;line-height:1.58;color:#4c5457;margin:5px 0}
.vv-privacy-page .vvp-rights{background:#f3f4f4;padding:48px 0}
.vv-privacy-page .vvp-rights p{color:#4b5356;margin:0 0 10px}
.vv-privacy-page .vvp-rights p:last-child{margin-bottom:0}
.vv-privacy-page .vvp-contact{background:#071c28;color:#fff;padding:52px 0}
.vv-privacy-page .vvp-contact .vvp-section-kicker{color:#b8c5ca}
.vv-privacy-page .vvp-contact p{color:#e1e8ea;margin:0 0 10px}
.vv-privacy-page .vvp-contact p:last-child{margin-bottom:0}
.vv-privacy-page .vvp-cta{padding:26px 0;background:#f3f4f4;border-bottom:1px solid #e5e5e5}
.vv-privacy-page .vvp-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.vv-privacy-page .vvp-cta strong{font-size:13px;letter-spacing:.09em;text-transform:uppercase}
.vv-privacy-page .vvp-button{display:inline-block;background:#071c28;color:#fff!important;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
 .vv-privacy-page .vvp-wrap{width:min(100% - 42px,900px)}
 .vv-privacy-page .vvp-hero{padding:52px 0 48px}
 .vv-privacy-page .vvp-two{grid-template-columns:1fr;gap:22px}
 .vv-privacy-page .vvp-principle-grid{grid-template-columns:repeat(2,1fr)}
 .vv-privacy-page .vvp-row{grid-template-columns:150px 1fr;gap:24px}
}
@media(max-width:620px){
 .vv-privacy-page .vvp-wrap{width:calc(100% - 30px)}
 .vv-privacy-page .vvp-breadcrumb{padding:13px 0;font-size:12px}
 .vv-privacy-page .vvp-hero{padding:28px 0 26px}
 .vv-privacy-page .vvp-kicker{margin-bottom:10px}
 .vv-privacy-page .vvp-hero p{font-size:13px;line-height:1.45}
 .vv-privacy-page .vvp-meta{gap:16px;margin-top:18px;padding-top:15px}
 .vv-privacy-page .vvp-intro{padding:22px 0 14px}
 .vv-privacy-page .vvp-two{gap:10px}
 .vv-privacy-page .vvp-intro p{font-size:13px;line-height:1.45}
 .vv-privacy-page .vvp-principles{padding:18px 0}
 .vv-privacy-page .vvp-principle-grid{grid-template-columns:repeat(2,1fr)}
 .vv-privacy-page .vvp-principle{padding:13px 12px;min-height:102px}
 .vv-privacy-page .vvp-principle span{margin-bottom:6px}
 .vv-privacy-page .vvp-body{padding:8px 0 24px}
 .vv-privacy-page .vvp-row{grid-template-columns:1fr;gap:5px;padding:18px 0}
 .vv-privacy-page .vvp-num{padding-top:0}
 .vv-privacy-page .vvp-content h3{margin-bottom:7px}
 .vv-privacy-page .vvp-content p,.vv-privacy-page .vvp-content li{font-size:13px;line-height:1.5}
 .vv-privacy-page .vvp-rights{padding:25px 0}
 .vv-privacy-page .vvp-rights p{font-size:13px;line-height:1.45}
 .vv-privacy-page .vvp-contact{padding:26px 0}
 .vv-privacy-page .vvp-contact p{font-size:13px;line-height:1.45}
 .vv-privacy-page .vvp-cta{padding:16px 0}
 .vv-privacy-page .vvp-cta-inner{display:block}
 .vv-privacy-page .vvp-cta strong{display:block;margin-bottom:14px}
 .vv-privacy-page .vvp-button{display:block;text-align:center;width:100%}
}

/* V6.14.0 Cookie Policy */
.vv-cookie-page{background:#fff;color:#111}.vv-cookie-page *{box-sizing:border-box}.vv-cookie-page .vvc-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}
.vv-cookie-page .vvc-breadcrumb{padding:18px 0;border-bottom:1px solid #e5e5e5;font-size:13px}.vv-cookie-page .vvc-breadcrumb a{color:#555;text-decoration:none}.vv-cookie-page .vvc-hero{background:#071c28;color:#fff;padding:70px 0 62px}
.vv-cookie-page .vvc-kicker,.vv-cookie-page .vvc-section-kicker{font-size:var(--vv-type-label);font-weight:700;letter-spacing:.18em;text-transform:uppercase}.vv-cookie-page .vvc-kicker{margin-bottom:13px}.vv-cookie-page .vvc-section-kicker{color:#69747a;margin-bottom:11px}
.vv-cookie-page h1{font-size:var(--vv-type-display);line-height:var(--vv-leading-display);letter-spacing:-.025em;margin:0 0 20px}.vv-cookie-page h2{font-size:var(--vv-type-section);line-height:var(--vv-leading-section);margin:0}.vv-cookie-page h3{font-size:var(--vv-type-card);line-height:var(--vv-leading-card)}
.vv-cookie-page .vvc-hero p{max-width:850px;color:#e4ebed;margin:0}.vv-cookie-page .vvc-meta{display:flex;gap:28px;flex-wrap:wrap;margin-top:32px;padding-top:22px;border-top:1px solid rgba(255,255,255,.2)}.vv-cookie-page .vvc-meta div{font-size:12px;color:#c8d2d6}.vv-cookie-page .vvc-meta strong{display:block;color:#fff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.vv-cookie-page .vvc-intro{padding:44px 0 30px;border-bottom:1px solid #e5e5e5}.vv-cookie-page .vvc-two{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.vv-cookie-page .vvc-intro p{margin:0;color:#485053}
.vv-cookie-page .vvc-categories{background:#f3f4f4;padding:34px 0}.vv-cookie-page .vvc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d9dddd;border:1px solid #d9dddd}.vv-cookie-page .vvc-card{background:#fff;padding:22px 20px;min-height:132px}.vv-cookie-page .vvc-card span{display:block;font-size:11px;letter-spacing:.14em;color:#7a858a;margin-bottom:10px}.vv-cookie-page .vvc-card strong{display:block;font-size:13px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:6px}.vv-cookie-page .vvc-card small{display:block;font-size:12px;line-height:1.45;color:#596164}
.vv-cookie-page .vvc-body{padding:22px 0 44px}.vv-cookie-page .vvc-row{display:grid;grid-template-columns:180px 1fr;gap:30px;padding:27px 0;border-bottom:1px solid #dedede}.vv-cookie-page .vvc-num{font-size:var(--vv-type-label);letter-spacing:.15em;color:#7a858a;padding-top:5px}.vv-cookie-page .vvc-content h3{margin:0 0 10px}.vv-cookie-page .vvc-content p{font-size:14px;line-height:1.62;color:#4c5457;margin:0 0 10px}
.vv-cookie-page .vvc-control{background:#f3f4f4;padding:48px 0}.vv-cookie-page .vvc-control p{color:#4b5356;margin:0 0 10px}.vv-cookie-page .vvc-contact{background:#071c28;color:#fff;padding:52px 0}.vv-cookie-page .vvc-contact .vvc-section-kicker{color:#b8c5ca}.vv-cookie-page .vvc-contact p{color:#e1e8ea;margin:0}
.vv-cookie-page .vvc-cta{padding:26px 0;background:#f3f4f4;border-bottom:1px solid #e5e5e5}.vv-cookie-page .vvc-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.vv-cookie-page .vvc-cta strong{font-size:13px;letter-spacing:.09em;text-transform:uppercase}.vv-cookie-page .vvc-button{display:inline-block;background:#071c28;color:#fff!important;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:900px){.vv-cookie-page .vvc-wrap{width:min(100% - 42px,900px)}.vv-cookie-page .vvc-hero{padding:52px 0 48px}.vv-cookie-page .vvc-two{grid-template-columns:1fr;gap:22px}.vv-cookie-page .vvc-grid{grid-template-columns:repeat(2,1fr)}.vv-cookie-page .vvc-row{grid-template-columns:150px 1fr;gap:24px}}
@media(max-width:620px){.vv-cookie-page .vvc-wrap{width:calc(100% - 30px)}.vv-cookie-page .vvc-breadcrumb{padding:13px 0;font-size:12px}.vv-cookie-page .vvc-hero{padding:28px 0 26px}.vv-cookie-page .vvc-hero p{font-size:13px;line-height:1.45}.vv-cookie-page .vvc-meta{gap:16px;margin-top:18px;padding-top:15px}.vv-cookie-page .vvc-intro{padding:22px 0 14px}.vv-cookie-page .vvc-two{gap:10px}.vv-cookie-page .vvc-intro p{font-size:13px;line-height:1.45}.vv-cookie-page .vvc-categories{padding:18px 0}.vv-cookie-page .vvc-grid{grid-template-columns:repeat(2,1fr)}.vv-cookie-page .vvc-card{padding:13px 12px;min-height:112px}.vv-cookie-page .vvc-body{padding:8px 0 24px}.vv-cookie-page .vvc-row{grid-template-columns:1fr;gap:5px;padding:18px 0}.vv-cookie-page .vvc-num{padding-top:0}.vv-cookie-page .vvc-content p{font-size:13px;line-height:1.5}.vv-cookie-page .vvc-control{padding:25px 0}.vv-cookie-page .vvc-contact{padding:26px 0}.vv-cookie-page .vvc-cta{padding:16px 0}.vv-cookie-page .vvc-cta-inner{display:block}.vv-cookie-page .vvc-cta strong{display:block;margin-bottom:14px}.vv-cookie-page .vvc-button{display:block;text-align:center;width:100%}}


/* =========================================================
   V6.15.0 — MOBILE PRODUCT BREADCRUMB HEIGHT REDUCTION
   Individual WooCommerce product pages only.
   ========================================================= */
@media (max-width:620px){
  body.single-product .woocommerce-breadcrumb,
  body.single-product nav.woocommerce-breadcrumb{
    padding-top:8px !important;
    padding-bottom:8px !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    min-height:0 !important;
    line-height:1.25 !important;
  }
}


/* =========================================================
   V6.15.1 — ACTUAL MOBILE PRODUCT BREADCRUMB COMPACTION
   Correct VOREVIA product-page selector.
   ========================================================= */
@media (max-width:620px){
  .vv-product-page .vv-product-breadcrumb .vv-wrap{
    min-height:34px !important;
    padding:4px 0 !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }

  .vv-product-page .vv-product-breadcrumb .trail{
    gap:6px !important;
    font-size:10px !important;
    line-height:1.2 !important;
    margin:0 !important;
  }

  .vv-product-page .vv-product-breadcrumb .back{
    font-size:10px !important;
    line-height:1.2 !important;
    margin:0 !important;
  }
}


/* =========================================================
   V6.16.0 — VOREVIA CART / BASKET
   Scoped to WooCommerce cart only.
   ========================================================= */
body.woocommerce-cart .site-main,
body.woocommerce-cart main{
  background:#fff;
}

body.woocommerce-cart .woocommerce{
  width:min(1180px,calc(100% - 64px));
  margin:0 auto;
  padding:38px 0 56px;
}

body.woocommerce-cart .woocommerce::before{
  content:"YOUR BASKET.";
  display:block;
  font-size:var(--vv-type-display);
  line-height:var(--vv-leading-display);
  letter-spacing:-.025em;
  font-weight:700;
  color:#071c28;
  margin:0 0 10px;
}

body.woocommerce-cart .woocommerce::after{
  content:"Review your research products before continuing to checkout.";
  display:block;
  font-size:14px;
  line-height:1.55;
  color:#596164;
  margin:0 0 34px;
  padding-bottom:24px;
  border-bottom:1px solid #dedede;
}

body.woocommerce-cart .woocommerce-notices-wrapper{
  margin-bottom:18px;
}

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-info{
  border-top:0;
  background:#f3f4f4;
  color:#263238;
  padding:14px 18px 14px 18px;
  margin:0 0 18px;
  font-size:13px;
}

body.woocommerce-cart form.woocommerce-cart-form{
  margin:0;
}

body.woocommerce-cart table.shop_table{
  border:0;
  border-radius:0;
  border-collapse:collapse;
  width:100%;
  margin:0;
  background:#fff;
}

body.woocommerce-cart table.shop_table thead th{
  background:#f3f4f4;
  color:#526066;
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:13px 12px;
  border:0;
  border-bottom:1px solid #d9dddd;
}

body.woocommerce-cart table.shop_table td{
  padding:20px 12px;
  border:0;
  border-bottom:1px solid #e1e3e3;
  vertical-align:middle;
  font-size:14px;
}

body.woocommerce-cart .product-remove{
  width:34px;
  text-align:left;
}

body.woocommerce-cart .product-remove a.remove{
  width:28px;
  height:28px;
  line-height:26px;
  border:1px solid #cfd5d7;
  border-radius:0;
  color:#071c28 !important;
  font-size:18px;
  font-weight:400;
}

body.woocommerce-cart .product-remove a.remove:hover{
  background:#071c28;
  color:#fff !important;
}

body.woocommerce-cart .product-thumbnail{
  width:100px;
}

body.woocommerce-cart .product-thumbnail img{
  width:76px;
  height:auto;
  display:block;
  object-fit:contain;
}

body.woocommerce-cart .product-name a{
  color:#071c28;
  text-decoration:none;
  font-weight:700;
  font-size:15px;
}

body.woocommerce-cart .product-price,
body.woocommerce-cart .product-subtotal{
  color:#071c28;
  font-weight:600;
  white-space:nowrap;
}

body.woocommerce-cart .quantity{
  display:inline-flex;
  align-items:center;
  border:1px solid #cfd5d7;
  background:#fff;
}

body.woocommerce-cart .quantity .qty{
  width:66px;
  min-height:42px;
  border:0;
  border-radius:0;
  padding:8px;
  text-align:center;
  background:#fff;
  color:#071c28;
  font-size:14px;
  box-shadow:none;
}

body.woocommerce-cart td.actions{
  padding:20px 0 0 !important;
  border-bottom:0 !important;
}

body.woocommerce-cart td.actions .coupon{
  display:flex;
  gap:8px;
  align-items:stretch;
}

body.woocommerce-cart td.actions .coupon label{
  display:none;
}

body.woocommerce-cart td.actions .coupon .input-text{
  width:210px !important;
  min-height:44px;
  border:1px solid #cfd5d7;
  border-radius:0;
  padding:10px 12px;
  font-size:13px;
  box-shadow:none;
}

body.woocommerce-cart .button,
body.woocommerce-cart button.button,
body.woocommerce-cart input.button{
  background:#071c28 !important;
  color:#fff !important;
  border-radius:0 !important;
  border:1px solid #071c28 !important;
  padding:14px 20px !important;
  min-height:44px;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  box-shadow:none !important;
}

body.woocommerce-cart .button:hover,
body.woocommerce-cart button.button:hover,
body.woocommerce-cart input.button:hover{
  background:#102b39 !important;
  color:#fff !important;
}

body.woocommerce-cart .cart-collaterals{
  margin-top:42px;
  display:flex;
  justify-content:flex-end;
}

body.woocommerce-cart .cart-collaterals .cart_totals{
  float:none;
  width:min(100%,440px);
  background:#f3f4f4;
  padding:26px;
  border:1px solid #e0e3e4;
}

body.woocommerce-cart .cart_totals h2{
  margin:0 0 18px;
  color:#071c28;
  font-size:var(--vv-type-card);
  line-height:var(--vv-leading-card);
  letter-spacing:-.01em;
}

body.woocommerce-cart .cart_totals table.shop_table{
  background:transparent;
}

body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td{
  background:transparent;
  padding:13px 0;
  border-bottom:1px solid #d7dcde;
  font-size:14px;
}

body.woocommerce-cart .cart_totals table.shop_table th{
  color:#596164;
  font-weight:600;
}

body.woocommerce-cart .cart_totals table.shop_table td{
  text-align:right;
  color:#071c28;
  font-weight:700;
}

body.woocommerce-cart .order-total th,
body.woocommerce-cart .order-total td{
  font-size:16px !important;
  border-bottom:0 !important;
  padding-top:16px !important;
}

body.woocommerce-cart .wc-proceed-to-checkout{
  padding:22px 0 0;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  display:block;
  margin:0;
  text-align:center;
  background:#071c28 !important;
  color:#fff !important;
  border-radius:0 !important;
  padding:16px 20px !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::after{
  content:" →";
}

body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-cart .shipping-calculator-button,
body.woocommerce-cart .woocommerce-shipping-methods,
body.woocommerce-cart .woocommerce-shipping-calculator{
  font-size:12px;
  line-height:1.5;
}

body.woocommerce-cart .return-to-shop{
  margin-top:24px;
}

body.woocommerce-cart .cart-empty{
  background:#f3f4f4;
  border-top:0;
  padding:28px;
  margin:0 0 20px;
  text-align:center;
  color:#4d5659;
}

@media(max-width:900px){
  body.woocommerce-cart .woocommerce{
    width:min(100% - 42px,900px);
    padding:30px 0 46px;
  }

  body.woocommerce-cart table.shop_table td{
    padding:17px 10px;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals{
    width:min(100%,420px);
  }
}

@media(max-width:620px){
  body.woocommerce-cart .woocommerce{
    width:calc(100% - 30px);
    padding:22px 0 34px;
  }

  body.woocommerce-cart .woocommerce::before{
    margin-bottom:7px;
  }

  body.woocommerce-cart .woocommerce::after{
    font-size:13px;
    margin-bottom:20px;
    padding-bottom:16px;
  }

  body.woocommerce-cart table.shop_table_responsive thead{
    display:none;
  }

  body.woocommerce-cart table.shop_table_responsive tr{
    display:grid;
    grid-template-columns:72px 1fr;
    gap:0 14px;
    padding:16px 0;
    border-bottom:1px solid #dfe2e3;
  }

  body.woocommerce-cart table.shop_table_responsive tr td{
    display:block;
    width:auto;
    padding:5px 0;
    border:0;
    text-align:left !important;
    background:transparent !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr td::before{
    display:none;
  }

  body.woocommerce-cart table.shop_table_responsive .product-remove{
    grid-column:2;
    grid-row:1;
    justify-self:end;
    padding:0;
  }

  body.woocommerce-cart table.shop_table_responsive .product-thumbnail{
    display:block !important;
    grid-column:1;
    grid-row:1 / span 5;
    width:72px;
    padding-top:2px;
  }

  body.woocommerce-cart table.shop_table_responsive .product-thumbnail img{
    width:64px;
  }

  body.woocommerce-cart table.shop_table_responsive .product-name{
    grid-column:2;
    grid-row:2;
    padding-top:0;
    padding-right:34px;
  }

  body.woocommerce-cart table.shop_table_responsive .product-price{
    grid-column:2;
    grid-row:3;
    font-size:13px;
    color:#596164;
    font-weight:500;
  }

  body.woocommerce-cart table.shop_table_responsive .product-quantity{
    grid-column:2;
    grid-row:4;
    padding-top:8px;
  }

  body.woocommerce-cart table.shop_table_responsive .product-subtotal{
    grid-column:2;
    grid-row:5;
    padding-top:8px;
    font-size:15px;
    font-weight:700;
  }

  body.woocommerce-cart table.shop_table_responsive td.actions{
    display:block;
    grid-column:1 / -1;
    grid-row:auto;
    padding-top:16px !important;
  }

  body.woocommerce-cart td.actions .coupon{
    display:grid;
    grid-template-columns:1fr auto;
    gap:8px;
    width:100%;
  }

  body.woocommerce-cart td.actions .coupon .input-text{
    width:100% !important;
  }

  body.woocommerce-cart td.actions > .button{
    width:100%;
    margin-top:8px;
  }

  body.woocommerce-cart .cart-collaterals{
    margin-top:26px;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals{
    width:100%;
    padding:20px 18px;
  }

  body.woocommerce-cart .cart_totals h2{
    margin-bottom:12px;
  }

  body.woocommerce-cart .cart_totals table.shop_table th,
  body.woocommerce-cart .cart_totals table.shop_table td{
    padding:11px 0;
  }

  body.woocommerce-cart .wc-proceed-to-checkout{
    padding-top:18px;
  }

  body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
    padding:16px 14px !important;
  }
}


/* =========================================================
   V6.16.1 — FUNCTIONAL HEADER CART
   ========================================================= */
.vv-header-cart{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  min-height:28px;
  color:#111;
  text-decoration:none;
  font-size:20px;
  line-height:1;
}

.vv-header-cart:hover{
  color:#111;
}

.vv-header-cart-count{
  position:absolute;
  top:-8px;
  right:-10px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:9px;
  background:#071c28;
  color:#fff;
  font-size:10px;
  font-weight:700;
  line-height:18px;
  text-align:center;
}

.vv-mobile-cart-link{
  display:flex !important;
  align-items:center;
  justify-content:space-between;
}

.vv-mobile-cart-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:20px;
  padding:0 6px;
  background:#071c28;
  color:#fff;
  font-size:10px;
  font-weight:700;
  line-height:20px;
}


/* =========================================================
   V6.16.2 — PREMIUM CART + CHECKOUT
   ========================================================= */

/* CART */
body.woocommerce-cart .woocommerce{
  padding-top:34px;
}
body.woocommerce-cart .woocommerce::before{
  font-size:clamp(34px,4.6vw,64px);
  margin-bottom:8px;
}
body.woocommerce-cart .woocommerce::after{
  content:"Review your selected research products, quantities and order summary before checkout.";
  font-size:14px;
  color:#667176;
  margin-bottom:26px;
  padding-bottom:20px;
}
body.woocommerce-cart .woocommerce-message{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  background:#f7f8f8;
  border:1px solid #dfe3e5;
  border-left:3px solid #071c28;
  padding:14px 16px;
  min-height:52px;
  color:#354046;
}
body.woocommerce-cart .woocommerce-message .button{
  order:2;
  margin-left:auto !important;
  min-height:38px !important;
  padding:10px 16px !important;
}
body.woocommerce-cart table.shop_table thead th{
  background:#071c28;
  color:#fff;
  border-bottom:0;
}
body.woocommerce-cart table.shop_table td{
  padding-top:18px;
  padding-bottom:18px;
}
body.woocommerce-cart .product-thumbnail img{
  width:86px;
  max-width:86px;
  min-height:86px;
  object-fit:contain;
  background:#fafafa;
  border:1px solid #e2e5e6;
  padding:6px;
}
body.woocommerce-cart .product-name a{
  font-size:16px;
  letter-spacing:-.01em;
}
body.woocommerce-cart .cart-collaterals{
  align-items:flex-start;
}
body.woocommerce-cart .cart-collaterals .cart_totals{
  background:#071c28;
  color:#fff;
  border:0;
  padding:28px;
}
body.woocommerce-cart .cart_totals h2{
  color:#fff;
  font-size:24px;
}
body.woocommerce-cart .cart_totals table.shop_table th{
  color:#cbd4d8;
}
body.woocommerce-cart .cart_totals table.shop_table td{
  color:#fff;
}
body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td{
  border-bottom:1px solid rgba(255,255,255,.16);
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  background:#fff !important;
  color:#071c28 !important;
  border:1px solid #fff !important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{
  background:#eef2f3 !important;
  color:#071c28 !important;
}
body.woocommerce-cart .woocommerce-cart-form{
  background:#fff;
}

/* CHECKOUT */
body.woocommerce-checkout{
  background:#fff;
}
body.woocommerce-checkout .site-main,
body.woocommerce-checkout main{
  background:#fff;
}
body.woocommerce-checkout .woocommerce{
  width:min(1180px,calc(100% - 64px));
  margin:0 auto;
  padding:36px 0 58px;
}
body.woocommerce-checkout .woocommerce::before{
  content:"SECURE CHECKOUT.";
  display:block;
  font-size:var(--vv-type-display);
  line-height:var(--vv-leading-display);
  letter-spacing:-.025em;
  font-weight:700;
  color:#071c28;
  margin:0 0 8px;
}
body.woocommerce-checkout .woocommerce::after{
  content:"Complete your delivery and payment details to place your VOREVIA order.";
  display:block;
  font-size:14px;
  color:#667176;
  margin:0 0 24px;
  padding-bottom:20px;
  border-bottom:1px solid #dedede;
}
body.woocommerce-checkout .vv-checkout-return{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0 0 20px;
  color:#071c28;
  text-decoration:none;
  font-size:12px;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
}
body.woocommerce-checkout .vv-checkout-return:hover{
  text-decoration:underline;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{
  background:#f4f6f6;
  border:1px solid #dde2e4;
  color:#3f4a4f;
  padding:13px 15px;
  margin:0 0 18px;
}
body.woocommerce-checkout form.checkout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);
  gap:38px;
  align-items:start;
}
body.woocommerce-checkout #customer_details{
  grid-column:1;
  display:grid;
  grid-template-columns:1fr;
  gap:22px;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  grid-column:2;
}
body.woocommerce-checkout #order_review_heading{
  margin:0;
  padding:24px 24px 0;
  background:#071c28;
  color:#fff;
  font-size:20px;
  letter-spacing:-.01em;
}
body.woocommerce-checkout #order_review{
  background:#071c28;
  color:#fff;
  padding:18px 24px 24px;
}
body.woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .col2-set .col-2{
  float:none;
  width:100%;
}
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields{
  background:#f7f8f8;
  border:1px solid #e0e4e6;
  padding:24px;
}
body.woocommerce-checkout h3{
  color:#071c28;
  font-size:22px;
  margin:0 0 18px;
}
body.woocommerce-checkout .form-row{
  margin:0 0 14px;
}
body.woocommerce-checkout .form-row label{
  color:#354046;
  font-size:12px;
  font-weight:700;
  letter-spacing:.03em;
  margin-bottom:6px;
}
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select,
body.woocommerce-checkout .select2-container .select2-selection--single{
  min-height:46px;
  border:1px solid #cfd6d9;
  border-radius:0;
  background:#fff;
  color:#182126;
  box-shadow:none;
}
body.woocommerce-checkout textarea{
  min-height:110px;
  padding:12px;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:44px;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:44px;
}
body.woocommerce-checkout table.shop_table{
  border:0;
  border-radius:0;
  margin:0;
  color:#fff;
}
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td{
  border-color:rgba(255,255,255,.16);
  padding:13px 0;
  background:transparent;
  color:#fff;
}
body.woocommerce-checkout table.shop_table th{
  color:#cbd4d8;
  font-size:12px;
}
body.woocommerce-checkout .order-total th,
body.woocommerce-checkout .order-total td{
  font-size:17px;
}
body.woocommerce-checkout #payment{
  background:transparent;
  border-radius:0;
  color:#fff;
}
body.woocommerce-checkout #payment ul.payment_methods{
  border-bottom:1px solid rgba(255,255,255,.16);
  padding:14px 0 18px;
}
body.woocommerce-checkout #payment div.payment_box{
  background:#112b38;
  color:#dce4e7;
}
body.woocommerce-checkout #payment div.payment_box::before{
  border-bottom-color:#112b38;
}
body.woocommerce-checkout #payment div.form-row{
  padding:18px 0 0;
}
body.woocommerce-checkout #place_order{
  width:100%;
  min-height:50px;
  background:#fff !important;
  color:#071c28 !important;
  border:1px solid #fff !important;
  border-radius:0 !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase;
}
body.woocommerce-checkout #place_order:hover{
  background:#eef2f3 !important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  color:#cbd4d8;
  font-size:11px;
  line-height:1.5;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a{
  color:#fff;
}
body.woocommerce-checkout .required{
  color:#8f1d1d;
}

/* Added-to-cart notice autocollapse */
.vv-cart-notice-autohide{
  animation:vvCartNoticeFade 0.35s ease forwards;
  animation-delay:3.5s;
}
@keyframes vvCartNoticeFade{
  to{opacity:0;transform:translateY(-4px);max-height:0;margin:0;padding-top:0;padding-bottom:0;border-width:0;overflow:hidden}
}

@media(max-width:900px){
  body.woocommerce-checkout .woocommerce{
    width:min(100% - 42px,900px);
    padding:30px 0 48px;
  }
  body.woocommerce-checkout form.checkout{
    grid-template-columns:1fr;
    gap:24px;
  }
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review{
    grid-column:1;
  }
  body.woocommerce-checkout #order_review_heading{
    margin-top:0;
  }
}

@media(max-width:620px){
  body.woocommerce-cart .woocommerce-message{
    display:block;
    padding:12px 13px;
  }
  body.woocommerce-cart .woocommerce-message .button{
    display:block;
    width:100%;
    margin:12px 0 0 !important;
    text-align:center;
  }
  body.woocommerce-cart .product-thumbnail img{
    width:64px;
    min-height:64px;
    padding:4px;
  }

  body.woocommerce-checkout .woocommerce{
    width:calc(100% - 30px);
    padding:22px 0 36px;
  }
  body.woocommerce-checkout .woocommerce::after{
    font-size:13px;
    margin-bottom:16px;
    padding-bottom:15px;
  }
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields{
    padding:18px 15px;
  }
  body.woocommerce-checkout h3{
    font-size:20px;
  }
  body.woocommerce-checkout #order_review_heading{
    padding:20px 18px 0;
  }
  body.woocommerce-checkout #order_review{
    padding:14px 18px 20px;
  }
}


/* =========================================================
   V6.16.3 — CART / CHECKOUT REFINEMENTS
   ========================================================= */

/* Restore approved global display typography */
body.woocommerce-cart .woocommerce::before,
body.woocommerce-checkout .woocommerce::before{
  font-size:var(--vv-type-display) !important;
  line-height:var(--vv-leading-display) !important;
  letter-spacing:-.025em !important;
}

/* Premium coupon strip */
body.woocommerce-checkout .woocommerce-form-coupon-toggle{
  margin:0 0 20px;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  position:relative;
  display:block;
  width:100%;
  margin:0;
  padding:15px 18px;
  background:#f3f4f4;
  border:1px solid #dfe3e5;
  border-left:3px solid #071c28;
  color:#425057;
  font-size:13px;
  line-height:1.4;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{
  display:none !important;
  content:none !important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .showcoupon{
  color:#071c28;
  font-weight:700;
  text-decoration:none;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .showcoupon:hover{
  text-decoration:underline;
}
body.woocommerce-checkout form.checkout_coupon{
  margin:0 0 22px;
  padding:18px;
  border:1px solid #dfe3e5;
  border-radius:0;
  background:#fafafa;
}
body.woocommerce-checkout form.checkout_coupon .form-row{
  margin:0;
}
body.woocommerce-checkout form.checkout_coupon .button{
  min-height:46px;
  border-radius:0;
  background:#071c28;
  color:#fff;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* Terms acceptance must be clearly legible on navy */
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper p,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-checkbox-text,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-checkbox-text *,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper a{
  color:#fff !important;
}
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-checkbox-text{
  font-weight:600;
}
body.woocommerce-checkout #payment input[type="checkbox"]{
  accent-color:#fff;
}

/* Desktop/tablet checkout: keep order summary alongside billing/shipping */
@media(min-width:901px){
  body.woocommerce-checkout form.checkout{
    display:grid !important;
    grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:38px !important;
    row-gap:0 !important;
    align-items:start !important;
  }
  body.woocommerce-checkout #customer_details{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
  }
  body.woocommerce-checkout #order_review_heading{
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:start !important;
    margin:0 !important;
  }
  body.woocommerce-checkout #order_review{
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:start !important;
    margin:0 !important;
  }
}

/* Mobile: order summary deliberately remains below customer details */
@media(max-width:900px){
  body.woocommerce-checkout form.checkout{
    display:block !important;
  }
  body.woocommerce-checkout #order_review_heading{
    margin-top:24px !important;
  }
}

/* Cart image polish */
body.woocommerce-cart .product-thumbnail img{
  background:#fff;
  border:1px solid #e1e5e6;
  padding:6px;
}


/* =========================================================
   V6.16.4 — ORDER PANEL + MOBILE CART TOTALS FIX
   ========================================================= */

/* Desktop + tablet: place the order table directly beneath its heading */
@media(min-width:621px){
  body.woocommerce-checkout #order_review_heading{
    display:flex !important;
    align-items:center !important;
    min-height:76px !important;
    padding:0 24px !important;
    margin:0 !important;
  }

  body.woocommerce-checkout #order_review{
    margin-top:0 !important;
    padding-top:14px !important;
  }

  body.woocommerce-checkout form.checkout{
    grid-template-rows:auto auto !important;
    row-gap:0 !important;
  }
}

/* Mobile cart totals: restore labels and remove overlapping divider behaviour */
@media(max-width:620px){
  body.woocommerce-cart .cart_totals table.shop_table,
  body.woocommerce-cart .cart_totals table.shop_table tbody,
  body.woocommerce-cart .cart_totals table.shop_table tr{
    display:table !important;
    width:100% !important;
  }

  body.woocommerce-cart .cart_totals table.shop_table tr{
    display:table-row !important;
  }

  body.woocommerce-cart .cart_totals table.shop_table th,
  body.woocommerce-cart .cart_totals table.shop_table td{
    display:table-cell !important;
    width:50% !important;
    position:static !important;
    float:none !important;
    clear:none !important;
    padding:12px 0 !important;
    border-bottom:1px solid rgba(255,255,255,.18) !important;
    vertical-align:middle !important;
  }

  body.woocommerce-cart .cart_totals table.shop_table th{
    text-align:left !important;
    color:#cbd4d8 !important;
    font-size:13px !important;
    font-weight:600 !important;
  }

  body.woocommerce-cart .cart_totals table.shop_table td{
    text-align:right !important;
    color:#fff !important;
    font-size:15px !important;
    font-weight:700 !important;
  }

  body.woocommerce-cart .cart_totals table.shop_table th::before,
  body.woocommerce-cart .cart_totals table.shop_table td::before{
    display:none !important;
    content:none !important;
  }

  body.woocommerce-cart .cart_totals table.shop_table tr.order-total th,
  body.woocommerce-cart .cart_totals table.shop_table tr.order-total td{
    border-bottom:0 !important;
    padding-top:16px !important;
  }

  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals td{
    vertical-align:top !important;
  }
}


/* =========================================================
   V6.16.5 — REMOVE DESKTOP/TABLET ORDER PANEL GAP
   ========================================================= */
@media(min-width:621px){
  body.woocommerce-checkout form.checkout{
    grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr) !important;
    grid-template-rows:auto !important;
    column-gap:38px !important;
    row-gap:0 !important;
    align-items:start !important;
  }

  body.woocommerce-checkout #customer_details{
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:start !important;
  }

  body.woocommerce-checkout #order_review_heading{
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:start !important;
    z-index:2 !important;
    min-height:76px !important;
    height:76px !important;
    display:flex !important;
    align-items:center !important;
    padding:0 24px !important;
    margin:0 !important;
  }

  body.woocommerce-checkout #order_review{
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:start !important;
    z-index:1 !important;
    margin:76px 0 0 !important;
    padding-top:14px !important;
  }
}


/* =========================================================
   V6.17.0 — PRE-LAUNCH PAYMENT STATUS
   Deliberate, premium treatment for checkout before gateway approval.
   ========================================================= */
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-notice--info,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-info,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-error,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-notice {
    border: 1px solid rgba(7,28,40,.18) !important;
    background: #f7f8f7 !important;
    color: #071c28 !important;
    padding: 22px 24px !important;
    margin: 0 0 22px !important;
    line-height: 1.65 !important;
    font-size: 14px !important;
}
body.woocommerce-checkout .vv-payment-prelaunch {
    background: #f7f8f7;
    color: #071c28;
    border: 1px solid rgba(7,28,40,.18);
    padding: 24px;
    margin: 0 0 22px;
}
body.woocommerce-checkout .vv-payment-prelaunch__eyebrow {
    display:block;
    margin:0 0 8px;
    font-size:10px;
    line-height:1.3;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
}
body.woocommerce-checkout .vv-payment-prelaunch__title {
    display:block;
    margin:0 0 9px;
    font-size:18px;
    line-height:1.25;
    font-weight:700;
    letter-spacing:.01em;
}
body.woocommerce-checkout .vv-payment-prelaunch p {
    margin:0;
    font-size:14px;
    line-height:1.65;
}
@media(max-width:620px){
    body.woocommerce-checkout .vv-payment-prelaunch {
        padding:20px 18px;
    }
}


/* =========================================================
   V6.17.1 — PRE-LAUNCH PAYMENT MESSAGE REFINEMENT
   Desktop / tablet / mobile
   ========================================================= */

/* Remove WooCommerce's surrounding alert treatment and icon */
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-notice--info,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-info,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-error,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-notice{
    position:static !important;
    display:block !important;
    width:100% !important;
    margin:0 0 22px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:inherit !important;
    box-shadow:none !important;
}

body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-notice--info::before,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-error::before,
body.woocommerce-checkout .woocommerce-checkout-payment .woocommerce-notice::before{
    display:none !important;
    content:none !important;
}

/* Let the VOREVIA message become the only visible card */
body.woocommerce-checkout .vv-payment-prelaunch{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:24px !important;
    border:1px solid rgba(7,28,40,.18) !important;
    background:#f7f8f7 !important;
    color:#071c28 !important;
    box-shadow:none !important;
}

body.woocommerce-checkout .vv-payment-prelaunch__eyebrow{
    margin-bottom:8px !important;
}

body.woocommerce-checkout .vv-payment-prelaunch__title{
    margin-bottom:10px !important;
}

/* Avoid accidental inherited inner borders */
body.woocommerce-checkout .vv-payment-prelaunch *{
    box-shadow:none !important;
}

@media(max-width:900px){
    body.woocommerce-checkout .vv-payment-prelaunch{
        padding:22px !important;
    }
}

@media(max-width:620px){
    body.woocommerce-checkout .vv-payment-prelaunch{
        padding:18px !important;
    }
    body.woocommerce-checkout .vv-payment-prelaunch__title{
        font-size:17px !important;
        line-height:1.3 !important;
    }
    body.woocommerce-checkout .vv-payment-prelaunch p{
        font-size:13px !important;
        line-height:1.58 !important;
    }
}


/* =========================================================
   V6.17.2 — PREMIUM EMPTY BASKET
   ========================================================= */
body.woocommerce-cart .vv-empty-basket{
  margin:0 0 26px;
  background:#f5f6f6;
  border:1px solid #e0e4e5;
  padding:46px 32px 40px;
  text-align:center;
}

body.woocommerce-cart .vv-empty-basket__icon{
  width:74px;
  height:74px;
  margin:0 auto 18px;
  color:#071c28;
}

body.woocommerce-cart .vv-empty-basket__icon svg{
  width:100%;
  height:100%;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

body.woocommerce-cart .vv-empty-basket__title{
  margin:0 0 10px;
  color:#071c28;
  font-size:22px;
  line-height:1.25;
  font-weight:700;
  letter-spacing:-.01em;
}

body.woocommerce-cart .vv-empty-basket__text{
  margin:0 auto 22px;
  max-width:620px;
  color:#5b676c;
  font-size:14px;
  line-height:1.6;
}

body.woocommerce-cart .vv-empty-basket__button{
  display:inline-block;
  min-width:220px;
  padding:15px 22px;
  background:#071c28;
  border:1px solid #071c28;
  color:#fff !important;
  text-decoration:none;
  text-transform:uppercase;
  font-size:11px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.08em;
}

body.woocommerce-cart .vv-empty-basket__button:hover{
  background:#102b39;
  color:#fff !important;
}

body.woocommerce-cart .vv-empty-basket-note{
  margin:0;
  padding:20px 2px 0;
  border-top:1px solid #dedede;
  color:#667176;
  font-size:14px;
  line-height:1.55;
}

/* suppress WooCommerce's default empty-cart notice/icon treatment */
body.woocommerce-cart .cart-empty.woocommerce-info,
body.woocommerce-cart .woocommerce-info.cart-empty{
  display:none !important;
}

@media(max-width:900px){
  body.woocommerce-cart .vv-empty-basket{
    padding:38px 26px 34px;
  }

  body.woocommerce-cart .vv-empty-basket__icon{
    width:68px;
    height:68px;
  }

  body.woocommerce-cart .vv-empty-basket__title{
    font-size:20px;
  }
}

@media(max-width:620px){
  body.woocommerce-cart .vv-empty-basket{
    padding:28px 18px 26px;
    margin-bottom:20px;
  }

  body.woocommerce-cart .vv-empty-basket__icon{
    width:58px;
    height:58px;
    margin-bottom:15px;
  }

  body.woocommerce-cart .vv-empty-basket__title{
    font-size:18px;
    margin-bottom:8px;
  }

  body.woocommerce-cart .vv-empty-basket__text{
    font-size:13px;
    line-height:1.55;
    margin-bottom:18px;
  }

  body.woocommerce-cart .vv-empty-basket__button{
    display:block;
    width:100%;
    min-width:0;
    padding:14px 16px;
  }

  body.woocommerce-cart .vv-empty-basket-note{
    font-size:13px;
    line-height:1.5;
    padding-top:16px;
  }
}


/* =========================================================
   V6.17.3 — PREMIUM EMPTY BASKET JOURNEY STRIP
   ========================================================= */

/* Remove the old plain basket helper sentence entirely */
body.woocommerce-cart .vv-empty-basket-note{
  display:none !important;
}

/* Premium three-step journey */
body.woocommerce-cart .vv-empty-basket-journey{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:0;
  padding:6px 0 0;
  border-top:1px solid #dedede;
}

body.woocommerce-cart .vv-empty-basket-step{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:16px;
  align-items:center;
  min-height:118px;
  padding:22px 28px;
  border-right:1px solid #e1e4e5;
}

body.woocommerce-cart .vv-empty-basket-step:last-child{
  border-right:0;
}

body.woocommerce-cart .vv-empty-basket-step__icon{
  width:46px;
  height:46px;
  color:#071c28;
  display:flex;
  align-items:center;
  justify-content:center;
}

body.woocommerce-cart .vv-empty-basket-step__icon svg{
  width:34px;
  height:34px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

body.woocommerce-cart .vv-empty-basket-step__title{
  display:block;
  margin:0 0 4px;
  color:#071c28;
  font-size:12px;
  line-height:1.3;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
}

body.woocommerce-cart .vv-empty-basket-step__text{
  margin:0;
  color:#667176;
  font-size:13px;
  line-height:1.5;
}

@media(max-width:900px){
  body.woocommerce-cart .vv-empty-basket-journey{
    grid-template-columns:1fr;
    padding-top:0;
  }

  body.woocommerce-cart .vv-empty-basket-step{
    min-height:auto;
    padding:18px 4px;
    border-right:0;
    border-bottom:1px solid #e1e4e5;
    grid-template-columns:50px 1fr;
    gap:14px;
  }

  body.woocommerce-cart .vv-empty-basket-step:last-child{
    border-bottom:0;
  }

  body.woocommerce-cart .vv-empty-basket-step__icon{
    width:44px;
    height:44px;
  }
}

@media(max-width:620px){
  body.woocommerce-cart .vv-empty-basket-journey{
    margin-top:0;
  }

  body.woocommerce-cart .vv-empty-basket-step{
    padding:15px 0;
    grid-template-columns:46px 1fr;
    gap:12px;
  }

  body.woocommerce-cart .vv-empty-basket-step__icon{
    width:40px;
    height:40px;
  }

  body.woocommerce-cart .vv-empty-basket-step__icon svg{
    width:30px;
    height:30px;
  }

  body.woocommerce-cart .vv-empty-basket-step__title{
    font-size:11px;
  }

  body.woocommerce-cart .vv-empty-basket-step__text{
    font-size:12px;
    line-height:1.45;
  }
}


/* =========================================================
   V6.17.4 — REMOVE LEGACY EMPTY-BASKET HELPER LINE
   ========================================================= */
body.vorevia-empty-cart.woocommerce-cart .woocommerce::after{
  display:none !important;
  content:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}


/* =========================================================
   V6.17.5 — CART STATE + MOBILE BASKET REFINEMENT
   ========================================================= */

/* Add-to-cart success notices are intentionally suppressed. */
body.single-product .woocommerce-message,
body.woocommerce-cart .woocommerce-message{
  display:none !important;
}

/* Mobile: remove the generic WooCommerce outer top padding and make the
   active basket feel like a deliberate VOREVIA product card. */
@media(max-width:620px){
  body.woocommerce-cart main.vv-wrap{
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  body.woocommerce-cart .woocommerce{
    width:calc(100% - 30px) !important;
    padding:18px 0 30px !important;
  }

  body.woocommerce-cart:not(.vorevia-empty-cart) .woocommerce::before{
    margin:0 0 18px !important;
  }

  body.woocommerce-cart:not(.vorevia-empty-cart) .woocommerce::after{
    display:none !important;
    content:none !important;
  }

  body.woocommerce-cart form.woocommerce-cart-form{
    background:transparent !important;
  }

  body.woocommerce-cart table.shop_table_responsive{
    border:0 !important;
    background:transparent !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item{
    position:relative;
    display:grid !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    gap:0 16px !important;
    margin:0 0 16px !important;
    padding:18px !important;
    background:#f7f8f8 !important;
    border:1px solid #e0e4e5 !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item td{
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item td::before{
    display:none !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-thumbnail{
    display:block !important;
    grid-column:1 !important;
    grid-row:1 / span 6 !important;
    width:88px !important;
    padding:0 !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-thumbnail img{
    width:82px !important;
    max-width:82px !important;
    min-height:82px !important;
    margin:0 !important;
    padding:5px !important;
    background:#fff !important;
    border:1px solid #dfe3e5 !important;
    object-fit:contain !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-remove{
    position:absolute !important;
    top:12px !important;
    right:12px !important;
    width:auto !important;
    padding:0 !important;
    z-index:2;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-remove a.remove{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:30px !important;
    height:30px !important;
    line-height:1 !important;
    border:1px solid #cfd5d7 !important;
    background:#fff !important;
    color:#071c28 !important;
    font-size:18px !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-name{
    grid-column:2 !important;
    grid-row:1 !important;
    padding:3px 38px 12px 0 !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-name a{
    font-size:18px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
    color:#071c28 !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-price,
  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-quantity,
  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-subtotal{
    grid-column:2 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    padding:9px 0 !important;
    border-top:1px solid #e1e4e5 !important;
    color:#071c28 !important;
    font-size:13px !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-price{
    grid-row:2 !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-quantity{
    grid-row:3 !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-subtotal{
    grid-row:4 !important;
    font-size:15px !important;
    font-weight:700 !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-price::before,
  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-quantity::before,
  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-subtotal::before{
    display:block !important;
    color:#69757a !important;
    font-size:10px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    letter-spacing:.10em !important;
    text-transform:uppercase !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-price::before{
    content:"Price" !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-quantity::before{
    content:"Quantity" !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .product-subtotal::before{
    content:"Subtotal" !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .quantity{
    border:1px solid #cfd5d7 !important;
    background:#fff !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr.cart_item .quantity .qty{
    width:68px !important;
    min-height:38px !important;
    padding:6px !important;
  }

  /* Coupon / update controls */
  body.woocommerce-cart table.shop_table_responsive tr:not(.cart_item){
    display:block !important;
    padding:0 !important;
    border:0 !important;
  }

  body.woocommerce-cart table.shop_table_responsive td.actions{
    display:block !important;
    padding:4px 0 0 !important;
    border:0 !important;
  }

  body.woocommerce-cart td.actions .coupon{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    width:100% !important;
  }

  body.woocommerce-cart td.actions .coupon .input-text,
  body.woocommerce-cart td.actions .coupon .button{
    width:100% !important;
    margin:0 !important;
  }

  body.woocommerce-cart td.actions > .button{
    width:100% !important;
    margin:8px 0 0 !important;
  }

  body.woocommerce-cart .cart-collaterals{
    margin-top:22px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals{
    padding:22px 18px !important;
  }
}

/* V6.17.9: mobile product-object recovery; preserves V6.17.8 lean loading and approved visuals. */

/* =========================================================
   V6.17.21 — DIRECT ADD-TO-BASKET + CONTINUE SHOPPING
   Homepage featured products, Shop All Products, and active basket.
   Desktop / tablet / mobile.
   ========================================================= */

/* Keep a dedicated direct-add basket control visible beside View Product
   at every breakpoint, including tablet and phone. */
.vv-product-actions,
.vv-catalogue-actions{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 46px !important;
  gap:7px !important;
  align-items:stretch !important;
}
.vv-product-actions .vv-cart,
.vv-catalogue-actions .vv-catalogue-cart{
  display:flex !important;
  width:46px !important;
  min-width:46px !important;
  min-height:38px !important;
  padding:0 !important;
  align-items:center !important;
  justify-content:center !important;
  background:#081015 !important;
  color:#fff !important;
  border:1px solid #081015 !important;
  text-decoration:none !important;
}

/* Active cart: obvious route back to catalogue. */
body.woocommerce-cart .vv-cart-continue-shopping{
  width:100%;
  margin:16px 0 4px;
}
body.woocommerce-cart .vv-cart-continue-shopping a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 22px;
  border:1px solid #071c28;
  background:#fff;
  color:#071c28 !important;
  font-size:11px;
  line-height:1;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none !important;
}
body.woocommerce-cart .vv-cart-continue-shopping a:hover{
  background:#071c28;
  color:#fff !important;
}

@media(max-width:900px){
  .vv-product-actions,
  .vv-catalogue-actions{
    grid-template-columns:minmax(0,1fr) 44px !important;
  }
  .vv-product-actions .vv-cart,
  .vv-catalogue-actions .vv-catalogue-cart{
    width:44px !important;
    min-width:44px !important;
  }
  body.woocommerce-cart .vv-cart-continue-shopping a{
    min-height:44px;
  }
}

@media(max-width:620px){
  .vv-product-actions,
  .vv-catalogue-actions{
    grid-template-columns:minmax(0,1fr) 44px !important;
    gap:7px !important;
  }
  .vv-product-actions .vv-cart,
  .vv-catalogue-actions .vv-catalogue-cart{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
  }
  body.woocommerce-cart .vv-cart-continue-shopping{
    margin:12px 0 6px;
  }
  body.woocommerce-cart .vv-cart-continue-shopping a{
    width:100%;
    min-height:48px;
    padding:0 16px;
  }
}


/* =========================================================
   V6.17.22 — COMPACT PRODUCT ACTIONS + PROMINENT CONTINUE SHOPPING
   Requested refinement for homepage, Shop and Cart.
   Desktop / tablet / mobile. No other layout changes.
   ========================================================= */

/* Keep View Product and direct-add basket control on one line. */
.vv-product-actions,
.vv-catalogue-actions{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 48px !important;
  gap:8px !important;
  align-items:stretch !important;
  width:100% !important;
}
.vv-product-actions > a:first-child,
.vv-catalogue-actions > a:first-child{
  width:100% !important;
  min-width:0 !important;
}
.vv-product-actions .vv-cart,
.vv-catalogue-actions .vv-catalogue-cart{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  position:static !important;
  width:48px !important;
  min-width:48px !important;
  max-width:48px !important;
  margin:0 !important;
  padding:0 !important;
  align-items:center !important;
  justify-content:center !important;
  background:#071c28 !important;
  color:#fff !important;
  border:1px solid #071c28 !important;
}

/* Make Continue Shopping impossible to miss. */
body.woocommerce-cart .vv-cart-continue-shopping{
  display:block !important;
  width:100% !important;
  margin:18px 0 12px !important;
}
body.woocommerce-cart .vv-cart-continue-shopping a{
  display:flex !important;
  width:min(320px,100%) !important;
  min-height:50px !important;
  padding:0 22px !important;
  align-items:center !important;
  justify-content:center !important;
  background:#071c28 !important;
  color:#fff !important;
  border:2px solid #071c28 !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  box-shadow:0 2px 0 rgba(0,0,0,.08) !important;
}
body.woocommerce-cart .vv-cart-continue-shopping a:hover,
body.woocommerce-cart .vv-cart-continue-shopping a:focus{
  background:#fff !important;
  color:#071c28 !important;
}

@media(max-width:900px){
  .vv-product-actions,
  .vv-catalogue-actions{
    grid-template-columns:minmax(0,1fr) 46px !important;
    gap:7px !important;
  }
  .vv-product-actions .vv-cart,
  .vv-catalogue-actions .vv-catalogue-cart{
    width:46px !important;
    min-width:46px !important;
    max-width:46px !important;
  }
}

@media(max-width:620px){
  .vv-product-actions,
  .vv-catalogue-actions{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 42px !important;
    gap:6px !important;
    align-items:stretch !important;
  }
  .vv-product-actions > a:first-child,
  .vv-catalogue-actions > a:first-child{
    min-height:36px !important;
    padding-left:6px !important;
    padding-right:6px !important;
    font-size:8px !important;
  }
  .vv-product-actions .vv-cart,
  .vv-catalogue-actions .vv-catalogue-cart{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    width:42px !important;
    min-width:42px !important;
    max-width:42px !important;
    min-height:36px !important;
    font-size:14px !important;
  }
  body.woocommerce-cart .vv-cart-continue-shopping{
    margin:14px 0 10px !important;
  }
  body.woocommerce-cart .vv-cart-continue-shopping a{
    width:100% !important;
    min-height:52px !important;
    font-size:11px !important;
  }
}

/* =========================================================
   V6.17.23 — CHECKOUT / SHOP PARITY / SHARP PRODUCT IMAGES
   Requested refinements only; desktop, tablet and mobile.
   ========================================================= */

/* Checkout: make Return to Basket a proper action button rather than a text link. */
body.woocommerce-checkout .vv-checkout-return{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:46px !important;
  padding:0 22px !important;
  margin:0 0 20px !important;
  background:#071c28 !important;
  color:#fff !important;
  border:2px solid #071c28 !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
}
body.woocommerce-checkout .vv-checkout-return:hover,
body.woocommerce-checkout .vv-checkout-return:focus{
  background:#fff !important;
  color:#071c28 !important;
}

/* Shop All Products: mirror Homepage Featured Product proportions and hierarchy. */
.vv-catalogue-grid{
  grid-template-columns:repeat(4,1fr) !important;
  border-top:0 !important;
  border-left:0 !important;
}
.vv-catalogue-card.vv-product{
  min-height:332px !important;
  padding:0 26px 12px !important;
  grid-template-rows:205px auto !important;
  border-top:0 !important;
  border-left:0 !important;
  border-bottom:0 !important;
  border-right:1px solid #e2e4e5 !important;
}
.vv-catalogue-card.vv-product:nth-child(4n){border-right:0 !important;}
.vv-catalogue-card .vv-catalogue-image{
  height:205px !important;
}
.vv-catalogue-card .vv-catalogue-image img{
  max-height:205px !important;
  max-width:100% !important;
  width:auto !important;
  object-fit:contain !important;
}
.vv-catalogue-card .vv-catalogue-meta{
  font-size:10px !important;
  letter-spacing:.04em !important;
  margin-bottom:3px !important;
  min-height:0 !important;
}
.vv-catalogue-card h2{
  min-height:0 !important;
  margin:0 0 1px !important;
  font-size:20px !important;
  line-height:1.15 !important;
  font-weight:500 !important;
}
.vv-catalogue-card h2 a{font:inherit !important;color:inherit !important;}
.vv-catalogue-card .vv-catalogue-price{
  font-size:18px !important;
  font-weight:700 !important;
  margin-bottom:1px !important;
}
.vv-catalogue-card .vv-catalogue-stock{
  font-size:12px !important;
  color:#202427 !important;
  margin:0 0 7px !important;
}
.vv-catalogue-card .vv-catalogue-actions{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 48px !important;
  gap:8px !important;
}

/* Desktop cart: Continue Shopping sits directly beside Update Cart. */
@media(min-width:901px){
  body.woocommerce-cart .woocommerce-cart-form td.actions .vv-cart-continue-shopping{
    float:right !important;
    display:inline-flex !important;
    width:auto !important;
    margin:0 10px 0 0 !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions .vv-cart-continue-shopping a{
    width:auto !important;
    min-width:190px !important;
    min-height:46px !important;
    padding:0 18px !important;
  }
}

/* Tablet: same two-column visual language as Featured Products. */
@media(max-width:1100px) and (min-width:621px){
  .vv-catalogue-grid{grid-template-columns:repeat(2,1fr) !important;}
  .vv-catalogue-card.vv-product{
    border-bottom:1px solid #e2e4e5 !important;
    border-right:1px solid #e2e4e5 !important;
  }
  .vv-catalogue-card.vv-product:nth-child(2n){border-right:0 !important;}
  .vv-catalogue-card .vv-catalogue-actions{
    grid-template-columns:minmax(0,1fr) 46px !important;
    gap:7px !important;
  }
}

/* Mobile: preserve the approved compact side-by-side actions. */
@media(max-width:620px){
  body.woocommerce-checkout .vv-checkout-return{
    display:flex !important;
    width:100% !important;
    min-height:50px !important;
    margin:0 0 18px !important;
  }
  .vv-catalogue-grid{grid-template-columns:repeat(2,1fr) !important;}
  .vv-catalogue-card.vv-product{
    min-height:0 !important;
    padding:0 14px 12px !important;
    grid-template-rows:205px auto !important;
    border-right:1px solid #e2e4e5 !important;
    border-bottom:1px solid #e2e4e5 !important;
  }
  .vv-catalogue-card.vv-product:nth-child(2n){border-right:0 !important;}
  .vv-catalogue-card .vv-catalogue-actions{
    grid-template-columns:minmax(0,1fr) 42px !important;
    gap:6px !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions .vv-cart-continue-shopping{
    display:block !important;
    float:none !important;
    clear:both !important;
    width:100% !important;
    margin:12px 0 0 !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions .vv-cart-continue-shopping a{
    width:100% !important;
  }
}

/* Single-product desktop: use the 700px mapped assets cleanly without browser blur. */
@media(min-width:901px){
  .vv-product-page .vv-product-visual img,
  body.single-product .vv-product-visual img,
  .single-product div.product div.images img{
    image-rendering:auto !important;
    width:auto !important;
    max-width:100% !important;
    height:auto !important;
    max-height:560px !important;
    object-fit:contain !important;
    transform:none !important;
    filter:none !important;
  }
}


/* =========================================================
   V6.17.24 — DESKTOP SHOP CONSISTENCY + CART ACTION ALIGNMENT
   Corrects only the issues reported against V6.17.23.
   ========================================================= */

/* Desktop/tablet: prevent the short mobile shop copy appearing beside the
   full desktop sentence. mobile.css deliberately reverses this on phones. */
.vv-shop-copy-mobile{display:none !important;}
.vv-shop-copy-desktop{display:inline !important;}

/* Desktop shop: every product uses the same fixed image canvas. The archive
   template now supplies the matched 700x700 catalogue artwork for all SKUs,
   eliminating the mixed 210px/700px source sizing that made vials jump in size. */
@media(min-width:901px){
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-image{
    width:100% !important;
    height:205px !important;
    min-height:205px !important;
    max-height:205px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
  }
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-image picture{
    width:190px !important;
    height:190px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-image img,
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-image picture img{
    width:190px !important;
    height:190px !important;
    min-width:190px !important;
    max-width:190px !important;
    min-height:190px !important;
    max-height:190px !important;
    object-fit:contain !important;
    object-position:center !important;
  }

  /* Give long titles room to wrap naturally without colliding with price/stock. */
  body.woocommerce-shop .vv-catalogue-info h2,
  body.woocommerce-shop .vv-catalogue-info h3{
    height:auto !important;
    min-height:46px !important;
    max-height:none !important;
    line-height:1.15 !important;
    overflow:visible !important;
  }

  /* Make the two active-cart actions equal height, visibly separate, and make
     their combined row line up with the left/right edges of the Cart Totals box. */
  body.woocommerce-cart .woocommerce-cart-form td.actions{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:18px !important;
    padding-left:50% !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions .coupon{
    display:none !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions > button[name="update_cart"],
  body.woocommerce-cart .woocommerce-cart-form td.actions > .button[name="update_cart"]{
    float:none !important;
    width:150px !important;
    min-width:150px !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:0 16px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions .vv-cart-continue-shopping{
    float:none !important;
    width:auto !important;
    margin:0 !important;
    display:inline-flex !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions .vv-cart-continue-shopping a{
    width:250px !important;
    min-width:250px !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:0 18px !important;
  }
}

/* =========================================================
   V6.17.25 — CART ALIGNMENT + MOBILE ACTION SEPARATION
   Final overrides for the reported V6.17.24 regressions.
   ========================================================= */
@media(min-width:901px){
  /* Cart totals is a 440px right-aligned panel. Pin the two cart actions to
     that same 440px right edge so Update Cart begins exactly at its left edge. */
  body.woocommerce-cart .woocommerce-cart-form td.actions{
    position:relative !important;
    display:table-cell !important;
    height:76px !important;
    min-height:76px !important;
    padding:12px 0 !important;
    text-align:right !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions > button[name="update_cart"],
  body.woocommerce-cart .woocommerce-cart-form td.actions > .button[name="update_cart"]{
    position:absolute !important;
    top:12px !important;
    right:290px !important;
    width:150px !important;
    min-width:150px !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions .vv-cart-continue-shopping{
    position:absolute !important;
    top:12px !important;
    right:0 !important;
    display:block !important;
    width:272px !important;
    margin:0 !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.actions .vv-cart-continue-shopping a{
    width:272px !important;
    min-width:272px !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
  }
}

/* V6.17.27 — Desktop usability / trust refinement */
.vv-account-link{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;font-size:20px;line-height:1;transition:opacity .2s ease}
.vv-account-link:hover,.vv-account-link:focus-visible{opacity:.6}

.vv-error-page,.vv-search-page{background:#fff;color:#111315}
.vv-error-inner{padding:110px 0 120px;max-width:920px}
.vv-error-kicker,.vv-search-kicker{font-size:11px;letter-spacing:.22em;font-weight:700;color:#667078;margin-bottom:14px}
.vv-error-page h1,.vv-search-hero h1{margin:0 0 20px;font-size:48px;line-height:1.02;letter-spacing:-.025em;color:#071822}
.vv-error-page p,.vv-search-hero p{max-width:720px;font-size:18px;line-height:1.65;color:#566069;margin:0 0 30px}
.vv-error-actions{display:flex;gap:14px;flex-wrap:wrap}
.vv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;font-size:12px;font-weight:700;letter-spacing:.08em;border:1px solid #071822;transition:.2s ease}
.vv-btn-dark{background:#071822;color:#fff}
.vv-btn-outline{background:#fff;color:#071822}
.vv-btn:hover,.vv-btn:focus-visible{transform:translateY(-1px)}

.vv-search-hero{background:#071014;color:#fff;padding:70px 0 64px;border-top:1px solid #2a3236}
.vv-search-hero h1{color:#fff}
.vv-search-hero p{color:#c7cdd1}
.vv-search-form{display:flex;max-width:780px;margin-top:28px}
.vv-search-form input[type="search"]{flex:1;min-width:0;height:58px;border:1px solid #cfd4d7;background:#fff;color:#111315;padding:0 18px;font-size:16px;border-radius:0}
.vv-search-form button{height:58px;border:1px solid #fff;background:#fff;color:#071822;padding:0 28px;font-weight:700;letter-spacing:.08em;cursor:pointer}
.vv-search-results{padding:58px 0 90px;min-height:360px}
.vv-search-summary{font-size:14px;color:#657078;margin:0 0 28px}
.vv-search-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.vv-search-card{border:1px solid #e0e3e5;padding:24px;background:#fff}
.vv-search-card-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;margin-bottom:20px}
.vv-search-card-image img{width:100%;height:100%;object-fit:contain}
.vv-search-card h2{font-size:19px;line-height:1.3;margin:0 0 12px;font-weight:600}
.vv-search-price{font-size:24px;font-weight:700;margin-bottom:18px;color:#071822}
.vv-search-card .vv-btn{width:100%}
.vv-search-empty{padding:34px 0}
.vv-search-empty h2{font-size:28px;margin:0 0 10px;color:#071822}
.vv-search-empty p{color:#657078;margin:0 0 24px}

@media (max-width:1024px){
  .vv-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vv-error-inner{padding:70px 0 80px}
  .vv-error-page h1,.vv-search-hero h1{font-size:38px}
}
@media (max-width:767px){
  .vv-error-inner{padding:52px 0 64px}
  .vv-error-page h1,.vv-search-hero h1{font-size:29px}
  .vv-error-page p,.vv-search-hero p{font-size:15px}
  .vv-error-actions{display:grid;grid-template-columns:1fr}
  .vv-btn{width:100%}
  .vv-search-hero{padding:48px 0}
  .vv-search-form{display:grid;grid-template-columns:1fr}
  .vv-search-form input[type="search"],.vv-search-form button{width:100%}
  .vv-search-grid{grid-template-columns:1fr}
}


/* =========================================================
   V6.17.28 — MY ACCOUNT POLISH + PRODUCT BACK BUTTON
   Scoped refinements only; commerce mechanics unchanged.
   ========================================================= */

/* My Account: premium light workspace beneath the standard VOREVIA header. */
body.woocommerce-account main.vv-wrap{
  width:min(1320px,92vw);
  padding:54px 0 72px !important;
  color:#0b1116;
}
body.woocommerce-account main.vv-wrap > h1{
  margin:0 0 30px;
  font-size:42px;
  line-height:1.05;
  letter-spacing:-.025em;
  color:#071822;
}
body.woocommerce-account .woocommerce{
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  gap:34px;
  align-items:start;
  background:#f4f5f6;
  border:1px solid #dfe3e5;
  padding:28px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  float:none;
  width:auto;
  margin:0;
  background:#071822;
  color:#fff;
  border:1px solid #071822;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none;
  margin:0;
  padding:8px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0;
  border-bottom:1px solid rgba(255,255,255,.12);
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:flex;
  align-items:center;
  min-height:48px;
  padding:0 15px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.035em;
  color:#dfe5e8;
  transition:background .18s ease,color .18s ease;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible{
  background:#fff;
  color:#071822;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  float:none;
  width:auto;
  min-width:0;
  margin:0;
  padding:32px;
  background:#fff;
  border:1px solid #dfe3e5;
  color:#20272c;
}
body.woocommerce-account .woocommerce-MyAccount-content > h2,
body.woocommerce-account .woocommerce-MyAccount-content h2{
  margin:0 0 22px;
  font-size:30px;
  line-height:1.15;
  color:#071822;
}
body.woocommerce-account .woocommerce-MyAccount-content h3{
  color:#071822;
  font-size:20px;
}
body.woocommerce-account .woocommerce-MyAccount-content p{
  color:#566069;
  line-height:1.65;
}

/* Orders */
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account table.shop_table{
  width:100%;
  border-collapse:collapse;
  border:1px solid #dfe3e5;
  background:#fff;
  color:#111315;
  border-radius:0;
}
body.woocommerce-account table.shop_table th{
  background:#071822;
  color:#fff;
  padding:14px 16px;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.woocommerce-account table.shop_table td{
  padding:16px;
  border-top:1px solid #e1e4e6;
  color:#20272c;
}
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message{
  margin:0 0 18px !important;
  padding:18px 18px 18px 22px !important;
  border:1px solid #d9dee1 !important;
  border-left:4px solid #071822 !important;
  background:#f6f7f8 !important;
  color:#364047 !important;
}
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-message::before{color:#071822 !important}

/* Addresses */
body.woocommerce-account .u-columns.woocommerce-Addresses{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  margin-top:24px;
}
body.woocommerce-account .woocommerce-Address{
  float:none !important;
  width:auto !important;
  margin:0 !important;
  padding:24px;
  background:#f7f8f8;
  border:1px solid #dfe3e5;
}
body.woocommerce-account .woocommerce-Address-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
body.woocommerce-account .woocommerce-Address-title h2{
  margin:0 !important;
  font-size:22px !important;
}
body.woocommerce-account .woocommerce-Address-title .edit{
  float:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 16px;
  border:1px solid #071822;
  background:#071822;
  color:#fff;
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
body.woocommerce-account address{
  margin-top:18px;
  font-style:normal;
  color:#566069;
  line-height:1.7;
}

/* Account details / address forms */
body.woocommerce-account .woocommerce-EditAccountForm,
body.woocommerce-account .woocommerce-address-fields{
  max-width:none;
}
body.woocommerce-account .woocommerce-form-row,
body.woocommerce-account .form-row{margin:0 0 18px}
body.woocommerce-account .woocommerce-form-row label,
body.woocommerce-account .form-row label{
  display:block;
  margin:0 0 7px;
  color:#273138;
  font-size:12px;
  font-weight:700;
  letter-spacing:.025em;
}
body.woocommerce-account .woocommerce-Input,
body.woocommerce-account input.input-text,
body.woocommerce-account select,
body.woocommerce-account textarea{
  width:100%;
  min-height:48px;
  padding:10px 13px;
  border:1px solid #cfd5d8;
  background:#fff;
  color:#111315;
  border-radius:0;
  box-shadow:none;
  font-size:15px;
}
body.woocommerce-account fieldset{
  margin:26px 0 22px;
  padding:22px;
  border:1px solid #cfd5d8;
  background:#f7f8f8;
}
body.woocommerce-account fieldset legend{
  padding:0 8px;
  color:#071822;
  font-weight:700;
}
body.woocommerce-account button.button,
body.woocommerce-account a.button,
body.woocommerce-account .woocommerce-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 22px;
  border:1px solid #071822 !important;
  border-radius:0 !important;
  background:#071822 !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.07em;
  text-transform:uppercase;
  line-height:1 !important;
  transition:opacity .18s ease,transform .18s ease;
}
body.woocommerce-account button.button:hover,
body.woocommerce-account a.button:hover,
body.woocommerce-account .woocommerce-button:hover{
  opacity:.86;
  transform:translateY(-1px);
}

/* Product page: make Back to Shop an obvious branded action. */
.vv-product-breadcrumb .back{
  min-height:42px;
  padding:0 18px;
  border:1px solid #071822;
  background:#071822;
  color:#fff !important;
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  transition:opacity .18s ease,transform .18s ease;
}
.vv-product-breadcrumb .back:hover,
.vv-product-breadcrumb .back:focus-visible{
  opacity:.86;
  transform:translateY(-1px);
}

@media(max-width:900px){
  body.woocommerce-account main.vv-wrap{width:min(94vw,900px);padding:34px 0 54px !important}
  body.woocommerce-account main.vv-wrap > h1{font-size:34px;margin-bottom:22px}
  body.woocommerce-account .woocommerce{grid-template-columns:1fr;padding:18px;gap:18px}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation li{border:0}
  body.woocommerce-account .woocommerce-MyAccount-navigation a{justify-content:center;text-align:center;padding:0 10px;font-size:11px}
  body.woocommerce-account .woocommerce-MyAccount-content{padding:24px}
}

@media(max-width:620px){
  body.woocommerce-account main.vv-wrap{width:92vw;padding:24px 0 42px !important}
  body.woocommerce-account main.vv-wrap > h1{font-size:28px}
  body.woocommerce-account .woocommerce{padding:12px}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.woocommerce-account .woocommerce-MyAccount-navigation a{min-height:42px;font-size:10px}
  body.woocommerce-account .woocommerce-MyAccount-content{padding:18px}
  body.woocommerce-account .woocommerce-MyAccount-content h2{font-size:24px}
  body.woocommerce-account .u-columns.woocommerce-Addresses{grid-template-columns:1fr}
  body.woocommerce-account table.shop_table{display:block;overflow-x:auto;white-space:nowrap}
  .vv-product-page .vv-product-breadcrumb .vv-wrap{
    justify-content:space-between !important;
  }
  .vv-product-page .vv-product-breadcrumb .back{
    min-height:32px !important;
    padding:0 10px !important;
    font-size:9px !important;
    letter-spacing:.03em !important;
  }
}


/* =========================================================
   V6.17.30 — MY ACCOUNT LAYOUT REBUILD
   Fixes WooCommerce notice-wrapper grid placement and gives
   Dashboard / Orders / Downloads / Addresses / Account Details
   a consistent VOREVIA workspace on desktop, tablet and mobile.
   ========================================================= */

body.woocommerce-account main.vv-wrap{
  width:min(1280px,92vw);
  padding:50px 0 72px !important;
}
body.woocommerce-account main.vv-wrap > h1{
  margin:0 0 26px !important;
  color:#fff !important;
  font-size:44px !important;
  line-height:1.05;
  letter-spacing:-.025em;
}

/* Force deterministic placement. WooCommerce inserts a notices wrapper
   before the navigation; without explicit grid placement it can push the
   nav/content into the wrong columns. */
body.woocommerce-account .woocommerce{
  display:grid !important;
  grid-template-columns:235px minmax(0,1fr) !important;
  grid-template-areas:
    "notices notices"
    "nav content" !important;
  gap:24px !important;
  align-items:start !important;
  width:100% !important;
  margin:0 !important;
  padding:24px !important;
  background:#f4f5f6 !important;
  border:1px solid #dfe3e5 !important;
}
body.woocommerce-account .woocommerce > .woocommerce-notices-wrapper{
  grid-area:notices !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}
body.woocommerce-account .woocommerce > .woocommerce-notices-wrapper:empty{
  display:none !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  grid-area:nav !important;
  float:none !important;
  width:100% !important;
  margin:0 !important;
  align-self:start !important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  grid-area:content !important;
  float:none !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  padding:34px !important;
  background:#fff !important;
  border:1px solid #dfe3e5 !important;
  color:#20272c !important;
  overflow:visible !important;
}

/* Navigation */
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  display:block !important;
  margin:0 !important;
  padding:8px !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{
  display:block !important;
  width:100% !important;
  margin:0 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  width:100% !important;
  min-height:52px !important;
  padding:0 16px !important;
  justify-content:flex-start !important;
  text-align:left !important;
  font-size:12px !important;
}

/* Dashboard */
body.woocommerce-account .woocommerce-MyAccount-content > p:first-child{
  margin-top:0 !important;
}
body.woocommerce-account .woocommerce-MyAccount-content p{
  max-width:780px;
  font-size:15px;
}
body.woocommerce-account .woocommerce-MyAccount-content p a{
  color:#071822;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Orders + Downloads empty states and account notices */
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  width:100% !important;
  min-height:72px !important;
  margin:0 0 18px !important;
  padding:16px 18px 16px 22px !important;
  border:1px solid #d9dee1 !important;
  border-left:4px solid #071822 !important;
  background:#f7f8f8 !important;
  color:#364047 !important;
  line-height:1.45 !important;
}
body.woocommerce-account .woocommerce-info .button,
body.woocommerce-account .woocommerce-message .button{
  float:none !important;
  flex:0 0 auto !important;
  margin:0 !important;
}

/* Address overview */
body.woocommerce-account .woocommerce-MyAccount-content > p + .u-columns.woocommerce-Addresses,
body.woocommerce-account .u-columns.woocommerce-Addresses{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:22px !important;
  width:100% !important;
  margin:26px 0 0 !important;
}
body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2,
body.woocommerce-account .woocommerce-Address{
  float:none !important;
  width:100% !important;
  min-width:0 !important;
}
body.woocommerce-account .woocommerce-Address{
  min-height:220px;
  padding:26px !important;
  background:#f7f8f8 !important;
  border:1px solid #dfe3e5 !important;
}
body.woocommerce-account .woocommerce-Address-title{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin-bottom:18px !important;
}
body.woocommerce-account .woocommerce-Address-title h2{
  margin:0 !important;
  color:#071822 !important;
  font-size:24px !important;
  line-height:1.1 !important;
}
body.woocommerce-account .woocommerce-Address address,
body.woocommerce-account .woocommerce-Address p{
  max-width:none !important;
  margin:0 !important;
  color:#59636a !important;
  line-height:1.65 !important;
}
body.woocommerce-account .woocommerce-Address-title .edit{
  white-space:nowrap !important;
}

/* Account details and edit-address forms */
body.woocommerce-account .woocommerce-EditAccountForm,
body.woocommerce-account .woocommerce-address-fields,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  width:100% !important;
  max-width:none !important;
}
body.woocommerce-account .woocommerce-EditAccountForm{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:0 22px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row-first,
body.woocommerce-account .woocommerce-EditAccountForm .form-row-last{
  width:100% !important;
  float:none !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row-wide,
body.woocommerce-account .woocommerce-EditAccountForm fieldset,
body.woocommerce-account .woocommerce-EditAccountForm > p:last-child{
  grid-column:1 / -1 !important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset{
  width:100% !important;
  margin:14px 0 22px !important;
  padding:24px !important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:0 22px !important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-wide{
  grid-column:1 / -1 !important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-first,
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-last{
  width:100% !important;
  float:none !important;
}
body.woocommerce-account .woocommerce-form-row,
body.woocommerce-account .form-row{
  width:100% !important;
  min-width:0 !important;
}
body.woocommerce-account .woocommerce-Input,
body.woocommerce-account input.input-text,
body.woocommerce-account select,
body.woocommerce-account textarea{
  width:100% !important;
  max-width:none !important;
}

/* Logged-out My Account login/register */
body.woocommerce-account:not(.logged-in) .woocommerce{
  display:block !important;
  max-width:900px !important;
  margin:0 auto !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce h2{
  color:#071822 !important;
  font-size:30px !important;
}
body.woocommerce-account:not(.logged-in) form.woocommerce-form-login,
body.woocommerce-account:not(.logged-in) form.woocommerce-form-register{
  margin:0 !important;
  padding:28px !important;
  border:1px solid #dfe3e5 !important;
  background:#fff !important;
  color:#20272c !important;
  border-radius:0 !important;
}

@media(max-width:900px){
  body.woocommerce-account main.vv-wrap{
    width:min(94vw,900px) !important;
    padding:34px 0 54px !important;
  }
  body.woocommerce-account main.vv-wrap > h1{
    font-size:34px !important;
    margin-bottom:20px !important;
  }
  body.woocommerce-account .woocommerce{
    grid-template-columns:1fr !important;
    grid-template-areas:"notices" "nav" "content" !important;
    padding:16px !important;
    gap:16px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:1px !important;
    padding:6px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation a{
    justify-content:center !important;
    text-align:center !important;
    min-height:46px !important;
    padding:0 8px !important;
    font-size:10px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:24px !important;
  }
}

@media(max-width:620px){
  body.woocommerce-account main.vv-wrap{
    width:92vw !important;
    padding:26px 0 44px !important;
  }
  body.woocommerce-account main.vv-wrap > h1{
    font-size:28px !important;
  }
  body.woocommerce-account .woocommerce{
    padding:10px !important;
    gap:12px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:44px !important;
    font-size:10px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:18px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content h2{
    font-size:24px !important;
  }
  body.woocommerce-account .woocommerce-info,
  body.woocommerce-account .woocommerce-message,
  body.woocommerce-account .woocommerce-error{
    display:block !important;
    min-height:0 !important;
    padding:16px !important;
  }
  body.woocommerce-account .woocommerce-info .button,
  body.woocommerce-account .woocommerce-message .button{
    display:flex !important;
    width:100% !important;
    margin:14px 0 0 !important;
  }
  body.woocommerce-account .u-columns.woocommerce-Addresses{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  body.woocommerce-account .woocommerce-Address{
    min-height:0 !important;
    padding:20px !important;
  }
  body.woocommerce-account .woocommerce-Address-title{
    align-items:flex-start !important;
    flex-direction:column !important;
  }
  body.woocommerce-account .woocommerce-Address-title .edit{
    width:100% !important;
  }
  body.woocommerce-account .woocommerce-EditAccountForm,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr !important;
    gap:0 !important;
  }
  body.woocommerce-account .woocommerce-EditAccountForm .form-row-first,
  body.woocommerce-account .woocommerce-EditAccountForm .form-row-last,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-first,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-last{
    grid-column:1 / -1 !important;
  }
  body.woocommerce-account fieldset{
    padding:18px !important;
  }
}

/* =========================================================
   V6.17.32 — MY ACCOUNT VISUAL REFINEMENT
   Premium account workspace; layout/presentation only.
   ========================================================= */

/* Compact page intro and balanced workspace */
body.woocommerce-account main.vv-wrap{
  width:min(1220px,92vw) !important;
  padding:36px 0 58px !important;
}
body.woocommerce-account main.vv-wrap > h1{
  margin:0 0 22px !important;
  font-size:38px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:-.02em !important;
}
body.woocommerce-account .woocommerce{
  grid-template-columns:220px minmax(0,1fr) !important;
  gap:22px !important;
  padding:22px !important;
  background:#f3f5f6 !important;
  border:0 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  background:#071822 !important;
  border:1px solid #182c37 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  padding:0 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{
  border-bottom:1px solid rgba(255,255,255,.10) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{
  border-bottom:0 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  min-height:50px !important;
  padding:0 18px !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.035em !important;
  color:#fff !important;
  background:#071822 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible{
  color:#071822 !important;
  background:#fff !important;
}

/* Main account card */
body.woocommerce-account .woocommerce-MyAccount-content{
  min-height:330px !important;
  padding:30px 32px !important;
  background:#fff !important;
  border:1px solid #dce1e4 !important;
  box-shadow:0 8px 24px rgba(7,24,34,.045) !important;
}
body.woocommerce-account .woocommerce-MyAccount-content > *:first-child{
  margin-top:0 !important;
}
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3{
  color:#071822 !important;
}
body.woocommerce-account .woocommerce-MyAccount-content h2{
  font-size:27px !important;
  margin:0 0 18px !important;
}
body.woocommerce-account .woocommerce-MyAccount-content h3{
  font-size:20px !important;
}
body.woocommerce-account .woocommerce-MyAccount-content p{
  max-width:820px !important;
  color:#515d64 !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

/* Orders / downloads / account notices: calm, balanced empty states */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:22px !important;
  min-height:78px !important;
  margin:0 0 16px !important;
  padding:18px 20px !important;
  border:1px solid #dce1e4 !important;
  border-left:4px solid #071822 !important;
  background:#f8f9f9 !important;
  color:#4c585f !important;
  font-size:15px !important;
}
/* WooCommerce frequently outputs the button before the message text. */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button{
  grid-column:2 !important;
  grid-row:1 !important;
  order:2 !important;
  min-width:150px !important;
  min-height:44px !important;
  padding:0 18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#071822 !important;
  border:1px solid #071822 !important;
  color:#fff !important;
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button:hover,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button:hover{
  background:#fff !important;
  color:#071822 !important;
}

/* Address page: matching cards, no staggered positioning */
body.woocommerce-account .woocommerce-MyAccount-content > p + .u-columns.woocommerce-Addresses,
body.woocommerce-account .u-columns.woocommerce-Addresses{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
  margin:22px 0 0 !important;
}
body.woocommerce-account .woocommerce-Address{
  display:flex !important;
  flex-direction:column !important;
  min-height:210px !important;
  padding:24px !important;
  margin:0 !important;
  background:#f8f9f9 !important;
  border:1px solid #dce1e4 !important;
}
body.woocommerce-account .woocommerce-Address-title{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:16px !important;
  margin:0 0 20px !important;
}
body.woocommerce-account .woocommerce-Address-title h2{
  margin:0 !important;
  font-size:22px !important;
}
body.woocommerce-account .woocommerce-Address-title .edit{
  min-height:40px !important;
  padding:0 15px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#071822 !important;
  border:1px solid #071822 !important;
  color:#fff !important;
  font-size:9px !important;
  font-weight:800 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
}
body.woocommerce-account .woocommerce-Address-title .edit:hover{
  background:#fff !important;
  color:#071822 !important;
}
body.woocommerce-account .woocommerce-Address address,
body.woocommerce-account .woocommerce-Address p{
  margin:0 !important;
  color:#5b656b !important;
  line-height:1.6 !important;
}

/* Account details: contained form rather than full-width fields */
body.woocommerce-account .woocommerce-EditAccountForm,
body.woocommerce-account .woocommerce-address-fields{
  max-width:860px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm{
  gap:0 18px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row,
body.woocommerce-account .woocommerce-address-fields .form-row{
  margin:0 0 18px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm label,
body.woocommerce-account .woocommerce-address-fields label{
  display:block !important;
  margin:0 0 7px !important;
  color:#263139 !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Input,
body.woocommerce-account .woocommerce-address-fields input.input-text,
body.woocommerce-account .woocommerce-address-fields select,
body.woocommerce-account .woocommerce-address-fields textarea{
  min-height:46px !important;
  padding:10px 12px !important;
  border:1px solid #bfc7cc !important;
  background:#fff !important;
  color:#20272c !important;
  font-size:14px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset{
  margin:6px 0 22px !important;
  padding:22px !important;
  border:1px solid #dce1e4 !important;
  background:#f8f9f9 !important;
}
body.woocommerce-account .woocommerce-EditAccountForm legend{
  padding:0 8px !important;
  color:#071822 !important;
  font-size:15px !important;
  font-weight:800 !important;
}
body.woocommerce-account .woocommerce-EditAccountForm em{
  display:block !important;
  margin-top:5px !important;
  color:#737d83 !important;
  font-size:12px !important;
  line-height:1.45 !important;
}
body.woocommerce-account .woocommerce-EditAccountForm button.button,
body.woocommerce-account .woocommerce-address-fields button.button{
  min-height:46px !important;
  padding:0 24px !important;
  background:#071822 !important;
  border:1px solid #071822 !important;
  color:#fff !important;
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
}
body.woocommerce-account .woocommerce-EditAccountForm button.button:hover,
body.woocommerce-account .woocommerce-address-fields button.button:hover{
  background:#fff !important;
  color:#071822 !important;
}

/* Dashboard welcome copy gets a subtle panel rather than floating in space. */
body.woocommerce-account.woocommerce-account-page .woocommerce-MyAccount-content > p:first-child,
body.woocommerce-account .woocommerce-MyAccount-content > p:first-child:last-child{
  padding:18px 20px !important;
  border-left:4px solid #071822 !important;
  background:#f8f9f9 !important;
}

@media(max-width:900px){
  body.woocommerce-account main.vv-wrap{
    width:min(94vw,900px) !important;
    padding:30px 0 48px !important;
  }
  body.woocommerce-account main.vv-wrap > h1{
    font-size:32px !important;
  }
  body.woocommerce-account .woocommerce{
    padding:14px !important;
    gap:14px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation{
    border:0 !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    padding:0 !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content{
    min-height:0 !important;
    padding:24px !important;
  }
}

@media(max-width:620px){
  body.woocommerce-account main.vv-wrap{
    width:94vw !important;
    padding:24px 0 40px !important;
  }
  body.woocommerce-account main.vv-wrap > h1{
    font-size:27px !important;
    margin-bottom:16px !important;
  }
  body.woocommerce-account .woocommerce{
    padding:8px !important;
    background:#f3f5f6 !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:1px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:44px !important;
    padding:0 8px !important;
    justify-content:center !important;
    text-align:center !important;
    font-size:9px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:18px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:14px !important;
    padding:16px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button{
    width:100% !important;
    min-width:0 !important;
  }
  body.woocommerce-account .u-columns.woocommerce-Addresses{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  body.woocommerce-account .woocommerce-Address{
    min-height:0 !important;
    padding:18px !important;
  }
  body.woocommerce-account .woocommerce-Address-title{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  body.woocommerce-account .woocommerce-Address-title .edit{
    width:100% !important;
  }
  body.woocommerce-account .woocommerce-EditAccountForm,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-account .woocommerce-EditAccountForm fieldset{
    padding:16px !important;
  }
}


/* =========================================================
   V6.17.32 — ACCOUNT FORM + ADDRESS ALIGNMENT REFINEMENT
   Scope: My Account only. Preserve commerce functionality.
   ========================================================= */

/* Keep the account content geometry clean and predictable. */
body.woocommerce-account .woocommerce-MyAccount-content{
  min-width:0 !important;
}

/* ACCOUNT DETAILS — align every field to the same left/right edges. */
body.woocommerce-account .woocommerce-EditAccountForm{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  column-gap:22px !important;
  row-gap:0 !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row{
  width:100% !important;
  max-width:none !important;
  float:none !important;
  clear:none !important;
  margin:0 0 18px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row-first,
body.woocommerce-account .woocommerce-EditAccountForm .form-row-last{
  width:100% !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row-wide,
body.woocommerce-account .woocommerce-EditAccountForm fieldset,
body.woocommerce-account .woocommerce-EditAccountForm > p:last-child{
  grid-column:1 / -1 !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Input,
body.woocommerce-account .woocommerce-EditAccountForm input.input-text,
body.woocommerce-account .woocommerce-EditAccountForm input[type="email"],
body.woocommerce-account .woocommerce-EditAccountForm input[type="password"]{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:0 !important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset{
  width:100% !important;
  max-width:none !important;
  margin:6px 0 22px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset .form-row{
  width:100% !important;
  max-width:none !important;
}
body.woocommerce-account .woocommerce-EditAccountForm > p:last-child{
  margin:0 !important;
}

/* ADDRESSES — force equal-height, top-aligned, equal-width cards. */
body.woocommerce-account .u-columns.woocommerce-Addresses,
body.woocommerce-account .woocommerce-Addresses.col2-set{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:20px !important;
  width:100% !important;
  margin:24px 0 0 !important;
  align-items:stretch !important;
}
body.woocommerce-account .u-columns.woocommerce-Addresses::before,
body.woocommerce-account .u-columns.woocommerce-Addresses::after,
body.woocommerce-account .woocommerce-Addresses.col2-set::before,
body.woocommerce-account .woocommerce-Addresses.col2-set::after{
  display:none !important;
}
body.woocommerce-account .woocommerce-Addresses .woocommerce-Address,
body.woocommerce-account .woocommerce-Addresses .col-1,
body.woocommerce-account .woocommerce-Addresses .col-2{
  float:none !important;
  clear:none !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
body.woocommerce-account .woocommerce-Address{
  display:flex !important;
  flex-direction:column !important;
  min-height:210px !important;
  height:100% !important;
  padding:26px !important;
}
body.woocommerce-account .woocommerce-Address-title{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:18px !important;
  width:100% !important;
  margin:0 0 18px !important;
}
body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3{
  margin:0 !important;
  line-height:1.15 !important;
}
body.woocommerce-account .woocommerce-Address-title .edit{
  position:static !important;
  float:none !important;
  margin:0 !important;
  align-self:start !important;
  white-space:nowrap !important;
}
body.woocommerce-account .woocommerce-Address address,
body.woocommerce-account .woocommerce-Address > p{
  margin:0 !important;
}

/* Address-edit forms also obey common left/right edges. */
body.woocommerce-account .woocommerce-address-fields,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  width:100% !important;
  max-width:none !important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  column-gap:22px !important;
  row-gap:0 !important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row{
  width:100% !important;
  max-width:none !important;
  float:none !important;
  clear:none !important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-wide{
  grid-column:1 / -1 !important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper input,
body.woocommerce-account .woocommerce-address-fields__field-wrapper select,
body.woocommerce-account .woocommerce-address-fields__field-wrapper textarea{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
}

@media(max-width:900px){
  body.woocommerce-account .woocommerce-EditAccountForm,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-account .woocommerce-EditAccountForm .form-row-first,
  body.woocommerce-account .woocommerce-EditAccountForm .form-row-last,
  body.woocommerce-account .woocommerce-EditAccountForm .form-row-wide,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row{
    grid-column:1 !important;
  }
  body.woocommerce-account .u-columns.woocommerce-Addresses,
  body.woocommerce-account .woocommerce-Addresses.col2-set{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-account .woocommerce-Address{
    min-height:0 !important;
  }
}


/* =========================================================
   V6.17.33 — ADDRESS CARD TITLE / ACTION ALIGNMENT
   Keep each address heading and its action button on one
   common vertical axis; no offset between label and button.
   ========================================================= */
@media (min-width: 769px){
  body.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:14px !important;
    margin:0 0 16px !important;
  }
  body.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title .edit{
    width:auto !important;
    margin:0 !important;
    text-align:left !important;
    align-self:flex-start !important;
  }
}

/* V6.17.34 — Featured product prices now render directly from WooCommerce product data. */

/* V6.17.45 — Phase 6 authority content only. Existing V6.17.40 page heroes/layouts remain untouched. */
.vv-research-catalogue{padding:72px 0;background:#f5f5f3;border-top:1px solid #e6e6e2;border-bottom:1px solid #e6e6e2}
.vv-research-catalogue h2,.vv-research-guide h2{margin:10px 0 14px;font-size:var(--vv-section,34px);line-height:1.08;letter-spacing:-.02em}
.vv-research-lead{max-width:720px;margin:0 0 30px;color:#555;line-height:1.7}
.vv-research-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.vv-research-card{background:#fff;border:1px solid #e2e2de;padding:25px;min-height:240px;display:flex;flex-direction:column}
.vv-research-card small{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#777}
.vv-research-card h3{font-size:19px;line-height:1.2;margin:10px 0 12px}
.vv-research-card p{font-size:14px;line-height:1.65;color:#5a5a5a;margin:0 0 22px}
.vv-research-card a{margin-top:auto;color:#111;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none}
.vv-research-guide{padding:76px 0;background:#fff}
.vv-research-guide-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:start}
.vv-research-guide-copy h3{font-size:16px;margin:0 0 8px;text-transform:uppercase;letter-spacing:.04em}
.vv-research-guide-copy p{margin:0 0 25px;color:#555;line-height:1.75}
@media(max-width:1024px){.vv-research-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vv-research-guide-grid{gap:40px}}
@media(max-width:640px){.vv-research-catalogue,.vv-research-guide{padding:48px 0}.vv-research-grid{grid-template-columns:1fr}.vv-research-card{min-height:0}.vv-research-guide-grid{grid-template-columns:1fr;gap:24px}}


/* V6.17.46 — incorporated company details */
.vv-footer-company{font-size:11px;line-height:1.55;opacity:.78;margin-top:10px;max-width:620px}
.vv-footer-bottom .vv-wrap{align-items:flex-start;gap:18px;flex-wrap:wrap}
.vvc-company-details{margin-top:18px;padding-top:16px;border-top:1px solid rgba(17,19,21,.16);line-height:1.7}
.vvc-company-details strong{display:block;margin-bottom:3px}
@media(max-width:782px){.vv-footer-company{font-size:10px}.vvc-company-details{margin-top:14px;padding-top:14px}}

/* ============================================================
   V6.17.51 — HOMEPAGE-REFERENCE INTERNAL PAGE SYSTEM
   Uses the approved homepage as the visual master.
   ============================================================ */
.vv-page-hero{
 background:#020405;
 color:#fff;
 border-top:1px solid #22282c;
 border-bottom:1px solid #2a2f33;
 overflow:hidden;
}
.vv-page-hero .vv-page-hero-grid{
 min-height:385px;
 display:grid;
 grid-template-columns:47% 53%;
 padding:0!important;
}
.vv-page-hero-copy{
 min-width:0;
 padding:38px 28px 34px 22px;
 display:flex;
 flex-direction:column;
 justify-content:center;
}
.vv-page-hero .vv-kicker{
 margin:0 0 12px;
 font-size:11px;
 font-weight:700;
 letter-spacing:.20em;
 text-transform:uppercase;
 color:#fff;
}
.vv-page-hero h1{
 margin:0!important;
 padding:0!important;
 font-size:59px!important;
 line-height:.98!important;
 font-weight:600!important;
 letter-spacing:-.01em!important;
 color:#fff!important;
 text-transform:uppercase;
}
.vv-page-hero-rule{
 width:min(475px,100%);
 height:2px;
 background:#fff;
 margin:14px 0 15px;
 opacity:.95;
}
.vv-page-hero-copy>p{
 margin:0 0 18px!important;
 max-width:555px;
 font-size:17px!important;
 line-height:1.45!important;
 color:#f0f1f2!important;
}
.vv-page-hero-buttons{
 display:flex;
 gap:12px;
 margin:0 0 26px;
 flex-wrap:wrap;
}
.vv-page-hero-buttons .vv-btn{min-height:43px}
.vv-page-hero-trust{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:22px;
 max-width:680px;
}
.vv-page-hero-image{
 min-height:385px;
 background-position:center center;
 background-size:cover;
 background-repeat:no-repeat;
 position:relative;
}
.vv-page-hero-image:after{
 content:"";
 position:absolute;
 inset:0;
 background:linear-gradient(90deg,rgba(2,4,5,.14),rgba(2,4,5,0) 28%);
 pointer-events:none;
}

/* Give the principal pages the same wide visual rail as the homepage. */
.vv-about-page .vv-wrap,
.vv-quality-page .vvq-wrap,
.vv-faq-page .vvf-wrap,
.vv-contact-page .vvc-wrap,
.vv-shipping-page .vvs-wrap,
.vv-returns-page .vvr-wrap,
.vv-terms-page .vvt-wrap,
.vv-privacy-page .vvp-wrap,
.vv-cookie-page .vvc-wrap{
 width:min(1450px,95vw);
 margin-left:auto;
 margin-right:auto;
}

/* Breadcrumbs stay quiet so the hero carries the page visually. */
.vv-inner-nav,
.vvq-breadcrumb,
.vvf-breadcrumb,
.vvc-breadcrumb,
.vvs-breadcrumb,
.vvr-breadcrumb,
.vvt-breadcrumb,
.vvp-breadcrumb{
 background:#fff!important;
 color:#555!important;
 border-bottom:1px solid #e5e5e5!important;
}

/* FAQ categories / Contact routes become a precise dark strip below hero. */
.vv-home-ref-subnav,
.vv-home-ref-routes{
 background:#071c28;
 color:#fff;
 border-top:1px solid #2c3b43;
 border-bottom:1px solid #2c3b43;
}
.vv-home-ref-subnav .vvf-wrap{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 padding:0!important;
}
.vv-home-ref-subnav a{
 min-height:74px;
 padding:14px 18px;
 border-right:1px solid #40505a;
 display:flex;
 flex-direction:column;
 justify-content:center;
 gap:5px;
}
.vv-home-ref-subnav a:first-child{border-left:1px solid #40505a}
.vv-home-ref-subnav span,
.vv-home-ref-routes .vvc-route span{font-size:9px;letter-spacing:.15em;color:#b8c5ca}
.vv-home-ref-subnav strong,
.vv-home-ref-routes .vvc-route strong{font-size:11px;letter-spacing:.04em;text-transform:uppercase}
.vv-home-ref-routes .vvc-route-grid{margin:0!important;border:0!important}
.vv-home-ref-routes .vvc-route{min-height:88px}

/* Internal page sections now begin on the same horizontal rail and spacing rhythm. */
.vv-qa-intro,
.vvq-intro,
.vvf-intro,
.vvc-main,
.vvs-intro,
.vvr-intro,
.vvt-intro,
.vvp-intro,
.vvc-intro{
 border-top:0!important;
}

@media(max-width:1024px){
 .vv-page-hero .vv-page-hero-grid{grid-template-columns:1fr 1fr;min-height:330px}
 .vv-page-hero-copy{padding:34px 24px 30px 10px}
 .vv-page-hero h1{font-size:43px!important}
 .vv-page-hero-copy>p{font-size:15px!important}
 .vv-page-hero-image{min-height:330px}
 .vv-page-hero-trust{gap:14px}
 .vv-page-hero .vv-trust-icon{font-size:23px}
 .vv-page-hero .vv-trust-copy b{font-size:9px}
 .vv-page-hero .vv-trust-copy small{font-size:9px}
}

@media(max-width:760px){
 .vv-page-hero .vv-page-hero-grid{
  width:100%;
  display:flex;
  flex-direction:column;
  min-height:0;
 }
 .vv-page-hero-copy{order:1;padding:28px 20px 24px}
 .vv-page-hero-image{order:2;min-height:235px}
 .vv-page-hero h1{font-size:38px!important;line-height:1!important}
 .vv-page-hero-rule{margin:12px 0 13px}
 .vv-page-hero-copy>p{font-size:14px!important;max-width:100%}
 .vv-page-hero-buttons{margin-bottom:22px}
 .vv-page-hero-buttons .vv-btn{flex:1 1 190px;padding:0 16px}
 .vv-page-hero-trust{grid-template-columns:repeat(3,1fr);gap:10px;max-width:none}
 .vv-page-hero .vv-trust-item{gap:7px;align-items:flex-start}
 .vv-page-hero .vv-trust-icon{font-size:19px}
 .vv-page-hero .vv-trust-copy b{font-size:8px;margin-bottom:4px;line-height:1.2}
 .vv-page-hero .vv-trust-copy small{font-size:8px;line-height:1.25}
 .vv-home-ref-subnav .vvf-wrap{grid-template-columns:repeat(2,1fr);width:100%}
 .vv-home-ref-subnav a{min-height:64px;padding:11px 14px}
 .vv-about-page .vv-wrap,
 .vv-quality-page .vvq-wrap,
 .vv-faq-page .vvf-wrap,
 .vv-contact-page .vvc-wrap,
 .vv-shipping-page .vvs-wrap,
 .vv-returns-page .vvr-wrap,
 .vv-terms-page .vvt-wrap,
 .vv-privacy-page .vvp-wrap,
 .vv-cookie-page .vvc-wrap{width:calc(100% - 30px)}
}

@media(max-width:430px){
 .vv-page-hero h1{font-size:33px!important}
 .vv-page-hero-copy{padding:25px 15px 22px}
 .vv-page-hero-image{min-height:205px}
 .vv-page-hero-trust{gap:7px}
}

/* ============================================================
   V6.17.51 — CLEAN HOMEPAGE-REFERENCE PAGE SYSTEM
   Scientific imagery moves to a closing band above the footer.
   ============================================================ */
.vv-page-hero .vv-page-hero-grid{
  display:block!important;
  min-height:0!important;
  padding:0!important;
}
.vv-page-hero-copy{
  min-height:385px;
  padding:38px 22px 34px!important;
  max-width:780px;
  justify-content:center;
}
.vv-page-hero-image{display:none!important}
.vv-page-bottom-image{
  background:#020405;
  border-top:1px solid #252c30;
  border-bottom:1px solid #252c30;
  padding:0;
}
.vv-page-bottom-image .vv-wrap{padding:0!important}
.vv-page-bottom-image-art{
  width:100%;
  height:250px;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  position:relative;
}
.vv-page-bottom-image-art:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(2,4,5,.20),rgba(2,4,5,0) 38%,rgba(2,4,5,.12));
  pointer-events:none;
}
/* FAQ category rail: exactly the same wide rail as the hero/content. */
.vv-faq-page .vv-home-ref-subnav{margin:0!important;width:100%!important}
.vv-faq-page .vv-home-ref-subnav .vvf-wrap{
  width:min(1450px,95vw)!important;
  margin:0 auto!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
}
.vv-faq-page .vv-home-ref-subnav a{margin:0!important;width:auto!important}

@media(max-width:1024px){
 .vv-page-hero-copy{min-height:330px;padding:34px 20px 30px!important;max-width:720px}
 .vv-page-bottom-image-art{height:220px}
}
@media(max-width:760px){
 .vv-page-hero-copy{min-height:0;padding:25px 15px 23px!important;max-width:none}
 .vv-page-hero h1{font-size:27px!important;line-height:1.01!important;letter-spacing:0!important}
 .vv-hero h1{font-size:27px!important;line-height:1.01!important;max-width:320px!important;letter-spacing:0!important}
 .vv-page-bottom-image .vv-wrap{width:100%!important}
 .vv-page-bottom-image-art{height:170px}
 .vv-faq-page .vv-home-ref-subnav .vvf-wrap{
   width:100%!important;
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
}
@media(max-width:390px){
 .vv-page-hero h1,.vv-hero h1{font-size:26px!important}
}

/* ============================================================
   V6.17.51 — DESKTOP HERO RESTORE + MOBILE IMAGE/NAV REFINEMENT
   ============================================================ */
/* Desktop/tablet: restore the homepage-style split hero with image at top. */
@media (min-width:761px){
  .vv-page-hero .vv-page-hero-grid{
    display:grid!important;
    grid-template-columns:47% 53%!important;
    min-height:385px!important;
    padding:0!important;
  }
  .vv-page-hero-copy{
    min-height:385px!important;
    padding:38px 28px 34px 22px!important;
    max-width:none!important;
  }
  .vv-page-hero-image{
    display:block!important;
    min-height:385px!important;
    background-size:cover!important;
    background-position:center center!important;
  }
  /* Closing imagery is a mobile-only treatment. */
  .vv-page-bottom-image{display:none!important}
}

/* FAQ rail: the nav itself is a full-width strip; its inner rail does the grid. */
.vv-faq-page .vv-home-ref-subnav{
  display:block!important;
  grid-template-columns:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.vv-faq-page .vv-home-ref-subnav .vvf-wrap{
  width:min(1450px,95vw)!important;
  margin:0 auto!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
}
.vv-faq-page .vv-home-ref-subnav a{
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  overflow:hidden;
}
.vv-faq-page .vv-home-ref-subnav strong{
  display:block;
  line-height:1.25;
  white-space:normal;
  overflow-wrap:normal;
  word-break:normal;
}

@media (max-width:760px){
  /* Mobile: text-only hero at top. */
  .vv-page-hero .vv-page-hero-grid{
    display:block!important;
    width:100%!important;
    min-height:0!important;
  }
  .vv-page-hero-image{display:none!important}

  /* Mobile closing image: preserve the complete artwork, never crop text. */
  .vv-page-bottom-image{
    display:block!important;
    width:100%!important;
    background:#020405!important;
    overflow:hidden!important;
  }
  .vv-page-bottom-image .vv-wrap{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  .vv-page-bottom-image-art{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    background:none!important;
  }
  .vv-page-bottom-image-art:after{display:none!important}
  .vv-page-bottom-image-art img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:100%!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  /* FAQ categories stay in one clean row instead of a 2x2 stack. */
  .vv-faq-page .vv-home-ref-subnav .vvf-wrap{
    width:100%!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  .vv-faq-page .vv-home-ref-subnav a{
    min-height:82px!important;
    padding:10px 7px!important;
    justify-content:center!important;
  }
  .vv-faq-page .vv-home-ref-subnav span{
    font-size:8px!important;
    margin-bottom:4px!important;
  }
  .vv-faq-page .vv-home-ref-subnav strong{
    font-size:8.5px!important;
    line-height:1.22!important;
    letter-spacing:.025em!important;
  }
}

@media (min-width:761px) and (max-width:1024px){
  .vv-page-hero .vv-page-hero-grid{min-height:330px!important}
  .vv-page-hero-copy{min-height:330px!important}
  .vv-page-hero-image{min-height:330px!important}
}

/* ============================================================
   V6.17.51 — HERO EDGE SOFTENING + MOBILE IMAGE FIT
   Requested visual refinements only.
   ============================================================ */

/* Desktop/tablet hero artwork: blend the image into the dark hero rather than
   showing a hard rectangular edge. Also remove any source-image top hairline. */
@media (min-width:761px){
  .vv-page-hero-image{
    position:relative!important;
    overflow:hidden!important;
    border:0!important;
    outline:0!important;
    background-repeat:no-repeat!important;
  }
  .vv-page-hero-image:before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:
      linear-gradient(90deg,rgba(7,28,40,.58) 0,rgba(7,28,40,.20) 7%,rgba(7,28,40,0) 18%,rgba(7,28,40,0) 88%,rgba(7,28,40,.16) 100%),
      linear-gradient(180deg,rgba(7,28,40,.18) 0,rgba(7,28,40,0) 5%,rgba(7,28,40,0) 94%,rgba(7,28,40,.10) 100%);
    box-shadow:inset 12px 0 24px rgba(7,28,40,.30), inset -8px 0 18px rgba(7,28,40,.16);
  }

  /* The contact source artwork contains a thin white line at its very top.
     Slight overscan cleanly crops that line without changing the visible composition. */
  .vv-contact-page .vv-page-hero-image{
    background-size:auto 104%!important;
    background-position:center center!important;
  }

  /* Quality source artwork has incomplete words baked into its far-right edge.
     Cover that edge and restore the intended complete wording as live CSS text. */
  .vv-quality-page .vv-page-hero-image:before{
    background:
      linear-gradient(90deg,rgba(7,28,40,.55) 0,rgba(7,28,40,.15) 9%,rgba(7,28,40,0) 19%,rgba(7,28,40,0) 69%,rgba(7,28,40,.72) 82%,#071c28 100%);
  }
  .vv-quality-page .vv-page-hero-image:after{
    content:"PURITY\A—\AANALYSIS\A—\AVERIFICATION\A—\ATRUST";
    white-space:pre;
    position:absolute;
    right:24px;
    top:50%;
    transform:translateY(-50%);
    z-index:2;
    color:#fff;
    font-size:10px;
    line-height:1.7;
    font-weight:700;
    letter-spacing:.24em;
    text-align:right;
    pointer-events:none;
  }
}

@media (max-width:760px){
  /* Closing artwork occupies the full available mobile width cleanly. */
  .vv-page-bottom-image-art{
    position:relative!important;
    width:100%!important;
    overflow:hidden!important;
    background:#020405!important;
  }

  /* Research source contains a large empty black margin at the far right.
     A slight controlled overscan removes it while preserving the molecule. */
  .vv-research-page .vv-page-bottom-image-art{
    height:210px!important;
  }
  .vv-research-page .vv-page-bottom-image-art img{
    width:120%!important;
    max-width:none!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:left center!important;
  }

  /* FAQ artwork is a small wide image; make it fill the closing band rather
     than sitting inside a mismatched black canvas. */
  .vv-faq-page .vv-page-bottom-image-art{
    height:210px!important;
  }
  .vv-faq-page .vv-page-bottom-image-art img{
    width:112%!important;
    max-width:none!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:translateX(-5%);
  }

  /* Keep the full quality photograph, mask the incomplete source lettering,
     and replace it with complete responsive wording inside the image band. */
  .vv-quality-page .vv-page-bottom-image-art{
    min-height:180px!important;
  }
  .vv-quality-page .vv-page-bottom-image-art img{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }
  .vv-quality-page .vv-page-bottom-image-art:before{
    content:"";
    position:absolute;
    z-index:2;
    top:0;
    right:0;
    bottom:0;
    width:36%;
    background:linear-gradient(90deg,rgba(7,28,40,0),rgba(7,28,40,.88) 20%,#071c28 100%);
    pointer-events:none;
  }
  .vv-quality-page .vv-page-bottom-image-art:after{
    content:"PURITY\A—\AANALYSIS\A—\AVERIFICATION\A—\ATRUST"!important;
    display:block!important;
    white-space:pre;
    position:absolute!important;
    z-index:3!important;
    right:14px!important;
    top:50%!important;
    left:auto!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    background:none!important;
    color:#fff!important;
    font-size:7.5px!important;
    line-height:1.55!important;
    font-weight:700!important;
    letter-spacing:.14em!important;
    text-align:right!important;
    pointer-events:none!important;
  }
}

/* ============================================================
   V6.17.51 — HERO BLEND + MOBILE CLOSING IMAGE CLEANUP
   Targeted visual corrections only.
   ============================================================ */

/* Desktop: soften every principal hero artwork edge into the dark hero panel,
   including the homepage, without changing hero dimensions or content. */
@media (min-width:761px){
  .vv-hero-image,
  .vv-page-hero-image{
    position:relative!important;
    overflow:hidden!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }
  .vv-hero-image:after,
  .vv-page-hero-image:before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:linear-gradient(90deg,
      #071c28 0%,
      rgba(7,28,40,.78) 2.5%,
      rgba(7,28,40,.34) 7%,
      rgba(7,28,40,0) 15%,
      rgba(7,28,40,0) 88%,
      rgba(7,28,40,.18) 96%,
      rgba(7,28,40,.32) 100%)!important;
  }

  /* Quality: retain the edge blend while masking the damaged source lettering. */
  .vv-quality-page .vv-page-hero-image:before{
    background:linear-gradient(90deg,
      #071c28 0%,rgba(7,28,40,.72) 3%,rgba(7,28,40,.22) 10%,rgba(7,28,40,0) 18%,
      rgba(7,28,40,0) 68%,rgba(7,28,40,.72) 82%,#071c28 100%)!important;
  }
  .vv-quality-page .vv-page-hero-image:after{
    content:"PURITY\A —\A ANALYSIS\A —\A VERIFICATION\A —\A TRUST"!important;
    white-space:pre!important;
  }
}

@media (max-width:760px){
  /* No hairline/border between page content, closing artwork and footer. */
  .vv-page-bottom-image,
  .vv-page-bottom-image-art,
  .vv-page-bottom-image-art img{
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }
  .vv-page-bottom-image{border-top:0!important;border-bottom:0!important}

  /* Research: remove the framed look and keep the artwork clipped to viewport. */
  .vv-research-page .vv-page-bottom-image,
  .vv-research-page .vv-page-bottom-image-art{
    border:0!important;
    overflow:hidden!important;
  }
  .vv-research-page .vv-page-bottom-image-art img{
    border:0!important;
    outline:0!important;
  }

  /* FAQ: guarantee the photograph reaches both edges of the image band. */
  .vv-faq-page .vv-page-bottom-image-art{
    width:100%!important;
    height:210px!important;
    overflow:hidden!important;
  }
  .vv-faq-page .vv-page-bottom-image-art img{
    display:block!important;
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:scale(1.035)!important;
    transform-origin:center!important;
  }

  /* Quality: mask the damaged baked-in words and render clean replacement text.
     Spaces after \A deliberately terminate the CSS newline escape. */
  .vv-quality-page .vv-page-bottom-image-art:before{
    width:42%!important;
    background:linear-gradient(90deg,rgba(7,28,40,0),rgba(7,28,40,.90) 22%,#071c28 100%)!important;
  }
  .vv-quality-page .vv-page-bottom-image-art:after{
    content:"PURITY\A —\A ANALYSIS\A —\A VERIFICATION\A —\A TRUST"!important;
    right:18px!important;
    font-size:7.5px!important;
    line-height:1.55!important;
    letter-spacing:.13em!important;
  }
}


/* ============================================================
   V6.17.53 — MOBILE CLOSING IMAGE FINAL CLEANUP
   Only the two remaining mobile image issues are changed.
   ============================================================ */
@media (max-width:760px){
  /* Homepage: v613-qa.jpg contains a thin white strip baked into the source.
     Slight vertical overscan crops it out without changing the visible image. */
  .vv-qa-image{
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    background-size:auto 106%!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }

  /* Research: fill the entire closing band and crop the source-image frame
     and empty right margin that are baked into molecule.jpg. */
  .vv-research-page .vv-page-bottom-image,
  .vv-research-page .vv-page-bottom-image .vv-wrap,
  .vv-research-page .vv-page-bottom-image-art{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  .vv-research-page .vv-page-bottom-image-art{
    height:210px!important;
    background:#020405!important;
    position:relative!important;
  }
  .vv-research-page .vv-page-bottom-image-art img{
    position:absolute!important;
    inset:-8%!important;
    width:116%!important;
    height:116%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:none!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }
}

/* ============================================================
   V6.17.53 — FAQ MOBILE CLOSING IMAGE FULL-BLEED FIX
   Only the remaining FAQ mobile closing-image width issue.
   ============================================================ */
@media (max-width:760px){
  .vv-faq-page .vv-page-bottom-image,
  .vv-faq-page .vv-page-bottom-image > .vv-wrap,
  .vv-faq-page .vv-page-bottom-image-art{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  .vv-faq-page .vv-page-bottom-image-art img{
    display:block!important;
    position:relative!important;
    left:50%!important;
    width:104%!important;
    min-width:104%!important;
    max-width:none!important;
    height:100%!important;
    margin:0!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:translateX(-50%)!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }
}

/* ============================================================
   V6.17.55 — FAQ IMAGE FULL-FRAME CORRECTION
   Targeted FAQ image treatment only. Desktop hero and mobile
   closing image are zoomed/cropped to remove the dark unused
   right-side portion of the source artwork.
   ============================================================ */

/* Desktop/tablet FAQ hero: crop into the microscope artwork so the
   photographic content fills the full hero-image panel, with no
   apparent dark block on the right. */
@media (min-width:761px){
  .vv-faq-page .vv-page-hero-image{
    background-size:136% auto!important;
    background-position:24% center!important;
    background-repeat:no-repeat!important;
    background-color:#071c28!important;
  }
}

/* Mobile FAQ closing artwork: use the wrapper itself as the crop frame.
   This avoids inherited width constraints on the <img> and guarantees
   edge-to-edge coverage of the full page width. */
@media (max-width:760px){
  .vv-faq-page .vv-page-bottom-image,
  .vv-faq-page .vv-page-bottom-image > .vv-wrap,
  .vv-faq-page .vv-page-bottom-image-art{
    display:block!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  .vv-faq-page .vv-page-bottom-image > .vv-wrap{
    margin-left:0!important;
    margin-right:0!important;
  }
  .vv-faq-page .vv-page-bottom-image-art{
    height:210px!important;
    background-image:url('assets/images/qa-microscope.jpg')!important;
    background-size:136% auto!important;
    background-position:24% center!important;
    background-repeat:no-repeat!important;
    background-color:#020405!important;
  }
  .vv-faq-page .vv-page-bottom-image-art img{
    display:none!important;
  }
}

/* ============================================================
   V6.17.55 — FAQ + RESEARCH TRUE IMAGE-FRAME FIX
   Uses page-specific cropped artwork files instead of attempting
   to stretch source images that contained baked-in empty panels.
   ============================================================ */

/* FAQ: the replacement asset has the unused right-side area removed.
   Let it genuinely fill the entire hero image cell. */
.vv-faq-page .vv-page-hero-image{
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#071c28!important;
}

/* Research uses its own corrected crop too. */
.vv-about-page .vv-page-hero-image[style*="molecule-fill.jpg"]{
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}

@media (max-width:760px){
  /* FAQ + Research closing images: full-bleed wrapper and corrected asset.
     No inherited page rail, no border, no right-side gap. */
  .vv-faq-page .vv-page-bottom-image,
  .vv-research-page .vv-page-bottom-image{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  .vv-faq-page .vv-page-bottom-image > .vv-wrap,
  .vv-research-page .vv-page-bottom-image > .vv-wrap{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  .vv-faq-page .vv-page-bottom-image-art,
  .vv-research-page .vv-page-bottom-image-art{
    width:100%!important;
    max-width:none!important;
    height:210px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    background:none!important;
  }
  .vv-faq-page .vv-page-bottom-image-art img,
  .vv-research-page .vv-page-bottom-image-art img{
    display:block!important;
    position:static!important;
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:none!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }
}

/* =========================================================
   V6.17.56 — RT-20 PRODUCT NAMING
   Product display naming only. No layout or responsive changes.
   ========================================================= */


/* V6.17.58 — checkout Open Banking reassurance (scoped, no layout changes elsewhere) */
body.woocommerce-checkout .vv-pay-by-bank-reassurance{
 margin:18px 0 14px;
 padding:18px 20px;
 border:1px solid #d8dde1;
 background:#f7f8f8;
 color:#111315;
}
body.woocommerce-checkout .vv-pay-by-bank-reassurance__title{
 display:block;
 margin:0 0 6px;
 font-size:17px;
 line-height:1.25;
 font-weight:700;
 letter-spacing:.01em;
}
body.woocommerce-checkout .vv-pay-by-bank-reassurance p{
 margin:0;
 color:#4b5054;
 font-size:14px;
 line-height:1.55;
}
@media (max-width:767px){
 body.woocommerce-checkout .vv-pay-by-bank-reassurance{
  margin:14px 0 12px;
  padding:16px;
 }
 body.woocommerce-checkout .vv-pay-by-bank-reassurance__title{font-size:16px;}
 body.woocommerce-checkout .vv-pay-by-bank-reassurance p{font-size:13px;}
}


/* V6.18.0 availability states — layout unchanged; status colour only. */
.vv-stock.is-out-of-stock .vv-stock-dot,
.vv-stock.is-unavailable .vv-stock-dot,
.vv-catalogue-stock.is-out-of-stock span,
.vv-catalogue-stock.is-unavailable span,
.vv-product-stock.is-out-of-stock .dot,
.vv-product-stock.is-unavailable .dot{color:#767b7e}

/* =========================================================
   V6.18.4 — HANDSET LANDSCAPE HERO CORRECTION
   On short landscape viewports the original cover crop magnified
   the vial excessively. Fit the full approved hero artwork instead.
   Desktop and normal-height tablet/desktop layouts are untouched.
   ========================================================= */
@media (orientation:landscape) and (max-height:520px) and (min-width:768px) and (max-width:1180px){
  .vv-hero .vv-wrap{
    min-height:300px!important;
    grid-template-columns:46% 54%!important;
  }
  .vv-hero-copy{
    padding:26px 24px 24px 22px!important;
  }
  .vv-hero h1{
    font-size:46px!important;
    line-height:.98!important;
  }
  .vv-hero-rule{
    width:100%!important;
    max-width:440px!important;
    margin:12px 0 13px!important;
  }
  .vv-hero-copy>p{
    font-size:15px!important;
    line-height:1.4!important;
    margin-bottom:15px!important;
  }
  .vv-hero-buttons{gap:12px!important;margin-bottom:0!important;}
  .vv-hero-buttons .vv-btn{min-height:48px!important;}
  .vv-trust{display:none!important;}
  .vv-hero-image{
    min-height:300px!important;
    background-size:contain!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    background-color:#020405!important;
  }
  .vv-hero-image:after{display:none!important;}
}

/* =========================================================
   V6.18.6 — HANDSET LANDSCAPE HERO + PRODUCT RETURN CTA
   Fills the hero artwork panel with a controlled crop rather than
   the undersized 'contain' presentation from V6.18.4.
   ========================================================= */
.vv-cart-label{display:none;}
.vv-product-return-shop{margin:18px 0 4px;}
.vv-product-return-shop a{
 display:inline-flex;align-items:center;justify-content:center;
 min-height:48px;padding:0 22px;border:1px solid #071c28;
 background:#fff;color:#071c28!important;text-decoration:none!important;
 font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
}
.vv-product-return-shop a:hover,.vv-product-return-shop a:focus-visible{background:#071c28;color:#fff!important;}

@media (orientation:landscape) and (max-height:520px) and (min-width:768px) and (max-width:1180px){
  .vv-hero .vv-wrap{
    min-height:280px!important;
    grid-template-columns:47% 53%!important;
  }
  .vv-hero-copy{padding:24px 22px 22px!important;}
  .vv-hero h1{font-size:44px!important;line-height:.98!important;}
  .vv-hero-image{
    min-height:280px!important;
    height:280px!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    background-color:#020405!important;
  }
  .vv-hero-image:after{display:none!important;}
}

@media(max-width:767px){
  .vv-product-return-shop{margin:16px 0 8px!important;}
  .vv-product-return-shop a{width:100%!important;min-height:52px!important;border-width:2px!important;}
}


/* =========================================================
   V6.18.7 — RESPONSIVE ROOT-CAUSE CORRECTION
   Landscape handset rules live in the always-loaded stylesheet because
   phone landscape viewports commonly exceed the 767px phone CSS cutoff.
   Portrait Shop actions escape the legacy 145px catalogue-info constraint.
   ========================================================= */

/* Portrait Shop: make the action area use the full card width, matching the
   approved Home Featured Products CTA geometry. */
@media (max-width:767px) and (orientation:portrait){
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-info{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-actions > a:first-child,
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-actions .vv-catalogue-cart{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:52px!important;
    min-height:52px!important;
    padding:0 12px!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.045em!important;
  }
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-actions .vv-catalogue-cart{
    display:flex!important;
    gap:8px!important;
  }
  body.woocommerce-shop .vv-catalogue-card .vv-cart-label{display:inline!important;}
}

/* Handset landscape: exact hero alignment plus equal purchase actions.
   This must remain in style.css (not mobile.css) because landscape widths
   on modern phones can exceed 767px. */
@media (orientation:landscape) and (max-height:520px) and (min-width:768px) and (max-width:1180px){
  .vv-hero .vv-wrap{
    display:grid!important;
    grid-template-columns:47% 53%!important;
    align-items:stretch!important;
    min-height:0!important;
  }
  .vv-hero-copy{
    height:auto!important;
    min-height:0!important;
  }
  .vv-hero-image{
    height:auto!important;
    min-height:0!important;
    align-self:stretch!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }
  .vv-hero-image:after{display:none!important;}

  .vv-featured .vv-product-actions,
  body.woocommerce-shop .vv-catalogue-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    max-width:none!important;
  }
  .vv-featured .vv-product-actions > a:first-child,
  .vv-featured .vv-product-actions .vv-cart,
  body.woocommerce-shop .vv-catalogue-actions > a:first-child,
  body.woocommerce-shop .vv-catalogue-actions .vv-catalogue-cart{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:50px!important;
    min-height:50px!important;
    padding:0 12px!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.035em!important;
  }
  .vv-featured .vv-product-actions .vv-cart,
  body.woocommerce-shop .vv-catalogue-actions .vv-catalogue-cart{
    gap:8px!important;
  }
  .vv-featured .vv-cart-label,
  body.woocommerce-shop .vv-cart-label{display:inline!important;}
}

/* =========================================================
   V6.18.8 — FINAL CTA COLOUR + LANDSCAPE ROW ALIGNMENT
   Visual consistency only. Approved hero sizing and responsive geometry
   from V6.18.7 remain unchanged.
   ========================================================= */

/* Portrait handset: View Product is the light/secondary action on both
   Home Featured Products and Shop All Products. Add to Basket stays dark. */
@media (max-width:767px) and (orientation:portrait){
  .vv-featured .vv-product-actions > a:first-child,
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-actions > a:first-child{
    background:#fff!important;
    color:#071c28!important;
    border:1px solid #071c28!important;
  }
  .vv-featured .vv-product-actions > a:first-child:hover,
  .vv-featured .vv-product-actions > a:first-child:focus-visible,
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-actions > a:first-child:hover,
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-actions > a:first-child:focus-visible{
    background:#f5f6f6!important;
    color:#071c28!important;
  }
}

/* Short handset landscape: reserve the same two-line title slot for every
   Shop card. This prevents long product names from pushing one card's CTAs
   and lower divider out of horizontal alignment with its neighbour. */
@media (orientation:landscape) and (max-height:520px) and (min-width:768px) and (max-width:1180px){
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-info h2,
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-info h3{
    min-height:2.3em!important;
    display:flex!important;
    align-items:flex-start!important;
  }
  body.woocommerce-shop .vv-catalogue-card .vv-catalogue-info{
    align-self:stretch!important;
  }
}



/* =========================================================
   V6.18.9 — DESKTOP CTA CONSISTENCY
   Desktop only: replace the legacy icon-only basket control on Home
   Featured Products and Shop All Products with two equal, full-size CTAs.
   Mobile and handset-landscape treatments remain untouched.
   ========================================================= */
@media (min-width:1181px){
  .vv-featured .vv-product-actions,
  body.woocommerce-shop .vv-catalogue-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    max-width:none!important;
  }

  .vv-featured .vv-product-actions > a:first-child,
  .vv-featured .vv-product-actions .vv-cart,
  body.woocommerce-shop .vv-catalogue-actions > a:first-child,
  body.woocommerce-shop .vv-catalogue-actions .vv-catalogue-cart{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:48px!important;
    min-height:48px!important;
    padding:0 14px!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.04em!important;
    line-height:1.1!important;
    text-align:center!important;
  }

  .vv-featured .vv-product-actions > a:first-child,
  body.woocommerce-shop .vv-catalogue-actions > a:first-child{
    background:#fff!important;
    color:#071c28!important;
    border:1px solid #878c90!important;
  }

  .vv-featured .vv-product-actions .vv-cart,
  body.woocommerce-shop .vv-catalogue-actions .vv-catalogue-cart{
    background:#081015!important;
    color:#fff!important;
    border:1px solid #081015!important;
    gap:8px!important;
  }

  .vv-featured .vv-cart-label,
  body.woocommerce-shop .vv-cart-label{
    display:inline!important;
  }

  .vv-featured .vv-product-actions > a:first-child:hover,
  .vv-featured .vv-product-actions > a:first-child:focus-visible,
  body.woocommerce-shop .vv-catalogue-actions > a:first-child:hover,
  body.woocommerce-shop .vv-catalogue-actions > a:first-child:focus-visible{
    background:#f5f6f6!important;
    color:#071c28!important;
  }
}


/* =========================================================
   V6.18.10 — PRODUCT PAGE RETURN-TO-SHOP CLEANUP
   Desktop already has the breadcrumb-level Back to Shop CTA.
   Keep the in-content Return to Shop CTA for mobile/tablet only.
   ========================================================= */
@media (min-width:901px){
  body.single-product .vv-product-return-shop{display:none!important;}
}
@media (max-width:900px){
  body.single-product .vv-product-return-shop{display:block!important;}
}

/* =========================================================
   V6.18.12 — stay-on-page add-to-basket confirmation
   ========================================================= */
.vv-add-basket-toast{
 position:fixed;
 z-index:99999;
 left:50%;
 bottom:28px;
 transform:translate(-50%,18px);
 min-width:220px;
 max-width:calc(100vw - 32px);
 padding:14px 22px;
 background:#071821;
 color:#fff;
 border:1px solid rgba(255,255,255,.18);
 box-shadow:0 10px 30px rgba(0,0,0,.22);
 font-size:13px;
 font-weight:700;
 letter-spacing:.08em;
 text-transform:uppercase;
 text-align:center;
 opacity:0;
 pointer-events:none;
 transition:opacity .18s ease,transform .18s ease;
}
.vv-add-basket-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.vv-add-basket-toast.is-error{background:#3a1111}
.vv-stay-add-to-cart.is-adding,
.vv-buy-row .single_add_to_cart_button.is-adding{opacity:.7;pointer-events:none}
@media(max-width:767px){
 .vv-add-basket-toast{bottom:18px;width:calc(100vw - 36px);min-width:0}
}


/* =========================================================
   V6.18.15 — CROSS-DEVICE STICKY GLOBAL HEADER
   Keep the utility strip + primary navigation as one sticky shell.
   Using one sticky container is more reliable on iOS/mobile Safari and
   ensures desktop, tablet and mobile all use the same behaviour.
   ========================================================= */
.vv-sticky-shell{
  position:-webkit-sticky;
  position:sticky;
  top:0;
  z-index:10030;
  width:100%;
}
.vv-sticky-shell .vv-topbar,
.vv-sticky-shell .vv-header{
  position:relative;
  top:auto;
}


/* V6.18.15 — Secure Pay by Bank messaging refinement */
.vv-pay-by-bank-reassurance__strap{display:block;margin-top:8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}


/* =========================================================
   V6.18.21 — TRUST & SHIPPING CONVERSION
   ========================================================= */
.vv-conversion-trust{
  background:#f4f5f5;
  color:#0a1116;
  border-top:1px solid #d9dddf;
  border-bottom:1px solid #d9dddf;
  padding:34px 0 0;
}
.vv-conversion-trust-head{text-align:center;max-width:780px;margin:0 auto 25px;padding:0 18px}
.vv-conversion-trust-head .vv-kicker{color:#596066;margin-bottom:7px}
.vv-conversion-trust-head h2{font-size:28px;letter-spacing:.045em;margin:0 0 8px}
.vv-conversion-trust-head p{margin:0;color:#535a5f;font-size:13px;line-height:1.6}
.vv-conversion-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #d5d9db;border-bottom:0;background:#fff}
.vv-conversion-trust-card{position:relative;min-height:180px;padding:26px 25px 24px;display:flex;flex-direction:column;color:#0a1116;background:#fff}
.vv-conversion-trust-card+.vv-conversion-trust-card{border-left:1px solid #d5d9db}
a.vv-conversion-trust-card:hover{background:#f9fafa}
.vv-conversion-trust-no{position:absolute;right:18px;top:16px;font-size:9px;font-weight:700;letter-spacing:.12em;color:#959b9f}
.vv-conversion-trust-icon{font-size:29px;line-height:1;margin-bottom:22px}
.vv-conversion-trust-card strong{font-size:12px;letter-spacing:.055em;margin-bottom:7px}
.vv-conversion-trust-card small{font-size:11px;line-height:1.55;color:#5c6368;max-width:230px}
.vv-free-shipping-banner{min-height:62px;background:#071015;color:#fff;display:flex;align-items:center;justify-content:center;gap:28px;padding:15px 24px;text-align:center}
.vv-free-shipping-banner strong{font-size:12px;letter-spacing:.08em}
.vv-free-shipping-banner span{font-size:11px;color:#cdd2d5}

.vv-batch-evidence{margin:17px 0 20px;border:1px solid #cdd3d6;background:#f7f8f8}
.vv-batch-evidence__status{padding:11px 14px;border-bottom:1px solid #d8dcde;font-size:10px;font-weight:700;letter-spacing:.08em}
.vv-batch-evidence__status span{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#0a1116;color:#fff;margin-right:6px}
.vv-batch-evidence__details{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:13px 14px}
.vv-batch-evidence__details small{display:block;color:#697075;font-size:9px;font-weight:700;letter-spacing:.09em;margin-bottom:2px}
.vv-batch-evidence__details strong{display:block;font-size:13px;letter-spacing:.04em}
.vv-batch-evidence__details a{min-height:38px;padding:0 16px;background:#0a1116;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.04em}

.vv-shipping-progress{margin:0 0 18px;border:1px solid #d2d7da;background:#f7f8f8;padding:14px 15px 12px;color:#111}
.vv-shipping-progress__copy{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:9px}
.vv-shipping-progress__copy>span{font-size:10px;font-weight:700;letter-spacing:.08em;white-space:nowrap}
.vv-shipping-progress__copy p{font-size:11px;margin:0;text-align:right}
.vv-shipping-progress__track{height:4px;background:#d8dcde;overflow:hidden}
.vv-shipping-progress__track i{display:block;height:100%;background:#0a1116;transition:width .25s ease}

@media(max-width:900px){
 .vv-conversion-trust-grid{grid-template-columns:repeat(2,1fr)}
 .vv-conversion-trust-card:nth-child(3){border-left:0;border-top:1px solid #d5d9db}
 .vv-conversion-trust-card:nth-child(4){border-top:1px solid #d5d9db}
}
@media(max-width:620px){
 .vv-conversion-trust{padding-top:27px}
 .vv-conversion-trust-head h2{font-size:24px}
 .vv-conversion-trust-grid{grid-template-columns:1fr}
 .vv-conversion-trust-card{min-height:0;padding:20px 20px 18px}
 .vv-conversion-trust-card+.vv-conversion-trust-card{border-left:0;border-top:1px solid #d5d9db}
 .vv-conversion-trust-icon{margin-bottom:13px}
 .vv-free-shipping-banner{display:block;padding:14px 18px}
 .vv-free-shipping-banner strong,.vv-free-shipping-banner span{display:block}
 .vv-free-shipping-banner span{margin-top:4px;line-height:1.4}
 .vv-batch-evidence__details{grid-template-columns:1fr}
 .vv-batch-evidence__details a{width:100%}
 .vv-shipping-progress__copy{display:block}
 .vv-shipping-progress__copy p{text-align:left;margin-top:4px;line-height:1.4}
}




/* =========================================================
   V6.18.21 — HANDSET LANDSCAPE BASKET SPACING FIX
   Reserve a dedicated header grid column for the existing basket so it
   cannot overlap CONTACT. No typography, navigation sizing, hero, product,
   portrait, tablet or desktop presentation changes.
   ========================================================= */
@media (orientation:landscape) and (max-height:520px) and (min-width:768px) and (max-width:1180px){
  .vv-header .vv-wrap{
    grid-template-columns:250px minmax(0,1fr) 36px!important;
  }
  .vv-header .vv-actions{
    display:flex!important;
    position:static!important;
    width:auto!important;
    transform:none!important;
    justify-content:flex-end!important;
    gap:0!important;
    z-index:auto!important;
  }
  .vv-header .vv-actions .vv-search-icon,
  .vv-header .vv-actions .vv-account-link{
    display:none!important;
  }
  .vv-header .vv-actions .vv-header-cart{
    display:inline-flex!important;
    margin:0!important;
  }
}


/* =========================================================
   V6.18.21 — REMOVE REDUNDANT POST-ADD "VIEW BASKET" LINK
   The sticky header basket is the single persistent basket navigation.
   Scope is intentionally limited to WooCommerce's post-add forward link.
   Applies consistently across desktop, tablet and mobile.
   ========================================================= */
a.added_to_cart.wc-forward{
  display:none!important;
}

/* =========================================================
   V6.18.22 — QUALITY ASSURANCE EXPANSION
   Scoped only to the Quality Assurance page. Existing site-wide visual
   layout and desktop/tablet/mobile breakpoints remain unchanged.
   ========================================================= */
.vv-quality-page-v61822 .vvq-trust-strip{background:#fff;border-bottom:1px solid #e1e4e6}
.vv-quality-page-v61822 .vvq-trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.vv-quality-page-v61822 .vvq-trust-grid>div{padding:25px 28px;border-right:1px solid #e1e4e6;min-height:128px}
.vv-quality-page-v61822 .vvq-trust-grid>div:last-child{border-right:0}
.vv-quality-page-v61822 .vvq-trust-grid span{display:block;font-size:10px;font-weight:700;letter-spacing:.15em;color:#7a8287;margin-bottom:18px}
.vv-quality-page-v61822 .vvq-trust-grid strong{display:block;font-size:12px;letter-spacing:.09em;margin-bottom:7px}
.vv-quality-page-v61822 .vvq-trust-grid small{display:block;color:#596065;font-size:12px;line-height:1.55;max-width:300px}

.vv-quality-page-v61822 .vvq-section-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:end;margin-bottom:32px}
.vv-quality-page-v61822 .vvq-section-head p{margin:0;color:#4c5356;font-size:15px;line-height:1.62}

.vv-quality-page-v61822 .vvq-release{padding:56px 0 60px;background:#fff;border-bottom:1px solid #e1e4e6}
.vv-quality-page-v61822 .vvq-process{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid #d8dcde;background:#fff}
.vv-quality-page-v61822 .vvq-process-step{position:relative;min-height:198px;padding:24px 20px 22px;border-right:1px solid #d8dcde}
.vv-quality-page-v61822 .vvq-process-step:last-child{border-right:0;background:#071c28;color:#fff}
.vv-quality-page-v61822 .vvq-process-step b{display:block;font-size:10px;letter-spacing:.14em;color:#7c858a;margin-bottom:42px}
.vv-quality-page-v61822 .vvq-process-step:last-child b{color:#aebbc0}
.vv-quality-page-v61822 .vvq-process-step strong{display:block;font-size:11px;letter-spacing:.08em;margin-bottom:8px}
.vv-quality-page-v61822 .vvq-process-step span{display:block;color:#5a6266;font-size:12px;line-height:1.55}
.vv-quality-page-v61822 .vvq-process-step:last-child span{color:#c8d2d6}
.vv-quality-page-v61822 .vvq-process-note{margin:18px 0 0;padding-left:16px;border-left:2px solid #071c28;color:#596065;font-size:12px;line-height:1.6;max-width:930px}

.vv-quality-page-v61822 .vvq-cards-four{grid-template-columns:repeat(4,1fr)}
.vv-quality-page-v61822 .vvq-cards-four .vvq-card{min-height:205px}

.vv-quality-page-v61822 .vvq-verify{padding:58px 0;background:#fff;border-bottom:1px solid #e1e4e6}
.vv-quality-page-v61822 .vvq-verify-form{display:grid;grid-template-columns:1.15fr 1fr auto;gap:12px;padding:22px;border:1px solid #cfd5d8;background:#f5f6f6;align-items:end}
.vv-quality-page-v61822 .vvq-verify-form label span{display:block;font-size:9px;font-weight:700;letter-spacing:.12em;margin-bottom:7px;color:#626a6e}
.vv-quality-page-v61822 .vvq-verify-form select,.vv-quality-page-v61822 .vvq-verify-form input{width:100%;height:48px;border:1px solid #bfc6ca;background:#fff;padding:0 13px;font:inherit;font-size:13px;color:#111;border-radius:0;appearance:none}
.vv-quality-page-v61822 .vvq-verify-form button{height:48px;border:1px solid #071c28;background:#071c28;color:#fff;padding:0 24px;font-size:10px;font-weight:800;letter-spacing:.08em;cursor:pointer}
.vv-quality-page-v61822 .vvq-batch-ready{margin-top:16px;border:1px solid #d5dadd;padding:22px;display:grid;grid-template-columns:240px 1fr;gap:34px;align-items:center}
.vv-quality-page-v61822 .vvq-batch-ready>div{display:flex;align-items:center;gap:12px}
.vv-quality-page-v61822 .vvq-batch-ready span{width:38px;height:38px;border:1px solid #071c28;display:grid;place-items:center;font-size:9px;font-weight:800;letter-spacing:.08em}
.vv-quality-page-v61822 .vvq-batch-ready strong{font-size:11px;letter-spacing:.08em}
.vv-quality-page-v61822 .vvq-batch-ready p{margin:0;color:#596065;font-size:12px;line-height:1.6}
.vv-quality-page-v61822 .vvq-batch-result{margin-top:16px;border:1px solid #cfd5d8;padding:26px}
.vv-quality-page-v61822 .vvq-batch-result-empty{background:#f8f9f9}
.vv-quality-page-v61822 .vvq-batch-result-empty strong{display:block;font-size:12px;letter-spacing:.08em;margin-bottom:7px}
.vv-quality-page-v61822 .vvq-batch-result-empty p{margin:0;color:#596065;font-size:13px;line-height:1.6}
.vv-quality-page-v61822 .vvq-batch-result-found{background:#fff}
.vv-quality-page-v61822 .vvq-batch-result-top{display:flex;align-items:center;gap:10px;border-bottom:1px solid #e0e3e5;padding-bottom:18px;margin-bottom:20px}
.vv-quality-page-v61822 .vvq-status-dot{width:30px;height:30px;border-radius:50%;background:#071c28;color:#fff;display:grid;place-items:center;font-weight:800}
.vv-quality-page-v61822 .vvq-batch-result small{display:block;font-size:9px;font-weight:700;letter-spacing:.11em;color:#6c7478;margin-bottom:4px}
.vv-quality-page-v61822 .vvq-batch-result-top strong{font-size:12px;letter-spacing:.08em}
.vv-quality-page-v61822 .vvq-batch-result-title h3{font-size:26px;margin:0 0 3px}
.vv-quality-page-v61822 .vvq-batch-result-title p{margin:0;color:#596065;font-size:12px}
.vv-quality-page-v61822 .vvq-batch-result-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid #d8dcde;margin:22px 0}
.vv-quality-page-v61822 .vvq-batch-result-grid>div{padding:17px 16px;border-right:1px solid #d8dcde}
.vv-quality-page-v61822 .vvq-batch-result-grid>div:last-child{border-right:0}
.vv-quality-page-v61822 .vvq-batch-result-grid strong{font-size:12px;line-height:1.45}

.vv-quality-page-v61822 .vvq-no-supplier-only{padding:55px 0;background:#f4f5f5;border-bottom:1px solid #e0e3e5}

.vv-quality-page-v61822 .vvq-bac{padding:58px 0;background:#0a151c;color:#fff}
.vv-quality-page-v61822 .vvq-bac-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.vv-quality-page-v61822 .vvq-bac .vvq-section-kicker{color:#aebcc1}
.vv-quality-page-v61822 .vvq-bac h2{color:#fff;margin-bottom:0}
.vv-quality-page-v61822 .vvq-bac-copy p{font-size:15px;line-height:1.65;color:#d9e1e4;margin:0 0 14px}
.vv-quality-page-v61822 .vvq-bac-note{margin-top:24px;padding:17px 18px;border:1px solid rgba(255,255,255,.24);color:#bbc8cd;font-size:12px;line-height:1.6}

.vv-quality-page-v61822 .vvq-trace{padding:58px 0;background:#fff;border-bottom:1px solid #e1e4e6}
.vv-quality-page-v61822 .vvq-trace-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:76px;align-items:center}
.vv-quality-page-v61822 .vvq-trace-visual{display:flex;align-items:center;justify-content:center;min-height:360px;background:#f3f4f4;border:1px solid #dadddf}
.vv-quality-page-v61822 .vvq-trace-product-shot{display:block;width:100%;height:360px;overflow:hidden}
.vv-quality-page-v61822 .vvq-trace-product-shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.vv-quality-page-v61822 .vvq-vial{width:154px;text-align:center;filter:drop-shadow(0 16px 14px rgba(0,0,0,.12))}
.vv-quality-page-v61822 .vvq-vial-cap{height:52px;margin:0 21px;background:linear-gradient(90deg,#bfc3c5,#eceeef,#b6babc);border-radius:5px 5px 2px 2px;border:1px solid #aeb3b6}
.vv-quality-page-v61822 .vvq-vial-body{min-height:215px;border:1px solid #aeb3b6;border-radius:5px 5px 16px 16px;background:linear-gradient(90deg,#f6f7f7,#fff,#eef0f1);padding:45px 13px 18px;color:#0a1116}
.vv-quality-page-v61822 .vvq-vial-body span{display:block;font-size:14px;font-weight:800;letter-spacing:.14em;border-bottom:1px solid #aeb3b6;padding-bottom:12px;margin-bottom:14px}
.vv-quality-page-v61822 .vvq-vial-body b{display:block;font-size:8px;letter-spacing:.16em;color:#697075}
.vv-quality-page-v61822 .vvq-vial-body strong{display:block;font-size:10px;letter-spacing:.08em;margin:8px 0}
.vv-quality-page-v61822 .vvq-vial-body small{display:block;font-size:8px;line-height:1.4;color:#737b7f}
.vv-quality-page-v61822 .vvq-trace-copy p{font-size:15px;line-height:1.65;color:#4d5559}
.vv-quality-page-v61822 .vvq-trace-copy ul{margin:22px 0 0;padding:0;list-style:none;border-top:1px solid #dfe2e3}
.vv-quality-page-v61822 .vvq-trace-copy li{padding:12px 0;border-bottom:1px solid #dfe2e3;font-size:12px;font-weight:700;letter-spacing:.045em}
.vv-quality-page-v61822 .vvq-trace-copy li:before{content:'✓';display:inline-block;margin-right:10px;color:#071c28}

@media(max-width:1100px){
 .vv-quality-page-v61822 .vvq-process{grid-template-columns:repeat(3,1fr)}
 .vv-quality-page-v61822 .vvq-process-step{border-bottom:1px solid #d8dcde}
 .vv-quality-page-v61822 .vvq-process-step:nth-child(3){border-right:0}
 .vv-quality-page-v61822 .vvq-process-step:nth-child(n+4){border-bottom:0}
 .vv-quality-page-v61822 .vvq-cards-four{grid-template-columns:repeat(2,1fr)}
 .vv-quality-page-v61822 .vvq-batch-result-grid{grid-template-columns:repeat(2,1fr)}
 .vv-quality-page-v61822 .vvq-batch-result-grid>div{border-bottom:1px solid #d8dcde}
}
@media(max-width:900px){
 .vv-quality-page-v61822 .vvq-section-head,.vv-quality-page-v61822 .vvq-bac-grid,.vv-quality-page-v61822 .vvq-trace-grid{grid-template-columns:1fr;gap:24px}
 .vv-quality-page-v61822 .vvq-trust-grid{grid-template-columns:1fr}
 .vv-quality-page-v61822 .vvq-trust-grid>div{border-right:0;border-bottom:1px solid #e1e4e6;min-height:0;padding:20px 0}
 .vv-quality-page-v61822 .vvq-trust-grid>div:last-child{border-bottom:0}
 .vv-quality-page-v61822 .vvq-trust-grid span{margin-bottom:9px}
 .vv-quality-page-v61822 .vvq-verify-form{grid-template-columns:1fr 1fr}
 .vv-quality-page-v61822 .vvq-verify-form button{grid-column:1/-1}
 .vv-quality-page-v61822 .vvq-batch-ready{grid-template-columns:1fr;gap:12px}
 .vv-quality-page-v61822 .vvq-trace-visual{min-height:310px}
 .vv-quality-page-v61822 .vvq-trace-product-shot{height:310px}
}
@media(max-width:620px){
 .vv-quality-page-v61822 .vvq-release,.vv-quality-page-v61822 .vvq-verify,.vv-quality-page-v61822 .vvq-no-supplier-only,.vv-quality-page-v61822 .vvq-bac,.vv-quality-page-v61822 .vvq-trace{padding:36px 0}
 .vv-quality-page-v61822 .vvq-process{grid-template-columns:1fr}
 .vv-quality-page-v61822 .vvq-process-step{min-height:0;padding:20px;border-right:0!important;border-bottom:1px solid #d8dcde!important}
 .vv-quality-page-v61822 .vvq-process-step:last-child{border-bottom:0!important}
 .vv-quality-page-v61822 .vvq-process-step b{margin-bottom:20px}
 .vv-quality-page-v61822 .vvq-cards-four{grid-template-columns:1fr}
 .vv-quality-page-v61822 .vvq-verify-form{grid-template-columns:1fr;padding:16px}
 .vv-quality-page-v61822 .vvq-verify-form button{grid-column:auto}
 .vv-quality-page-v61822 .vvq-batch-result{padding:20px}
 .vv-quality-page-v61822 .vvq-batch-result-grid{grid-template-columns:1fr}
 .vv-quality-page-v61822 .vvq-batch-result-grid>div{border-right:0;border-bottom:1px solid #d8dcde}
 .vv-quality-page-v61822 .vvq-batch-result-grid>div:last-child{border-bottom:0}
 .vv-quality-page-v61822 .vvq-trace-visual{min-height:285px}
 .vv-quality-page-v61822 .vvq-trace-product-shot{height:285px}
 .vv-quality-page-v61822 .vvq-vial{transform:scale(.88)}
}

/* =========================================================
   V6.18.25 — RESEARCH & EDUCATION HUB
   Native WordPress post/category presentation prepared for reviewed SEO
   articles (including GrandRanker-originated drafts) without altering the
   approved product, Quality, cart or checkout layouts.
   ========================================================= */
.vv-hub-topics{padding:76px 0;background:#f5f5f3;border-top:1px solid #e6e6e2;border-bottom:1px solid #e6e6e2}
.vv-hub-topics h2,.vv-hub-latest h2,.vv-hub-standard h2,.vv-hub-quality-link h2{margin:10px 0 14px;font-size:var(--vv-section,34px);line-height:1.08;letter-spacing:-.02em}
.vv-hub-topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px}
.vv-hub-topic-card{background:#fff;border:1px solid #e2e2de;padding:24px;min-height:245px;display:flex;flex-direction:column;gap:22px}
.vv-hub-topic-mark{width:46px;height:46px;border:1px solid #111;display:grid;place-items:center;font-size:12px;font-weight:800;letter-spacing:.1em}
.vv-hub-topic-body{display:flex;flex-direction:column;flex:1}
.vv-hub-topic-body h3{font-size:18px;line-height:1.22;margin:0 0 10px;text-transform:uppercase;letter-spacing:.01em}
.vv-hub-topic-body p{font-size:14px;line-height:1.65;color:#5a5a5a;margin:0 0 20px}
.vv-hub-topic-body a{margin-top:auto;color:#111;text-decoration:none;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.vv-hub-latest{padding:78px 0;background:#fff}
.vv-hub-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,520px);gap:54px;align-items:end;margin-bottom:30px}
.vv-hub-section-head>p{margin:0;color:#555;line-height:1.7}
.vv-hub-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.vv-hub-article-card{border:1px solid #e2e2de;background:#fff;display:flex;flex-direction:column;min-width:0}
.vv-hub-article-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#f0f0ed}
.vv-hub-article-image img{display:block;width:100%;height:100%;object-fit:cover}
.vv-hub-article-content{padding:24px;display:flex;flex-direction:column;flex:1}
.vv-hub-article-meta{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#777;margin-bottom:12px}
.vv-hub-article-card h3,.vv-hub-article-card h2{font-size:20px;line-height:1.25;margin:0 0 12px}
.vv-hub-article-card h3 a,.vv-hub-article-card h2 a{color:#111;text-decoration:none}
.vv-hub-article-card p{font-size:14px;line-height:1.68;color:#555;margin:0 0 22px}
.vv-hub-read{margin-top:auto;color:#111;text-decoration:none;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.vv-hub-empty{border:1px solid #e2e2de;background:#f5f5f3;padding:30px;display:flex;align-items:center;gap:24px}
.vv-hub-empty-mark{width:58px;height:58px;border:1px solid #111;display:grid;place-items:center;font-size:20px;font-weight:800;flex:0 0 auto}
.vv-hub-empty h3{font-size:18px;margin:0 0 7px;text-transform:uppercase}
.vv-hub-empty p{margin:0;color:#555;line-height:1.65;max-width:760px}
.vv-hub-standard{padding:78px 0;background:#0d0d0d;color:#fff}
.vv-hub-standard .vv-qa-section-label{color:#b8b8b8}
.vv-hub-standard-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:74px}
.vv-hub-standard-copy{display:grid;gap:0;border-top:1px solid rgba(255,255,255,.18)}
.vv-hub-check{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.vv-hub-check>span{font-size:11px;font-weight:700;letter-spacing:.12em;color:#b8b8b8;padding-top:3px}
.vv-hub-check h3{font-size:15px;text-transform:uppercase;letter-spacing:.04em;margin:0 0 7px}
.vv-hub-check p{margin:0;color:#c9c9c9;font-size:14px;line-height:1.65}
.vv-hub-product-card{min-height:165px}
.vv-hub-product-card a{margin-top:auto}
.vv-hub-quality-link{padding:76px 0;background:#fff}
.vv-hub-quality-inner{display:flex;justify-content:space-between;align-items:flex-end;gap:50px}
.vv-hub-quality-inner>div{max-width:760px}
.vv-hub-quality-inner p{margin:0;color:#555;line-height:1.7;max-width:700px}

/* Research category archives */
.vv-article-archive{background:#fff}
.vv-article-archive-hero{padding:72px 0 62px;background:#f5f5f3;border-bottom:1px solid #e2e2de}
.vv-article-archive-hero h1{font-size:clamp(36px,5vw,64px);line-height:.98;letter-spacing:-.035em;margin:12px 0 16px;max-width:1000px}
.vv-article-archive-hero p,.vv-archive-description{max-width:760px;color:#555;line-height:1.7}
.vv-archive-description p{margin:0}
.vv-archive-listing{min-height:420px}
.vv-hub-pagination{margin-top:36px}
.vv-hub-pagination .nav-links{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.vv-hub-pagination a,.vv-hub-pagination span{border:1px solid #d8d8d4;padding:10px 13px;color:#111;text-decoration:none;font-size:12px}
.vv-hub-pagination .current{background:#111;color:#fff;border-color:#111}

/* Individual research articles */
.vv-article-single{background:#fff}
.vv-article-header{padding:70px 0 46px;background:#f5f5f3;border-bottom:1px solid #e2e2de}
.vv-article-header-inner{max-width:1040px}
.vv-article-header h1{font-size:clamp(38px,5.2vw,68px);line-height:1.02;letter-spacing:-.035em;margin:12px 0 20px;max-width:1000px}
.vv-article-byline{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#666;font-weight:700}
.vv-article-featured{max-width:1180px;margin-top:42px}
.vv-article-featured img{display:block;width:100%;max-height:620px;object-fit:cover}
.vv-article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,300px);justify-content:space-between;gap:70px;padding-top:54px;padding-bottom:76px}
.vv-article-notice{border-left:3px solid #111;background:#f5f5f3;padding:20px 22px;margin-bottom:34px}
.vv-article-notice strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}
.vv-article-notice p{margin:0!important;font-size:13px!important;line-height:1.65!important;color:#555!important}
.vv-article-content{font-size:16px;line-height:1.82;color:#2f2f2f}
.vv-article-content h2{font-size:30px;line-height:1.15;letter-spacing:-.02em;margin:48px 0 16px;color:#111}
.vv-article-content h3{font-size:21px;line-height:1.25;margin:34px 0 12px;color:#111}
.vv-article-content h4{font-size:16px;text-transform:uppercase;letter-spacing:.04em;margin:28px 0 10px;color:#111}
.vv-article-content p{margin:0 0 22px}
.vv-article-content ul,.vv-article-content ol{padding-left:24px;margin:0 0 24px}
.vv-article-content li{margin:8px 0}
.vv-article-content a{color:#111;text-decoration:underline;text-underline-offset:3px}
.vv-article-content blockquote{margin:32px 0;padding:8px 0 8px 24px;border-left:2px solid #111;font-size:19px;line-height:1.6}
.vv-article-content img{max-width:100%;height:auto}
.vv-article-content table{width:100%;border-collapse:collapse;margin:28px 0;font-size:14px}
.vv-article-content th,.vv-article-content td{padding:12px;border:1px solid #ddd;text-align:left;vertical-align:top}
.vv-article-content th{background:#f5f5f3}
.vv-article-endnote{margin-top:48px;padding-top:28px;border-top:1px solid #ddd}
.vv-article-endnote strong{display:block;text-transform:uppercase;letter-spacing:.05em;font-size:13px;margin-bottom:8px}
.vv-article-endnote p{color:#555;line-height:1.7;margin:0 0 12px}
.vv-article-endnote a{color:#111;text-decoration:none;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.vv-article-aside{position:relative}
.vv-article-aside-box{border-top:2px solid #111;padding:20px 0 28px;margin-bottom:24px}
.vv-article-aside-box h2{font-size:20px;margin:8px 0 14px}
.vv-article-aside-box>a{display:block;padding:9px 0;border-bottom:1px solid #e2e2de;color:#111;text-decoration:none;font-size:13px;font-weight:600}
.vv-article-related{padding:68px 0;background:#f5f5f3;border-top:1px solid #e2e2de}
.vv-article-related>div>h2{font-size:32px;margin:10px 0 28px}

@media(max-width:1024px){
  .vv-hub-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vv-hub-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vv-hub-standard-grid{gap:42px}
  .vv-article-layout{grid-template-columns:minmax(0,1fr) 240px;gap:42px}
}
@media(max-width:760px){
  .vv-hub-topics,.vv-hub-latest,.vv-hub-standard,.vv-hub-quality-link{padding:50px 0}
  .vv-hub-section-head,.vv-hub-standard-grid{grid-template-columns:1fr;gap:24px}
  .vv-hub-topic-grid,.vv-hub-article-grid{grid-template-columns:1fr}
  .vv-hub-topic-card{min-height:0}
  .vv-hub-quality-inner{align-items:flex-start;flex-direction:column;gap:24px}
  .vv-article-archive-hero{padding:50px 0 42px}
  .vv-article-layout{grid-template-columns:1fr;gap:28px;padding-top:36px;padding-bottom:52px}
  .vv-article-header{padding:48px 0 34px}
  .vv-article-featured{margin-top:26px}
  .vv-article-aside{border-top:1px solid #ddd;padding-top:12px}
  .vv-article-content{font-size:15px;line-height:1.78}
  .vv-article-content h2{font-size:26px;margin-top:40px}
  .vv-hub-empty{align-items:flex-start;padding:22px;gap:16px}
  .vv-hub-empty-mark{width:46px;height:46px}
}
@media(max-width:430px){
  .vv-hub-topic-card,.vv-hub-article-content{padding:20px}
  .vv-article-header h1{font-size:36px}
  .vv-article-content table{font-size:12px;display:block;overflow-x:auto}
}

/* V6.18.27 — Research & Education copy and brand-colour refinement */
.vv-article-archive .vv-article-archive-hero h1,
.vv-article-archive .vv-article-archive-hero .vv-qa-section-label,
.vv-article-archive .vv-article-archive-hero p,
.vv-article-archive .vv-article-archive-hero .vv-archive-description,
.vv-hub-topic-body h3,
.vv-hub-topic-body h3 a,
.vv-hub-topic-body a,
.vv-research-card h3,
.vv-research-card a { color:#071c28 !important; }
.vv-hub-topic-mark { color:#071c28; border-color:#071c28; }


/* =========================================================
   V6.18.30 — RESEARCH & INSIGHTS DISPLAY POLISH
   Surgical fixes only: short-landscape header fit, article type scale,
   brand colours, robust article image visibility and logged-in front-end
   presentation. Existing approved product/cart/checkout layouts untouched.
   ========================================================= */

/* Article header is a light surface, so never inherit the global white body text. */
.vv-article-single .vv-article-header,
.vv-article-single .vv-article-header h1,
.vv-article-single .vv-article-header .vv-qa-section-label,
.vv-article-single .vv-article-header .vv-article-byline{
  color:#071c28!important;
}

/* GrandRanker / Gutenberg content can carry theme or block colour rules.
   Keep editorial headings in VOREVIA's approved dark brand colour. */
.vv-article-single .vv-article-content h1,
.vv-article-single .vv-article-content h2,
.vv-article-single .vv-article-content h3,
.vv-article-single .vv-article-content h4,
.vv-article-single .vv-article-content h5,
.vv-article-single .vv-article-content h6,
.vv-article-single .vv-article-content .wp-block-heading{
  color:#071c28!important;
}

/* Ensure normal WordPress/GrandRanker inline images and figures are visible. */
.vv-article-single .vv-article-content figure,
.vv-article-single .vv-article-content .wp-block-image,
.vv-article-single .vv-article-content .wp-block-gallery,
.vv-article-single .vv-article-content picture{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:100%!important;
  margin:30px 0!important;
}
.vv-article-single .vv-article-content figure img,
.vv-article-single .vv-article-content .wp-block-image img,
.vv-article-single .vv-article-content picture img,
.vv-article-single .vv-article-content img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.vv-article-single .vv-article-content figcaption{
  color:#666!important;
  font-size:12px!important;
  line-height:1.5!important;
  text-align:left;
  margin-top:8px;
}

/* Phone portrait editorial typography: comfortable article scale rather than
   inheriting oversized styles from externally generated blocks. */
@media(max-width:767px){
  .vv-article-single .vv-article-header{padding:38px 0 30px!important;}
  .vv-article-single .vv-article-header h1{
    font-size:32px!important;
    line-height:1.04!important;
    letter-spacing:-.025em!important;
    margin:10px 0 16px!important;
  }
  .vv-article-single .vv-article-byline{font-size:10px!important;line-height:1.45!important;gap:7px 14px!important;}
  .vv-article-single .vv-article-layout{padding-top:30px!important;padding-bottom:48px!important;}
  .vv-article-single .vv-article-content,
  .vv-article-single .vv-article-content p,
  .vv-article-single .vv-article-content li,
  .vv-article-single .vv-article-content td,
  .vv-article-single .vv-article-content th{
    font-size:16px!important;
    line-height:1.62!important;
  }
  .vv-article-single .vv-article-content h1{font-size:29px!important;line-height:1.08!important;margin:38px 0 15px!important;}
  .vv-article-single .vv-article-content h2{font-size:25px!important;line-height:1.12!important;margin:38px 0 14px!important;}
  .vv-article-single .vv-article-content h3{font-size:20px!important;line-height:1.2!important;margin:30px 0 12px!important;}
  .vv-article-single .vv-article-content h4{font-size:16px!important;line-height:1.3!important;margin:26px 0 10px!important;}
  .vv-article-single .vv-article-content blockquote{font-size:17px!important;line-height:1.55!important;margin:26px 0!important;padding-left:18px!important;}
  .vv-article-single .vv-article-content .wp-block-table,
  .vv-article-single .vv-article-content table{max-width:100%!important;overflow-x:auto!important;}
}
@media(max-width:390px){
  .vv-article-single .vv-article-header h1{font-size:30px!important;}
  .vv-article-single .vv-article-content,
  .vv-article-single .vv-article-content p,
  .vv-article-single .vv-article-content li{font-size:15.5px!important;}
  .vv-article-single .vv-article-content h2{font-size:24px!important;}
  .vv-article-single .vv-article-content h3{font-size:19px!important;}
}

/* Short handset landscape: V6.18.29 added a longer navigation label.
   Rebalance the existing desktop-style landscape header without changing
   normal desktop/tablet/portrait presentation. */
@media (orientation:landscape) and (max-height:520px) and (min-width:768px) and (max-width:1180px){
  .vv-header{height:64px!important;min-height:64px!important;}
  .vv-header .vv-wrap{
    width:min(100% - 24px,1160px)!important;
    grid-template-columns:190px minmax(0,1fr) 32px!important;
    gap:10px!important;
  }
  .vv-logo img{
    width:185px!important;
    height:54px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  .vv-nav{
    gap:9px!important;
    font-size:9.5px!important;
    justify-content:center!important;
    min-width:0!important;
  }
  .vv-nav a{
    padding:22px 0 20px!important;
    letter-spacing:-.01em!important;
  }
  .vv-nav a.is-active:after{bottom:12px!important;}
  .vv-header .vv-actions{width:32px!important;min-width:32px!important;}
  .vv-header .vv-header-cart{min-width:28px!important;width:28px!important;}
  .vv-header .vv-header-cart-count{right:-4px!important;top:-7px!important;}
}


/* V6.18.31 — Research naming and notice colour refinement */
.vv-article-notice strong{color:#071c28!important;}


/* =========================================================
   V6.18.34 — SEO/GEO audit optimisation.
   Homepage research context + FAQ content only; no changes to
   existing product, cart, checkout or Research & Insights layouts.
   ========================================================= */
.vv-seo-context{background:#f5f5f2;color:#071c28;padding:clamp(54px,6vw,92px) 0;border-top:1px solid #d8d8d2}
.vv-seo-context .vv-wrap{max-width:1220px}
.vv-seo-context-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:clamp(32px,6vw,88px);align-items:start}
.vv-seo-context h2{margin:8px 0 18px;font-size:clamp(34px,4.1vw,58px);line-height:.98;letter-spacing:-.03em;color:#071c28}
.vv-seo-context p{margin:0 0 18px;font-size:17px;line-height:1.72;color:#39434a}
.vv-seo-context .vv-kicker{color:#071c28}
.vv-seo-link{display:inline-block;margin-top:10px;font-weight:800;letter-spacing:.08em;font-size:13px;border-bottom:1px solid #071c28;padding-bottom:4px}
.vv-home-faq{margin-top:54px;border-top:1px solid #cfcfc9;padding-top:34px}
.vv-home-faq-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:18px}
.vv-home-faq-head h3{margin:0;color:#071c28;font-size:clamp(26px,3vw,40px);line-height:1}
.vv-home-faq details{border-top:1px solid #d6d6d0;padding:18px 0}
.vv-home-faq details:last-of-type{border-bottom:1px solid #d6d6d0}
.vv-home-faq summary{cursor:pointer;font-weight:800;font-size:18px;color:#071c28;list-style:none;padding-right:32px;position:relative}
.vv-home-faq summary::-webkit-details-marker{display:none}
.vv-home-faq summary:after{content:'+';position:absolute;right:4px;top:-2px;font-size:24px;font-weight:400}
.vv-home-faq details[open] summary:after{content:'–'}
.vv-home-faq details p{max-width:900px;margin:12px 0 2px;font-size:16px}
@media(max-width:767px){
 .vv-seo-context{padding:48px 0}
 .vv-seo-context-grid{grid-template-columns:1fr;gap:20px}
 .vv-seo-context h2{font-size:36px}
 .vv-seo-context p{font-size:16px;line-height:1.65}
 .vv-home-faq{margin-top:38px;padding-top:26px}
 .vv-home-faq-head{display:block}
 .vv-home-faq-head h3{font-size:30px}
 .vv-home-faq summary{font-size:16px;line-height:1.35}
}


/* =========================================================
   V6.18.36 — SEO/GEO performance + readability refinement.
   Homepage-only additions; established product/research/cart layouts unchanged.
   ========================================================= */
.vv-research-checklist{margin:28px 0 8px;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 26px}
.vv-research-checklist li{position:relative;padding:0 0 0 22px;font-size:16px;line-height:1.55;color:#39434a}
.vv-research-checklist li:before{content:'—';position:absolute;left:0;top:0;color:#071c28;font-weight:800}
.vv-research-checklist strong{color:#071c28}
.vv-seo-support-copy{margin-top:24px;max-width:960px}
@media(max-width:767px){
 .vv-research-checklist{grid-template-columns:1fr;gap:10px;margin-top:22px}
 .vv-research-checklist li{font-size:15px;line-height:1.5}
}


/* =========================================================
   V6.18.37 — HOMEPAGE RESPONSIVE ALIGNMENT FIX
   Repairs only the homepage issues introduced by the SEO/GEO refinement:
   top delivery banner rendering, desktop research-copy alignment and
   short-landscape typography. Other pages/layouts remain unchanged.
   ========================================================= */

/* Prevent mobile browsers from enlarging the new homepage research copy
   independently of the established VOREVIA typography system. */
.vv-seo-context{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

/* The supporting quality checklist now lives inside the right-hand text rail,
   so its copy aligns with the paragraphs above on desktop. */
.vv-seo-context-grid > .vv-seo-copy-column .vv-seo-support-copy{
  margin-top:26px;
  max-width:none;
}

/* Short handset landscape needs an explicit type scale because Safari/Chrome
   can otherwise apply text autosizing to long content blocks. */
@media (orientation:landscape) and (max-height:520px) and (min-width:768px) and (max-width:1180px){
  .vv-seo-context{
    padding:34px 0!important;
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }
  .vv-seo-context-grid{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;
    gap:28px!important;
  }
  .vv-seo-context h2{
    font-size:30px!important;
    line-height:1.02!important;
  }
  .vv-seo-context p,
  .vv-seo-support-copy p{
    font-size:14px!important;
    line-height:1.52!important;
    margin-bottom:12px!important;
  }
  .vv-research-checklist{
    gap:8px 20px!important;
    margin:18px 0 8px!important;
  }
  .vv-research-checklist li{
    font-size:13px!important;
    line-height:1.42!important;
    padding-left:18px!important;
  }
  .vv-home-faq{
    margin-top:28px!important;
    padding-top:22px!important;
  }
  .vv-home-faq-head h3{
    font-size:26px!important;
  }
  .vv-home-faq summary{
    font-size:14px!important;
    line-height:1.35!important;
    padding:14px 30px 14px 0!important;
  }
  .vv-home-faq details{
    padding:0!important;
  }
  .vv-home-faq details p{
    font-size:13px!important;
    line-height:1.48!important;
  }
  .vv-seo-link{
    font-size:11px!important;
  }
}

/* Stable delivery mark: avoids browser emoji image replacement/sizing. */
.vv-delivery-notice{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.vv-delivery-mark{
  width:14px;height:8px;display:inline-block;position:relative;
  border:1.5px solid currentColor;border-radius:1px;
}
.vv-delivery-mark:before{
  content:'';position:absolute;right:-5px;bottom:-1.5px;width:5px;height:6px;
  border:1.5px solid currentColor;border-left:0;border-radius:0 1px 1px 0;
}
.vv-delivery-mark:after{
  content:'';position:absolute;left:1px;bottom:-4px;width:3px;height:3px;
  border:1.5px solid currentColor;border-radius:50%;
  box-shadow:10px 0 0 -1.5px #050709,10px 0 0 0 currentColor;
  background:#050709;
}

/* =========================================================
   V6.18.38 — HOMEPAGE RESEARCH SECTION BALANCE
   Keeps the approved split intro, then moves the supporting
   quality copy/checklist onto a full-width rail below it so
   desktop and short-landscape do not leave a large empty column.
   Mobile portrait remains unchanged.
   ========================================================= */
.vv-seo-context > .vv-wrap > .vv-seo-support-copy{
  max-width:none;
  margin:42px 0 0;
  padding-top:34px;
  border-top:1px solid #d8d8d2;
}
.vv-seo-context > .vv-wrap > .vv-seo-support-copy > p{
  max-width:1060px;
}
.vv-seo-context > .vv-wrap > .vv-seo-support-copy .vv-research-checklist{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px 34px;
  margin:26px 0 18px;
}

@media(max-width:767px){
  .vv-seo-context > .vv-wrap > .vv-seo-support-copy{
    margin-top:26px;
    padding-top:24px;
  }
  .vv-seo-context > .vv-wrap > .vv-seo-support-copy .vv-research-checklist{
    grid-template-columns:1fr;
    gap:10px;
  }
}

@media (orientation:landscape) and (max-height:520px) and (min-width:768px) and (max-width:1180px){
  .vv-seo-context > .vv-wrap > .vv-seo-support-copy{
    margin-top:24px!important;
    padding-top:20px!important;
  }
  .vv-seo-context > .vv-wrap > .vv-seo-support-copy > p{
    max-width:none!important;
  }
  .vv-seo-context > .vv-wrap > .vv-seo-support-copy .vv-research-checklist{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px 18px!important;
    margin:16px 0 10px!important;
  }
}


/* =========================================================
   V6.18.43 — GLOBAL CART ICON STANDARDISATION
   Use one CSS-drawn basket icon across every public template. The previous
   emoji-based markup could briefly render one platform glyph before WooCommerce
   cart fragments refreshed it, creating a visible icon swap. Empty semantic
   icon spans plus CSS drawing remove that transition from the first paint.
   ========================================================= */
.vv-header-cart .vv-header-cart-icon,
.vv-mobile-direct-cart .vv-mobile-direct-cart-icon{
  font-size:0!important;
  width:22px;
  height:20px;
  display:inline-block;
  position:relative;
  flex:0 0 22px;
}
.vv-header-cart .vv-header-cart-icon::before,
.vv-mobile-direct-cart .vv-mobile-direct-cart-icon::before{
  content:"";
  position:absolute;
  left:4px;
  top:5px;
  width:13px;
  height:9px;
  border:1.7px solid currentColor;
  border-top-width:1.7px;
  transform:skewX(-5deg);
}
.vv-header-cart .vv-header-cart-icon::after,
.vv-mobile-direct-cart .vv-mobile-direct-cart-icon::after{
  content:"";
  position:absolute;
  left:2px;
  top:2px;
  width:17px;
  height:16px;
  background:
    radial-gradient(circle at 7px 14px,currentColor 0 1.7px,transparent 1.9px),
    radial-gradient(circle at 16px 14px,currentColor 0 1.7px,transparent 1.9px),
    linear-gradient(currentColor,currentColor) 0 0/6px 1.7px no-repeat,
    linear-gradient(currentColor,currentColor) 4px 0/1.7px 6px no-repeat;
}

/* V6.18.42 research hub crawl path */
.vv-hub-section-copy{max-width:560px}.vv-hub-section-copy .vv-hub-read{display:inline-block;margin-top:10px}
\n\n/* =========================================================\n   V6.18.44 — BASKET FREE-DELIVERY NOTICE RESTORE\n   Keep the approved top-bar delivery message visible on the basket and\n   provide spacing for both classic and block-based WooCommerce carts.\n   No cart/header layout redesign.\n   ========================================================= */\nbody.woocommerce-cart .vv-topbar .vv-top-right{\n  display:flex!important;\n  align-items:center!important;\n  justify-content:flex-end!important;\n  visibility:visible!important;\n  opacity:1!important;\n}\nbody.woocommerce-cart .vv-topbar .vv-delivery-notice{\n  display:inline-flex!important;\n  visibility:visible!important;\n  opacity:1!important;\n}\nbody.woocommerce-cart .vv-cart-delivery-block,\nbody.woocommerce-cart .vv-shipping-progress{\n  box-sizing:border-box;\n}\nbody.woocommerce-cart .vv-cart-delivery-block{\n  margin:0 0 20px;\n}\n@media (max-width: 767px){\n  body.woocommerce-cart .vv-cart-delivery-block{margin-bottom:14px;}\n}\n
/* =========================================================
   V6.18.45 — HARD BASKET FREE-DELIVERY NOTICE RESTORE
   WooCommerce Cart Blocks can replace their markup after first render. The
   live notice is mounted outside that replaceable tree and retained across
   classic/block cart updates. Existing VOREVIA styling is preserved.
   ========================================================= */
body.woocommerce-cart .vv-cart-delivery-block--live,
body.vorevia-cart-page .vv-cart-delivery-block--live{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:none;
  margin:0 0 18px;
}
body.woocommerce-cart .vv-cart-delivery-block--live .vv-shipping-progress,
body.vorevia-cart-page .vv-cart-delivery-block--live .vv-shipping-progress{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
body.woocommerce-cart .vv-delivery-server-fallback-hidden,
body.vorevia-cart-page .vv-delivery-server-fallback-hidden{
  display:none!important;
}
@media (max-width:767px){
  body.woocommerce-cart .vv-cart-delivery-block--live,
  body.vorevia-cart-page .vv-cart-delivery-block--live{margin-bottom:14px;}
}
\n\n/* =========================================================
   V6.18.46 — SERVER-ANCHORED BASKET FREE-DELIVERY NOTICE
   The notice is prepended to the cart page content, outside WooCommerce's
   replaceable cart-block root. It therefore remains visible during block
   hydration and quantity updates on desktop, tablet and mobile.
   ========================================================= */
body.vorevia-cart-page .vv-topbar .vv-top-right,
body.woocommerce-cart .vv-topbar .vv-top-right{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  visibility:visible!important;
  opacity:1!important;
}
body.vorevia-cart-page .vv-topbar .vv-delivery-notice,
body.woocommerce-cart .vv-topbar .vv-delivery-notice{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
}
body.vorevia-cart-page #vv-cart-delivery-anchor,
body.woocommerce-cart #vv-cart-delivery-anchor{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%;
  box-sizing:border-box;
  margin:0 0 20px;
}
body.vorevia-cart-page #vv-cart-delivery-anchor .vv-shipping-progress,
body.woocommerce-cart #vv-cart-delivery-anchor .vv-shipping-progress{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
@media (max-width:767px){
  body.vorevia-cart-page #vv-cart-delivery-anchor,
  body.woocommerce-cart #vv-cart-delivery-anchor{margin-bottom:14px;}
}


/* =========================================================
   V6.18.47 — HEADER-ANCHORED BASKET DELIVERY NOTICE
   Rendered directly after the site header so WooCommerce blocks cannot
   replace or remove it. Existing cart-notices.js updates the value live.
   ========================================================= */
.vv-basket-delivery-shell{
  background:#fff;
  border-bottom:1px solid #e5e7e8;
}
.vv-basket-delivery-shell .vv-wrap{
  padding-top:18px;
  padding-bottom:18px;
}
.vv-basket-delivery-shell #vv-cart-delivery-anchor{
  margin:0;
}
@media (max-width:767px){
  .vv-basket-delivery-shell .vv-wrap{
    padding-top:12px;
    padding-bottom:12px;
  }
}


/* =========================================================
   V6.18.48 — BASKET TOTALS DELIVERY NOTICE PLACEMENT
   Place the free-delivery progress notice inside the Basket totals panel,
   immediately before the Basket totals heading. This keeps the notice close
   to the order value it describes and removes the detached full-width block.
   ========================================================= */
.vv-basket-delivery-shell{display:none!important;}
body.woocommerce-cart .cart_totals #vv-cart-delivery-anchor{
  margin:0 0 20px!important;
  padding:0 0 20px!important;
  border-bottom:1px solid rgba(255,255,255,.18)!important;
}
body.woocommerce-cart .cart_totals #vv-cart-delivery-anchor .vv-shipping-progress{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#fff!important;
}
body.woocommerce-cart .cart_totals #vv-cart-delivery-anchor .vv-shipping-progress__copy{
  margin-bottom:10px!important;
}
body.woocommerce-cart .cart_totals #vv-cart-delivery-anchor .vv-shipping-progress__copy>span{
  color:#fff!important;
  font-size:11px!important;
  letter-spacing:.09em!important;
}
body.woocommerce-cart .cart_totals #vv-cart-delivery-anchor .vv-shipping-progress__copy p{
  color:#d7e0e4!important;
  font-size:12px!important;
  line-height:1.45!important;
}
body.woocommerce-cart .cart_totals #vv-cart-delivery-anchor .vv-shipping-progress__track{
  background:rgba(255,255,255,.22)!important;
  height:4px!important;
}
body.woocommerce-cart .cart_totals #vv-cart-delivery-anchor .vv-shipping-progress__track i{
  background:#fff!important;
}
@media (max-width:767px){
  body.woocommerce-cart .cart_totals #vv-cart-delivery-anchor{
    margin-bottom:18px!important;
    padding-bottom:18px!important;
  }
}
/* =========================================================
   V6.18.56 — RESEARCH ARCHIVE PAGINATION POLISH
   WordPress paginate_links(type=list) outputs a UL. Keep the
   controls compact, aligned and consistent across breakpoints.
   ========================================================= */
.vv-hub-pagination{
  margin-top:38px;
}
.vv-hub-pagination ul.page-numbers{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.vv-hub-pagination ul.page-numbers li{
  list-style:none;
  margin:0;
  padding:0;
}
.vv-hub-pagination ul.page-numbers a.page-numbers,
.vv-hub-pagination ul.page-numbers span.page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  height:44px;
  margin:0;
  padding:0 14px;
  border:1px solid #d8d8d4;
  background:#fff;
  color:#111;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.vv-hub-pagination ul.page-numbers a.page-numbers:hover,
.vv-hub-pagination ul.page-numbers a.page-numbers:focus-visible{
  background:#f3f3f0;
  border-color:#111;
  outline:none;
}
.vv-hub-pagination ul.page-numbers span.page-numbers.current{
  background:#111;
  color:#fff;
  border-color:#111;
}
.vv-hub-pagination ul.page-numbers .prev,
.vv-hub-pagination ul.page-numbers .next{
  min-width:auto;
  padding-left:18px;
  padding-right:18px;
}
@media (max-width:767px){
  .vv-hub-pagination{margin-top:30px}
  .vv-hub-pagination ul.page-numbers{gap:8px}
  .vv-hub-pagination ul.page-numbers a.page-numbers,
  .vv-hub-pagination ul.page-numbers span.page-numbers{
    min-width:42px;
    height:42px;
    padding:0 12px;
    font-size:13px;
  }
  .vv-hub-pagination ul.page-numbers .prev,
  .vv-hub-pagination ul.page-numbers .next{
    padding-left:14px;
    padding-right:14px;
  }
}


/* =========================================================
   V6.18.60 — RESEARCH INTERNAL LINKING ARCHITECTURE
   Compact, visible, server-rendered links connecting the homepage,
   Research & Insights hub and every curated research archive.
   ========================================================= */
.vv-research-link-network{
  background:#f4f4f1;
  color:#111315;
  border-top:1px solid #deded8;
  border-bottom:1px solid #deded8;
  padding:44px 0;
}
.vv-research-link-network .vv-kicker{color:#596168}
.vv-research-link-network h2{
  margin:6px 0 10px;
  font-size:clamp(24px,2.2vw,36px);
  line-height:1.08;
}
.vv-research-link-network> .vv-wrap > p,
.vv-research-link-network .vv-research-network-copy{
  margin:0 0 22px;
  max-width:820px;
  color:#555d62;
  font-size:14px;
  line-height:1.65;
}
.vv-research-network-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
  padding:0;
}
.vv-research-network-links a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:10px 14px;
  border:1px solid #cfd2cf;
  background:#fff;
  color:#111315;
  font-size:12px;
  font-weight:700;
  letter-spacing:.025em;
  line-height:1.2;
}
.vv-research-network-links a:hover,
.vv-research-network-links a:focus-visible{
  border-color:#111315;
  background:#111315;
  color:#fff;
  outline:none;
}
.vv-research-network-links a.vv-research-network-primary{
  background:#111315;
  color:#fff;
  border-color:#111315;
}
.vv-archive-topic-network{
  margin-top:34px;
  padding-top:28px;
  border-top:1px solid #deded8;
}
.vv-archive-topic-network h3{
  margin:0 0 8px;
  font-size:16px;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.vv-archive-topic-network p{
  margin:0 0 16px;
  color:#5b6165;
  font-size:13px;
}
@media (max-width:767px){
  .vv-research-link-network{padding:32px 0}
  .vv-research-network-links{gap:8px}
  .vv-research-network-links a{
    width:100%;
    justify-content:space-between;
    min-height:44px;
    padding:11px 13px;
  }
  .vv-archive-topic-network{margin-top:28px;padding-top:24px}
}


/* =========================================================
   V6.18.61 — MOBILE RESEARCH TOPICS VISIBILITY FIX
   Keeps the approved desktop treatment unchanged while ensuring the
   Explore Research Topics network remains visible and usable on mobile.
   ========================================================= */
@media (max-width:767px){
  .vv-seo-context .vv-research-link-network,
  .vv-research-link-network{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    max-width:none!important;
    position:relative!important;
    overflow:visible!important;
    padding:30px 0!important;
    margin:28px 0 0!important;
  }
  .vv-research-link-network .vv-wrap{
    display:block!important;
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:0!important;
  }
  .vv-research-link-network .vv-kicker,
  .vv-research-link-network h2,
  .vv-research-link-network .vv-research-network-copy,
  .vv-research-link-network .vv-research-network-links{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  .vv-research-link-network h2{
    font-size:28px!important;
    line-height:1.05!important;
    margin:6px 0 10px!important;
  }
  .vv-research-link-network .vv-research-network-copy{
    font-size:14px!important;
    line-height:1.55!important;
    margin:0 0 16px!important;
  }
  .vv-research-network-links{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
  }
  .vv-research-network-links a{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    padding:10px 11px!important;
    align-items:center!important;
    justify-content:space-between!important;
    font-size:11px!important;
    line-height:1.22!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  .vv-research-network-links a.vv-research-network-primary,
  .vv-research-network-links a:nth-child(8),
  .vv-research-network-links a:nth-child(9){
    grid-column:1 / -1!important;
  }
}
@media (max-width:430px){
  .vv-research-network-links{grid-template-columns:1fr!important;}
  .vv-research-network-links a{grid-column:auto!important;font-size:12px!important;}
}
@media (orientation:landscape) and (max-height:520px) and (min-width:568px) and (max-width:1024px){
  .vv-research-link-network{display:block!important;visibility:visible!important;opacity:1!important;padding:24px 0!important;}
  .vv-research-link-network .vv-wrap{width:calc(100% - 32px)!important;}
  .vv-research-network-links{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;}
  .vv-research-network-links a{display:flex!important;width:100%!important;min-height:40px!important;padding:8px 10px!important;font-size:10px!important;}
  .vv-research-network-links a.vv-research-network-primary{grid-column:auto!important;}
}


/* =========================================================
   V6.18.62 — STANDALONE RESEARCH TOPICS SECTION
   Moves Explore Research Topics outside the SEO context wrapper so it
   renders consistently on desktop, tablet, portrait and landscape mobile.
   ========================================================= */
.vv-research-link-network-standalone{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  background:#f5f5f2;
  color:#071c28;
  border-top:1px solid #d8d8d2;
  padding:38px 0 44px;
}
.vv-research-link-network-standalone .vv-wrap{
  display:block!important;
  width:min(1220px,calc(100% - 40px));
  max-width:1220px;
  margin:0 auto;
}
@media (max-width:767px){
  .vv-research-link-network-standalone{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    padding:28px 0 32px!important;
    margin:0!important;
  }
  .vv-research-link-network-standalone .vv-wrap{
    display:block!important;
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:0!important;
  }
  .vv-research-link-network-standalone .vv-research-network-links{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .vv-research-link-network-standalone .vv-research-network-links a{
    display:flex!important;
    width:100%!important;
    min-height:46px!important;
    padding:10px 12px!important;
    align-items:center!important;
    justify-content:space-between!important;
    white-space:normal!important;
  }
}
@media (orientation:landscape) and (max-height:520px) and (min-width:568px) and (max-width:1024px){
  .vv-research-link-network-standalone{padding:22px 0 26px!important;}
  .vv-research-link-network-standalone .vv-wrap{width:calc(100% - 32px)!important;}
  .vv-research-link-network-standalone .vv-research-network-links{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;}
  .vv-research-link-network-standalone .vv-research-network-links a{min-height:40px!important;padding:8px 10px!important;font-size:10px!important;}
}


/* =========================================================
   V6.18.63 — RESEARCH TOPICS CONSISTENCY PASS
   - Homepage order is handled in front-page.php: topics before FAQ.
   - Portrait mobile uses one-column topic navigation consistently.
   - Desktop and landscape layouts remain unchanged.
   ========================================================= */
@media (max-width:767px) and (orientation:portrait){
  .vv-research-link-network-standalone .vv-research-network-links,
  .vv-research-network-links,
  .vv-hub-topic-grid{
    grid-template-columns:1fr!important;
  }
  .vv-research-link-network-standalone .vv-research-network-links a,
  .vv-research-network-links a{
    grid-column:auto!important;
  }
  .vv-hub-topic-card{
    grid-column:auto!important;
    width:100%!important;
  }
}


/* =========================================================
   V6.18.64 — Latest Articles refinement
   Evergreen research-library copy plus conservative desktop
   grid containment. Existing topic-navigation layouts untouched.
   ========================================================= */
.vv-hub-section-copy p{margin:0 0 16px;color:#555;line-height:1.7}
.vv-hub-article-grid{width:100%;max-width:100%;min-width:0}
.vv-hub-article-grid>*{min-width:0;max-width:100%}
.vv-hub-article-card{width:100%;max-width:100%;overflow:hidden}
.vv-hub-article-card h3,.vv-hub-article-card h2{overflow-wrap:anywhere;word-break:normal}
@media(min-width:1025px){
  .vv-hub-article-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
}


/* =========================================================
   V6.18.65 — RESEARCH NAVIGATION REFINEMENT
   - Makes the Latest Articles "Browse all research articles" action a
     prominent VOREVIA CTA across desktop, tablet and mobile.
   - Explicitly locks homepage Research Topics before Common Questions on
     every breakpoint. No product/cart/checkout changes.
   ========================================================= */
.vv-hub-latest .vv-hub-browse-all{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  min-height:52px!important;
  margin-top:16px!important;
  padding:14px 18px!important;
  background:#111315!important;
  border:1px solid #111315!important;
  color:#fff!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.07em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease!important;
}
.vv-hub-latest .vv-hub-browse-all:hover,
.vv-hub-latest .vv-hub-browse-all:focus-visible{
  background:#fff!important;
  color:#111315!important;
  border-color:#111315!important;
  outline:none!important;
}
.vv-hub-latest .vv-hub-browse-all span{
  font-size:18px!important;
  line-height:1!important;
}

/* The homepage research context contains four direct children. Making that
   rail explicitly ordered removes any breakpoint-specific reflow ambiguity. */
body.home .vv-seo-context > .vv-wrap{
  display:flex!important;
  flex-direction:column!important;
}
body.home .vv-seo-context > .vv-wrap > .vv-seo-context-grid{order:1!important;}
body.home .vv-seo-context > .vv-wrap > .vv-seo-support-copy{order:2!important;}
body.home .vv-seo-context > .vv-wrap > .vv-research-link-network-standalone{order:3!important;}
body.home .vv-seo-context > .vv-wrap > .vv-home-faq{order:4!important;}

@media (max-width:767px){
  .vv-hub-latest .vv-hub-browse-all{
    display:flex!important;
    width:100%!important;
    min-height:56px!important;
    margin-top:18px!important;
    padding:15px 18px!important;
    font-size:12px!important;
  }
  body.home .vv-seo-context > .vv-wrap > .vv-research-link-network-standalone{
    margin-top:28px!important;
  }
  body.home .vv-seo-context > .vv-wrap > .vv-home-faq{
    margin-top:0!important;
  }
}

@media (orientation:landscape) and (max-height:520px) and (min-width:568px) and (max-width:1024px){
  .vv-hub-latest .vv-hub-browse-all{
    width:auto!important;
    min-height:44px!important;
    padding:11px 15px!important;
    font-size:10px!important;
  }
}


/* =========================================================
   V6.18.66 — RESEARCH LAYOUT CONSISTENCY
   ========================================================= */
.vv-home-research-navigation{background:#f5f5f2;color:#071c28;border-top:1px solid #d8d8d2}
.vv-home-research-navigation-inner{display:flex!important;flex-direction:column!important;width:min(1220px,calc(100% - 40px));margin:0 auto;padding:0 0 54px}
.vv-home-research-navigation .vv-research-link-network-standalone{order:1!important;width:100%!important;margin:0!important;padding:38px 0 44px!important;border-top:0!important;background:transparent!important}
.vv-home-research-navigation .vv-research-link-network-standalone>.vv-wrap{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.vv-home-research-navigation .vv-home-faq{order:2!important;width:100%!important;margin-top:0!important}
.vv-hub-quality-link-refined{padding:76px 0;background:#fff}
.vv-hub-quality-inner-refined{display:block!important}
.vv-hub-quality-copy{max-width:780px}
.vv-hub-quality-copy p{max-width:720px;margin:0 0 24px;color:#555;line-height:1.7}
.vv-hub-quality-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-top:4px!important}
@media (max-width:767px){
 .vv-home-research-navigation-inner{width:calc(100% - 28px)!important;padding-bottom:36px!important}
 .vv-home-research-navigation .vv-research-link-network-standalone{order:1!important;padding:28px 0 32px!important}
 .vv-home-research-navigation .vv-home-faq{order:2!important;margin-top:0!important;padding-top:26px!important}
 .vv-hub-quality-link-refined{padding:50px 0!important}
 .vv-hub-quality-copy p{margin-bottom:20px}
 .vv-hub-quality-button{width:100%!important;justify-content:space-between!important}
}
@media (orientation:landscape) and (max-height:520px) and (min-width:568px) and (max-width:1024px){
 .vv-home-research-navigation-inner{width:calc(100% - 32px)!important;padding-bottom:28px!important}
 .vv-home-research-navigation .vv-research-link-network-standalone{order:1!important;padding:22px 0 26px!important}
 .vv-home-research-navigation .vv-home-faq{order:2!important;margin-top:0!important;padding-top:22px!important}
}
