/* ═══════════════════════════════════════════════════════════════════════
 * KamiKaze V8 Homepage — V8c hybrid layout.
 * All classes prefixed with `kmkh-` to avoid collision.
 * ═══════════════════════════════════════════════════════════════════════ */

/* hide elements that would conflict with V8 homepage */
body.kmk-v8.home #main-content,
body.kmk-v8.front-page #main-content,
body.kmk-v8.home main.site-main,
body.kmk-v8.front-page main.site-main { padding:0; background:#fff; }

body.kmk-v8.home, body.kmk-v8.front-page { background:#fff; color:var(--kmk-ink); line-height:1.5; }

/* ─── HERO: BIKE PICKER ─── */
.kmkh-hero { background:linear-gradient(180deg, #0b0b0b 0%, #161616 100%); color:#fff; padding:0; max-width:none; position:relative; overflow:hidden; }
.kmkh-hero::before { content:''; position:absolute; inset:0; background:url('/wp-content/uploads/2025/11/IMG-20251111-WA0048.jpg') center 55%/cover no-repeat; opacity:0.45; }
.kmkh-hero::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(11,11,11,0.55) 0%, rgba(11,11,11,0.30) 40%, rgba(11,11,11,0.85) 100%); z-index:1; }
.kmkh-hero-inner { position:relative; z-index:2; max-width:1100px; margin:0 auto; padding:64px 24px; text-align:center; }
@media (min-width:900px) { .kmkh-hero-inner { padding:96px 32px 72px; } }
.kmkh-hero h1 { font-size:clamp(28px, 5vw, 44px); font-weight:800; letter-spacing:-0.02em; line-height:1.1; text-transform:uppercase; margin:0 0 12px; color:#fff; }
.kmkh-hero .sub { font-size:15px; color:var(--kmk-grey-5); margin:0 auto 32px; max-width:560px; }
.kmkh-picker { background:rgba(255,255,255,0.04); backdrop-filter:blur(8px); border:1px solid var(--kmk-line-d); border-radius:12px; padding:18px; display:grid; gap:12px; grid-template-columns:1fr; max-width:900px; margin:0 auto 32px; box-sizing:border-box; overflow:hidden; }
@media (min-width:720px) { .kmkh-picker { grid-template-columns:1fr 1fr 160px; gap:14px; } }
@media (min-width:900px) { .kmkh-picker { grid-template-columns:1fr 1fr 180px; } }
.kmkh-picker label { display:block; text-align:left; font-size:11px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--kmk-grey-4); margin-bottom:6px; }
.kmkh-picker select { width:100%; height:54px; padding:0 18px; background:#fff; color:var(--kmk-ink); border:1px solid rgba(255,255,255,0.18); border-radius:8px; font-family:inherit; font-size:15px; font-weight:700; cursor:pointer; appearance:none; -webkit-appearance:none; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%23000' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; background-size:20px; padding-right:42px; }
.kmkh-picker-go-wrap { display:flex; flex-direction:column; }
.kmkh-picker-spacer { display:block; height:18px; font-size:11px; line-height:1; }
.kmkh-picker-go { height:54px; width:100%; padding:0 24px; background:var(--kmk-red); color:#fff; border:0; border-radius:8px; font-family:inherit; font-size:14px; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; cursor:pointer; transition:background .15s; }
.kmkh-picker-go:hover { background:var(--kmk-red-bright); }
.kmkh-quick-pick { display:flex; gap:8px; flex-wrap:nowrap; justify-content:flex-start; align-items:center; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding:4px 4px 8px; }
.kmkh-quick-pick::-webkit-scrollbar { height:0; }
@media (min-width:720px) { .kmkh-quick-pick { justify-content:center; flex-wrap:wrap; overflow-x:visible; } }
.kmkh-quick-pick .lbl { font-size:11px; color:var(--kmk-grey-4); text-transform:uppercase; letter-spacing:0.1em; font-weight:700; flex-shrink:0; margin-right:6px; padding:0 4px; }
.kmkh-quick-pick .kmkh-quick-bike { display:inline-flex; align-items:center; gap:8px; padding:6px 14px 6px 6px; background:rgba(255,255,255,0.04); border:1px solid var(--kmk-line-d); border-radius:999px; transition:all .15s; text-decoration:none; color:#fff; flex-shrink:0; scroll-snap-align:start; }
.kmkh-quick-pick .kmkh-quick-bike:hover { background:rgba(255,255,255,0.10); border-color:var(--kmk-red); }
.kmkh-quick-pick .kmkh-quick-bike .img-wrap { width:32px; height:24px; display:flex; align-items:center; justify-content:center; background:#fff; border-radius:999px; padding:2px; flex-shrink:0; }
.kmkh-quick-pick .kmkh-quick-bike .img-wrap img { max-width:100%; max-height:100%; object-fit:contain; }
.kmkh-quick-pick .kmkh-quick-bike .lbl-text { font-size:12px; font-weight:700; line-height:1; white-space:nowrap; }

/* ─── Thin promise reminder line — single-row ticker style, sits above editorial ─── */
.kmkh-promise-line { background:#0b0b0b; border-top:1px solid var(--kmk-line-d); border-bottom:1px solid var(--kmk-line-d); padding:12px 16px; }
.kmkh-promise-line-inner { max-width:1280px; margin:0 auto; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:6px 28px; color:rgba(255,255,255,0.85); font-size:12.5px; font-weight:600; text-align:center; }
.kmkh-promise-line-inner span { display:inline-flex; align-items:center; gap:6px; line-height:1.4; }
.kmkh-promise-line-inner svg { color:var(--kmk-yellow); flex-shrink:0; }
/* Mobile: stack vertically, each item on its own row with proper breathing room */
@media (max-width:720px) {
  .kmkh-promise-line { padding:14px 16px; background:linear-gradient(180deg, #0b0b0b 0%, #161616 100%); }
  .kmkh-promise-line-inner { flex-direction:column; align-items:flex-start; gap:10px; font-size:13px; }
  .kmkh-promise-line-inner span { width:100%; padding-left:10px; border-left:2px solid var(--kmk-yellow); line-height:1.4; }
  .kmkh-promise-line-inner svg { width:16px; height:16px; }
}

/* ─── FEATURED STRIP (2 bestsellers) ─── */
.kmkh-feat-strip { background:var(--kmk-ink); padding:48px 24px 64px; max-width:none; border-top:1px solid var(--kmk-line-d); }
.kmkh-feat-strip-inner { max-width:1440px; margin:0 auto; }
.kmkh-feat-strip-head { display:flex; justify-content:space-between; align-items:end; margin-bottom:24px; flex-wrap:wrap; gap:12px; }
.kmkh-feat-strip-head .left .eyebrow { color:var(--kmk-yellow); font-size:11px; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; margin-bottom:8px; display:inline-block; }
.kmkh-feat-strip-head .left h2 { color:#fff; font-size:clamp(22px, 3vw, 30px); font-weight:800; letter-spacing:-0.02em; line-height:1.1; text-transform:uppercase; margin:0; }
.kmkh-feat-strip-head .right a { color:#fff; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.1em; padding-bottom:4px; border-bottom:2px solid var(--kmk-red); text-decoration:none; }
.kmkh-feat-strip-row { display:grid; gap:14px; grid-template-columns:1fr; }
@media (min-width:720px) { .kmkh-feat-strip-row { grid-template-columns:repeat(2,1fr); gap:20px; } }
.kmkh-feat-card { display:grid; grid-template-columns:120px 1fr; gap:16px; background:rgba(255,255,255,0.04); border:1px solid var(--kmk-line-d); border-radius:8px; padding:14px; align-items:center; transition:all .2s; color:#fff; text-decoration:none; }
@media (min-width:720px) { .kmkh-feat-card { grid-template-columns:160px 1fr; padding:16px; } }
.kmkh-feat-card:hover { background:rgba(255,255,255,0.08); transform:translateY(-2px); border-color:rgba(255,255,255,0.2); }
.kmkh-feat-card .img-wrap { aspect-ratio:1/1; background:#fff; border-radius:6px; display:flex; align-items:center; justify-content:center; padding:6px; overflow:hidden; }
.kmkh-feat-card .img-wrap img { width:100%; height:100%; object-fit:cover; border-radius:4px; }
.kmkh-feat-card .badge { display:inline-block; background:var(--kmk-red); color:#fff; font-size:10px; padding:3px 9px; border-radius:3px; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:8px; }
.kmkh-feat-card .badge.new { background:var(--kmk-yellow); color:var(--kmk-ink); }
.kmkh-feat-card h3 { font-size:14px; font-weight:800; line-height:1.3; color:#fff; margin:0 0 6px; }
.kmkh-feat-card .stars { color:#fbbc04; font-size:12px; letter-spacing:1px; margin-bottom:8px; }
.kmkh-feat-card .stars .ct { color:var(--kmk-grey-4); font-size:11px; margin-left:4px; letter-spacing:0; }
.kmkh-feat-card .price { color:var(--kmk-yellow); font-weight:800; font-size:17px; margin-bottom:10px; }
.kmkh-feat-card .price del { color:var(--kmk-grey-4); font-weight:600; font-size:13px; margin-left:6px; }
.kmkh-feat-card .price ins { text-decoration:none; }
.kmkh-feat-card .btn-buy { display:inline-block; padding:8px 14px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:0.06em; background:var(--kmk-red); color:#fff; border-radius:4px; }

/* ─── WHY KAMIKAZE — premium-justification strip ─── */
.kmkh-why { background:var(--kmk-ink); padding:64px 16px; border-top:1px solid var(--kmk-line-d); border-bottom:1px solid var(--kmk-line-d); }
@media (min-width:720px) { .kmkh-why { padding:80px 32px; } }
.kmkh-why-inner { max-width:1280px; margin:0 auto; }
.kmkh-why-head { text-align:center; margin-bottom:40px; }
.kmkh-why-head .eyebrow { color:var(--kmk-yellow); font-size:11px; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; display:inline-block; margin-bottom:10px; }
.kmkh-why-head h2 { font-size:clamp(26px, 4vw, 38px); font-weight:800; letter-spacing:-0.02em; line-height:1.1; text-transform:uppercase; color:#fff; margin:0; }
.kmkh-why-grid { display:grid; gap:20px; grid-template-columns:1fr; }
@media (min-width:720px) { .kmkh-why-grid { grid-template-columns:repeat(2, 1fr); gap:24px; } }
@media (min-width:1024px) { .kmkh-why-grid { grid-template-columns:repeat(4, 1fr); gap:24px; } }
.kmkh-why-item { background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.08); border-radius:8px; padding:24px 20px; text-align:center; transition:all .2s; }
.kmkh-why-item:hover { transform:translateY(-3px); border-color:var(--kmk-red); background:rgba(255,255,255,0.06); }
.kmkh-why-icon { width:56px; height:56px; border-radius:50%; background:rgba(227,0,0,0.12); border:1px solid rgba(227,0,0,0.3); display:flex; align-items:center; justify-content:center; color:var(--kmk-red); margin:0 auto 16px; }
.kmkh-why-icon svg { width:26px; height:26px; }
.kmkh-why-item h3 { color:#fff; font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:0.06em; margin:0 0 10px; }
.kmkh-why-item p { color:var(--kmk-grey-4); font-size:13px; line-height:1.55; margin:0; }

/* ─── SECTION HEADS + GRIDS ─── */
.kmkh-section { max-width:1440px; margin:0 auto; padding:64px 16px; }
@media (min-width:720px) { .kmkh-section { padding:88px 32px; } }
.kmkh-sec-head { display:flex; justify-content:space-between; align-items:end; gap:16px; margin-bottom:32px; flex-wrap:wrap; }
.kmkh-sec-head .left .eyebrow { color:var(--kmk-red); font-size:11px; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; margin-bottom:10px; display:inline-block; }
.kmkh-sec-head h2 { font-size:clamp(30px, 5vw, 44px); font-weight:800; letter-spacing:-0.025em; line-height:1.05; text-transform:uppercase; color:var(--kmk-ink); margin:0; }
.kmkh-sec-head .sub { color:var(--kmk-grey-3); font-size:15px; margin-top:8px; max-width:540px; line-height:1.55; }
.kmkh-sec-head .right a { font-size:12px; font-weight:700; color:var(--kmk-ink); text-transform:uppercase; letter-spacing:0.1em; padding-bottom:4px; border-bottom:2px solid var(--kmk-red); white-space:nowrap; text-decoration:none; }

/* ─── BRAND TILES ─── */
.kmkh-brand-tiles { display:grid; gap:12px; grid-template-columns:repeat(2,1fr); }
@media (min-width:720px) { .kmkh-brand-tiles { grid-template-columns:repeat(4,1fr); gap:16px; } }
.kmkh-tile { background:var(--kmk-bg-soft); border-radius:6px; overflow:hidden; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; padding:24px; transition:all .25s; position:relative; border:1px solid var(--kmk-line); text-decoration:none; }
.kmkh-tile:hover { transform:translateY(-3px); border-color:var(--kmk-ink); box-shadow:0 12px 32px rgba(0,0,0,0.10); }
.kmkh-tile img { max-width:90%; max-height:90%; object-fit:contain; transition:transform .3s; }
.kmkh-tile:hover img { transform:scale(1.05); }
.kmkh-tile .label { position:absolute; bottom:0; left:0; right:0; background:rgba(0,0,0,0.88); color:#fff; font-size:11px; font-weight:700; padding:10px 14px; text-align:center; letter-spacing:0.08em; text-transform:uppercase; transform:translateY(100%); transition:transform .25s; }
.kmkh-tile:hover .label { transform:translateY(0); }

/* ─── BY MAKE ─── */
.kmkh-by-make { background:var(--kmk-surface); border-top:1px solid var(--kmk-line); border-bottom:1px solid var(--kmk-line); }
.kmkh-by-make-inner { max-width:1440px; margin:0 auto; padding:64px 16px; }
@media (min-width:720px) { .kmkh-by-make-inner { padding:88px 32px; } }
.kmkh-makes { display:grid; gap:10px; grid-template-columns:repeat(2,1fr); }
@media (min-width:720px) { .kmkh-makes { grid-template-columns:repeat(5,1fr); gap:14px; } }
.kmkh-make { background:var(--kmk-surface); border:1px solid var(--kmk-line); border-radius:6px; padding:24px 16px; display:flex; flex-direction:column; align-items:center; gap:12px; transition:all .2s; min-height:140px; justify-content:center; text-align:center; text-decoration:none; color:var(--kmk-ink); }
.kmkh-make:hover { transform:translateY(-3px); border-color:var(--kmk-red); }
.kmkh-make .kmkh-make-logo { max-height:48px; max-width:120px; object-fit:contain; filter:brightness(0); }
.kmkh-make:hover .kmkh-make-logo { filter:brightness(0); }
.kmkh-make .ct { font-size:11px; color:var(--kmk-grey-4); font-weight:600; }

/* ─── FIND BIKE (model picker with bike thumbnails) ─── */
.kmkh-find-bike { background:var(--kmk-ink); color:#fff; }
.kmkh-find-bike-inner { max-width:1440px; margin:0 auto; padding:64px 16px; }
@media (min-width:720px) { .kmkh-find-bike-inner { padding:88px 32px; } }
.kmkh-find-bike .kmkh-sec-head h2 { color:#fff; }
.kmkh-find-bike .kmkh-sec-head .left .eyebrow { color:var(--kmk-yellow); }
.kmkh-brand-row { display:grid; gap:8px; grid-template-columns:repeat(5,1fr); margin-bottom:28px; }
@media (min-width:720px) { .kmkh-brand-row { gap:12px; } }
.kmkh-brand-btn { background:#fff; border:2px solid transparent; border-radius:8px; padding:18px 10px; color:#0b0b0b; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:0.06em; transition:all .15s; cursor:pointer; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; line-height:1.1; font-family:inherit; min-height:120px; }
@media (min-width:720px) { .kmkh-brand-btn { padding:24px 16px; gap:10px; min-height:140px; } }
.kmkh-brand-btn img { max-height:48px; max-width:95%; object-fit:contain; filter:none; transition:transform .15s; }
@media (min-width:720px) { .kmkh-brand-btn img { max-height:64px; } }
.kmkh-brand-btn .count { font-size:11px; color:var(--kmk-grey-4); font-weight:600; letter-spacing:0; text-transform:none; }
.kmkh-brand-btn:hover { transform:translateY(-3px); border-color:var(--kmk-red); box-shadow:0 8px 20px rgba(0,0,0,0.15); }
.kmkh-brand-btn.active { background:var(--kmk-red); border-color:var(--kmk-red); }
.kmkh-brand-btn.active img { filter:brightness(0) invert(1); }
.kmkh-brand-btn.active .count { color:rgba(255,255,255,0.9); }
.kmkh-bike-row { display:grid; gap:12px; grid-template-columns:repeat(2,1fr); }
@media (min-width:720px) { .kmkh-bike-row { grid-template-columns:repeat(3,1fr); gap:16px; } }
@media (min-width:1024px) { .kmkh-bike-row { grid-template-columns:repeat(4,1fr); } }
.kmkh-bike { background:#fff; border:1px solid transparent; border-radius:6px; overflow:hidden; transition:all .2s; display:block; position:relative; text-decoration:none; color:var(--kmk-ink); }
.kmkh-bike:hover { transform:translateY(-2px); box-shadow:0 12px 32px rgba(255,255,255,0.06); border-color:var(--kmk-red); }
.kmkh-bike .img-wrap { aspect-ratio:4/3; background:#fff; display:flex; align-items:center; justify-content:center; padding:16px; overflow:hidden; }
.kmkh-bike .img-wrap img { max-width:100%; max-height:100%; object-fit:contain; transition:transform .3s; }
.kmkh-bike:hover .img-wrap img { transform:scale(1.05); }
.kmkh-bike .info { padding:14px 16px; border-top:1px solid var(--kmk-line); display:flex; align-items:center; justify-content:space-between; background:#fff; color:var(--kmk-ink); }
.kmkh-bike .info .name { font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:0.02em; }
.kmkh-bike .info .count { font-size:11px; color:var(--kmk-grey-4); margin-top:2px; font-weight:600; }
.kmkh-bike .arrow { width:32px; height:32px; border-radius:50%; background:var(--kmk-bg-soft); color:var(--kmk-ink); display:flex; align-items:center; justify-content:center; font-size:14px; transition:all .2s; flex-shrink:0; }
.kmkh-bike:hover .arrow { background:var(--kmk-red); color:#fff; }

/* ─── TOP SELLERS GRID ─── */
.kmkh-product-grid { display:grid; gap:12px; grid-template-columns:repeat(2,1fr); }
@media (min-width:720px) { .kmkh-product-grid { grid-template-columns:repeat(3,1fr); gap:18px; } }
@media (min-width:1024px) { .kmkh-product-grid { grid-template-columns:repeat(4,1fr); } }
.kmkh-product { background:var(--kmk-surface); border:1px solid var(--kmk-line); border-radius:6px; overflow:hidden; transition:all .2s; display:block; position:relative; text-decoration:none; color:var(--kmk-ink); }
.kmkh-product:hover { transform:translateY(-3px); border-color:var(--kmk-ink); box-shadow:0 12px 32px rgba(0,0,0,0.08); }
.kmkh-product .pimg { aspect-ratio:1/1; background:var(--kmk-bg-soft); overflow:hidden; }
.kmkh-product .pimg img { width:100%; height:100%; object-fit:cover; transition:transform .3s; }
.kmkh-product:hover .pimg img { transform:scale(1.04); }
.kmkh-product .badge-no { position:absolute; top:12px; left:12px; background:var(--kmk-ink); color:var(--kmk-yellow); width:36px; height:36px; border-radius:4px; display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:800; }
.kmkh-product .pinfo { padding:16px; }
.kmkh-product .ptitle { font-size:13px; font-weight:600; line-height:1.4; margin-bottom:10px; min-height:2.8em; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; color:var(--kmk-ink); }
.kmkh-product .pprice { color:var(--kmk-red); font-weight:800; font-size:17px; }
.kmkh-product .pprice del { color:var(--kmk-grey-4); font-weight:600; font-size:13px; margin-left:4px; }
.kmkh-product .pprice ins { text-decoration:none; }
/* Native WC product grid wrappers — let Elessi/Nasa loop styling carry over */
.kmkh-products-wrap, .kmkh-feat-strip-wc { width:100%; }
.kmkh-products-wrap .woocommerce ul.products,
.kmkh-feat-strip-wc .woocommerce ul.products { margin:0 !important; padding:0 !important; }

/* Mobile: horizontal-scroll the product grids on home (both Top Picks + Top Sellers).
 * Reset the grid layout on Featured strip so the WC wrapper can become a scroll container. */
@media (max-width:1023px) {
  body.kmk-v8.home .kmkh-feat-strip-row { display:block !important; grid-template-columns:none !important; gap:0 !important; }
  body.kmk-v8.home .kmkh-products-wrap,
  body.kmk-v8.home .kmkh-feat-strip-wc,
  body.kmk-v8.home .kmkh-products-wrap .woocommerce,
  body.kmk-v8.home .kmkh-feat-strip-wc .woocommerce,
  body.kmk-v8.home .kmkh-products-wrap .nasa-content-page-products,
  body.kmk-v8.home .kmkh-feat-strip-wc .nasa-content-page-products { width:100% !important; max-width:100% !important; }
  body.kmk-v8.home .kmkh-products-wrap ul.products,
  body.kmk-v8.home .kmkh-feat-strip-wc ul.products {
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    gap:12px !important;
    padding:0 16px 12px !important;
    margin:0 -16px !important;
    width:auto !important;
    list-style:none;
  }
  body.kmk-v8.home .kmkh-products-wrap ul.products::-webkit-scrollbar,
  body.kmk-v8.home .kmkh-feat-strip-wc ul.products::-webkit-scrollbar { height:0; display:none; }
  body.kmk-v8.home .kmkh-products-wrap ul.products > li,
  body.kmk-v8.home .kmkh-feat-strip-wc ul.products > li {
    flex:0 0 72vw !important;
    max-width:300px !important;
    width:72vw !important;
    min-width:0 !important;
    scroll-snap-align:start !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
    clear:none !important;
  }
}

/* Featured strip on dark bg — invert WC text to white */
.kmkh-feat-strip-wc .woocommerce .products .product .price,
.kmkh-feat-strip-wc .woocommerce .products .product .woocommerce-loop-product__title,
.kmkh-feat-strip-wc .woocommerce .products .product h2,
.kmkh-feat-strip-wc .woocommerce .products .product h3 { color:#fff !important; }
.kmkh-feat-strip-wc .woocommerce .products .product .price ins { color:var(--kmk-yellow) !important; }
.kmkh-feat-strip-wc .woocommerce .products .product .price del { color:var(--kmk-grey-4) !important; }

.kmkh-cart-row { margin-top:10px; }
.kmkh-cart-row .kmkh-add-cart, .kmkh-cart-row a.button { display:block !important; width:100%; padding:9px 12px !important; font-size:11px !important; font-weight:800 !important; text-transform:uppercase !important; letter-spacing:0.06em !important; background:var(--kmk-ink) !important; color:#fff !important; border-radius:4px !important; text-align:center !important; transition:background .15s !important; border:0 !important; line-height:1.3 !important; min-height:auto !important; }
.kmkh-cart-row .kmkh-add-cart:hover, .kmkh-cart-row a.button:hover { background:var(--kmk-red) !important; color:#fff !important; }
.kmkh-cart-row .added_to_cart { display:inline-block; margin-top:6px; font-size:11px; color:var(--kmk-red); font-weight:700; text-transform:uppercase; }
.kmkh-cart-row .kmkh-add-cart.loading::after, .kmkh-cart-row a.button.loading::after { content:'…'; margin-left:6px; }
.kmkh-cart-row .kmkh-add-cart-big { padding:13px 16px !important; font-size:12px !important; }

/* REAL TRUST WIDGETS */
.kmkh-trust-real { background:var(--kmk-bg-soft); padding:48px 16px; border-top:1px solid var(--kmk-line); }
.kmkh-trust-real-inner { max-width:1280px; margin:0 auto; }
.kmkh-trust-real-head { text-align:center; margin-bottom:32px; }
.kmkh-trust-real-head .eyebrow { color:var(--kmk-red); font-size:11px; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; display:inline-block; margin-bottom:10px; }
.kmkh-trust-real-head h2 { font-size:clamp(26px, 4vw, 36px); font-weight:800; letter-spacing:-0.02em; line-height:1.1; text-transform:uppercase; color:var(--kmk-ink); margin:0; }
.kmkh-trust-real-grid { display:grid; gap:20px; grid-template-columns:1fr; align-items:start; }
@media (min-width:900px) { .kmkh-trust-real-grid { grid-template-columns:2fr 1fr; gap:24px; } }
.kmkh-trust-real-card { background:#fff; border:1px solid var(--kmk-line); border-radius:8px; padding:18px; transition:all .15s; text-decoration:none; color:var(--kmk-ink); display:block; }
.kmkh-trust-real-card:hover { transform:translateY(-2px); border-color:var(--kmk-red); }
.kmkh-trust-real-google { min-height:240px; }
.kmkh-trust-real-google .ti-widget { margin:0 !important; }
.kmkh-trust-real-scam { display:flex; align-items:center; justify-content:center; padding:24px; }
.kmkh-trust-real-scam img { max-width:240px; width:100%; height:auto; }
.kmkh-trust-fallback { display:flex; align-items:center; gap:14px; padding:20px; }
.kmkh-trust-fallback .g-icon { width:48px; height:48px; border-radius:50%; background:linear-gradient(135deg, #4285f4, #ea4335 35%, #fbbc04 65%, #34a853); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:900; font-size:22px; flex-shrink:0; }
.kmkh-trust-fallback .title { font-size:16px; font-weight:800; }
.kmkh-trust-fallback .meta { font-size:13px; color:var(--kmk-grey-4); margin-top:2px; }

/* ─── TRUST + PAYMENT ─── */
.kmkh-trust { background:var(--kmk-bg-soft); padding:48px 16px; border-top:1px solid var(--kmk-line); border-bottom:1px solid var(--kmk-line); }
.kmkh-trust-inner { max-width:1440px; margin:0 auto; }
.kmkh-trust-grid { display:grid; gap:16px; grid-template-columns:1fr; margin-bottom:32px; }
@media (min-width:720px) { .kmkh-trust-grid { grid-template-columns:repeat(3,1fr); gap:24px; } }
.kmkh-trust-card { background:#fff; border:1px solid var(--kmk-line); border-radius:6px; padding:22px; display:flex; align-items:center; gap:16px; color:var(--kmk-ink); text-decoration:none; transition:transform .2s, border-color .15s; }
.kmkh-trust-link:hover { transform:translateY(-2px); border-color:var(--kmk-red); }
.kmkh-trust-card.kmkh-trust-card-tall { padding:14px; align-items:stretch; flex-direction:column; }
.kmkh-trust-card .ico.ico-img { background:#fff; overflow:hidden; }
.kmkh-trust-card .ico.ico-img img { width:100%; height:auto; object-fit:contain; }
.kmkh-trust-card .ico { width:52px; height:52px; border-radius:50%; background:var(--kmk-bg-soft); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:22px; line-height:1.1; text-align:center; }
.kmkh-trust-card .ico.uae { background:#000; color:var(--kmk-yellow); font-weight:800; font-size:12px; }
.kmkh-trust-card .body .title { font-size:14px; font-weight:800; color:var(--kmk-ink); text-transform:uppercase; letter-spacing:0.04em; line-height:1.2; }
.kmkh-trust-card .body .meta { font-size:12px; color:var(--kmk-grey-3); margin-top:4px; }
.kmkh-trust-card .stars { color:#fbbc04; font-size:14px; letter-spacing:1px; }
.kmkh-trust-card .ar-line { font-size:12px; color:var(--kmk-grey-3); margin-top:2px; font-family:'Noto Kufi Arabic',system-ui,sans-serif; direction:rtl; }
.kmkh-pay-row { padding-top:24px; border-top:1px solid var(--kmk-line); text-align:center; }
.kmkh-pay-row .lbl { font-size:11px; color:var(--kmk-grey-4); text-transform:uppercase; letter-spacing:0.1em; font-weight:700; display:block; margin-bottom:12px; }
.kmkh-pay-img { max-width:100%; height:auto; max-height:60px; width:auto; display:inline-block; }

/* ─── PARTNERS (Shop by Brand) ─── */
.kmkh-partners { display:grid; gap:10px; grid-template-columns:repeat(2,1fr); }
@media (min-width:720px) { .kmkh-partners { grid-template-columns:repeat(3,1fr); gap:14px; } }
@media (min-width:1024px) { .kmkh-partners { grid-template-columns:repeat(6,1fr); } }
.kmkh-partner { background:#fff; border:1px solid var(--kmk-line); border-radius:6px; padding:14px 10px 12px; text-align:center; transition:all .2s; min-height:140px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; text-decoration:none; }
.kmkh-partner:hover { transform:translateY(-3px); border-color:var(--kmk-red); box-shadow:0 8px 20px rgba(0,0,0,0.06); }
.kmkh-partner-img { width:100%; aspect-ratio:5/3; display:flex; align-items:center; justify-content:center; padding:4px; overflow:hidden; }
.kmkh-partner-img img { max-width:100%; max-height:100%; object-fit:contain; transition:transform .25s; }
.kmkh-partner:hover .kmkh-partner-img img { transform:scale(1.05); }
.kmkh-partner .pname { font-size:12px; font-weight:800; color:var(--kmk-ink); text-transform:uppercase; letter-spacing:0.04em; line-height:1.2; }
.kmkh-partner .pcount { font-size:10px; color:var(--kmk-grey-4); font-weight:600; }

/* ─── EDITORIAL / ABOUT ─── */
.kmkh-editorial { background:var(--kmk-ink); color:#fff; position:relative; overflow:hidden; }
.kmkh-editorial-img { width:100%; aspect-ratio:21/9; min-height:380px; background:url('/wp-content/uploads/2025/09/P1121046.jpg') center/cover no-repeat; position:relative; }
.kmkh-editorial-img::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.55) 50%, rgba(0,0,0,0.2) 100%); }
@media (max-width:720px) {
  .kmkh-editorial-img { min-height:320px; }
  .kmkh-editorial-img::after { background:linear-gradient(180deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.6) 50%, rgba(0,0,0,0.92) 100%) !important; }
  .kmkh-editorial-text { padding:28px 20px !important; max-width:100% !important; top:auto !important; bottom:0 !important; transform:none !important; }
}
.kmkh-editorial-text { position:absolute; left:0; top:50%; transform:translateY(-50%); z-index:2; padding:24px; max-width:600px; }
@media (min-width:720px) { .kmkh-editorial-text { padding:48px 64px; } }
.kmkh-editorial-eyebrow { color:var(--kmk-yellow); font-size:11px; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; margin-bottom:14px; }
.kmkh-editorial h2 { font-size:clamp(28px, 5vw, 48px); font-weight:800; letter-spacing:-0.02em; line-height:1.05; margin-bottom:16px; text-transform:uppercase; color:#fff; }
.kmkh-editorial p { color:var(--kmk-grey-5); font-size:15px; line-height:1.6; margin-bottom:22px; max-width:480px; }
.kmkh-btn-primary { display:inline-block; padding:15px 28px; background:var(--kmk-red); color:#fff; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; font-size:13px; border-radius:4px; text-decoration:none; transition:background .15s; }
.kmkh-btn-primary:hover { background:var(--kmk-red-d); }

/* ─── V8 v2: SVG icon fallback for tiles without a term thumbnail ─── */
.kmkh-tile-icon {
    display:flex; align-items:center; justify-content:center;
    width:100%; height:100%;
    background:linear-gradient(135deg, rgba(11,11,11,0.04) 0%, rgba(220,38,38,0.06) 100%);
    border-radius:4px;
    color:var(--kmk-ink);
}
.kmkh-tile-icon svg { width:55%; height:55%; opacity:0.78; }
.kmkh-tile:hover .kmkh-tile-icon { color:var(--kmk-red); }
.kmkh-tile:hover .kmkh-tile-icon svg { opacity:1; transform:scale(1.05); transition:transform .3s; }

/* Part-type tiles get the icon-bg treatment by default — even smaller padding so the icon fills more */
.kmkh-tile-part { padding:18px; background:var(--kmk-bg-soft); }

/* ─── V8 v2: Shop-by-Chassis grouped layout ─── */
.kmkh-chassis-group { margin-bottom:36px; }
.kmkh-chassis-group:last-child { margin-bottom:0; }
.kmkh-chassis-group-head {
    display:flex; align-items:baseline; justify-content:space-between; gap:16px;
    padding:0 0 14px 0;
    margin-bottom:14px;
    border-bottom:1px solid var(--kmk-line);
}
.kmkh-chassis-group-head h3 {
    margin:0;
    font-size:18px; font-weight:800; letter-spacing:0.06em;
    text-transform:uppercase; color:var(--kmk-ink);
    display:flex; align-items:baseline; gap:10px;
}
.kmkh-chassis-group-head h3::before {
    content:""; display:inline-block;
    width:24px; height:3px; background:var(--kmk-red); border-radius:2px;
    margin-right:8px; vertical-align:middle;
}
.kmkh-chassis-group-all {
    font-size:11px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase;
    color:var(--kmk-grey-3); text-decoration:none;
    padding-bottom:2px; border-bottom:1px solid transparent; transition:all .2s;
    white-space:nowrap;
}
.kmkh-chassis-group-all:hover { color:var(--kmk-red); border-bottom-color:var(--kmk-red); }

/* Mobile compaction */
@media (max-width: 700px) {
    .kmkh-chassis-group-head { flex-wrap:wrap; gap:8px; }
    .kmkh-chassis-group-head h3 { font-size:16px; }
}

/* ─── V8 v3: Real-product-photo tiles for "Shop by Part" ─── */
.kmkh-tile-photo { padding:0; background:#fff; }
.kmkh-tile-photo img {
    width:100%; height:100%;
    max-width:none; max-height:none;
    object-fit:cover;
    display:block;
}
.kmkh-tile-photo .label {
    position:absolute; left:0; right:0; bottom:0;
    padding:24px 16px 12px 16px;
    color:#fff; font-weight:700; font-size:14px; letter-spacing:0.02em;
    text-transform:uppercase;
    background:linear-gradient(0deg, rgba(11,11,11,0.92) 0%, rgba(11,11,11,0.62) 60%, rgba(11,11,11,0) 100%);
    text-shadow:0 1px 2px rgba(0,0,0,0.4);
    pointer-events:none;
}
.kmkh-tile-photo:hover img { transform:scale(1.06); transition:transform .35s ease-out; }
