@import url('/assets/fonts.css');

:root{color-scheme:light;--black:#080808;--dark:#171717;--red:#fa0001;--ink:#171715;--surface:#f6f6f4;--border:#dadad5;--muted:#60605b;--head:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:Manrope,Arial,sans-serif;--header:70px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 18px)}
body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--body);font-size:15px}
body:has(dialog[open]){overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select{font:inherit;color:inherit}
button,select{cursor:pointer}
button:disabled{cursor:default;opacity:.45}
:focus-visible{outline:2px solid #c60000;outline-offset:4px}
[hidden]{display:none!important}
h1,h2,h3,p{margin:0}
svg{flex:none;vertical-align:middle}
.shell{width:min(100% - 88px,1336px);margin-inline:auto}
.visually-hidden,.skip:not(:focus){position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.skip:focus{position:fixed;z-index:9;left:12px;top:12px;padding:12px;background:white;color:black}
.header{height:var(--header);position:sticky;z-index:4;top:0;background:#080808;color:#f6f6f4;border-bottom:1px solid #292929}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;position:relative}
.brand{display:inline-flex;background:#fcfcfc;padding:7px 9px;width:121px;flex:none}
.brand img{height:auto}
.nav{display:flex;align-items:center;gap:35px;font-size:13px;font-weight:700}
.nav a{padding:10px 0;color:#e4e4e2}
.nav a:hover,.footer-inner>a:last-child:hover{color:#ff5555}
.header-actions{display:flex;align-items:center;gap:8px}
.icon-button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;padding:0;color:inherit}
.icon-button:hover{color:#ff5454}
.icon-button svg{width:21px;height:21px}
.cart-toggle{padding-inline:4px}
#cart-count{min-width:19px;height:19px;padding-inline:3px;display:grid;place-items:center;background:#dc0000;color:white;font-weight:800;font-size:10px;border-radius:50%}
.menu-toggle{display:none}

.hero{position:relative;background:var(--black);color:#fff;isolation:isolate;overflow:hidden}
.hero-inner{display:flex;align-items:center;min-height:clamp(510px,43vw,635px);padding-block:38px 46px}
.hero-image{position:absolute;inset:0 0 0 29%;z-index:-2}
.hero-image img{height:100%;width:100%;object-fit:cover;object-position:50% 62%}
.hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080808 0%,#080808 23%,rgba(8,8,8,.92) 31%,rgba(8,8,8,.38) 52%,transparent 73%),linear-gradient(0deg,rgba(8,8,8,.55),transparent 25%),radial-gradient(ellipse at 91% 16%,#dc0a0a38,transparent 56%);pointer-events:none}
.hero-copy{padding-left:clamp(0px,2vw,36px);animation:enter .55s ease-out both}
.hero h1{font:800 clamp(76px,8vw,148px)/.84 var(--head);letter-spacing:-.02em}
.hero h1 em{color:var(--red);font-style:normal}
.hero p{margin:22px 0 22px;max-width:38ch;color:#ededeb;font-weight:600;line-height:1.5}
.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:48px;padding:10px 16px;border:1px solid transparent;font-size:13px;font-weight:800;transition:background .18s,color .18s,transform .18s}
.primary{color:#fff;background:#d60000;text-transform:uppercase;letter-spacing:.035em}
.primary:hover{background:#b70000;transform:translateY(-2px)}
.primary svg,.secondary svg,.back-link svg{width:17px;height:17px}
.precision{height:clamp(68px,9vw,127px);background:var(--black);overflow:hidden;position:relative}
.precision-photo{position:absolute;inset:0 0 0 43%;background:center 57%/cover no-repeat url('/assets/precision.webp');opacity:.82}
.precision::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080808 36%,transparent 64%),linear-gradient(180deg,#08080882,transparent 43%);}
.precision-rule{position:absolute;z-index:1;inset:auto 0 0;height:4px;background:linear-gradient(105deg,#f00000 0 20%,#363634 20% 100%)}

.catalog{padding-block:40px 72px}
.catalog-title{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:20px}
.catalog-title h2,.related h2{font:800 clamp(43px,6vw,72px)/.9 var(--head);letter-spacing:-.014em}
.catalog-title p{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap}
.categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px}
.category{min-height:55px;display:flex;align-items:center;gap:12px;padding:9px 14px;background:#fff;border:1px solid var(--border);text-align:left;font-size:13px;line-height:1.25;font-weight:800;transition:background .18s,color .18s,border-color .18s}
.category svg{width:20px;height:20px;color:#c60000}
.category[aria-pressed="true"]{background:var(--dark);border-color:var(--dark);color:#fff}
.category[aria-pressed="true"] svg{color:#ff5858}
.category:hover{border-color:#a00000}
.toolbar{display:flex;margin-bottom:16px;gap:10px}
.search,.sort{background:white;border:1px solid var(--border);min-height:45px;display:flex;align-items:center}
.search{padding-inline:13px;gap:9px;flex:1;min-width:0}
.search svg{width:17px;height:17px;color:var(--muted)}
.search input,.sort select{width:100%;height:43px;background:transparent;border:0;min-width:0;font-size:14px}
.search input{padding:0 4px}
.sort select{padding-inline:10px;min-width:146px}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.product{background:white;min-width:0;border:1px solid var(--border);display:flex;flex-direction:column;transition:border-color .18s,box-shadow .18s}
.product:hover{border-color:#96968e;box-shadow:0 9px 24px #0808080a}
.product-media,.detail-media{display:grid;place-items:center;background:#eeefec;aspect-ratio:1.39;overflow:hidden}
.product-media img,.detail-media img{object-fit:contain;width:100%;height:100%}
.placeholder{display:grid;place-items:center;gap:8px;color:#60605a;font-size:10px;font-weight:700;letter-spacing:.045em;text-align:center;padding:8px}
.placeholder svg{width:26px;height:26px;color:#777870}
.product-copy{padding:14px;flex:1;display:flex;flex-direction:column}
.product-category{font-size:10px;font-weight:800;color:#555550;line-height:1.25}
.product h3{font-size:15px;line-height:1.28;margin:5px 0 12px;overflow-wrap:anywhere}
.product h3 a:hover,.details:hover,.back-link:hover{color:#bd0000}
.product-bottom{display:flex;justify-content:space-between;align-items:end;gap:4px;margin-top:auto}
.price{font-weight:800;font-size:clamp(16px,1.55vw,23px);white-space:nowrap;letter-spacing:-.04em}
.details{display:flex;align-items:center;min-height:29px;font-size:11px;text-decoration:underline;text-underline-offset:3px;color:#555550}
.add{height:42px;width:42px;flex:none;display:grid;place-items:center;background:#151515;border:0;color:white;transition:background .18s,transform .18s}
.add svg{width:19px;height:19px}
.add:hover{background:#c60000}
.add:active{transform:scale(.92)}
.empty{min-height:230px;text-align:center;padding:50px 12px;display:grid;justify-items:center;align-content:center;gap:12px}
.empty p{color:var(--muted)}
.secondary{background:white;border-color:var(--border)}
.secondary:hover{border-color:#b70000;color:#b70000}

.detail-page{padding-block:27px 72px}
.back-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13px;font-weight:800;margin-bottom:12px}
.detail{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(24px,6vw,96px)}
.detail-media{align-self:start;aspect-ratio:1.18;border:1px solid var(--border)}
.detail-media .placeholder{font-size:13px}
.detail-media .placeholder svg{width:44px;height:44px}
.detail-copy{padding-block:14px}
.detail-copy h1{font:800 clamp(47px,6vw,89px)/.92 var(--head);margin:10px 0 14px}
.detail-price{font-weight:800;letter-spacing:-.04em;font-size:clamp(28px,4vw,48px)}
.detail-price small{font-size:13px;letter-spacing:0;color:var(--muted)}
.description,.availability-note{color:var(--muted);line-height:1.55;margin-top:12px}
.availability-note{font-size:12px}
.buy-row{display:flex;align-items:end;gap:10px;margin-top:20px}
.qty-label{display:grid;gap:4px;font-size:11px;font-weight:800}
.qty-label input{height:48px;width:68px;border:1px solid var(--border);padding:9px;background:white}
.specs{margin:22px 0 0}
.specs>div{padding-block:10px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:14px;font-size:13px}
.specs dt{font-weight:800}
.specs dd{margin:0;text-align:right;color:var(--muted)}
.related{margin-top:56px}
.related h2{font-size:clamp(32px,4vw,54px);margin-bottom:17px}

footer{background:#101010;color:#f6f6f4;border-top:3px solid #d70000}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:88px;font-size:12px;font-weight:700}
.footer-inner .brand{width:98px}
.footer-inner svg{width:15px;height:15px}
.drawer{margin:0 0 0 auto;inset:0 0 0 auto;padding:0;width:min(100%,440px);height:100%;max-height:100%;max-width:100%;border:0;background:var(--surface);color:var(--ink)}
.drawer[open]{display:grid;grid-template-rows:auto 1fr auto;animation:drawer-in .24s ease-out}
.drawer::backdrop{background:#080808a0}
.drawer-header,.drawer-foot{padding:18px 22px;background:white}
.drawer-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}
.drawer-header h2{font:800 39px/1 var(--head);text-transform:uppercase}
.drawer-foot{border-top:1px solid var(--border);padding-bottom:max(19px,env(safe-area-inset-bottom))}
.drawer-foot p{font-size:12px;line-height:1.55;color:var(--muted);margin-top:10px}
.drawer-total{display:flex;justify-content:space-between;align-items:center;font-weight:800}
.drawer-total strong{font-size:22px}
.drawer-lines{overflow:auto;overscroll-behavior:contain;padding-inline:22px}
.cart-line{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:14px 0;border-bottom:1px solid var(--border)}
.cart-line h3{font-size:14px}
.cart-line p{font-size:11px;color:var(--muted);margin-top:3px}
.stepper{display:flex;align-items:center;gap:8px}
.stepper button{height:39px;width:39px;background:white;border:1px solid var(--border)}
.stepper svg{width:15px;height:15px}
.remove{background:none;border:0;text-decoration:underline;font-size:12px;min-height:40px;justify-self:end;padding-inline:3px}
.toast{position:fixed;z-index:6;right:18px;bottom:18px;max-width:calc(100% - 36px);border-left:4px solid #ed0000;padding:14px 16px;background:#171717;color:white;font-size:13px;font-weight:700;box-shadow:0 6px 24px #08080838;animation:enter .2s ease-out}
@keyframes enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes drawer-in{from{transform:translateX(100%)}to{transform:translateX(0)}}

@media(max-width:1050px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){
  :root{--header:61px}
  .shell{width:calc(100% - 32px)}
  .brand{width:105px}
  .header-actions{gap:2px}
  .menu-toggle{display:inline-flex}
  .nav{display:none;position:absolute;top:100%;left:-16px;right:-16px;background:#101010;border-top:1px solid #282828;padding:9px 16px;box-shadow:0 12px 25px #0003}
  .nav.open{display:grid;gap:0}
  .nav a{display:block;min-height:44px;padding:12px 5px}
  .hero-inner{min-height:0;padding-block:clamp(190px,48vw,315px) 25px;align-items:end}
  .hero-image{inset:0 0 auto;height:clamp(300px,68vw,460px)}
  .hero-image img{object-position:50% 48%}
  .hero::after{background:linear-gradient(0deg,#080808 14%,#080808 25%,#080808df 39%,#08080830 64%,transparent 79%),radial-gradient(ellipse at 95% 10%,#cf101037,transparent 59%)}
  .hero-copy{padding:0}
  .hero h1{font-size:clamp(62px,13vw,98px)}
  .hero p{font-size:13px;margin:16px 0;max-width:34ch}
  .precision{height:59px}
  .precision-photo{left:32%}
  .precision::after{background:linear-gradient(90deg,#080808 18%,transparent 68%)}
  .catalog{padding-block:29px 46px}
  .catalog-title{margin-bottom:15px}
  .categories{gap:5px;margin-bottom:12px}
  .category{min-height:56px;font-size:10px;gap:5px;padding:7px 5px}
  .category svg{width:15px;height:15px}
  .toolbar{gap:6px;margin-bottom:12px}
  .search{padding-inline:7px;gap:4px}
  .search input,.sort select{font-size:16px}
  .sort select{width:115px;min-width:0;padding-inline:5px;font-size:13px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .product-copy{padding:9px}
  .product h3{font-size:13px;margin-bottom:9px}
  .product-category{font-size:9px}
  .add{width:44px;height:44px}
  .detail-page{padding-block:14px 44px}
  .detail{grid-template-columns:1fr;gap:10px}
  .detail-media{aspect-ratio:1.35}
  .detail-copy{padding:6px 0 0}
  .qty-label input{font-size:16px}
  .related{margin-top:37px}
  .footer-inner>span{display:none}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.hero-image{mask-image:linear-gradient(90deg,transparent,#000 13%)}
.precision-photo{mask-image:linear-gradient(90deg,transparent,#000 23%)}
@media(max-width:720px){.hero-image{mask-image:linear-gradient(180deg,#000 62%,transparent)}}
@media(min-width:721px){.add{width:44px;height:44px}}
@media(max-width:365px){.price{font-size:15px}.categories .category:nth-child(2){gap:4px}}

/* X3 Moto Shop 2.0 */
:root{--surface:#f4f3ef;--border:#dcdad5;--header:74px}
.header{background:#101010;border-bottom-color:#ffffff24}
.hero{background:#0c0c0d}
.hero-inner{min-height:clamp(530px,42vw,670px);padding-block:45px 56px}
.hero-image{inset:0 0 0 20%;mask-image:linear-gradient(90deg,transparent,#000 19%);animation:studio-entry .9s ease-out both}
.hero-image img{object-position:70% 55%}
.hero::after{background:linear-gradient(90deg,#0c0c0d 0%,#0c0c0d 18%,#0c0c0ddb 27%,#0c0c0d28 48%,transparent 66%),linear-gradient(0deg,#0c0c0d 0%,transparent 19%)}
.hero-copy{padding-left:0}
.hero h1{font-size:clamp(78px,8.45vw,155px);line-height:.79;letter-spacing:-.025em}
.hero h1 em{color:#ff3b30}
.hero p{margin-block:28px 22px}
.primary{background:#c90000}
.precision{height:clamp(70px,9vw,117px);background:linear-gradient(103deg,#101012 0 48%,#151516 48% 100%)}
.precision-photo{left:38%;background-position:center 62%;opacity:1}
.precision::after{background:linear-gradient(90deg,#101012 31%,transparent 71%),linear-gradient(180deg,#0c0c0d 0%,transparent 45%)}
.precision-rule{background:linear-gradient(105deg,#f00000 0 13%,#5a1010 13% 24%,#2a2927 24% 100%)}
@keyframes studio-entry{from{opacity:.75;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}

.catalog{padding-block:48px 78px}
.catalog-title{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid #c9c7c0}
.catalog-title h2{font-size:clamp(46px,6.3vw,81px)}
.catalog-title p{font-size:12px}
.categories{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}
.category{min-height:43px;padding:7px 13px;border:1px solid #d4d1c9;background:transparent}
.category[aria-pressed="true"]{box-shadow:inset 0 -2px #dc0000}
.toolbar{margin-bottom:18px}
.search,.sort{background:#faf9f7}
.grid{gap:14px}
.product{border-color:transparent;background:#fbfaf8}
.product:hover{border-color:#c5c2bb;box-shadow:0 10px 24px #322c2011}
.product-media{background:#eae8e3;aspect-ratio:1.13}
.product-media img{object-fit:cover;transition:transform .27s ease}
.product-media:hover img{transform:scale(1.045)}
.product-copy{padding:14px 12px 12px}
.product-category{letter-spacing:.015em}
.product h3{font-size:16px}
.product .price{font-size:clamp(18px,1.75vw,26px)}
.product .details{margin-top:1px}
.add{background:#191919;border-radius:2px}
.product:hover .add{background:#ad0000}
.gallery{min-width:0}
.detail-media{aspect-ratio:1.12;background:#eae8e3;border:0}
.detail-media img{object-fit:contain}
.gallery-thumbs{display:flex;gap:8px;margin-top:9px}
.gallery-thumb{padding:0;width:70px;height:62px;overflow:hidden;display:grid;align-items:center;border:1px solid var(--border);background:#f1f0ed}
.gallery-thumb img{width:100%;height:100%;object-fit:contain}
.gallery-thumb[aria-pressed="true"]{border-color:#c60000;box-shadow:inset 0 -2px #c60000}
.detail-copy{padding-top:21px}
.drawer-header{border-top:4px solid #c90000}
.cart-item{display:flex;align-items:center;min-width:0;gap:10px}
.cart-media{display:grid;place-items:center;width:51px;height:51px;flex:none;background:#eae8e3;color:#6f6a61}
.cart-media img{width:100%;height:100%;object-fit:contain}
.cart-media .placeholder{font-size:0}
@media(max-width:720px){
 :root{--header:61px}
 .hero-inner{min-height:0;padding-block:clamp(218px,54vw,350px) 24px}
 .hero-image{inset:0 0 auto;height:clamp(295px,68vw,440px);mask-image:linear-gradient(180deg,#000 58%,transparent)}
 .hero-image img{object-position:70% 45%}
 .hero::after{background:linear-gradient(0deg,#0c0c0d 29%,#0c0c0d6b 56%,transparent 78%)}
 .hero h1{font-size:clamp(65px,13.6vw,104px)}
 .hero p{margin-block:15px}
 .precision{height:51px}
 .precision-photo{left:20%}
 .precision::after{background:linear-gradient(90deg,#101012 0%,transparent 73%)}
 .catalog{padding-block:29px 44px}
 .catalog-title{padding-bottom:12px;margin-bottom:11px}
 .categories{display:grid;gap:5px;margin-bottom:11px}
 .category{padding:6px 5px;min-height:48px}
 .toolbar{margin-bottom:10px}
 .grid{gap:8px}
 .product-copy{padding:9px 7px}
 .product h3{font-size:13px}
 .product .price{font-size:clamp(15px,4.3vw,21px)}
 .detail-media{aspect-ratio:1.25}
 .detail-copy{padding-top:10px}
}
.product-media,.detail-media{grid-template-rows:minmax(0,1fr)}
.product-media img,.detail-media img{min-height:0}
.hero h1{white-space:nowrap}
@media(max-width:365px){.hero h1{font-size:clamp(52px,19vw,62px)}}

/* X3 Racing */
:root{color-scheme:dark;--black:#090a0c;--dark:#15171b;--surface:#0e0f12;--ink:#fff;--red:#e02020;--muted:#b2b5bd;--border:#31343a;--header:72px}
body{background:var(--surface)}
.header{background:#0c0d10;border-bottom-color:#292b31}
.brand{background:none;padding:0;width:123px;filter:drop-shadow(0 0 1px #f4f4f4) drop-shadow(0 0 1px #bbb)}
.nav a{font-size:13px}
.mobile-dock{display:none}
.v3-hero{background:#090a0c}
.v3-hero .hero-inner{min-height:clamp(455px,40vw,640px);padding:43px 0 52px}
.v3-hero .hero-image{inset:0 0 0 43%;z-index:-2;mask-image:linear-gradient(90deg,transparent,#000 23%);transform:translateY(var(--drift,0px));animation:race-photo .8s ease-out both}
.v3-hero .hero-image img{height:calc(100% + 28px);margin-top:-14px;object-position:50% 45%}
.v3-hero::after{background:linear-gradient(90deg,#090a0c 25%,#090a0cba 44%,transparent 68%),linear-gradient(0deg,#090a0c 0%,transparent 27%)}
.v3-hero h1{white-space:normal;font-size:clamp(60px,7.75vw,140px);line-height:.83;letter-spacing:-.022em}
.v3-hero h1 em{color:#f33939}
.v3-hero .hero-copy{animation:race-copy .62s cubic-bezier(.2,.8,.25,1) both}
.v3-hero p{max-width:42ch;margin:16px 0 20px}
.race-line{width:120px;height:4px;background:#e02020;margin-top:20px;transform-origin:left;animation:race-line .63s .16s both}
@keyframes race-photo{from{opacity:.58;clip-path:inset(0 0 0 11%)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes race-copy{from{opacity:.65;transform:translateX(-14px)}to{opacity:1;transform:none}}
@keyframes race-line{from{transform:scaleX(.15)}to{transform:scaleX(1)}}
.primary{background:#ca1818}
.primary:hover{background:#ac1313}
.racing{border-block:1px solid #292b31;background:#15171b;overflow:hidden}
.racing-inner{position:relative;min-height:165px;display:flex;align-items:center;isolation:isolate}
.racing h2,.featured h2,.race-close h2{font:800 clamp(35px,5.2vw,76px)/.86 var(--head);letter-spacing:-.01em}
.racing h2 em{color:#ff5151;font-style:normal}
.racing img{position:absolute;z-index:-1;inset:0 0 0 auto;width:65%;height:100%;object-fit:cover;object-position:55% 49%;mask-image:linear-gradient(90deg,transparent,#000 42%);clip-path:polygon(13% 0,100% 0,100% 100%,0 100%)}
.catalog{padding-block:49px 54px}
.catalog-title{border-color:var(--border)}
.categories{display:flex}
.category{background:#17191d;border-color:var(--border);color:#f0f1f2}
.category[aria-pressed=true]{background:#272a31;border-color:#646974;box-shadow:inset 0 -2px #e02020}
.category svg{color:#ff5a5a}
.search,.sort{background:#17191d}
.search input::placeholder{color:#b6b8bf}
.product{background:#181a1f;border-color:#282b31}
.product:hover{border-color:#686d77;box-shadow:none}
.product-media,.detail-media,.gallery-thumb{background:#fafafa;border-color:#3e4148}
.product-media img{object-fit:contain}
.product-category,.details{color:#c9cbd1}
.product h3 a:hover,.details:hover,.back-link:hover{color:#ff6969}
.price{color:#fff}
.add,.stepper button{background:#272a31;color:#fff}
.product:hover .add{background:#b81515}
.secondary{background:#1f2126;border-color:#454951}
.secondary:hover{color:#ff7777;border-color:#ff7777}
.featured{padding-block:18px 58px}
.featured h2{margin-bottom:18px}
.race-close{min-height:330px;position:relative;display:flex;align-items:center;isolation:isolate;overflow:hidden}
.race-close img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.race-close::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#090a0cef,#090a0c20 80%)}
.race-close .primary{margin-top:20px}
footer{background:#090a0c;border-color:#bd1818}
.contact-info{display:grid;gap:3px}
.contact-info span{color:var(--muted)}
.contact-info a{text-decoration:underline}
.detail-copy{padding-top:12px}
.specs dd{color:var(--muted)}
.variant-label,.order-form>label{display:grid;gap:6px;font-size:13px;font-weight:800}
.variant-label{max-width:285px;margin-top:18px}
.variant-label select,.qty-label input,.order-form input:not([type=radio]),.order-form textarea{min-height:46px;background:#191b20;border:1px solid var(--border);padding:8px 11px}
.inquiry{margin-top:12px}
.drawer-header,.drawer-foot{background:#16181d}
.drawer-lines{min-height:0}
.drawer.ordering[open]{grid-template-rows:auto minmax(0,1fr)}
.order-start{margin-top:14px;width:100%}
.order-form{overflow:auto;padding:8px 22px max(24px,env(safe-area-inset-bottom));display:grid;align-content:start;gap:14px}
.order-form .back-link{justify-self:start;border:0;background:none;margin:0;padding:0}
.order-form fieldset{border:1px solid var(--border);display:flex;gap:20px;padding:10px;margin:0}
.order-form fieldset label{display:flex;align-items:center;gap:4px;min-height:30px}
.order-form input[type=radio]{accent-color:#e02020}
.shipping-info{font-size:13px;line-height:1.55;color:var(--muted)}
.order-total{border-top:1px solid var(--border);padding-top:13px;gap:8px}
.order-preview{white-space:pre-wrap;overflow-wrap:anywhere;background:#202229;padding:14px;margin:0;font-family:var(--body);line-height:1.55}
.cart-media{background:#fafafa}
:focus-visible{outline-color:#ff6c6c}
@media(max-width:720px){
 :root{--header:57px}
 body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}
 .header .header-actions{display:none}
 .header-inner{justify-content:center}
 .header .brand{width:98px}
 .mobile-dock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;z-index:5;inset:auto 0 0;background:#14161b;border-top:1px solid #3c3f49;padding:3px max(6px,env(safe-area-inset-right)) calc(3px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left))}
 .mobile-dock a,.mobile-dock button{display:grid;position:relative;place-items:center;align-content:center;gap:3px;min-height:52px;border:0;background:none;color:#e3e4e8;font-weight:800;font-size:10px}
 .mobile-dock svg{width:19px;height:19px}
 .mobile-dock .is-active{color:#ff6868}
 .mobile-dock b{position:absolute;top:3px;left:calc(50% + 8px);background:#bf1717;color:white;padding:2px 4px;border-radius:8px}
 .v3-hero .hero-inner{min-height:0;padding:clamp(211px,57vw,395px) 0 25px}
 .v3-hero .hero-image{inset:0 0 auto;height:clamp(280px,74vw,460px);transform:none;mask-image:linear-gradient(180deg,#000 65%,transparent)}
 .v3-hero .hero-image img{object-position:50% 36%}
 .v3-hero::after{background:linear-gradient(0deg,#090a0c 16%,#090a0c95 47%,transparent 66%)}
 .v3-hero h1{font-size:clamp(45px,12vw,82px);line-height:.86}
 .v3-hero p{margin-block:12px 16px}
 .race-line{margin-top:13px;width:86px}
 .racing-inner{min-height:103px}
 .racing img{width:76%}
 .catalog{padding-block:28px 32px}
 .featured{padding-block:10px 35px}
 .race-close{min-height:228px}
 .category{min-height:42px;padding-inline:9px}
 .contact-info{font-size:11px}
 .footer-inner .brand{width:77px}
 .toast{bottom:calc(68px + env(safe-area-inset-bottom))}
 .order-form input:not([type=radio]),.order-form textarea,.variant-label select{font-size:16px}
 .drawer{height:100dvh}
}
@media(prefers-reduced-motion:reduce){.v3-hero .hero-image,.v3-hero .hero-copy,.race-line{animation:none!important;transform:none!important}}
@media(min-width:721px){.v3-hero .hero-image img{object-position:50% 7%}}

.contact-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 18px}
.contact-links a{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-weight:800}
.contact-links a:hover{color:#ff6969}
.contact-links svg{width:20px;height:20px}
@media(max-width:720px){
 .footer-inner{flex-wrap:wrap;padding-block:12px}
 .contact-links{gap:3px 10px}
 .contact-links svg{width:17px;height:17px}
 .footer-catalog{display:none}
}

@font-face{font-family:Teko;src:url('/assets/teko.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--head:Teko,'Arial Narrow',Impact,sans-serif;--surface:#101114}
.header{background:#101114ed;backdrop-filter:blur(12px)}
.header .brand{animation:logo-in .68s cubic-bezier(.2,.76,.3,1) both}
@keyframes logo-in{from{opacity:.35;transform:translateX(-14px) skewX(-12deg)}to{opacity:1;transform:none}}
.v3-hero{isolation:isolate;overflow:hidden;background:#0b0c0e}
.v3-hero .hero-inner{min-height:clamp(520px,46vw,735px);position:relative;align-items:center;padding-block:35px 50px}
.v3-hero .hero-copy{animation:none}
.v3-hero .hero-image{inset:0 0 0 31%;mask-image:none;animation:none;transform:translate3d(0,var(--hero-y,0px),0)}
.v3-hero .hero-image img{height:100%;margin:0;object-position:58% 22%;animation:photo-in 1.25s cubic-bezier(.2,.76,.3,1) both}
.v3-hero::after{background:linear-gradient(90deg,#0b0c0e 23%,#0b0c0ee8 36%,#0b0c0e32 64%,transparent 90%),linear-gradient(0deg,#0b0c0e 2%,transparent 33%)}
.hero-stripe{position:absolute;z-index:0;pointer-events:none;inset:0;background:#d82128;opacity:.78;clip-path:polygon(94% 0,95% 0,72% 100%,71% 100%);transform:translateX(var(--stripe-x,0px))}
.v3-hero h1{font:700 clamp(83px,9.9vw,176px)/.70 var(--head);letter-spacing:-.022em}
.v3-hero h1 span{display:block;overflow:hidden;padding-top:.10em;padding-bottom:.035em}
.v3-hero h1 b{display:block;font-weight:700;animation:title-in .77s cubic-bezier(.13,.72,.24,1) both}
.v3-hero h1 span:nth-child(2) b{animation-delay:.10s}
.v3-hero h1 span:nth-child(3) b{animation-delay:.20s;color:#ff4149}
.v3-hero .hero-copy>p,.v3-hero .hero-copy>.primary{animation:rise-in .65s .34s both}
.v3-hero .race-line{margin-top:13px}
@keyframes title-in{from{transform:translate3d(0,95%,0) skewY(4deg)}to{transform:none}}
@keyframes photo-in{from{transform:scale(1.105);opacity:.5}to{transform:scale(1);opacity:1}}
@keyframes rise-in{from{opacity:.15;transform:translateY(12px)}to{opacity:1;transform:none}}
.racing{background:#17181c;overflow:hidden;border-top:3px solid #d82128}
.racing-inner{min-height:clamp(195px,23vw,330px)}
.racing h2{z-index:1;text-shadow:0 5px 24px #111;font:700 clamp(55px,8vw,115px)/.7 var(--head);transform:translateX(var(--race-text,0px))}
.racing img{width:80%;height:116%;top:-8%;object-position:55% 51%;mask-image:linear-gradient(90deg,transparent,#000 37%);transform:translate3d(0,var(--race-y,0px),0) scale(var(--race-scale,1.07))}
.catalog-title h2,.featured h2,.race-close h2{font-family:var(--head);font-weight:700}
.catalog-title h2{font-size:clamp(66px,9vw,126px);line-height:.8}
.catalog .grid,.featured .grid,.related .grid{gap:clamp(8px,1.2vw,18px)}
.product{background:#181a1e;border-color:#2e3036;position:relative;transition:border-color .25s,box-shadow .25s}
.product:hover{border-color:#746166;box-shadow:0 12px 28px #0004}
.product-media{aspect-ratio:1.12;border:0;background:#fff}
.product-media img{transition:transform .48s cubic-bezier(.18,.74,.28,1);max-height:100%}
.product-media:hover img{transform:scale(1.095)}
.product-copy{padding:13px}
.product-bottom{align-items:end}
.add{background:#282b31;border:1px solid #47474e}
.add:hover{background:#b91720;border-color:#eb4650}
.add:active,.primary:active{transform:scale(.94)}
.photo-demo{font-size:10px;color:#ffb4b6;margin-top:4px}
.demo-notice{border-left:3px solid #e52331;background:#262127;color:#ffe1e4;padding:11px 13px;margin:14px 0;line-height:1.5}
.detail-copy h1{font:700 clamp(56px,7.4vw,106px)/.78 var(--head);letter-spacing:-.012em}
.detail-media{aspect-ratio:1.15;border:1px solid #3c3d44;background:#fafafa}
.detail-page .gallery{animation:rise-in .58s both}
.detail-page .detail-copy{animation:rise-in .58s .11s both}
.gallery-thumb{transition:border-color .23s,transform .23s}
.gallery-thumb:hover{transform:translateY(-3px)}
html.motion [data-reveal]{--reveal-delay:0ms}
html.motion [data-reveal].awaiting{opacity:0;transform:translate3d(0,24px,0)}
html.motion [data-reveal].revealed{animation:section-in .59s var(--reveal-delay) backwards cubic-bezier(.16,.76,.31,1)}
@keyframes section-in{from{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:none}}
@media(max-width:720px){
 .v3-hero .hero-inner{min-height:0;padding:clamp(183px,53vw,325px) 0 27px}
 .v3-hero .hero-image{inset:0 0 auto;height:clamp(300px,79vw,510px)}
 .v3-hero .hero-image img{object-position:50% 14%}
 .v3-hero::after{background:linear-gradient(0deg,#0b0c0e 26%,#0b0c0ef0 37%,#0b0c0e4a 63%,transparent 86%)}
 .v3-hero h1{font-size:clamp(55px,15vw,105px)}
 .racing-inner{min-height:160px}
 .racing h2{font-size:clamp(48px,10vw,74px)}
 .racing img{width:86%}
 .product-copy{padding:9px 7px}
 .product .price{font-size:clamp(15px,4.15vw,21px)}
 .detail-copy h1{font-size:clamp(52px,11vw,77px)}
}
@media(prefers-reduced-motion:reduce){
 html.motion [data-reveal].awaiting{opacity:1;transform:none}
 .hero-stripe,.racing h2,.racing img,.v3-hero .hero-image{transform:none!important}
}
.v3-hero h1 span{padding-top:.19em;margin-top:-.08em}
@media(min-width:721px){
 .v3-hero h1{font-size:clamp(76px,8.1vw,150px)}
 .v3-hero .hero-image{left:42%}
}
@media(max-width:365px){.v3-hero h1{font-size:clamp(44px,15vw,55px)}}
@media(max-width:370px){.catalog-title h2{font-size:53px}.catalog-title{gap:7px}}

/* V3.1: separate transforms for the entry and first scroll. */
.header .brand,.v3-hero h1 b,.v3-hero .hero-image img,.v3-hero .hero-copy>p,.v3-hero .hero-copy>.primary,.v3-hero .race-line{animation:none}
.v3-hero .hero-copy{transform:translate3d(0,var(--intro-copy-y,0px),0)}
.v3-hero .hero-image{transform:translate3d(0,var(--hero-y,0px),0) scale(var(--intro-photo-scale,1));transform-origin:66% 45%}
.v3-hero h1{line-height:.74;letter-spacing:-.033em}
.intro-tracer{height:2px;width:min(40vw,300px);position:absolute;top:-22px;left:0;background:#e72e37;opacity:0;pointer-events:none}
.scroll-cue{display:inline-grid;place-items:center;width:48px;height:48px;vertical-align:middle;margin-left:10px;border:1px solid #fff5;background:#1115}
.scroll-cue:hover{border-color:#ff676d;color:#ff676d}
.scroll-cue svg{width:17px;height:17px}
.cinema-entry .header .brand{animation:logo-in .50s ease-out both}
.cinema-entry .intro-tracer{animation:tracer .64s ease-out both;transform-origin:left}
.cinema-entry .v3-hero .hero-image img{animation:entry-photo .82s .36s both cubic-bezier(.19,.69,.32,1)}
.cinema-entry .v3-hero h1 b{animation:title-in .58s .46s both cubic-bezier(.19,.69,.32,1)}
.cinema-entry .v3-hero h1 span:nth-child(2) b{animation-delay:.56s}
.cinema-entry .v3-hero h1 span:nth-child(3) b{animation-delay:.66s}
.cinema-entry .v3-hero .hero-copy>p{animation:rise-in .43s 1.12s both}
.cinema-entry .v3-hero .hero-copy>.primary{animation:rise-in .43s 1.24s both}
.cinema-entry .scroll-cue{animation:rise-in .40s 1.38s both}
@keyframes tracer{0%{opacity:0;transform:scaleX(.06)}35%{opacity:1}75%{opacity:.85;transform:scaleX(1)}100%{opacity:0;transform:scaleX(1)}}
@keyframes entry-photo{from{transform:scale(1.105);opacity:.72}to{transform:scale(1);opacity:1}}
.racing img{opacity:var(--race-entry,1)}
.product-media{aspect-ratio:1.19}
.product-copy{padding:15px 13px}
.product h3{line-height:1.22;letter-spacing:-.017em}
.product .price{letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.product .add,.buy-row .primary{transition:background .18s,border-color .18s,transform .18s}
.detail-copy h1{line-height:.87;margin-bottom:10px}
.detail-price{margin-bottom:8px}
.gallery-thumb[aria-pressed=true]{outline:1px solid #ff646b;outline-offset:2px}
.drawer[open]{animation-duration:.20s}
.drawer.leaving{pointer-events:none}
.mobile-dock a,.mobile-dock button{transition:color .2s,background .2s}
.mobile-dock svg{transition:transform .22s}
.mobile-dock .is-active svg{transform:translateY(-2px)}
.mobile-dock .is-active{background:#ed324312}
@media(max-width:720px){
 .product-media{aspect-ratio:1.17}
 .product-copy{padding:10px 8px}
 .detail-copy h1{line-height:.84}
 .keyboard-open .mobile-dock{visibility:hidden;pointer-events:none}
 .keyboard-open .drawer{height:var(--keyboard-height,100dvh)}
}
@view-transition{navigation:auto}
::view-transition-old(root){animation-duration:.14s}
::view-transition-new(root){animation-duration:.22s}
@media(prefers-reduced-motion:reduce){
 .v3-hero .hero-copy,.v3-hero .hero-image,.mobile-dock .is-active svg{transform:none!important}
 .racing img{opacity:1}
 @view-transition{navigation:none}
}
.drawer[open]{animation-name:cart-appear}
@keyframes cart-appear{from{opacity:.55}to{opacity:1}}

.shipping-banner{overflow:hidden;background:#090a0c;color:#fff;min-height:28px;display:flex;align-items:center;position:relative}
.shipping-track,.shipping-group{display:flex;flex:none;width:max-content}
.shipping-track{animation:shipping-marquee 64s linear infinite}
.shipping-group span{flex:none;padding-inline:20px;font-size:11px;font-weight:750;letter-spacing:.08em;white-space:nowrap}
.shipping-group b{color:#ff4848;margin-inline:7px}
@keyframes shipping-marquee{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){
 .shipping-banner{justify-content:center}
 .shipping-track{width:auto;animation:none}
 .shipping-group:not(:first-child),.shipping-group span:not(:first-child){display:none}
 .shipping-group span{padding-inline:4px;font-size:clamp(8px,2.7vw,11px)}
}
.wheelie{position:relative;aspect-ratio:5 / 3;background:#0c151e;overflow:hidden}
.wheelie-picture{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom}
.wheelie-entry .wheelie-picture{animation:wheelie-photo .6s ease-out both}
@keyframes wheelie-photo{from{opacity:.78}to{opacity:1}}
@keyframes wheelie-mark{from{opacity:.25;clip-path:inset(0 80% 0 0)}to{opacity:1;clip-path:inset(0 -4%)}}
.wheelie-catalog{background:#f7f7f5;color:#191a1e;color-scheme:light;border-top:3px solid #e02020}
.wheelie-catalog .catalog-title{border-color:#d4d4d0}
.wheelie-catalog .catalog-title p,.wheelie-catalog .product-category,.wheelie-catalog .details,.wheelie-catalog .empty p{color:#54555a}
.wheelie-catalog .category,.wheelie-catalog .search,.wheelie-catalog .sort{background:white;color:#202128;border-color:#d3d3d9}
.wheelie-catalog .search input::placeholder{color:#555760}
.wheelie-catalog .category[aria-pressed=true]{background:#191a1f;color:white;border-color:#191a1f}
.wheelie-catalog .product{background:white;border-color:#dddde0}
.wheelie-catalog .product .price{color:#17181d}
.wheelie-catalog .photo-demo{color:#9c252c}
@media(max-width:720px){.wheelie{aspect-ratio:1536 / 1097}}
@media(max-width:720px) and (prefers-reduced-motion:no-preference){
 .wheelie-entry .header .brand{animation:wheelie-mark .55s .08s both}
}
