 
:root{
   
   
  --brand:#FFD400;
  --brand-rgb:255, 212, 0;
  --brand-ink:#0E1116;       
  --brand-600:#E6BE00;
  --brand-soft:#FFF8DB;
  --ink:#0E1116;
  --ink-2:#1A1F27;
  --ink-3:#2A313C;
  --price:#E11D2A;
  --price-600:#C2151F;       
   
  --price-text:var(--price-600);
  --price-rgb:225, 29, 42;
  --price-ink:#ffffff;       
  --price-soft:#FFF1F2;
  --ok:#0E9F6E;
  --ok-soft:#E7F7F1;
  --info:#1C64F2;
  --info-600:#1750C4;        
  --info-rgb:28, 100, 242;
  --info-soft:#EBF2FE;

  --fg:#0E1116;
  --fg-2:#4B5563;
   
  --fg-3:#646E7E;
  --line:#E7E9EE;
  --line-2:#F1F3F6;
  --bg:#F4F5F7;
  --card:#FFFFFF;

  --font:"Inter","Be Vietnam Pro","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;

  --r-sm:8px; --r:12px; --r-lg:16px; --r-xl:22px;
  --sh-1:0 1px 2px rgba(14,17,22,.06),0 1px 3px rgba(14,17,22,.05);
  --sh-2:0 4px 12px rgba(14,17,22,.08);
  --sh-3:0 12px 32px rgba(14,17,22,.12);

  --wrap:1240px;
  --gap:16px;
  --hdr-h:72px;
  --topbar-h:34px;          
}

*{box-sizing:border-box}
html{
  margin:0;padding:0;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  scroll-behavior:smooth;
}
body{
  margin:0;padding:0;
  font-family:var(--font);
  background:var(--bg);
  color:var(--fg);
  font-size:15px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;            
  min-width:0;
}
img,video,svg,iframe{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit;touch-action:manipulation}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,h5{margin:0;letter-spacing:-.02em;overflow-wrap:anywhere}
p,li,td,th{overflow-wrap:anywhere}

 
input,select,textarea,button{font-size:inherit}
@media (max-width:860px){
  input[type=text],input[type=search],input[type=email],input[type=tel],
  input[type=number],input[type=password],select,textarea{font-size:16px !important}
}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 max(16px, env(safe-area-inset-left)) 0 max(16px, env(safe-area-inset-right))}
.page-pad{padding-top:18px}
 
.sr{position:absolute!important;width:1px!important;height:1px!important;
    overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;
    display:inline!important}
 
