/* LEGITECH — Design system v2 (sáng · xanh rừng · nhiều màu · ảnh lớn) */
:root{
  --bg:#FFFFFF;--bg2:#F4F6F3;--line:#E3E8E2;
  --ink:#1E2A22;--mute:#5F6D64;
  --green:#1A4C39;--green-2:#256A50;--green-t:#E3EFE8;
  --gold:#C9A227;--gold-t:#FBF3D9;
  --amber:#D9782B;--amber-t:#FDEBD9;
  --teal:#1F7A8C;--teal-t:#DDF0F4;
  --plum:#7A3B69;--plum-t:#F3E2EE;
  --max:1280px;--pad:clamp(18px,4vw,44px);--sec:clamp(32px,4.5vw,56px);--r:14px;--r-s:8px;
  --fd:"Montserrat",system-ui,sans-serif;--fb:"Be Vietnam Pro",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{font-family:var(--fb);font-size:16px;line-height:1.55;color:var(--ink);background:var(--bg)}
img{max-width:100%;display:block;height:auto}a{color:inherit;text-decoration:none}ul{list-style:none}button{font:inherit;cursor:pointer}
h1,h2,h3,h4{font-family:var(--fd);line-height:1.2;font-weight:700}
h1{font-size:clamp(24px,3vw,40px);letter-spacing:-.01em}
h2{font-size:clamp(20px,2.2vw,28px)}
h3{font-size:17px;font-weight:600}
h4{font-size:14px;font-weight:600}
p{max-width:60ch}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.sec{padding:var(--sec) 0}.sec--alt{background:var(--bg2)}
.lead{font-size:17px;color:var(--mute)}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px;flex-wrap:wrap}
.sec-head p{color:var(--mute);margin-top:6px}
:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.tag{display:inline-block;font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;background:var(--green-t);color:var(--green)}
.tag.amber{background:var(--amber-t);color:var(--amber)}.tag.teal{background:var(--teal-t);color:var(--teal)}.tag.gold{background:var(--gold-t);color:#8a6d0b}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:999px;font-family:var(--fd);font-weight:600;font-size:14px;background:var(--green);color:#fff;border:1.5px solid var(--green);white-space:nowrap;transition:background .2s}
.btn:hover{background:var(--green-2);border-color:var(--green-2)}
.btn--ghost{background:#fff;color:var(--green)}.btn--ghost:hover{background:var(--green-t)}
.btn--gold{background:var(--gold);border-color:var(--gold);color:var(--ink)}.btn--gold:hover{background:#dbb43a;border-color:#dbb43a}
.btn--sm{padding:10px 16px;font-size:13px}
.link{color:var(--green);font-weight:600}.link:hover{text-decoration:underline}

/* Topbar + header */
.topbar{background:var(--green);color:#fff;font-size:12px}
.topbar .wrap{display:flex;justify-content:space-between;gap:16px;padding:7px var(--pad)}
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hdr .wrap{display:flex;align-items:center;gap:16px;height:64px}
.logo img{height:30px;width:auto}
.nav{display:flex;gap:2px;margin-left:auto}
.nav>li{position:relative}
.nav>li>a{display:block;padding:8px 10px;font-weight:500;font-size:13px;white-space:nowrap;border-radius:var(--r-s)}
.nav>li>a:hover,.nav>li.open>a,.nav>li>a[aria-current="page"]{background:var(--green-t);color:var(--green)}
.nav>li>a.is-hot{color:var(--amber);font-weight:600}
.mega{position:absolute;left:0;top:100%;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;min-width:600px;display:none;grid-template-columns:repeat(var(--cols,3),1fr);gap:28px;box-shadow:0 24px 50px rgba(30,42,34,.14);z-index:70}
.mega::before{content:"";position:absolute;left:-1px;right:-1px;top:-10px;height:12px}
.nav>li:hover .mega,.nav>li:focus-within .mega,.nav>li.open .mega{display:grid}
.mega--r{left:auto;right:0}
.mega h4{color:var(--mute);font-weight:600;font-size:12px;margin-bottom:10px}
.mega a{display:block;padding:6px 0;font-size:14px}.mega a:hover{color:var(--green)}
.mega-promo{grid-column:1/-1;margin-top:4px;padding:16px;border-radius:var(--r-s);background:var(--green-t);display:flex;justify-content:space-between;align-items:center;gap:20px}
.mega-promo strong{display:block;color:var(--green)}.mega-promo span{color:var(--mute);font-size:13px}
.hdr-cta{display:flex;align-items:center;gap:12px}
.hdr-phone{font-family:var(--fd);font-weight:700;font-size:14px;color:var(--green)}
.hdr-phone small{display:block;font-family:var(--fb);font-weight:400;font-size:11px;color:var(--mute)}
.burger{display:none;background:none;border:0;color:var(--ink);width:44px;height:44px;margin-left:auto}.burger svg{width:26px;height:26px}

/* Drawer */
.drawer{position:fixed;inset:0;background:#fff;z-index:60;overflow:auto;padding:20px var(--pad) 120px;transform:translateX(100%);transition:transform .3s}
.drawer.on{transform:none}
.drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.drawer details{border-bottom:1px solid var(--line)}
.drawer summary{padding:15px 0;font-family:var(--fd);font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;cursor:pointer}
.drawer summary::after{content:"+";color:var(--green)}.drawer details[open] summary::after{content:"–"}
.drawer .grp{padding:0 0 12px}.drawer .grp h4{color:var(--mute);font-size:12px;margin:10px 0 4px}
.drawer .grp a{display:block;padding:8px 0 8px 12px;font-size:15px}
.drawer>a.top{display:block;padding:15px 0;font-family:var(--fd);font-weight:600;font-size:17px;border-bottom:1px solid var(--line)}
.drawer .btn{margin-top:20px;width:100%;justify-content:center}

/* Hero bento */
.hero{padding:16px 0 0}
.hero-grid{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr;gap:12px;height:min(64vh,560px)}
.tile{position:relative;overflow:hidden;border-radius:var(--r);background:var(--bg2);display:flex;align-items:flex-end}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.tile:hover img{transform:scale(1.03)}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,35,26,.15) 0%,rgba(20,35,26,.35) 40%,rgba(20,35,26,.9) 100%)}
.tile>div{position:relative;z-index:1;padding:22px;color:#fff}
.tile .tag{margin-bottom:8px}
.tile h3{color:#fff;font-size:17px}
.tile--main{grid-row:1/3}
.tile--main>div{padding:clamp(22px,3vw,40px)}
.tile--main .btn{pointer-events:auto}
.tile--main h1{color:#fff;max-width:18ch;margin-bottom:10px;font-size:clamp(26px,3.2vw,42px)}
.tile--main p{color:rgba(255,255,255,.85);max-width:48ch;margin-bottom:18px;font-size:15px}
.hero-acts{display:flex;gap:10px;flex-wrap:wrap}
.hero-acts .btn--ghost{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.5);color:#fff;backdrop-filter:blur(6px)}
.hero-acts .btn--ghost:hover{background:rgba(255,255,255,.28)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.stats div{background:var(--green-t);border-radius:var(--r);padding:16px 18px}
.stats div:nth-child(2){background:var(--gold-t)}.stats div:nth-child(3){background:var(--teal-t)}.stats div:nth-child(4){background:var(--amber-t)}
.stats b{font-family:var(--fd);font-size:26px;display:block;line-height:1.1;color:var(--ink)}.stats span{font-size:13px;color:var(--mute)}

/* Brands */
.brands .wrap{display:flex;align-items:center;gap:10px;padding-top:26px;padding-bottom:10px;flex-wrap:wrap}
.brands .lbl{font-size:13px;color:var(--mute);margin-right:8px}
.brands .b{font-family:var(--fd);font-weight:700;font-size:13px;padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);color:var(--ink)}
.brands .b:hover{border-color:var(--green);color:var(--green)}
.brands .b.x{background:var(--green);border-color:var(--green);color:#fff}
.brands .b small{font-weight:500;opacity:.8;margin-left:6px}

/* Solution tiles (ảnh lớn, màu theo nhóm) */
.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}
.sol{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--r);display:flex;align-items:flex-end;background:var(--bg2)}
.sol img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.sol:hover img{transform:scale(1.04)}
.sol::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(20,35,26,.85) 100%)}
.sol>div{position:relative;z-index:1;padding:18px;color:#fff;width:100%;display:flex;justify-content:space-between;align-items:flex-end;gap:10px}
.sol h3{color:#fff;font-size:17px}.sol .tag{margin-bottom:6px}
.sol .price{font-family:var(--fd);font-weight:600;font-size:13px;background:#fff;color:var(--ink);padding:6px 10px;border-radius:999px;white-space:nowrap}
.sol--wide{grid-column:span 2;aspect-ratio:auto}

/* Feature band 3 màu */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pillar{border-radius:var(--r);overflow:hidden;background:var(--green-t);display:grid;grid-template-rows:auto 1fr}
.pillar.gold{background:var(--gold-t)}.pillar.teal{background:var(--teal-t)}
.pillar img{aspect-ratio:16/10;width:100%;object-fit:cover}
.pillar>div{padding:22px}
.pillar h3{margin:6px 0 8px;font-size:19px}.pillar p{color:var(--mute);font-size:14px;margin-bottom:14px}

/* Cards */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,border-color .2s}
.card:hover{border-color:var(--green);box-shadow:0 12px 30px rgba(30,42,34,.08)}
.card-img{aspect-ratio:1;background:var(--bg2);overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:cover}
.card>div{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.card h3{font-size:16px}.card p{color:var(--mute);font-size:13px}.card .link{margin-top:auto;font-size:13px}

/* Why — 4 ô màu */
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.why div{border-radius:var(--r);padding:22px;background:var(--green-t)}
.why div:nth-child(2){background:var(--gold-t)}.why div:nth-child(3){background:var(--teal-t)}.why div:nth-child(4){background:var(--amber-t)}
.why h3{font-size:16px;margin-bottom:6px}.why p{font-size:14px;color:var(--mute)}

/* Band + CTA */
.band{background:var(--green);color:#fff;border-radius:var(--r);margin:0 var(--pad)}
.band .wrap{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:32px var(--pad)}
.band h3{color:#fff;font-size:20px;margin-bottom:4px}.band p{color:rgba(255,255,255,.85);font-size:15px;max-width:70ch}
.band .btn{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.cta{position:relative;border-radius:var(--r);overflow:hidden;min-height:380px;display:flex;align-items:center;margin:0 var(--pad)}
.cta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cta::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(26,76,57,.95) 0%,rgba(26,76,57,.6) 60%,rgba(26,76,57,.2) 100%)}
.cta .wrap{position:relative;z-index:1;color:#fff;padding:40px var(--pad)}
.cta h2{color:#fff;max-width:22ch}.cta p{color:rgba(255,255,255,.9);margin:12px 0 22px}
.cta-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.cta-row .phone{font-family:var(--fd);font-weight:700;font-size:20px}

/* Form */
.form{display:grid;gap:14px;max-width:640px}
.form label{display:block;font-size:13px;color:var(--mute);margin-bottom:5px;font-weight:500}
.form input,.form select,.form textarea{width:100%;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:var(--r-s);color:var(--ink);font:inherit}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--green);outline:0;box-shadow:0 0 0 3px var(--green-t)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form .note{font-size:12px;color:var(--mute)}

/* Page hero */
.phero{position:relative;overflow:hidden;min-height:300px;display:flex;align-items:flex-end;margin:16px var(--pad) 0;border-radius:var(--r)}
.phero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,35,26,.1),rgba(20,35,26,.85))}
.phero .wrap{position:relative;z-index:1;color:#fff;padding:36px var(--pad);width:100%}
.phero h1{color:#fff;max-width:20ch}.phero .lead{color:rgba(255,255,255,.88);margin-top:10px;max-width:60ch;font-size:15px}
.crumb{font-size:13px;color:rgba(255,255,255,.75);margin-bottom:12px}

/* Text + aside */
.prose{max-width:66ch}.prose h2{margin:32px 0 10px;font-size:24px}.prose h3{margin:22px 0 8px}
.prose p,.prose li{color:var(--mute);margin-bottom:12px}.prose ul{list-style:disc;padding-left:20px}.prose strong{color:var(--ink)}
.split{display:grid;grid-template-columns:1fr 380px;gap:clamp(28px,5vw,72px);align-items:start}
.aside{background:var(--bg2);border-radius:var(--r);padding:24px;position:sticky;top:96px}
.aside h3{margin-bottom:10px}.aside li{padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--mute)}
.aside li b{color:var(--ink);display:block}.aside .btn{margin-top:18px;width:100%;justify-content:center}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:s}
.steps div{background:var(--bg2);border-radius:var(--r);padding:20px;counter-increment:s}
.steps div::before{content:counter(s);display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;font-family:var(--fd);font-weight:700;font-size:14px;margin-bottom:10px}
.steps h3{font-size:16px;margin-bottom:6px}.steps p{font-size:14px;color:var(--mute)}

/* Projects masonry-ish */
.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.proj{position:relative;overflow:hidden;border-radius:var(--r);aspect-ratio:4/3;display:flex;align-items:flex-end;background:var(--bg2)}
.proj:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.proj img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}.proj:hover img{transform:scale(1.03)}
.proj::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(20,35,26,.85) 100%)}
.proj>div{position:relative;z-index:1;padding:18px;color:#fff}
.proj h3{color:#fff;font-size:17px;margin-top:6px}.proj p{color:rgba(255,255,255,.85);font-size:13px;margin-top:4px}

/* Footer */
.ftr{background:var(--bg2);border-top:1px solid var(--line);padding:clamp(40px,5vw,64px) 0 28px;font-size:14px;margin-top:var(--sec)}
.ftr-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.2fr;gap:32px}
.ftr img{height:32px;margin-bottom:14px}.ftr p{color:var(--mute);font-size:13px}
.ftr h4{margin-bottom:12px;color:var(--green)}.ftr li{margin-bottom:7px}.ftr li a{color:var(--mute)}.ftr li a:hover{color:var(--green)}
.ftr .ph{font-family:var(--fd);font-weight:700;font-size:19px;color:var(--green);display:block;margin:10px 0}
.ftr-bot{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--mute)}
.mbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--line);padding:10px var(--pad);gap:10px}.mbar a{flex:1;justify-content:center}

