/* ============================================================================
   Japan Bike Market — hero.css
   Luxury showcase full-bleed hero (stable height — no abspos collapse)
   ============================================================================ */
.hero--lukas{
  position:relative;
  height:min(88svh,820px);
  min-height:520px;
  background:#0a0a0a;
  overflow:hidden;
}
.hero-swiper{
  position:relative;
  width:100%;
  height:100%;
  z-index:1;
}
.hero-swiper .swiper-wrapper{
  width:100%;
  height:100%;
}
.hero-swiper .swiper-slide{
  position:relative;
  width:100% !important;
  height:100% !important;
  flex-shrink:0;
  overflow:hidden;
  box-sizing:border-box;
  background:#111;
}
.hero-slide__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  background:#1a1a1a;
}
.hero-slide__shade{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.45) 42%, rgba(0,0,0,.15) 70%, transparent 100%),
    linear-gradient(180deg, rgba(0,0,0,.25) 0%, transparent 40%, rgba(0,0,0,.45) 100%);
}
.hero-slide__copy{
  position:absolute;
  left:max(1.2rem, calc((100% - var(--container)) / 2));
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  color:#fff;
  max-width:min(34rem, 88vw);
  padding-right:1rem;
}
.hero-slide__eyebrow{
  display:block;
  font-family:var(--font-sans);
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--amber);
  margin-bottom:1rem;
}
.hero-slide__title{
  margin:0;
  font-family:var(--font-sans);
  font-size:clamp(2.2rem, 5.8vw, 4.4rem);
  font-weight:800;
  line-height:1.05;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#fff;
}
.hero-slide__jp{
  margin:1.1rem 0 1.8rem;
  font-size:1.02rem;
  line-height:1.7;
  color:rgba(255,255,255,.78);
  max-width:34ch;
}
.hero-swiper__pag{
  bottom:1.6rem !important;
  left:max(1.2rem, calc((100% - var(--container)) / 2)) !important;
  right:auto !important;
  width:auto !important;
  z-index:4;
  text-align:left;
}
.hero-swiper__pag .swiper-pagination-bullet{
  width:28px; height:3px; border-radius:2px;
  background:#fff; opacity:.35; margin:0 4px !important;
}
.hero-swiper__pag .swiper-pagination-bullet-active{
  opacity:1; background:var(--amber);
}

@media (max-width:900px){
  .hero--lukas{ height:min(58svh,520px); min-height:360px; }
  .hero-slide__copy{ top:auto; bottom:14%; transform:none; left:1rem; right:1rem; max-width:none; }
  .hero-slide__title{ font-size:clamp(1.7rem, 7.5vw, 2.6rem); }
  .hero-slide__jp{ display:none; }
}
@media (max-width:560px){
  .hero--lukas{ height:min(52svh,460px); min-height:320px; }
  .hero-slide__copy{ bottom:12%; }
}
