*{box-sizing:border-box;margin:0;padding:0}
:root{--red:#d7f400;--red2:#9fd000;--red3:#516d00;--black:#080a07;--white:#fff;--soft:#f8faef;--line:#dee7bd;--muted:#6f735f}
html{scroll-behavior:smooth}
body{font-family:Inter,Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#ffffff 0%,#fbfdf3 55%,#f1f6e5 100%);color:#171717}
a{text-decoration:none;color:inherit}button{font:inherit}
.container{width:min(1180px,92%);margin:auto}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);box-shadow:0 8px 30px rgba(70,95,0,.08)}
.navbar{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900}
.brand img{width:58px;height:58px;object-fit:contain;border-radius:50%;box-shadow:0 5px 16px rgba(120,160,0,.18)}
.brand span{font-size:20px;letter-spacing:.3px}
nav{display:flex;gap:26px;font-size:14px;font-weight:750}
nav a:hover{color:var(--red)}
.cart-btn{border:0;background:linear-gradient(135deg,#070907,#253000 55%,#96cd00);color:white;padding:12px 16px;border-radius:12px;font-weight:800;cursor:pointer}
.cart-count{display:inline-flex;min-width:22px;height:22px;align-items:center;justify-content:center;background:var(--red);border-radius:99px;margin-left:6px;font-size:12px}
.hero{padding:34px 0 24px}
.hero-box{min-height:540px;display:grid;grid-template-columns:1.03fr .97fr;overflow:hidden;border-radius:30px;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.12),transparent 22%),linear-gradient(135deg,#050604 0%,#171d08 42%,#526d00 73%,#a8dc00 100%);box-shadow:0 28px 70px rgba(78,104,0,.20)}
.hero-copy{padding:64px 52px;color:#fff;display:flex;flex-direction:column;justify-content:center}
.hero-badge{display:inline-flex;width:max-content;padding:9px 13px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);border-radius:999px;font-size:12px;font-weight:900;margin-bottom:20px}
.hero h1{font-size:clamp(42px,6vw,76px);line-height:.96;letter-spacing:-3px;margin-bottom:20px}
.hero h1 span{color:#d7f400}
.hero p{max-width:560px;color:rgba(255,255,255,.82);font-size:16px;line-height:1.75;margin-bottom:28px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{min-height:48px;padding:0 22px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;font-weight:850}
.btn-light{background:white;color:#3f5300}
.btn-dark{border:1px solid rgba(255,255,255,.34);background:rgba(0,0,0,.18);color:white}
.hero-image{position:relative;min-height:540px;background:#111}
.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 34%;display:block}
.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,5,6,.35),transparent 24%);pointer-events:none}
.hero-box:has(.hero-banner){display:block;min-height:0;background:#0d0d0f}
.hero-banner{width:100%;overflow:hidden}
.hero-banner img{display:block;width:100%;height:auto;object-fit:contain}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:18px 0 64px}
.benefit{background:#fff;border:1px solid var(--line);border-radius:18px;padding:21px;box-shadow:0 10px 28px rgba(80,0,0,.05)}
.benefit strong{display:block;margin-bottom:7px;font-size:15px}
.benefit span{font-size:13px;color:var(--muted);line-height:1.55}
section.products-section{padding:10px 0 70px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}
.section-head h2{font-size:clamp(30px,4vw,44px);letter-spacing:-1.6px}
.section-head p{margin-top:8px;color:var(--muted)}
.categories{display:flex;gap:9px;flex-wrap:wrap}
.cat-btn{border:1px solid var(--line);background:white;padding:10px 15px;border-radius:999px;font-weight:750}
.cat-btn.active,.cat-btn:hover{background:linear-gradient(135deg,#607b00,#b6eb00);color:white;border-color:#9cc900}
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.product-card{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.2s;box-shadow:0 8px 25px rgba(60,85,0,.05)}
.product-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(85,115,0,.13)}
.product-image{aspect-ratio:1/1;background:linear-gradient(145deg,#fff,#f4f8e7);padding:12px}
.product-image img{width:100%;height:100%;object-fit:contain;border-radius:14px}
.product-body{padding:17px}
.product-cat{font-size:11px;text-transform:uppercase;color:var(--red);font-weight:900;letter-spacing:.8px}
.product-body h3{font-size:16px;line-height:1.35;margin:8px 0 10px;min-height:43px}
.price{font-size:19px;font-weight:900;margin-bottom:15px}
.product-actions{display:grid;grid-template-columns:1fr 42px;gap:8px}
.buy{border:0;background:linear-gradient(135deg,#5b7600,#b4e900);color:white;border-radius:11px;font-weight:850;cursor:pointer}
.plus{height:42px;border:1px solid var(--line);background:white;border-radius:11px;font-size:22px;cursor:pointer}
.qty-picker{display:flex;align-items:center;justify-content:center;gap:12px;margin:20px 0}.qty-picker button{width:46px;height:46px;border:1px solid var(--line);background:#fff;border-radius:12px;font-size:24px;font-weight:900;cursor:pointer;color:var(--red)}.qty-picker input{width:86px;height:46px;border:1px solid var(--line);border-radius:12px;text-align:center;font-size:18px;font-weight:900;outline:none}.qty-picker input:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(201,25,34,.10)}.qty-product{padding:14px 16px;background:#f8faef;border:1px solid var(--line);border-radius:14px}.qty-product strong{display:block;margin-bottom:5px}.qty-confirm{width:100%;border:0;background:linear-gradient(135deg,#536d00,#b7ed00);color:#fff;padding:14px;border-radius:12px;font-weight:900;cursor:pointer}.cart-item-actions{display:flex;align-items:center;gap:7px;margin-top:9px}.cart-item-actions button{width:30px;height:30px;border:1px solid var(--line);background:#fff;border-radius:8px;font-weight:900;cursor:pointer}.cart-item-actions .remove-item{width:auto;padding:0 10px;background:#eef5d7;color:#607c00;border:0}.cart-line-total{font-weight:900;white-space:nowrap}
.promo{padding-bottom:70px}
.promo-box{padding:42px;border-radius:28px;color:white;background:linear-gradient(120deg,#050604,#252f00 52%,#96ca00);display:flex;justify-content:space-between;align-items:center;gap:25px}
.promo h2{font-size:clamp(30px,5vw,48px);margin-bottom:9px}
.promo p{color:rgba(255,255,255,.8);line-height:1.7;max-width:620px}
footer{background:linear-gradient(135deg,#050604,#121706 55%,#314200);color:white;padding:52px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:36px;margin-bottom:32px}
.footer-logo{display:flex;align-items:center;gap:13px;font-size:20px;font-weight:900;margin-bottom:12px}
.footer-logo img{width:72px;height:72px;object-fit:contain;border-radius:50%}
footer p,footer a{color:#c8ceb8;font-size:14px;line-height:1.8}
footer h4{margin-bottom:10px}
.copy{border-top:1px solid rgba(255,255,255,.1);padding-top:20px;text-align:center;color:#9ca487;font-size:13px}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.48);display:none;align-items:center;justify-content:center;padding:20px;z-index:100}
.modal.active{display:flex}
.cart-box{width:min(520px,100%);max-height:80vh;overflow:auto;background:white;border-radius:22px;padding:24px}
.cart-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.close{border:0;background:#f2f6e7;width:38px;height:38px;border-radius:50%;font-size:18px;cursor:pointer}
.cart-item{display:flex;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}
.cart-total{display:flex;justify-content:space-between;font-weight:900;font-size:18px;margin:20px 0}
.checkout{width:100%;border:0;background:linear-gradient(135deg,#536d00,#b7ed00);color:white;padding:14px;border-radius:12px;font-weight:900;cursor:pointer}
@media(max-width:950px){.hero-box{grid-template-columns:1fr}.hero-image{min-height:500px}.products{grid-template-columns:repeat(2,1fr)}.benefits{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){nav{display:none}.brand span{display:none}.navbar{height:68px}.brand img{width:50px;height:50px}.hero{padding-top:20px}.hero-box{border-radius:22px}.hero-copy{padding:34px 24px}.hero h1{letter-spacing:-2px}.hero-image{min-height:430px}.benefits{grid-template-columns:1fr;padding-bottom:45px}.products{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.promo-box{padding:28px 22px;align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}}

/* KK STORE / KEBAS KERAM */
.brand img{
  background:#050604;
  border:2px solid rgba(215,244,0,.42);
  box-shadow:0 6px 18px rgba(114,150,0,.20);
}
.brand span{color:#16190d}
nav a:hover{color:#7ea600}
.cart-count{color:#090a07;font-weight:900}
.hero{padding:28px 0 22px}
.hero-box:has(.hero-banner){
  display:block;
  min-height:0;
  background:#050604;
  border:1px solid rgba(215,244,0,.18);
  box-shadow:0 26px 64px rgba(69,92,0,.18);
}
.hero-banner{
  width:100%;
  aspect-ratio:3/2;
  overflow:hidden;
}
.hero-banner img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}
.product-cat{color:#769800}
.buy,.checkout,.qty-confirm{color:#0b0d07}
.product-card{border-color:#dce6bd}
.product-card:hover{border-color:#b7d66e}
.footer-logo img{
  background:#050604;
  border:2px solid rgba(215,244,0,.32);
}
@media(max-width:680px){
  .hero-banner{aspect-ratio:16/11}
}


/* === MATTE BLACK BACKGROUND OVERRIDE === */
html, body {
  background: #11120f !important;
  color: #f5f5f1;
}

body {
  background:
    radial-gradient(circle at 50% 0%, rgba(154,205,0,.08), transparent 34%),
    linear-gradient(180deg, #151612 0%, #0f100d 55%, #090a08 100%) !important;
}

header {
  background: rgba(10,11,8,.96) !important;
  border-bottom-color: rgba(183,237,0,.16) !important;
}

.brand span,
nav a {
  color: #f4f4ee;
}

.section-head h2,
.product-body h3,
.benefit strong {
  color: #f4f4ee !important;
}

.section-head p,
.benefit span,
.product-body p {
  color: #aeb29f !important;
}

.benefit,
.product-card {
  background: #171814 !important;
  border-color: #303427 !important;
  box-shadow: 0 14px 32px rgba(0,0,0,.28) !important;
}

.product-card:hover {
  border-color: #9bc900 !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.38) !important;
}

.product-image {
  background: linear-gradient(145deg, #20221b, #11120f) !important;
}

.price {
  color: #d7f400 !important;
}

.category-btn {
  background: #171814 !important;
  color: #e8eadf !important;
  border-color: #3b4030 !important;
}

.category-btn.active,
.category-btn:hover {
  background: linear-gradient(135deg,#607b00,#b6eb00) !important;
  color: #090a07 !important;
  border-color: #a9db00 !important;
}

.hero-box:has(.hero-banner) {
  background: #080906 !important;
  border-color: rgba(215,244,0,.20) !important;
}

.hero-banner img {
  object-fit: cover !important;
  object-position: center !important;
}

footer {
  background: linear-gradient(135deg,#070806,#111607 55%,#263500) !important;
}


/* === CART / MODAL READABILITY FIX === */
.modal .cart-box {
  background: #fbfcf7 !important;
  color: #15180f !important;
  font-family: Inter, Arial, Helvetica, sans-serif !important;
  border: 1px solid #dfe7bd;
  box-shadow: 0 24px 70px rgba(0,0,0,.42);
}

.cart-head h2 {
  color: #171a11 !important;
  font-size: 22px;
  font-weight: 900;
  letter-spacing: -.4px;
}

.close {
  background: #eef4df !important;
  color: #30371d !important;
  font-weight: 900;
  border: 1px solid #d7e2b5 !important;
}

.close:hover {
  background: #dff0a7 !important;
  color: #111408 !important;
}

#cartItems,
#cartItems p,
.cart-item,
.cart-item strong,
.cart-item span,
.cart-item div {
  color: #1b1e15 !important;
}

.cart-item {
  border-bottom: 1px solid #d9e3bb !important;
}

.cart-item strong {
  font-size: 14px;
  font-weight: 850;
}

.cart-item > div > div {
  color: #687052 !important;
  font-size: 12px !important;
  font-weight: 650;
  margin-top: 4px;
}

.cart-line-total {
  color: #15190d !important;
  font-weight: 900 !important;
}

.cart-item-actions button {
  background: #fff !important;
  color: #15190d !important;
  border-color: #cedaa6 !important;
  font-weight: 900;
}

.cart-item-actions .remove-item {
  background: #e9f2c8 !important;
  color: #536b00 !important;
  font-weight: 850;
}

.cart-total {
  color: #15190d !important;
  border-top: 1px solid #d9e3bb;
  padding-top: 16px;
  font-size: 19px;
  font-weight: 900;
}

.cart-total span,
#cartTotal {
  color: #15190d !important;
}

.checkout {
  background: linear-gradient(135deg,#587600,#b9f000) !important;
  color: #090b06 !important;
  font-size: 15px;
  font-weight: 950 !important;
  letter-spacing: .1px;
  min-height: 46px;
  box-shadow: 0 8px 18px rgba(107,145,0,.18);
}

.checkout:hover {
  filter: brightness(1.06);
  transform: translateY(-1px);
}

/* Quantity modal */
.qty-product {
  background: #f3f7e8 !important;
  border-color: #d9e3bb !important;
  color: #171a11 !important;
}

.qty-product strong,
#qtyProductName {
  color: #171a11 !important;
  font-weight: 900;
}

#qtyProductPrice {
  color: #65704e !important;
  font-weight: 700;
}

.qty-picker button {
  color: #405700 !important;
  border-color: #cfdaa9 !important;
}

.qty-picker input {
  color: #15190d !important;
  background: #fff !important;
  border-color: #cfdaa9 !important;
}

.qty-confirm {
  color: #090b06 !important;
  font-weight: 950 !important;
}

/* mobile */
@media(max-width:680px){
  .modal .cart-box {
    padding: 20px !important;
  }
  .cart-head h2 {
    font-size: 20px;
  }
}

/* ===== FINAL PERFORMANCE / RESPONSIVE OPTIMIZATION ===== */
html { background:#090a08; }
body{
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  min-height:100vh;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
.menu-btn{
  display:none;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(215,244,0,.26);
  border-radius:12px;
  background:#151814;
  color:#d7f400;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}
.hero-banner img{
  content-visibility:auto;
}
.product-card{
  content-visibility:auto;
  contain-intrinsic-size:330px;
}
.product-image img{
  transform:translateZ(0);
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

@media(max-width:680px){
  header{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    box-shadow:0 5px 18px rgba(0,0,0,.22)!important;
  }
  .navbar{
    position:relative;
    gap:10px;
  }
  .menu-btn{
    display:inline-flex;
    margin-left:auto;
  }
  #mainNav{
    display:none;
    position:absolute;
    top:64px;
    left:0;
    right:0;
    padding:10px;
    border:1px solid rgba(215,244,0,.18);
    border-radius:14px;
    background:#11130f;
    box-shadow:0 18px 35px rgba(0,0,0,.38);
    flex-direction:column;
    gap:2px;
    z-index:80;
  }
  #mainNav.open{display:flex}
  #mainNav a{
    display:block;
    padding:12px 14px;
    border-radius:10px;
    color:#f4f4ee;
  }
  #mainNav a:hover{background:#1d2117}
  .cart-btn{
    padding:10px 12px;
    min-height:44px;
  }
  .hero{
    padding:16px 0 18px!important;
  }
  .hero-box{
    border-radius:18px!important;
    box-shadow:0 16px 34px rgba(0,0,0,.26)!important;
  }
  .hero-banner{
    aspect-ratio:3/2!important;
  }
  .hero-banner img{
    width:100%;
    height:100%;
    object-fit:cover!important;
  }
  .benefits{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    padding:12px 0 38px!important;
  }
  .benefit{
    padding:15px!important;
    box-shadow:0 8px 20px rgba(0,0,0,.18)!important;
  }
  .products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .product-card{
    border-radius:16px!important;
    box-shadow:0 8px 20px rgba(0,0,0,.20)!important;
  }
  .product-card:hover{transform:none!important}
  .product-image{padding:8px!important}
  .product-body{padding:12px!important}
  .product-body h3{
    font-size:14px!important;
    min-height:38px!important;
    margin:7px 0 8px!important;
  }
  .product-cat{font-size:10px!important}
  .price{
    font-size:16px!important;
    margin-bottom:11px!important;
  }
  .product-actions{
    grid-template-columns:1fr 38px!important;
    gap:6px!important;
  }
  .buy{
    min-height:38px;
    padding:0 7px;
    font-size:11px;
  }
  .plus{
    width:38px;
    height:38px!important;
    font-size:20px!important;
  }
  .promo{padding-bottom:45px!important}
  .modal{
    padding:12px!important;
  }
}

@media(max-width:390px){
  .products{grid-template-columns:1fr!important}
  .benefits{grid-template-columns:1fr!important}
  .brand img{width:46px!important;height:46px!important}
  .cart-btn{font-size:12px}
}


/* ===== PRODUCT CATEGORY FILTER ===== */
.categories{
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  padding-bottom:2px;
}
.categories::-webkit-scrollbar{display:none}
.cat-btn{
  white-space:nowrap;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.cat-btn:active{transform:scale(.97)}
.product-card.product-hidden{
  display:none!important;
}

@media(max-width:680px){
  .section-head{
    gap:14px!important;
  }
  .categories{
    width:100%;
    flex-wrap:nowrap!important;
  }
  .cat-btn{
    flex:0 0 auto;
    min-height:42px;
    padding:10px 16px!important;
  }
}
