/* V10: Precise homepage navigation, team image fill and Bike heading polish. */

/* No external-link visual hint for an internal route. The active tab is the only bright tab on inner pages. */
.navbar .nav-links a[aria-current="page"] { color:#ffed00!important; }
.navbar .nav-links a[aria-current="page"]:focus-visible { outline:2px solid #ffed00;outline-offset:5px; }

/* The team photograph now genuinely fills its hero panel. The full uncut image
   remains available via the Ouvrir lightbox. */
@media (min-width:901px) {
  .hero.jf-home-hero .jf-team-photo-link {
    background:#071424;
  }
  .hero.jf-home-hero .jf-team-photo-link::before {
    display:none;
  }
  .hero.jf-home-hero .jf-team-photo-link img {
    object-fit:cover;
    object-position:24% 48%;
    width:100%;height:100%;
  }
  .hero.jf-home-hero .jf-team-photo-link::after {
    background:linear-gradient(to top,rgba(1,5,8,.25),transparent 30%);
  }
}

/* Keep all faces visible on portrait layouts while harmonising any letterbox area. */
@media (max-width:900px) {
  .hero.jf-home-hero .jf-team-photo-link,
  .hero.jf-home-hero .jf-team-photo-link::before {
    background:#071424;
  }
  .hero.jf-home-hero .jf-team-photo-link::before { filter:none; }
}

/* Give the two phrases their own baseline, improve vertical rhythm, and
   remove the compressed tracking from the earlier version. */
.jf-bike-page .jf-bike-hero .jf-bike-copy h1 {
  font-size:clamp(2.75rem,4.15vw,4.3rem);
  line-height:1.14;
  letter-spacing:-.028em;
  word-spacing:.04em;
  max-width:15ch;
  margin:26px 0 28px;
  text-wrap:balance;
  overflow-wrap:normal;
}
.jf-bike-page .jf-bike-hero .jf-bike-copy h1 span {
  display:block;
  margin-top:.12em;
  letter-spacing:-.025em;
  line-height:1.12;
}
.jf-bike-page .jf-bike-copy p {
  line-height:1.78;
}
@media (min-width:901px) and (max-width:1270px) {
  .navbar .nav-links {gap:clamp(6px,.65vw,11px);}
  .navbar .nav-links > a:not(.nav-cta) {font-size:.68rem;}
  .jf-bike-page .jf-bike-hero .jf-bike-copy h1 {font-size:clamp(2.6rem,3.9vw,3.5rem);}
}
@media (max-width:900px) {
  .jf-bike-page .jf-bike-hero .jf-bike-copy h1 {
    font-size:clamp(2.6rem,6.3vw,4.2rem);
    letter-spacing:-.026em;
    max-width:15ch;
    line-height:1.15;
  }
}
@media (max-width:600px) {
  .jf-bike-page .jf-bike-hero .jf-bike-copy h1 {
    font-size:clamp(2.3rem,9.5vw,3rem);
    line-height:1.18;
    letter-spacing:-.022em;
    max-width:16ch;
    margin:18px 0 22px;
  }
  .jf-bike-page .jf-bike-hero .jf-bike-copy h1 span {margin-top:.1em;}
}
