:root{
  --bg:#0B0D10; --bg2:#12151A; --bg3:#191D24; --card:#14171D;
  --br:#232830; --br2:#2C323C;
  --text:#F2F4F7; --mu:#8B93A1; --mu2:#5C6472;
  --gold:#C9A24B; --gold2:#E0BE6F;
  --blue:#3E7BFA; --blue2:#5C93FF;
  --green:#3CCB7F; --red:#F2545B;
  --r:8px; --r2:12px;
  --ease:cubic-bezier(.22,.9,.35,1);
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.W{max-width:1280px;margin:0 auto;padding:0 20px}
.mono{font-family:'JetBrains Mono',monospace}
h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.02em}
button{font-family:inherit}

/* ── Header ── */
.site-hdr{position:sticky;top:0;z-index:900;background:rgba(11,13,16,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--br)}
.hdr-top{background:var(--bg2);border-bottom:1px solid var(--br);font-size:12px;color:var(--mu)}
.hdr-top-in{display:flex;justify-content:space-between;padding:7px 0}
.hdr-top-in a{color:var(--mu)}
.hdr-top-in a:hover{color:var(--gold)}
.hdr-top-r{display:none}
@media(min-width:640px){.hdr-top-r{display:inline}}
.hdr-main-in{display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px}
.brand img{height:36px}
.brand-txt{font-weight:800;font-size:1.35rem;letter-spacing:-.03em;color:#fff}
.brand-txt .ac{color:var(--gold)}
.main-nav{display:none;gap:28px;flex:1;justify-content:center}
.main-nav a{font-size:13.5px;font-weight:500;color:var(--mu);padding:4px 0;border-bottom:2px solid transparent;transition:all .2s}
.main-nav a:hover,.main-nav a.on{color:#fff;border-color:var(--gold)}
@media(min-width:960px){.main-nav{display:flex}}
.hdr-actions{display:flex;align-items:center;gap:14px}
.cart-btn{position:relative;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--br2);border-radius:var(--r)}
.cart-btn svg{width:19px;height:19px}
.cart-btn:hover{border-color:var(--gold);color:var(--gold)}
.cart-badge{position:absolute;top:-7px;right:-7px;background:var(--gold);color:#0B0D10;font-size:10px;font-weight:800;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.burger{display:flex;flex-direction:column;gap:4px;width:22px;background:none;border:none;cursor:pointer;padding:4px}
.burger span{height:2px;background:#fff;border-radius:2px;transition:all .25s}
@media(min-width:960px){.burger{display:none}}
.mobile-nav{display:none;flex-direction:column;background:var(--bg2);border-top:1px solid var(--br);padding:8px 20px 16px}
.mobile-nav.open{display:flex}
.mobile-nav a{padding:11px 0;font-size:14.5px;font-weight:500;color:var(--mu);border-bottom:1px solid var(--br)}
.mobile-nav a.on{color:var(--gold)}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--r);font-size:13.5px;font-weight:600;cursor:pointer;border:none;transition:all .18s;white-space:nowrap}
.btn-gold{background:var(--gold);color:#0B0D10}
.btn-gold:hover{background:var(--gold2)}
.btn-blue{background:var(--blue);color:#fff}
.btn-blue:hover{background:var(--blue2)}
.btn-outline{background:transparent;border:1px solid var(--br2);color:var(--text)}
.btn-outline:hover{border-color:var(--gold);color:var(--gold)}
.btn-sm{padding:8px 16px;font-size:12.5px}
.btn-block{width:100%}
.btn:disabled{opacity:.4;cursor:not-allowed}

/* ── Section scaffolding ── */
.section{padding:64px 0}
.section-hd{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px;flex-wrap:wrap}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:8px;display:block}
.section-hd h2{font-size:clamp(1.5rem,3vw,2.1rem)}
.section-sub{color:var(--mu);font-size:14.5px;max-width:560px;margin-top:8px}

/* ── Hero ── */
.hero{position:relative;padding:80px 0 60px;background:radial-gradient(circle at 15% 20%,rgba(201,162,75,.09),transparent 45%),radial-gradient(circle at 85% 60%,rgba(62,123,250,.09),transparent 45%);border-bottom:1px solid var(--br)}
.hero-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}
@media(min-width:900px){.hero-grid{grid-template-columns:1.1fr .9fr}}
.hero-tag{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid var(--br2);border-radius:100px;font-size:12px;color:var(--mu);margin-bottom:20px}
.hero-tag b{color:var(--green)}
.hero h1{font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.08;color:#fff}
.hero h1 .ac{color:var(--gold)}
.hero p{color:var(--mu);font-size:15.5px;margin:20px 0 28px;max-width:480px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-stats{display:flex;gap:28px;margin-top:36px}
.hero-stat b{display:block;font-size:1.5rem;color:#fff;font-weight:800}
.hero-stat span{font-size:11.5px;color:var(--mu)}
.hero-visual{position:relative;border-radius:var(--r2);overflow:hidden;border:1px solid var(--br2);aspect-ratio:4/3;background:var(--bg3)}
.hero-visual img{width:100%;height:100%;object-fit:cover}

/* ── Category cards ── */
.cat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(min-width:640px){.cat-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:960px){.cat-grid{grid-template-columns:repeat(5,1fr)}}
.cat-card{background:var(--card);border:1px solid var(--br);border-radius:var(--r2);padding:24px 18px;text-align:center;transition:all .2s}
.cat-card:hover{border-color:var(--gold);transform:translateY(-3px)}
.cat-card .ic{font-size:2rem;margin-bottom:12px}
.cat-card h4{font-size:13.5px;color:#fff;margin-bottom:4px}
.cat-card span{font-size:11px;color:var(--mu2)}

/* ── Product grid & card ── */
.prod-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media(min-width:640px){.prod-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1100px){.prod-grid{grid-template-columns:repeat(4,1fr)}}
.pc{background:var(--card);border:1px solid var(--br);border-radius:var(--r2);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}
.pc:hover{border-color:var(--br2);transform:translateY(-2px)}
.pc-img{aspect-ratio:1/1;background:var(--bg3);position:relative;overflow:hidden}
.pc-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.pc:hover .pc-img img{transform:scale(1.06)}
.pc-badge{position:absolute;top:10px;left:10px;background:var(--gold);color:#0B0D10;font-size:10px;font-weight:800;padding:3px 9px;border-radius:5px;letter-spacing:.3px}
.pc-badge.out{background:var(--red);color:#fff}
.pc-body{padding:14px 15px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.pc-cat{font-size:10.5px;color:var(--gold);font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.pc-name{font-size:13.5px;font-weight:600;color:#fff;line-height:1.35;min-height:2.6em}
.pc-price-row{display:flex;align-items:baseline;justify-content:space-between;margin-top:auto;padding-top:8px}
.pc-price{font-size:15px;font-weight:800;color:#fff}
.pc-price .mono{color:var(--gold)}
.pc-cmp{font-size:11.5px;color:var(--mu2);text-decoration:line-through;margin-left:6px}
.pc-add{width:34px;height:34px;border-radius:8px;background:var(--bg3);border:1px solid var(--br2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s;flex-shrink:0}
.pc-add:hover{background:var(--gold);border-color:var(--gold);color:#0B0D10}
.pc-add svg{width:16px;height:16px}

/* ── Filters ── */
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.filter-chip{padding:8px 16px;border-radius:100px;border:1px solid var(--br2);font-size:12.5px;font-weight:600;color:var(--mu);cursor:pointer;transition:all .18s}
.filter-chip:hover{color:#fff;border-color:var(--gold)}
.filter-chip.on{background:var(--gold);border-color:var(--gold);color:#0B0D10}

/* ── Product detail ── */
.pd-grid{display:grid;grid-template-columns:1fr;gap:40px}
@media(min-width:900px){.pd-grid{grid-template-columns:1fr 1fr}}
.pd-main-img{aspect-ratio:1/1;background:var(--card);border:1px solid var(--br);border-radius:var(--r2);overflow:hidden;margin-bottom:12px}
.pd-main-img img{width:100%;height:100%;object-fit:contain}
.pd-thumbs{display:flex;gap:8px}
.pd-thumb{width:64px;height:64px;border-radius:var(--r);overflow:hidden;border:1px solid var(--br);cursor:pointer;opacity:.6}
.pd-thumb.on,.pd-thumb:hover{opacity:1;border-color:var(--gold)}
.pd-cat{color:var(--gold);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.pd-name{font-size:clamp(1.4rem,3vw,2rem);color:#fff;margin:8px 0 14px}
.pd-price{font-size:1.9rem;font-weight:800;color:#fff}
.pd-stock{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--green);margin:12px 0 20px;font-weight:600}
.pd-stock.low{color:var(--gold)}
.pd-stock.out{color:var(--red)}
.pd-desc{color:var(--mu);font-size:14.5px;line-height:1.7;margin-bottom:24px}
.qty-picker{display:flex;align-items:center;border:1px solid var(--br2);border-radius:var(--r);overflow:hidden;width:fit-content}
.qty-picker button{width:38px;height:42px;background:var(--bg3);border:none;color:#fff;font-size:16px;cursor:pointer}
.qty-picker input{width:48px;text-align:center;background:none;border:none;color:#fff;font-size:14px;font-weight:600}
.pd-actions{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}
.pd-specs{margin-top:36px;border-top:1px solid var(--br);padding-top:24px}
.pd-specs table{width:100%;border-collapse:collapse;font-size:13.5px}
.pd-specs td{padding:9px 0;border-bottom:1px solid var(--br)}
.pd-specs td:first-child{color:var(--mu);width:40%}
.pd-specs td:last-child{color:#fff;font-weight:500}

/* ── Cart & Checkout ── */
.cart-table{width:100%;border-collapse:collapse}
.cart-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--mu2);padding-bottom:12px;border-bottom:1px solid var(--br)}
.cart-row{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--br)}
.cart-row img{width:64px;height:64px;object-fit:cover;border-radius:var(--r);background:var(--bg3);flex-shrink:0}
.cart-row-name{font-weight:600;font-size:14px;color:#fff;margin-bottom:4px}
.cart-row-price{font-size:12.5px;color:var(--mu)}
.cart-row-total{font-weight:700;color:#fff;min-width:100px;text-align:right}
.cart-remove{color:var(--red);font-size:12px;cursor:pointer;background:none;border:none;padding:0;margin-top:4px}
.summary-box{background:var(--card);border:1px solid var(--br);border-radius:var(--r2);padding:22px}
.summary-row{display:flex;justify-content:space-between;font-size:13.5px;color:var(--mu);padding:7px 0}
.summary-row.tot{color:#fff;font-weight:800;font-size:17px;border-top:1px solid var(--br);margin-top:8px;padding-top:14px}
.empty-state{text-align:center;padding:80px 20px;color:var(--mu)}
.empty-state .ic{font-size:3rem;margin-bottom:16px;opacity:.5}

/* ── Forms ── */
.f-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:640px){.f-grid.f2{grid-template-columns:1fr 1fr}}
.fgrp label{display:block;font-size:12px;font-weight:600;color:var(--mu);margin-bottom:7px}
.finp,.fsel,.fta{width:100%;background:var(--bg3);border:1px solid var(--br2);border-radius:var(--r);padding:11px 13px;color:#fff;font-size:13.5px;font-family:inherit}
.finp:focus,.fsel:focus,.fta:focus{outline:none;border-color:var(--gold)}
.fta{resize:vertical;min-height:100px}
.form-card{background:var(--card);border:1px solid var(--br);border-radius:var(--r2);padding:28px}

/* ── Footer ── */
.site-ftr{background:var(--bg2);border-top:1px solid var(--br);padding-top:56px;margin-top:80px}
.ftr-grid{display:grid;grid-template-columns:1fr;gap:36px;padding-bottom:40px}
@media(min-width:768px){.ftr-grid{grid-template-columns:1.6fr 1fr 1fr 1.2fr}}
.ftr-desc{color:var(--mu);font-size:13.5px;max-width:280px;line-height:1.6}
.ftr-social{display:flex;gap:14px;margin-top:14px}
.ftr-social a{font-size:12px;color:var(--mu)}
.ftr-social a:hover{color:var(--gold)}
.site-ftr h4{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#fff;margin-bottom:16px}
.site-ftr ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.site-ftr ul a,.site-ftr ul li{font-size:13px;color:var(--mu)}
.site-ftr ul a:hover{color:var(--gold)}
.ftr-bot{border-top:1px solid var(--br);padding:20px 0}
.ftr-bot-in{display:flex;justify-content:space-between;font-size:12px;color:var(--mu2);flex-wrap:wrap;gap:8px}

/* ── Toast ── */
#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--card);border:1px solid var(--br2);padding:13px 22px;border-radius:var(--r);font-size:13.5px;font-weight:600;color:#fff;opacity:0;pointer-events:none;transition:all .3s;z-index:2000;box-shadow:0 10px 30px rgba(0,0,0,.4)}
#toast.on{opacity:1;transform:translateX(-50%) translateY(0)}
#toast.ok{border-color:var(--green)}
#toast.err{border-color:var(--red)}

/* ── Misc ── */
.badge{display:inline-block;padding:3px 10px;border-radius:100px;font-size:10.5px;font-weight:700}
.badge-pending{background:rgba(201,162,75,.15);color:var(--gold)}
.badge-paid{background:rgba(60,203,127,.15);color:var(--green)}
.badge-failed{background:rgba(242,84,91,.15);color:var(--red)}
.page-hero{padding:48px 0 36px;border-bottom:1px solid var(--br);text-align:center}
.page-hero .eyebrow{display:block}
.page-hero h1{font-size:clamp(1.8rem,4vw,2.6rem);color:#fff}
.page-hero p{color:var(--mu);max-width:520px;margin:14px auto 0;font-size:14.5px}
.breadcrumb{font-size:12.5px;color:var(--mu2);margin-bottom:18px}
.breadcrumb a{color:var(--mu)}
.breadcrumb a:hover{color:var(--gold)}
