/* Homepage racing banners. All product photographs are real local catalogue assets. */
body[data-page="home"] .ride-hero + .proof-strip { margin-top: 0; }
body[data-page="home"] .ride-hero { position: relative; overflow: hidden; color: #fff; background: #131416; isolation: isolate; }
.ride-hero__slides, .ride-hero__inner { height: 530px; }
.ride-hero__slide { --hero-accent: #ed252c; --hero-glow: #ff8954; position: relative; overflow: hidden; height: 100%; background: #141517; }
.ride-hero__slide[hidden] { display: none !important; }
.ride-hero__slide--gear { --hero-accent: #d94823; --hero-glow: #ffb46b; }
.ride-hero__slide--luggage { --hero-accent: #c78c32; --hero-glow: #ffd393; }
.ride-hero__slide--intercoms { --hero-accent: #1683a6; --hero-glow: #9be3e7; }
.ride-hero__slide::before { content: ""; position: absolute; inset: 0; background: linear-gradient(116deg,transparent 49%,var(--hero-accent) 49.1%,var(--hero-accent) 62%,transparent 62.1%),linear-gradient(116deg,transparent 70%,#25272a 70.1%,#25272a 91%,var(--hero-accent) 91.1%); opacity: .95; }
.ride-hero__slide::after { content: ""; pointer-events: none; position: absolute; inset: 0; background: repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 4px),linear-gradient(90deg,rgba(0,0,0,.15),transparent 70%); }
.ride-hero__inner { position: relative; z-index: 1; display: grid; grid-template-columns: 43% 57%; gap: 0; align-items: center; }
.ride-hero .ride-hero__copy { position: relative; z-index: 5; max-width: 560px; padding: 37px 0 87px; }
.ride-hero .ride-hero__eyebrow { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; color: #f3f3f3; font: 700 11px/1.5 var(--body); letter-spacing: .17em; text-transform: uppercase; }
.ride-hero__eyebrow > span { color: #ff9a70; letter-spacing: .08em; }
.ride-hero .ride-hero__copy h1, .ride-hero .ride-hero__copy h2 { margin: 0 0 20px; color: #fff; font: 800 clamp(62px,6.4vw,92px)/.91 var(--display); letter-spacing: -.012em; text-transform: uppercase; }
.ride-hero .ride-hero__copy p { max-width: 370px; margin: 0 0 27px; color: #d1d2d4; font: 400 14px/1.7 var(--body); }
.ride-hero .ride-hero__cta { display: inline-flex; min-height: 48px; gap: 25px; align-items: center; padding: 13px 24px; border: 0; border-radius: 2px; color: #17191c; background: #fff; box-shadow: none; font: 700 13px/1.4 var(--body); }
.ride-hero .ride-hero__cta:hover { color: #fff; background: var(--hero-accent); }
.ride-hero .ride-hero__cta:focus-visible { outline: 3px solid #ffb17e; outline-offset: 5px; }
.ride-hero__visual { position: relative; isolation: isolate; width: 112%; height: 480px; margin-left: -4%; align-self: start; }
.ride-hero__visual::before { content: ""; position: absolute; z-index: -2; inset: 5% -12% -8% -7%; background: radial-gradient(ellipse at 56% 55%,var(--hero-glow) 0,transparent 55%); opacity: .55; }
.ride-hero__visual::after { content: ""; position: absolute; z-index: -3; inset: 12% -12% 1% 6%; border-block: 1px solid rgba(255,255,255,.22); transform: skew(-25deg); background: linear-gradient(120deg,rgba(0,0,0,.08),rgba(0,0,0,.48)); }
.ride-hero__visual--light { clip-path: polygon(12% 0,100% 0,100% 100%,0 100%); }
.ride-hero__visual--light::after { z-index: -1; inset: 0; border: 0; transform: none; background: radial-gradient(ellipse at 56% 44%,#e0dacd 0,#d4d5d3 70%,#c9cccd 100%); }
.ride-hero__graphic-word { position: absolute; z-index: 0; top: 18px; left: 1%; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.28); font: 800 clamp(88px,10.3vw,152px)/1 var(--display); letter-spacing: .02em; white-space: nowrap; transform: skew(-9deg); }
.ride-hero__visual--light .ride-hero__graphic-word { z-index: 0; top: 27px; left: 17%; -webkit-text-stroke-color: rgba(36,38,40,.15); }
.ride-hero__product { position: absolute; display: block; object-fit: contain; width: 100%; max-width: none; height: 100%; border: 0; border-radius: 0; box-shadow: none; background: transparent; filter: drop-shadow(0 20px 16px rgba(0,0,0,.3)); }
.ride-hero__product--main { z-index: 3; width: 58%; height: 80%; left: 24%; top: 18%; transform: rotate(-8deg); }
.ride-hero__product--left { z-index: 1; width: 41%; height: 59%; left: -3%; top: 31%; transform: rotate(-14deg); }
.ride-hero__product--right { z-index: 2; width: 40%; height: 63%; right: -2%; top: 2%; transform: rotate(10deg); }
.ride-hero__visual--light .ride-hero__product { mix-blend-mode: darken; filter: none; }
.ride-hero__slide--gear .ride-hero__product--main { width: 55%; height: 85%; left: 22%; top: 7%; transform: rotate(-4deg); }
.ride-hero__slide--gear .ride-hero__product--left { width: 36%; height: 53%; left: 1%; top: 41%; transform: rotate(-17deg); }
.ride-hero__slide--gear .ride-hero__product--right { width: 34%; height: 83%; right: -2%; top: 8%; transform: rotate(9deg); }
.ride-hero__slide--luggage .ride-hero__product--main { width: 57%; height: 78%; left: 25%; top: 19%; transform: rotate(-6deg); }
.ride-hero__slide--luggage .ride-hero__product--left { width: 41%; height: 60%; left: 2%; top: 32%; transform: rotate(-12deg); }
.ride-hero__slide--luggage .ride-hero__product--right { width: 40%; height: 59%; right: -4%; top: 5%; transform: rotate(7deg); }
.ride-hero__slide--intercoms .ride-hero__product--main { width: 58%; height: 78%; left: 24%; top: 19%; transform: rotate(-10deg); }
.ride-hero__slide--intercoms .ride-hero__product--left { width: 40%; height: 54%; left: -3%; top: 38%; transform: rotate(-15deg); }
.ride-hero__slide--intercoms .ride-hero__product--right { width: 39%; height: 58%; right: -3%; top: 4%; transform: rotate(10deg); }
.ride-hero__art-label { position: absolute; z-index: 4; right: 3%; bottom: 6px; color: #d7d9da; font: 600 9px/1.5 var(--body); letter-spacing: .17em; text-transform: uppercase; }
.ride-hero__art-label b { margin-inline: 8px; color: var(--hero-glow); }
.ride-hero__visual--light .ride-hero__art-label { right: 4%; bottom: 11px; color: #343638; }
.ride-hero__visual--light .ride-hero__art-label b { color: #a33d1c; }
.ride-hero__controls { position: absolute; z-index: 6; left: 50%; bottom: 20px; transform: translateX(-50%); display: flex; align-items: center; gap: 16px; height: 44px; }
.ride-hero__controls[hidden] { display: none; }
.ride-hero__arrows, .ride-hero__dots { display: flex; align-items: center; gap: 6px; }
.ride-hero__controls button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-width: 44px; width: 44px; height: 44px; padding: 0; color: #fff; background: rgba(13,14,16,.35); border: 1px solid rgba(255,255,255,.3); border-radius: 50%; cursor: pointer; }
.ride-hero__controls button:hover { background: rgba(255,255,255,.16); border-color: #fff; }
.ride-hero__controls button:focus-visible { outline: 2px solid #ffab78; outline-offset: 3px; }
.ride-hero__controls .ride-hero__dots button { position: relative; min-width: 28px; width: 28px; border: 0; border-radius: 0; background: transparent; }
.ride-hero__dots button::after { content: ""; width: 18px; height: 3px; background: #fff; opacity: .3; transition: opacity .2s; }
.ride-hero__dots button[aria-pressed="true"]::after { opacity: 1; background: #ff986a; }
.ride-hero__collection-count { display: flex; align-items: baseline; gap: 10px; margin-left: auto; color: rgba(255,255,255,.55); font: 500 11px/1 var(--body); letter-spacing: .1em; }
.ride-hero__collection-count b { color: #fff; font: 700 26px/1 var(--display); }
@media (min-width:1600px) { .ride-hero__slides,.ride-hero__inner { height:560px; } .ride-hero__visual { height:510px; } }
@media (min-width:621px) and (max-width:1000px) {
  .ride-hero__slides,.ride-hero__inner { height:500px; }
  .ride-hero__inner { grid-template-columns:44% 56%; }
  .ride-hero .ride-hero__copy h1,.ride-hero .ride-hero__copy h2 { font-size:clamp(54px,7.4vw,72px); }
  .ride-hero .ride-hero__copy p { max-width:300px; font-size:13px; }
  .ride-hero .ride-hero__eyebrow { font-size:9px; letter-spacing:.12em; }
  .ride-hero__visual { width:100%; height:420px; align-self:center; margin-left:0; margin-top:-40px; }
  .ride-hero__slide .ride-hero__product--right { right:2%; }
  .ride-hero__graphic-word { font-size:100px; top:10px; }
  .ride-hero__art-label { font-size:7px; letter-spacing:.12em; right:8%; }
}
@media (max-width:620px) {
  .ride-hero__slides,.ride-hero__inner { height:680px; }
  .ride-hero__slide::before { background:linear-gradient(114deg,transparent 39%,var(--hero-accent) 39.2%,var(--hero-accent) 61%,transparent 61.2%),linear-gradient(114deg,transparent 78%,#2c2d30 78.2%,#2c2d30 92%,var(--hero-accent) 92.2%); }
  .ride-hero__slide::after { background:repeating-linear-gradient(135deg,rgba(255,255,255,.023) 0 1px,transparent 1px 4px),linear-gradient(#131416 0,rgba(19,20,22,.96) 29%,transparent 57%); }
  .ride-hero__inner { display:block; }
  .ride-hero .ride-hero__copy { width:100%; max-width:none; padding:28px 0 0; }
  .ride-hero .ride-hero__eyebrow { gap:8px; margin-bottom:15px; font-size:9px; letter-spacing:.12em; }
  .ride-hero .ride-hero__copy h1,.ride-hero .ride-hero__copy h2 { margin-bottom:16px; font-size:clamp(50px,14.3vw,64px); line-height:.92; }
  .ride-hero .ride-hero__copy p { max-width:340px; margin-bottom:19px; color:#d1d2d4; font-size:12px; line-height:1.6; }
  .ride-hero .ride-hero__cta { min-height:44px; padding:11px 18px; gap:20px; font-size:12px; }
  .ride-hero__visual { position:absolute; width:calc(100% + 30px); height:296px; left:-15px; bottom:77px; margin:0; }
  .ride-hero__visual::before { inset:-10% -15% -5%; }
  .ride-hero__visual::after { inset:10% -20% 0 7%; }
  .ride-hero__visual--light::after { inset:0; }
  .ride-hero__graphic-word { top:3px; left:0; font-size:80px; }
  .ride-hero__visual--light .ride-hero__graphic-word { top:17px; left:14%; font-size:72px; }
  .ride-hero__product--main { width:61%; height:82%; left:22%; top:17%; }
  .ride-hero__product--left { width:41%; left:-2%; top:32%; }
  .ride-hero__product--right { width:41%; right:-1%; top:2%; }
  .ride-hero__slide--gear .ride-hero__product--main { width:58%; left:20%; height:87%; top:7%; }
  .ride-hero__slide--gear .ride-hero__product--left { width:37%; left:3%; height:54%; top:39%; }
  .ride-hero__slide--gear .ride-hero__product--right { right:-2%; width:35%; height:83%; top:7%; }
  .ride-hero__slide--luggage .ride-hero__product--left { left:5%; width:41%; }
  .ride-hero__slide--luggage .ride-hero__product--right { right:-2%; width:42%; }
  .ride-hero__slide--intercoms .ride-hero__product--left { left:-3%; width:42%; }
  .ride-hero__slide--intercoms .ride-hero__product--right { right:-2%; width:42%; }
  .ride-hero__art-label,.ride-hero__visual--light .ride-hero__art-label { right:8%; bottom:1px; font-size:7px; letter-spacing:.11em; }
  .ride-hero__controls { bottom:18px; gap:8px; }
  .ride-hero__arrows { gap:5px; }
  .ride-hero__dots { gap:0; }
  .ride-hero__controls .ride-hero__dots button { min-width:26px; width:26px; }
  .ride-hero__collection-count { display:none; }
}
@media (max-width:359px) {
  .ride-hero .ride-hero__copy h1,.ride-hero .ride-hero__copy h2 { font-size:50px; }
  .ride-hero .ride-hero__eyebrow { font-size:8px; }
  .ride-hero__visual { height:265px; bottom:86px; }
  .ride-hero__graphic-word { font-size:68px; }
  .ride-hero__visual--light .ride-hero__graphic-word { font-size:60px; }
  .ride-hero__controls { gap:4px; }
  .ride-hero__arrows { gap:4px; }
  .ride-hero__controls .ride-hero__dots button { min-width:24px; width:24px; }
  .ride-hero__dots button::after { width:15px; }
}
@media (prefers-reduced-motion:no-preference) { .ride-hero__slide.is-active .ride-hero__copy { animation:ride-hero-enter .35s ease-out; } @keyframes ride-hero-enter { from { opacity:.6;transform:translateY(8px); } to { opacity:1;transform:translateY(0); } } }

/* All four slides share the dark graphic stage; product photographs retain real transparency. */
.ride-hero__slide--gear .ride-hero__visual, .ride-hero__slide--luggage .ride-hero__visual { clip-path:none; }
.ride-hero__slide--gear .ride-hero__product, .ride-hero__slide--luggage .ride-hero__product { mix-blend-mode:normal; }
