body.bikes-page{
  background:var(--bg);
}

.bikes-main{
  padding-bottom:30px;
}

.bikes-hero{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  gap:22px;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  border-color:rgba(255,255,255,0.44);
  background:
    radial-gradient(120% 180% at 8% -6%, rgba(255,255,255,0.42) 0%, rgba(255,255,255,0) 56%),
    linear-gradient(138deg, rgba(255,255,255,0.30) 0%, rgba(246,248,251,0.16) 48%, rgba(255,255,255,0.24) 100%);
  backdrop-filter:blur(22px) saturate(165%);
  -webkit-backdrop-filter:blur(22px) saturate(165%);
  box-shadow:0 20px 46px rgba(17,19,24,0.10);
}

.bikes-hero::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(112deg, rgba(255,255,255,0.24) 0%, rgba(255,255,255,0.10) 32%, rgba(255,255,255,0.02) 60%);
  pointer-events:none;
  z-index:0;
}

.bikes-hero__copy{
  position:relative;
  z-index:1;
  border:1px solid rgba(255,255,255,0.46);
  border-radius:18px;
  background:linear-gradient(156deg, rgba(255,255,255,0.36) 0%, rgba(255,255,255,0.22) 100%);
  backdrop-filter:blur(24px) saturate(160%);
  -webkit-backdrop-filter:blur(24px) saturate(160%);
  box-shadow:
    0 16px 36px rgba(17,19,24,0.10),
    inset 0 1px 0 rgba(255,255,255,0.54);
  padding:24px 18px;
}

.bikes-hero__copy p{
  max-width:56ch;
}

.bikes-hero__visual{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
  align-items:start;
}

.bikes-shot{
  margin:0;
  aspect-ratio:3 / 4;
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.44);
  box-shadow:0 18px 34px rgba(0,0,0,0.12);
  background:linear-gradient(155deg, rgba(255,255,255,0.30) 0%, rgba(255,255,255,0.16) 100%);
}

.bikes-shot img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.bikes-shot[data-scroll-parallax] img{
  transform:translate3d(0, var(--scroll-parallax-y, 0px), 0) scale(var(--scroll-parallax-scale, 1.1));
  transition:transform 220ms linear;
  will-change:transform;
}

.bikes-shot--b,
.bikes-shot--d{
  margin-top:38px;
}

.bikes-hero::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.60),
    inset 0 -1px 0 rgba(255,255,255,0.24);
  pointer-events:none;
  z-index:0;
}

.bikes-nav-section .page-section__head p{
  margin-top:8px;
}

.bikes-brand-jump{
  margin-top:16px;
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:2px 2px 6px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}

.bikes-brand-jump::-webkit-scrollbar{
  display:none;
}

.bikes-brand-jump__item{
  flex:0 0 auto;
  min-height:44px;
  min-width:96px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(17,19,24,0.12);
  background:rgba(255,255,255,0.52);
  color:#111318;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  white-space:nowrap;
}

.bikes-brand-jump__item img{
  width:72px;
  height:24px;
  object-fit:contain;
}

.bikes-brand-jump__fallback{
  font-size:13px;
  line-height:1.1;
}

.bike-brand-section{
  position:relative;
  overflow:hidden;
  scroll-margin-top:calc(var(--nav-h) + env(safe-area-inset-top) + 14px);
  border-color:rgba(17,19,24,0.10);
  background:
    radial-gradient(120% 180% at 8% 0%, rgba(255,255,255,0.28) 0%, rgba(255,255,255,0) 62%),
    linear-gradient(150deg, rgba(255,255,255,0.38) 0%, rgba(255,255,255,0.22) 100%);
}

.bike-brand-section__head{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  flex-wrap:nowrap;
  gap:12px;
  margin-bottom:16px;
}

.bike-brand-section__identity{
  display:flex;
  align-items:center;
  gap:12px;
  flex:1 1 auto;
  min-width:0;
}

.bike-brand-section__logo{
  width:132px;
  height:50px;
  object-fit:contain;
}

.bike-brand-section__identity h2{
  margin:0;
  font-size:clamp(27px, 4.1vw, 38px);
  line-height:1.1;
}

.bike-brand-section__title-sr{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0, 0, 0, 0);
  white-space:nowrap;
  border:0;
}

.bike-brand-section__meta{
  display:flex;
  align-items:center;
  gap:10px;
  margin-left:auto;
  flex:0 0 auto;
}

.bike-brand-section__discover{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border-radius:999px;
  -webkit-tap-highlight-color:transparent;
  transition:transform 180ms ease, opacity 180ms ease;
}

