/* ============================================================
   VENOM SCRIPTS — Theme v8 "Refined" (venom.css)
   Neutral dark UI. Green is reserved for primary actions only.
   Loaded after shared.css. One coherent layer.
   ============================================================ */

/* ---------- 1. Tokens ---------- */
:root{
  --vn-green:#a9f60e;
  --vn-green-2:#baff33;
  --vn-green-ink:#0b1500;
  --vn-bg:#0b0b0c;
  --vn-bg-2:#0f0f11;
  --vn-surface:#131316;
  --vn-surface-2:#18181c;
  --vn-surface-3:#1e1e23;
  --vn-panel:rgba(255,255,255,.03);
  --vn-panel-2:rgba(255,255,255,.05);
  --vn-line:rgba(255,255,255,.07);
  --vn-line-2:rgba(255,255,255,.12);
  --vn-line-3:rgba(255,255,255,.2);
  --vn-line-g:rgba(255,255,255,.18);
  --vn-text:#f4f4f5;
  --vn-text-2:#a1a1aa;
  --vn-text-3:#71717a;
  --vn-danger:#ff5c5c;
  --vn-discord:#5865f2;
  --vn-r:16px; --vn-r-sm:12px; --vn-r-xs:8px;
  --vn-shadow:0 24px 60px -30px rgba(0,0,0,.85);
  --vn-glow:0 0 0 1px rgba(255,255,255,.08);
  --vn-font:"Sora",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --vn-display:"Unbounded","Sora",-apple-system,sans-serif;
  --vn-container:1200px;
  --vn-gutter:24px;
  --vn-header-h:64px;
  --vn-header-top:14px;
  --vn-ease:cubic-bezier(.2,.7,.2,1);
  /* Tebex base variables -> brand */
  --color-primary:var(--vn-green);
  --color-primary-hover:var(--vn-green-2);
  --color-primary-text:var(--vn-green-ink);
  --color-primary-text-hover:var(--vn-green-ink);
  --color-bg:var(--vn-bg);
  --color-brighter-bg:var(--vn-surface);
  --color-text:var(--vn-text);
  --color-text-secondary:var(--vn-text-2);
  --color-sale-banner-bg:var(--vn-surface-2);
  --color-sale-banner-text:var(--vn-text);
  --bg-image:none;
}
@media (max-width:600px){:root{--vn-gutter:16px;--vn-header-h:56px;--vn-header-top:8px;}}

/* ---------- 2. Base ---------- */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;color-scheme:dark;}
html,html body{overflow-x:clip;}
html body{background:var(--vn-bg);color:var(--vn-text);font-family:var(--vn-font);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;}
html body h1,html body h2,html body h3,html body h4{font-family:var(--vn-font);color:#fff;letter-spacing:-.01em;}
::selection{background:rgba(169,246,14,.3);color:#fff;}
:focus-visible{outline:2px solid var(--vn-green);outline-offset:3px;border-radius:6px;}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--vn-green);outline-offset:3px;}
body::before,body::after{content:none;}
#vn-bg-canvas{display:none;}
.site{display:block !important;gap:0 !important;min-height:100vh;padding:0 !important;font-size:15px;}
.site-content,.site-footer-inner,.site-header{max-width:none !important;padding:0 !important;}
.vn-container{width:100%;max-width:var(--vn-container);margin:0 auto;padding:0 var(--vn-gutter);}
.vn-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
img{max-width:100%;}
*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) var(--vn-bg);}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-track{background:var(--vn-bg);}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border-radius:10px;border:2px solid var(--vn-bg);}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.28);}

/* ---------- 3. Type ---------- */
.vn-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--vn-text-3);}
.vn-eyebrow .vn-dot{width:5px;height:5px;border-radius:50%;background:var(--vn-green);}
.vn-accent{color:var(--vn-green);}
.vn-section{padding:80px 0;}
.vn-section-alt{position:relative;}
.vn-section-alt::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--vn-bg-2);border-top:1px solid var(--vn-line);border-bottom:1px solid var(--vn-line);}
.vn-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px;}
.vn-section-head h2,.vn-h2{font-family:var(--vn-display);font-size:clamp(24px,2.8vw,34px);font-weight:600;line-height:1.12;letter-spacing:-.02em;margin:10px 0 0;}
.vn-section-head p,.vn-sub{margin:10px 0 0;color:var(--vn-text-2);font-size:15px;max-width:560px;}
.vn-section-head.is-center{flex-direction:column;align-items:center;text-align:center;}
.vn-section-head.is-center p{margin-left:auto;margin-right:auto;}
.vn-link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--vn-text-2);white-space:nowrap;transition:color .2s;}
.vn-link-arrow svg{width:16px;height:16px;transition:transform .2s;}
.vn-link-arrow:hover{color:#fff;}
.vn-link-arrow:hover svg{transform:translateX(3px);}
@media (max-width:640px){.vn-section{padding:56px 0;}.vn-section-head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px;}.vn-section-head.is-center{align-items:center;}}