@media(max-width:1280px){.hdr-phone{display:none}}
@media(max-width:1080px){.nav,.hdr-cta{display:none}.burger{display:block}.grid-4,.why,.steps{grid-template-columns:repeat(2,1fr)}.ftr-grid{grid-template-columns:1fr 1fr}.pillars{grid-template-columns:1fr}}
@media(max-width:760px){
  .hero-grid{grid-template-columns:1fr;grid-template-rows:auto;height:auto}.tile--main{grid-row:auto;min-height:440px}.tile--sub{display:none}.tile--main::after{background:linear-gradient(180deg,rgba(20,35,26,.45) 0%,rgba(20,35,26,.6) 40%,rgba(20,35,26,.92) 100%)}
  .home .grid-3 .sol:nth-child(n+5),.home .grid-4 .card:nth-child(n+5){display:none}
  .stats{grid-template-columns:repeat(2,1fr)}.grid-3,.grid-2,.split,.proj-grid{grid-template-columns:1fr}.sol,.sol--wide,.proj,.proj:first-child{grid-column:auto;grid-row:auto;aspect-ratio:16/10}
  .why,.steps{grid-template-columns:1fr}.band .wrap{grid-template-columns:1fr}.form .row{grid-template-columns:1fr}.aside{position:static}
  .topbar{display:none}.mbar{display:flex}.ftr{padding-bottom:100px}.ftr-grid{grid-template-columns:1fr}.band,.cta,.phero{margin-left:0;margin-right:0;border-radius:0}
}
@media(max-width:480px){.grid-4{grid-template-columns:1fr}}

