
  :root{
    /* brand colors — constant across themes */
    --maroon:#5c0003;
    --red-mid:#b8000a;
    --red:#e3000c;
    --red-bright:#f8000a;
    --on-red:#0a0a0a;
    /* media tiles (product/photo/thumbnail slots) stay fixed dark in both themes */
    --media-1:#141414;
    --media-2:#1c1c1c;
    --media-3:#242424;
    --media-ink:#8f887e;
    --font-display:'Oswald',sans-serif;
    --font-body:'Inter',sans-serif;
    --font-mono:'JetBrains Mono',monospace;

    /* ===== LIGHT THEME (default) ===== */
    --bg-0:#eeeae2;
    --bg-1:#f9f7f3;
    --bg-2:#fbfaf7;
    --bg-3:#ffffff;
    --text-1:#171310;
    --text-2:#5c554b;
    --text-3:#8c8377;
    --line:rgba(23,19,16,0.10);
    --line-strong:rgba(23,19,16,0.18);
    --nav-bg:rgba(238,234,226,0.78);
    --nav-bg-scrolled:rgba(238,234,226,0.94);
    --shadow:0 30px 80px -20px rgba(23,19,16,0.18);
    --hero-glow-1:rgba(227,0,12,0.10);
    --hero-glow-2:rgba(92,0,3,0.12);
    --success:#1e8a4c;
    --max-w:1680px;
    --gutter:clamp(24px, 6vw, 80px);
  }
  html[data-theme="dark"]{
    --bg-0:#0a0a0a;
    --bg-1:#141414;
    --bg-2:#1c1c1c;
    --bg-3:#242424;
    --text-1:#f3efe9;
    --text-2:#a29a92;
    --text-3:#726b64;
    --line:rgba(243,239,233,0.09);
    --line-strong:rgba(243,239,233,0.16);
    --nav-bg:rgba(10,10,10,0.72);
    --nav-bg-scrolled:rgba(10,10,10,0.92);
    --shadow:0 30px 80px -20px rgba(0,0,0,0.7);
    --hero-glow-1:rgba(227,0,12,0.16);
    --hero-glow-2:rgba(92,0,3,0.35);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg-0);
    color:var(--text-1);
    font-family:var(--font-body);
    line-height:1.5;
    overflow-x:hidden;
    transition:background-color .35s ease, color .35s ease;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
  .eyebrow{
    font-family:var(--font-mono);
    font-size:11px;
    letter-spacing:0.18em;
    text-transform:uppercase;
    color:var(--red);
    display:flex;
    align-items:center;
    gap:10px;
  }
  .eyebrow::before{
    content:'';
    width:16px;height:1px;
    background:var(--red);
    display:inline-block;
  }
  .section{
    max-width:var(--max-w);
    margin:0 auto;
    padding:96px var(--gutter);
    position:relative;
  }
  .section-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:24px;
    margin-bottom:44px;
    flex-wrap:wrap;
  }
  .section-title{
    font-family:var(--font-display);
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:0.01em;
    font-size:clamp(28px,3.4vw,44px);
    margin-top:8px;
  }
  .section-sub{
    color:var(--text-2);
    font-size:15px;
    max-width:480px;
    margin-top:8px;
  }
  .lane-divider{
    height:1px;
    width:100%;
    background-image:repeating-linear-gradient(90deg,var(--red) 0px,var(--red) 22px,transparent 22px,transparent 44px);
    opacity:0.35;
    background-position:0 0;
    animation:lane-move 5s linear infinite;
  }
  @keyframes lane-move{
    to{background-position:-176px 0;}
  }
  .btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-family:var(--font-mono);
    font-size:12.5px;
    letter-spacing:0.06em;
    text-transform:uppercase;
    padding:14px 26px;
    border-radius:999px;
    transition:all .25s ease;
    white-space:nowrap;
  }
  .btn-primary{
    background:var(--red);
    color:#0a0a0a;
    font-weight:600;
  }
  .btn-primary:hover{background:var(--red-bright);transform:translateY(-1px);box-shadow:0 8px 24px rgba(227,0,12,0.35);}
  .btn-ghost{
    border:1px solid var(--line-strong);
    color:var(--text-1);
  }
  .btn-ghost:hover{border-color:var(--red);color:var(--red);}

  /* ===== NAV ===== */
  .nav{
    position:fixed;
    top:0;left:0;right:0;
    z-index:100;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:16px 6vw;
    background:var(--nav-bg);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid transparent;
    transition:border-color .3s ease, background .3s ease;
  }
  .nav-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    max-width:var(--max-w);
    margin:0 auto;
    padding:16px 0;
  }
  .nav.scrolled{
    border-bottom:1px solid var(--line);
    background:var(--nav-bg-scrolled);
  }
  .nav-logo img{height:30px;width:auto;}
  .logo-dark{display:none;}
  html[data-theme="dark"] .logo-light{display:none;}
  html[data-theme="dark"] .logo-dark{display:block;}
  .nav-links{
    display:flex;
    align-items:center;
    gap:36px;
    font-family:var(--font-mono);
    font-size:12px;
    letter-spacing:0.06em;
    text-transform:uppercase;
  }
  .nav-links a{
    position:relative;
    padding:6px 0;
    color:var(--text-2);
    transition:color .2s ease;
  }
  .nav-links a:hover{color:var(--text-1);}
  .nav-links a::after{
    content:'';
    position:absolute;left:0;bottom:0;
    width:0;height:1px;background:var(--red);
    transition:width .25s ease;
  }
  .nav-links a:hover::after{width:100%;}
  .nav-actions{display:flex;align-items:center;gap:18px;}
  .icon-btn{
    width:38px;height:38px;
    display:flex;align-items:center;justify-content:center;
    border:1px solid var(--line-strong);
    border-radius:50%;
    transition:border-color .2s ease, color .2s ease;
  }
  .icon-btn:hover{border-color:var(--red);color:var(--red);}
  .cart-count{
    position:absolute;
    top:-4px;right:-4px;
    background:var(--red);
    color:#0a0a0a;
    font-family:var(--font-mono);
    font-size:9px;
    font-weight:700;
    width:16px;height:16px;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
  }
  .cart-wrap{position:relative;}
  .theme-toggle .icon-moon{display:none;}
  .theme-toggle .icon-sun{display:block;}
  html[data-theme="dark"] .theme-toggle .icon-sun{display:none;}
  html[data-theme="dark"] .theme-toggle .icon-moon{display:block;}
  .nav-burger{display:none;}

  /* ===== HERO ===== */
  .hero{
    min-height:100vh;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:140px 6vw 80px;
    position:relative;
    background:
      radial-gradient(ellipse 900px 500px at 82% 8%, var(--hero-glow-1), transparent 60%),
      radial-gradient(ellipse 700px 500px at 10% 95%, var(--hero-glow-2), transparent 60%),
      var(--bg-0);
    overflow:hidden;
  }
  .hero-grid-lines{
    position:absolute;inset:0;
    background-image:
      linear-gradient(var(--line) 1px, transparent 1px),
      linear-gradient(90deg, var(--line) 1px, transparent 1px);
    background-size:64px 64px;
    mask-image:radial-gradient(ellipse 900px 600px at 70% 20%, black, transparent 75%);
    opacity:0.5;
    pointer-events:none;
  }
  .hero-moto{
    position:absolute;
    right:-2vw;
    top:12%;
    width:min(46vw,620px);
    opacity:0.9;
    pointer-events:none;
  }
  .hero-content{
    position:relative;
    z-index:2;
    max-width:760px;
  }
  .hero-title{
    font-family:var(--font-display);
    font-weight:700;
    text-transform:uppercase;
    font-size:clamp(40px,6.6vw,84px);
    line-height:0.98;
    letter-spacing:0.005em;
    margin:22px 0 20px;
  }
  .hero-title .accent{color:var(--red);}
  .hero-desc{
    font-size:17px;
    color:var(--text-2);
    max-width:520px;
    margin-bottom:44px;
  }

  /* ===== SEARCH CONSOLE (signature element) ===== */
  .console{
    background:linear-gradient(180deg, var(--bg-2), var(--bg-1));
    border:1px solid var(--line-strong);
    border-radius:20px;
    padding:10px;
    max-width:720px;
    box-shadow:var(--shadow);
    position:relative;
  }
  .console-tabs{
    display:flex;
    gap:4px;
    padding:6px;
  }
  .console-tab{
    flex:1;
    font-family:var(--font-mono);
    font-size:11.5px;
    letter-spacing:0.05em;
    text-transform:uppercase;
    text-align:center;
    padding:11px 10px;
    border-radius:12px;
    color:var(--text-3);
    transition:all .2s ease;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
  }
  .console-tab .dot{width:5px;height:5px;border-radius:50%;background:var(--text-3);transition:background .2s;}
  .console-tab.active{
    background:var(--bg-3);
    color:var(--text-1);
  }
  .console-tab.active .dot{background:var(--red-bright);box-shadow:0 0 8px var(--red-bright);}
  .console-tab:hover:not(.active){color:var(--text-2);}
  .console-body{padding:6px 6px 12px;}
  .search-row{
    display:flex;
    align-items:center;
    gap:10px;
    background:var(--bg-0);
    border:1px solid var(--line-strong);
    border-radius:14px;
    padding:6px 8px 6px 20px;
    transition:border-color .25s ease, box-shadow .25s ease;
  }
  .search-row:focus-within{
    border-color:var(--red);
    box-shadow:0 0 0 4px rgba(227,0,12,0.14);
  }
  .search-row svg{flex-shrink:0;color:var(--text-3);}
  .search-row input, .search-row select{
    flex:1;
    background:none;
    border:none;
    outline:none;
    color:var(--text-1);
    font-family:var(--font-body);
    font-size:15px;
    padding:12px 0;
    min-width:0;
  }
  .search-row input::placeholder{color:var(--text-3);}
  .moto-selects{display:none;flex:1;gap:8px;}
  .moto-selects.show{display:flex;}
  .search-row.mode-products .field-products{display:flex;}
  .search-row select{appearance:none;-webkit-appearance:none;cursor:pointer;}
  .search-submit{
    flex-shrink:0;
    width:44px;height:44px;
    border-radius:11px;
    background:var(--red);
    color:#0a0a0a;
    display:flex;align-items:center;justify-content:center;
    transition:background .2s ease, transform .2s ease;
  }
  .search-submit:hover{background:var(--red-bright);transform:scale(1.04);}
  .console-lane{
    height:2px;
    margin-top:10px;
    border-radius:2px;
    overflow:hidden;
    background-image:repeating-linear-gradient(90deg,var(--red) 0,var(--red) 14px,transparent 14px,transparent 30px);
    animation:lane-move 2.4s linear infinite;
    opacity:0.7;
  }
  .console-hint{
    font-family:var(--font-mono);
    font-size:11px;
    color:var(--text-3);
    padding:12px 14px 2px;
    display:flex;
    gap:18px;
    flex-wrap:wrap;
  }
  .console-hint b{color:var(--text-2);font-weight:500;}

  .hero-stats{
    display:flex;
    gap:40px;
    margin-top:56px;
    flex-wrap:wrap;
  }
  .hero-stat b{
    font-family:var(--font-display);
    font-size:30px;
    display:block;
    color:var(--text-1);
  }
  .hero-stat span{
    font-family:var(--font-mono);
    font-size:11px;
    letter-spacing:0.05em;
    text-transform:uppercase;
    color:var(--text-3);
  }

  /* ===== BRAND STRIP ===== */
  .brand-strip{
    padding:64px 6vw;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
  }
  .brand-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
  }
  .brand-card{
    background:var(--bg-0);
    padding:30px 18px;
    text-align:center;
    transition:background .25s ease;
    cursor:pointer;
  }
  .brand-card:hover{background:var(--bg-1);}
  .brand-card .bname{
    font-family:var(--font-display);
    font-size:19px;
    text-transform:uppercase;
    letter-spacing:0.02em;
    color:var(--text-2);
    transition:color .25s ease;
  }
  .brand-card:hover .bname{color:var(--red-bright);}
  .brand-card .bcount{
    font-family:var(--font-mono);
    font-size:10px;
    color:var(--text-3);
    margin-top:6px;
    display:block;
  }

  /* ===== CATEGORY GRID ===== */
  .cat-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:14px;
  }
  .cat-card{
    background:var(--bg-1);
    border:1px solid var(--line);
    border-radius:16px;
    padding:26px 18px;
    display:flex;
    flex-direction:column;
    gap:20px;
    transition:border-color .25s ease, transform .25s ease, background .25s ease;
  }
  .cat-card:hover{
    border-color:var(--red);
    background:var(--bg-2);
    transform:translateY(-4px);
  }
  .cat-card svg{color:var(--red);width:28px;height:28px;}
  .cat-card .cname{
    font-family:var(--font-display);
    font-size:16px;
    text-transform:uppercase;
    letter-spacing:0.01em;
  }
  .cat-card .ccount{
    font-family:var(--font-mono);
    font-size:10.5px;
    color:var(--text-3);
    margin-top:-14px;
  }

  /* ===== COLLECTIONS ===== */
  .coll-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
  }
  .coll-card{
    position:relative;
    border-radius:18px;
    overflow:hidden;
    aspect-ratio:4/5;
    border:1px solid var(--line);
    isolation:isolate;
  }
  .coll-card .coll-bg{
    position:absolute;inset:0;
    background-size:cover;
    transition:transform .6s ease;
  }
  .coll-card:hover .coll-bg{transform:scale(1.08);}
  .coll-card .coll-fade{
    position:absolute;inset:0;
    background:linear-gradient(180deg, rgba(10,10,10,0.1) 20%, rgba(10,10,10,0.95) 92%);
  }
  .coll-card .coll-text{
    position:absolute;left:0;right:0;bottom:0;
    padding:22px;
  }
  .coll-card .ceyebrow{
    font-family:var(--font-mono);
    font-size:10px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--red-bright);
    margin-bottom:6px;
    display:block;
  }
  .coll-card h3{
    font-family:var(--font-display);
    font-size:22px;
    text-transform:uppercase;
  }
  .coll-card p{
    font-size:12.5px;
    color:var(--text-2);
    margin-top:6px;
  }

  /* ===== PRODUCT SLIDER / GRID ===== */
  .pcard{
    background:var(--bg-1);
    border:1px solid var(--line);
    border-radius:16px;
    overflow:hidden;
    flex-shrink:0;
    width:260px;
    transition:border-color .25s ease, transform .25s ease;
  }
  .pcard:hover{border-color:var(--line-strong);transform:translateY(-4px);}
  .pcard-img{
    aspect-ratio:1/1;
    background:linear-gradient(150deg,var(--media-3),var(--media-1) 60%);
    display:flex;align-items:center;justify-content:center;
    position:relative;
  }
  .pcard-img svg{width:56%;height:56%;color:var(--media-ink);opacity:0.55;}
  .fit-badge{
    position:absolute;top:10px;left:10px;
    background:rgba(227,0,12,0.14);
    border:1px solid rgba(227,0,12,0.4);
    color:var(--red-bright);
    font-family:var(--font-mono);
    font-size:9.5px;
    letter-spacing:0.03em;
    text-transform:uppercase;
    padding:5px 9px;
    border-radius:999px;
  }
  .pcard-body{padding:16px 16px 18px;}
  .pcard-brand{
    font-family:var(--font-mono);
    font-size:10px;
    letter-spacing:0.05em;
    text-transform:uppercase;
    color:var(--text-3);
    margin-bottom:6px;
  }
  .pcard-name{font-size:14.5px;font-weight:600;margin-bottom:8px;}
  .pcard-rating{
    display:flex;align-items:center;gap:6px;
    font-family:var(--font-mono);
    font-size:11px;
    color:var(--text-2);
    margin-bottom:12px;
  }
  .pcard-rating .stars{color:var(--red-bright);letter-spacing:1px;}
  .pcard-footer{
    display:flex;align-items:center;justify-content:space-between;
  }
  .pcard-price{font-family:var(--font-mono);font-size:15px;font-weight:600;}
  .pcard-price .old{
    color:var(--text-3);
    text-decoration:line-through;
    font-weight:400;
    font-size:11.5px;
    margin-left:6px;
  }
  .quick-add{
    width:34px;height:34px;
    border-radius:9px;
    background:var(--bg-3);
    border:1px solid var(--line-strong);
    display:flex;align-items:center;justify-content:center;
    transition:all .2s ease;
  }
  .quick-add:hover{background:var(--red);border-color:var(--red);color:#0a0a0a;}

  .slider-row{
    display:flex;
    gap:18px;
    overflow-x:auto;
    padding-bottom:14px;
    scroll-snap-type:x proximity;
    -ms-overflow-style:none;
    scrollbar-width:none;
  }
  .slider-row::-webkit-scrollbar{display:none;}
  .slider-row .pcard{scroll-snap-align:start;}
  .slider-controls{display:flex;gap:8px;}
  .slider-controls .icon-btn{width:40px;height:40px;}

  .grid-4{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
  }

  /* ===== SHOP BY BIKE ===== */
  .bike-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:14px;
  }
  .bike-card{
    background:var(--bg-1);
    border:1px solid var(--line);
    border-radius:16px;
    padding:20px 14px 16px;
    text-align:center;
    transition:border-color .25s ease, transform .25s ease;
  }
  .bike-card:hover{border-color:var(--red);transform:translateY(-4px);}
  .bike-card svg{width:100%;height:44px;color:var(--text-2);margin-bottom:14px;}
  .bike-card .bmk{font-family:var(--font-mono);font-size:9.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:0.05em;}
  .bike-card .bmodel{font-family:var(--font-display);font-size:14.5px;text-transform:uppercase;margin-top:3px;}

  /* ===== WHY US ===== */
  .why-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
  }
  .why-card{
    background:var(--bg-0);
    padding:34px 18px;
    text-align:center;
  }
  .why-card svg{width:26px;height:26px;color:var(--red);margin:0 auto 16px;}
  .why-card h4{font-family:var(--font-display);font-size:13.5px;text-transform:uppercase;letter-spacing:0.02em;margin-bottom:6px;}
  .why-card p{font-size:11.5px;color:var(--text-3);}

  /* ===== PREMIUM BRAND WALL ===== */
  .pbrand-wall{
    display:flex;
    flex-wrap:wrap;
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
  }
  .pbrand-item{
    flex:1 1 150px;
    background:var(--bg-0);
    padding:28px 10px;
    text-align:center;
    font-family:var(--font-display);
    font-size:17px;
    text-transform:uppercase;
    letter-spacing:0.03em;
    color:var(--text-3);
    transition:color .2s ease, background .2s ease;
  }
  .pbrand-item:hover{color:var(--red-bright);background:var(--bg-1);}

  /* ===== RIDING ESSENTIALS BANNERS ===== */
  .essential-banner{
    display:grid;
    grid-template-columns:1fr 1fr;
    border:1px solid var(--line);
    border-radius:18px;
    overflow:hidden;
    margin-bottom:16px;
    min-height:260px;
  }
  .essential-banner.rev{grid-template-columns:1fr 1fr;}
  .essential-banner.rev .eb-visual{order:2;}
  .eb-visual{
    position:relative;
    background:linear-gradient(150deg,var(--media-3),var(--media-1));
    display:flex;align-items:center;justify-content:center;
    overflow:hidden;
  }
  .eb-visual svg{width:52%;opacity:0.85;}
  .eb-visual::after{
    content:'';position:absolute;inset:0;
    background:radial-gradient(circle at 70% 30%, rgba(227,0,12,0.18), transparent 60%);
  }
  .eb-text{
    padding:44px 44px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:14px;
  }
  .eb-text h3{
    font-family:var(--font-display);
    font-size:clamp(22px,2.4vw,32px);
    text-transform:uppercase;
  }
  .eb-text p{color:var(--text-2);font-size:14px;max-width:340px;}

  /* ===== COMMUNITY ===== */
  .community-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:12px;
  }
  .comm-tile{
    aspect-ratio:1/1;
    border-radius:14px;
    background:linear-gradient(150deg,var(--media-3),var(--media-1));
    position:relative;
    overflow:hidden;
    border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;
  }
  .comm-tile svg{width:34%;color:var(--media-ink);opacity:0.6;}
  .comm-tile .comm-tag{
    position:absolute;bottom:10px;left:10px;
    font-family:var(--font-mono);
    font-size:9.5px;
    color:#d8d2c8;
    background:rgba(10,10,10,0.6);
    padding:4px 8px;
    border-radius:999px;
  }

  /* ===== REVIEWS ===== */
  .review-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
  }
  .review-card{
    background:var(--bg-1);
    border:1px solid var(--line);
    border-radius:16px;
    padding:28px;
  }
  .review-card .stars{color:var(--red-bright);letter-spacing:2px;font-size:13px;margin-bottom:16px;display:block;}
  .review-card p{font-size:14.5px;color:var(--text-1);margin-bottom:20px;}
  .review-author{display:flex;align-items:center;gap:12px;}
  .review-avatar{
    width:38px;height:38px;border-radius:50%;
    background:linear-gradient(140deg,var(--maroon),var(--red));
    display:flex;align-items:center;justify-content:center;
    font-family:var(--font-display);font-size:14px;
  }
  .review-author b{font-size:13px;display:block;}
  .review-author span{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);}

  /* ===== BLOG ===== */
  .blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
  .blog-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:border-color .25s ease, transform .25s ease;}
  .blog-card:hover{border-color:var(--line-strong);transform:translateY(-4px);}
  .blog-thumb{
    aspect-ratio:16/10;
    background:linear-gradient(160deg,var(--media-3),var(--media-1));
    display:flex;align-items:center;justify-content:center;
  }
  .blog-thumb svg{width:30%;color:var(--media-ink);opacity:0.6;}
  .blog-body{padding:20px;background:var(--bg-1);}
  .blog-tag{font-family:var(--font-mono);font-size:10px;color:var(--red);text-transform:uppercase;letter-spacing:0.05em;}
  .blog-body h4{font-family:var(--font-display);font-size:17px;text-transform:uppercase;margin:10px 0 8px;line-height:1.2;}
  .blog-body p{font-size:12.5px;color:var(--text-3);}

  /* ===== NEWSLETTER ===== */
  .newsletter{
    background:linear-gradient(135deg, var(--maroon), #0a0a0a 60%);
    border-radius:22px;
    margin:0;
    padding:64px clamp(24px, 6vw, 72px);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    flex-wrap:wrap;
    border:1px solid var(--line-strong);
  }
  .newsletter h2{
    font-family:var(--font-display);
    font-size:clamp(24px,3vw,36px);
    text-transform:uppercase;
    max-width:420px;
    color:#f3efe9;
  }
  .newsletter p{color:#c9c0b6;margin-top:10px;font-size:14px;}
  .news-form{
    display:flex;
    gap:10px;
    background:rgba(10,10,10,0.5);
    border:1px solid rgba(243,239,233,0.16);
    padding:6px;
    border-radius:999px;
    min-width:360px;
  }
  .news-form input{
    flex:1;background:none;border:none;outline:none;
    color:#f3efe9;padding:12px 18px;font-family:var(--font-body);font-size:14px;
  }
  .news-form input::placeholder{color:#726b64;}

  /* ===== FOOTER ===== */
  footer{max-width:var(--max-w);margin:0 auto;padding:80px var(--gutter) 30px;}
  .footer-top{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;
    gap:30px;
    padding-bottom:50px;
    border-bottom:1px solid var(--line);
  }
  .footer-logo img{height:26px;margin-bottom:16px;}
  .footer-top p{color:var(--text-3);font-size:13px;max-width:260px;}
  .footer-col h5{
    font-family:var(--font-mono);
    font-size:11px;
    letter-spacing:0.06em;
    text-transform:uppercase;
    color:var(--text-3);
    margin-bottom:18px;
  }
  .footer-col a{
    display:block;
    font-size:13.5px;
    color:var(--text-2);
    margin-bottom:12px;
    transition:color .2s ease;
  }
  .footer-col a:hover{color:var(--red-bright);}
  .footer-bottom{
    display:flex;justify-content:space-between;align-items:center;
    padding-top:26px;
    font-family:var(--font-mono);
    font-size:11px;
    color:var(--text-3);
    flex-wrap:wrap;
    gap:12px;
  }
  .footer-socials{display:flex;gap:12px;}

  ::selection{background:var(--red);color:#0a0a0a;}
  :focus-visible{outline:2px solid var(--red-bright);outline-offset:2px;}

  @media (max-width:1100px){
    .cat-grid{grid-template-columns:repeat(3,1fr);}
    .coll-grid{grid-template-columns:repeat(2,1fr);}
    .grid-4{grid-template-columns:repeat(2,1fr);}
    .bike-grid{grid-template-columns:repeat(3,1fr);}
    .why-grid{grid-template-columns:repeat(3,1fr);}
    .review-grid,.blog-grid{grid-template-columns:repeat(1,1fr);}
    .footer-top{grid-template-columns:1fr 1fr;}
    .community-grid{grid-template-columns:repeat(3,1fr);}
  }
  @media (max-width:760px){
    .nav-links{display:none;}
    .section{padding:64px 6vw;}
    .hero{padding-top:120px;}
    .hero-moto{display:none;}
    .cat-grid{grid-template-columns:repeat(2,1fr);}
    .coll-grid{grid-template-columns:1fr;}
    .grid-4{grid-template-columns:1fr;}
    .bike-grid{grid-template-columns:repeat(2,1fr);}
    .why-grid{grid-template-columns:repeat(2,1fr);}
    .essential-banner,.essential-banner.rev{grid-template-columns:1fr;}
    .essential-banner.rev .eb-visual{order:0;}
    .eb-visual{min-height:180px;}
    .community-grid{grid-template-columns:repeat(2,1fr);}
    .newsletter{flex-direction:column;align-items:flex-start;padding:44px 7vw;}
    .news-form{min-width:100%;}
    .console-tab span.label{display:none;}
    .footer-top{grid-template-columns:1fr;}
  }
  @media (prefers-reduced-motion: reduce){
    .lane-divider,.console-lane{animation:none;}
    html{scroll-behavior:auto;}
  }

  /* ===================== PRODUCT PAGE ===================== */
  .breadcrumb{
    display:flex;align-items:center;gap:8px;flex-wrap:wrap;
    font-family:var(--font-mono);
    font-size:11.5px;
    letter-spacing:0.03em;
    color:var(--text-3);
    padding:120px 6vw 0;
  }
  .breadcrumb a{color:var(--text-3);transition:color .2s ease;}
  .breadcrumb a:hover{color:var(--red);}
  .breadcrumb .sep{opacity:0.5;}
  .breadcrumb .current{color:var(--text-2);}

  .product-hero{
    display:grid;
    grid-template-columns:1.05fr 1fr;
    gap:56px;
    padding:32px 6vw 96px;
    align-items:flex-start;
  }

  /* Gallery */
  .gallery{position:sticky;top:100px;}
  .gallery-main{
    position:relative;
    aspect-ratio:1/1;
    border-radius:18px;
    background:linear-gradient(150deg,var(--media-3),var(--media-1) 65%);
    border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;
    overflow:hidden;
  }
  .gallery-main svg{width:42%;height:42%;color:var(--media-ink);opacity:0.6;}
  .gallery-main .fit-badge{position:absolute;top:16px;left:16px;}
  .gallery-badge-sale{
    position:absolute;top:16px;right:16px;
    background:var(--red);color:var(--on-red);
    font-family:var(--font-mono);font-size:11px;font-weight:600;
    padding:6px 12px;border-radius:999px;text-transform:uppercase;letter-spacing:0.04em;
  }
  .gallery-zoom{
    position:absolute;bottom:16px;right:16px;
    width:38px;height:38px;border-radius:50%;
    background:var(--bg-3);border:1px solid var(--line-strong);
    display:flex;align-items:center;justify-content:center;color:var(--text-2);
  }
  .gallery-thumbs{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:10px;
    margin-top:12px;
  }
  .thumb{
    aspect-ratio:1/1;
    border-radius:10px;
    background:linear-gradient(150deg,var(--media-3),var(--media-1) 65%);
    border:1.5px solid var(--line);
    display:flex;align-items:center;justify-content:center;
    transition:border-color .2s ease;
  }
  .thumb svg{width:44%;color:var(--media-ink);opacity:0.6;}
  .thumb.active{border-color:var(--red);}

  /* Buy box */
  .buy-box{display:flex;flex-direction:column;gap:18px;}
  .buy-brand{display:flex;align-items:center;justify-content:space-between;}
  .buy-brand a{
    font-family:var(--font-mono);font-size:11.5px;letter-spacing:0.06em;text-transform:uppercase;
    color:var(--red);
  }
  .buy-sku{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);}
  .buy-title{
    font-family:var(--font-display);
    font-weight:600;
    text-transform:uppercase;
    font-size:clamp(26px,2.6vw,38px);
    line-height:1.05;
  }
  .buy-rating{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:12.5px;color:var(--text-2);}
  .buy-rating .stars{color:var(--red-bright);letter-spacing:2px;}
  .buy-rating a{color:var(--text-2);text-decoration:underline;text-underline-offset:3px;}
  .buy-price-row{display:flex;align-items:baseline;gap:12px;padding:6px 0 2px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:18px;padding-bottom:18px;}
  .buy-price{font-family:var(--font-mono);font-size:32px;font-weight:600;}
  .buy-price-old{font-family:var(--font-mono);font-size:16px;color:var(--text-3);text-decoration:line-through;}
  .buy-discount{
    font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;
    color:var(--red-bright);background:rgba(227,0,12,0.12);border:1px solid rgba(227,0,12,0.35);
    padding:4px 9px;border-radius:999px;
  }
  .buy-desc{color:var(--text-2);font-size:14.5px;line-height:1.65;}

  .option-group{display:flex;flex-direction:column;gap:10px;}
  .option-label{
    display:flex;justify-content:space-between;align-items:center;
    font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-2);
  }
  .option-label b{color:var(--text-1);font-weight:600;}
  .swatch-row{display:flex;gap:10px;flex-wrap:wrap;}
  .color-swatch{
    width:34px;height:34px;border-radius:50%;
    border:2px solid var(--line-strong);
    cursor:pointer;position:relative;
    display:flex;align-items:center;justify-content:center;
  }
  .color-swatch::after{content:'';width:24px;height:24px;border-radius:50%;background:var(--sw);}
  .color-swatch.active{border-color:var(--red);}
  .size-pill{
    padding:10px 16px;border-radius:10px;
    border:1.5px solid var(--line-strong);
    font-family:var(--font-mono);font-size:12.5px;letter-spacing:0.03em;
    color:var(--text-2);transition:all .2s ease;
  }
  .size-pill.active{background:var(--red);border-color:var(--red);color:var(--on-red);font-weight:600;}
  .size-pill:not(.active):hover{border-color:var(--text-3);color:var(--text-1);}
  .size-pill:disabled{opacity:0.35;text-decoration:line-through;cursor:not-allowed;}

  .qty-buy-row{display:flex;gap:12px;align-items:stretch;}
  .qty-stepper{
    display:flex;align-items:center;
    border:1.5px solid var(--line-strong);
    border-radius:12px;overflow:hidden;
    flex-shrink:0;
  }
  .qty-stepper button{width:40px;height:52px;font-size:16px;color:var(--text-2);transition:background .2s ease;}
  .qty-stepper button:hover{background:var(--bg-2);}
  .qty-stepper span{width:36px;text-align:center;font-family:var(--font-mono);font-size:14px;}
  .btn-addcart{
    flex:1;height:52px;border-radius:12px;
    background:var(--red);color:var(--on-red);
    font-family:var(--font-mono);font-weight:600;font-size:13px;letter-spacing:0.05em;text-transform:uppercase;
    display:flex;align-items:center;justify-content:center;gap:10px;
    transition:background .2s ease, transform .2s ease;
  }
  .btn-addcart:hover{background:var(--red-bright);transform:translateY(-1px);}
  .btn-wishlist{
    width:52px;height:52px;border-radius:12px;flex-shrink:0;
    border:1.5px solid var(--line-strong);color:var(--text-2);
    display:flex;align-items:center;justify-content:center;
    transition:all .2s ease;
  }
  .btn-wishlist:hover{border-color:var(--red);color:var(--red);}
  .stock-note{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;color:var(--text-2);}
  .stock-dot{width:7px;height:7px;border-radius:50%;background:var(--success);}

  /* Fit checker */
  .fit-checker{
    background:linear-gradient(180deg, var(--bg-2), var(--bg-1));
    border:1px solid var(--line-strong);
    border-radius:16px;
    padding:18px;
  }
  .fit-checker-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
  .fit-checker-head svg{width:16px;height:16px;color:var(--red);}
  .fit-checker-head span{font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-1);}
  .fit-checker-row{display:flex;gap:8px;}
  .fit-checker-row select{
    flex:1;background:var(--bg-0);border:1px solid var(--line-strong);border-radius:10px;
    color:var(--text-1);font-family:var(--font-body);font-size:13px;padding:11px 10px;
    appearance:none;-webkit-appearance:none;cursor:pointer;
  }
  .fit-checker-btn{
    flex-shrink:0;padding:0 18px;border-radius:10px;background:var(--bg-3);
    border:1px solid var(--line-strong);color:var(--text-1);
    font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:0.04em;
    transition:all .2s ease;
  }
  .fit-checker-btn:hover{border-color:var(--red);color:var(--red);}
  .fit-result{
    display:none;margin-top:12px;padding:12px 14px;border-radius:10px;
    font-family:var(--font-mono);font-size:12.5px;align-items:center;gap:10px;
  }
  .fit-result.show{display:flex;}
  .fit-result.ok{background:rgba(30,138,76,0.12);border:1px solid rgba(30,138,76,0.35);color:var(--success);}
  .fit-result.no{background:rgba(227,0,12,0.1);border:1px solid rgba(227,0,12,0.32);color:var(--red-bright);}

  .trust-row{
    display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
    background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;
  }
  .trust-item{background:var(--bg-1);padding:16px 10px;text-align:center;}
  .trust-item svg{width:20px;height:20px;color:var(--red);margin:0 auto 8px;}
  .trust-item span{display:block;font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-2);}

  /* Tabs */
  .pd-tabs-nav{
    display:flex;gap:32px;
    border-bottom:1px solid var(--line);
    margin-bottom:36px;
    overflow-x:auto;
  }
  .pd-tab-btn{
    font-family:var(--font-mono);font-size:12.5px;text-transform:uppercase;letter-spacing:0.05em;
    color:var(--text-3);padding:14px 2px;position:relative;white-space:nowrap;transition:color .2s ease;
  }
  .pd-tab-btn.active{color:var(--text-1);}
  .pd-tab-btn::after{content:'';position:absolute;left:0;bottom:-1px;width:0;height:2px;background:var(--red);transition:width .25s ease;}
  .pd-tab-btn.active::after{width:100%;}
  .pd-tab-panel{display:none;}
  .pd-tab-panel.active{display:block;}

  .spec-table{display:flex;flex-direction:column;max-width:640px;}
  .spec-row{
    display:flex;justify-content:space-between;gap:12px;
    padding:14px 0;border-bottom:1px solid var(--line);
    font-size:13.5px;
  }
  .spec-row .k{font-family:var(--font-mono);color:var(--text-3);text-transform:uppercase;font-size:11px;letter-spacing:0.04em;}
  .spec-row .v{color:var(--text-1);font-weight:500;text-align:right;}

  .desc-copy{max-width:680px;color:var(--text-2);font-size:14.5px;line-height:1.75;}
  .desc-copy p{margin-bottom:14px;}
  .desc-list{max-width:680px;margin-top:18px;display:flex;flex-direction:column;gap:10px;}
  .desc-list li{display:flex;gap:10px;font-size:13.5px;color:var(--text-2);}
  .desc-list svg{width:16px;height:16px;color:var(--red);flex-shrink:0;margin-top:2px;}

  .compat-banner{
    display:flex;align-items:center;gap:12px;
    background:var(--bg-1);border:1px solid var(--line);border-radius:12px;
    padding:16px 18px;margin-bottom:28px;font-size:13px;color:var(--text-2);
  }
  .compat-banner svg{width:20px;height:20px;color:var(--red);flex-shrink:0;}

  .rating-summary{display:grid;grid-template-columns:200px 1fr;gap:48px;margin-bottom:44px;align-items:center;}
  .rating-big{text-align:center;}
  .rating-big .num{font-family:var(--font-display);font-size:56px;line-height:1;}
  .rating-big .stars{color:var(--red-bright);letter-spacing:3px;display:block;margin:10px 0 6px;}
  .rating-big .count{font-family:var(--font-mono);font-size:11.5px;color:var(--text-3);}
  .rating-bars{display:flex;flex-direction:column;gap:8px;}
  .rating-bar-row{display:grid;grid-template-columns:44px 1fr 34px;gap:10px;align-items:center;font-family:var(--font-mono);font-size:11.5px;color:var(--text-2);}
  .rating-bar-track{height:6px;border-radius:4px;background:var(--bg-2);overflow:hidden;}
  .rating-bar-fill{height:100%;background:var(--red);border-radius:4px;}

  @media (max-width:1000px){
    .product-hero{grid-template-columns:1fr;gap:36px;}
    .gallery{position:static;}
    .rating-summary{grid-template-columns:1fr;gap:20px;}
    .trust-row{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:640px){
    .gallery-thumbs{grid-template-columns:repeat(4,1fr);}
    .breadcrumb{padding-top:104px;}
  }

  /* ===================== LISTING PAGE ===================== */
  .listing-header{max-width:var(--max-w);margin:0 auto;padding:126px var(--gutter) 0;}
  .listing-header .breadcrumb{padding:0 0 18px;}
  .listing-title-row{
    display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;
    padding-bottom:28px;border-bottom:1px solid var(--line);
  }
  .listing-title{
    font-family:var(--font-display);font-weight:600;text-transform:uppercase;
    font-size:clamp(30px,4vw,48px);line-height:1;
  }
  .listing-desc{color:var(--text-2);font-size:14px;max-width:520px;margin-top:10px;}
  .listing-count{font-family:var(--font-mono);font-size:11.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:0.04em;}

  .listing-body{
    display:grid;
    grid-template-columns:272px 1fr;
    gap:40px;
    max-width:var(--max-w);
    margin:0 auto;
    padding:32px var(--gutter) 96px;
    align-items:flex-start;
  }
  .listing-body > .filter-sidebar,
  .listing-body > .listing-main{
    min-width:0;
  }

  /* Sidebar filters */
  .filter-sidebar{
    position:sticky;top:96px;
    display:flex;flex-direction:column;gap:0;
    border:1px solid var(--line);
    border-radius:16px;
    overflow:hidden;
    background:var(--bg-1);
  }
  .filter-mybike{
    padding:18px;
    background:linear-gradient(180deg, var(--bg-2), var(--bg-1));
    border-bottom:1px solid var(--line);
  }
  .filter-mybike-head{display:flex;align-items:center;gap:9px;margin-bottom:12px;}
  .filter-mybike-head svg{width:15px;height:15px;color:var(--red);}
  .filter-mybike-head span{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-1);}
  .filter-mybike select{
    width:100%;background:var(--bg-0);border:1px solid var(--line-strong);border-radius:9px;
    color:var(--text-1);font-family:var(--font-body);font-size:12.5px;padding:9px 10px;margin-bottom:8px;
    appearance:none;-webkit-appearance:none;cursor:pointer;
  }
  .filter-mybike-btn{
    width:100%;padding:10px;border-radius:9px;background:var(--red);color:var(--on-red);
    font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:0.04em;font-weight:600;
    margin-top:2px;transition:background .2s ease;
  }
  .filter-mybike-btn:hover{background:var(--red-bright);}

  .filter-group{padding:18px;border-bottom:1px solid var(--line);}
  .filter-group:last-child{border-bottom:none;}
  .filter-group-head{
    display:flex;justify-content:space-between;align-items:center;cursor:pointer;
  }
  .filter-group-head span{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-1);}
  .filter-group-head svg{width:13px;height:13px;color:var(--text-3);transition:transform .25s ease;}
  .filter-group.collapsed .filter-group-head svg{transform:rotate(-90deg);}
  .filter-group.collapsed .filter-group-body{display:none;}
  .filter-group-body{margin-top:14px;display:flex;flex-direction:column;gap:11px;}

  .check-row{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;}
  .check-row-left{display:flex;align-items:center;gap:10px;}
  .check-box{
    width:16px;height:16px;border-radius:5px;border:1.5px solid var(--line-strong);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease;
  }
  .check-box svg{width:10px;height:10px;color:var(--on-red);opacity:0;transition:opacity .15s ease;}
  .check-row input{display:none;}
  .check-row input:checked ~ .check-box{background:var(--red);border-color:var(--red);}
  .check-row input:checked ~ .check-box svg{opacity:1;}
  .check-row-label{font-size:13px;color:var(--text-2);}
  .check-row input:checked ~ .check-row-left .check-row-label{color:var(--text-1);}
  .check-row-count{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);}

  .filter-swatch-row{display:flex;gap:8px;flex-wrap:wrap;}
  .filter-swatch{
    width:26px;height:26px;border-radius:50%;border:2px solid var(--line-strong);cursor:pointer;
    display:flex;align-items:center;justify-content:center;position:relative;
  }
  .filter-swatch::after{content:'';width:18px;height:18px;border-radius:50%;background:var(--sw);}
  .filter-swatch.active{border-color:var(--red);}

  .price-inputs{display:flex;align-items:center;gap:8px;}
  .price-inputs input{
    width:100%;background:var(--bg-0);border:1px solid var(--line-strong);border-radius:8px;
    color:var(--text-1);font-family:var(--font-mono);font-size:12px;padding:9px 8px;
  }
  .price-range-track{
    position:relative;height:4px;background:var(--bg-2);border-radius:4px;margin:14px 2px 6px;
  }
  .price-range-fill{position:absolute;left:15%;right:20%;top:0;bottom:0;background:var(--red);border-radius:4px;}
  .price-range-track input[type="range"]{
    position:absolute;top:-8px;left:0;width:100%;
    appearance:none;-webkit-appearance:none;background:none;pointer-events:none;height:20px;
  }
  .price-range-track input[type="range"]::-webkit-slider-thumb{
    appearance:none;-webkit-appearance:none;pointer-events:all;
    width:16px;height:16px;border-radius:50%;background:var(--bg-3);border:2px solid var(--red);cursor:pointer;
  }

  .star-filter-row{display:flex;align-items:center;gap:8px;}
  .star-filter-row .stars{color:var(--red-bright);font-size:13px;letter-spacing:1px;}
  .star-filter-row span.txt{font-size:12px;color:var(--text-2);}

  .filter-clear{
    display:block;text-align:center;padding:14px;
    font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:0.05em;
    color:var(--text-3);transition:color .2s ease;
  }
  .filter-clear:hover{color:var(--red);}

  /* Toolbar */
  .listing-toolbar{
    display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
    margin-bottom:20px;
  }
  .toolbar-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
  .filter-toggle-mobile{
    display:none;align-items:center;gap:8px;
    font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:0.04em;
    border:1px solid var(--line-strong);border-radius:10px;padding:10px 14px;color:var(--text-1);
  }
  .toolbar-right{display:flex;align-items:center;gap:10px;}
  .sort-select{
    background:var(--bg-1);border:1px solid var(--line-strong);border-radius:10px;
    color:var(--text-1);font-family:var(--font-mono);font-size:11.5px;padding:10px 14px;
    appearance:none;-webkit-appearance:none;cursor:pointer;text-transform:uppercase;letter-spacing:0.03em;
  }
  .view-toggle{display:flex;border:1px solid var(--line-strong);border-radius:10px;overflow:hidden;}
  .view-toggle button{width:38px;height:38px;display:flex;align-items:center;justify-content:center;color:var(--text-3);transition:all .2s ease;}
  .view-toggle button.active{background:var(--bg-2);color:var(--red);}

  .chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
  .chip-row:empty{display:none;}
  .chip{
    display:flex;align-items:center;gap:7px;
    background:var(--bg-2);border:1px solid var(--line-strong);border-radius:999px;
    padding:7px 8px 7px 13px;font-family:var(--font-mono);font-size:11px;color:var(--text-1);
  }
  .chip button{width:16px;height:16px;border-radius:50%;background:var(--bg-3);display:flex;align-items:center;justify-content:center;color:var(--text-2);}
  .chip button:hover{background:var(--red);color:var(--on-red);}

  .listing-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
  }
  .listing-grid .pcard{width:100%;}
  .listing-grid.list-view{grid-template-columns:1fr;}
  .listing-grid.list-view .pcard{
    display:grid;grid-template-columns:200px 1fr;gap:0;
  }
  .listing-grid.list-view .pcard-img{aspect-ratio:auto;height:100%;}
  .listing-grid.list-view .pcard-body{display:flex;flex-direction:column;justify-content:center;}

  .pagination{
    display:flex;align-items:center;justify-content:center;gap:8px;
    margin-top:56px;
  }
  .pagination button{
    min-width:38px;height:38px;padding:0 6px;border-radius:9px;
    font-family:var(--font-mono);font-size:12px;color:var(--text-2);
    border:1px solid transparent;transition:all .2s ease;
  }
  .pagination button.active{background:var(--red);color:var(--on-red);font-weight:600;}
  .pagination button:not(.active):hover{border-color:var(--line-strong);color:var(--text-1);}
  .pagination .pg-arrow{color:var(--text-1);}

  .filter-scrim{
    display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:190;
  }
  .filter-scrim.show{display:block;}

  @media (max-width:960px){
    .listing-body{grid-template-columns:1fr;}
    .filter-sidebar{
      position:fixed;top:0;left:0;bottom:0;width:300px;max-width:85vw;z-index:200;
      border-radius:0;transform:translateX(-100%);transition:transform .3s ease;
      overflow-y:auto;
    }
    .filter-sidebar.open{transform:translateX(0);box-shadow:40px 0 80px rgba(0,0,0,0.4);}
    .filter-toggle-mobile{display:flex;}
    .listing-grid{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:640px){
    .listing-grid{grid-template-columns:repeat(2,1fr);}
    .listing-grid .pcard{width:100%;}
    .listing-header{padding-top:110px;}
    .toolbar-right{width:100%;justify-content:space-between;}
  }

  /* ===================== FLOATING ICON NAV ===================== */
  body{padding-bottom:104px;}
  .float-nav{
    position:fixed;
    bottom:22px;
    left:50%;
    transform:translateX(-50%);
    z-index:150;
    display:flex;
    align-items:center;
    gap:4px;
    padding:8px;
    border-radius:999px;
    background:var(--nav-bg-scrolled);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border:1px solid var(--line-strong);
    box-shadow:var(--shadow);
  }
  .float-nav a{
    width:46px;height:46px;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    color:var(--text-2);
    position:relative;
    transition:background .2s ease, color .2s ease, transform .2s ease;
  }
  .float-nav a svg{width:19px;height:19px;}
  .float-nav a:hover{color:var(--text-1);background:var(--bg-2);transform:translateY(-2px);}
  .float-nav a.active{background:var(--red);color:var(--on-red);}
  .float-nav a.active:hover{transform:none;background:var(--red-bright);}
  .float-nav .fn-cart-count{
    position:absolute;top:3px;right:3px;
    background:var(--red);color:var(--on-red);
    font-family:var(--font-mono);font-size:9px;font-weight:700;
    width:15px;height:15px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    border:2px solid var(--bg-1);
  }
  @media (max-width:480px){
    .float-nav{gap:2px;padding:6px;bottom:16px;}
    .float-nav a{width:42px;height:42px;}
  }

  /* ===================== COMMERCE: shared page shell ===================== */
  .page-header{max-width:var(--max-w);margin:0 auto;padding:126px var(--gutter) 0;}
  .page-header .breadcrumb{padding:0 0 18px;}
  .page-title{
    font-family:var(--font-display);font-weight:600;text-transform:uppercase;
    font-size:clamp(28px,3.6vw,44px);line-height:1;padding-bottom:32px;border-bottom:1px solid var(--line);
    display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;
  }
  .page-title .count{font-family:var(--font-mono);font-size:13px;color:var(--text-3);text-transform:none;letter-spacing:0;}

  .summary-card{
    background:var(--bg-1);border:1px solid var(--line);border-radius:16px;padding:22px;
    position:sticky;top:96px;
  }
  .summary-card h3{font-family:var(--font-display);font-size:16px;text-transform:uppercase;margin-bottom:18px;}
  .summary-row{display:flex;justify-content:space-between;font-size:13.5px;color:var(--text-2);padding:9px 0;}
  .summary-row b{color:var(--text-1);font-weight:500;}
  .summary-row.total{
    border-top:1px solid var(--line);margin-top:8px;padding-top:16px;
    font-family:var(--font-mono);font-size:17px;color:var(--text-1);font-weight:600;
  }
  .summary-row.total b{font-size:20px;}
  .promo-row{display:flex;gap:8px;margin:16px 0;}
  .promo-row input{
    flex:1;background:var(--bg-0);border:1px solid var(--line-strong);border-radius:10px;
    color:var(--text-1);font-family:var(--font-mono);font-size:12.5px;padding:11px 12px;
  }
  .promo-row button{
    padding:0 16px;border-radius:10px;background:var(--bg-3);border:1px solid var(--line-strong);
    color:var(--text-1);font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;
    transition:all .2s ease;
  }
  .promo-row button:hover{border-color:var(--red);color:var(--red);}
  .promo-applied{
    display:flex;align-items:center;justify-content:space-between;gap:8px;
    background:rgba(30,138,76,0.1);border:1px solid rgba(30,138,76,0.3);border-radius:10px;
    padding:9px 12px;margin:12px 0;font-family:var(--font-mono);font-size:11.5px;color:var(--success);
  }
  .promo-applied button{color:var(--success);width:16px;height:16px;display:flex;align-items:center;justify-content:center;}

  /* ===================== CART PAGE ===================== */
  .cart-layout{
    display:grid;grid-template-columns:1fr 360px;gap:40px;
    max-width:var(--max-w);margin:0 auto;padding:32px var(--gutter) 96px;align-items:flex-start;
  }
  .cart-layout > *{min-width:0;}
  .cart-item{
    display:grid;grid-template-columns:96px 1fr auto;gap:18px;
    padding:22px 0;border-bottom:1px solid var(--line);align-items:center;
  }
  .cart-item-img{
    width:96px;height:96px;border-radius:12px;
    background:linear-gradient(150deg,var(--media-3),var(--media-1) 65%);
    display:flex;align-items:center;justify-content:center;
    border:1px solid var(--line);flex-shrink:0;
  }
  .cart-item-img svg{width:44%;color:var(--media-ink);opacity:0.6;}
  .cart-item-info{min-width:0;}
  .cart-item-brand{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:5px;}
  .cart-item-name{font-size:15px;font-weight:600;margin-bottom:6px;}
  .cart-item-meta{display:flex;gap:14px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11.5px;color:var(--text-3);margin-bottom:10px;}
  .cart-item-meta .fit{color:var(--red-bright);}
  .cart-item-controls{display:flex;align-items:center;gap:16px;}
  .cart-item-price-col{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:14px;}
  .cart-item-price{font-family:var(--font-mono);font-size:16px;font-weight:600;}
  .cart-item-price .old{color:var(--text-3);text-decoration:line-through;font-weight:400;font-size:12px;margin-left:6px;}
  .cart-remove{font-family:var(--font-mono);font-size:11px;color:var(--text-3);display:flex;align-items:center;gap:5px;transition:color .2s ease;}
  .cart-remove:hover{color:var(--red);}
  .cart-remove svg{width:12px;height:12px;}
  .cart-qty{
    display:flex;align-items:center;border:1.5px solid var(--line-strong);border-radius:10px;overflow:hidden;
  }
  .cart-qty button{width:30px;height:38px;color:var(--text-2);transition:background .2s ease;}
  .cart-qty button:hover{background:var(--bg-2);}
  .cart-qty span{width:30px;text-align:center;font-family:var(--font-mono);font-size:13px;}

  .cart-empty-note{
    display:flex;align-items:center;gap:10px;padding:14px 16px;margin-bottom:8px;
    background:var(--bg-1);border:1px solid var(--line);border-radius:12px;
    font-family:var(--font-mono);font-size:12px;color:var(--text-2);
  }
  .cart-empty-note svg{width:16px;height:16px;color:var(--red);flex-shrink:0;}

  .btn-checkout{
    width:100%;height:52px;border-radius:12px;background:var(--red);color:var(--on-red);
    font-family:var(--font-mono);font-weight:600;font-size:13px;letter-spacing:0.05em;text-transform:uppercase;
    display:flex;align-items:center;justify-content:center;gap:10px;margin-top:6px;
    transition:background .2s ease, transform .2s ease;
  }
  .btn-checkout:hover{background:var(--red-bright);transform:translateY(-1px);}
  .continue-shopping{
    display:inline-flex;align-items:center;gap:8px;margin-top:18px;
    font-family:var(--font-mono);font-size:11.5px;color:var(--text-2);text-transform:uppercase;letter-spacing:0.04em;
  }
  .continue-shopping:hover{color:var(--red);}

  @media (max-width:900px){
    .cart-layout{grid-template-columns:1fr;}
    .summary-card{position:static;}
  }
  @media (max-width:640px){
    .cart-item{grid-template-columns:72px 1fr;}
    .cart-item-price-col{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;margin-top:8px;}
  }

  /* ===================== CHECKOUT PAGE ===================== */
  .step-track{
    display:flex;align-items:center;gap:0;max-width:var(--max-w);margin:0 auto;padding:28px var(--gutter) 0;
  }
  .step-track .step{display:flex;align-items:center;gap:10px;}
  .step-track .step-num{
    width:30px;height:30px;border-radius:50%;border:1.5px solid var(--line-strong);
    display:flex;align-items:center;justify-content:center;
    font-family:var(--font-mono);font-size:12px;color:var(--text-3);flex-shrink:0;transition:all .2s ease;
  }
  .step-track .step.active .step-num{background:var(--red);border-color:var(--red);color:var(--on-red);font-weight:600;}
  .step-track .step.done .step-num{background:var(--success);border-color:var(--success);color:#fff;}
  .step-track .step-label{font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-3);}
  .step-track .step.active .step-label{color:var(--text-1);}
  .step-track .step-line{flex:1;height:1px;background:var(--line);margin:0 14px;min-width:24px;}

  .checkout-layout{
    display:grid;grid-template-columns:1fr 360px;gap:40px;
    max-width:var(--max-w);margin:0 auto;padding:32px var(--gutter) 96px;align-items:flex-start;
  }
  .checkout-layout > *{min-width:0;}
  .checkout-card{
    background:var(--bg-1);border:1px solid var(--line);border-radius:16px;padding:26px;margin-bottom:20px;
  }
  .checkout-card-head{display:flex;align-items:center;gap:10px;margin-bottom:20px;}
  .checkout-card-head svg{width:17px;height:17px;color:var(--red);}
  .checkout-card-head span{font-family:var(--font-display);font-size:16px;text-transform:uppercase;}
  .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .field-grid .full{grid-column:1/-1;}
  .field{display:flex;flex-direction:column;gap:7px;}
  .field label{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-3);}
  .field input, .field select, .field textarea{
    background:var(--bg-0);border:1px solid var(--line-strong);border-radius:10px;
    color:var(--text-1);font-family:var(--font-body);font-size:13.5px;padding:12px 13px;
    appearance:none;-webkit-appearance:none;
  }
  .field select{cursor:pointer;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(227,0,12,0.12);}
  .field textarea{resize:vertical;min-height:70px;font-family:var(--font-body);}
  .save-address-row{display:flex;align-items:center;gap:9px;margin-top:16px;font-size:12.5px;color:var(--text-2);}

  .payment-options{display:flex;flex-direction:column;gap:10px;}
  .payment-option{
    display:flex;align-items:center;gap:14px;padding:15px 16px;
    border:1.5px solid var(--line-strong);border-radius:12px;cursor:pointer;transition:all .2s ease;
  }
  .payment-option:hover{border-color:var(--text-3);}
  .payment-option.selected{border-color:var(--red);background:rgba(227,0,12,0.05);}
  .payment-radio{
    width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-strong);flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
  }
  .payment-option.selected .payment-radio{border-color:var(--red);}
  .payment-radio::after{content:'';width:9px;height:9px;border-radius:50%;background:var(--red);opacity:0;transition:opacity .15s ease;}
  .payment-option.selected .payment-radio::after{opacity:1;}
  .payment-icon{
    width:38px;height:38px;border-radius:9px;background:var(--bg-2);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
  }
  .payment-icon svg{width:19px;height:19px;color:var(--red);}
  .payment-icon.esewa{color:#5cb85c;}
  .payment-text{flex:1;}
  .payment-text b{display:block;font-size:13.5px;font-weight:600;}
  .payment-text span{font-family:var(--font-mono);font-size:11px;color:var(--text-3);}
  .payment-badge{
    font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:0.04em;
    color:var(--success);background:rgba(30,138,76,0.12);border:1px solid rgba(30,138,76,0.3);
    padding:3px 8px;border-radius:999px;
  }

  .delivery-options{display:flex;flex-direction:column;gap:10px;}
  .delivery-option{
    display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;
    border:1.5px solid var(--line-strong);border-radius:12px;cursor:pointer;transition:all .2s ease;
  }
  .delivery-option.selected{border-color:var(--red);background:rgba(227,0,12,0.05);}
  .delivery-left{display:flex;align-items:center;gap:12px;}
  .delivery-text b{display:block;font-size:13.5px;}
  .delivery-text span{font-family:var(--font-mono);font-size:11px;color:var(--text-3);}
  .delivery-price{font-family:var(--font-mono);font-size:13px;color:var(--text-1);}

  .order-review-item{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);}
  .order-review-item:last-child{border-bottom:none;}
  .order-review-img{
    width:48px;height:48px;border-radius:8px;flex-shrink:0;
    background:linear-gradient(150deg,var(--media-3),var(--media-1) 65%);
    display:flex;align-items:center;justify-content:center;border:1px solid var(--line);
  }
  .order-review-img svg{width:44%;color:var(--media-ink);opacity:0.6;}
  .order-review-info{flex:1;min-width:0;}
  .order-review-info b{display:block;font-size:12.5px;font-weight:500;}
  .order-review-info span{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);}
  .order-review-price{font-family:var(--font-mono);font-size:12.5px;flex-shrink:0;}

  .btn-place-order{
    width:100%;height:54px;border-radius:12px;background:var(--red);color:var(--on-red);
    font-family:var(--font-mono);font-weight:600;font-size:13px;letter-spacing:0.05em;text-transform:uppercase;
    display:flex;align-items:center;justify-content:center;gap:10px;margin-top:6px;
    transition:background .2s ease, transform .2s ease;
  }
  .btn-place-order:hover{background:var(--red-bright);transform:translateY(-1px);}
  .secure-note{
    display:flex;align-items:center;justify-content:center;gap:7px;margin-top:14px;
    font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);
  }
  .secure-note svg{width:12px;height:12px;color:var(--success);}

  @media (max-width:900px){
    .checkout-layout{grid-template-columns:1fr;}
    .field-grid{grid-template-columns:1fr;}
    .step-track .step-label{display:none;}
  }

  /* ===================== PROFILE PAGE ===================== */
  .profile-layout{
    display:grid;grid-template-columns:264px 1fr;gap:36px;
    max-width:var(--max-w);margin:0 auto;padding:32px var(--gutter) 96px;align-items:flex-start;
  }
  .profile-layout > *{min-width:0;}
  .profile-sidebar{
    background:var(--bg-1);border:1px solid var(--line);border-radius:16px;overflow:hidden;
    position:sticky;top:96px;
  }
  .profile-id{
    display:flex;align-items:center;gap:12px;padding:20px;
    background:linear-gradient(180deg,var(--bg-2),var(--bg-1));border-bottom:1px solid var(--line);
  }
  .profile-avatar{
    width:46px;height:46px;border-radius:50%;flex-shrink:0;
    background:linear-gradient(140deg,var(--maroon),var(--red));
    display:flex;align-items:center;justify-content:center;
    font-family:var(--font-display);font-size:16px;color:#fff;
  }
  .profile-id-text b{display:block;font-size:14px;}
  .profile-id-text span{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);}
  .profile-nav{padding:10px;}
  .profile-nav a{
    display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;
    font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:0.03em;
    color:var(--text-2);transition:all .2s ease;
  }
  .profile-nav a svg{width:16px;height:16px;flex-shrink:0;}
  .profile-nav a:hover{background:var(--bg-2);color:var(--text-1);}
  .profile-nav a.active{background:var(--red);color:var(--on-red);}
  .profile-nav a.logout{color:var(--text-3);margin-top:6px;border-top:1px solid var(--line);border-radius:0;padding-top:16px;}
  .profile-nav a.logout:hover{color:var(--red);background:none;}

  .profile-panel{
    background:var(--bg-1);border:1px solid var(--line);border-radius:16px;padding:28px;margin-bottom:22px;
    display:none;
  }
  .profile-panel.active{display:block;}
  .profile-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;flex-wrap:wrap;gap:10px;}
  .profile-panel-head h3{font-family:var(--font-display);font-size:18px;text-transform:uppercase;}
  .profile-panel-head p{font-family:var(--font-mono);font-size:11px;color:var(--text-3);margin-top:4px;}

  .garage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
  .garage-card{
    background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:18px;position:relative;
  }
  .garage-card.default{border-color:var(--red);}
  .garage-badge{
    position:absolute;top:12px;right:12px;font-family:var(--font-mono);font-size:9px;text-transform:uppercase;
    color:var(--red-bright);background:rgba(227,0,12,0.12);border:1px solid rgba(227,0,12,0.35);
    padding:3px 8px;border-radius:999px;
  }
  .garage-card svg{width:100%;height:36px;color:var(--text-2);margin-bottom:14px;}
  .garage-mk{font-family:var(--font-mono);font-size:9.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:0.04em;}
  .garage-model{font-family:var(--font-display);font-size:15px;text-transform:uppercase;margin:2px 0 12px;}
  .garage-actions{display:flex;gap:8px;font-family:var(--font-mono);font-size:10.5px;}
  .garage-actions a{color:var(--text-3);}
  .garage-actions a:hover{color:var(--red);}
  .garage-add{
    border:1.5px dashed var(--line-strong);border-radius:14px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
    color:var(--text-3);font-family:var(--font-mono);font-size:11px;text-transform:uppercase;
    transition:all .2s ease;min-height:150px;
  }
  .garage-add:hover{border-color:var(--red);color:var(--red);}
  .garage-add svg{width:22px;height:22px;}

  .order-row{
    display:grid;grid-template-columns:auto 1fr auto auto auto;gap:18px;align-items:center;
    padding:16px 0;border-bottom:1px solid var(--line);
  }
  .order-row:last-child{border-bottom:none;}
  .order-thumb{
    width:44px;height:44px;border-radius:9px;
    background:linear-gradient(150deg,var(--media-3),var(--media-1) 65%);
    display:flex;align-items:center;justify-content:center;border:1px solid var(--line);
  }
  .order-thumb svg{width:44%;color:var(--media-ink);opacity:0.6;}
  .order-info b{display:block;font-size:13px;}
  .order-info span{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);}
  .order-status{
    font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:0.04em;
    padding:5px 10px;border-radius:999px;white-space:nowrap;
  }
  .order-status.delivered{color:var(--success);background:rgba(30,138,76,0.12);border:1px solid rgba(30,138,76,0.3);}
  .order-status.transit{color:var(--red-bright);background:rgba(227,0,12,0.1);border:1px solid rgba(227,0,12,0.3);}
  .order-status.processing{color:var(--text-2);background:var(--bg-2);border:1px solid var(--line-strong);}
  .order-total{font-family:var(--font-mono);font-size:13px;text-align:right;}
  .order-link{font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);white-space:nowrap;}
  .order-link:hover{color:var(--red);}

  .address-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
  .address-card{
    background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:18px;position:relative;
  }
  .address-card.default{border-color:var(--red);}
  .address-tag{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;color:var(--red-bright);letter-spacing:0.04em;margin-bottom:8px;display:block;}
  .address-card p{font-size:13px;color:var(--text-2);line-height:1.6;}
  .address-actions{display:flex;gap:12px;margin-top:14px;font-family:var(--font-mono);font-size:10.5px;}
  .address-actions a{color:var(--text-3);}
  .address-actions a:hover{color:var(--red);}

  @media (max-width:900px){
    .profile-layout{grid-template-columns:1fr;}
    .profile-sidebar{position:static;}
    .garage-grid{grid-template-columns:repeat(2,1fr);}
    .address-grid{grid-template-columns:1fr;}
  }
  @media (max-width:640px){
    .garage-grid{grid-template-columns:1fr;}
    .order-row{grid-template-columns:auto 1fr;row-gap:8px;}
    .order-status, .order-total, .order-link{grid-column:2;justify-self:start;}
  }