.skip:focus{position:fixed!important;top:8px;left:8px;width:auto!important;height:auto!important;
  clip:auto!important;overflow:visible!important;z-index:999;
  background:var(--brand);color:#000;padding:10px 16px;border-radius:8px}

.muted{color:var(--fg-2)}
.tiny{font-size:12px}
.sm{font-size:13px}
.bold{font-weight:700}

 
 
.topbar{background:var(--brand);color:#1A1600;font-size:12.5px;font-weight:600;
  position:relative;z-index:110}
 
.topbar .wrap{display:flex;align-items:center;flex-wrap:nowrap;height:var(--topbar-h);gap:16px}
.topbar .usps{display:flex;align-items:center;gap:18px;overflow:hidden;min-width:0}
.topbar .usps span{white-space:nowrap}
.topbar-links{margin-left:auto;display:flex;gap:14px;white-space:nowrap}

 
@media (max-width:1000px){
  .topbar .usps span:nth-of-type(n+3),
  .topbar .usps i.dot:nth-of-type(n+2){display:none}
}
@media (max-width:900px){
  .topbar .usps span:nth-of-type(n+2),
  .topbar .usps i.dot{display:none}
}

 
.topbar-contact{display:flex;align-items:center;gap:16px;flex:none}
.topbar-contact .tbc{display:inline-flex;align-items:center;gap:6px;
  color:inherit;text-decoration:none;white-space:nowrap;font-weight:700}
.topbar-contact .tbc:hover{text-decoration:underline}
.topbar-contact .tbc-i{flex:none;color:var(--ink)}    
.dot{width:5px;height:5px;border-radius:50%;background:#1A1600;opacity:.45;flex:none;align-self:center}

.hdr{background:var(--ink);color:#fff;position:sticky;top:0;z-index:100}
.hdr .wrap{display:flex;align-items:center;gap:20px;min-height:var(--hdr-h)}

.logo{display:flex;align-items:center;gap:var(--logo-gap,10px);flex:none;color:inherit}
.logo .mark{width:var(--logo-mark,38px);height:var(--logo-mark,38px);border-radius:11px;background:var(--brand);color:var(--brand-ink,#0E1116);
  display:grid;place-items:center;font-weight:900;font-size:19px;letter-spacing:-.04em;flex:none}
.logo .txt{line-height:1.05;min-width:0}
.logo .txt b{display:block;font-size:19px;letter-spacing:-.02em}
.logo .txt small{display:block;font-size:10.5px;color:var(--brand);letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.logo .logo-img,.logo img.custom-logo{height:var(--logo-h,40px);width:auto;max-width:var(--logo-mw,180px);object-fit:contain}
.logo .custom-logo-link{display:contents}  
.logo-layout-stack{flex-direction:column}
.logo-align-center{align-items:center;text-align:center}

 
.hsearch{flex:1;position:relative;max-width:560px}
.hsearch form{position:relative}
.hsearch input[type=search]{
  width:100%;height:44px;border-radius:var(--r);border:1.5px solid transparent;
  background:#fff;padding:0 68px 0 42px;font-size:14.5px;color:var(--fg);outline:none;
  -webkit-appearance:none;appearance:none;
}
.hsearch input::placeholder{color:var(--fg-3)}
.hsearch input:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(255,212,0,.28)}
.hsearch .ico{position:absolute;left:13px;top:13px;color:var(--fg-3);z-index:1}
.hsearch .go{position:absolute;right:5px;top:5px;height:34px;padding:0 14px;border-radius:9px;
  background:var(--brand);color:#0E1116;font-weight:700;font-size:13px}

.hact{display:flex;align-items:center;gap:4px;margin-left:auto}
.hbtn{display:flex;align-items:center;gap:9px;padding:8px 12px;border-radius:var(--r);color:#E6E9EE;min-height:44px}
.hbtn:hover{background:var(--ink-2)}
.hbtn .l1{font-size:11px;color:#98A1AE;line-height:1.15;display:block}
.hbtn .l2{font-size:13.5px;font-weight:650;line-height:1.2;display:block}
.hbtn.call .l2{color:var(--brand)}

 
.catbar{background:var(--ink-2);position:relative;z-index:90}
.catbar .wrap{display:flex;align-items:center;gap:2px;height:46px;overflow-x:auto;scrollbar-width:none}
.catbar .wrap::-webkit-scrollbar{display:none}
.cat{display:flex;align-items:center;gap:7px;height:34px;padding:0 13px;border-radius:9px;
  color:#D3D8E0;font-size:13.5px;font-weight:600;white-space:nowrap;flex:none}
.cat:hover,.cat.on{background:#333B48;color:#fff}
.cat.hot{color:var(--brand)}
 
.cat.current,.cat.current:hover{background:var(--brand);color:var(--brand-ink);font-weight:700}
.cat.current.hot{color:var(--brand-ink)}

 
.mega-host{align-self:stretch;display:flex;align-items:center;position:static;flex:none}
.mega{
  position:absolute;left:0;right:0;top:100%;background:#fff;
  border-radius:0 0 var(--r-lg) var(--r-lg);box-shadow:var(--sh-3);
  padding:20px;display:none;grid-template-columns:220px 1fr 260px;gap:24px;
  max-width:var(--wrap);margin:0 auto;
}
.mega-host:hover .mega,.mega-host:focus-within .mega{display:grid}
 
.mega-head{display:none}
 
.cat-caret{display:none}
.cat.has-mega .cat-caret{display:block;margin-left:-2px;opacity:.7}
.brand-more{display:none}
.series-back{display:none}
.mega h5{margin:0 0 10px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3)}
.mega .brands li a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;font-weight:600;font-size:14px}
.mega .brands li a:hover,.mega .brands li.on a{background:var(--brand-soft)}
.mega .brands .n{margin-left:auto;font-size:11.5px;color:var(--fg-3);font-weight:500}
.mega .series-panel{display:none}
.mega .series-panel.on{display:block}
.mega .series{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 18px;align-content:start}
.mega .series a{font-size:13.5px;color:var(--fg-2);padding:5px 0}
.mega .series a:hover{color:var(--price)}
.mega .series .serie-group{grid-column:1/-1;padding:6px 0 10px;border-bottom:1px solid var(--line,rgba(0,0,0,.06))}
.mega .series .serie-group:last-of-type{border-bottom:0}
.mega .series .serie-parent{display:block;font-weight:700;font-size:13.5px;color:var(--fg);padding:2px 0 6px}
.mega .series .serie-kids{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 16px}
.mega .series .serie-kids a{font-size:13px;color:var(--fg-2)}
.mega .series .serie-all{grid-column:1/-1;font-weight:700;color:var(--price);margin-top:6px}
 
 
.vio-socials{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.vio-socials .soc{display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:999px;color:inherit;transition:background-color .15s,color .15s,opacity .15s}
.vio-socials .soc svg{display:block}
.vio-socials .soc:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.vio-socials .soc-t{font-size:12px;font-weight:600;padding:0 6px}
 
.vio-socials .soc-zalo{width:auto;border-radius:7px}

 
.topbar-links{flex:none}
.topbar-social{gap:4px;margin-left:6px;flex:none;flex-wrap:nowrap}
.topbar-social .soc{width:24px;height:24px;opacity:.75}
.topbar-social .soc-zalo{width:auto;padding:0 5px}
.topbar-social .soc:hover{background:var(--ink);color:var(--brand);opacity:1}

 
.ft-social{margin-top:12px}
.ft-social .vio-socials-t{font-size:12px;font-weight:600;opacity:.7;margin-right:2px}
.ft-social .soc{width:36px;height:36px;background:rgba(255,255,255,.08)}
.ft-social .soc-zalo{width:auto;padding:0 10px}
.ft-social .soc:hover{color:#fff}
.ft-social .soc-zalo:hover{background:#0068FF}
.ft-social .soc-facebook:hover{background:#1877F2}
.ft-social .soc-tiktok:hover{background:#010101}
.ft-social .soc-youtube:hover{background:#FF0000}
.ft-social .soc-instagram:hover{background:#C13584}
 
.hero-side .promo{text-decoration:none;color:inherit}
.hero-side a.promo:hover{filter:brightness(1.03)}
.mega .quick{background:var(--bg);border-radius:var(--r);padding:14px}
.mega .quick a{display:block;padding:8px 10px;border-radius:8px;font-size:13.5px;font-weight:600;
  background:#fff;margin-bottom:6px;box-shadow:var(--sh-1)}
.mega .quick a:hover{color:var(--price)}

 
.hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--gap);margin:16px 0}
.hero-main{
  position:relative;border-radius:var(--r-xl);overflow:hidden;color:#fff;padding:34px;
  background:radial-gradient(120% 130% at 80% 0%,#2B3442 0%,#0E1116 55%);
  min-height:288px;display:flex;flex-direction:column;justify-content:center;
}
.hero-main .glow{position:absolute;right:-60px;top:-40px;width:340px;height:340px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,212,0,.22),transparent 62%);pointer-events:none}
.hero-main .kicker{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brand)}
.hero-main h1{margin:8px 0 10px;font-size:34px;line-height:1.12;letter-spacing:-.03em;max-width:16ch}
.hero-main p{margin:0 0 18px;color:#B9C0CB;max-width:46ch;font-size:14.5px}
.hero-cta{display:flex;gap:10px;flex-wrap:wrap}
.cta{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border-radius:11px;
  background:var(--brand);color:#0E1116;font-weight:750;font-size:14.5px}
.cta.ghost{background:transparent;border:1.5px solid #3B4453;color:#fff}

.hero-side{display:flex;flex-direction:column;gap:var(--gap)}
.promo{flex:1;border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;
  justify-content:center;box-shadow:var(--sh-1)}
.promo b{font-size:15px;letter-spacing:-.01em}
.promo span{font-size:12.5px;color:var(--fg-2)}
.promo.p1{background:linear-gradient(135deg,#FFE87A,#FFD400)}
.promo.p1 span{color:#7A6400}
.promo.p2{background:#fff}

.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);margin-bottom:8px}
.trust .t{background:#fff;border-radius:var(--r-lg);padding:14px;display:flex;gap:12px;
  align-items:center;box-shadow:var(--sh-1)}
.trust .t .ic{width:40px;height:40px;flex:none;border-radius:11px;background:var(--brand-soft);
  display:grid;place-items:center;color:#8A6D00}
.trust .t b{display:block;font-size:13.5px}
.trust .t span{font-size:12px;color:var(--fg-2)}

 
.page-title{font-size:24px;margin-bottom:14px}
.page-article{max-width:80ch}

.postgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--gap)}
.postcard{background:#fff;border-radius:var(--r-lg);padding:14px;box-shadow:var(--sh-1)}
.postthumb{border-radius:var(--r);overflow:hidden;margin-bottom:10px;aspect-ratio:16/9}
.postthumb img{width:100%;height:100%;object-fit:cover}
.postcard h2{font-size:15.5px;line-height:1.35;margin-bottom:6px}

.notfound{max-width:640px;margin:0 auto;text-align:center}
.notfound h1,.notfound h2{font-size:22px;margin-bottom:8px}
.search-404{margin:18px auto;max-width:420px}
.search-404 input[type=search]{border:1.5px solid var(--line)}
.notfound-cta{margin-top:16px}

 
.e404{max-width:700px;padding:26px 20px 24px}
.e404-art{max-width:300px;margin:0 auto 6px}
 
.e404-art svg{width:100%;height:auto;display:block}
.e404 h1{font-size:25px}
.e404>.muted{max-width:520px;margin:0 auto}
.e404-cats{display:flex;flex-wrap:wrap;gap:8px}
.e404-cats a{display:inline-flex;align-items:center;min-height:42px;padding:0 15px;
  border-radius:999px;background:var(--card);border:1.5px solid var(--line);
  box-shadow:var(--sh-1);font-size:13.5px;font-weight:650;color:var(--fg)}
.e404-cats a:hover{border-color:var(--brand);background:var(--brand-soft)}

 
.section{margin:24px 0}
.sec-head{display:flex;align-items:flex-end;gap:14px;margin-bottom:12px}
.sec-head h2{font-size:19px}
.sec-head .more{margin-left:auto;font-size:13.5px;font-weight:600;color:var(--info)}

ul.products,.grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:var(--gap);
  margin:0;padding:0;list-style:none;
}
.pcard{
  --pcard-pad:12px;--pcard-title:13.8px;
  background:var(--card);border-radius:var(--r-lg);padding:var(--pcard-pad);box-shadow:var(--sh-1);
  display:flex;flex-direction:column;position:relative;transition:box-shadow .18s,transform .18s;
}

 
 
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after{content:none;display:none}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  float:none;width:auto;margin:0;padding:var(--pcard-pad,12px);
}
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img{
  width:100%;height:100%;margin:0;display:block;object-fit:contain;padding:8px;
}
.woocommerce ul.products li.product h3,
.woocommerce-page ul.products li.product h3{
  padding:0;margin:0 0 8px;font-size:var(--pcard-title,13.8px);
}
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
  color:var(--price);font-size:17px;font-weight:800;margin:0;display:flex;
}
.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del{opacity:1;display:inline;font-size:12.5px;color:var(--fg-3)}
.woocommerce ul.products li.product .price ins,
.woocommerce-page ul.products li.product .price ins{font-weight:800;text-decoration:none;color:var(--price)}
.pcard:hover{box-shadow:var(--sh-3);transform:translateY(-2px)}
.pcard .thumb{position:relative;aspect-ratio:1/1;border-radius:var(--r);overflow:hidden;
  background:linear-gradient(160deg,#F7F8FA,#EDEFF3);margin-bottom:10px}
.pcard .thumb img{width:100%;height:100%;object-fit:contain;padding:8px}
.flags{position:absolute;top:8px;left:8px;display:flex;flex-direction:column;gap:5px;align-items:flex-start;z-index:2}
.flag{font-size:10.5px;font-weight:800;letter-spacing:.02em;padding:3px 7px;border-radius:6px;text-transform:uppercase}
 
.f-new{background:var(--ok-soft);color:#046C4E}
.f-like{background:var(--info-soft);color:#1A56DB}
.f-sale{background:var(--price);color:#fff}
.f-seal{background:#F3E8FF;color:#7E22CE}

 
.pcard h3{
  font-size:var(--pcard-title,13.8px);font-weight:650;line-height:1.35;margin:0 0 8px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;
  overflow:hidden;height:2.7em;  
}
.specs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:9px}
.spec{font-size:11px;font-weight:600;color:var(--fg-2);background:var(--line-2);border-radius:6px;padding:3px 6px}

 
.price-row{
  display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;margin-top:auto;
  font-size:17px;font-weight:800;color:var(--price);letter-spacing:-.02em;
}
.price-row .price,.pcard .price{
  font-size:17px;font-weight:800;color:var(--price);letter-spacing:-.02em;
  display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;margin:0;
}
.price del,.price-row del{font-size:12.5px;color:var(--fg-3);font-weight:500;text-decoration:line-through}
.price ins,.price-row ins{text-decoration:none;color:var(--price)}
.price .from,.price small,.price-row small{font-size:11.5px;font-weight:500;color:var(--fg-3)}
.off{font-size:11px;font-weight:800;color:var(--price-text);background:var(--price-soft);border-radius:5px;padding:2px 5px}

.pcard .foot{margin-top:9px;padding-top:9px;border-top:1px dashed var(--line);
  display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--fg-2);flex-wrap:wrap}
.pcard .foot .sep{color:var(--line)}
.stars{position:relative;display:inline-block;line-height:1;letter-spacing:-.5px;font-size:11.5px;vertical-align:middle}
.stars-bg{color:#E5E7EB}
.stars-fill{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#F59E0B}
.rating .stars{font-size:13px}

 
.cardbtn{
  margin-top:9px;width:100%;min-height:38px;border-radius:10px;
  background:var(--ink);color:#fff;font-size:13px;font-weight:700;
  display:flex;align-items:center;justify-content:center;gap:6px;
}
.cardbtn:hover{background:var(--price)}
.cardbtn-opt{background:var(--price);border:1.5px solid var(--price);color:var(--price-ink)}
.cardbtn-opt:hover{background:var(--price-600);border-color:var(--price-600);color:var(--price-ink)}

 
.cardbtn-het{
  background:var(--info);border:0;color:#fff;box-shadow:none}
.cardbtn-het:hover{background:var(--info-600);color:#fff}

 
.hbtn.cart{position:relative}
.hbtn.cart .badge{
  position:absolute;top:2px;left:24px;background:var(--price);color:#fff;
  font-size:10.5px;font-weight:700;min-width:17px;height:17px;border-radius:9px;
  display:grid;place-items:center;padding:0 4px;
}
.hbtn.cart .badge[hidden]{display:none}

 
.hbtn-account{justify-content:center;padding:8px;min-width:44px;gap:0}

 
.vio-toast{
  position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);
  background:var(--ink);color:#fff;padding:13px 18px;border-radius:12px;
  font-size:14px;font-weight:600;box-shadow:var(--sh-3);z-index:300;
  opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:92vw;
}
.vio-toast.on{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.vio-toast a{color:var(--brand);text-decoration:underline;margin-left:6px}

 
.paymethods{margin:0 0 16px}
.paymethods .lbl{font-size:12.5px;font-weight:700;margin-bottom:7px}
.payrow{display:flex;flex-direction:column;gap:8px}
.paybtn{
  border:1.5px solid var(--line);border-radius:11px;padding:10px 12px;text-align:left;
  display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:baseline;min-height:44px;
}
.paybtn[hidden]{display:none}
.paybtn b{font-size:13.5px;font-weight:700;color:var(--fg)}
 
.paybtn .per{font-size:15px;font-weight:800;color:var(--price-text);grid-row:1;grid-column:2;white-space:nowrap}
.paybtn small{grid-column:1/-1;font-size:11.5px;color:var(--fg-3);font-weight:500}
.paybtn.on{border-color:var(--price);background:var(--price-soft)}
.paybtn:hover{border-color:var(--fg-3)}
.paybtn.on:hover{border-color:var(--price)}
.paynote{margin:8px 0 0}
.linkbtn{color:var(--info);font-weight:650;text-decoration:underline;font-size:12px;padding:0}
.linkbtn:hover{color:var(--price)}

 
:root{
   
  --float-size:56px;
  --float-chat-top:calc(16px + var(--float-size));
  --float-right:16px;
  --float-gap:12px;
}
body.vio-chatapp{--float-chat-top:136px;--float-right:20px}

 
.vio-chat{
  position:fixed;right:16px;bottom:16px;z-index:130;
  display:flex;align-items:center;gap:8px;height:var(--float-size);padding:0 16px;border-radius:999px;
  background:var(--info);color:#fff;font-weight:700;font-size:14px;box-shadow:var(--sh-3);
}
.vio-chat:hover{filter:brightness(1.08)}
@media (max-width:860px){
  .vio-chat{right:12px;bottom:84px;height:var(--float-size);padding:0 14px}
  .vio-chat span{display:none}
  .vio-chat{padding:0;width:var(--float-size);justify-content:center}
}

 
.vio-fbchat{
  position:fixed;right:var(--float-right);z-index:128;
  bottom:calc(var(--float-chat-top) + var(--float-gap));
  width:var(--float-size);height:var(--float-size);border-radius:50%;
  display:grid;place-items:center;
  background:#1877F2;color:#fff;box-shadow:var(--sh-3);
  transition:filter .15s,transform .15s;
}
.vio-fbchat:hover{filter:brightness(1.08);transform:translateY(-1px);color:#fff}
.vio-fbchat .soc-i{width:26px;height:26px;display:block}

 
.vio-totop{
  position:fixed;right:var(--float-right);z-index:125;
  bottom:calc(var(--float-chat-top) + var(--float-gap));
  width:var(--float-size);height:var(--float-size);border-radius:50%;
  background:#fff;color:var(--fg);
  box-shadow:var(--sh-2);font-size:22px;line-height:1;
  display:grid;place-items:center;border:1px solid var(--line);
}
.vio-totop[hidden]{display:none}
.vio-totop:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
 
body.vio-has-fb .vio-totop{
  bottom:calc(var(--float-chat-top) + var(--float-gap) * 2 + var(--float-size));
}

@media (max-width:860px){
   
  :root{--float-chat-top:calc(84px + var(--float-size));--float-right:12px}
  body.vio-chatapp{--float-chat-top:136px;--float-right:14px}
}

 
.vio-modal{
  position:fixed;inset:0;z-index:400;background:rgba(14,17,22,.55);
  display:grid;place-items:center;padding:16px;overflow-y:auto;
}
.vio-modal[hidden]{display:none}
body.modal-open{overflow:hidden}
.vio-modal-box{
  background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-3);
  width:min(520px,100%);max-height:88vh;overflow-y:auto;
}
.vio-modal-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:16px 18px;border-bottom:1px solid var(--line-2);position:sticky;top:0;background:#fff;
}
.vio-modal-head h3{font-size:17px}
.vio-modal-x{width:36px;height:36px;border-radius:50%;background:var(--line-2);font-size:15px;flex:none}
.vio-modal-body{padding:18px}
.vio-modal-body h4{margin:0 0 8px}
.vio-modal-body .spectbl th{width:auto}
.vio-modal-body .spectbl td{text-align:right}
.modal-notes{list-style:disc;padding-left:18px;margin:14px 0 16px}
.modal-notes li{margin-bottom:4px}

 
.vio-modal-box.vio-hethang{width:min(440px,100%)}
.vio-hethang .vio-modal-head p{margin:2px 0 0;line-height:1.35;max-width:34ch}
.vio-hethang-msg{font-size:14px;line-height:1.55;color:var(--fg-2);margin:0 0 16px}
.vio-hethang-acts{display:grid;gap:10px}
.vio-hethang-acts .btn{min-height:46px}

 
.vio-modal-box.vio-inst{width:min(620px,100%)}
.vio-inst .vio-modal-head{align-items:flex-start}
.vio-inst-title h3{margin-bottom:2px}
.vio-inst-title p{margin:0;line-height:1.35;max-width:40ch}

.vio-inst-pick{margin:0 0 14px}
.vio-inst-pick .lbl{font-size:12.5px;font-weight:700;margin-bottom:7px}
.vio-inst .optrow .obtn{flex:1 1 148px}

.vio-inst-none{
  border:1px solid var(--line);background:var(--bg);border-radius:var(--r);
  padding:12px 14px;color:var(--fg-2);margin:0 0 16px;
}

 
.vio-inst-hero{
  border:1.5px solid var(--price);border-radius:var(--r-lg);overflow:hidden;
  background:var(--price-soft);margin:0 0 18px;
}
.vio-inst-hero .hero-main{padding:13px 16px;display:grid;gap:1px}
.vio-inst-hero .k{
  font-size:11.5px;font-weight:750;color:var(--price);
  text-transform:uppercase;letter-spacing:.05em;
}
.vio-inst-hero .v{font-size:30px;font-weight:850;color:var(--price);line-height:1.12;letter-spacing:-.02em}
.vio-inst-hero .s{font-size:12.5px;font-weight:600;color:var(--fg-2)}

.vio-inst-kv{background:#fff;border-top:1.5px solid var(--price);padding:4px 16px}
.vio-inst-kv li{
  display:flex;gap:12px;justify-content:space-between;align-items:baseline;
  font-size:13px;padding:8px 0;border-bottom:1px dashed var(--line);
}
.vio-inst-kv li:last-child{border-bottom:0}
.vio-inst-kv li span{color:var(--fg-2)}
.vio-inst-kv li b{font-weight:750;text-align:right}
.vio-inst-kv li.ok b{color:var(--ok)}
.vio-inst-kv li.up b{color:var(--price)}

 
.vio-inst-h{font-size:14px;margin:0 0 10px}
.vio-inst-scroll{
  border:1px solid var(--line);border-radius:var(--r);
  overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.vio-insttbl{width:100%;border-collapse:collapse;font-size:13px;min-width:340px}
.vio-insttbl th,.vio-insttbl td{
  padding:9px 12px;text-align:left;border-bottom:1px solid var(--line-2);white-space:nowrap;
}
.vio-insttbl thead th{
  background:var(--line-2);color:var(--fg-2);font-size:11px;font-weight:750;
  text-transform:uppercase;letter-spacing:.04em;
}
.vio-insttbl tbody tr:last-child td{border-bottom:0}
.vio-insttbl .r{text-align:right}
.vio-insttbl .amt{font-weight:750;color:var(--fg)}
.vio-insttbl .no{width:1%;padding-right:0}
.vio-insttbl .no span{
  display:grid;place-items:center;width:24px;height:24px;border-radius:50%;
  background:var(--line-2);color:var(--fg-2);font-size:11.5px;font-weight:750;
}
.vio-insttbl tr.done .no span{background:var(--ok-soft);color:var(--ok)}
.vio-insttbl tr.done td:last-child{color:var(--ok);font-weight:700}

 
.woocommerce-cart .site-content > .wrap,
.woocommerce-checkout .site-content > .wrap{padding-top:18px}

.shop_table{
  width:100%;border-collapse:collapse;background:#fff;border-radius:var(--r-lg);
  box-shadow:var(--sh-1);overflow:hidden;font-size:14px;
}
.shop_table th,.shop_table td{padding:14px;text-align:left;border-bottom:1px solid var(--line-2);vertical-align:middle}
.shop_table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3);font-weight:700}
.shop_table tr:last-child td{border-bottom:0}
.shop_table .product-thumbnail img{width:64px;height:64px;object-fit:contain;border-radius:10px;background:var(--line-2)}
.shop_table .product-name a{font-weight:650}
.shop_table .product-price,.shop_table .product-subtotal{font-weight:700;color:var(--price);white-space:nowrap}
.shop_table .variation{font-size:12px;color:var(--fg-2);margin:4px 0 0}
.shop_table .variation dt,.shop_table .variation dd{display:inline;margin:0}
.shop_table .variation dd{margin-right:8px}
.product-remove a{color:var(--fg-3);font-size:18px;line-height:1}
.product-remove a:hover{color:var(--price)}
.quantity input{
  width:64px;height:38px;border:1px solid var(--line);border-radius:9px;
  text-align:center;font-size:14px;font-weight:600;
}

 
.woocommerce .cart-collaterals{display:block}
.woocommerce .cart-collaterals .cart_totals{float:none;width:100%}
.cart-collaterals,.cart_totals{margin-top:20px}
.cart_totals table{width:100%;background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-1);border-collapse:collapse;overflow:hidden}
.cart_totals th,.cart_totals td{padding:13px 16px;border-bottom:1px solid var(--line-2);font-size:14px}
.cart_totals th{text-align:left;color:var(--fg-2);font-weight:600}
.cart_totals td{text-align:right;font-weight:700}
.cart_totals .order-total td{font-size:20px;color:var(--price);font-weight:850}

 
.shop_table td.actions{background:#fafafa;border-top:1px solid var(--line-2)}
.vio-cart-actions-in{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.shop_table td.actions .coupon{display:flex;gap:8px;align-items:center}
.shop_table td.actions .coupon .input-text{
  height:40px;padding:0 12px;border:1px solid var(--line);border-radius:10px;font-size:14px;width:170px;
}
.vio-cart-update{min-height:40px}
.vio-cart-call{margin-top:10px;text-align:center;font-size:12.5px;color:var(--fg-3)}
.vio-cart-call a{color:var(--price)}

.wc-proceed-to-checkout{margin-top:14px}

 
.woocommerce table.shop_table{
  border:0;border-radius:var(--r-lg);border-collapse:collapse;margin:0;text-align:left;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
  padding:14px;border-left:0;border-right:0;border-top:0;
  border-bottom:1px solid var(--line-2);vertical-align:middle;
}
.woocommerce table.shop_table thead th{font-weight:700;line-height:1.55}
 
.woocommerce table.shop_table tbody tr.cart_item:has(+ .vio-cart-actions) td,
.woocommerce table.shop_table tbody tr:last-child td{border-bottom:0}

 
.woocommerce table.shop_table th.product-thumbnail,
.woocommerce table.shop_table td.product-thumbnail{width:92px}
.woocommerce-cart table.cart img,
.woocommerce table.shop_table td.product-thumbnail img{
  width:64px;height:64px;max-width:64px;object-fit:contain;
  border-radius:10px;background:var(--line-2);
}

 
.woocommerce table.shop_table td.product-name dl.variation{
  margin:4px 0 0;font-size:12px;color:var(--fg-3);line-height:1.55}
.woocommerce table.shop_table td.product-name dl.variation dt{
  float:none;display:inline;font-weight:600;margin:0 3px 0 0}
.woocommerce table.shop_table td.product-name dl.variation dd{display:inline;margin:0 10px 0 0}
.woocommerce table.shop_table td.product-name dl.variation dd p{display:inline;margin:0}

.woocommerce .quantity .qty{
  width:64px;height:38px;min-height:38px;padding:1px 2px;
  border:1px solid var(--line);border-radius:9px;
  font-size:14px;font-weight:600;text-align:center;background:#fff;color:var(--fg);
}

 
.woocommerce-cart .cart-collaterals .cart_totals table,
.woocommerce .cart-collaterals .cart_totals table.shop_table{
  border-collapse:collapse;border-radius:var(--r-lg);margin-bottom:0}
.woocommerce .cart_totals table.shop_table th,
.woocommerce .cart_totals table.shop_table td{
  padding:13px 16px;border-top:0;border-bottom:1px solid var(--line-2)}
.woocommerce .cart_totals table.shop_table th{font-weight:600;color:var(--fg-2)}
.woocommerce .cart_totals table.shop_table td{text-align:right;font-weight:700}
.woocommerce .cart_totals table.shop_table tr:last-child th,
.woocommerce .cart_totals table.shop_table tr:last-child td{border-bottom:0}
.woocommerce .cart_totals table.shop_table .order-total td{
  font-size:20px;color:var(--price);font-weight:850}

 
.woocommerce .wc-proceed-to-checkout{padding:0;margin-top:14px}
.woocommerce .wc-proceed-to-checkout a.checkout-button{
  display:inline-flex;align-items:center;justify-content:center;
  width:100%;min-height:48px;padding:0 22px;margin:0;
  border-radius:12px;background:var(--price);color:#fff;
  font-size:15px;font-weight:750;line-height:1.55;text-align:center;
}
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover{
  background:var(--price);filter:brightness(1.06)}

.checkout-button,.button,button.button,input.button,
.woocommerce-button,#place_order{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:0 22px;border-radius:12px;
  background:var(--price);color:#fff;font-weight:750;font-size:15px;border:0;cursor:pointer;
}
.checkout-button{width:100%}
.button:hover,#place_order:hover{filter:brightness(1.06)}
.button.alt{background:var(--ink)}

 
.woocommerce-billing-fields,.woocommerce-checkout-review-order,.woocommerce-additional-fields{
  background:#fff;border-radius:var(--r-lg);padding:18px;box-shadow:var(--sh-1);margin-bottom:16px}
.woocommerce-billing-fields h3,.woocommerce-additional-fields h3,#order_review_heading{font-size:16px;margin:0 0 14px}
.form-row{margin-bottom:12px;display:flex;flex-direction:column;gap:6px}
.form-row label{font-size:12.5px;font-weight:650;color:var(--fg-2)}
.form-row .required{color:var(--price)}
.input-text,.form-row input[type=text],.form-row input[type=tel],
.form-row input[type=email],.form-row textarea,.form-row select{
  width:100%;min-height:44px;border:1.5px solid var(--line);border-radius:10px;
  padding:10px 12px;font:inherit;font-size:14.5px;background:#fff;color:var(--fg);
}
.input-text:focus,.form-row select:focus,.form-row textarea:focus{
  outline:none;border-color:var(--price);box-shadow:0 0 0 3px var(--price-soft)}
.form-row textarea{min-height:88px;resize:vertical}

 
.woocommerce form .form-row .input-text,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea{
  width:100%;min-height:44px;border:1.5px solid var(--line);border-radius:10px;
  padding:10px 12px;font:inherit;font-size:14.5px;background:#fff;color:var(--fg);
}
 
.woocommerce form .form-row textarea.input-text,
.woocommerce form .form-row textarea{height:88px;min-height:88px;resize:vertical}

.woocommerce #payment ul.wc_payment_methods,
#payment .wc_payment_methods{list-style:none;margin:0 0 14px;padding:0;
  display:flex;flex-direction:column;gap:8px;border:0}
#payment .wc_payment_method{border:1.5px solid var(--line);border-radius:11px;padding:12px}
#payment .wc_payment_method label{font-weight:650;font-size:14px;display:flex;align-items:center;gap:8px;cursor:pointer}
#payment .wc_payment_method input[type=radio]{accent-color:var(--price);width:18px;height:18px}
.woocommerce #payment div.payment_box,
#payment .payment_box{font-size:13px;color:var(--fg-2);margin:8px 0 0;padding:8px 0 0;
  background:none;border-top:1px dashed var(--line);border-radius:0;line-height:1.55}
.woocommerce #payment div.payment_box::before{display:none}
#payment .payment_box p{margin:0;padding:0}

.woocommerce-checkout #payment{background:transparent;border-radius:0}
.checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:16px}
 
.checkout .col2-set::before,.checkout .col2-set::after{display:none}

 
.crumb{font-size:12.5px;color:var(--fg-3);margin-bottom:10px}
 
.crumb a{color:var(--fg)}
.crumb .sep{margin:0 6px;color:var(--line)}

.archive-head{margin-bottom:14px}
.archive-head h1{font-size:23px}
.archive-head .count{font-size:14px;font-weight:400}
.archive-desc{font-size:13.5px;color:var(--fg-2);max-width:70ch;margin-top:6px}

.plp{display:grid;grid-template-columns:246px minmax(0,1fr);gap:20px;align-items:start}
 
.plp-nofilters{grid-template-columns:minmax(0,1fr)}

.filters{background:#fff;border-radius:var(--r-lg);padding:4px 14px 14px;box-shadow:var(--sh-1);
  position:sticky;top:calc(var(--hdr-h) + 16px)}
.filters-head{display:none}
.fgroup{border-bottom:1px solid var(--line-2);padding:13px 0}
.fgroup:last-child{border:0}
 
.fgroup h2,.fgroup h4,.fgroup .widget-title,.fgroup .widgettitle{
  margin:0 0 9px;font-size:13px;font-weight:700;letter-spacing:0}

 
.woocommerce-widget-layered-nav-list{display:flex;flex-direction:column;gap:2px}
.woocommerce-widget-layered-nav-list li,
.fgroup li{
  list-style:none;display:flex;align-items:center;gap:6px;
  border-radius:8px;padding:0 8px;min-height:34px;
}
.woocommerce-widget-layered-nav-list li:hover,
.fgroup li:hover{background:var(--line-2)}
.woocommerce-widget-layered-nav-list li a,
.fgroup li a{flex:1;font-size:13.5px;color:var(--fg-2);padding:6px 0}
.woocommerce-widget-layered-nav-list li:hover a,
.fgroup li:hover a{color:var(--fg)}
.woocommerce-widget-layered-nav-list li .count,
.fgroup li .count{margin-left:auto;font-size:11.5px;color:var(--fg-3);flex:none}
.woocommerce-widget-layered-nav-list li.chosen{background:var(--price-soft)}
.woocommerce-widget-layered-nav-list li.chosen a{color:var(--price);font-weight:650}
.woocommerce-widget-layered-nav-list li.chosen a::before{content:"✓ "}

 
.fmore>summary{list-style:none;cursor:pointer;padding:7px 8px;margin-top:2px;
  font-size:12.5px;font-weight:650;color:var(--price);border-radius:8px}
.fmore>summary::-webkit-details-marker{display:none}
.fmore>summary::after{content:" ▾"}
.fmore[open]>summary::after{content:" ▴"}
.fmore>summary:hover{background:var(--line-2)}
.fmore[open]>summary{margin-bottom:2px}

.pillrow{display:flex;flex-wrap:wrap;gap:6px}
.colorrow{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13px;color:var(--fg-2);cursor:pointer}
.colorrow input[type=color]{width:38px;height:30px;border:1px solid var(--line);border-radius:8px;padding:2px;background:#fff;cursor:pointer}
.pill{font-size:12.5px;font-weight:600;padding:7px 11px;border-radius:8px;
  border:1px solid var(--line);color:var(--fg-2);display:inline-block}
.pill:hover{border-color:var(--fg-3)}
.pill.on{border-color:var(--price);background:var(--price-soft);color:var(--price)}

.toolbar{background:#fff;border-radius:var(--r-lg);padding:10px 14px;box-shadow:var(--sh-1);
  margin-bottom:14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.chip{height:34px;padding:0 13px;border-radius:999px;background:#fff;border:1px solid var(--line);
  font-size:13px;font-weight:600;color:var(--fg-2);display:inline-flex;align-items:center;gap:6px}
.chip.on,.chip:hover{border-color:var(--fg-3)}
.filters-toggle{display:none}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select{
  height:34px;border-radius:9px;border:1px solid var(--line);padding:0 10px;
  font-size:13px;font-weight:600;color:var(--fg-2);background:#fff}
.woocommerce-result-count{margin:0 0 0 auto;font-size:12.5px;color:var(--fg-3)}

 
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering{margin:0}
.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count{margin:0 0 0 auto}

.woocommerce-pagination{margin:24px 0;display:flex;justify-content:center}

 
 
ul.page-numbers,
.woocommerce nav.woocommerce-pagination ul{
  display:flex;gap:6px;flex-wrap:wrap;justify-content:center;
  list-style:none;padding:0;margin:0;border:0;white-space:normal}
ul.page-numbers li,
.woocommerce nav.woocommerce-pagination ul li{
  border:0;float:none;display:block;margin:0;padding:0;overflow:visible}

a.page-numbers,span.page-numbers,
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:grid;place-items:center;min-width:38px;height:38px;padding:0 10px;
  border-radius:10px;background:#fff;border:1px solid var(--line);
  font-size:13.5px;font-weight:600;line-height:1;color:var(--fg-2)}

a.page-numbers:hover,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus{
  background:var(--line-2);border-color:var(--fg-3);color:var(--fg)}

span.page-numbers.current,
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--ink);border-color:var(--ink);color:#fff}

span.page-numbers.dots,
.woocommerce nav.woocommerce-pagination ul li span.dots{
  background:none;border-color:transparent;min-width:auto;padding:0 4px;color:var(--fg-3)}

 
.navigation.pagination{margin:24px 0;display:flex;justify-content:center}
.navigation.pagination .nav-links{
  display:flex;gap:6px;flex-wrap:wrap;justify-content:center;align-items:center;
}
.navigation.pagination .page-numbers.dots{
  background:none;border-color:transparent;min-width:auto;padding:0 4px;
}

 
.woocommerce-info,.woocommerce-message,.woocommerce-error{
  background:#fff;border-radius:var(--r);padding:14px 16px 14px 44px;
  box-shadow:var(--sh-1);position:relative;line-height:1.55;
  font-size:14px;margin:0 0 16px;border-left:3px solid var(--brand)}
.woocommerce-info::before,.woocommerce-message::before,.woocommerce-error::before{
  left:16px;top:14px;line-height:1.55}
.woocommerce-error{border-left-color:var(--price)}
.woocommerce-message{border-left-color:var(--ok)}
.woocommerce-info{border-left-color:var(--info)}

 
 
.pdp{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px 24px;align-items:start}
.pdp-media {grid-column:1;grid-row:1}
.pdp .buybox{grid-column:2;grid-row:1 / span 2}
.pdp-detail{grid-column:1;grid-row:2}

.gallery{background:#fff;border-radius:var(--r-lg);padding:16px;box-shadow:var(--sh-1)}
.gallery .big{aspect-ratio:4/3;border-radius:var(--r);background:linear-gradient(160deg,#F7F8FA,#E9ECF1);
  display:grid;place-items:center;position:relative;overflow:visible}
.gallery .big img{width:100%;height:100%;object-fit:contain;padding:16px}
.gallery .big .flag{position:absolute;top:14px;left:14px;font-size:12px;padding:5px 10px}
.gallery .thumbs{display:flex;gap:8px;margin-top:12px;overflow-x:auto;scrollbar-width:none}
.gallery .thumbs::-webkit-scrollbar{display:none}
.gthumb{width:64px;height:64px;flex:none;border-radius:10px;background:#F2F4F7;
  border:2px solid transparent;overflow:hidden;padding:0}
.gthumb img{width:100%;height:100%;object-fit:contain}
.gthumb.on{border-color:var(--ink)}

.buybox{background:#fff;border-radius:var(--r-lg);padding:18px;box-shadow:var(--sh-1);
  position:sticky;top:calc(var(--hdr-h) + 16px)}
.buybox h1{font-size:20px;line-height:1.3;margin-bottom:8px}
.rating{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--fg-2);margin-bottom:14px;flex-wrap:wrap}

.pricebox{background:var(--price-soft);border-radius:var(--r);padding:12px 14px;margin-bottom:16px}
 
.price-line{
  display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;
  font-size:27px;font-weight:850;color:var(--price);letter-spacing:-.03em;line-height:1.15;
  font-variant-numeric:tabular-nums;
}
 
.screen-reader-text,
.price-line .screen-reader-text,
.price .screen-reader-text,
.woocommerce-Price-amount .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;border:0!important;white-space:nowrap!important}
.price-line ins,.price ins{text-decoration:none}
.mbuy .p{max-width:36%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
 
.price-line .price,.price-line ins,.price-line .woocommerce-Price-amount{
  font-size:inherit;font-weight:inherit;color:inherit;letter-spacing:inherit;line-height:inherit;margin:0;
}
.price del{opacity:.55;font-size:.85em}
.price-line del,.price-line .price del{
  font-size:14px;font-weight:600;color:var(--fg-3);opacity:.75;text-decoration:line-through;
}
.pricebox .sub{font-size:12.5px;color:var(--fg-2);margin-top:4px}

.opt{margin-bottom:14px}
.opt .lbl{font-size:12.5px;font-weight:700;margin-bottom:7px;display:flex;gap:5px;align-items:center}
.opt .lbl .req{color:var(--price)}
.optrow{display:flex;flex-wrap:wrap;gap:8px}
.obtn{border:1.5px solid var(--line);border-radius:10px;padding:9px 12px;font-size:13px;font-weight:650;
  color:var(--fg-2);text-align:left;line-height:1.25;position:relative;min-height:44px}
.obtn small{display:block;font-size:11px;font-weight:500;color:var(--fg-3);margin-top:1px}
 
.obtn.on{border-color:var(--price);color:var(--price-text);background:var(--price-soft)}
.obtn.on small{color:var(--price-text);opacity:.8}
.obtn.on::after{content:"✓";position:absolute;top:-7px;right:-7px;width:18px;height:18px;border-radius:50%;
  background:var(--price);color:#fff;font-size:11px;display:grid;place-items:center}
.obtn:disabled{opacity:.4;text-decoration:line-through;cursor:not-allowed}

.buy{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}
.btn{min-height:50px;border-radius:12px;font-weight:750;font-size:15px;display:grid;place-items:center;
  line-height:1.2;text-align:center;padding:8px 12px}
 
.btn .s{display:block;font-size:11px;font-weight:500;margin-top:2px}
.btn-primary{background:var(--price);color:#fff}
.btn-outline{border:1.5px solid var(--price);color:var(--price)}
.btn-ghost{border:1.5px solid var(--line);color:var(--fg)}
.btn-full{grid-column:1/-1}

.perks{margin-top:16px;border-top:1px solid var(--line-2);padding-top:14px;display:flex;flex-direction:column;gap:9px}
.perk{display:flex;gap:10px;font-size:13px;color:var(--fg-2)}
.perk b{color:var(--fg);font-weight:650}
.perk .ic{color:var(--ok);flex:none}

.stores{margin-top:14px;background:var(--bg);border-radius:var(--r);padding:12px}
.store{display:flex;gap:10px;padding:8px 0;font-size:12.5px;border-bottom:1px dashed var(--line);align-items:center}
.store:last-child{border:0}
.store .st{margin-left:auto;font-size:11px;font-weight:700;color:var(--ok);background:var(--ok-soft);
  padding:3px 8px;border-radius:6px;white-space:nowrap}
.store .st.no{color:var(--fg-3);background:var(--line-2)}
a.st{text-decoration:none}

.panel{background:#fff;border-radius:var(--r-lg);padding:18px;box-shadow:var(--sh-1);margin-top:20px}
.panel h3{margin:0 0 14px;font-size:16px}
.badgerow{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.badgerow .flag{font-size:12px;padding:5px 10px}

.spectbl{width:100%;border-collapse:collapse;font-size:13.5px}
.spectbl th,.spectbl td{text-align:left;padding:9px 0;border-bottom:1px solid var(--line-2);vertical-align:top}
.spectbl th{width:170px;color:var(--fg-2);font-weight:600}
.spectbl tr:last-child th,.spectbl tr:last-child td{border:0}

.prose p{margin:0 0 12px;color:var(--fg-2)}
.prose ul{list-style:disc;padding-left:20px;color:var(--fg-2);margin:0 0 12px}
.prose li{margin-bottom:4px}
.prose a{color:var(--info);text-decoration:underline;text-underline-offset:2px}
.prose img{border-radius:var(--r);margin:12px 0}

 
.mbuy{display:none}

 
.ft{background:var(--ink);color:#C6CCD6;margin-top:36px;padding:34px 0 0}
.ft .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:28px;padding-bottom:26px}
 
.ft h2.ft-h,.ft h5{color:#fff;font-size:13px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px}
.ft li{padding:4px 0;font-size:13.5px}
.ft a:hover{color:var(--brand)}
.ft .logo{margin-bottom:12px}
.ft-about{font-size:13px;color:#98A1AE;margin:0 0 12px}
.paylist{display:flex;gap:8px;flex-wrap:wrap}
.paylist .pill{border-color:#2A323E;color:#C6CCD6}
.ft .br{font-size:13px;padding:8px 0;border-bottom:1px solid #212934}
.ft .br:last-child{border:0}
.ft .br b{display:block;color:#fff;font-weight:600}
.ft .br span{color:var(--brand);font-weight:600}
.ft .bottom{border-top:1px solid #212934;padding:14px 0;font-size:12px;color:#79828F;
  display:flex;gap:16px;flex-wrap:wrap}

 

 
.vio-btn-solid .btn-primary,
.vio-btn-solid .cardbtn,
.vio-btn-solid .checkout-button,
.vio-btn-solid #place_order{background:var(--price);color:var(--price-ink);border:0}

.vio-btn-outline .btn-primary,
.vio-btn-outline .cardbtn,
.vio-btn-outline .checkout-button,
.vio-btn-outline #place_order{
  background:#fff;color:var(--price);border:2px solid var(--price)}

.vio-btn-gradient .btn-primary,
.vio-btn-gradient .cardbtn,
.vio-btn-gradient .checkout-button,
.vio-btn-gradient #place_order{
  background:linear-gradient(135deg,var(--price),rgba(var(--brand-rgb),.95));
  color:var(--price-ink);border:0}

.vio-btn-raised .btn-primary,
.vio-btn-raised .cardbtn,
.vio-btn-raised .checkout-button,
.vio-btn-raised #place_order{
  background:var(--price);color:var(--price-ink);border:0;
  box-shadow:0 4px 0 rgba(var(--price-rgb),.45)}
.vio-btn-raised .btn-primary:active,
.vio-btn-raised .cardbtn:active{transform:translateY(3px);box-shadow:0 1px 0 rgba(var(--price-rgb),.45)}

.vio-btn-soft .btn-primary,
.vio-btn-soft .cardbtn,
.vio-btn-soft .checkout-button,
.vio-btn-soft #place_order{
  background:rgba(var(--price-rgb),.12);color:var(--price);border:0;font-weight:800}

 
.vio-btn-solid .cardbtn-opt,
.vio-btn-outline .cardbtn-opt,
.vio-btn-gradient .cardbtn-opt,
.vio-btn-raised .cardbtn-opt,
.vio-btn-soft .cardbtn-opt{
  background:var(--price);border:1.5px solid var(--price);color:var(--price-ink);
  font-weight:700;box-shadow:none}
.vio-btn-solid .cardbtn-opt:hover,
.vio-btn-outline .cardbtn-opt:hover,
.vio-btn-gradient .cardbtn-opt:hover,
.vio-btn-raised .cardbtn-opt:hover,
.vio-btn-soft .cardbtn-opt:hover{
  background:var(--price-600);border-color:var(--price-600);color:var(--price-ink)}

 
.vio-btn-solid .cardbtn-het,
.vio-btn-outline .cardbtn-het,
.vio-btn-gradient .cardbtn-het,
.vio-btn-raised .cardbtn-het,
.vio-btn-soft .cardbtn-het{
  background:var(--info);border:0;color:#fff;
  font-weight:700;box-shadow:none}
.vio-btn-solid .cardbtn-het:hover,
.vio-btn-outline .cardbtn-het:hover,
.vio-btn-gradient .cardbtn-het:hover,
.vio-btn-raised .cardbtn-het:hover,
.vio-btn-soft .cardbtn-het:hover{
  background:var(--info-600);border:0;color:#fff}

 
.btn.btn-primary.is-het{background:var(--info);color:#fff;border:0;box-shadow:none}
.btn.btn-primary.is-het:hover{background:var(--info-600)}
 
.vio-hover-glow .btn-primary.is-het:hover,
.vio-hover-glow .cardbtn-het:hover{box-shadow:0 0 0 4px rgba(var(--info-rgb),.25)}

 
.vio-shape-square .btn,.vio-shape-square .cardbtn,.vio-shape-square .cta,
.vio-shape-square .chip,.vio-shape-square .pill,.vio-shape-square .obtn,
.vio-shape-square .paybtn,.vio-shape-square .button,.vio-shape-square #place_order{border-radius:0}

.vio-shape-soft .btn,.vio-shape-soft .cardbtn,.vio-shape-soft .cta,
.vio-shape-soft .obtn,.vio-shape-soft .paybtn{border-radius:var(--r)}

.vio-shape-pill .btn,.vio-shape-pill .cardbtn,.vio-shape-pill .cta,
.vio-shape-pill .obtn,.vio-shape-pill .paybtn,
.vio-shape-pill .button,.vio-shape-pill #place_order{border-radius:999px}

 
.vio-bsize-sm .btn,.vio-bsize-sm .checkout-button,.vio-bsize-sm #place_order{min-height:42px;font-size:14px}
.vio-bsize-sm .cardbtn{min-height:34px;font-size:12.5px}
.vio-bsize-sm .cta{min-height:40px;font-size:13.5px}

.vio-bsize-lg .btn,.vio-bsize-lg .checkout-button,.vio-bsize-lg #place_order{min-height:58px;font-size:16.5px}
.vio-bsize-lg .cardbtn{min-height:44px;font-size:14px}
.vio-bsize-lg .cta{min-height:52px;font-size:16px}

 
.vio-hover-lift .btn,.vio-hover-lift .cardbtn,.vio-hover-lift .cta{transition:transform .16s,box-shadow .16s}
.vio-hover-lift .btn:hover,.vio-hover-lift .cardbtn:hover,.vio-hover-lift .cta:hover{
  transform:translateY(-2px);box-shadow:var(--sh-2)}

.vio-hover-fill .btn,.vio-hover-fill .cardbtn,.vio-hover-fill .cta{transition:filter .16s}
.vio-hover-fill .btn:hover,.vio-hover-fill .cardbtn:hover,.vio-hover-fill .cta:hover{filter:brightness(.9)}

.vio-hover-scale .btn,.vio-hover-scale .cardbtn,.vio-hover-scale .cta{transition:transform .16s}
.vio-hover-scale .btn:hover,.vio-hover-scale .cardbtn:hover,.vio-hover-scale .cta:hover{transform:scale(1.03)}

.vio-hover-glow .btn,.vio-hover-glow .cardbtn,.vio-hover-glow .cta{transition:box-shadow .2s}
.vio-hover-glow .btn-primary:hover,.vio-hover-glow .cardbtn:hover{box-shadow:0 0 0 4px rgba(var(--price-rgb),.25)}
.vio-hover-glow .cta:hover{box-shadow:0 0 0 4px rgba(var(--brand-rgb),.35)}

.vio-hover-none .btn,.vio-hover-none .cardbtn,.vio-hover-none .cta{transition:none}
.vio-hover-none .btn:hover,.vio-hover-none .cardbtn:hover,.vio-hover-none .cta:hover{transform:none;filter:none}

 
.vio-card-shadow .pcard{box-shadow:var(--sh-1);border:0}
.vio-card-border .pcard{box-shadow:none;border:1px solid var(--line)}
.vio-card-border .pcard:hover{border-color:var(--price);transform:none;box-shadow:none}
.vio-card-flat .pcard{box-shadow:none;border:0;background:transparent;--pcard-pad:0 0 12px}
.vio-card-flat .pcard:hover{transform:none;box-shadow:none}
.vio-card-flat .pcard .thumb{background:var(--line-2)}
.vio-card-raised .pcard{box-shadow:0 6px 0 var(--line);border:1px solid var(--line)}
.vio-card-raised .pcard:hover{transform:translateY(-3px);box-shadow:0 9px 0 var(--line)}

 
.vio-cardbtn-hide .cardbtn{display:none}
.vio-cardbtn-hover .cardbtn{opacity:0;transform:translateY(4px);transition:opacity .16s,transform .16s}
.vio-cardbtn-hover .pcard:hover .cardbtn,
.vio-cardbtn-hover .pcard:focus-within .cardbtn{opacity:1;transform:none}
@media (hover:none){
   
  .vio-cardbtn-hover .cardbtn{opacity:1;transform:none}
}

 
.vio-hide-specs .pcard .specs{display:none}
.vio-hide-rating .pcard .foot .stars,
.vio-hide-rating .pcard .foot .stars + b{display:none}
.vio-hide-sold .pcard .foot .sold{display:none}

 

 
.panel,.spectbl,.woocommerce table.shop_table{max-width:100%}
 
.panel.page-article{max-width:100%}
 
.spectbl{width:100%}
.panel .spectbl{width:100%}
 
.spectbl td{overflow-wrap:anywhere}

 
.cat,.chip,.obtn,.cardbtn,.filters-toggle{min-height:36px}
.btn,.cta,.hbtn,.paybtn{min-height:44px}

 
@media (max-width:1200px){
  .pdp{grid-template-columns:minmax(0,1fr) 360px;gap:20px}
  .mega{grid-template-columns:200px 1fr 220px;gap:18px;padding:16px}
  .mega .series{grid-template-columns:repeat(2,1fr)}
  .mega .series .serie-kids{grid-template-columns:repeat(2,1fr)}
}

 
@media (max-width:1080px){
  .pdp{grid-template-columns:minmax(0,1fr) 320px}
  .plp{grid-template-columns:200px minmax(0,1fr);gap:16px}
  .ft .cols{grid-template-columns:1fr 1fr}
  .hero-main h1{font-size:30px}
  .trust{grid-template-columns:repeat(2,1fr)}
  ul.products,.grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
}

 
@media (max-width:860px){
  :root{--hdr-h:auto;--logo-h:34px;--logo-mark:34px;--logo-mw:140px}

   
  :root{--topbar-h:36px}
   
  .topbar .wrap{height:var(--topbar-h);min-height:0;padding-top:0;padding-bottom:0;
    flex-wrap:nowrap;gap:10px}
  .topbar .usps{display:none}
   
  .topbar-links{display:flex;gap:0}
  .topbar-links > a{display:none}
  .topbar-social{margin-left:0;gap:3px}
  .topbar-social .soc{width:26px;height:26px;opacity:.85}
  .topbar-social .soc-zalo{width:auto;padding:0 4px}
   
  .topbar-contact{flex:1;min-width:0;gap:8px}
  .topbar-contact .tbc{font-size:11.5px;min-width:0;gap:5px}
  .topbar-contact .tbc span{overflow:hidden;text-overflow:ellipsis}

  .hdr .wrap{
    padding-top:10px;padding-bottom:10px;flex-wrap:wrap;gap:10px;
    align-items:center;
  }
  .logo{max-width:min(52vw,200px)}
  .logo .txt b{font-size:16px}
  .logo .txt small{font-size:9px;letter-spacing:.08em}
  .hsearch{order:3;flex-basis:100%;max-width:none}
  .hsearch input[type=search]{height:44px}
  .hbtn{padding:8px 8px;min-width:44px;min-height:44px}
  .hbtn .l1{display:none}
  .hbtn .l2{font-size:11.5px;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hact{gap:0;flex:none;margin-left:auto}
   
  .hact .hbtn-stores{display:none}
  .hact .hbtn.call .l2{max-width:88px}

   
  .hdr{position:static}
  .catbar{position:sticky;top:var(--stuck-top,0px);z-index:89}
  html.vio-hdr-sticky .hdr{
    position:sticky;top:calc(var(--stuck-top,0px) - var(--hdr-stuck-off,0px));z-index:100}
  html.vio-hdr-sticky .catbar{top:calc(var(--stuck-top,0px) + var(--hdr-stuck-keep,0px))}
  .catbar .wrap{
    height:44px;gap:4px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px;
  }
  .cat{scroll-snap-align:start;height:36px;padding:0 12px;font-size:13px}
   
  .mega{display:none !important}
  .cat.has-mega .cat-caret{opacity:.75}

   
   
  body.mega-open{overflow:hidden}
   
  body.mega-open .catbar{position:relative;z-index:500}
  body.mega-open .catbar .wrap{overflow:visible}

  .mega-host.mega-open .mega{
    display:block !important;
    position:fixed;inset:0;z-index:1;
    max-width:none;margin:0;border-radius:0;box-shadow:none;
    padding:0 14px calc(24px + env(safe-area-inset-bottom,0px));
    overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
  }
  .mega-host.mega-open .mega-head{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    position:sticky;top:0;z-index:2;
    margin:0 -14px 4px;padding:10px 14px;
    background:#fff;border-bottom:1px solid var(--line,rgba(0,0,0,.08));
  }
  .mega-head .mega-all{font-weight:700;font-size:15px;color:var(--price)}
  .mega-head .mega-close{
    display:flex;align-items:center;justify-content:center;flex:none;
    width:40px;height:40px;margin-right:-8px;padding:0;
    border:0;background:transparent;color:var(--fg-2);cursor:pointer;
  }
  .mega-host.mega-open .mega h5{margin-top:14px}
   
  .mega-host.mega-open .brands li a{padding:11px 10px;font-size:15px;min-height:44px}
  .mega-host.mega-open .series{grid-template-columns:1fr}
  .mega-host.mega-open .series .serie-kids{grid-template-columns:repeat(2,1fr)}
  .mega-host.mega-open .series a{padding:9px 0;font-size:14px}
  .mega-host.mega-open .quick a{padding:11px 10px;font-size:14.5px}

   
  .mega-host.mega-open .brands li{display:flex;align-items:center;gap:4px}
  .mega-host.mega-open .brands li a{flex:1;min-width:0}
  .mega-host.mega-open .brand-more{
    display:flex;align-items:center;justify-content:center;flex:none;
    width:44px;height:44px;padding:0;
    border:0;background:transparent;color:var(--fg-3);cursor:pointer;
  }
  .mega-host.mega-open .series-back{
    display:flex;align-items:center;gap:6px;
    margin:6px 0 2px;padding:8px 10px 8px 4px;min-height:44px;
    border:0;background:transparent;cursor:pointer;
    font:inherit;font-size:14px;font-weight:700;color:var(--price);
  }
   
  .mega-host.mega-open .mega:not(.drill) .mega-series{display:none}
  .mega-host.mega-open .mega.drill .brands-col{display:none}
  .mega-host.mega-open .mega.drill .quick{display:none}

  .page-pad{padding-top:12px;padding-bottom:12px}

  .hero{grid-template-columns:minmax(0,1fr);margin:10px 0}
  .hero-main{padding:20px 18px;min-height:auto;border-radius:var(--r-lg)}
  .hero-main h1{font-size:clamp(22px,6.2vw,28px);max-width:none}
  .hero-main p{font-size:14px}
  .hero-cta .cta{flex:1 1 auto;justify-content:center;min-height:46px}
  .hero-side{flex-direction:row;gap:10px}
  .promo{padding:14px;min-height:88px}
  .trust{grid-template-columns:1fr 1fr;gap:10px}
  .trust .t{padding:12px}

  .pdp,.plp{grid-template-columns:minmax(0,1fr)}
  .pdp-media,.pdp .buybox,.pdp-detail{grid-column:1;grid-row:auto}
  .buybox{position:static;padding:16px;margin-top:4px}
  .gallery .big{aspect-ratio:1;min-height:0}
  .gallery .thumbs{gap:6px}
  .gthumb{width:56px;height:56px}
  .spectbl th{width:38%;min-width:100px}
  .optrow{gap:8px}
  .obtn{min-height:42px;padding:8px 12px}

  ul.products,.grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .pcard{--pcard-pad:10px;--pcard-title:13px;border-radius:12px}
   
  .pcard h3{line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;
    line-clamp:3;overflow:hidden;height:3.9em}  
  .cardbtn{min-height:40px;font-size:13px}

   
  .filters{
    position:fixed;
    top:0;bottom:0;left:0;
    width:min(88vw,340px);
    max-width:100%;
    z-index:200;border-radius:0;
    overflow-y:auto;-webkit-overflow-scrolling:touch;
    transform:translateX(-105%);
    transition:transform .22s ease;
    box-shadow:var(--sh-3);
    padding-left:max(14px, env(safe-area-inset-left));
    padding-right:14px;
    padding-bottom:max(16px, env(safe-area-inset-bottom));
  }
  .filters.open{transform:none}
  .filters-head{display:flex;align-items:center;justify-content:space-between;
    padding:14px 0 10px;border-bottom:1px solid var(--line-2);position:sticky;top:0;background:#fff;z-index:1}
  .filters-close{font-size:18px;width:44px;height:44px;border-radius:50%;background:var(--line-2);display:grid;place-items:center}
  .filters-toggle{display:inline-flex;min-height:40px}
  body.filters-open{overflow:hidden;touch-action:none}
  body.filters-open::after{
    content:"";position:fixed;inset:0;background:rgba(14,17,22,.45);z-index:150;
    backdrop-filter:blur(1px);
  }

  .toolbar{gap:8px}
   
  .woocommerce .woocommerce-result-count,
  .woocommerce-page .woocommerce-result-count{width:100%;margin:0}
  .woocommerce-result-count{width:100%;margin:0;font-size:12.5px}
  .woocommerce-ordering{flex:1;min-width:0}
  .woocommerce-ordering select{width:100%;max-width:100%;min-height:40px}

  .buy{grid-template-columns:1fr}

   
  .mbuy{
    display:flex;position:fixed;bottom:0;left:0;right:0;z-index:140;background:#fff;
    box-shadow:0 -6px 20px rgba(14,17,22,.12);
    padding:9px 12px calc(9px + env(safe-area-inset-bottom));
    gap:8px;align-items:center;
  }
  .mbuy .p{
    font-weight:850;color:var(--price);font-size:15px;line-height:1.15;flex:0 1 auto;
    max-width:34%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .mbuy .btn{min-height:46px;font-size:13.5px;flex:1;padding:0 8px}
  .mbuy .mcall,.mbuy .mcart{flex:0 0 48px;padding:0;font-size:18px;min-width:48px}
  body.single-product{padding-bottom:calc(76px + env(safe-area-inset-bottom))}

  .checkout .col2-set{grid-template-columns:1fr}
   
  .woocommerce-cart-form__contents .product-name .variation{text-align:right}
   
  #content .woocommerce table.shop_table td.product-thumbnail{
    display:block;width:auto;padding:12px 12px 0;text-align:left!important}
  .vio-cart-actions-in{flex-direction:column;align-items:stretch}
  .shop_table td.actions .coupon .input-text{width:100%}
   
  .vio-toast{
    bottom:calc(84px + env(safe-area-inset-bottom));left:12px;right:12px;max-width:none;
    transform:translate(0,20px);text-align:center;
    padding-right:calc(18px + var(--float-size));
  }
  .vio-toast.on{transform:translate(0,0)}

  .ft{padding-bottom:max(24px, env(safe-area-inset-bottom))}
  .ft .cols{grid-template-columns:1fr;gap:20px}
  .ft .bottom{flex-direction:column;align-items:flex-start;gap:6px;font-size:12px}

  .postgrid{grid-template-columns:1fr}
  .vio-modal-box{width:min(100%,420px);margin:12px;max-height:min(90vh,640px)}
  .vio-modal-box.vio-inst{width:min(100%,520px)}
  .sec-head{flex-wrap:wrap;gap:8px}
  .sec-head h2{font-size:18px}
}

 
@media (max-width:782px){
  body.admin-bar{--stuck-top:46px}
}

 
@media (max-width:640px){
  .hero-side{flex-direction:column}
  .trust .t span{font-size:12px}
   
  .hact .hbtn.call span:not(.sr){display:none}  
  .hact .hbtn.call{justify-content:center}
  .hact .hbtn.cart .l2{display:none}
  .hact .hbtn-account{padding:8px 6px;min-width:40px}
  .catbar .wrap{padding-left:4px;padding-right:4px}
  .promo b{font-size:14px}
  .price-line .price{font-size:26px}
  .paybtn{padding:10px 12px}
  .vio-inst .vio-modal-body{padding:14px}
  .vio-inst-hero .v{font-size:26px}
  .vio-inst .optrow .obtn{flex:1 1 130px}
   
  .vio-insttbl{font-size:12px;min-width:0}
  .vio-insttbl th,.vio-insttbl td{padding:8px 7px}
}

 
@media (max-width:520px){
  .trust{grid-template-columns:1fr}
  .archive-head h1{font-size:18px}
  .buybox h1{font-size:17px;line-height:1.25}
  .price-line .price{font-size:22px}
  .hero-main{padding:16px}
  .hero-cta{flex-direction:column}
  .hero-cta .cta{width:100%}
  .mbuy .p{font-size:14px;max-width:30%}
  .gthumb{width:48px;height:48px}
  .notfound{padding:20px 16px}
  .e404{padding:18px 14px 20px}
  .e404-art{max-width:220px}
  .e404 h1{font-size:20px}
}

 
@media (max-width:380px){
  ul.products,.grid{gap:8px}
  .pcard{--pcard-pad:8px;--pcard-title:12px}
  .cardbtn{font-size:12px;min-height:38px}
  .hbtn{padding:6px}
  .wrap{padding-left:12px;padding-right:12px}
  .mbuy{gap:6px;padding-left:8px;padding-right:8px}
  .mbuy .btn{font-size:12.5px}
}

 
@media (max-width:860px) and (max-height:430px) and (orientation:landscape){
  .hero-main{min-height:0;padding:14px 16px}
  .hero-main h1{font-size:20px}
  .mbuy{padding-top:6px;padding-bottom:6px}
  body.single-product{padding-bottom:60px}
  .gallery .big{max-height:42vh}
}

 
@media (min-width:1081px){
  ul.products,.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
}
@media (min-width:1400px){
  .pdp{grid-template-columns:minmax(0,1fr) 420px;gap:28px}
}

 
@media (hover:none){
  .pcard:hover{transform:none}
  .btn:hover,.cardbtn:hover,.cta:hover{transform:none}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none !important;animation:none !important}
}

 
@media print{
  .topbar,.hdr,.catbar,.mbuy,.vio-chat,.vio-totop,.filters,.hact,.hsearch{display:none !important}
  body{padding-top:0 !important}
  body.single-product{padding:0 !important}
  .buybox{position:static;box-shadow:none;border:1px solid #ccc}
  a[href]::after{content:""}
}

 
@media screen and (max-width:768px){
  .woocommerce ul.products[class*="columns-"] li.product,
  .woocommerce-page ul.products[class*="columns-"] li.product{
    float:none;width:auto;margin:0;padding:var(--pcard-pad,12px);
  }
  .woocommerce ul.products[class*="columns-"] li.product:nth-child(2n),
  .woocommerce-page ul.products[class*="columns-"] li.product:nth-child(2n){
    float:none;margin-right:0;
  }
  .woocommerce ul.products[class*="columns-"] li.product:nth-child(2n+1),
  .woocommerce-page ul.products[class*="columns-"] li.product:nth-child(2n+1){
    clear:none;
  }

   
  .price-row,.pcard .price,.price-row .price{white-space:nowrap}
}

 
.vio-co-col{min-width:0}
.vio-co-side{display:flex;flex-direction:column}

 
.woocommerce table.shop_table.vio-review{background:#fff;box-shadow:var(--sh-1);border-radius:var(--r-lg);
  border-collapse:collapse;font-size:14px;margin:0;overflow:hidden}
.woocommerce table.vio-review th,.woocommerce table.vio-review td{padding:13px 16px;
  border-bottom:1px solid var(--line-2);border-top:0;vertical-align:top}
.woocommerce table.vio-review th{text-align:left;font-weight:600;color:var(--fg-2)}
.woocommerce table.vio-review td{text-align:right;font-weight:700;white-space:nowrap}
.woocommerce table.vio-review tbody th{font-weight:600;color:var(--fg-2);line-height:1.45}
.vio-review .product-quantity{color:var(--fg-3);font-weight:700;white-space:nowrap}
.vio-review .product-meta{display:block;margin-top:3px;font-size:11.5px;color:var(--fg-3);line-height:1.45}
.vio-review tfoot th,.vio-review tfoot td{color:var(--fg-2)}
.woocommerce table.vio-review .order-total th{color:var(--fg);font-weight:800;font-size:15px}
.woocommerce table.vio-review .order-total td{font-size:20px;color:var(--price);font-weight:850;letter-spacing:-.02em}
.woocommerce table.vio-review tfoot tr:last-child th,.woocommerce table.vio-review tfoot tr:last-child td{border-bottom:0}

.vio-co-back{display:inline-block;margin-top:14px;font-size:13px;color:var(--fg-3);text-decoration:none}
.vio-co-back:hover{color:var(--brand)}

 
.vio-nho-dien{display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  margin:0 0 14px;padding:9px 12px;border-radius:10px;
  background:var(--brand-soft);color:var(--fg-2);font-size:12.5px;line-height:1.5}

 
.vio-hidden-field{display:none!important}
.woocommerce-invalid input,.woocommerce-invalid select{border-color:var(--price)}

#payment .wc_payment_method:has(input:checked){border-color:var(--price);background:var(--price-soft)}

 
.woocommerce #payment .vio-co-btn,
.vio-co-btn{display:inline-flex;align-items:center;justify-content:center;width:auto;
  min-height:48px;padding:0 22px;border-radius:12px;
  background:var(--price);color:#fff;font-size:15px;font-weight:750;line-height:1.55}
 
.vio-co-submit{align-items:flex-start}
.vio-co-note{font-size:12px;color:var(--fg-2);line-height:1.55;margin:10px 0 12px}
.vio-co-note a{color:var(--fg-2);text-decoration:underline}

 
.vio-acc-card{padding:18px 20px}
.vio-acc-h{font-size:16px;font-weight:800;margin:0 0 6px;letter-spacing:-.01em}
.vio-acc-lead{font-size:13px;color:var(--fg-2);margin:0 0 14px;line-height:1.55}

 
.vio-acc-login{display:grid;gap:16px;align-items:start}
.vio-acc-login-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.vio-acc-login .form-row{display:flex;flex-direction:column;gap:6px;margin:0 0 13px}
.vio-acc-login label{font-size:12.5px;font-weight:650;color:var(--fg-2)}
.vio-acc-login .required{color:var(--price)}
.vio-acc-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:4px}
.vio-acc-remember{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;
  font-size:13px;font-weight:500;color:var(--fg-2);margin:0}
.vio-acc-remember input{width:17px;height:17px;accent-color:var(--price)}
 
.woocommerce .vio-acc-btn.btn{display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 20px;border:0;border-radius:12px;
  font-size:14.5px;font-weight:750;line-height:1;cursor:pointer}
.woocommerce .vio-acc-btn.btn-primary{background:var(--price);color:#fff}
.woocommerce .vio-acc-btn.btn-primary:hover{background:var(--price);filter:brightness(1.06)}
.woocommerce .vio-acc-btn.btn-ghost{background:#fff;color:var(--fg);border:1.5px solid var(--line)}
.woocommerce .vio-acc-btn.btn-ghost:hover{background:#fff;border-color:var(--price);color:var(--price)}
.vio-acc-login .lost_password{margin:12px 0 0;font-size:13px}
.vio-acc-login .lost_password a{color:var(--fg-3)}
.vio-acc-login .lost_password a:hover{color:var(--price)}
.vio-acc-help{margin-top:16px;font-size:13px;color:var(--fg-2);line-height:1.6}
.vio-acc-help a{color:var(--price)}

 
.vio-acc-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}
 
#content .woocommerce-MyAccount-navigation,
#content .woocommerce-MyAccount-content{float:none;width:auto;margin:0}
.vio-acc-nav{padding:10px}
.vio-acc-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.vio-acc-nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;
  font-size:14px;font-weight:600;color:var(--fg);text-decoration:none}
.vio-acc-nav a:hover{background:var(--line-2)}
.vio-acc-nav .is-active a{background:var(--price-soft);color:var(--price)}
.vio-acc-ico{font-size:15px;line-height:1;width:20px;text-align:center;flex:none}

.vio-acc-hello{margin-bottom:16px}
.vio-acc-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.vio-acc-tile{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:var(--r);
  border:1px solid var(--line);text-decoration:none;color:var(--fg);background:#fff;
  transition:border-color .15s,box-shadow .15s}
.vio-acc-tile:hover{border-color:var(--price);box-shadow:var(--sh-1)}
.vio-acc-tile-ico{font-size:22px;line-height:1;margin-bottom:4px}
.vio-acc-tile b{font-size:14.5px;font-weight:750}
.vio-acc-tile small{font-size:12.5px;color:var(--fg-2);line-height:1.5}

 

 
.woocommerce .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info{
  font-size:13.5px;border-radius:var(--r-lg) !important;padding:16px 18px !important;
  border:1.5px solid var(--line) !important;background:var(--line-2) !important;
  line-height:1.6;margin:0 0 18px;display:flex;align-items:center;
  gap:14px;flex-wrap:wrap;color:var(--fg-2);box-shadow:none !important
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-message::before,
.woocommerce .woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::before,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before{
  content:none !important;display:none !important
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce .woocommerce-MyAccount-content .woocommerce-message .button,
.woocommerce .woocommerce-MyAccount-content .woocommerce-info .wc-forward,
.woocommerce .woocommerce-MyAccount-content .woocommerce-message .wc-forward{
  margin-left:0;display:inline-flex;align-items:center;justify-content:center;
   
  padding:0 20px !important;border-radius:var(--r-sm) !important;
  background:var(--brand) !important;color:var(--brand-ink) !important;
  font-size:13.5px;font-weight:700;border:1.5px solid var(--brand) !important;
  cursor:pointer;text-decoration:none;white-space:nowrap;
  transition:background .15s,border-color .15s,box-shadow .15s;float:none !important
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-info .button:hover,
.woocommerce .woocommerce-MyAccount-content .woocommerce-message .button:hover,
.woocommerce .woocommerce-MyAccount-content .woocommerce-info .wc-forward:hover,
.woocommerce .woocommerce-MyAccount-content .woocommerce-message .wc-forward:hover{
  background:var(--brand-600) !important;border-color:var(--brand-600) !important;
  box-shadow:0 0 0 3px rgba(var(--brand-rgb),.30)
}
 
.woocommerce .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info{
  justify-content:flex-start
}

 
.woocommerce-MyAccount-content table.shop_table{
  width:100%;border-collapse:separate;border-spacing:0;
  border:0;border-radius:var(--r);overflow:hidden;
  font-size:14px;background:#fff;margin:0
}
.woocommerce-MyAccount-content table.shop_table thead th{
  background:var(--line-2);font-size:11.5px;text-transform:uppercase;
  letter-spacing:.07em;color:var(--fg-3);font-weight:700;
  padding:12px 16px;border-bottom:1.5px solid var(--line);
  white-space:nowrap
}
.woocommerce-MyAccount-content table.shop_table td{
  padding:14px 16px;border-bottom:1px solid var(--line-2);
  vertical-align:middle;color:var(--fg)
}
.woocommerce-MyAccount-content table.shop_table tbody tr:last-child td{
  border-bottom:0
}
.woocommerce-MyAccount-content table.shop_table tbody tr{
  transition:background .12s
}
.woocommerce-MyAccount-content table.shop_table tbody tr:hover{
  background:var(--line-2)
}

 
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-number a{
  font-weight:800;color:var(--price);text-decoration:none;
  letter-spacing:-.01em
}
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-number a:hover{
  text-decoration:underline
}

 
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-date{
  color:var(--fg-2);font-size:13.5px
}

 
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-status{
  font-size:12.5px;font-weight:700
}
 
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-status::before{
  content:none
}

 
.vio-order-badge{
  display:inline-flex;align-items:center;gap:7px;
  padding:4px 12px;border-radius:999px;font-size:12.5px;font-weight:700;
  background:var(--line-2);color:var(--fg);white-space:nowrap
}
.vio-order-badge::before{
  content:'';display:block;width:8px;height:8px;border-radius:50%;
  background:var(--dot, var(--fg-3));flex:none
}

 
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-total{
  font-weight:800;color:var(--price);white-space:nowrap
}

 
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-actions a.button,
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-actions a.wc-forward{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:68px;height:36px;padding:0 16px;
  border-radius:var(--r-sm);border:1.5px solid var(--line);
  background:#fff;color:var(--fg);font-size:13px;font-weight:700;
  text-decoration:none;cursor:pointer;white-space:nowrap;
  transition:border-color .15s,color .15s,box-shadow .15s
}
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-actions a.button:hover,
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-actions a.wc-forward:hover{
  border-color:var(--price);color:var(--price);box-shadow:0 0 0 3px var(--price-soft)
}

 
.woocommerce-MyAccount-content .woocommerce-pagination{
  margin-top:18px;display:flex;justify-content:center;gap:10px
}
.woocommerce-MyAccount-content .woocommerce-pagination a,
.woocommerce-MyAccount-content .woocommerce-pagination span,
.woocommerce-MyAccount-content .woocommerce-button--next,
.woocommerce-MyAccount-content .woocommerce-button--previous,
.woocommerce-MyAccount-content .woocommerce-Button--next,
.woocommerce-MyAccount-content .woocommerce-Button--previous{
  display:inline-flex;align-items:center;height:40px;padding:0 22px;
  border-radius:var(--r-sm);border:1.5px solid var(--line);background:#fff;
  font-size:13.5px;font-weight:700;color:var(--fg);text-decoration:none;
  transition:border-color .15s,color .15s,box-shadow .15s;cursor:pointer
}
.woocommerce-MyAccount-content .woocommerce-pagination a:hover,
.woocommerce-MyAccount-content .woocommerce-button--next:hover,
.woocommerce-MyAccount-content .woocommerce-button--previous:hover,
.woocommerce-MyAccount-content .woocommerce-Button--next:hover,
.woocommerce-MyAccount-content .woocommerce-Button--previous:hover{
  border-color:var(--price);color:var(--price);box-shadow:0 0 0 3px var(--price-soft)
}

 
.woocommerce-MyAccount-content fieldset{
  border:1.5px solid var(--line);border-radius:var(--r);
  padding:18px;margin:18px 0
}
.woocommerce-MyAccount-content fieldset legend{
  font-size:14px;font-weight:800;padding:0 8px;color:var(--fg)
}
.woocommerce-MyAccount-content .woocommerce-address-fields .form-row input,
.woocommerce-MyAccount-content .woocommerce-address-fields .form-row select,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row input,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row select{
  width:100%;min-height:44px;border:1.5px solid var(--line);border-radius:10px;
  padding:10px 12px;font:inherit;font-size:14.5px;background:#fff;color:var(--fg)
}
.woocommerce-MyAccount-content .woocommerce-address-fields .form-row input:focus,
.woocommerce-MyAccount-content .woocommerce-address-fields .form-row select:focus,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row input:focus,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row select:focus{
  outline:none;border-color:var(--price);box-shadow:0 0 0 3px var(--price-soft)
}
.woocommerce-MyAccount-content button[type=submit],
.woocommerce-MyAccount-content input[type=submit]{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 28px;border-radius:var(--r-sm);border:0;
  background:var(--price);color:#fff;font-size:14px;font-weight:750;
  cursor:pointer;transition:filter .15s
}
.woocommerce-MyAccount-content button[type=submit]:hover,
.woocommerce-MyAccount-content input[type=submit]:hover{
  filter:brightness(1.06)
}

 
.woocommerce-MyAccount-content .woocommerce-table--order-details{
  margin-top:12px
}
.woocommerce-MyAccount-content .order-again .button{
  display:inline-flex;align-items:center;height:40px;padding:0 22px;
  border-radius:var(--r-sm);border:1.5px solid var(--price);background:var(--price-soft);
  color:var(--price);font-size:13px;font-weight:700;text-decoration:none;
  transition:background .15s
}
.woocommerce-MyAccount-content .order-again .button:hover{
  background:var(--price);color:#fff
}

 
.woocommerce-MyAccount-content mark.order-status{
  background:var(--line-2);color:var(--fg);padding:3px 10px;
  border-radius:999px;font-size:13px
}

 
.woocommerce-MyAccount-content .woocommerce-OrderUpdates{
  list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:10px
}
.woocommerce-MyAccount-content .woocommerce-OrderUpdate{
  padding:12px 16px;background:var(--line-2);border-radius:var(--r);
  border:1px solid var(--line);font-size:13.5px
}
.woocommerce-MyAccount-content .woocommerce-OrderUpdate-meta{
  font-size:12px;color:var(--fg-3);margin-bottom:6px
}

 
.vio-ty{max-width:720px;margin:0 auto}
.vio-ty-head{text-align:center;padding:26px 20px 22px}
.vio-ty-tick{width:62px;height:62px;margin:0 auto 14px;border-radius:999px;
  display:grid;place-items:center;background:var(--ok-soft);color:var(--ok);font-size:30px;font-weight:800}
.vio-ty-head h1{font-size:23px;font-weight:850;margin:0 0 8px;letter-spacing:-.02em}
.vio-ty-head p{font-size:14px;color:var(--fg-2);margin:0;line-height:1.6}
.vio-ty-code{display:inline-block;margin-top:14px;padding:8px 16px;border-radius:999px;
  background:var(--line-2);font-size:14px;font-weight:800;letter-spacing:.02em}
.vio-ty-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.vio-ty-box h3{font-size:13px;font-weight:800;margin:0 0 10px;text-transform:uppercase;
  letter-spacing:.04em;color:var(--fg-3)}
.vio-ty-box dl{margin:0;display:flex;flex-direction:column;gap:7px}
.vio-ty-box .r{display:flex;justify-content:space-between;gap:12px;font-size:13.5px}
.vio-ty-box .r dt{color:var(--fg-3);flex:none}
.vio-ty-box .r dd{margin:0;font-weight:650;text-align:right}
.vio-ty-cta{display:flex;gap:10px;justify-content:center;margin-top:20px;flex-wrap:wrap}

@media (max-width:900px){
  .vio-acc-login-2{grid-template-columns:1fr}
   
  .vio-acc-grid{grid-template-columns:minmax(0,1fr)}
  .vio-acc-grid>*{min-width:0}
  .vio-acc-nav ul{flex-direction:row;flex-wrap:wrap;gap:6px}
   
  .vio-acc-nav li{max-width:100%}
  .vio-acc-nav a{padding:9px 12px}

  .checkout .col2-set{grid-template-columns:1fr}
   
  .checkout .col2-set .vio-co-side{display:contents}
  .checkout .col2-set .woocommerce-checkout-review-order{order:-1}
  .checkout .col2-set .vio-co-paycard{order:1}
  .vio-ty-grid{grid-template-columns:1fr}

   
  .woocommerce-MyAccount-content table.shop_table thead{display:none}
  .woocommerce-MyAccount-content table.shop_table,
  .woocommerce-MyAccount-content table.shop_table tbody{display:block}
  .woocommerce-MyAccount-content table.shop_table tr{
    display:flex;flex-wrap:wrap;gap:4px 12px;padding:14px 16px;
    border-bottom:1px solid var(--line-2);align-items:center
  }
  .woocommerce-MyAccount-content table.shop_table tr:last-child{border-bottom:0}
  .woocommerce-MyAccount-content table.shop_table td{
    display:inline;padding:0;border:0;font-size:13.5px
  }
  .woocommerce-MyAccount-content table.shop_table td::before{
    content:attr(data-title);font-size:11px;text-transform:uppercase;
    letter-spacing:.05em;color:var(--fg-3);font-weight:700;
    display:block;margin-bottom:2px
  }
  .woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-number{
    font-size:15px;flex:none
  }
  .woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-actions{
    margin-left:auto;flex:none
  }
  .woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-actions a.button,
  .woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-actions a.wc-forward{
    height:32px;min-width:auto;padding:0 14px;font-size:12px
  }
}

 
.vio-comments{max-width:100%}
.vio-comments .sec-head{margin-bottom:14px}
.vio-comments .sec-head h2{font-size:18px}

.vio-comments .comment-list{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-direction:column;gap:12px}
.vio-comments .comment-list .children{list-style:none;margin:12px 0 0;padding:0 0 0 16px;
  border-left:2px solid var(--line-2);display:flex;flex-direction:column;gap:12px}
.vio-comments .comment-body{background:var(--line-2);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px}
.vio-comments .comment-meta{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.vio-comments .comment-author{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700}
.vio-comments .comment-author img.avatar{width:36px;height:36px;border-radius:50%;flex:none;background:#fff}
.vio-comments .comment-author .says{display:none}
.vio-comments .comment-metadata{margin-left:auto;font-size:12px;color:var(--fg-3)}
.vio-comments .comment-metadata a{color:var(--fg-3)}
.vio-comments .comment-content p{margin:0 0 8px;font-size:14px;color:var(--fg-2)}
.vio-comments .comment-content p:last-child{margin-bottom:0}
.vio-comments .comment-awaiting-moderation{display:inline-block;margin-bottom:8px;font-size:12px;font-weight:650;
  color:var(--price);background:var(--price-soft);border-radius:999px;padding:3px 10px}
.vio-comments .reply{margin-top:10px}
.vio-comments .reply a{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;
  border:1.5px solid var(--line);background:#fff;font-size:12.5px;font-weight:700;color:var(--fg)}
.vio-comments .reply a:hover{border-color:var(--price);color:var(--price)}
.vio-comments .bypostauthor > .comment-body{border-color:var(--brand);background:var(--brand-soft)}

.vio-comments .comment-respond{margin-top:18px;padding-top:18px;border-top:1px solid var(--line-2)}
.vio-comments .comment-list + .comment-respond,
.vio-comments .comment-list .comment-respond{border-top:0;padding-top:0}
.vio-comments .comment-list .comment-respond{margin-top:12px}
.vio-comments .comment-reply-title small{margin-left:10px;font-size:12.5px;font-weight:600}
.vio-comments .comment-reply-title small a{color:var(--info)}
.vio-cf-note{margin:0}

 
.vio-cform{display:flex;flex-direction:column;gap:14px;align-items:stretch}
.vio-cf-row{margin:0;width:100%;display:flex;flex-direction:column;gap:6px}
.vio-cf-row label{font-size:12.5px;font-weight:650;color:var(--fg-2)}
.vio-cf-row .req{color:var(--price)}
.vio-cform input[type=text],.vio-cform input[type=email],.vio-cform input[type=url],.vio-cform textarea{
  width:100%;min-height:44px;border:1.5px solid var(--line);border-radius:10px;
  padding:10px 12px;font:inherit;font-size:14.5px;background:#fff;color:var(--fg)}
.vio-cform textarea{min-height:120px;resize:vertical}
.vio-cform input:focus,.vio-cform textarea:focus{
  outline:none;border-color:var(--price);box-shadow:0 0 0 3px var(--price-soft)}
.vio-cform .comment-form-cookies-consent{display:flex;align-items:center;gap:8px;margin:0;
  font-size:13px;color:var(--fg-2)}
.vio-cform .comment-form-cookies-consent input{width:16px;height:16px;accent-color:var(--price)}
.vio-cform .comment-form-cookies-consent label{margin:0}
.vio-cform .form-submit{margin:0}
.vio-cf-submit{min-height:48px;padding:0 26px;border-radius:12px;border:0;cursor:pointer;
  background:var(--price);color:#fff;font-weight:750;font-size:15px}
.vio-cf-submit:hover{filter:brightness(1.06)}

@media (max-width:640px){
  .vio-comments .comment-metadata{margin-left:0;width:100%;order:3}
  .vio-comments .comment-list .children{padding-left:10px}
}

 
@media (max-width:860px){
   
  .hsearch form,
  .hsearch input[type=search]{height:52px}
  .hsearch .go{height:44px;top:4px}
  .hsearch .ico{top:17px}

   
  .catbar .wrap{height:52px}
  .cat{height:44px}

   
  .obtn{min-height:44px}
  .linkbtn{min-height:44px;display:inline-flex;align-items:center}

   
  [data-vio-filters-open]{min-height:44px}
  .woocommerce-ordering select.orderby,
  .woocommerce .woocommerce-ordering select{min-height:44px}

   
  .woocommerce form .show-password-input,
  .woocommerce-page form .show-password-input,
  form .show-password-input{
    width:44px;height:44px;
    top:50%;transform:translateY(-50%);right:2px;
    display:flex;align-items:center;justify-content:center;
    background-position:center;
  }
  .woocommerce form .woocommerce-form__input-checkbox,
  .woocommerce-page form .woocommerce-form__input-checkbox,
  form input[type=checkbox].woocommerce-form__input{
    width:22px;height:22px;margin-right:8px;
  }
  .woocommerce form .woocommerce-form__label-for-checkbox,
  .woocommerce-page form .woocommerce-form__label-for-checkbox,
  label.woocommerce-form__label-for-checkbox{
    display:flex;align-items:center;min-height:44px;
  }

   
  .flag{font-size:11.5px}
  .spec{font-size:11.5px}
  .pcard small,
  .foot small,
  .prose small{font-size:11.5px}
}

 
.vio-social-login{margin:14px 0 4px;padding-top:14px;border-top:1px solid var(--line-2)}
.vio-social-login-label{display:block;margin-bottom:10px;font-size:13px;color:var(--fg-3);text-align:center}
.vio-social-login .nsl-container{margin:0}

 
.vio-social-login .nsl-container .nsl-container-buttons{display:grid;width:100%}
.vio-social-login .nsl-container .nsl-container-buttons > a{width:100%;max-width:none}
.vio-social-login .nsl-container .nsl-button{width:100%;min-height:46px;justify-content:center}

 
.vio-desc{position:relative;max-height:340px;overflow:hidden}
.vio-desc.mo{max-height:none;overflow:visible}
 
.vio-desc.co-the-mo::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:96px;pointer-events:none;
  background:linear-gradient(to bottom, rgba(255,255,255,0), var(--bg-card,#fff) 92%);
}
.vio-desc.mo::after{display:none}
.vio-desc-toggle{
  display:flex;align-items:center;justify-content:center;gap:6px;
  width:100%;min-height:44px;margin-top:12px;padding:0 16px;
  border:1px solid var(--line-2);border-radius:10px;background:transparent;
  font:inherit;font-size:14px;font-weight:700;color:var(--price);cursor:pointer;
}
.vio-desc-toggle:hover{background:var(--brand-soft)}
.vio-desc-toggle svg{transition:transform .18s ease}
.vio-desc.mo + .vio-desc-toggle svg{transform:rotate(180deg)}
.vio-desc-toggle .vio-desc-less{display:none}
.vio-desc.mo + .vio-desc-toggle .vio-desc-more{display:none}
.vio-desc.mo + .vio-desc-toggle .vio-desc-less{display:inline}
@media (max-width:860px){
  .vio-desc{max-height:260px}
}

 
.vio-review-login{margin:6px 0 4px}
.vio-review-login-text{margin:0 0 4px;font-size:14px;color:var(--fg-2)}
.vio-review-login .vio-social-login{border-top:0;padding-top:6px;max-width:420px}

 
.vio-acc-google-only{padding:6px 0 2px}
.vio-acc-google-only .vio-social-login{border-top:0;padding-top:0;margin-top:6px}
.vio-acc-google-note{margin:12px 0 0;font-size:13px;color:var(--fg-3);text-align:center}

 
.vio-reviews{margin-top:20px}
.vio-reviews-head{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line-2);
}
.vio-reviews-title{font-size:19px;line-height:1.3}
.vio-reviews-score{display:flex;align-items:center;gap:8px;flex:none}
.vio-reviews-num{font-size:22px;font-weight:800;color:var(--fg);line-height:1}
.vio-reviews-score .stars{font-size:15px}
.vio-reviews-empty{margin:0;color:var(--fg-2);font-size:14.5px}

 
.vio-reviews .commentlist{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.vio-reviews .commentlist > li[hidden]{display:none!important}
.vio-reviews .commentlist .comment_container{display:flex;gap:12px;align-items:flex-start}
.vio-reviews .commentlist img.avatar{width:44px;height:44px;border-radius:50%;flex:none}
.vio-reviews .comment-text{flex:1;min-width:0;background:var(--bg);border-radius:var(--r);padding:12px 14px}
.vio-reviews .woocommerce-review__author{font-weight:700;font-size:14.5px}
.vio-reviews .woocommerce-review__published-date{font-size:12.5px;color:var(--fg-3)}
.vio-reviews .description p{margin:6px 0 0;color:var(--fg-2);font-size:14px}
.vio-reviews .star-rating{font-size:12px}
.vio-reviews-more{display:block;min-height:42px;margin:16px auto 0;padding:8px 18px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--fg);font:inherit;font-weight:700;cursor:pointer}
.vio-reviews-more:hover{border-color:var(--price);color:var(--price)}
.vio-reviews-more:focus-visible{outline:2px solid var(--price);outline-offset:2px}
.vio-reviews-more[hidden]{display:none!important}

 
.vio-reviews-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--line-2)}
.vio-reviews-formtitle{display:block;margin-bottom:12px;font-size:16px;font-weight:800}
.vio-reviews .comment-form-rating label,
.vio-reviews .comment-form-comment label,
.vio-reviews .comment-form-author label,
.vio-reviews .comment-form-email label{
  display:block;margin-bottom:6px;font-size:13.5px;font-weight:700;color:var(--fg)
}
.vio-reviews .comment-form-rating select,
.vio-reviews .comment-form-author input,
.vio-reviews .comment-form-email input,
.vio-reviews .comment-form-comment textarea{
  width:100%;min-height:46px;padding:11px 13px;
  border:1px solid var(--line-2);border-radius:10px;background:#fff;
  font:inherit;font-size:15px;color:var(--fg);
}
.vio-reviews .comment-form-comment textarea{min-height:110px;line-height:1.5;resize:vertical}
.vio-reviews .comment-form-rating,
.vio-reviews .comment-form-author,
.vio-reviews .comment-form-email,
.vio-reviews .comment-form-comment{margin:0 0 12px}
.vio-reviews .form-submit{margin:4px 0 0}
.vio-reviews .vio-reviews-submit{min-height:46px;padding:0 22px;font-size:15px;cursor:pointer}
.vio-reviews .required{color:var(--price)}
.vio-reviews-locked{margin:0;padding:12px 14px;border-radius:var(--r);background:var(--bg);color:var(--fg-2);font-size:14px}

 
.vio-reviews .vio-review-login{margin-top:2px}
.vio-reviews .vio-review-login .vio-social-login{max-width:380px;margin-top:8px}

 
@media (min-width:700px){
  .vio-reviews .comment-form-author,
  .vio-reviews .comment-form-email{display:inline-block;width:calc(50% - 6px);vertical-align:top}
  .vio-reviews .comment-form-author{margin-right:12px}
}
@media (max-width:860px){
  .vio-reviews-title{font-size:17px}
  .vio-reviews .vio-review-login .vio-social-login{max-width:none}
}

 
.vio-reviews .comment-form-rating{display:flex;flex-direction:column;gap:6px}
.vio-reviews .comment-form-rating > label{margin:0}
.vio-rate{
   
  display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;
  gap:2px;align-self:flex-start;
}
.vio-rate input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}

 
.vio-reviews .comment-form-rating .vio-rate label{
  display:flex;align-items:center;justify-content:center;
  width:52px;height:52px;margin:0;padding:0;
  font-size:40px;font-weight:400;line-height:1;
  color:#DADCE0;cursor:pointer;
  transition:color .12s ease, transform .12s ease;
}
 
.vio-reviews .comment-form-rating .vio-rate input:checked ~ label{color:#F9AB00}
 
.vio-reviews .comment-form-rating .vio-rate:hover label{color:#DADCE0}
.vio-reviews .comment-form-rating .vio-rate label:hover,
.vio-reviews .comment-form-rating .vio-rate label:hover ~ label{color:#FBBC04}
.vio-reviews .comment-form-rating .vio-rate label:active{transform:scale(.92)}
.vio-reviews .comment-form-rating .vio-rate input:focus-visible + label{
  outline:2px solid var(--brand);outline-offset:2px;border-radius:10px;
}
.vio-rate-text{font-size:13.5px;color:var(--fg-3);min-height:20px}
.vio-rate-text.da-chon{color:var(--fg-2);font-weight:600}

 
.vio-reviews .comment-form-rating .vio-rate label.on{color:#F9AB00}
.vio-reviews .comment-form-rating .vio-rate:hover label.on{color:#F9AB00}
.vio-reviews .comment-form-rating .vio-rate label:hover,
.vio-reviews .comment-form-rating .vio-rate label:hover ~ label{color:#FBBC04}

 

 
.vio-thanh-nap{position:fixed;top:0;left:0;height:3px;width:0;opacity:0;
  background:var(--price);z-index:1000;pointer-events:none}
.vio-thanh-nap.on{opacity:1;width:85%;transition:width 5s cubic-bezier(.08,.6,.2,1)}
.vio-thanh-nap.on.xong{width:100%;opacity:0;transition:width .2s ease,opacity .3s ease .2s}

 
.plp.vio-dang-loc{cursor:progress}
.plp.vio-dang-loc .plp-main,
.plp.vio-dang-loc .filters>.fgroup{opacity:.55;pointer-events:none;transition:opacity .15s ease}

 
.filters-foot{display:none}
@media (max-width:860px){
  .filters-foot{display:block;position:sticky;bottom:0;z-index:1;background:#fff;
    margin-top:4px;padding:10px 0 2px;border-top:1px solid var(--line-2)}
  .filters-foot .btn{width:100%;min-height:48px;font-size:15px}
}

 
.tn-hop{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:120;
  background:#fff;color:var(--fg);border-radius:var(--r);box-shadow:var(--sh-3);
  max-height:min(72vh,520px);overflow-y:auto;overscroll-behavior:contain;text-align:left}
.tn-hop[hidden]{display:none}
.tn-ds{list-style:none;margin:0;padding:6px}
.tn-ds:empty{display:none}
.tn-hop.dang .tn-ds{opacity:.55}
.tn-dong{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:var(--r-sm);
  color:var(--fg);min-height:56px}
.tn-dong:hover,
.tn-ds [aria-selected="true"] .tn-dong{background:var(--line-2)}
.tn-anh{width:48px;height:48px;flex:none;object-fit:contain;border-radius:6px;background:var(--line-2)}
.tn-chu{min-width:0;display:flex;flex-direction:column;gap:3px}
.tn-ten{font-size:13.5px;font-weight:500;line-height:1.3;color:var(--fg-2);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;overflow:hidden}
.tn-ten b{font-weight:700;color:var(--fg)}
.tn-gia{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;
  font-size:13.5px;font-weight:800;color:var(--price-text)}
.tn-gia del{font-size:11.5px;font-weight:500;color:var(--fg-3)}
.tn-gia ins{text-decoration:none}
.tn-het{font-size:11px;font-weight:700;color:var(--fg-2);background:var(--line-2);
  border-radius:5px;padding:1px 6px}
.tn-cuoi{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line-2)}
.tn-ds:empty+.tn-cuoi{border-top:0}
.tn-tat-ca{display:flex;align-items:center;justify-content:center;min-height:44px;
  padding:8px 12px;font-size:13px;font-weight:700;color:var(--info)}
.tn-tat-ca:hover{background:var(--info-soft)}
.tn-rong{margin:0;padding:12px 14px;font-size:13px;color:var(--fg-2)}
.tn-rong a{color:var(--info);font-weight:650}