/* ===== v3 additions: nhịp & đa dạng bố cục ===== */
.sec--green{background:var(--green);color:#fff}
.sec--green h2,.sec--green h3{color:#fff}.sec--green .sec-head p,.sec--green p{color:rgba(255,255,255,.8)}
.sec--green .link{color:var(--gold)}
/* thanh số liệu nằm trên hero */
.stats{margin-top:-28px;position:relative;z-index:2;padding:0 12px}
.stats div{background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px rgba(30,42,34,.08);display:flex;gap:14px;align-items:center;padding:14px 16px}
.stats div:nth-child(n){background:#fff}
.stats b{font-size:24px;color:var(--green)}.stats div:nth-child(2) b{color:var(--amber)}.stats div:nth-child(3) b{color:var(--teal)}.stats div:nth-child(4) b{color:#8a6d0b}
/* marquee thương hiệu */
.marq{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:20px;background:var(--bg2)}
.marq-track{display:flex;gap:0;width:max-content;animation:marq 45s linear infinite}
.marq:hover .marq-track{animation-play-state:paused}
.marq span{font-family:var(--fd);font-weight:700;font-size:15px;padding:12px 32px;border-right:1px solid var(--line);white-space:nowrap;color:var(--mute)}
.marq span.x{color:var(--green)}.marq span.soon::after{content:"sắp có";font:500 11px var(--fb);background:var(--gold-t);color:#8a6d0b;padding:3px 8px;border-radius:999px;margin-left:8px}
.marq span.x::after{content:"độc quyền VN";font:500 11px var(--fb);background:var(--green-t);color:var(--green);padding:3px 8px;border-radius:999px;margin-left:8px}
@keyframes marq{to{transform:translateX(-50%)}}
/* mosaic giải pháp: 1 lớn + 4 nhỏ + 1 ô chữ */
.mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,minmax(190px,1fr));gap:12px}
.mosaic .sol{aspect-ratio:auto}
.mosaic .sol.big{grid-column:span 2;grid-row:span 2}
.mosaic .more{border-radius:var(--r);background:var(--green);color:#fff;padding:22px;display:flex;flex-direction:column;justify-content:space-between}
.mosaic .more b{font-family:var(--fd);font-size:40px;line-height:1;color:var(--gold)}.mosaic .more span{font-size:14px;color:rgba(255,255,255,.85)}
.mosaic .more .link{color:var(--gold);font-size:14px}
/* quy trình: dải số lớn */
.proc{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(255,255,255,.2);counter-reset:p}
.proc div{padding:22px 22px 22px 0;border-right:1px solid rgba(255,255,255,.2);counter-increment:p;position:relative}
.proc div+div{padding-left:22px}.proc div:last-child{border-right:0}
.proc div::before{content:"0" counter(p);font-family:var(--fd);font-weight:700;font-size:36px;line-height:1;color:var(--gold);display:block;margin-bottom:10px;opacity:.9}
.proc h3{font-size:17px;margin-bottom:6px}.proc p{font-size:14px}
.proc-head{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;margin-bottom:22px}
/* sản phẩm: dải hẹp 6 cột, ảnh tròn */
.pgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.pitem{text-align:center;padding:14px 8px 16px;border-radius:var(--r);background:#fff;border:1px solid var(--line);transition:border-color .2s,transform .2s}
.pitem:hover{border-color:var(--green);transform:translateY(-3px)}
.pitem .ph{width:92px;height:92px;border-radius:50%;overflow:hidden;margin:0 auto 10px;background:var(--bg2);border:3px solid var(--green-t)}
.pitem .ph img{width:100%;height:100%;object-fit:cover}
.pitem h3{font-size:14px}.pitem small{display:block;font-size:12px;color:var(--mute);margin-top:2px}
/* vì sao + quote: 2 cột lệch */
.whyx{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}
.whyx-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.whyx-list>div{display:flex;gap:12px;padding:16px;border-radius:var(--r);background:var(--bg2)}.whyx-list>div>div{display:block}
.whyx-list i{flex:none;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font:700 14px var(--fd);font-style:normal}
.whyx-list>div:nth-child(2) i{background:var(--amber)}.whyx-list>div:nth-child(3) i{background:var(--teal)}.whyx-list>div:nth-child(4) i{background:var(--gold);color:var(--ink)}
.whyx-list h3{font-size:15px;margin-bottom:3px}.whyx-list p{font-size:13px;color:var(--mute)}
.quote{position:relative;border-radius:var(--r);overflow:hidden;padding:26px;display:flex;flex-direction:column;justify-content:flex-end;min-height:260px;color:#fff}
.quote img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.quote::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,76,57,.2),rgba(26,76,57,.92))}
.quote>*{position:relative;z-index:1}.quote .tag{align-self:flex-start;margin-bottom:10px}
.quote blockquote{font-family:var(--fd);font-weight:600;font-size:18px;line-height:1.35;max-width:26ch}
.quote cite{display:block;font-style:normal;font-size:13px;color:rgba(255,255,255,.8);margin-top:10px}
/* thiết kế 60 giây — widget */
.widget{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.widget-l{padding:28px;background:var(--gold-t)}
.widget-l h2{margin:8px 0 6px}.widget-l p{color:var(--mute);font-size:14px;margin-bottom:16px}
.widget-l .form{gap:10px}.widget-l .form .row{gap:10px}.widget-l input,.widget-l select{padding:10px 12px}
.widget-r{position:relative;min-height:320px}.widget-r img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.widget-r .chip{position:absolute;background:#fff;border-radius:999px;padding:8px 14px;font:600 13px var(--fd);box-shadow:0 8px 24px rgba(30,42,34,.18)}
.widget-r .chip b{color:var(--green)}
/* CTA gọn */
.cta{min-height:260px}
@media(max-width:1080px){.pgrid{grid-template-columns:repeat(3,1fr)}.mosaic{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}.mosaic .sol{aspect-ratio:16/10}.mosaic .sol.big{grid-column:span 2;aspect-ratio:16/9}.proc{grid-template-columns:1fr 1fr}.proc div:nth-child(2){border-right:0}.whyx,.widget{grid-template-columns:1fr}}
@media(max-width:760px){.stats{grid-template-columns:1fr 1fr;margin-top:-16px}.stats b{font-size:22px}.pgrid{grid-template-columns:repeat(2,1fr)}.mosaic{grid-template-columns:1fr}.mosaic .sol.big{grid-column:auto}.mosaic .more{min-height:140px}.proc{grid-template-columns:1fr}.proc div{border-right:0;padding-left:0;border-bottom:1px solid rgba(255,255,255,.2)}.whyx-list{grid-template-columns:1fr}.proc-head{grid-template-columns:1fr}}

/* v4: khối mới */
.procimg{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-top:22px}
.procimg img{width:100%;height:220px;object-fit:cover;border-radius:var(--r)}
.brand2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.brand2-card{display:grid;grid-template-columns:1fr 1fr;border-radius:var(--r);overflow:hidden;background:var(--bg2);border:1px solid var(--line)}
.brand2-card img{width:100%;height:100%;min-height:240px;object-fit:cover}
.brand2-card>div{padding:24px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.brand2-card h3{font-size:20px}.brand2-card p{font-size:14px;color:var(--mute);flex:1}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.post{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s}
.post:hover{box-shadow:0 12px 30px rgba(30,42,34,.08)}
.post img{aspect-ratio:16/9;width:100%;object-fit:cover}
.post>div{padding:16px 18px 18px}.post h3{font-size:16px;margin:8px 0 6px}.post p{font-size:13px;color:var(--mute)}
.faqwrap{display:grid;grid-template-columns:1fr 2fr;gap:32px;align-items:start}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{padding:14px 0;font-family:var(--fd);font-weight:600;font-size:15px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";color:var(--green);font-size:20px;line-height:1}.faq details[open] summary::after{content:"–"}
.faq p{font-size:14px;color:var(--mute);padding:0 0 14px;max-width:70ch}
@media(max-width:1080px){.brand2{grid-template-columns:1fr}.procimg{grid-template-columns:1fr 1fr}.procimg img:first-child{grid-column:span 2}}
@media(max-width:760px){.brand2-card,.posts,.faqwrap{grid-template-columns:1fr}.brand2-card img{min-height:180px}.procimg{grid-template-columns:1fr}.procimg img{height:160px}.home .grid-4 .sol:nth-child(n+3){display:none}}

/* v5: icon sản phẩm thay ảnh */
.pitem .ph{background:var(--green-t);border:0;display:grid;place-items:center;color:var(--green)}
.pitem .ph svg{width:44px;height:44px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pitem:nth-child(6n+2) .ph{background:var(--gold-t);color:#8a6d0b}.pitem:nth-child(6n+3) .ph{background:var(--teal-t);color:var(--teal)}.pitem:nth-child(6n+4) .ph{background:var(--amber-t);color:var(--amber)}

.card-ico{display:grid;place-items:center;background:var(--green-t);color:var(--green);aspect-ratio:16/9}.card-ico svg{width:56px;height:56px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.tile--sub:last-child>div{padding-bottom:50px}.tile--main>div{padding-bottom:52px}
.tile img,.sol img,.proj img,.quote img,.cta img,.phero img,.brand2-card img,.procimg img,.post img,.widget-r img{filter:saturate(.88) contrast(1.04)}

/* v7: dàn trọn gói + sản phẩm ảnh thật */
.pkgs{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.pkg{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s}
.pkg:hover{border-color:var(--green);box-shadow:0 12px 30px rgba(30,42,34,.08)}
.pkg-img{aspect-ratio:1;background:#fff;padding:10px}.pkg-img img{width:100%;height:100%;object-fit:contain;filter:none}
.pkg>div:last-child{padding:12px 14px 14px}.pkg h3{font-size:15px;margin:6px 0 2px}.pkg p{font-size:12px;color:var(--mute)}
.pkg-links,.cats{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;align-items:center}
.pkg-links a,.cats a{font-size:13px;font-weight:500;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:#fff}
.pkg-links a:hover,.cats a:hover{border-color:var(--green);color:var(--green)}
.cats .lbl{font-size:12px;color:var(--mute);margin-right:4px}
.card-img--p{background:#fff;padding:14px;border-bottom:1px solid var(--line)}.card-img--p img{object-fit:contain;filter:none}
.card .tag{align-self:flex-start;margin-bottom:2px}
@media(max-width:1080px){.pkgs{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.pkgs{grid-template-columns:repeat(2,1fr)}.home .pkgs .pkg:nth-child(n+5){display:none}}

/* v8: đẩy kênh phân phối — tìm đại lý + thi công trực tiếp gọn */
.dealer-split{display:grid;grid-template-columns:1.1fr .9fr;gap:0;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.dealer-find,.dealer-build{padding:32px}
.dealer-find{background:var(--green-t)}
.dealer-build{background:var(--gold-t)}
.dealer-find h2,.dealer-build h2{margin:8px 0 8px;font-size:24px}
.dealer-find p,.dealer-build p{color:var(--mute);font-size:14px;margin-bottom:18px}
.dealer-list{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.dealer-list div{display:flex;justify-content:space-between;background:#fff;border-radius:var(--r-s);padding:10px 14px;font-size:14px}
.dealer-list b{font-weight:600}.dealer-list span{color:var(--mute)}
.dealer-proof{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.dealer-proof div{background:#fff;border-radius:var(--r-s);padding:12px 16px;flex:1;min-width:160px}
.dealer-proof b{display:block;font-family:var(--fd);font-size:20px;color:var(--green)}
.dealer-proof span{font-size:13px;color:var(--mute)}
@media(max-width:1080px){.dealer-split{grid-template-columns:1fr}}

/* ===== v9: carousel, underline, brand grid, 2 panel cuối ===== */
.sec-head--line{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px}
.sec-head--line h2{position:relative;padding-bottom:14px;margin:0}
.sec-head--line h2::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:3px;background:linear-gradient(90deg,var(--gold),var(--green));border-radius:2px}

/* Carousel: auto-scroll phải, dừng khi rê chuột, loop */
.carousel{overflow:hidden;position:relative}
.carousel-track{display:flex;gap:16px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;padding-bottom:4px}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-track>a{flex:0 0 auto;width:260px}
.carousel-track .pkg,.carousel-track .card{height:100%}

/* Hover contrast: đảo màu làm điểm nhấn */
.pkg{transition:background .25s,border-color .25s,transform .25s,box-shadow .25s}
.pkg:hover{background:var(--green);border-color:var(--green);transform:translateY(-4px);box-shadow:0 16px 34px rgba(26,76,57,.25)}
.pkg:hover h3,.pkg:hover p{color:#fff}
.pkg:hover .tag{background:var(--gold);color:var(--ink)}
.pkg-img{transition:background .25s}
.card{transition:background .25s,border-color .25s,transform .25s,box-shadow .25s}
.card:hover{background:var(--green);border-color:var(--green);transform:translateY(-4px);box-shadow:0 16px 34px rgba(26,76,57,.25)}
.card:hover h3,.card:hover p{color:#fff}
.card:hover .tag{background:var(--gold);color:var(--ink)}
.card-img--p{transition:background .25s}

/* Thương hiệu — grid nhiều hãng */
.brandgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.bitem{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 18px;display:flex;flex-direction:column;gap:4px;transition:background .2s,border-color .2s,transform .2s}
.bitem b{font-family:var(--fd);font-size:16px}
.bitem span{font-size:12px;color:var(--mute)}
.bitem:hover{background:var(--green);border-color:var(--green);transform:translateY(-3px)}
.bitem:hover b,.bitem:hover span{color:#fff}
.bitem.x{background:var(--green-t);border-color:var(--green)}
.bitem.x b{color:var(--green)}
.bitem.x:hover{background:var(--gold)}
.bitem.x:hover b{color:var(--ink)}
.bitem.x:hover span{color:#3a3312}

/* 2 mục cuối — bằng nhau, mỗi bên 1 điểm nhấn riêng */
.final-two{padding-bottom:0}
.final-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}
.final-panel{border-radius:var(--r);min-height:360px;display:flex;flex-direction:column;justify-content:center;padding:40px}
.final-panel--green{background:var(--green);color:#fff}
.final-panel--green h2{color:#fff;font-size:26px;margin:10px 0 10px}
.final-panel--green p{color:rgba(255,255,255,.85);margin-bottom:22px;font-size:15px}
.final-panel--photo{position:relative;overflow:hidden;padding:0}
.final-panel--photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.final-panel--photo::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(201,162,39,.16),rgba(20,35,26,.88))}
.final-panel-in{position:relative;z-index:1;padding:40px;color:#fff}
.final-panel-in h2{color:#fff;font-size:26px;margin:10px 0 10px;max-width:20ch}
.final-panel-in p{color:rgba(255,255,255,.85);margin-bottom:22px;font-size:15px}
.final-panel-in .cta-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.final-panel-in .phone{font-family:var(--fd);font-weight:700;font-size:18px;color:#fff}

@media(max-width:1080px){.brandgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){
  .final-grid{grid-template-columns:1fr}
  .brandgrid{grid-template-columns:repeat(2,1fr)}
  .carousel-track>a{width:220px}
}

/* ===== v10: hero thật, blk-title/blk-row, brand logo thật ===== */

/* Hero: nền chữ dễ đọc hơn trên ảnh kho hàng nhiều chi tiết */
.tile--main::after{background:linear-gradient(115deg, rgba(10,18,14,.88) 0%, rgba(10,18,14,.72) 32%, rgba(10,18,14,.25) 62%, rgba(10,18,14,.05) 100%)}
.hero-textbox{position:relative;z-index:1;max-width:640px}
.hero-textbox::before{content:"";position:absolute;left:-16px;right:-16px;top:-16px;bottom:-16px;background:rgba(10,18,14,.28);backdrop-filter:blur(6px);border-radius:var(--r);z-index:-1;border:1px solid rgba(255,255,255,.06)}

/* blk-title + blk-row: tiêu đề riêng 1 dòng, menu ngang hàng link "Tất cả..." */
.blk-title{margin-bottom:14px}
.blk-title h2{position:relative;display:inline-block;padding-bottom:14px;margin:0}
.blk-title h2::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:3px;background:linear-gradient(90deg,var(--gold),var(--green));border-radius:2px}
.blk-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;flex-wrap:wrap}
.blk-row--end{justify-content:flex-end}
.blk-row .pkg-links,.blk-row .cats{margin:0;flex:1}

/* Thương hiệu: logo plate đồng bộ kích thước */
.bitem{align-items:center;justify-content:center;text-align:center;min-height:104px;gap:8px}
.blogo{display:flex;align-items:center;justify-content:center;height:30px;max-width:100%}
.blogo img,img.blogo{height:26px;width:auto;max-width:120px;object-fit:contain;filter:grayscale(1) opacity(.72);transition:filter .2s}
.bitem:hover img.blogo{filter:grayscale(0) opacity(1)}
.bword{font-family:var(--fd);font-weight:800;font-size:17px;letter-spacing:.02em;color:var(--ink)}
.bword em{font-style:normal;font-weight:500;opacity:.75;margin-left:2px}
.bword--k{font-weight:600;font-style:italic;letter-spacing:.01em}
.bitem:hover .bword{color:#fff}
.bitem small{font-size:11px;color:var(--mute)}
.bitem:hover small{color:rgba(255,255,255,.85)}
.bitem.x .bword{color:var(--green)}
.bitem.x:hover .bword{color:var(--ink)}

/* ===== v11: nâng cấp font, nền trang trí, ảnh ===== */
:root{--fd:"Plus Jakarta Sans",system-ui,sans-serif;--gold-2:#E3C35A}
body{font-size:15px;line-height:1.6}
h1,h2,h3,h4{font-family:var(--fd);letter-spacing:-.02em}
h1{font-size:clamp(26px,2.7vw,38px);line-height:1.12;font-weight:800}
h2{font-size:clamp(20px,1.9vw,27px);font-weight:700;line-height:1.2}
h3{font-size:16px;font-weight:600;letter-spacing:-.01em}
.tile--main h1{font-size:clamp(26px,2.9vw,40px);max-width:16ch}
.tile--main p{font-size:14px}
.tile h3{font-size:16px}
.lead{font-size:16px}
.tag{font-size:11px;letter-spacing:.02em;padding:5px 10px;font-weight:600}
.eyebrow{display:block;font-family:var(--fd);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.eyebrow::before{content:"";display:inline-block;width:18px;height:2px;background:var(--gold);vertical-align:middle;margin-right:8px}
.blk-title h2::after,.sec-head--line h2::after{width:44px;height:2px}
.sec-head p{font-size:14px}
.stats b{font-size:22px;font-weight:800}
.stats span{font-size:12px}
.marq span{font-size:13px;padding:11px 26px}
.btn{font-size:13px;letter-spacing:.01em}
.nav>li>a{font-size:13.5px}
.pkg h3,.card h3{font-size:14px}
.pkg p,.card p{font-size:12px}
.bword{font-size:15px}

/* Nền trang trí: sec--alt có radial glow + lưới mảnh */
.sec--alt{position:relative;background:
  radial-gradient(60% 50% at 0% 0%,rgba(201,162,39,.10),transparent 60%),
  radial-gradient(50% 40% at 100% 100%,rgba(26,76,57,.10),transparent 60%),
  var(--bg2)}
.sec--alt::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(26,76,57,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(26,76,57,.06) 1px,transparent 1px);
  background-size:48px 48px;mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent)}
.sec--alt>.wrap{position:relative}

/* Nền pattern sóng âm cho khối thương hiệu */
.sec--pattern{position:relative;background:var(--bg2)}
.sec--pattern::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='60' viewBox='0 0 240 60'><path d='M0 30 C20 10 30 10 40 30 S60 50 80 30 S100 10 120 30 S140 50 160 30 S180 10 200 30 S220 50 240 30' fill='none' stroke='%231A4C39' stroke-opacity='.18' stroke-width='1.2'/></svg>");
  background-size:240px 60px;mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent)}
.sec--pattern>.wrap{position:relative}

/* Khối nền tối có ảnh kho làm nền — "Vì sao chọn" */
.sec--dark{position:relative;color:#fff;background:var(--green);overflow:hidden}
.sec--dark::before{content:"";position:absolute;inset:0;background:var(--why-bg) center/cover no-repeat;opacity:.18;filter:grayscale(.4)}
.sec--dark::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(26,76,57,.96) 0%,rgba(26,76,57,.85) 55%,rgba(26,76,57,.6) 100%)}
.sec--dark>.wrap{position:relative;z-index:1}
.sec--dark h2{color:#fff}
.sec--dark .eyebrow{color:var(--gold-2)}
.sec--dark .whyx-list>div{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(4px)}
.sec--dark .whyx-list h3{color:#fff}.sec--dark .whyx-list p{color:rgba(255,255,255,.75)}
.sec--dark .whyx-list i{background:var(--gold);color:var(--ink)}
.sec--dark .whyx-list>div:nth-child(2) i,.sec--dark .whyx-list>div:nth-child(3) i,.sec--dark .whyx-list>div:nth-child(4) i{background:var(--gold);color:var(--ink)}
.sec--dark .quote{border:1px solid rgba(255,255,255,.15)}

/* Ảnh: khung viền mảnh + ánh sáng nhẹ */
.sol,.tile{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 10px 30px rgba(30,42,34,.10)}
.sol::after{background:linear-gradient(180deg,rgba(20,35,26,.05) 0%,rgba(20,35,26,.2) 45%,rgba(20,35,26,.88) 100%)}
.sol:hover::after{background:linear-gradient(180deg,rgba(26,76,57,.15) 0%,rgba(26,76,57,.35) 45%,rgba(26,76,57,.92) 100%)}
.sol h3{text-shadow:0 1px 8px rgba(0,0,0,.35)}
.tile img,.sol img,.quote img,.phero img,.widget-r img{filter:saturate(.95) contrast(1.06) brightness(.98)}

/* Hero: khung sáng mảnh, gradient tinh hơn */
.hero-textbox::before{background:rgba(8,16,12,.36);border-color:rgba(255,255,255,.1)}
.stats div{border-top:2px solid var(--gold-t)}
.stats div:nth-child(1){border-top-color:var(--green)}.stats div:nth-child(2){border-top-color:var(--amber)}.stats div:nth-child(3){border-top-color:var(--teal)}.stats div:nth-child(4){border-top-color:var(--gold)}

/* Widget & final panels tinh chỉnh */
.widget{box-shadow:0 20px 50px rgba(30,42,34,.10)}
.widget-l{background:linear-gradient(160deg,#FFF9E6,#FBF3D9)}
.final-panel--green{background:linear-gradient(140deg,#1A4C39,#0F3327);position:relative;overflow:hidden}
.final-panel--green::after{content:"";position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;border-radius:50%;border:40px solid rgba(201,162,39,.12)}
.final-panel--green>*{position:relative;z-index:1}
.quote img{z-index:0}
.quote::after{background:linear-gradient(180deg,rgba(15,40,30,.25) 0%,rgba(15,40,30,.6) 45%,rgba(15,40,30,.95) 100%)}

/* ===== v12: hero split, brand list, nền mới, duotone ảnh ===== */
.hero{padding:18px 0 0}
.hero-split{display:grid;grid-template-columns:5fr 7fr;gap:0;border-radius:var(--r);overflow:hidden;min-height:520px;box-shadow:0 24px 60px rgba(30,42,34,.14)}
.hero-panel{background:linear-gradient(160deg,#173F30 0%,#0F2E22 100%);color:#fff;padding:clamp(28px,3.4vw,52px);display:flex;flex-direction:column;justify-content:center;position:relative}
.hero-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 60% at 100% 0%,rgba(201,162,39,.16),transparent 60%);pointer-events:none}
.hero-panel>*{position:relative}
.hero-panel .eyebrow{color:var(--gold-2)}
.hero-panel h1{color:#fff;font-size:clamp(26px,2.6vw,38px);margin:6px 0 14px;max-width:20ch}
.hero-panel p{color:rgba(255,255,255,.8);font-size:14px;max-width:46ch;margin-bottom:22px}
.hero-panel .hero-acts{margin-bottom:26px}
.hero-panel .btn--ghost{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.hero-panel .btn--ghost:hover{border-color:var(--gold);color:var(--gold)}
.hero-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid rgba(255,255,255,.14);padding-top:18px}
.hero-links a{display:block;padding:12px 14px;border-radius:var(--r-s);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);transition:background .2s,border-color .2s}
.hero-links a:hover{background:rgba(201,162,39,.16);border-color:var(--gold)}
.hero-links b{display:block;font-family:var(--fd);font-size:13.5px;color:#fff}
.hero-links span{font-size:12px;color:rgba(255,255,255,.65)}
.hero-photo{position:relative;overflow:hidden;background:#111}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:contrast(1.05) saturate(.92)}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,46,34,.55) 0%,transparent 28%),linear-gradient(0deg,rgba(15,46,34,.5) 0%,transparent 35%)}
.hero-cap{position:absolute;left:20px;bottom:18px;z-index:1;font-size:12px;color:rgba(255,255,255,.85);background:rgba(15,46,34,.55);backdrop-filter:blur(4px);padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12)}
.stats{margin-top:-26px}

/* Brand list — hàng ngang wordmark đồng nhất, có vách ngăn */
.sec--brand{position:relative;background:#fff}
.brandlist{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff}
.brow{position:relative;padding:28px 18px 24px;text-align:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:6px;transition:background .2s}
.brow:nth-child(5n){border-right:0}.brow:nth-child(n+6){border-bottom:0}
.brow:hover{background:var(--green-t)}
.bname{font-family:var(--fd);font-weight:800;font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:#243229}
.brow:hover .bname{color:var(--green)}
.borig{font-size:11.5px;color:var(--mute);letter-spacing:.02em}
.bx{position:absolute;top:10px;right:10px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--gold);color:var(--ink);padding:3px 8px;border-radius:999px}
.brow--x{background:linear-gradient(160deg,#F3F8F5,#E9F2ED)}
.brow--x .bname{color:var(--green)}

/* Nền khối: thay lưới/pattern bằng gradient sạch */
.sec--alt::before{display:none}
.sec--alt{background:linear-gradient(180deg,#F6F8F5 0%,#EEF3EF 100%)}
.sec--pattern::before{display:none}

/* Duotone thống nhất cho ảnh stock các ô giải pháp */
.sol{background:#173F30}
.sol img{filter:grayscale(.35) contrast(1.08) brightness(.9) saturate(.8)}
.sol::after{background:linear-gradient(180deg,rgba(23,63,48,.25) 0%,rgba(23,63,48,.35) 45%,rgba(15,46,34,.92) 100%)}
.sol:hover img{filter:grayscale(0) contrast(1.05) brightness(.95) saturate(1)}
.sol .tag{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(4px)}
.sol .tag.amber,.sol .tag.teal,.sol .tag.gold{background:rgba(255,255,255,.14);color:#fff}

/* Panel cuối: dùng ảnh kho */
.final-panel--photo::after{background:linear-gradient(135deg,rgba(15,46,34,.35),rgba(15,46,34,.92))}

@media(max-width:1080px){.hero-split{grid-template-columns:1fr}.hero-photo{min-height:300px}.brandlist{grid-template-columns:repeat(3,1fr)}.brow:nth-child(5n){border-right:1px solid var(--line)}.brow:nth-child(3n){border-right:0}.brow:nth-child(n+6){border-bottom:1px solid var(--line)}.brow:nth-child(n+9){border-bottom:0}}
@media(max-width:760px){.hero-links{grid-template-columns:1fr}.brandlist{grid-template-columns:repeat(2,1fr)}.brow:nth-child(3n){border-right:1px solid var(--line)}.brow:nth-child(2n){border-right:0}.brow:nth-child(n+9){border-bottom:1px solid var(--line)}}
.hero-cap{bottom:auto;top:18px;left:auto;right:18px}

/* v13: brand logos thật, 11 ô */
.brandlist--11{display:flex;flex-wrap:wrap;border:0;background:transparent;gap:12px;overflow:visible}
.brandlist--11 .brow{flex:0 0 calc((100% - 60px)/6);border:1px solid var(--line);border-radius:var(--r-s);background:#fff;padding:22px 16px 16px;gap:10px;min-height:118px;justify-content:center}
.brandlist--11 .brow:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.brandlist--11 .brow:hover{background:var(--green-t);border-color:var(--green)}
.blg{height:38px;width:auto;max-width:150px;object-fit:contain;opacity:.85;transition:opacity .2s,transform .2s}
.brow:hover .blg{opacity:1;transform:scale(1.04)}
.brow--x .blg{opacity:1}
.hero-photo img{filter:contrast(1.04) saturate(.95)}
@media(max-width:1080px){.brandlist--11 .brow{flex-basis:calc((100% - 24px)/3)}}
@media(max-width:760px){.brandlist--11 .brow{flex-basis:calc((100% - 12px)/2)}}

.blg--tall{height:60px;max-width:110px}
.brandlist--11 .brow{min-height:132px;padding-top:26px}
.brandlist--11 .brow--x{padding-top:34px}
.bx{top:8px;left:8px;right:auto}

/* v14: chữ tinh hơn, logo rõ hơn, hero festival */
h1,h2,h3{font-weight:700;letter-spacing:-.015em}
h1{font-size:clamp(22px,2.1vw,30px)}
.hero-panel h1{font-size:clamp(22px,2.15vw,31px);line-height:1.2;margin:8px 0 12px;max-width:22ch}
h2{font-size:clamp(18px,1.6vw,23px)}
.sec-head h2,.blk-title h2{font-weight:700}
h3{font-size:15px;font-weight:600}
.eyebrow{font-size:11px;letter-spacing:.14em}
.hero-panel p{font-size:13.5px}
.hero-panel .eyebrow{font-size:11px}
.stats b{font-size:20px;font-weight:700}
.final-panel--green h2,.final-panel-in h2{font-size:22px}
.widget-l h2{font-size:21px}
.blg{height:44px;max-width:160px;opacity:1}
.blg--tall{height:68px;max-width:120px}
.brandlist--11 .brow{background:#fff;border-color:#DCE3DD;box-shadow:0 2px 0 rgba(30,42,34,.03)}
.hero-photo img{object-position:center 40%;filter:contrast(1.06) saturate(1.05)}
.hero-photo::after{background:linear-gradient(90deg,rgba(15,46,34,.5) 0%,transparent 30%),linear-gradient(0deg,rgba(15,46,34,.35) 0%,transparent 35%)}

/* v15: hero slider */
.hero-slider .slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.1s ease;z-index:0}
.hero-slider .slide.on{opacity:1;z-index:1}
.hero-slider .slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 6s linear}
.hero-slider .slide.on img{transform:scale(1)}
.hero-slider figcaption{position:absolute;right:18px;top:18px;z-index:2;font-size:12px;color:rgba(255,255,255,.9);background:rgba(15,46,34,.55);backdrop-filter:blur(4px);padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14)}
.hero-slider::after{z-index:1}
.hero-slider .dots{position:absolute;right:18px;bottom:44px;z-index:3;display:flex;gap:6px}
.hero-slider .dots button{width:22px;height:4px;border:0;border-radius:2px;background:rgba(255,255,255,.35);cursor:pointer;padding:0;transition:background .2s,width .2s}
.hero-slider .dots button.on{background:var(--gold);width:34px}

/* v16 */
.phero .eyebrow{color:var(--gold-2)}
.phero{min-height:340px}
.phero::after{background:linear-gradient(180deg,rgba(15,46,34,.15),rgba(15,46,34,.9))}
.marq{display:none}
/* v17: trang con bài bản */
.solrows{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.solrow{display:grid;grid-template-columns:220px 1fr;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.solrow:hover{border-color:var(--green);box-shadow:0 12px 30px rgba(30,42,34,.08)}
.solrow-img{position:relative;background:#173F30}.solrow-img img{width:100%;height:100%;object-fit:cover;min-height:170px;filter:saturate(.9) contrast(1.05)}
.solrow-body{padding:18px 20px;display:flex;flex-direction:column;gap:6px}.solrow-body h3{font-size:16px}.solrow-body p{font-size:13px;color:var(--mute);flex:1}.solrow-body .tag{align-self:flex-start}
.catgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.catitem{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px;display:flex;flex-direction:column;gap:6px;transition:border-color .2s,background .2s}
.catitem:hover{border-color:var(--green);background:var(--green-t)}.catitem h3{font-size:15px}.catitem p{font-size:12.5px;color:var(--mute);flex:1}.catitem .link{font-size:13px}
.projlist{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.projrow{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s}
.projrow:hover{border-color:var(--green);box-shadow:0 12px 30px rgba(30,42,34,.08)}
.projrow-img{aspect-ratio:16/10;overflow:hidden}.projrow-img img{width:100%;height:100%;object-fit:cover}
.projrow>div:last-child{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px}.projrow h3{font-size:15px}.projrow p{font-size:12.5px;color:var(--mute);flex:1}.projrow .tag{align-self:flex-start}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tier{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:8px}
.tier--hot{border-color:var(--gold);box-shadow:0 14px 34px rgba(201,162,39,.15)}
.tier h3{font-size:18px}.tier p{font-size:13.5px;color:var(--mute)}.tier ul{list-style:none;margin-top:6px}.tier li{font-size:13.5px;padding:7px 0;border-top:1px solid var(--line)}.tier li::before{content:"✓";color:var(--green);font-weight:700;margin-right:8px}
.tier .tag{align-self:flex-start}
.ctype{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.ctype a{font-size:13px;font-weight:600;padding:9px 14px;border-radius:999px;border:1px solid var(--line);background:#fff}.ctype a.on{background:var(--green);color:#fff;border-color:var(--green)}
.mapbox{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);aspect-ratio:16/6}.mapbox iframe{width:100%;height:100%;border:0}
.brand2-card>div .blg{filter:none;margin-bottom:6px}
@media(max-width:1080px){.solrows{grid-template-columns:1fr}.catgrid{grid-template-columns:repeat(2,1fr)}.projlist{grid-template-columns:repeat(2,1fr)}.tiers{grid-template-columns:1fr}}
@media(max-width:760px){.solrow{grid-template-columns:1fr}.solrow-img img{min-height:160px}.catgrid,.projlist{grid-template-columns:1fr}.mapbox{aspect-ratio:4/3}}

/* v18: bảng cấu hình */
.tblwrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.cfg{width:100%;border-collapse:collapse;font-size:13px;min-width:860px}
.cfg th{background:var(--green);color:#fff;text-align:left;padding:11px 12px;font-family:var(--fd);font-weight:600;font-size:12.5px;white-space:nowrap}
.cfg td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:top;color:var(--ink)}
.cfg td:first-child{font-weight:600}.cfg td:last-child{white-space:nowrap;color:var(--green);font-weight:600}
.cfg tbody tr:nth-child(even){background:var(--bg2)}.cfg tbody tr:hover{background:var(--green-t)}
/* v18: collection/product (Haravan) */
.sortbox select{padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font:inherit;font-size:13px}
.cats a.on{background:var(--green);color:#fff;border-color:var(--green)}
.price-line{font-family:var(--fd);font-weight:700;color:var(--green);font-size:14px}.price-line em{font-style:normal;color:var(--amber);font-weight:500}
.empty{text-align:center;padding:48px 20px;background:var(--bg2);border-radius:var(--r)}.empty h3{margin-bottom:6px}
.pager{display:flex;justify-content:center;gap:6px;margin-top:24px}.pager a,.pager span{padding:8px 13px;border:1px solid var(--line);border-radius:var(--r-s);font-size:13px}.pager span.current{background:var(--green);color:#fff;border-color:var(--green)}
.pdp{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(24px,4vw,56px);margin-top:16px}
.pdp-main{background:#fff;border:1px solid var(--line);border-radius:var(--r);aspect-ratio:1;display:grid;place-items:center;padding:24px}.pdp-main img{max-height:100%;object-fit:contain}
.pdp-thumbs{display:flex;gap:8px;margin-top:10px}.pdp-thumbs button{width:64px;height:64px;border:1px solid var(--line);border-radius:var(--r-s);background:#fff;padding:4px;cursor:pointer}.pdp-thumbs button.on{border-color:var(--green)}.pdp-thumbs img{width:100%;height:100%;object-fit:contain}
.pdp-info h1{font-size:clamp(22px,2.2vw,30px);margin:8px 0 6px}.pdp-type{color:var(--mute);font-size:13px}
.pdp-price{margin:14px 0 6px;font-family:var(--fd)}.pdp-price b{font-size:26px;color:var(--green)}.pdp-price s{margin-left:10px;color:var(--mute);font-size:15px}
.pdp-stock{font-size:13px;color:var(--mute);margin-bottom:16px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--amber);margin-right:6px}.dot.ok{background:#2E9E5B}
.pdp-form label{display:block;font-size:12.5px;color:var(--mute);margin-bottom:4px}.pdp-form select,.pdp-form input{padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-s);font:inherit}
.pdp-qty{margin:12px 0}.pdp-qty input{width:90px}
.pdp-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.pdp-docs{margin-top:22px;padding:16px;background:var(--gold-t);border-radius:var(--r)}.pdp-docs h4{margin-bottom:8px}.pdp-docs a{display:block;padding:6px 0;font-weight:600;color:var(--green);font-size:14px}
.pdp-trust{margin-top:18px;font-size:13px;color:var(--mute)}.pdp-trust li{padding:5px 0}.pdp-trust li::before{content:"✓";color:var(--green);font-weight:700;margin-right:8px}
.pdp-desc img{max-width:100%;height:auto}.pdp-desc table{width:100%;border-collapse:collapse;font-size:14px}.pdp-desc td,.pdp-desc th{border:1px solid var(--line);padding:8px 10px}
@media(max-width:900px){.pdp{grid-template-columns:1fr}}

/* v19: thu hẹp khoảng cách, hero text */
:root{--sec:clamp(24px,3.2vw,40px)}
.sec-head,.blk-title{margin-bottom:12px}.blk-row{margin-bottom:14px}
.stats{margin-top:-22px}.hero-split{min-height:480px}
.hero-panel h1{font-size:clamp(22px,2.1vw,30px);margin:6px 0 10px}
.hero-panel p{margin-bottom:16px}.hero-panel .hero-acts{margin-bottom:18px}.hero-links{padding-top:14px}
.final-two{padding-top:var(--sec)}
.cats .lbl{display:none}

/* v20: không cắt đầu card khi hover; nền mới */
.carousel{overflow:visible}
.carousel-track{padding:10px 4px 12px;margin:-10px -4px -4px}
.pkg,.card{position:relative}
.sec--dark::before{opacity:.22;filter:none}

/* v21: hero title nhỏ hơn */
.hero-panel h1{font-size:clamp(17px,1.5vw,21px);line-height:1.3;font-weight:600;max-width:none;margin:6px 0 10px}
.hero-panel h1 .h1-brand{display:block;font-size:clamp(22px,2.1vw,28px);font-weight:800;color:#E3C35A;margin-top:4px;letter-spacing:-.01em}

/* v59.2: form Haravan không nhận class → style theo wrapper */
form#contact_form,form[action="/contact"]{display:block}
form .form{display:grid;gap:14px}
form .form label{display:block;font-size:13px;color:var(--mute);margin-bottom:5px;font-weight:500}
form .form input,form .form select,form .form textarea{width:100%;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:var(--r-s);color:var(--ink);font:inherit}
form .form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
form .form button{justify-self:start}
@media(max-width:760px){form .form .row{grid-template-columns:1fr}}

/* ===== V70: hệ giao diện trang trong, cân bằng typography và tương tác ===== */
:root{--gold-text:#80620A;--amber-text:#9A4C0E}
*[hidden]{display:none!important}
body{font-size:15px}
h1{font-size:clamp(24px,2.35vw,32px);line-height:1.22;letter-spacing:-.025em}
h2{font-size:clamp(19px,1.65vw,24px);line-height:1.28;letter-spacing:-.018em}
h3{font-size:15.5px;line-height:1.35}
.eyebrow{color:var(--gold-text);font-size:11px;font-weight:700;letter-spacing:.135em}
.skip{position:fixed;top:10px;left:12px;z-index:1000;transform:translateY(-160%);padding:10px 14px;border-radius:8px;background:#fff;color:var(--green);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.skip:focus{transform:none}
.sr-only{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;white-space:nowrap!important;border:0!important}
.nav>li:focus-within .mega{display:grid}
.drawer[aria-hidden="true"]{visibility:hidden}.drawer[aria-hidden="false"]{visibility:visible}
.btn,.cats a,.quick-cats a{min-height:42px}

/* Product card */
.lt-product-card{display:flex}
.lt-product-card>.card-img{display:grid;place-items:center;padding:18px}
.lt-product-card>.card-img img{transition:transform .3s ease}
.lt-product-card:hover>.card-img img{transform:scale(1.035)}
.lt-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;flex:1}
.lt-card-body .tag{font-size:11px}
.lt-card-body h3{font-size:14.5px;line-height:1.42;min-height:2.84em}
.lt-card-body .price-line{margin-top:auto;font-size:14px}
.lt-card-meta{font-size:11.5px;color:var(--mute)}
.lt-product-card:hover .lt-card-body h3,.lt-product-card:hover .lt-card-meta,.lt-product-card:hover .price-line{color:#fff}
.lt-img-empty{display:grid;place-items:center;width:100%;height:100%;min-height:180px;color:#789086;background:linear-gradient(145deg,#f4f7f5,#e9efeb);font:700 13px var(--fd);letter-spacing:.16em}

/* Search */
.search-hero{margin:16px var(--pad) 0;border-radius:var(--r);background:linear-gradient(135deg,#123C2D,#1D5A43);color:#fff;overflow:hidden;position:relative}
.search-hero::after{content:"";position:absolute;right:-10%;top:-80%;width:520px;height:520px;border:85px solid rgba(227,195,90,.1);border-radius:50%;pointer-events:none}
.search-hero__inner{position:relative;z-index:1;min-height:250px;display:grid;grid-template-columns:minmax(280px,.75fr) minmax(420px,1.25fr);gap:clamp(28px,6vw,84px);align-items:center;padding-top:38px;padding-bottom:38px}
.search-hero .crumb{color:rgba(255,255,255,.72)}.search-hero .eyebrow{color:var(--gold-2)}.search-hero h1{color:#fff;margin-bottom:7px}.search-hero p{color:rgba(255,255,255,.78)}
.search-box{display:flex;gap:10px;padding:8px;background:#fff;border-radius:999px;box-shadow:0 18px 45px rgba(5,24,17,.24)}
.search-box input{min-width:0;flex:1;border:0;padding:10px 16px;font:inherit;color:var(--ink);background:transparent;outline:0}
.search-box:focus-within{box-shadow:0 0 0 3px rgba(227,195,90,.5),0 18px 45px rgba(5,24,17,.24)}
.result-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.result-head>p{font-size:13px;color:var(--mute)}
.search-empty{display:grid;grid-template-columns:120px 1fr;gap:28px;align-items:center;max-width:880px;margin:0 auto;padding:38px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(145deg,#fff,#f2f6f3)}
.search-empty__mark{display:grid;place-items:center;width:112px;height:112px;border-radius:50%;background:var(--green-t);color:var(--green);font:600 62px/1 var(--fd)}
.search-empty h2{margin-bottom:8px}.search-empty p{color:var(--mute);margin-bottom:18px}.search-empty__actions{display:flex;gap:10px;flex-wrap:wrap}
.quick-cats{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.quick-cats a{display:grid;place-items:center;text-align:center;padding:11px;border:1px solid var(--line);border-radius:var(--r-s);background:#fff;font:600 12.5px var(--fd);transition:.2s ease}.quick-cats a:hover{background:var(--green);border-color:var(--green);color:#fff;transform:translateY(-2px)}

/* Package catalogue */
.phero--packages img{object-position:center 54%}
.package-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:20px}.package-intro p{color:var(--mute);margin-top:7px}
.package-filter{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(320px,1.35fr) auto;gap:20px;align-items:end;padding:18px 20px;margin-bottom:22px;border:1px solid #d9e3dc;border-radius:var(--r);background:linear-gradient(145deg,#f7faf8,#edf4ef)}
.filter-field label{display:block;margin-bottom:7px;color:var(--mute);font-size:12px;font-weight:600}.filter-field select{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit}
.filter-budget__head{display:flex;justify-content:space-between;gap:14px}.filter-budget__head strong{font:700 13px var(--fd);color:var(--green)}
.filter-budget input{width:100%;accent-color:var(--green)}.filter-scale{display:flex;justify-content:space-between;color:var(--mute);font-size:10.5px;margin-top:2px}.filter-result{min-width:130px;padding:11px 14px;border-radius:9px;background:var(--green);color:#fff;font:600 12.5px var(--fd);text-align:center}
.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.package-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}
.package-card:hover{transform:translateY(-4px);border-color:var(--green);box-shadow:0 16px 36px rgba(26,76,57,.14)}
.package-card__image{display:grid;place-items:center;aspect-ratio:4/3;padding:16px;border-bottom:1px solid var(--line);background:#fff}.package-card__image img{width:100%;height:100%;object-fit:contain;transition:transform .3s}.package-card:hover .package-card__image img{transform:scale(1.035)}
.package-card__body{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;height:100%}.package-card__body h3{font-size:16px}.package-card__body h3 a:hover{color:var(--green)}.package-card__body p{color:var(--mute);font-size:13px;line-height:1.62;flex:1}
.package-card__foot{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:12px;margin-top:4px;border-top:1px solid var(--line)}.package-card__foot strong{color:var(--green);font:700 13px var(--fd)}.package-card__foot .link{font-size:12px;white-space:nowrap}
.package-grid__empty{grid-column:1/-1}.package-grid__empty .btn{margin-top:16px}.package-steps{margin-top:2px}

/* Quote/cart */
.quote-hero{margin-top:0;background:linear-gradient(135deg,#f6f9f7,#e8f1eb);border-bottom:1px solid var(--line)}
.quote-hero .wrap{padding-top:42px;padding-bottom:42px}.quote-hero .crumb{color:var(--mute)}.quote-hero h1{color:var(--green);margin-bottom:8px}.quote-hero p{color:var(--mute)}
.quote-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:28px;align-items:start}
.quote-list__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}
.quote-item{display:grid;grid-template-columns:118px 1fr auto;gap:18px;align-items:center;padding:16px 0;border-top:1px solid var(--line)}.quote-item:last-of-type{border-bottom:1px solid var(--line)}
.quote-item__image{display:grid;place-items:center;aspect-ratio:1;padding:8px;border:1px solid var(--line);border-radius:10px;background:#fff}.quote-item__image img{width:100%;height:100%;object-fit:contain}
.quote-item__info h3{margin:7px 0 4px}.quote-item__info>p{font-size:12.5px;color:var(--mute)}.quote-item__price{font-weight:700!important;color:var(--green)!important}
.quote-item__qty{text-align:center;display:grid;gap:4px;justify-items:center;min-width:72px}.quote-item__qty span{font-size:11px;color:var(--mute)}.quote-item__qty strong{font:700 17px var(--fd)}.quote-item__qty a{font-size:12px;color:#9b3e32;text-decoration:underline}
.quote-note{margin-top:18px;padding:16px 18px;border-radius:10px;background:var(--gold-t);border-left:3px solid var(--gold)}.quote-note strong{font:700 13px var(--fd)}.quote-note p{font-size:12.5px;color:var(--mute);margin-top:3px}
.quote-form-panel{position:sticky;top:92px;padding:24px;border:1px solid #d4e0d7;border-radius:var(--r);background:linear-gradient(150deg,#f8fbf9,#eaf2ed);box-shadow:0 18px 40px rgba(26,76,57,.09)}.quote-form-panel>p{color:var(--mute);font-size:13px;margin:7px 0 18px}.quote-form-panel .form textarea{resize:vertical}.quote-form-panel .btn{width:100%;justify-content:center}.form-success{padding:11px 13px;margin:12px 0;border-radius:8px;background:var(--green-t);color:var(--green);font-weight:600}
.quote-empty{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:center;max-width:960px;margin:8px auto;padding:38px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(145deg,#fff,#f1f6f2)}.quote-empty__visual{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;background:var(--green);box-shadow:inset 0 0 0 22px rgba(255,255,255,.1)}.quote-empty__visual span{color:var(--gold-2);font:300 88px/1 var(--fd)}.quote-empty h2{margin:6px 0 9px}.quote-empty p{color:var(--mute);margin-bottom:18px}.quote-empty__actions{display:flex;gap:10px;flex-wrap:wrap}

/* Product detail balance */
.pdp-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(32px,6vw,80px);align-items:start}.pdp-content-grid .prose{max-width:78ch}
.pdp-help{position:sticky;top:92px;padding:22px;border:1px solid var(--line);border-radius:var(--r);background:#fff}.pdp-help h3{font-size:17px;margin:5px 0 8px}.pdp-help p{font-size:13px;color:var(--mute);margin-bottom:16px}.pdp-help ul{margin-top:16px;border-top:1px solid var(--line)}.pdp-help li{padding:8px 0;border-bottom:1px solid var(--line);font-size:12.5px;color:var(--mute)}.pdp-help li::before{content:"✓";color:var(--green);font-weight:700;margin-right:8px}
.pdp-thumbs button[aria-current="true"]{box-shadow:0 0 0 2px var(--green-t)}
.error-page h1{margin:5px 0 8px}.error-page p{margin:0 auto 18px;color:var(--mute)}.error-page__actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}

/* Motion controls */
.carousel,.hero-slider{position:relative}.motion-toggle{position:absolute;z-index:5;right:12px;bottom:10px;padding:6px 10px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:rgba(15,46,34,.78);color:#fff;font-size:10.5px;line-height:1.2;backdrop-filter:blur(5px)}.carousel>.motion-toggle{bottom:-25px;border-color:var(--line);background:#fff;color:var(--green)}
.band h2{color:#fff;font-size:20px;margin-bottom:4px}

@media(max-width:1080px){
  .quick-cats{grid-template-columns:repeat(4,1fr)}.package-grid{grid-template-columns:repeat(2,1fr)}
  .quote-layout{grid-template-columns:1fr}.quote-form-panel{position:static}.pdp-content-grid{grid-template-columns:1fr}.pdp-help{position:static}
}
@media(max-width:760px){
  body{font-size:14.5px}.search-hero{margin-left:0;margin-right:0;border-radius:0}.search-hero__inner{grid-template-columns:1fr;gap:22px;padding-top:28px;padding-bottom:30px}.search-box{border-radius:12px;align-items:stretch}.search-box .btn{padding-left:15px;padding-right:15px}
  .result-head{align-items:flex-start;flex-direction:column;gap:7px}.search-empty{grid-template-columns:1fr;padding:26px}.search-empty__mark{width:72px;height:72px;font-size:42px}.quick-cats{grid-template-columns:repeat(2,1fr)}
  .package-intro{align-items:flex-start;flex-direction:column}.package-filter{grid-template-columns:1fr;gap:14px}.filter-result{justify-self:stretch}.package-grid{grid-template-columns:1fr}.package-card__image{aspect-ratio:16/10}
  .quote-hero .wrap{padding-top:30px;padding-bottom:30px}.quote-item{grid-template-columns:86px 1fr;gap:13px}.quote-item__qty{grid-column:2;grid-template-columns:auto auto auto;align-items:center;justify-content:start;gap:12px}.quote-empty{grid-template-columns:1fr;padding:26px}.quote-empty__visual{width:130px}.quote-benefits{grid-template-columns:1fr 1fr}
  .pdp-acts .btn{width:100%;justify-content:center}.pdp-info h1{font-size:24px}.pdp-price b{font-size:22px}
}
@media(max-width:480px){.search-box{display:grid}.quick-cats{grid-template-columns:1fr 1fr}.quote-benefits{grid-template-columns:1fr}.lt-card-body h3{min-height:0}}
@media(prefers-reduced-motion:reduce){.motion-toggle{display:none}.hero-slider .slide img,.marq-track{animation:none!important;transform:none!important}}

/* ===== V71: phủ toàn bộ trang con ===== */
.crumb--dark{color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crumb--dark span{color:var(--ink)}
.product-top{padding-top:22px}.pdp-docs h2{font-size:14px;margin-bottom:8px}
.phero .hero-acts{position:relative;z-index:2;margin-top:18px}.phero .hero-acts .btn--ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.5)}.phero .hero-acts .btn--ghost:hover{background:#fff;color:var(--green)}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-grid>div{padding:22px;border:1px solid var(--line);border-top:3px solid var(--green);border-radius:var(--r);background:#fff}.metric-grid strong{display:block;color:var(--green);font:750 clamp(20px,2vw,27px) var(--fd);margin-bottom:5px}.metric-grid span{color:var(--mute);font-size:12.5px}
.contact-map{padding-top:0}.aside>h2{font-size:18px;margin-bottom:10px}
.location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.location-grid article{padding:28px;border:1px solid var(--line);border-radius:var(--r);background:#fff}.location-grid h2{margin:10px 0 8px}.location-grid p{color:var(--mute);font-size:13.5px;margin-bottom:12px}.location-grid ul{padding:12px 0;margin-bottom:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.location-grid li{padding:5px 0;font-size:13px;color:var(--mute)}
.collection-index{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.collection-index__item{overflow:hidden;border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s}.collection-index__item:hover{transform:translateY(-3px);border-color:var(--green);box-shadow:0 14px 30px rgba(26,76,57,.12)}.collection-index__item>div{display:grid;place-items:center;aspect-ratio:4/3;padding:14px;border-bottom:1px solid var(--line)}.collection-index__item img{width:100%;height:100%;object-fit:contain}.collection-index__item>span{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px}.collection-index__item strong{font:650 13.5px var(--fd)}.collection-index__item small{color:var(--mute);white-space:nowrap}

/* Customer and authentication */
.auth-page{min-height:calc(100vh - 210px);display:flex;align-items:center;padding:clamp(34px,6vw,78px) 0;background:linear-gradient(135deg,#edf4ef,#fff 55%,#fbf3d9)}
.auth-shell{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(380px,1.1fr);max-width:940px;margin:auto;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 26px 70px rgba(26,76,57,.12)}
.auth-aside{position:relative;padding:clamp(30px,5vw,52px);background:linear-gradient(150deg,#173f30,#0f2e22);color:#fff}.auth-aside::after{content:"";position:absolute;right:-90px;bottom:-90px;width:260px;height:260px;border:45px solid rgba(227,195,90,.1);border-radius:50%}.auth-aside>*{position:relative;z-index:1}.auth-aside .eyebrow{color:var(--gold-2)}.auth-aside h1{color:#fff;margin:7px 0 12px}.auth-aside p{color:rgba(255,255,255,.78);font-size:13.5px}.auth-aside ul{margin-top:24px}.auth-aside li{padding:8px 0;border-top:1px solid rgba(255,255,255,.12);font-size:13px}.auth-aside li::before{content:"✓";color:var(--gold-2);font-weight:700;margin-right:8px}
.auth-card{padding:clamp(28px,5vw,48px)}.auth-card h1,.auth-card h2{margin:5px 0 8px}.auth-card>p{color:var(--mute);font-size:13.5px;margin-bottom:20px}.auth-card--single{max-width:540px;margin:auto;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 26px 70px rgba(26,76,57,.1)}
.account-form{margin-top:18px}.account-form .btn{justify-self:stretch;justify-content:center}.auth-switch{margin-top:18px!important;padding-top:16px;border-top:1px solid var(--line);text-align:center}.recover-box{margin-top:18px;border:1px solid var(--line);border-radius:10px}.recover-box summary{padding:12px 14px;color:var(--green);font-weight:600;cursor:pointer}.recover-box>div{padding:0 14px 14px;border-top:1px solid var(--line)}
.errors{margin:12px 0;padding:12px 14px;border:1px solid #efc9c5;border-radius:8px;background:#fff1f0;color:#8f3028;font-size:13px}.errors ul{list-style:disc;padding-left:18px}
.account-hero{background:linear-gradient(135deg,#173f30,#245d47);color:#fff}.account-hero .wrap{padding-top:34px;padding-bottom:34px}.account-hero .crumb{color:rgba(255,255,255,.7)}.account-hero .eyebrow{color:var(--gold-2)}.account-hero h1{color:#fff}
.account-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}.account-nav{overflow:hidden;border:1px solid var(--line);border-radius:var(--r);background:#fff}.account-nav__identity{display:flex;align-items:center;gap:12px;padding:18px;background:var(--green-t)}.account-nav__identity>div{display:grid}.account-nav__identity span{font-size:11px;color:var(--mute)}.account-nav__identity strong{font:650 13.5px var(--fd)}.account-avatar{display:grid!important;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--green);color:#fff!important;font:700 13px var(--fd)!important}
.account-nav nav{display:grid;padding:8px}.account-nav nav a{padding:11px 12px;border-radius:8px;font-size:13px;color:var(--mute)}.account-nav nav a:hover,.account-nav nav a.active{background:var(--green);color:#fff}.account-nav__help{display:grid;padding:14px 18px;border-top:1px solid var(--line);font-size:12px}.account-nav__help a{color:var(--green);font-weight:700}
.account-panel{min-width:0;padding:26px;border:1px solid var(--line);border-radius:var(--r);background:#fff}.account-panel__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.profile-list{display:grid}.profile-list>div{display:grid;grid-template-columns:170px 1fr;gap:18px;padding:14px 0;border-top:1px solid var(--line)}.profile-list dt{font-size:12.5px;color:var(--mute)}.profile-list dd{font-weight:550}.account-callout{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:18px;border-radius:10px;background:var(--gold-t)}.account-callout strong{font:650 14px var(--fd)}.account-callout p{font-size:12px;color:var(--mute);margin-top:3px}
.account-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px}.account-table{width:100%;min-width:680px;border-collapse:collapse;font-size:12.5px}.account-table th,.account-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.account-table thead th{background:var(--green);color:#fff;font-family:var(--fd)}.account-table tbody tr:nth-child(even){background:var(--bg2)}.account-table tfoot th{background:var(--green-t);color:var(--green)}.status-pill{display:inline-block;padding:5px 8px;border-radius:999px;background:var(--green-t);color:var(--green);font-size:11px;font-weight:650;white-space:nowrap}
.order-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.order-summary>div{padding:14px;border-radius:9px;background:var(--bg2)}.order-summary span{display:block;color:var(--mute);font-size:11px}.order-summary strong{font:650 13px var(--fd)}.order-addresses{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}.order-addresses>div{padding:18px;border:1px solid var(--line);border-radius:10px}.order-addresses h2{font-size:15px;margin-bottom:8px}.order-addresses p{font-size:12.5px;color:var(--mute)}
.address-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.address-card{padding:18px;border:1px solid var(--line);border-radius:10px}.address-card h3{margin:8px 0 6px}.address-card>p{font-size:12.5px;color:var(--mute);margin-bottom:5px}.address-edit{margin-top:12px;border-top:1px solid var(--line)}.address-edit summary,.new-address summary{padding:11px 0;color:var(--green);font-weight:650;cursor:pointer}.address-delete{margin-top:8px;font-size:12px}.address-delete a{color:#973c33;text-decoration:underline}.new-address{margin-top:18px;padding:0 18px 18px;border:1px solid var(--line);border-radius:10px;background:var(--bg2)}.check-row{display:flex!important;align-items:center;gap:8px;color:var(--ink)!important}.check-row input{width:auto!important}

@media(max-width:1080px){.collection-index{grid-template-columns:repeat(3,1fr)}.account-layout{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:760px){.metric-grid{grid-template-columns:repeat(2,1fr)}.location-grid{grid-template-columns:1fr}.collection-index{grid-template-columns:repeat(2,1fr)}.auth-shell{grid-template-columns:1fr}.auth-aside{padding:28px}.auth-card{padding:26px}.account-layout{grid-template-columns:1fr}.account-nav{position:static}.account-nav nav{display:flex;overflow-x:auto}.account-nav nav a{white-space:nowrap}.account-nav__help{display:none}.account-panel{padding:20px}.profile-list>div{grid-template-columns:1fr;gap:3px}.account-callout{align-items:flex-start;flex-direction:column}.order-summary{grid-template-columns:1fr}.order-addresses,.address-grid{grid-template-columns:1fr}}
@media(max-width:480px){.metric-grid,.collection-index{grid-template-columns:1fr}.account-panel__head{align-items:flex-start;flex-direction:column}}

/* V71: support hub and acoustic design workspace */
.support-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#0d3024,#1f6249);color:#fff}.support-hero::after{content:"";position:absolute;right:-80px;top:-180px;width:520px;height:520px;border:86px solid rgba(227,195,90,.1);border-radius:50%}.support-hero .wrap{position:relative;z-index:1;padding-top:34px;padding-bottom:42px}.support-hero .crumb{color:rgba(255,255,255,.7)}.support-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:44px;align-items:end;margin-top:25px}.support-hero .eyebrow{color:var(--gold-2)}.support-hero h1{color:#fff;margin:5px 0 9px}.support-hero p{color:rgba(255,255,255,.78);font-size:14px}.support-hero__quick{display:grid;min-width:260px;padding:18px 22px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}.support-hero__quick span,.support-hero__quick small{font-size:11px;color:rgba(255,255,255,.68)}.support-hero__quick a{color:#fff;font:700 23px var(--fd);margin:3px 0}
.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.support-card{position:relative;display:flex;flex-direction:column;min-height:230px;padding:22px;border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:transform .22s,border-color .22s,background .22s,color .22s,box-shadow .22s}.support-card__no{color:var(--gold-text);font:700 11px var(--fd);letter-spacing:.12em}.support-card h3{font-size:17px;margin:26px 0 8px}.support-card p{color:var(--mute);font-size:13px;line-height:1.65;flex:1}.support-card strong{color:var(--green);font:650 12.5px var(--fd);margin-top:17px}.support-card:hover,.support-card:focus-visible{transform:translateY(-4px);background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 18px 36px rgba(26,76,57,.2)}.support-card:hover h3,.support-card:hover strong,.support-card:focus-visible h3,.support-card:focus-visible strong{color:#fff}.support-card:hover p,.support-card:focus-visible p{color:rgba(255,255,255,.78)}.support-card:hover .support-card__no,.support-card:focus-visible .support-card__no{color:var(--gold-2)}.lead-small{margin-top:10px;color:var(--mute);font-size:13.5px;line-height:1.7}
.design-intro{background:linear-gradient(145deg,#f5f8f6,#e9f1ec);border-bottom:1px solid var(--line)}.design-intro .wrap{padding-top:24px;padding-bottom:28px}.design-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:end;margin-top:22px}.design-intro h1{margin:5px 0 9px;max-width:25ch}.design-intro p{color:var(--mute);font-size:14px;line-height:1.7}.design-intro__aside{padding:18px 20px;border-left:3px solid var(--gold);border-radius:0 10px 10px 0;background:#fff}.design-intro__aside strong{font:650 13px var(--fd)}.design-intro__aside ol{margin:9px 0 0;padding-left:19px}.design-intro__aside li{padding:3px 0;color:var(--mute);font-size:12.5px}.studio iframe{box-shadow:0 16px 45px rgba(20,45,34,.08)}.design-note{max-width:none;margin:12px 2px 0;color:var(--mute);font-size:11.5px;line-height:1.65}
@media(max-width:980px){.support-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.support-hero__grid,.design-intro__grid{grid-template-columns:1fr;gap:22px}.support-hero__quick{min-width:0}.support-grid{grid-template-columns:1fr}.support-card{min-height:190px}.design-intro__aside{display:none}.studio .wrap{padding-left:8px!important;padding-right:8px!important}.studio iframe{border-radius:8px!important}}
