/* JPJ Inventory Core v0.9.4.5 — Desktop Frozen + Mobile Car-Up / Dead-Space Reduction */
.jpj-premium-home-hero{
  --jpj-hero-navy:#041528;
  --jpj-hero-deep:#02101f;
  --jpj-hero-red:#ef2437;
  --jpj-hero-gold:#f1b54a;
  position:relative;
  width:100%;
  min-height:calc(100svh - 72px);
  max-height:760px;
  overflow:hidden;
  isolation:isolate;
  background-color:var(--jpj-hero-deep);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
.jpj-premium-home-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(90deg,
    rgba(2,16,34,.96) 0%,
    rgba(2,16,34,.93) 18%,
    rgba(2,16,34,.84) 31%,
    rgba(2,16,34,.66) 43%,
    rgba(2,16,34,.34) 54%,
    rgba(2,16,34,.08) 64%,
    rgba(2,16,34,0) 72%);
}
.jpj-premium-home-hero *{box-sizing:border-box}
.jpj-premium-home-hero__inner{
  position:relative;
  z-index:1;
  width:min(100%,1680px);
  min-height:inherit;
  margin:0 auto;
  padding:66px 72px 38px;
  display:flex;
  align-items:center;
}
.jpj-premium-home-hero__content{
  width:min(54%,760px);
  color:#fff;
}
.jpj-premium-home-hero__eyebrow{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 20px;
  color:var(--jpj-hero-red);
  font:800 16px/1.2 Arial,Helvetica,sans-serif;
  letter-spacing:.015em;
  opacity:0;
  transform:translateY(-16px);
  animation:jpjHeroSlideDown .8s ease .15s forwards;
}
.jpj-premium-home-hero__slashes{
  font-size:26px;
  line-height:1;
  letter-spacing:-4px;
}
.jpj-premium-home-hero__headline{
  margin:0 0 18px!important;
  color:#fff!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:700!important;
  line-height:.94!important;
  letter-spacing:-.03em!important;
}
.jpj-premium-home-hero__line{
  display:block;
  opacity:0;
  transform:translateY(20px);
}
.jpj-premium-home-hero__line--white,
.jpj-premium-home-hero__line--red{
  font-size:clamp(48px,4.65vw,76px);
}
.jpj-premium-home-hero__line--white{
  color:#fff;
  animation:jpjHeroFadeUp .9s cubic-bezier(.2,.8,.2,1) .35s forwards;
}
.jpj-premium-home-hero__line--red{
  color:var(--jpj-hero-red);
  animation:jpjHeroFadeUp .9s cubic-bezier(.2,.8,.2,1) .55s forwards;
}
.jpj-premium-home-hero__type-wrap{
  display:inline-block;
  min-width:8.8ch;
  vertical-align:baseline;
}
.jpj-premium-home-hero__type{
  display:inline-block;
  overflow:hidden;
  white-space:nowrap;
  width:0ch;
  color:var(--jpj-hero-gold);
  border-right:3px solid rgba(241,181,74,.96);
  padding-right:4px;
  text-shadow:0 0 20px rgba(241,181,74,.18);
  animation:jpjHeroBlink .8s step-end infinite;
}
/* v0.9.4.1 deliberately removes the paragraph sub-copy to keep the entire hero above the fold. */
.jpj-premium-home-hero__sub{display:none!important}
.jpj-premium-home-hero__gold-line{
  width:64px;
  height:2px;
  margin:20px 0 26px;
  background:var(--jpj-hero-gold);
  opacity:0;
  transform:scaleX(.2);
  transform-origin:left center;
  animation:jpjHeroLineGrow .7s ease .78s forwards;
}
.jpj-premium-home-hero__actions{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
  margin:0 0 28px;
  opacity:0;
  transform:translateY(18px);
  animation:jpjHeroFadeUp .85s ease .9s forwards;
}
.jpj-premium-home-hero__button{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-width:258px;
  height:62px;
  padding:0 24px;
  border-radius:8px;
  font:800 17px/1 Arial,Helvetica,sans-serif!important;
  text-decoration:none!important;
  transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease;
}
.jpj-premium-home-hero__button:hover{transform:translateY(-2px)}
.jpj-premium-home-hero__button--primary{
  color:#fff!important;
  background:var(--jpj-hero-red);
  border:2px solid var(--jpj-hero-red);
  box-shadow:0 10px 26px rgba(239,36,55,.18);
}
.jpj-premium-home-hero__button--primary:hover{background:#d91f31}
.jpj-premium-home-hero__button--secondary{
  color:var(--jpj-hero-red)!important;
  background:rgba(255,255,255,.96);
  border:2px solid var(--jpj-hero-red);
  box-shadow:0 10px 24px rgba(2,16,34,.14);
}
.jpj-premium-home-hero__button svg{width:23px;height:23px;flex:0 0 auto;fill:currentColor}
.jpj-premium-home-hero__meta{
  display:flex;
  align-items:center;
  gap:26px;
  flex-wrap:wrap;
  opacity:0;
  transform:translateY(18px);
  animation:jpjHeroFadeUp .85s ease 1.02s forwards;
}
.jpj-premium-home-hero__meta-item{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:250px;
}
.jpj-premium-home-hero__meta-divider{
  width:1px;
  height:52px;
  background:rgba(255,255,255,.18);
}
.jpj-premium-home-hero__icon-ring{
  display:flex;
  align-items:center;
  justify-content:center;
  width:50px;
  height:50px;
  flex:0 0 auto;
  border:2px solid rgba(215,160,74,.9);
  border-radius:999px;
  background:rgba(2,16,34,.18);
  backdrop-filter:blur(2px);
}
.jpj-premium-home-hero__icon-ring svg{width:23px;height:23px;fill:#e1b15f}
.jpj-premium-home-hero__meta-title{
  display:block;
  margin:0 0 5px;
  color:#fff;
  font:800 16px/1.2 Arial,Helvetica,sans-serif;
}
.jpj-premium-home-hero__meta-text{
  display:block;
  color:rgba(255,255,255,.9);
  font:400 13px/1.3 Arial,Helvetica,sans-serif;
}
@keyframes jpjHeroSlideDown{to{opacity:1;transform:none}}
@keyframes jpjHeroFadeUp{to{opacity:1;transform:none}}
@keyframes jpjHeroLineGrow{to{opacity:1;transform:scaleX(1)}}
@keyframes jpjHeroBlink{0%,100%{border-right-color:rgba(241,181,74,.96)}50%{border-right-color:transparent}}

@media(max-width:1200px){
  .jpj-premium-home-hero{
    min-height:calc(100svh - 68px);
    max-height:none;
    background-position:56% center!important;
  }
  .jpj-premium-home-hero__inner{padding:54px 42px 34px}
  .jpj-premium-home-hero__content{width:min(58%,700px)}
  .jpj-premium-home-hero__line--white,
  .jpj-premium-home-hero__line--red{font-size:clamp(46px,5.2vw,66px)}
  .jpj-premium-home-hero__button{min-width:230px;height:58px;font-size:16px!important}
}

@media(max-width:900px){
  .jpj-premium-home-hero{
    min-height:700px;
    height:calc(100svh - 86px);
    max-height:750px;
    background-image:none!important;
    background-color:var(--jpj-hero-deep)!important;
  }

  /* v0.9.4.4: smaller dedicated mobile scene keeps the complete car and trust rows above the fold. */
  .jpj-premium-home-hero::after{
    content:"";
    position:absolute;
    z-index:0;
    top:340px;
    left:0;
    right:0;
    height:315px;
    pointer-events:none;
    background-image:url('../images/jpj-premium-hero-mobile-road.jpg');
    background-repeat:no-repeat;
    background-size:840px auto;
    background-position:80% 100%;
  }

  .jpj-premium-home-hero::before{
    z-index:1;
    background:linear-gradient(180deg,
      rgba(2,16,34,1) 0%,
      rgba(2,16,34,.99) 35%,
      rgba(2,16,34,.78) 43%,
      rgba(2,16,34,.16) 56%,
      rgba(2,16,34,.10) 70%,
      rgba(2,16,34,.78) 89%,
      rgba(2,16,34,1) 100%);
  }

  .jpj-premium-home-hero__inner{
    position:relative;
    z-index:2;
    min-height:100%;
    height:100%;
    padding:24px 18px 14px;
    align-items:flex-start;
  }

  .jpj-premium-home-hero__content{
    width:100%;
    max-width:none;
  }

  .jpj-premium-home-hero__eyebrow{
    gap:8px;
    margin-bottom:16px;
    font-size:11px;
  }
  .jpj-premium-home-hero__slashes{font-size:19px}

  .jpj-premium-home-hero__headline{
    margin-bottom:0!important;
    line-height:.93!important;
    letter-spacing:-.026em!important;
  }

  .jpj-premium-home-hero__line--white{
    font-size:clamp(34px,9.2vw,42px);
    white-space:nowrap;
  }

  .jpj-premium-home-hero__line--red{
    margin-top:4px;
    font-size:clamp(30px,8.2vw,37px);
    white-space:nowrap;
  }

  .jpj-premium-home-hero__type-wrap{min-width:7.2ch}
  .jpj-premium-home-hero__type{border-right-width:2px}

  .jpj-premium-home-hero__sub{
    display:block!important;
    max-width:350px;
    margin:12px 0 0!important;
    color:rgba(255,255,255,.96)!important;
    font:400 13px/1.36 Arial,Helvetica,sans-serif!important;
  }
  .jpj-premium-home-hero__sub strong{
    color:#fff;
    font-weight:800;
  }

  .jpj-premium-home-hero__gold-line{
    width:52px;
    height:2px;
    margin:12px 0 13px;
  }

  .jpj-premium-home-hero__actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    width:100%;
    margin:0;
  }

  .jpj-premium-home-hero__button{
    width:100%;
    min-width:0;
    height:52px;
    padding:0 16px;
    border-radius:7px;
    font-size:14px!important;
  }
  .jpj-premium-home-hero__button svg{
    width:20px;
    height:20px;
  }

  /* Shorter visual stage: enough room to show the car without forcing a scroll. */
  .jpj-premium-home-hero__actions::after{
    content:"";
    display:block;
    height:138px;
    grid-column:1/-1;
    pointer-events:none;
  }

  .jpj-premium-home-hero__meta{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
    width:100%;
    margin-top:0;
  }
  .jpj-premium-home-hero__meta-divider{display:none}
  .jpj-premium-home-hero__meta-item{
    width:100%;
    min-width:0;
    gap:12px;
    padding:8px 0;
  }
  .jpj-premium-home-hero__meta-item + .jpj-premium-home-hero__meta-item{
    border-top:1px solid rgba(255,255,255,.22);
  }
  .jpj-premium-home-hero__icon-ring{
    width:46px;
    height:46px;
    border-color:rgba(225,177,95,.96);
    background:rgba(2,16,34,.52);
  }
  .jpj-premium-home-hero__icon-ring svg{width:21px;height:21px}
  .jpj-premium-home-hero__meta-title{
    margin-bottom:3px;
    font-size:14px;
  }
  .jpj-premium-home-hero__meta-text{font-size:11px}
}

@media(max-width:520px){
  .jpj-premium-home-hero{
    min-height:670px;
    height:calc(100svh - 96px);
    max-height:705px;
  }
  .jpj-premium-home-hero::after{
    top:305px;
    height:292px;
    background-size:820px auto;
    background-position:80% 100%;
  }
  .jpj-premium-home-hero__inner{
    padding:20px 17px 12px;
  }
  .jpj-premium-home-hero__eyebrow{
    margin-bottom:14px;
    font-size:10.5px;
  }
  .jpj-premium-home-hero__slashes{font-size:18px}
  .jpj-premium-home-hero__line--white{font-size:clamp(33px,9.1vw,39px)}
  .jpj-premium-home-hero__line--red{font-size:clamp(29px,8vw,35px)}
  .jpj-premium-home-hero__sub{
    margin-top:11px!important;
    font-size:12.5px!important;
    line-height:1.32!important;
  }
  .jpj-premium-home-hero__gold-line{margin:11px 0 12px}
  .jpj-premium-home-hero__button{
    height:50px;
    font-size:13.5px!important;
  }
  .jpj-premium-home-hero__actions::after{height:126px}
  .jpj-premium-home-hero__meta-item{padding:7px 0}
  .jpj-premium-home-hero__icon-ring{width:44px;height:44px}
  .jpj-premium-home-hero__icon-ring svg{width:20px;height:20px}
  .jpj-premium-home-hero__meta-title{font-size:13.5px}
  .jpj-premium-home-hero__meta-text{font-size:10.5px}
}

@media(max-width:380px){
  .jpj-premium-home-hero{
    min-height:650px;
    height:calc(100svh - 92px);
    max-height:685px;
  }
  .jpj-premium-home-hero::after{
    top:294px;
    height:282px;
    background-size:770px auto;
    background-position:80% 100%;
  }
  .jpj-premium-home-hero__inner{
    padding-left:15px;
    padding-right:15px;
  }
  .jpj-premium-home-hero__line--white{font-size:31px}
  .jpj-premium-home-hero__line--red{font-size:27px}
  .jpj-premium-home-hero__sub{font-size:12px!important}
  .jpj-premium-home-hero__button{
    height:48px;
    font-size:13px!important;
  }
  .jpj-premium-home-hero__actions::after{height:118px}
  .jpj-premium-home-hero__icon-ring{width:42px;height:42px}
  .jpj-premium-home-hero__meta-title{font-size:13px}
  .jpj-premium-home-hero__meta-text{font-size:10px}
}

@media(max-height:720px) and (min-width:901px){
  .jpj-premium-home-hero__inner{padding-top:42px;padding-bottom:26px}
  .jpj-premium-home-hero__eyebrow{margin-bottom:14px}
  .jpj-premium-home-hero__line--white,
  .jpj-premium-home-hero__line--red{font-size:clamp(44px,4.2vw,64px)}
  .jpj-premium-home-hero__gold-line{margin:15px 0 20px}
  .jpj-premium-home-hero__actions{margin-bottom:20px}
  .jpj-premium-home-hero__button{height:56px}
  .jpj-premium-home-hero__icon-ring{width:46px;height:46px}
}

@media(prefers-reduced-motion:reduce){
  .jpj-premium-home-hero__eyebrow,
  .jpj-premium-home-hero__line,
  .jpj-premium-home-hero__gold-line,
  .jpj-premium-home-hero__actions,
  .jpj-premium-home-hero__meta{
    opacity:1!important;
    transform:none!important;
    animation:none!important;
  }
  .jpj-premium-home-hero__type{width:auto!important;border-right:0!important;animation:none!important}
}