.bike-brand-section__discover img{
  width:30px;
  height:30px;
  display:block;
  object-fit:contain;
}

.bike-brand-section__discover:hover{
  transform:translateY(-1px);
  opacity:0.9;
}

.bike-brand-section__discover:focus-visible{
  outline:2px solid rgba(17,19,24,0.24);
  outline-offset:3px;
}

.bike-model-grid{
  position:relative;
  z-index:1;
  margin-top:0;
}

.bike-model-card{
  display:flex;
  flex-direction:column;
  padding:0;
  overflow:hidden;
  border-color:rgba(17,19,24,0.14);
  background:rgba(255,255,255,0.58);
}

.bike-model-card__media{
  margin:0;
  height:240px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg, rgba(255,255,255,0.86) 0%, rgba(241,246,252,0.86) 100%);
  border-bottom:1px solid rgba(17,19,24,0.10);
}

.bike-model-card__media img{
  width:92%;
  max-width:420px;
  height:100%;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 12px 22px rgba(0,0,0,0.24));
}

.bike-model-card__placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  color:rgba(17,19,24,0.50);
  font-weight:700;
  letter-spacing:0.07em;
  text-transform:uppercase;
  font-size:12px;
}

.bike-model-card__body{
  display:flex;
  flex-direction:column;
  gap:0;
  padding:16px;
  min-height:250px;
}

.bike-model-card h3{
  margin:0;
  font-size:22px;
  line-height:1.15;
}

.bike-model-card__headline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.bike-model-card__headline h3{
  flex:1 1 auto;
  min-width:0;
}

.bike-model-card p{
  margin-top:10px;
}

.bike-model-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.bike-badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid rgba(17,19,24,0.16);
  background: rgba(17,19,24,0.08);
  color: #111318;
  font-size: 12px;
  font-weight: 700;
}

.bike-badge.is-muted {
  background: rgba(139,16,40,0.10);
  border-color: rgba(139,16,40,0.28);
  color: #8b1028;
}

.bike-model-card__price {
  flex:0 0 auto;
  margin-left:auto;
  margin-top:1px;
  padding:6px 11px;
  border-radius:999px;
  border:1px solid rgba(17,19,24,0.12);
  background:rgba(17,19,24,0.04);
  color:rgba(17,19,24,0.72);
  font-size:16px;
  line-height:1.1;
  font-weight:600;
  letter-spacing:-0.005em;
  white-space:nowrap;
  text-decoration:none;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

.bike-model-card__price:hover,
.bike-model-card__price:focus-visible{
  background:rgba(17,19,24,0.08);
  border-color:rgba(17,19,24,0.18);
  color:rgba(17,19,24,0.86);
  transform:translateY(-1px);
}

.bike-model-card__price:focus-visible{
  outline:2px solid rgba(17,19,24,0.24);
  outline-offset:2px;
}

.bike-model-card__actions{
  margin-top:auto;
  padding-top:14px;
  gap:10px;
}

.bike-model-card__actions .cta-primary,
.bike-model-card__actions .cta-secondary{
  width:100%;
  white-space:nowrap;
  font-size:16px;
  line-height:1;
}

.bike-model-card__actions .cta-primary.is-disabled {
  pointer-events: none;
  opacity: 0.56;
}

.bike-model-card__actions .cta-primary::after,
.bike-model-card__actions .cta-secondary::after{
  white-space:nowrap;
}

.bikes-highlight{
  border-color:rgba(17,19,24,0.12);
}

@media (min-width: 1025px){
  .bikes-hero{
    grid-template-columns:minmax(0, 1.02fr) minmax(0, 0.98fr);
    gap:26px;
  }

  .bikes-hero__copy{
    padding:28px 24px;
  }
}

@media (min-width: 1025px){
  .bike-model-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .bike-model-card__actions{
    display:grid;
    grid-template-columns:minmax(0, 0.92fr) minmax(0, 1.08fr);
  }
}

@media (min-width: 1100px){
  .bike-model-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1024px){
  .bikes-brand-jump__item{
    min-height:40px;
    padding:7px 12px;
    font-size:14px;
  }

  .bike-brand-section__logo{
    width:110px;
    height:42px;
  }

  .bike-brand-section__discover img{
    width:24px;
    height:24px;
  }

  .bike-model-card__media{
    height:210px;
  }

  .bike-model-card__media img{
    filter:none;
  }

  .bike-model-card__body{
    min-height:230px;
  }

  .bike-model-card__price{
    padding:6px 10px;
    font-size:15px;
  }
}
