
  :root{
    --bg:#0a0a0c;
    --bg-alt:#111114;
    --card:#161619;
    --line:#26262b;
    --red:#E2222A;
    --red-dark:#B5171E;
    --muted:#9a9aa2;
  }
  body{background:var(--bg); color:#fff; font-family:'Inter', sans-serif;}
  h1,h2,h3,h4,.display-font{font-family:'Oswald', sans-serif; text-transform:uppercase; letter-spacing:.01em;}
  a{text-decoration:none;}
  .text-red{color:var(--red) !important;}
  .btn-red{background:var(--red); border-color:var(--red); color:#fff; font-weight:600; text-transform:uppercase; font-size:.8rem; letter-spacing:.03em;}
  .btn-red:hover{background:var(--red-dark); border-color:var(--red-dark); color:#fff;}
  .btn-outline-red{border:1.5px solid #fff; color:#fff; background:none; font-weight:600; text-transform:uppercase; font-size:.8rem; letter-spacing:.03em;}
  .btn-outline-red:hover{border-color:var(--red); color:var(--red); background:none;}
  .eyebrow{font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; font-weight:700; color:var(--red);}

  /* Navbar */
  .navbar{background:var(--bg) !important; border-bottom:1px solid var(--line);}
  .navbar-brand{font-family:'Oswald'; font-weight:700; letter-spacing:.03em; font-size:1.15rem;}
  .navbar-brand span{color:var(--red);}
  .nav-link{color:#e6e6e9 !important; font-weight:600; font-size:.8rem; text-transform:uppercase; letter-spacing:.03em;}
  .nav-link:hover, .nav-link.active{color:var(--red) !important;}
  .dropdown-menu{background:var(--card); border:1px solid var(--line); padding:.4rem;}
  .dropdown-item{color:#e6e6e9; font-size:.85rem; padding:.6rem .9rem; border-radius:6px;}
  .dropdown-item:hover{background:var(--red); color:#fff;}
  .dropdown-item.active{background:var(--red); color:#fff;}
  .icon-btn{width:40px; height:40px; border-radius:50%; border:1px solid var(--line); display:inline-flex; align-items:center; justify-content:center; color:#fff; background:none; position:relative;}
  .icon-btn:hover{border-color:var(--red); color:var(--red);}
  .cart-badge{position:absolute; top:-6px; right:-6px; background:var(--red); color:#fff; font-size:.65rem; width:18px; height:18px; border-radius:50%; display:flex; align-items:center; justify-content:center;}

  /* Breadcrumb */
  .breadcrumb-bar{background:var(--bg-alt); border-bottom:1px solid var(--line); padding-top:76px;}
  .breadcrumb-bar .breadcrumb{margin:0; font-size:.8rem;}
  .breadcrumb-item, .breadcrumb-item a{color:var(--muted);}
  .breadcrumb-item.active{color:#fff;}
  .breadcrumb-item+.breadcrumb-item::before{color:var(--muted);}

  /* Hero */
  .hero{background:radial-gradient(900px 380px at 85% -10%, rgba(226,34,42,.16), transparent 60%), var(--bg);}
  .hero .display{font-size:clamp(2.4rem,5.6vw,4rem); font-weight:700; line-height:1.03; margin-bottom:1rem;}
  .hero p.lead{color:var(--muted); max-width:560px; font-size:1.02rem;}
  .hero-icon{aspect-ratio:1/1; max-width:280px; margin-left:auto; display:flex; align-items:center; justify-content:center; border:1px dashed var(--line); border-radius:50%;}
  .hero-icon i{font-size:5rem; color:var(--red); opacity:.85;}
  .stats-strip{border-top:1px solid var(--line); background:var(--bg-alt);}
  .stats-strip .stat-num{font-family:'Oswald'; font-weight:700; font-size:1.6rem;}
  .stats-strip .stat-lbl{font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted);}
  .stats-strip .col{border-right:1px solid var(--line);}
  .stats-strip .col:last-child{border-right:none;}

  /* Tabs */
  .filter-tab{background:none; border:1.5px solid var(--line); color:#dcdce0; border-radius:100px; padding:.5rem 1.2rem; font-size:.78rem; font-weight:700; text-transform:uppercase; letter-spacing:.03em;}
  .filter-tab.active{background:var(--red); border-color:var(--red); color:#fff;}
  .filter-tab:hover:not(.active){border-color:var(--red); color:var(--red);}

  /* Cards */
  .part-card{background:var(--card); border:1px solid var(--line); border-radius:10px; overflow:hidden; height:100%;}
  .part-card .media{position:relative; aspect-ratio:4/3; background:linear-gradient(160deg,#2a0e12,#120a0c); overflow:hidden; display:flex; align-items:center; justify-content:center;}
  .part-card .media img{width:100%; height:100%; object-fit:cover;}
  .part-card .media i{font-size:3.4rem; color:var(--red); opacity:.55;}
  .badge-brand{position:absolute; top:10px; left:10px; background:var(--red); font-size:.65rem; text-transform:uppercase; letter-spacing:.05em; font-weight:700; padding:.35rem .6rem;}
  .badge-fit{position:absolute; bottom:10px; left:10px; background:rgba(0,0,0,.6); border:1px solid rgba(255,255,255,.15); font-size:.65rem; text-transform:uppercase; letter-spacing:.04em; font-weight:600; padding:.3rem .55rem; color:#e6e6e9;}
  .wish-btn{position:absolute; top:10px; right:10px; width:32px; height:32px; border-radius:50%; background:rgba(0,0,0,.5); border:1px solid rgba(255,255,255,.2); color:#fff; display:flex; align-items:center; justify-content:center; font-size:.85rem;}
  .part-card .card-body h3{font-size:1.08rem; margin-bottom:.15rem;}
  .part-card .card-body .tag{color:var(--muted); font-size:.8rem; margin-bottom:.75rem;}
  .spec-pill{background:#1e1e23; border:1px solid var(--line); color:#d5d5da; font-size:.68rem; padding:.3rem .5rem; border-radius:5px;}
  .price-tag{font-family:'Oswald'; font-weight:700; font-size:1.2rem;}
  .price-sub{font-size:.66rem; color:var(--muted); text-transform:uppercase; letter-spacing:.05em;}

  /* Info band */
  .info-band{background:linear-gradient(120deg,#1c0a0d,#0a0a0c 60%); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
  .info-item i{font-size:1.8rem; color:var(--red); margin-bottom:.6rem;}
  .info-item h5{font-size:1rem; margin-bottom:.4rem;}
  .info-item p{color:var(--muted); font-size:.85rem;}

  /* Fitment finder */
  .finder-card{background:var(--card); border:1px solid var(--line); border-radius:12px;}
  .form-control, .form-select{background:#1a1a1e; border:1px solid var(--line); color:#fff;}
  .form-control:focus, .form-select:focus{background:#1a1a1e; color:#fff; border-color:var(--red); box-shadow:0 0 0 .2rem rgba(226,34,42,.2);}
  .form-control::placeholder{color:#75757c;}

  /* Accordion */
  .accordion-item{background:var(--card); border:1px solid var(--line);}
  .accordion-button{background:var(--card); color:#fff; font-weight:600;}
  .accordion-button:not(.collapsed){background:var(--card); color:var(--red); box-shadow:none;}
  .accordion-button::after{filter:invert(1);}
  .accordion-body{color:var(--muted);}

  /* Footer */
  footer{background:var(--bg-alt); border-top:1px solid var(--line);}
  footer h6{font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted);}
  footer a{color:#c9c9cf;}
  footer a:hover{color:var(--red);}
  .footer-bottom{border-top:1px solid var(--line); font-size:.78rem; color:var(--muted);}

  /* Offcanvas cart */
  .offcanvas{background:var(--bg-alt); color:#fff;}
  .offcanvas-header{border-bottom:1px solid var(--line);}
  .cart-item img{width:60px; height:60px; object-fit:cover; border-radius:6px; background:#1e1e23;}
  .cart-item{border-bottom:1px solid var(--line);}
  .btn-close{filter:invert(1);}
  .toast{background:var(--card); color:#fff; border:1px solid var(--line);}