/* ---------- 4. Buttons ---------- */
.vn-btn,.btn-primary,.btn-secondary,.btn-tertiary{font-family:var(--vn-font);}
.vn-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:46px;padding:0 20px;border-radius:12px;font-weight:600;font-size:14.5px;line-height:1;white-space:nowrap;cursor:pointer;text-decoration:none;border:1px solid transparent;transition:transform .18s var(--vn-ease),background .2s,border-color .2s,color .2s,box-shadow .2s;}
.vn-btn svg{width:17px;height:17px;flex:none;}
.vn-btn:active{transform:translateY(1px);}
.vn-btn-primary,.btn-primary{background:var(--vn-green);color:var(--vn-green-ink) !important;border-color:var(--vn-green);box-shadow:none;}
.vn-btn-primary:hover,.btn-primary:hover{background:var(--vn-green-2);border-color:var(--vn-green-2);transform:translateY(-1px);box-shadow:none;}
.vn-btn-white{background:#fff;color:#0b0b0c !important;border-color:#fff;}
.vn-btn-white:hover{background:#e9e9ec;border-color:#e9e9ec;transform:translateY(-1px);}
.vn-btn-ghost,.btn-secondary{background:transparent;color:var(--vn-text) !important;border-color:var(--vn-line-2);}
.vn-btn-ghost:hover,.btn-secondary:hover{background:rgba(255,255,255,.06);border-color:var(--vn-line-3);color:#fff !important;transform:translateY(-1px);}
.vn-btn-discord{background:var(--vn-discord);color:#fff !important;border-color:var(--vn-discord);}
.vn-btn-discord:hover{background:#6b76f5;border-color:#6b76f5;transform:translateY(-1px);}
.vn-btn-lg{height:52px;padding:0 26px;font-size:15.5px;}
.vn-btn-sm{height:38px;padding:0 14px;font-size:13.5px;border-radius:10px;}
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:auto;min-height:46px;padding:0 20px;border-radius:12px;font-weight:600;font-size:14.5px;border:none;transition:transform .18s var(--vn-ease),background .2s;}
.btn-secondary,.btn-tertiary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border-radius:12px;font-weight:600;font-size:14.5px;border:1px solid var(--vn-line-2);transition:all .2s;}
.btn-tertiary{background:transparent;color:var(--vn-text);}
.btn-tertiary:hover{background:var(--vn-panel-2);}
.vn-pill{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:11px;color:var(--vn-text-2);background:transparent;border:1px solid var(--vn-line-2);transition:all .2s;position:relative;}
.vn-pill svg{width:18px;height:18px;display:block;}
.vn-pill:hover{color:#fff;border-color:var(--vn-line-3);background:rgba(255,255,255,.05);}

/* ---------- 5. Promo bar ---------- */
.vn-promo{position:relative;z-index:1100;display:flex;align-items:center;justify-content:center;min-height:38px;padding:6px 44px 6px 16px;background:var(--vn-bg-2);border-bottom:1px solid var(--vn-line);font-size:13px;color:var(--vn-text-2);}
.vn-promo.is-hidden{display:none;}
.vn-promo-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 14px;line-height:1.3;}
.vn-promo-tag{display:inline-flex;align-items:center;gap:7px;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff;}
.vn-promo-tag::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--vn-green);}
.vn-promo-text{font-weight:500;color:var(--vn-text-2);}
.vn-promo-code{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 10px;border-radius:7px;cursor:pointer;font-family:var(--vn-font);font-weight:700;font-size:12.5px;letter-spacing:.08em;color:#fff;background:rgba(255,255,255,.05);border:1px dashed var(--vn-line-3);transition:all .2s;}
.vn-promo-code svg{width:13px;height:13px;color:var(--vn-text-3);}
.vn-promo-code:hover{background:rgba(255,255,255,.1);border-style:solid;}
.vn-promo-code.is-copied{background:var(--vn-green);color:var(--vn-green-ink);border-color:var(--vn-green);}
.vn-promo-code.is-copied svg{color:inherit;}
.vn-promo-timer{display:inline-flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums;color:var(--vn-text-3);font-weight:500;}
.vn-promo-timer b{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:24px;padding:0 5px;border-radius:6px;background:rgba(255,255,255,.06);border:1px solid var(--vn-line);color:#fff;font-weight:600;font-size:12.5px;}
.vn-promo-timer i{font-style:normal;font-size:11px;margin-right:3px;}
.vn-promo-close{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--vn-text-3);cursor:pointer;transition:all .2s;background:none;border:0;}
.vn-promo-close:hover{color:#fff;background:rgba(255,255,255,.08);}
.vn-promo-close svg{width:14px;height:14px;}
@media (max-width:640px){.vn-promo{padding:8px 40px 8px 12px;font-size:12px;}.vn-promo-timer{display:none;}}

/* ---------- 6. Header: floating bar ---------- */
.site-header{position:sticky;top:0;z-index:1000;width:100%;margin:0 !important;padding:var(--vn-header-top) 0 0 !important;background:transparent;border:0;-webkit-backdrop-filter:none;backdrop-filter:none;view-transition-name:none;}
.site-header::before{content:none;}
.site-header .site-header-inner{position:relative;display:flex;align-items:center;gap:14px;height:var(--vn-header-h);min-height:0;max-width:var(--vn-container);margin:0 auto !important;padding:0 10px 0 16px !important;width:calc(100% - var(--vn-gutter) * 2) !important;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none;flex-wrap:nowrap;}
.site-header .site-header-inner::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:16px;background:rgba(15,15,17,.74);border:1px solid var(--vn-line-2);-webkit-backdrop-filter:blur(20px) saturate(130%);backdrop-filter:blur(20px) saturate(130%);box-shadow:0 20px 50px -30px rgba(0,0,0,.9);transition:background .3s,border-color .3s,box-shadow .3s;pointer-events:none;}
.site-header.scrolled .site-header-inner::before{background:rgba(12,12,14,.9);box-shadow:0 20px 50px -25px rgba(0,0,0,1);}
.site-header-inner .toggle-navigation{position:static;}
.vn-logo{display:flex;align-items:center;flex:0 0 auto;text-decoration:none;}
.vn-logo img{height:28px;width:auto;display:block;}
.vn-logo-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;font-weight:800;font-size:17px;color:var(--vn-green-ink);background:var(--vn-green);}
.vn-header-sep{width:1px;height:22px;background:var(--vn-line-2);flex:none;}
/* desktop nav */
.site-header-inner > .site-navigation.navigation-horizontal{position:static !important;display:flex;flex:1 1 auto;justify-content:flex-start;min-width:0;margin:0;padding:0;background:transparent;border:0;box-shadow:none;transform:none;width:auto;}
.site-navigation .menu.navigation-list{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0 !important;background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;flex-wrap:nowrap !important;white-space:nowrap;font-size:14px;font-weight:500;line-height:1;}
.site-navigation .menu.navigation-list li{position:relative;margin:0;width:auto;}
.site-navigation .menu.navigation-list > li > a{display:block;position:relative;max-width:none;overflow:visible;padding:10px 12px;border-radius:9px;color:var(--vn-text-2);font-weight:500;text-decoration:none;transition:color .2s,background .2s;}
.site-navigation .menu.navigation-list > li > a:hover{color:#fff;background:rgba(255,255,255,.06);}
.site-navigation .menu.navigation-list > li > a.link-active,.site-navigation .menu.navigation-list > li.active > a{color:#fff;background:rgba(255,255,255,.07);}
.site-navigation .menu.navigation-list > li > a::after{content:none;}
.site-navigation .menu.navigation-list > li > a .vn-ext{width:12px;height:12px;margin-left:5px;vertical-align:-1px;opacity:.5;display:inline-block;}
.site-navigation .close-navigation{display:none;}
/* actions */
.vn-header-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto;margin-left:auto;}
.vn-hbtn,.vn-icon-pill{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:11px;color:var(--vn-text-2);background:transparent;border:1px solid transparent;cursor:pointer;transition:all .2s;text-decoration:none;padding:0;}
.vn-hbtn svg,.vn-icon-pill svg{width:19px;height:19px;display:block;}
.vn-hbtn:hover,.vn-icon-pill:hover{color:#fff;background:rgba(255,255,255,.07);}
.vn-social-pills{display:inline-flex;gap:2px;}
.vn-currency-form{margin:0;position:relative;display:inline-flex;align-items:center;}
.vn-currency-form::after{content:"";position:absolute;right:11px;top:50%;width:5px;height:5px;border-right:1.5px solid var(--vn-text-3);border-bottom:1.5px solid var(--vn-text-3);transform:translateY(-70%) rotate(45deg);pointer-events:none;}
.vn-currency-select{-webkit-appearance:none;appearance:none;height:40px;padding:0 24px 0 12px;border-radius:11px;cursor:pointer;font-family:var(--vn-font);font-weight:600;font-size:13px;color:var(--vn-text-2);background:transparent;border:1px solid transparent;transition:all .2s;}
.vn-currency-select:hover{color:#fff;background:rgba(255,255,255,.07);}
.vn-currency-select option{background:#131316;color:#fff;}
.vn-cart-btn{color:var(--vn-text);}
.vn-cart-count{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:10px;font-weight:800;color:var(--vn-green-ink);background:var(--vn-green);box-shadow:0 0 0 2px #121214;}
.vn-nav-login,.vn-nav-user{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 14px;margin-left:6px;border-radius:11px;font-weight:600;font-size:13.5px;color:#0b0b0c !important;background:#fff;border:1px solid #fff;text-decoration:none;transition:background .2s,transform .18s var(--vn-ease);white-space:nowrap;box-shadow:none;}
.vn-nav-login:hover{background:#e9e9ec;border-color:#e9e9ec;transform:translateY(-1px);}
.vn-nav-login svg{width:15px;height:15px;}
.vn-nav-user{background:transparent;border:1px solid var(--vn-line-2);color:#fff !important;border-radius:11px !important;}
.vn-nav-user .text{color:#fff !important;font-weight:600;}
.vn-nav-user .text-hover{color:var(--vn-danger) !important;font-weight:600;}
.vn-nav-user:hover{border-color:rgba(255,92,92,.45);background:rgba(255,92,92,.06);}
.vn-burger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:0;margin-left:2px;border-radius:11px;background:transparent;border:1px solid var(--vn-line-2);cursor:pointer;}
.vn-burger::before,.vn-burger::after{content:none !important;display:none !important;}
.vn-burger span{display:block;width:17px;height:2px;border-radius:2px;background:#fff;transition:transform .25s,opacity .2s;}
body.show-navigation .vn-burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
body.show-navigation .vn-burger span:nth-child(2){opacity:0;}
body.show-navigation .vn-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.site-sale-banner{max-width:var(--vn-container);margin:12px auto 0;padding:10px 16px;border-radius:10px;font-weight:600;text-align:center;}
@media (max-width:1100px) and (min-width:961px){
  .site-navigation .menu.navigation-list{font-size:13.5px;}
  .site-navigation .menu.navigation-list > li > a{padding:10px 9px;}
  .vn-nav-login{padding:0 11px;}
  .vn-nav-login .vn-nav-login-txt{display:none;}
}
@media (max-width:960px){
  .site-header .site-header-inner{padding:0 8px 0 14px !important;flex-wrap:nowrap;gap:8px;}
  .vn-header-sep{display:none;}
  .vn-burger{display:flex;}
  .vn-header-actions .vn-burger{display:flex !important;}
  .vn-currency-form{display:none;}
  .vn-nav-login{padding:0 11px;margin-left:2px;}
  .vn-nav-login .vn-nav-login-txt{display:none;}
  .site-header-inner > .site-navigation.navigation-horizontal{position:fixed !important;inset:0;z-index:100000;display:block;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);}
  .site-navigation .menu.navigation-list{position:absolute;inset:0 0 0 auto;width:min(86vw,340px);display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:84px 20px 24px !important;background:#101012 !important;border-left:1px solid var(--vn-line) !important;box-shadow:-30px 0 60px rgba(0,0,0,.6);white-space:normal;font-size:17px;line-height:1.3;overflow:hidden auto;transition:translate .3s var(--vn-ease),opacity .3s;}
  body:not(.show-navigation) .site-navigation .menu.navigation-list{translate:100% 0 !important;opacity:1 !important;scale:1 !important;}
  .site-navigation .menu.navigation-list li{width:100%;}
  .site-navigation .menu.navigation-list > li > a{padding:14px 14px;border-radius:12px;color:var(--vn-text);font-weight:600;background:transparent;}
  .site-navigation .menu.navigation-list > li > a.link-active,.site-navigation .menu.navigation-list > li.active > a{color:#fff;background:rgba(255,255,255,.07);}
  .site-navigation .close-navigation{display:flex;position:absolute;top:14px;right:14px;left:auto;z-index:2;width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,.05);border:1px solid var(--vn-line-2);color:#fff;align-items:center;justify-content:center;cursor:pointer;}
  .site-navigation .close-navigation::before{display:none;}
  .site-navigation .close-navigation svg{width:18px;height:18px;}
  .vn-nav-mobile-extra{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:20px;border-top:1px solid var(--vn-line);}
  .vn-nav-mobile-extra a{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;font-size:15px;font-weight:600;color:var(--vn-text-2);background:var(--vn-panel);}
  .vn-nav-mobile-extra a svg{width:18px;height:18px;}
}
@media (min-width:961px){.vn-nav-mobile-extra{display:none;}}

/* ---------- 7. Search overlay ---------- */
.vn-so{position:fixed;inset:0;z-index:1300;display:none;}
.vn-so.is-open{display:block;}
.vn-so-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.vn-so-panel{position:relative;width:min(640px,calc(100% - 32px));margin:min(12vh,120px) auto 0;border-radius:18px;background:#131316;border:1px solid var(--vn-line-2);box-shadow:0 40px 100px -30px rgba(0,0,0,1);overflow:hidden;animation:vnPop .2s var(--vn-ease);}
@keyframes vnPop{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:none}}
.vn-so-field{display:flex;align-items:center;gap:12px;padding:0 16px;height:60px;border-bottom:1px solid var(--vn-line);}
.vn-so-field > svg{width:20px;height:20px;color:var(--vn-text-3);flex:none;}
.vn-so-field input{flex:1;height:100%;min-width:0;background:none;border:0;outline:0;font-family:var(--vn-font);font-size:16px;color:#fff;box-shadow:none;}
.vn-so-field input::placeholder{color:var(--vn-text-3);}
.vn-so-field input::-webkit-search-cancel-button{display:none;}
.vn-so-field kbd{font-family:var(--vn-font);font-size:11px;font-weight:600;color:var(--vn-text-3);padding:3px 7px;border-radius:6px;border:1px solid var(--vn-line-2);cursor:pointer;}
.vn-so-results{max-height:min(56vh,440px);overflow-y:auto;padding:8px;}
.vn-so-hint{margin:0;padding:22px 12px;text-align:center;color:var(--vn-text-3);font-size:13.5px;}
.vn-so-item{display:flex;align-items:center;gap:14px;padding:8px 10px;border-radius:12px;text-decoration:none;color:#fff;transition:background .15s;}
.vn-so-item:hover,.vn-so-item.is-active{background:rgba(255,255,255,.06);}
.vn-so-item img{width:72px;height:44px;border-radius:8px;object-fit:cover;flex:none;background:#0f0f11;border:1px solid var(--vn-line);}
.vn-so-item-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.vn-so-item-name{font-size:14px;font-weight:600;text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vn-so-item-tag{font-size:12.5px;color:var(--vn-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vn-so-item-price{font-size:14px;font-weight:700;color:#fff;flex:none;}
.vn-so-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid var(--vn-line);font-size:12.5px;color:var(--vn-text-3);}
.vn-so-foot a{color:var(--vn-text-2);font-weight:600;}
.vn-so-foot a:hover{color:#fff;}
body.vn-so-lock{overflow:hidden;}

/* ---------- 8. Hero ---------- */
.vn-hero{position:relative;padding:72px 0 64px;overflow:hidden;}
.vn-hero::before{content:none;}
.vn-hero-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center;}
.vn-hero-copy h1{font-family:var(--vn-display);font-size:clamp(34px,4.4vw,56px);font-weight:600;line-height:1.06;letter-spacing:-.03em;margin:20px 0 20px;text-wrap:balance;}
.vn-hero-copy h1 .vn-accent{color:var(--vn-green);text-shadow:none;}
.vn-hero-copy p{font-size:clamp(15.5px,1.2vw,17.5px);line-height:1.6;color:var(--vn-text-2);max-width:520px;margin:0 0 28px;}
.vn-cta{display:flex;gap:12px;flex-wrap:wrap;}
.vn-hero-facts{list-style:none;display:flex;flex-wrap:wrap;gap:10px 20px;margin:32px 0 0;padding:24px 0 0;border-top:1px solid var(--vn-line);}
.vn-hero-facts li{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--vn-text-2);}
.vn-hero-facts svg{width:15px;height:15px;color:var(--vn-text-3);flex:none;}
.vn-hero-facts b{color:#fff;font-weight:600;}
/* featured product card */
.vn-hero-visual{position:relative;min-height:320px;display:flex;align-items:center;justify-content:center;}
.vn-hero-placeholder{width:100%;max-width:520px;aspect-ratio:16/11;border-radius:20px;border:1px dashed var(--vn-line-2);background:var(--vn-panel);}
.vn-hero-visual.is-loaded .vn-hero-placeholder{display:none;}
.vn-hero-card{position:relative;width:100%;max-width:520px;border-radius:20px;overflow:hidden;background:var(--vn-surface);border:1px solid var(--vn-line-2);box-shadow:0 40px 90px -40px rgba(0,0,0,1);opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .6s var(--vn-ease);}
.vn-hero-card[hidden]{display:none;}
.vn-hero-card.is-loaded{opacity:1;transform:none;}
.vn-hero-card-media{display:block;aspect-ratio:16/9;background:#0f0f11;overflow:hidden;}
.vn-hero-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--vn-ease);}
.vn-hero-card:hover .vn-hero-card-media img{transform:scale(1.03);}
.vn-hero-card-body{display:flex;flex-direction:column;gap:10px;padding:18px 20px 20px;}
.vn-hero-card-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--vn-text-3);display:flex;align-items:center;gap:8px;}
.vn-hero-card-eyebrow::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--vn-green);}
.vn-hero-card-name{margin:0;font-family:var(--vn-font);font-size:19px;font-weight:600;line-height:1.25;text-transform:capitalize;letter-spacing:-.01em;}
.vn-hero-card-name a{color:#fff;}
.vn-hero-card-tag{margin:0;font-size:13.5px;color:var(--vn-text-2);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.vn-hero-card-tag:empty{display:none;}
.vn-hero-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;padding-top:14px;border-top:1px solid var(--vn-line);}
.vn-hero-card-foot .product-actions{display:flex !important;align-items:center;gap:10px;margin:0;padding:0;flex:1;flex-wrap:wrap;}
.vn-hero-card-foot .product-actions .price{margin:0 auto 0 0;}
.vn-hero-card-foot .product-actions a.add,.vn-hero-card-foot .product-actions a.remove,.vn-hero-card-foot .product-actions a.subscribe{width:auto;min-width:150px;padding:0 18px;}
.vn-hero-card-foot .product-actions .gift{display:none;}
@media (max-width:980px){.vn-hero{padding:44px 0 40px;}.vn-hero-inner{grid-template-columns:1fr;gap:32px;}.vn-hero-visual{min-height:0;}.vn-hero-card,.vn-hero-placeholder{max-width:none;}}
@media (max-width:600px){.vn-hero-copy h1{font-size:32px;}.vn-cta .vn-btn{flex:1 1 auto;}.vn-hero-card-foot .product-actions a.add,.vn-hero-card-foot .product-actions a.remove{min-width:0;flex:1;}}

/* ---------- 9. Trust strip ---------- */
.vn-trust-strip{border-top:1px solid var(--vn-line);border-bottom:1px solid var(--vn-line);background:var(--vn-bg-2);}
.vn-trust-strip ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}
.vn-trust-strip li{display:flex;align-items:center;gap:12px;padding:18px 20px;border-left:1px solid var(--vn-line);font-size:13.5px;color:var(--vn-text-2);min-width:0;}
.vn-trust-strip li:first-child{border-left:0;padding-left:0;}
.vn-trust-strip li > svg{width:18px;height:18px;color:var(--vn-text-3);flex:none;}
.vn-trust-strip li b{display:block;color:#fff;font-weight:600;font-size:13.5px;line-height:1.3;}
.vn-trust-strip li span{display:block;font-size:12.5px;color:var(--vn-text-3);line-height:1.35;}
@media (max-width:900px){.vn-trust-strip ul{grid-template-columns:repeat(2,minmax(0,1fr));}.vn-trust-strip li{padding:14px 16px;}.vn-trust-strip li:nth-child(odd){border-left:0;padding-left:0;}.vn-trust-strip li:nth-child(n+3){border-top:1px solid var(--vn-line);}}
@media (max-width:480px){.vn-trust-strip ul{grid-template-columns:1fr;}.vn-trust-strip li{border-left:0;padding:12px 0;}.vn-trust-strip li:nth-child(n+2){border-top:1px solid var(--vn-line);}}

/* ---------- 10. Product cards (home + category) ---------- */
.vn-products,.store-products-images,.store-products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;}
@media (max-width:1000px){.vn-products,.store-products-images,.store-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}}
@media (max-width:620px){.vn-products,.store-products-images,.store-products-grid{grid-template-columns:1fr;}}
.store-product:not(.store-product-full){position:relative;display:flex;flex-direction:column;gap:0;height:100%;padding:0;border-radius:var(--vn-r);overflow:hidden;background:var(--vn-surface);border:1px solid var(--vn-line);box-shadow:none;transition:transform .3s var(--vn-ease),border-color .3s,box-shadow .3s;text-align:left;}
.store-product:not(.store-product-full)::after{content:none;}
.store-product:not(.store-product-full):hover{transform:translateY(-3px);border-color:var(--vn-line-3);box-shadow:var(--vn-shadow);}
.store-product:not(.store-product-full) > *{position:relative;z-index:1;}
.vn-card-media{position:relative;}
.store-product .image-link{display:block;position:relative;width:100%;max-width:none;margin:0;aspect-ratio:16/9;overflow:hidden;background:#0f0f11;border-bottom:1px solid var(--vn-line);}
.store-product .image-link .image{width:100%;height:100%;max-width:none;margin:0;object-fit:cover;display:block;transition:transform .6s var(--vn-ease);}
.store-product:hover .image-link .image{transform:scale(1.03);}
.store-product .image-link .image-default{width:100%;height:100%;aspect-ratio:auto;background:var(--vn-surface-2);}
.store-product .image-link .image-default::before{width:64px;height:64px;background-color:rgba(255,255,255,.2);}
.vn-card-flag{position:absolute;top:12px;left:12px;z-index:2;display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:7px;font-size:11.5px;font-weight:700;letter-spacing:.03em;color:var(--vn-green-ink);background:var(--vn-green);box-shadow:none;}
.vn-card-flag.is-new{left:auto;right:12px;background:#fff;color:#0b0b0c;}
.vn-qv-btn{position:absolute;left:50%;top:50%;z-index:3;transform:translate(-50%,-50%) translateY(6px);display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px;border-radius:999px;font-family:var(--vn-font);font-size:13px;font-weight:600;color:#0b0b0c;background:#fff;border:0;cursor:pointer;opacity:0;transition:opacity .2s,transform .25s var(--vn-ease),background .2s;box-shadow:0 10px 30px -10px rgba(0,0,0,.8);white-space:nowrap;}
.vn-qv-btn svg{width:15px;height:15px;}
.vn-qv-btn:hover{background:#e9e9ec;}
.store-product:hover .vn-qv-btn,.vn-qv-btn:focus-visible{opacity:1;transform:translate(-50%,-50%);}
@media (hover:none){
  .vn-qv-btn,.store-product:hover .vn-qv-btn{opacity:1;transform:none;left:auto;right:10px;top:10px;height:32px;width:32px;padding:0;justify-content:center;background:rgba(15,15,17,.85);color:#fff;border:1px solid var(--vn-line-2);box-shadow:none;}
  .vn-qv-btn span{display:none;}
}
.vn-card-body{display:flex;flex-direction:column;flex:1 1 auto;gap:10px;padding:16px 16px 16px;}
.store-product .product-title{margin:0;padding:0;font-size:16px;font-weight:600;line-height:1.3;min-height:0;}
.store-product .product-title a{display:block;color:#fff;transition:color .2s;}
.store-product .product-title a:hover{color:var(--vn-text-2);}
.store-product .product-title .countdown{display:inline-flex;align-items:center;margin:8px 0 0;padding:4px 8px;border-radius:6px;font-size:11.5px;font-weight:600;color:#ffb4b4;background:rgba(255,92,92,.12);}
.vn-card-tag{margin:-4px 0 0;font-size:13px;line-height:1.45;color:var(--vn-text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.vn-fw-tags{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 0;padding:0;}
.vn-fw-tag{display:inline-flex;align-items:center;height:23px;padding:0 8px;border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--vn-text-2);background:rgba(255,255,255,.05);border:1px solid var(--vn-line);line-height:1;}
.vn-fw-tag::before{content:none;}
.vn-fw-tag-all{color:#fff;border-color:var(--vn-line-2);background:rgba(255,255,255,.07);}
/* actions block shared by cards + PDP */
.product-actions,.actions.product-actions{display:grid;grid-template-columns:1fr auto;grid-template-areas:"price price" "main gift";gap:10px;align-items:stretch;margin-top:auto;padding:6px 0 0;position:relative;overflow:visible;}
.product-actions:not(:has(.gift)){grid-template-columns:1fr;grid-template-areas:"price" "main";}
.product-actions .price{grid-area:price;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;margin:0;font-size:14px;line-height:1.2;color:var(--vn-text);width:auto;}
.product-actions .price strong{font-size:21px;font-weight:700;color:#fff;letter-spacing:-.01em;order:0;}
.product-actions .price del,.product-actions .price .discount{order:1;margin:0;font-size:13px;font-weight:500;color:var(--vn-text-3);text-decoration:line-through;text-decoration-thickness:1.5px;}
.product-actions .price .vn-price-badge{order:2;display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:5px;font-size:11px;font-weight:700;letter-spacing:.03em;color:var(--vn-green);background:rgba(169,246,14,.1);}
.product-actions a.add,.product-actions a.remove,.product-actions a.subscribe{grid-area:main;width:100%;min-height:44px;height:44px;margin:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;font-weight:600;font-size:14px;position:relative;flex:none;box-shadow:none;}
.product-actions a.add,.product-actions a.subscribe{background:#fff;color:#0b0b0c !important;border:1px solid #fff;transition:background .2s,border-color .2s,transform .18s var(--vn-ease);}
.product-actions a.add:hover,.product-actions a.subscribe:hover{background:#e9e9ec;border-color:#e9e9ec;transform:translateY(-1px);box-shadow:none;}
.product-actions a.remove{background:transparent;color:#ff8a8a !important;border:1px solid rgba(255,92,92,.35);box-shadow:none;}
.product-actions a.remove:hover{background:rgba(255,92,92,.1);border-color:rgba(255,92,92,.6);color:#fff !important;}
.product-actions a.remove::before{content:none;}
.product-actions a[hidden]{display:none !important;}
.product-actions .gift{grid-area:gift;width:44px;min-width:44px;height:44px;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;color:var(--vn-text-2);background:transparent;border:1px solid var(--vn-line-2);cursor:pointer;flex:none;font-size:0;line-height:0;transition:all .2s;}
.product-actions .gift::before,.product-actions .gift::after{content:none !important;display:none !important;}
.product-actions .gift svg{width:19px;height:19px;display:block;stroke:currentColor;}
.product-actions .gift .vn-gift-tx{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
.product-actions .gift:hover{color:#fff;border-color:var(--vn-line-3);background:rgba(255,255,255,.06);transform:none;}
.product-actions .quantity-field{grid-column:1/-1;width:100%;}
/* loading states */
.product-actions.updating{pointer-events:none;}
.product-actions.updating > *{opacity:1;filter:none;}
.product-actions.updating::before{content:none !important;display:none !important;}
a.add.is-loading,a.remove.is-loading,a.subscribe.is-loading{color:transparent !important;pointer-events:none;cursor:progress;}
a.add.is-loading::after,a.remove.is-loading::after,a.subscribe.is-loading::after{content:"";position:absolute;top:50%;left:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:2.5px solid rgba(11,11,12,.2);border-top-color:#0b0b0c;animation:vnSpin .6s linear infinite;box-sizing:border-box;background:none;opacity:1;transform:none;}
a.remove.is-loading::after{border-color:rgba(255,138,138,.3);border-top-color:#ff8a8a;}
@keyframes vnSpin{to{transform:rotate(360deg)}}
/* the ONE green add button per page: PDP buy box, sticky bar, quick view */
.vn-pdp-actions .product-actions a.add,.vn-pdp-actions .product-actions a.subscribe,.vn-qv-actions .product-actions a.add,.vn-qv-actions .product-actions a.subscribe,.vn-hero-card-foot .product-actions a.add{background:var(--vn-green);border-color:var(--vn-green);color:var(--vn-green-ink) !important;}
.vn-pdp-actions .product-actions a.add:hover,.vn-pdp-actions .product-actions a.subscribe:hover,.vn-qv-actions .product-actions a.add:hover,.vn-qv-actions .product-actions a.subscribe:hover,.vn-hero-card-foot .product-actions a.add:hover{background:var(--vn-green-2);border-color:var(--vn-green-2);}
.vn-pdp-actions a.add.is-loading::after,.vn-qv-actions a.add.is-loading::after,.vn-hero-card-foot a.add.is-loading::after{border-color:rgba(11,21,0,.25);border-top-color:#0b1500;}
/* skeletons */
.vn-skel{border-radius:var(--vn-r);border:1px solid var(--vn-line);background:var(--vn-surface);overflow:hidden;min-height:340px;display:flex;flex-direction:column;}
.vn-skel::before{content:"";display:block;aspect-ratio:16/9;background:linear-gradient(90deg,rgba(255,255,255,.03),rgba(255,255,255,.07),rgba(255,255,255,.03));background-size:200% 100%;animation:vnShimmer 1.4s linear infinite;}
.vn-skel::after{content:"";display:block;flex:1;margin:16px;border-radius:10px;background:linear-gradient(90deg,rgba(255,255,255,.03),rgba(255,255,255,.06),rgba(255,255,255,.03));background-size:200% 100%;animation:vnShimmer 1.4s linear infinite;}
@keyframes vnShimmer{from{background-position:200% 0}to{background-position:-200% 0}}
.vn-products.is-loaded .vn-skel{display:none;}
.vn-empty{grid-column:1/-1;text-align:center;color:var(--vn-text-2);padding:40px 0;}

/* ---------- 11. Quick view ---------- */
.vn-qv{position:fixed;inset:0;z-index:1250;display:none;}
.vn-qv.is-open{display:block;}
.vn-qv-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.65);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.vn-qv-dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(940px,calc(100% - 32px));max-height:calc(100% - 32px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);border-radius:20px;overflow:hidden;background:var(--vn-surface);border:1px solid var(--vn-line-2);box-shadow:0 50px 120px -40px rgba(0,0,0,1);animation:vnPop .22s var(--vn-ease);}
.vn-qv-close{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(15,15,17,.8);border:1px solid var(--vn-line-2);cursor:pointer;transition:background .2s;padding:0;}
.vn-qv-close:hover{background:rgba(255,255,255,.12);}
.vn-qv-close svg{width:16px;height:16px;}
.vn-qv-media{position:relative;background:#0f0f11;min-height:300px;}
.vn-qv-media img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0;}
.vn-qv-media img[hidden]{display:none;}
.vn-qv-flag{position:absolute;top:12px;left:12px;z-index:2;display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:7px;font-size:11.5px;font-weight:700;color:var(--vn-green-ink);background:var(--vn-green);}
.vn-qv-flag[hidden]{display:none;}
.vn-qv-body{display:flex;flex-direction:column;gap:12px;padding:28px 28px 24px;overflow-y:auto;min-width:0;}
.vn-qv-tags .vn-fw-tags{margin:0;}
.vn-qv-title{margin:0;font-family:var(--vn-display);font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.01em;text-transform:capitalize;padding-right:36px;}
.vn-qv-tagline{margin:-4px 0 0;font-size:14px;line-height:1.5;color:var(--vn-text-2);}
.vn-qv-tagline[hidden]{display:none;}
.vn-qv-desc{font-size:13.5px;line-height:1.6;color:var(--vn-text-2);}
.vn-qv-desc[hidden]{display:none;}
.vn-qv-desc p{margin:0;}
.vn-qv-actions{margin-top:auto;padding-top:14px;border-top:1px solid var(--vn-line);}
.vn-qv-actions .product-actions{margin:0;padding:0;}
.vn-qv-more{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--vn-text-2);transition:color .2s;}
.vn-qv-more:hover{color:#fff;}
.vn-qv-more svg{width:15px;height:15px;}
body.vn-qv-lock{overflow:hidden;}
@media (max-width:760px){
  .vn-qv-dialog{grid-template-columns:1fr;top:auto;bottom:0;left:0;transform:none;width:100%;max-height:92vh;border-radius:20px 20px 0 0;overflow-y:auto;display:flex;flex-direction:column;animation:vnSlideUp .25s var(--vn-ease);}
  .vn-qv-media{min-height:0;aspect-ratio:16/9;flex:none;}
  .vn-qv-media img{position:static;}
  .vn-qv-body{padding:20px 18px 28px;overflow:visible;}
}
@keyframes vnSlideUp{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}

/* ---------- 12. Why: value tiles ---------- */
.vn-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
@media (max-width:1000px){.vn-tiles{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.vn-tiles{grid-template-columns:1fr;}}
.vn-tile{position:relative;padding:24px 22px 26px;border-radius:var(--vn-r);background:var(--vn-surface);border:1px solid var(--vn-line);overflow:hidden;transition:transform .3s var(--vn-ease),border-color .3s;}
.vn-tile::after{content:none;}
.vn-tile:hover{transform:translateY(-3px);border-color:var(--vn-line-3);box-shadow:none;}
.vn-tile-ico{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#fff;background:rgba(255,255,255,.06);border:1px solid var(--vn-line);margin-bottom:18px;}
.vn-tile-ico svg{width:19px;height:19px;}
.vn-tile h3{font-size:15.5px;font-weight:600;margin:0 0 6px;}
.vn-tile p{margin:0;font-size:13.5px;line-height:1.55;color:var(--vn-text-2);}
.vn-tile .vn-tile-kpi{display:block;font-family:var(--vn-display);font-size:26px;font-weight:600;color:#fff;letter-spacing:-.02em;margin:2px 0 14px;line-height:1;}
.vn-tile .vn-tile-kpi span{color:var(--vn-text-3);font-size:.55em;font-family:var(--vn-font);font-weight:500;margin-left:5px;letter-spacing:0;}

/* ---------- 13. How it works ---------- */
.vn-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.vn-step{position:relative;padding:26px 24px 28px;border-radius:var(--vn-r);background:var(--vn-surface);border:1px solid var(--vn-line);transition:border-color .3s,transform .3s var(--vn-ease);}
.vn-step:hover{border-color:var(--vn-line-3);transform:translateY(-3px);}
.vn-step-ico{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#fff;background:rgba(255,255,255,.06);border:1px solid var(--vn-line);margin-bottom:18px;}
.vn-step-ico svg{width:19px;height:19px;}
.vn-step-n{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-family:var(--vn-font);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--vn-text-3);}
.vn-step-n::after{content:"";flex:1;height:1px;background:var(--vn-line-2);}
.vn-step h3{margin:0 0 8px;font-size:16.5px;font-weight:600;}
.vn-step p{margin:0;font-size:13.5px;line-height:1.6;color:var(--vn-text-2);}
@media (max-width:860px){.vn-steps{grid-template-columns:1fr;}}

/* ---------- 14. Band ---------- */
.vn-band{position:relative;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:28px;padding:40px 44px;border-radius:22px;overflow:hidden;background:var(--vn-surface);border:1px solid var(--vn-line-2);}
.vn-band::before{content:none;}
.vn-band h2{font-family:var(--vn-display);font-size:clamp(22px,2.4vw,30px);font-weight:600;margin:10px 0 8px;line-height:1.15;letter-spacing:-.01em;}
.vn-band p{margin:0;color:var(--vn-text-2);font-size:15px;max-width:520px;}
.vn-band-actions{position:relative;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;}
@media (max-width:820px){.vn-band{grid-template-columns:1fr;padding:28px 22px;}.vn-band-actions{justify-content:flex-start;}}

/* ---------- 15. FAQ ---------- */
.vn-faq{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:8px;text-align:left;}
.vn-faq-item{border-radius:14px;background:var(--vn-surface);border:1px solid var(--vn-line);overflow:hidden;transition:border-color .2s;}
.vn-faq-item.open{border-color:var(--vn-line-3);background:var(--vn-surface);}
.vn-faq-q{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:17px 20px;cursor:pointer;font-family:var(--vn-font);font-weight:600;font-size:15px;color:#fff;text-align:left;background:none;border:0;}
.vn-faq-q .plus{flex:none;width:26px;height:26px;display:grid;place-items:center;border-radius:8px;color:#fff;background:rgba(255,255,255,.06);font-size:18px;line-height:1;transition:transform .25s var(--vn-ease);}
.vn-faq-item.open .vn-faq-q .plus{transform:rotate(45deg);}
.vn-faq-a{max-height:0;overflow:hidden;padding:0 20px;color:var(--vn-text-2);font-size:14.5px;line-height:1.65;transition:max-height .35s var(--vn-ease),padding .35s;}
.vn-faq-a > div{padding:0;}
.vn-faq-item.open .vn-faq-a{max-height:400px;padding:0 20px 18px;}
.vn-faq-a a{color:#fff;text-decoration:underline;text-underline-offset:3px;}

/* ---------- 16. Footer ---------- */
.site-footer{position:relative;overflow:hidden;margin-top:60px;border-top:1px solid var(--vn-line);background:var(--vn-bg-2);}
.site-footer .site-footer-inner{max-width:var(--vn-container) !important;margin:0 auto;padding:56px var(--vn-gutter) 0 !important;}
.vn-footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;}
.vn-footer-brand .vn-logo{margin-bottom:16px;}
.vn-footer-blurb{margin:0 0 18px;max-width:340px;font-size:14px;line-height:1.65;color:var(--vn-text-2);}
.vn-footer-social{display:flex;gap:8px;}
.vn-footer-col{display:flex;flex-direction:column;gap:10px;}
.vn-footer-col h4{font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--vn-text-3);margin:0 0 6px;}
.vn-footer-col a{font-size:14px;color:var(--vn-text-2);transition:color .2s;width:fit-content;}
.vn-footer-col a:hover{color:#fff;}
.vn-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:40px;padding-top:22px;border-top:1px solid var(--vn-line);}
.site-footer-inner .we-accept,.vn-footer-bottom .we-accept{position:static !important;display:flex;align-items:center;gap:8px;list-style:none;margin:0;padding:0;order:2;flex:none;}
.vn-footer-bottom .we-accept li{display:flex;}
.vn-footer-bottom .we-accept img{height:22px;width:auto;max-width:48px;object-fit:contain;opacity:.65;filter:grayscale(1);}
.vn-footer-bottom .copyright{margin:0;font-size:12.5px;color:var(--vn-text-3);order:1;flex:1 1 320px;}
.vn-footer-wordmark{position:relative;height:clamp(56px,10vw,130px);margin:28px calc(var(--vn-gutter) * -1) -6px;overflow:hidden;pointer-events:none;user-select:none;}
.vn-footer-wordmark span{position:absolute;left:50%;top:4px;transform:translateX(-50%);font-family:var(--vn-display);font-size:clamp(90px,16vw,230px);font-weight:700;line-height:.82;letter-spacing:-.02em;white-space:nowrap;color:rgba(255,255,255,.035);-webkit-text-stroke:0;background:none;}
@media (max-width:900px){.vn-footer-top{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.vn-footer-top{grid-template-columns:1fr;gap:28px;}}

/* ---------- 17. Category / browse ---------- */
.vn-browse{display:block;}
.vn-browse-main{padding:36px var(--vn-gutter) 80px;}
.vn-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px;}
.vn-page-head h1{font-family:var(--vn-display);font-size:clamp(28px,3.2vw,40px);font-weight:600;line-height:1.1;letter-spacing:-.02em;margin:10px 0 0;}
.vn-page-desc{margin:10px 0 0;max-width:640px;color:var(--vn-text-2);font-size:15px;}
.vn-page-desc p{margin:0 0 6px;}
.vn-page-count{margin:0;font-size:13.5px;font-weight:500;color:var(--vn-text-3);white-space:nowrap;}
.vn-page-count b{color:#fff;}
.vn-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 24px;}
.vn-search{position:relative;flex:1 1 320px;max-width:520px;}
.vn-search-wide{width:100%;max-width:none;margin:0;}
.vn-search-ico{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--vn-text-3);pointer-events:none;display:flex;}
.vn-search-input{width:100%;height:46px;padding:0 16px 0 46px;border-radius:12px;font-family:var(--vn-font);font-size:14.5px;color:#fff;background:var(--vn-surface);border:1px solid var(--vn-line-2);transition:border-color .2s,box-shadow .2s;}
.vn-search-input::placeholder{color:var(--vn-text-3);}
.vn-search-input:focus{border-color:var(--vn-line-3);box-shadow:0 0 0 3px rgba(255,255,255,.06);outline:0;}
.vn-toolbar-right{display:flex;align-items:center;gap:8px;margin-left:auto;}
.vn-sort-select{-webkit-appearance:none;appearance:none;height:46px;padding:0 40px 0 16px;border-radius:12px;font-family:var(--vn-font);font-weight:600;font-size:14px;color:#fff;background:var(--vn-surface);border:1px solid var(--vn-line-2);cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#a1a1aa 50%),linear-gradient(135deg,#a1a1aa 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;}
.vn-sort-select option{background:#131316;}
.store-product.vn-hidden{display:none !important;}
.vn-no-results,.no-products{grid-column:1/-1;text-align:center;color:var(--vn-text-2);padding:60px 0;font-size:15px;}
.vn-pagination{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:40px;}
.vn-pagination:empty{display:none;}
.vn-pagination button{min-width:42px;height:42px;padding:0 12px;border-radius:10px;font-family:var(--vn-font);font-weight:600;font-size:14px;color:var(--vn-text-2);background:var(--vn-surface);border:1px solid var(--vn-line);cursor:pointer;transition:all .2s;text-align:center;}
.vn-pagination button:hover{color:#fff;border-color:var(--vn-line-3);}
.vn-pagination button.vn-page-active{color:#0b0b0c;background:#fff;border-color:#fff;}
.vn-pagination button:disabled{opacity:.35;cursor:default;}
.category-description{max-width:none;margin:0;}
.no-products{background:transparent;border-radius:0;}
.vn-empty-state{padding:20px 0 40px;}

/* ---------- 18. Product page (PDP) ---------- */
.vn-pdp{display:block;position:relative;}
.vn-pdp-main{padding:26px var(--vn-gutter) 90px;}
.vn-pdp-backdrop{position:absolute;left:0;right:0;top:0;height:520px;z-index:-1;overflow:hidden;pointer-events:none;}
.vn-pdp-backdrop img{width:100%;height:100%;object-fit:cover;filter:blur(50px) saturate(.5);opacity:.14;transform:scale(1.25);}
.vn-pdp-backdrop::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,12,.2) 0%,rgba(11,11,12,.8) 60%,var(--vn-bg) 100%);}
.vn-pdp-crumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:22px;font-size:13.5px;color:var(--vn-text-3);}
.vn-pdp-crumbs a{display:inline-flex;align-items:center;gap:6px;color:var(--vn-text-2);transition:color .2s;}
.vn-pdp-crumbs a:hover{color:#fff;}
.vn-pdp-crumbs svg{width:15px;height:15px;}
.vn-crumb-sep{opacity:.5;}
.vn-crumb-current{color:#fff;font-weight:600;}
.vn-pdp-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;grid-template-areas:"media buy" "desc buy";gap:28px 40px;align-items:start;}
.vn-pdp-media{grid-area:media;min-width:0;}
.vn-pdp-buy{grid-area:buy;position:sticky;top:calc(var(--vn-header-h) + var(--vn-header-top) + 16px);display:flex;flex-direction:column;gap:16px;}
.vn-pdp-desc-col{grid-area:desc;min-width:0;}
.vn-pdp-desc{grid-area:auto;min-width:0;}
@media (max-width:1080px){.vn-pdp-grid{grid-template-columns:minmax(0,1fr) 360px;gap:24px 28px;}}
@media (max-width:900px){.vn-pdp-grid{grid-template-columns:1fr;grid-template-areas:"media" "buy" "desc";}.vn-pdp-buy{position:static;}}
/* media */
.vn-media-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--vn-r);overflow:hidden;background:#0f0f11;border:1px solid var(--vn-line);}
.vn-media-default{display:grid;place-items:center;background:var(--vn-surface-2);}
.vn-media-default svg{width:72px;height:72px;color:rgba(255,255,255,.25);}
.vn-pdp-media .media-slider{width:100%;}
.vn-pdp-media .media-slider .slider,.vn-pdp-media swiper-container{display:block;width:100%;border-radius:var(--vn-r);overflow:hidden;border:1px solid var(--vn-line);background:#0f0f11;--swiper-navigation-color:#fff;--swiper-navigation-size:22px;--swiper-theme-color:#fff;}
.vn-pdp-media .slide,.vn-pdp-media swiper-slide{aspect-ratio:16/9;background:#0f0f11;overflow:hidden;}
.vn-pdp-media .slide img,.vn-pdp-media .slide-image,.vn-pdp-media .slide iframe,.vn-pdp-media .slide-frame{width:100%;height:100%;object-fit:cover;display:block;border:0;}
.vn-pdp-media .slide-video{background:var(--preview-image) center/cover no-repeat;cursor:pointer;}
.vn-pdp-media .thumbs{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 0;padding:0;}
.vn-pdp-media .thumb{width:112px;aspect-ratio:16/9;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid var(--vn-line);opacity:.7;transition:border-color .2s,opacity .2s;background:#0f0f11;}
.vn-pdp-media .thumb:hover,.vn-pdp-media .thumb.active{border-color:#fff;opacity:1;}
.vn-pdp-media .thumb img,.vn-pdp-media .thumb-image,.vn-pdp-media .thumb-youtube img{width:100%;height:100%;object-fit:cover;display:block;}
.vn-pdp-media .thumb-youtube{position:relative;width:100%;height:100%;}
.vn-pdp-media .thumb-youtube::after{content:"";position:absolute;inset:0;margin:auto;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.6) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M8 5v14l11-7z'/></svg>") center/14px no-repeat;}
.vn-pdp-media .open-lightbox{display:none !important;}
.vn-pdp-media .thumbs:has(> li:only-child){display:none;}
@media (max-width:600px){.vn-pdp-media .thumb{width:84px;}}
/* buy box */
.vn-buybox{padding:22px;border-radius:20px;background:var(--vn-surface);border:1px solid var(--vn-line-2);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;display:flex;flex-direction:column;gap:16px;}
.vn-tag-row{display:flex;flex-wrap:wrap;gap:6px;}
.vn-tag{display:inline-flex;align-items:center;height:23px;padding:0 8px;border-radius:6px;font-size:11px;font-weight:600;color:var(--vn-text-2);background:rgba(255,255,255,.05);border:1px solid var(--vn-line);}
.vn-tag.is-accent{color:#fff;border-color:var(--vn-line-2);background:rgba(255,255,255,.07);}
.vn-pdp-title{margin:0;font-family:var(--vn-display);font-size:clamp(20px,2vw,25px);font-weight:600;line-height:1.2;letter-spacing:-.01em;max-width:none;}
.vn-pdp-tagline{margin:-6px 0 0;font-size:14px;line-height:1.5;color:var(--vn-text-2);}
.vn-pdp-actions .actions.product-actions{padding:4px 0 0;margin:0;}
.vn-pdp-actions .product-actions .price strong{font-size:30px;}
.vn-pdp-actions .product-actions a.add,.vn-pdp-actions .product-actions a.remove,.vn-pdp-actions .product-actions a.subscribe{height:50px;min-height:50px;font-size:15px;}
.vn-pdp-actions .product-actions .gift{width:50px;min-width:50px;height:50px;}
.vn-pdp-actions .quantity-field{display:none !important;}
.vn-buynow{width:100%;height:46px;margin-top:-4px;border-radius:11px;}
.vn-buynow.is-loading{opacity:.6;pointer-events:none;}
.vn-pdp-policy{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:-6px 0 0;font-size:12.5px;color:var(--vn-text-3);}
.vn-pdp-policy a{color:var(--vn-text-2);text-decoration:underline;text-underline-offset:3px;}
.vn-pdp-policy a:hover{color:#fff;}
.vn-trust{list-style:none;margin:0;padding:14px 0 0;border-top:1px solid var(--vn-line);display:grid;gap:9px;}
.vn-trust li{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--vn-text-2);}
.vn-trust li svg{width:16px;height:16px;color:var(--vn-green);flex:none;}
.vn-trust li b{color:#fff;font-weight:600;}
.vn-edition-box{padding:14px 16px;border-radius:12px;background:var(--vn-surface);border:1px solid var(--vn-line);}
.vn-edition-box h4{margin:0 0 4px;font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:8px;}
.vn-edition-box h4 svg{width:15px;height:15px;color:var(--vn-text-2);}
.vn-edition-box p{margin:0;font-size:13px;line-height:1.5;color:var(--vn-text-2);}
.vn-doc-btn{display:flex;align-items:center;gap:10px;width:100%;padding:13px 16px;border-radius:12px;font-weight:600;font-size:14px;color:#fff;background:var(--vn-surface);border:1px solid var(--vn-line-2);transition:all .2s;}
.vn-doc-btn:hover{border-color:var(--vn-line-3);background:var(--vn-surface-2);transform:none;}
.vn-doc-btn .vn-doc-btn-ic{display:flex;color:var(--vn-text-2);}
.vn-doc-btn .vn-doc-btn-tx{flex:1;}
.vn-doc-btn .vn-doc-btn-arrow{transition:transform .2s;}
.vn-doc-btn:hover .vn-doc-btn-arrow{transform:translateX(3px);}
.vn-compat{padding:18px 20px;border-radius:var(--vn-r);background:var(--vn-surface);border:1px solid var(--vn-line);}
.vn-compat-title{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--vn-text-3);margin-bottom:12px;}
.vn-compat-item{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-top:1px solid var(--vn-line);font-size:13.5px;}
.vn-compat-k{color:var(--vn-text-2);flex:none;}
.vn-compat-v{color:#fff;font-weight:600;text-align:right;}
.vn-compat-v a{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.vn-compat-note{margin:12px 0 10px;font-size:12.5px;color:var(--vn-text-3);}
.vn-ticket-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:44px;border-radius:10px;font-weight:600;font-size:14px;color:#fff;background:var(--vn-discord);transition:filter .15s,transform .15s;}
.vn-ticket-btn:hover{filter:brightness(1.1);transform:translateY(-1px);}
.vn-ticket-btn svg{width:16px;height:16px;}
/* description + enhanced feature cards */
.vn-pdp-desc{margin:0;padding-top:8px;color:#c9c9cf;line-height:1.7;font-size:15px;}
.vn-pdp-desc p{margin:0 0 14px;}
.vn-pdp-desc img{max-width:100%;border-radius:12px;}
.vn-pdp-desc h1,.vn-pdp-desc h2,.vn-pdp-desc h3{margin:26px 0 10px;}
.vn-desc-lead{font-size:16px;line-height:1.7;color:#d4d4d8;margin:0 0 24px;}
.vn-feat-head{display:flex;align-items:center;gap:12px;margin:30px 0 16px;}
.vn-feat-head .vn-feat-bar{width:22px;height:2px;border-radius:2px;background:#fff;flex:none;}
.vn-feat-head h2{font-family:var(--vn-display);font-size:20px;font-weight:600;margin:0;letter-spacing:-.01em;}
.vn-feat-head-sm h3{font-size:17px;font-weight:600;margin:0;}
.vn-feat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
@media (max-width:640px){.vn-feat-grid{grid-template-columns:1fr;}}
.vn-feat-card{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:14px;background:var(--vn-surface);border:1px solid var(--vn-line);transition:border-color .2s,transform .2s;}
.vn-feat-card:hover{border-color:var(--vn-line-3);background:var(--vn-surface);transform:translateY(-2px);}
.vn-feat-ichead{display:flex;align-items:center;gap:12px;}
.vn-feat-card .vn-feat-ic{flex:none;width:36px;height:36px;margin:0;display:flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid var(--vn-line);font-size:18px;line-height:1;}
.vn-feat-card .vn-feat-ic svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.vn-feat-card .vn-feat-tt{margin:0;font-size:14.5px;font-weight:600;color:#fff;text-transform:none;letter-spacing:0;}
.vn-feat-card .vn-feat-bd{font-size:13.5px;line-height:1.6;color:var(--vn-text-2);}
.vn-feat-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;}
@media (max-width:640px){.vn-feat-list{grid-template-columns:1fr;}}
.vn-feat-list li{position:relative;padding-left:26px;font-size:14px;line-height:1.5;color:#c9c9cf;}
.vn-feat-list li::before{content:"";position:absolute;left:0;top:4px;width:16px;height:16px;border-radius:50%;background:rgba(169,246,14,.12) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9f60e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/10px no-repeat;}
/* featured products (rendered by JS) */
.vn-featprod{margin:64px 0 0;padding-top:40px;border-top:1px solid var(--vn-line);}
.vn-featprod .vn-feat-head{margin:0 0 22px;}
.vn-featprod-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
@media (max-width:1000px){.vn-featprod-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:600px){.vn-featprod-grid{grid-template-columns:1fr;}}
.vn-featprod-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--vn-r);background:var(--vn-surface);border:1px solid var(--vn-line);box-shadow:none;transition:transform .3s var(--vn-ease),border-color .3s;}
.vn-featprod-card:hover{transform:translateY(-3px);border-color:var(--vn-line-3);}
.vn-featprod-glow{display:none;}
.vn-featprod-thumb{display:block;width:100%;aspect-ratio:16/9;background:#0f0f11 center/cover no-repeat;border-bottom:1px solid var(--vn-line);}
.vn-featprod-body{display:flex;flex-direction:column;gap:10px;padding:16px;flex:1;}
.vn-featprod-tt{font-size:15.5px;font-weight:600;color:#fff;line-height:1.3;text-transform:capitalize;}
.vn-featprod-desc{font-size:13px;line-height:1.5;color:var(--vn-text-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.vn-featprod-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:6px;}
.vn-featprod-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.vn-featprod-price strong{font-size:19px;font-weight:700;color:#fff;}
.vn-featprod-price del,.vn-featprod-price .discount{font-size:13px;color:var(--vn-text-3);text-decoration:line-through;}
.vn-featprod-price .vn-price-badge{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:5px;font-size:11px;font-weight:700;color:var(--vn-green);background:rgba(169,246,14,.1);}
.vn-featprod-view{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:10px;font-size:13px;font-weight:600;color:#0b0b0c;background:#fff;white-space:nowrap;}
.vn-featprod-view svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s;}
.vn-featprod-card:hover .vn-featprod-view svg{transform:translateX(3px);}
/* sticky buy bar */
.vn-stickybar{position:fixed;left:0;right:0;bottom:0;z-index:900;transform:translateY(110%);transition:transform .35s var(--vn-ease);background:rgba(15,15,17,.92);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--vn-line-2);box-shadow:0 -20px 50px -20px rgba(0,0,0,.9);}
.vn-stickybar.is-visible{transform:translateY(0);}
.vn-stickybar-inner{display:flex;align-items:center;gap:16px;padding:12px var(--vn-gutter);max-width:var(--vn-container);margin:0 auto;}
.vn-stickybar-thumb{width:64px;height:40px;border-radius:8px;object-fit:cover;flex:none;border:1px solid var(--vn-line);}
.vn-stickybar-name{flex:1 1 auto;min-width:0;font-weight:600;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vn-stickybar-price{display:flex;align-items:baseline;gap:8px;font-size:14px;flex:none;}
.vn-stickybar-price strong{font-size:20px;font-weight:700;}
.vn-stickybar-price del,.vn-stickybar-price .discount{color:var(--vn-text-3);text-decoration:line-through;font-size:13px;}
.vn-stickybar-price .vn-price-badge{display:none;}
.vn-stickybar .vn-btn{flex:none;height:44px;}
@media (max-width:640px){.vn-stickybar-thumb,.vn-stickybar-name{display:none;}.vn-stickybar-inner{justify-content:space-between;}}
/* PDP FAQ */
.vn-pdp-faq{margin-top:48px;padding-top:36px;border-top:1px solid var(--vn-line);}
.vn-pdp-faq .vn-feat-head{margin:0 0 16px;}
.vn-pdp-faq .vn-faq{display:flex !important;flex-direction:column;max-width:none;gap:8px;}
.vn-pdp-faq .vn-faq-q{font-size:15px;padding:15px 18px;}

/* ---------- 19. Login page ---------- */
.vn-login-wrap{position:relative;min-height:calc(100vh - 380px);display:flex;align-items:center;justify-content:center;padding:60px var(--vn-gutter);}
.vn-login-bg{display:none;}
.vn-login-card{position:relative;z-index:1;width:100%;max-width:440px;text-align:center;padding:36px 32px 32px;border-radius:22px;background:var(--vn-surface);border:1px solid var(--vn-line-2);box-shadow:none;}
.vn-login-card::before{content:none;}
.vn-login-logo{display:inline-grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border-radius:18px;color:#fff;background:rgba(255,255,255,.06);border:1px solid var(--vn-line);}
.vn-login-title{font-family:var(--vn-display);font-size:22px;font-weight:600;margin:0 0 8px;letter-spacing:-.01em;}
.vn-login-sub{margin:0 auto 24px;max-width:320px;font-size:14.5px;line-height:1.55;color:var(--vn-text-2);}
.vn-login-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:50px;border-radius:12px;font-family:var(--vn-font);font-weight:600;font-size:15px;color:var(--vn-green-ink);background:var(--vn-green);cursor:pointer;border:0;box-shadow:none;transition:transform .18s var(--vn-ease),background .2s;}
.vn-login-btn:hover{transform:translateY(-1px);background:var(--vn-green-2);box-shadow:none;}
.vn-login-form{display:flex;flex-direction:column;gap:14px;text-align:left;}
.vn-login-field{display:flex;flex-direction:column;gap:6px;}
.vn-login-label{font-size:12.5px;font-weight:600;color:var(--vn-text-2);}
.vn-login-form input{height:46px;padding:0 14px;border-radius:12px;font-family:var(--vn-font);color:#fff;background:var(--vn-bg);border:1px solid var(--vn-line-2);}
.vn-login-form input:focus{border-color:var(--vn-line-3);box-shadow:0 0 0 3px rgba(255,255,255,.06);}
.vn-login-perks{list-style:none;margin:22px 0 0;padding:20px 0 0;border-top:1px solid var(--vn-line);display:flex;flex-direction:column;gap:10px;text-align:left;}
.vn-login-perks li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--vn-text-2);}
.vn-login-check{flex:none;width:20px;height:20px;border-radius:50%;background:rgba(169,246,14,.12) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9f60e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/11px no-repeat;}
.vn-login-note{margin:18px 0 0;font-size:12.5px;line-height:1.5;color:var(--vn-text-3);}

/* ---------- 20. CMS / text pages / basket page ---------- */
.vn-cms-page{padding:56px var(--vn-gutter) 80px;}
.site-content.vn-cms-page{padding:56px var(--vn-gutter) 80px !important;}
.vn-cms-wrap{max-width:800px;margin:0 auto;}
.vn-cms-header{margin-bottom:32px;padding-bottom:22px;border-bottom:1px solid var(--vn-line);position:relative;}
.vn-cms-header::after{content:none;}
.vn-cms-title{font-family:var(--vn-display);font-size:clamp(28px,3.6vw,38px);font-weight:600;margin:0;letter-spacing:-.02em;}
.vn-cms-actions{display:flex;flex-wrap:wrap;gap:10px;margin:-8px 0 30px;}
.vn-cms-body,.store-text.text-content{font-size:15.5px;line-height:1.75;color:#b9b9c0;}
.vn-cms-body h1,.vn-cms-body h2,.vn-cms-body h3,.vn-cms-body h4,.store-text h2,.store-text h3{color:#fff;margin:28px 0 10px;font-weight:600;text-align:left;}
.vn-cms-body h2,.store-text h2{margin:38px 0 12px;font-family:var(--vn-display);font-size:20px;letter-spacing:-.01em;}
.vn-cms-body h3{font-size:16.5px;margin:26px 0 8px;}
.vn-cms-body p,.store-text p{margin:0 0 14px;}
.vn-cms-body a,.store-text a{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.vn-cms-body strong,.store-text strong{color:#fff;}
.vn-cms-body ul,.store-text ul{list-style:disc;padding-left:22px;margin:0 0 14px;}
.vn-cms-body ol,.store-text ol{list-style:decimal;padding-left:24px;margin:0 0 14px;}
.vn-cms-body li{display:list-item;margin-bottom:8px;}
.vn-cms-body li::marker{color:var(--vn-text-3);}
.vn-cms-body blockquote{margin:20px 0;padding:12px 18px;border-left:2px solid var(--vn-line-3);background:var(--vn-surface);border-radius:0 10px 10px 0;}
.vn-cms-body pre{margin:14px 0 20px;padding:16px 18px;border-radius:12px;background:var(--vn-surface);border:1px solid var(--vn-line);font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#d4d4d8;overflow:auto;white-space:pre;}
.vn-cms-body code{font:.92em ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:2px 6px;border-radius:6px;background:rgba(255,255,255,.08);color:#fff;}
.vn-cms-body pre code{background:none;padding:0;color:inherit;}
.vn-cms-body table{width:100%;border-collapse:collapse;margin:14px 0 20px;font-size:14px;}
.vn-cms-body th,.vn-cms-body td{padding:10px 12px;border-bottom:1px solid var(--vn-line);text-align:left;}
.vn-cms-body th{color:#fff;font-weight:600;}
.store-text.text-content:not(.vn-cms-body){max-width:820px;margin:0 auto;padding:56px var(--vn-gutter);background:transparent;}
.site-content-widgets .sidebar,.vn-cms-page + .sidebar,body .site-content-widgets > aside.store-sidebar{display:none !important;}
.site-content > .basket{max-width:760px;margin:50px auto;padding:0 var(--vn-gutter);}
.site-content.vn-checkout-page{padding:40px var(--vn-gutter) 80px !important;}
.vn-checkout-title svg{color:var(--vn-text-2) !important;}

/* ---------- 21. Cart drawer ---------- */
.vn-cart-overlay{position:fixed;inset:0;z-index:1200;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .28s,visibility .28s;}
.vn-cart-overlay.is-open{opacity:1;visibility:visible;}
.vn-cart-drawer{position:fixed;top:0;right:0;bottom:0;z-index:1201;width:420px;max-width:92vw;display:flex;flex-direction:column;color:var(--vn-text);font-family:var(--vn-font);background:#101012;border-left:1px solid var(--vn-line-2);box-shadow:-30px 0 80px rgba(0,0,0,.6);transform:translateX(100%);transition:transform .34s var(--vn-ease);}
.vn-cart-drawer.is-open{transform:translateX(0);}
.vn-cd-lock{overflow:hidden;}
.vn-cd-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--vn-line);}
.vn-cd-head-title{display:flex;align-items:center;gap:12px;}
.vn-cd-head-ico{display:none;}
.vn-cd-head-tt{display:flex;flex-direction:row;align-items:baseline;gap:8px;}
.vn-cd-head-name{font-family:var(--vn-display);font-size:16px;font-weight:600;color:#fff;line-height:1.1;}
.vn-cd-head-count{font-size:12.5px;color:var(--vn-text-3);line-height:1.1;}
.vn-cd-head-count .vn-cart-count{position:static;display:inline;min-width:0;height:auto;padding:0;background:none;box-shadow:none;color:var(--vn-text-2);font-size:inherit;font-weight:600;}
.vn-cd-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;color:var(--vn-text-2);background:transparent;border:1px solid var(--vn-line-2);cursor:pointer;transition:all .2s;flex:none;padding:0;}
.vn-cd-close:hover{color:#fff;background:rgba(255,255,255,.08);}
.vn-cd-close svg{width:16px;height:16px;}
.vn-cd-body{flex:1 1 auto;min-height:60px;overflow-y:auto;padding:8px 20px;}
.vn-cd-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;}
.vn-cd-item{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--vn-line);border-radius:0;background:transparent;}
.vn-cd-item:last-child{border-bottom:0;}
.vn-cd-item-thumb{position:relative;display:block;width:80px;height:52px;flex:none;border-radius:9px;overflow:hidden;background:#0f0f11;border:1px solid var(--vn-line);}
.vn-cd-item-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.vn-cd-item-thumb-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:18px;font-weight:700;color:var(--vn-text-2);background:var(--vn-surface-2);}
.vn-cd-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;}
.vn-cd-item-name{font-size:14px;font-weight:600;line-height:1.35;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s;}
.vn-cd-item-name:hover{color:var(--vn-text-2);}
.vn-cd-item-pricing{display:flex;align-items:center;gap:8px;}
.vn-cd-item-price{font-size:13.5px;font-weight:600;color:var(--vn-text);}
.vn-cd-item-orig{font-size:12px;color:var(--vn-text-3);text-decoration:line-through;}
.vn-cd-item-remove{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:none;border-radius:9px;color:var(--vn-text-3);background:transparent;border:1px solid transparent;transition:all .2s;position:relative;}
.vn-cd-item-remove:hover{color:#ff8a8a;background:rgba(255,92,92,.1);border-color:rgba(255,92,92,.25);}
.vn-cd-item-remove svg{width:15px;height:15px;}
.vn-cd-foot{padding:16px 20px 20px;border-top:1px solid var(--vn-line);background:#0d0d0f;}
.vn-cd-summary-row{display:flex;align-items:center;justify-content:space-between;font-size:13.5px;color:var(--vn-text-2);}
.vn-cd-divider{border:0;border-top:1px solid var(--vn-line);margin:12px 0;}
.vn-cd-total{font-size:17px;font-weight:700;color:#fff;}
.vn-cd-total span:last-child{color:#fff;}
.vn-cd-tax-note{margin:6px 0 0;font-size:11.5px;color:var(--vn-text-3);}
.vn-cd-discount-row{color:var(--vn-green);font-weight:600;}
.vn-cd-foot-btns{display:flex;flex-direction:column;gap:8px;margin-top:14px;}
.vn-cd-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;padding:0 18px;border-radius:12px;font-family:var(--vn-font);font-size:14.5px;font-weight:600;cursor:pointer;position:relative;color:var(--vn-green-ink);background:var(--vn-green);border:0;box-shadow:none;overflow:visible;transition:transform .15s,background .2s;}
.vn-cd-btn:hover{transform:translateY(-1px);background:var(--vn-green-2);}
.vn-cd-btn:active{transform:translateY(1px);}
.vn-cd-btn-ghost{background:transparent;color:var(--vn-text);border:1px solid var(--vn-line-2);}
.vn-cd-btn-ghost:hover{background:rgba(255,255,255,.06);}
.vn-cd-checkout{background:var(--vn-green);color:var(--vn-green-ink);}
.vn-cd-lock-ico{flex:none;opacity:.8;}
.vn-cd-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:56px 16px;gap:8px;}
.vn-cd-empty-ico{color:var(--vn-text-3);margin-bottom:6px;}
.vn-cd-empty-title{margin:0;font-size:16px;font-weight:600;color:#fff;}
.vn-cd-empty-sub{margin:0 0 8px;max-width:240px;font-size:13px;color:var(--vn-text-2);}
.vn-cd-login{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 20px;}
.vn-cd-logo{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:18px;}
.vn-cd-logo-img{max-height:28px;max-width:120px;width:auto;object-fit:contain;}
.vn-cd-logo-x{color:var(--vn-text-3);font-size:15px;}
.vn-cd-cfx-img{height:22px;width:auto;}
.vn-cd-login-title{margin:0 0 6px;font-family:var(--vn-display);font-size:19px;font-weight:600;color:#fff;}
.vn-cd-login-sub{margin:0 0 20px;max-width:280px;font-size:13.5px;color:var(--vn-text-2);}
.vn-cd-secure{margin:20px 0 0;padding-top:16px;border-top:1px solid var(--vn-line);width:100%;font-size:12px;color:var(--vn-text-3);}
.vn-cd-help{margin:14px 0 0;font-size:12.5px;}
.vn-cd-help a{color:var(--vn-text-2);}
.vn-cd-help a:hover{color:#fff;}
.vn-cd-coupon-wrap{padding:12px 0 4px;}
.vn-cd-coupon-form{display:flex;gap:8px;}
.vn-cd-coupon-input{flex:1;min-width:0;height:40px;padding:0 12px;border-radius:9px;font-family:var(--vn-font);font-size:13px;color:#fff;background:var(--vn-bg);border:1px solid var(--vn-line-2);transition:border-color .2s;}
.vn-cd-coupon-input:focus{border-color:var(--vn-line-3);outline:0;}
.vn-cd-coupon-btn{height:40px;padding:0 14px;border-radius:9px;font-family:var(--vn-font);font-size:13px;font-weight:600;color:#fff;background:rgba(255,255,255,.08);border:1px solid var(--vn-line-2);cursor:pointer;}
.vn-cd-coupon-btn:hover{background:rgba(255,255,255,.14);}
.vn-cd-coupon-msg{font-size:12px;margin-top:6px;min-height:16px;}
.vn-cd-coupon-msg.success{color:var(--vn-green);}
.vn-cd-coupon-msg.error{color:var(--vn-danger);}
.vn-cd-coupon-applied{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:9px;font-size:13px;color:var(--vn-green);background:rgba(169,246,14,.08);border:1px solid rgba(169,246,14,.25);}
.vn-cd-coupon-applied span{flex:1;}
.vn-cd-coupon-applied strong{color:#fff;}
.vn-cd-coupon-applied button{color:var(--vn-text-2);font-size:16px;cursor:pointer;line-height:1;background:none;border:0;}
.vn-cd-coupon-applied button:hover{color:var(--vn-danger);}
@keyframes vnShake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
.vn-cd-shake{animation:vnShake .4s ease;border-color:var(--vn-danger) !important;}
.vn-cart-busy{opacity:.6;pointer-events:none;cursor:progress;}
.vn-cd-btn.is-loading,.vn-cd-item-remove.is-loading,.vn-cd-checkout.is-loading{color:transparent !important;pointer-events:none;}
.vn-cd-btn.is-loading::after,.vn-cd-item-remove.is-loading::after,.vn-cd-checkout.is-loading::after{content:"";position:absolute;top:50%;left:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:2.5px solid rgba(11,21,0,.25);border-top-color:#0b1500;animation:vnSpin .6s linear infinite;}
.vn-cd-btn-ghost.is-loading::after,.vn-cd-item-remove.is-loading::after{border-color:rgba(255,255,255,.2);border-top-color:#fff;}
.vn-cd-checkout .vn-cd-spin{display:none;}
@media (max-width:480px){.vn-cart-drawer{width:100%;max-width:100vw;}}

/* ---------- 22. Gift popup + Tebex popups ---------- */
.vn-gift-hint{display:block;margin:-4px 0 10px;font-size:12.5px;line-height:1.45;color:var(--vn-text-2);}
.vn-gift-hint b{color:#fff;font-weight:600;}
.vn-gift-err{display:none;margin:8px 0 0;padding:9px 12px;border-radius:10px;font-size:13px;color:#ff9a9a;background:rgba(255,92,92,.12);box-shadow:inset 0 0 0 1px rgba(255,92,92,.35);}
.vn-gift-err.show{display:block;}
form.store-form input.form-control.vn-gift-bad{box-shadow:inset 0 0 0 1px rgba(255,92,92,.6) !important;}
.popup .popup-content{border-radius:18px;border:1px solid var(--vn-line-2);}
.toast{border-radius:12px;font-family:var(--vn-font);}

/* ---------- 23. Motion + polish ---------- */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--vn-ease),transform .6s var(--vn-ease);}
.reveal.in,html:not(.js) .reveal{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
  .reveal{opacity:1;transform:none;}
}
.store-product .product-title a,.vn-pdp-title,.vn-stickybar-name,.vn-crumb-current,.vn-featprod-tt{text-transform:capitalize;}

/* ---------- 24. v8.1 polish ---------- */
.vn-tile .vn-tile-kpi{display:flex;align-items:flex-end;height:42px;margin:0 0 18px;}
.vn-page-desc.category-description,.vn-page-desc.text-content{background:transparent !important;padding:0 !important;border:0 !important;box-shadow:none !important;}
.vn-feat-card .vn-feat-tt{font-size:13.5px;letter-spacing:.02em;}
.vn-qv-media img#vnQvImg{object-fit:contain;z-index:1;}
.vn-qv-media .vn-qv-media-bg{position:absolute;inset:-24px;width:calc(100% + 48px);height:calc(100% + 48px);object-fit:cover;filter:blur(28px) saturate(.8);opacity:.55;z-index:0;}
.vn-qv-media .vn-qv-media-bg[hidden]{display:none;}
.vn-qv-flag{z-index:2;}
body.vn-cd-lock .vn-cart-overlay{opacity:1;visibility:visible;}
.vn-eyebrow .vn-eyebrow-more{display:contents;}
@media (max-width:640px){.vn-promo-tag{display:none;}.vn-eyebrow .vn-eyebrow-more{display:none;}}
@media (max-width:760px){.vn-qv-media img#vnQvImg{position:static;width:100%;height:100%;}}

.vn-promo{z-index:1;}
@media (max-width:960px){
  .site-navigation .menu.navigation-list > li.vn-nav-mobile-extra{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:20px;border-top:1px solid var(--vn-line);}
  .site-navigation .menu.navigation-list > li.vn-nav-mobile-extra > a{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;font-size:15px;font-weight:600;color:var(--vn-text-2);background:var(--vn-panel);}
  .site-navigation .menu.navigation-list > li.vn-nav-mobile-extra > a svg{width:18px;height:18px;flex:none;}
}

/* ---------- 25. v8.2 modern touches: ambient backdrop, mouse effects, measured colour ---------- */
#vn-bg-canvas{display:block;position:fixed;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;opacity:.55;}
body::after{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(900px 520px at 50% -12%,rgba(169,246,14,.07),transparent 60%);}
/* hero: ambient product-art backdrop (parallax via JS) */
.vn-hero{padding:80px 0 72px;}
.vn-hero-bg{position:absolute;inset:-48px;z-index:-1;overflow:hidden;pointer-events:none;will-change:transform;}
.vn-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:68% 42%;opacity:0;filter:blur(34px) saturate(1.2);transform:scale(1.18);transition:opacity 1.8s ease;}
.vn-hero-bg.is-loaded img{opacity:.5;}
.vn-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,12,.6) 0%,rgba(11,11,12,.3) 45%,var(--vn-bg) 100%),linear-gradient(90deg,var(--vn-bg) 0%,rgba(11,11,12,.55) 38%,rgba(11,11,12,.15) 70%,rgba(11,11,12,.5) 100%);}
.vn-hero-visual{will-change:transform;transform-style:preserve-3d;}
.vn-hero-card{box-shadow:0 40px 90px -40px rgba(0,0,0,1),0 0 0 1px rgba(255,255,255,.04),0 40px 90px -50px rgba(169,246,14,.4);}
.vn-hero-card:hover{border-color:rgba(169,246,14,.3);}
.site-header .site-header-inner::before{box-shadow:0 20px 50px -30px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.06);}
/* colour rebalance: green accents, far less white */
.vn-eyebrow{color:var(--vn-green);}
.vn-hero-copy h1 .vn-accent{background:linear-gradient(90deg,#a9f60e,#d9ff70);-webkit-background-clip:text;background-clip:text;color:transparent;}
.vn-btn-primary,.btn-primary{box-shadow:0 10px 30px -14px rgba(169,246,14,.6);}
.vn-btn-primary:hover,.btn-primary:hover{box-shadow:0 14px 34px -14px rgba(169,246,14,.75);}
.product-actions a.add,.product-actions a.subscribe{background:rgba(169,246,14,.1);color:var(--vn-green) !important;border:1px solid rgba(169,246,14,.32);}
.product-actions a.add:hover,.product-actions a.subscribe:hover{background:var(--vn-green);color:var(--vn-green-ink) !important;border-color:var(--vn-green);box-shadow:0 10px 30px -14px rgba(169,246,14,.6);}
a.add.is-loading::after,a.subscribe.is-loading::after{border-color:rgba(169,246,14,.25);border-top-color:var(--vn-green);}
.vn-pdp-actions a.add.is-loading::after,.vn-qv-actions a.add.is-loading::after,.vn-hero-card-foot a.add.is-loading::after{border-color:rgba(11,21,0,.25);border-top-color:#0b1500;}
.vn-nav-login{background:rgba(169,246,14,.1);color:var(--vn-green) !important;border-color:rgba(169,246,14,.3);}
.vn-nav-login:hover{background:var(--vn-green);color:var(--vn-green-ink) !important;border-color:var(--vn-green);}
.vn-hbtn:hover,.vn-icon-pill:hover{color:var(--vn-green);}
.vn-cart-btn:hover{color:var(--vn-green);}
.store-product:not(.store-product-full):hover{border-color:rgba(169,246,14,.35);box-shadow:0 30px 60px -30px rgba(0,0,0,1),0 0 44px -18px rgba(169,246,14,.28);}
.vn-qv-btn{background:rgba(15,15,17,.82);color:#fff;border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.vn-qv-btn:hover{background:var(--vn-green);color:var(--vn-green-ink);border-color:var(--vn-green);}
.vn-fw-tag-all,.vn-tag.is-accent{color:var(--vn-green);border-color:rgba(169,246,14,.3);background:rgba(169,246,14,.07);}
.vn-tile-ico,.vn-step-ico{color:var(--vn-green);background:rgba(169,246,14,.08);border-color:rgba(169,246,14,.2);}
.vn-tile .vn-tile-kpi span{color:var(--vn-green);}
.vn-step-n{color:var(--vn-green);}
.vn-step-n::after{background:linear-gradient(90deg,rgba(169,246,14,.35),transparent);}
.vn-trust-strip li > svg,.vn-hero-facts svg{color:var(--vn-green);}
.vn-hero-card-eyebrow{color:var(--vn-green);}
.vn-section-alt::before{background:linear-gradient(180deg,rgba(169,246,14,.035),rgba(255,255,255,.01));}
.vn-band{background:linear-gradient(120deg,rgba(169,246,14,.09),var(--vn-surface) 58%);border-color:rgba(169,246,14,.18);}
.vn-faq-q .plus{color:var(--vn-green);background:rgba(169,246,14,.1);}
.vn-faq-item.open{border-color:rgba(169,246,14,.3);}
.vn-footer-wordmark span{color:transparent;-webkit-text-stroke:1px rgba(169,246,14,.14);background:linear-gradient(180deg,rgba(169,246,14,.1),rgba(169,246,14,0) 80%);-webkit-background-clip:text;background-clip:text;}
.vn-footer-col a:hover,.vn-link-arrow:hover,.vn-so-foot a:hover,.vn-pdp-crumbs a:hover{color:var(--vn-green);}
.vn-pill:hover{color:var(--vn-green);border-color:rgba(169,246,14,.3);background:rgba(169,246,14,.06);}
.vn-cd-btn:not(.vn-cd-btn-ghost),.vn-cd-checkout{box-shadow:0 10px 30px -14px rgba(169,246,14,.6);}
.vn-pagination button.vn-page-active{color:var(--vn-green-ink);background:var(--vn-green);border-color:var(--vn-green);}
.vn-featprod-view{background:rgba(169,246,14,.1);color:var(--vn-green);border:1px solid rgba(169,246,14,.3);}
.vn-featprod-card:hover .vn-featprod-view{background:var(--vn-green);color:var(--vn-green-ink);}
.vn-so-item-price{color:var(--vn-green);}
.vn-so-item.is-active,.vn-so-item:hover{background:rgba(169,246,14,.07);}
.vn-doc-btn .vn-doc-btn-ic,.vn-edition-box h4 svg{color:var(--vn-green);}
.vn-doc-btn:hover{border-color:rgba(169,246,14,.35);}
.vn-feat-card .vn-feat-ic{background:rgba(169,246,14,.08);border-color:rgba(169,246,14,.2);}
.vn-feat-card .vn-feat-ic svg{stroke:var(--vn-green);}
.vn-feat-card:hover{border-color:rgba(169,246,14,.3);}
.vn-feat-head .vn-feat-bar{background:var(--vn-green);}
.vn-cms-header::after{content:"";position:absolute;bottom:-1px;left:0;width:48px;height:2px;background:var(--vn-green);}
.vn-login-logo{color:var(--vn-green);background:rgba(169,246,14,.08);border-color:rgba(169,246,14,.2);}
.vn-pdp-backdrop img{opacity:.24;filter:blur(50px) saturate(1.05);}
.vn-buybox{border-color:rgba(169,246,14,.16);box-shadow:0 30px 80px -50px rgba(169,246,14,.25);}
.vn-search-input:focus,.vn-cd-coupon-input:focus,.vn-login-form input:focus{border-color:rgba(169,246,14,.4);box-shadow:0 0 0 3px rgba(169,246,14,.1);}
.vn-so-panel{border-color:rgba(169,246,14,.18);}
@media (max-width:980px){.vn-hero-bg img{object-position:60% 30%;}.vn-hero-bg::after{background:linear-gradient(180deg,rgba(11,11,12,.55) 0%,rgba(11,11,12,.7) 50%,var(--vn-bg) 100%);}}
@media (prefers-reduced-motion:reduce){.vn-hero-bg img{transition:none;}}

/* ---------- 26. Documentation (sidebar · content · on-this-page) ---------- */
.site-content.vn-docs-page{padding:0 !important;}
.vn-docs{position:relative;display:grid;grid-template-columns:262px minmax(0,1fr) 224px;gap:0 52px;max-width:1360px;margin:0 auto;padding:26px var(--vn-gutter) 80px;align-items:start;}
.vn-docs-side{position:sticky;top:calc(var(--vn-header-h) + var(--vn-header-top) + 14px);max-height:calc(100vh - var(--vn-header-h) - var(--vn-header-top) - 30px);overflow:auto;padding:2px 8px 20px 2px;scrollbar-width:thin;}
.vn-docs-search-btn{display:flex;align-items:center;gap:10px;width:100%;height:42px;padding:0 12px;margin:0 0 18px;border-radius:11px;font-family:var(--vn-font);font-size:13.5px;color:var(--vn-text-3);background:var(--vn-surface);border:1px solid var(--vn-line-2);cursor:pointer;text-align:left;transition:border-color .2s,color .2s;}
.vn-docs-search-btn:hover{border-color:var(--vn-line-3);color:var(--vn-text-2);}
.vn-docs-search-btn > svg{width:16px;height:16px;flex:none;}
.vn-docs-search-btn > span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vn-docs-search-btn kbd{font-family:var(--vn-font);font-size:10.5px;font-weight:600;padding:2px 6px;border-radius:5px;border:1px solid var(--vn-line-2);color:var(--vn-text-3);white-space:nowrap;}
.vn-docs-group{margin-bottom:22px;}
.vn-docs-group-label{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--vn-text-3);padding:0 10px;margin-bottom:8px;}
.vn-docs-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;}
.vn-docs-nav li{margin:0;}
.vn-docs-link{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border-radius:9px;font-family:var(--vn-font);font-size:13.5px;font-weight:500;color:var(--vn-text-2);text-align:left;background:transparent;border:0;cursor:pointer;transition:background .15s,color .15s;text-decoration:none;line-height:1.3;}
.vn-docs-link:hover{color:#fff;background:rgba(255,255,255,.05);}
.vn-docs-link.is-active{color:var(--vn-green);background:rgba(169,246,14,.08);font-weight:600;}
.vn-docs-ico{width:18px;text-align:center;font-size:14px;flex:none;line-height:1;}
.vn-docs-toggle svg{width:14px;height:14px;margin-left:auto;color:var(--vn-text-3);transition:transform .2s;flex:none;}
.has-sub.is-open > .vn-docs-toggle svg{transform:rotate(90deg);}
.has-sub.is-open > .vn-docs-toggle{color:#fff;}
.vn-docs-nav ul.vn-docs-sub{display:none;margin:2px 0 6px 19px;padding-left:10px;border-left:1px solid var(--vn-line-2);}
.has-sub.is-open > ul.vn-docs-sub{display:flex;}
.vn-docs-sub .vn-docs-link{padding:7px 10px;font-size:13px;}
/* main column */
.vn-docs-main{min-width:0;max-width:800px;}
.vn-docs-crumbs{font-size:12.5px;color:var(--vn-text-3);margin-bottom:14px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.vn-docs-crumbs a{color:var(--vn-text-3);text-decoration:none;}
.vn-docs-crumbs a:hover{color:#fff;}
.vn-docs-crumbs span{opacity:.5;}
.vn-docs-title{font-family:var(--vn-display);font-size:clamp(28px,3.2vw,38px);font-weight:600;letter-spacing:-.02em;line-height:1.1;margin:0 0 10px;}
.vn-docs-sub{margin:0;font-size:16px;color:var(--vn-green);}
.vn-docs-sub[hidden]{display:none;}
.vn-docs-head{padding-bottom:22px;margin-bottom:6px;}
.vn-docs-body{font-size:15.5px;line-height:1.75;color:#c9c9cf;}
.vn-docs-body h2{font-family:var(--vn-display);font-size:22px;font-weight:600;color:#fff;margin:44px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--vn-line);letter-spacing:-.01em;line-height:1.25;}
.vn-docs-body h2:first-child{margin-top:6px;}
.vn-docs-body h3{font-size:17px;font-weight:600;color:#fff;margin:30px 0 10px;line-height:1.3;}
.vn-docs-body h4{font-size:15px;font-weight:600;color:#fff;margin:22px 0 8px;}
.vn-docs-anchor{margin-left:8px;font-weight:400;color:var(--vn-text-3);opacity:0;text-decoration:none;font-family:var(--vn-font);font-size:.85em;transition:opacity .15s;}
.vn-docs-h:hover .vn-docs-anchor,.vn-docs-anchor:focus-visible{opacity:1;}
.vn-docs-body p{margin:0 0 14px;}
.vn-docs-body a{color:var(--vn-green);text-decoration:underline;text-underline-offset:3px;}
.vn-docs-body strong{color:#fff;}
.vn-docs-body ul{list-style:disc;padding-left:22px;margin:0 0 16px;}
.vn-docs-body ol{list-style:decimal;padding-left:24px;margin:0 0 16px;}
.vn-docs-body li{margin-bottom:6px;display:list-item;}
.vn-docs-body li::marker{color:var(--vn-text-3);}
.vn-docs-body code{font:.88em ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:2px 6px;border-radius:6px;background:rgba(255,255,255,.08);color:#fff;border:1px solid var(--vn-line);}
.vn-docs-body table{width:100%;border-collapse:collapse;margin:14px 0 22px;font-size:14px;display:table;}
.vn-docs-body th,.vn-docs-body td{padding:10px 12px;border-bottom:1px solid var(--vn-line);text-align:left;vertical-align:top;}
.vn-docs-body th{color:#fff;font-weight:600;background:rgba(255,255,255,.03);}
.vn-docs-body img{max-width:100%;border-radius:12px;border:1px solid var(--vn-line);}
.vn-docs-body hr{border:0;border-top:1px solid var(--vn-line);margin:28px 0;}
/* code blocks */
.vn-code{margin:16px 0 22px;border-radius:12px;border:1px solid var(--vn-line-2);background:#0e0e10;overflow:hidden;}
.vn-code-head{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 6px 14px;border-bottom:1px solid var(--vn-line);background:rgba(255,255,255,.03);}
.vn-code-lang{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--vn-text-3);}
.vn-code-copy{height:28px;padding:0 10px;border-radius:7px;font-family:var(--vn-font);font-size:12px;font-weight:600;color:var(--vn-text-2);background:transparent;border:1px solid var(--vn-line-2);cursor:pointer;transition:all .15s;}
.vn-code-copy:hover{color:#fff;border-color:var(--vn-line-3);background:rgba(255,255,255,.06);}
.vn-code pre{margin:0;padding:16px 18px;overflow:auto;font:13px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#e4e4e7;white-space:pre;background:transparent;border:0;border-radius:0;}
.vn-code pre code{background:none;border:0;padding:0;font:inherit;color:inherit;}
.vn-docs-body pre:not(.vn-code pre){margin:14px 0 20px;padding:16px 18px;border-radius:12px;background:#0e0e10;border:1px solid var(--vn-line-2);font:13px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#e4e4e7;overflow:auto;white-space:pre;}
.t-c{color:#6b7280;font-style:italic;}
.t-s{color:#d9ff70;}
.t-n{color:#f5a97f;}
.t-k{color:#8ab4ff;}
.t-p{color:#c4b5fd;}
/* callouts */
.vn-callout{display:flex;gap:12px;margin:18px 0 22px;padding:14px 16px;border-radius:12px;border:1px solid;font-size:14.5px;line-height:1.6;}
.vn-callout-ico{flex:none;width:20px;height:20px;display:grid;place-items:center;margin-top:2px;}
.vn-callout-ico svg{width:18px;height:18px;}
.vn-callout-body{min-width:0;flex:1;}
.vn-callout-body > :last-child{margin-bottom:0;}
.vn-callout.is-note{background:rgba(96,165,250,.08);border-color:rgba(96,165,250,.35);color:#dbeafe;}
.vn-callout.is-note .vn-callout-ico{color:#93c5fd;}
.vn-callout.is-tip{background:rgba(169,246,14,.07);border-color:rgba(169,246,14,.3);color:#eaffc7;}
.vn-callout.is-tip .vn-callout-ico{color:var(--vn-green);}
.vn-callout.is-warning{background:rgba(251,191,36,.08);border-color:rgba(251,191,36,.35);color:#fef3c7;}
.vn-callout.is-warning .vn-callout-ico{color:#fbbf24;}
.vn-callout.is-danger{background:rgba(255,92,92,.08);border-color:rgba(255,92,92,.35);color:#fee2e2;}
.vn-callout.is-danger .vn-callout-ico{color:#ff8a8a;}
.vn-docs-body .vn-callout a{color:inherit;}
.vn-docs-body .vn-callout strong{color:inherit;}
.vn-docs-body .vn-callout code{background:rgba(0,0,0,.28);border-color:transparent;color:inherit;}
/* on this page */
.vn-docs-toc{position:sticky;top:calc(var(--vn-header-h) + var(--vn-header-top) + 14px);max-height:calc(100vh - 140px);overflow:auto;font-size:13px;padding-top:2px;}
.vn-docs-toc-label{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--vn-text-3);margin-bottom:10px;}
.vn-docs-toc ul{list-style:none;margin:0;padding:0;border-left:1px solid var(--vn-line-2);}
.vn-docs-toc li{margin:0;}
.vn-docs-toc li a{display:block;padding:5px 0 5px 14px;margin-left:-1px;border-left:1px solid transparent;color:var(--vn-text-2);text-decoration:none;transition:color .15s,border-color .15s;line-height:1.35;}
.vn-docs-toc li.is-h3 a{padding-left:26px;font-size:12.5px;color:var(--vn-text-3);}
.vn-docs-toc li a:hover{color:#fff;}
.vn-docs-toc li a.is-active{color:var(--vn-green);border-left-color:var(--vn-green);}
.vn-docs-toc-links{margin-top:18px;padding-top:14px;border-top:1px solid var(--vn-line);display:flex;flex-direction:column;gap:6px;}
.vn-docs-toc-links a{font-size:12.5px;color:var(--vn-text-3);text-decoration:none;}
.vn-docs-toc-links a:hover{color:#fff;}
/* overview extras */
.vn-docs-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:8px 0 18px;}
.vn-docs-card{display:flex;flex-direction:column;gap:6px;padding:18px 18px 16px;border-radius:14px;background:var(--vn-surface);border:1px solid var(--vn-line-2);text-decoration:none;transition:border-color .2s,transform .2s var(--vn-ease);}
.vn-docs-card:hover{border-color:rgba(169,246,14,.35);transform:translateY(-2px);}
.vn-docs-card-ico{font-size:22px;line-height:1;margin-bottom:4px;}
.vn-docs-card b{font-size:14.5px;color:#fff;font-weight:600;}
.vn-docs-card span:last-child{font-size:12.5px;color:var(--vn-text-3);}
.vn-docs-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 8px;}
.vn-docs-quick-btn{display:flex;align-items:center;justify-content:center;gap:10px;height:56px;border-radius:12px;font-weight:600;font-size:14.5px;color:#fff;background:var(--vn-surface);border:1px solid var(--vn-line-2);text-decoration:none;transition:border-color .2s,background .2s;}
.vn-docs-quick-btn svg{width:18px;height:18px;color:var(--vn-green);}
.vn-docs-quick-btn:hover{border-color:rgba(169,246,14,.35);background:var(--vn-surface-2);}
/* footer prev / next */
.vn-docs-foot{margin-top:56px;padding-top:24px;border-top:1px solid var(--vn-line);}
.vn-docs-pn{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.vn-docs-pn:empty{display:none;}
.vn-docs-pn a{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:12px;border:1px solid var(--vn-line-2);background:var(--vn-surface);text-decoration:none;transition:border-color .2s;}
.vn-docs-pn a:hover{border-color:rgba(169,246,14,.35);}
.vn-docs-pn a.is-prev{grid-column:1;}
.vn-docs-pn a.is-next{grid-column:2;text-align:right;align-items:flex-end;}
.vn-docs-pn small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--vn-text-3);}
.vn-docs-pn b{font-size:14px;color:#fff;font-weight:600;}
.vn-docs-foot-links{margin-top:18px;font-size:13px;}
.vn-docs-foot-links a{color:var(--vn-text-3);text-decoration:none;}
.vn-docs-foot-links a:hover{color:#fff;}
/* docs search results */
.vn-ds-item{flex-direction:column;align-items:flex-start;gap:3px;}
.vn-ds-page{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--vn-text-3);}
.vn-ds-title{font-size:14px;font-weight:600;color:#fff;}
.vn-ds-snip{font-size:12.5px;color:var(--vn-text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45;}
.vn-ds-snip mark{background:rgba(169,246,14,.25);color:#fff;border-radius:3px;padding:0 2px;}
.vn-docs-so .vn-so-results{max-height:min(60vh,520px);}
/* mobile / tablet */
.vn-docs-menu-btn{display:none;}
.vn-docs-backdrop{display:none;}
@media (max-width:1180px){.vn-docs{grid-template-columns:244px minmax(0,1fr);gap:0 36px;}.vn-docs-toc{display:none;}}
@media (max-width:860px){
  .vn-docs{grid-template-columns:1fr;padding-top:14px;}
  .vn-docs-menu-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;margin-bottom:18px;border-radius:10px;font-family:var(--vn-font);font-size:13.5px;font-weight:600;color:#fff;background:var(--vn-surface);border:1px solid var(--vn-line-2);cursor:pointer;width:fit-content;}
  .vn-docs-side{position:fixed;top:0;bottom:0;left:0;z-index:1200;width:min(86vw,320px);max-height:none;padding:20px 16px 30px;background:#101012;border-right:1px solid var(--vn-line-2);transform:translateX(-100%);transition:transform .3s var(--vn-ease);overflow:auto;}
  .vn-docs.is-menu-open .vn-docs-side{transform:none;}
  .vn-docs-backdrop{position:fixed;inset:0;z-index:1199;background:rgba(0,0,0,.55);}
  .vn-docs.is-menu-open .vn-docs-backdrop{display:block;}
  .vn-docs-main{max-width:none;}
  .vn-docs-cards,.vn-docs-quick{grid-template-columns:1fr;}
  .vn-docs-pn{grid-template-columns:1fr;}
  .vn-docs-pn a.is-prev,.vn-docs-pn a.is-next{grid-column:auto;}
}

/* ---------- 27. v8.3 mature pass: calmer type, quieter header, product cards open their page ---------- */
:root{--vn-display:"Sora",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--vn-header-top:12px;}
.vn-hero-copy h1{font-size:clamp(34px,4.2vw,54px);font-weight:700;letter-spacing:-.035em;line-height:1.04;margin:18px 0 18px;}
.vn-section-head h2,.vn-h2{font-size:clamp(24px,2.5vw,32px);font-weight:700;letter-spacing:-.025em;line-height:1.12;}
.vn-page-head h1{font-size:clamp(28px,3vw,38px);font-weight:700;letter-spacing:-.03em;}
.vn-band h2{font-weight:700;letter-spacing:-.02em;}
.vn-pdp-title{font-size:clamp(21px,2vw,26px);font-weight:700;letter-spacing:-.025em;line-height:1.15;}
.vn-cms-title,.vn-login-title,.vn-docs-title{font-weight:700;letter-spacing:-.03em;}
.vn-docs-body h2{font-weight:700;letter-spacing:-.02em;}
.vn-qv-title{font-weight:700;letter-spacing:-.02em;}
.vn-tile .vn-tile-kpi{font-weight:700;letter-spacing:-.03em;}
.vn-footer-wordmark span{font-weight:800;letter-spacing:-.04em;}
.vn-eyebrow{font-size:11px;letter-spacing:.16em;color:var(--vn-text-3);}
.vn-eyebrow .vn-dot{background:var(--vn-green);}
.vn-hero-copy p{color:#b4b4bc;}
/* header: quieter bar */
.site-header .site-header-inner{height:60px;gap:12px;padding:0 8px 0 14px !important;}
.site-header .site-header-inner::before{border-radius:14px;background:rgba(13,13,15,.82);border-color:rgba(255,255,255,.09);box-shadow:0 18px 40px -28px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.05);}
.site-header.scrolled .site-header-inner::before{background:rgba(11,11,12,.92);border-color:rgba(255,255,255,.11);}
.vn-header-sep{display:none;}
.vn-logo img{height:26px;}
.site-navigation .menu.navigation-list{font-size:13.5px;}
.site-navigation .menu.navigation-list > li > a{padding:9px 11px;color:#b4b4bc;}
.site-navigation .menu.navigation-list > li > a.link-active,.site-navigation .menu.navigation-list > li.active > a{background:rgba(255,255,255,.06);color:#fff;}
.vn-hbtn,.vn-icon-pill,.vn-currency-select{height:36px;}
.vn-hbtn,.vn-icon-pill{width:36px;}
.vn-hbtn svg,.vn-icon-pill svg{width:18px;height:18px;}
.vn-nav-login,.vn-nav-user{height:36px;padding:0 13px;font-size:13px;}
.vn-burger{width:36px;height:36px;}
.vn-cart-count{top:2px;right:2px;}
@media (max-width:600px){:root{--vn-header-top:8px;}.site-header .site-header-inner{height:54px;}}
/* home rhythm */
.vn-section{padding:72px 0;}
.vn-hero{padding:64px 0 60px;}
.vn-hero-facts{margin-top:28px;padding-top:22px;}
.vn-trust-strip li{padding:16px 20px;}
.vn-tile{padding:22px 20px 24px;}
.vn-faq{max-width:720px;}
@media (max-width:640px){.vn-section{padding:52px 0;}.vn-hero{padding:36px 0 36px;}}
/* product cards: the whole card is the link, quick view is a corner icon */
.store-product:not(.store-product-full){cursor:pointer;}
.vn-qv-btn,.store-product:hover .vn-qv-btn{left:auto;right:10px;top:10px;transform:none;width:34px;height:34px;padding:0;justify-content:center;border-radius:10px;background:rgba(13,13,15,.82);color:#fff;border:1px solid rgba(255,255,255,.16);box-shadow:none;}
.vn-qv-btn span{display:none;}
.vn-qv-btn svg{width:16px;height:16px;}
.store-product:hover .vn-qv-btn{opacity:1;}
.vn-qv-btn:hover{background:var(--vn-green);color:var(--vn-green-ink);border-color:var(--vn-green);}
.store-product .product-title a:hover{color:#fff;}
.store-product:not(.store-product-full):hover{transform:translateY(-2px);}
/* product page: one buy box + one details box */
.vn-pdp-main{padding-top:22px;}
.vn-pdp-buy{gap:12px;}
.vn-buybox{padding:20px;border-radius:18px;box-shadow:none;gap:14px;}
.vn-tag-row{gap:6px;}
.vn-details{padding:16px 18px;border-radius:16px;background:var(--vn-surface);border:1px solid var(--vn-line);}
.vn-details-row{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--vn-line);font-size:13px;}
.vn-details-row:last-of-type{border-bottom:0;}
.vn-details-row span{color:var(--vn-text-3);flex:none;}
.vn-details-row b{color:#fff;font-weight:600;text-align:right;}
.vn-details-row a{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.vn-details-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--vn-line);}
.vn-details-actions .vn-btn{width:100%;height:38px;padding:0 10px;font-size:13px;}
.vn-pdp-desc{font-size:15px;color:#c4c4cb;}
.vn-desc-lead{font-size:15.5px;color:#d4d4d8;}
.vn-feat-card .vn-feat-tt{font-size:13px;letter-spacing:.03em;}
/* docs + misc */
.vn-docs-sub{color:#b4b4bc;font-size:15.5px;}

/* ---------- 28. Docs v2: high-contrast, reference-style ---------- */
body.page-docs{background:#111113;}
body.page-docs #vn-bg-canvas,body.page-docs::after,body.page-docs::before{display:none !important;}
body.page-docs .vn-promo{display:none;}
body.page-docs .site-footer{margin-top:0;background:#0f0f11;}
.vn-docs{grid-template-columns:256px minmax(0,1fr) 208px;gap:0 56px;max-width:1400px;padding:24px var(--vn-gutter) 72px;}
/* sidebar */
.vn-docs-side{padding-right:10px;}
.vn-docs-search-btn{height:40px;background:#18181b;border-color:#2a2a2e;color:#9a9aa3;font-size:13.5px;border-radius:8px;}
.vn-docs-search-btn:hover{border-color:#3a3a40;color:#d4d4d8;}
.vn-docs-search-btn kbd{border-color:#3a3a40;color:#8a8a93;}
.vn-docs-group-label{font-size:13.5px;font-weight:700;letter-spacing:0;text-transform:none;color:#fff;padding:0 8px;margin:6px 0 6px;}
.vn-docs-link{padding:6px 8px;border-radius:6px;font-size:14px;font-weight:400;color:#a8a8b0;gap:8px;}
.vn-docs-link:hover{color:#fff;background:#1c1c20;}
.vn-docs-link.is-active{color:var(--vn-green);background:rgba(169,246,14,.1);font-weight:500;}
.has-sub.is-open > .vn-docs-toggle{color:#fff;}
.vn-docs-ico{width:18px;font-size:14px;}
.vn-docs-nav ul.vn-docs-sub{margin:2px 0 4px 16px;padding-left:8px;border-left:1px solid #2a2a2e;}
.vn-docs-sub .vn-docs-link{padding:6px 8px;font-size:14px;}
/* article */
.vn-docs-main{max-width:832px;}
.vn-docs-crumbs{font-size:13px;color:#8a8a93;margin-bottom:10px;}
.vn-docs-crumbs a{color:#8a8a93;}
.vn-docs-title{font-size:36px;font-weight:700;letter-spacing:-.9px;color:#fff;margin:0 0 8px;line-height:1.15;}
.vn-docs-sub{font-size:18px;color:#9ca3af;line-height:1.5;}
.vn-docs-head{padding-bottom:18px;margin-bottom:4px;}
.vn-docs-body{font-size:17px;line-height:1.7;color:#e4e4e7;}
.vn-docs-body h2{font-family:var(--vn-font);font-size:28px;font-weight:600;letter-spacing:-.4px;color:#fff;margin:42px 0 16px;padding-bottom:10px;border-bottom:1px solid #27272a;}
.vn-docs-body h2:first-child{margin-top:8px;}
.vn-docs-body h3{font-size:22px;font-weight:600;letter-spacing:-.2px;color:#fff;margin:34px 0 12px;}
.vn-docs-body h4{font-size:17px;font-weight:600;color:#fff;margin:24px 0 8px;}
.vn-docs-body p{margin:0 0 16px;}
.vn-docs-body a{color:var(--vn-green);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
.vn-docs-body a:hover{color:#d9ff70;}
.vn-docs-body strong{color:#fff;font-weight:600;}
.vn-docs-body ul,.vn-docs-body ol{margin:0 0 18px;}
.vn-docs-body li{margin-bottom:8px;}
.vn-docs-body li::marker{color:#71717a;}
.vn-docs-body code{font-size:.86em;padding:2px 6px;border-radius:5px;background:#1f1f23;border:1px solid #2e2e33;color:#f4f4f5;}
.vn-docs-body table{font-size:15px;margin:16px 0 24px;}
.vn-docs-body th,.vn-docs-body td{padding:11px 12px;border-bottom:1px solid #27272a;}
.vn-docs-body th{background:#18181b;color:#fff;}
.vn-docs-body td{color:#d4d4d8;}
.vn-docs-anchor{color:#71717a;}
/* code blocks */
.vn-code{margin:18px 0 26px;border-radius:10px;border:1px solid #2a2a2e;background:#0c0c0e;}
.vn-code-head{padding:7px 8px 7px 14px;border-bottom:1px solid #222226;background:#141417;}
.vn-code-lang{color:#8a8a93;}
.vn-code-copy{color:#c9c9cf;border-color:#3a3a40;}
.vn-code-copy:hover{background:#26262b;color:#fff;}
.vn-code pre{padding:18px 20px;font-size:14px;line-height:1.75;color:#e4e4e7;}
.t-c{color:#7c7c86;}
.t-s{color:#d9ff70;}
.t-n{color:#f5b57f;}
.t-k{color:#93b4ff;}
.t-p{color:#c8bfff;}
/* callouts */
.vn-callout{font-size:16px;line-height:1.6;padding:16px 18px;border-radius:10px;margin:20px 0 26px;}
.vn-callout.is-note{background:#0f1b33;border-color:#2f4d8a;color:#dbe7ff;}
.vn-callout.is-note .vn-callout-ico{color:#8fb4ff;}
.vn-callout.is-tip{background:#14200a;border-color:#4f7a19;color:#ecffd0;}
.vn-callout.is-warning{background:#2a1d07;border-color:#8a5a12;color:#ffe9b8;}
.vn-callout.is-warning .vn-callout-ico{color:#f5b53c;}
.vn-callout.is-danger{background:#2c1010;border-color:#8a2f2f;color:#ffd7d7;}
.vn-docs-body .vn-callout code{background:rgba(0,0,0,.35);border-color:rgba(255,255,255,.12);}
/* on this page */
.vn-docs-toc{font-size:13.5px;}
.vn-docs-toc-label{font-size:13px;font-weight:700;letter-spacing:0;text-transform:none;color:#fff;margin-bottom:10px;}
.vn-docs-toc ul{border-left:0;}
.vn-docs-toc li a{padding:4px 0;margin:0;border-left:0;color:#a8a8b0;}
.vn-docs-toc li.is-h3 a{padding-left:14px;color:#8a8a93;font-size:13px;}
.vn-docs-toc li a:hover{color:#fff;}
.vn-docs-toc li a.is-active{color:#fff;font-weight:500;}
.vn-docs-toc-links{border-top-color:#27272a;}
.vn-docs-toc-links a{color:#8a8a93;font-size:13px;}
/* overview extras + footer nav */
.vn-docs-card{background:#18181b;border-color:#2a2a2e;border-radius:10px;}
.vn-docs-card b{font-size:15px;}
.vn-docs-card span:last-child{color:#8a8a93;}
.vn-docs-quick-btn{background:#18181b;border-color:#2a2a2e;border-radius:10px;font-size:15px;}
.vn-docs-quick-btn:hover{background:#1f1f23;border-color:#3a3a40;}
.vn-docs-foot{border-top-color:#27272a;margin-top:48px;}
.vn-docs-pn a{background:#18181b;border-color:#2a2a2e;border-radius:10px;}
.vn-docs-pn a:hover{border-color:#3a3a40;}
.vn-docs-pn b{font-size:15px;}
.vn-docs-foot-links a{color:#8a8a93;}
/* docs search modal */
.vn-docs-so .vn-so-panel{background:#151518;border-color:#2a2a2e;}
.vn-ds-title{font-size:15px;}
.vn-ds-snip{color:#a8a8b0;font-size:13px;}
/* mobile */
@media (max-width:1180px){.vn-docs{grid-template-columns:240px minmax(0,1fr);gap:0 40px;}}
@media (max-width:860px){
  .vn-docs-body{font-size:16px;}
  .vn-docs-title{font-size:30px;}
  .vn-docs-body h2{font-size:24px;}
  .vn-docs-body h3{font-size:19px;}
  .vn-docs-side{background:#111113;border-right-color:#2a2a2e;}
}
