/* V23: reliable photo slider for the Home header. */
.home-page .sjn-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
.home-page .sjn-hero-bg.sjn-real-slider {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  overflow: hidden;
  pointer-events: none;
  background: none !important;
  animation: none !important;
}
.home-page .sjn-hero-bg.sjn-real-slider .sjn-hero-slide {
  position: absolute;
  inset: 0;
  display: block;
  opacity: 0;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  transform: scale(1.025);
  transition: opacity 1.15s ease-in-out, transform 6s linear;
}
.home-page .sjn-hero-bg.sjn-real-slider .sjn-hero-slide::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(247, 252, 255, .94) 0%, rgba(230, 244, 255, .86) 50%, rgba(208, 232, 255, .68) 100%);
}
.home-page .sjn-hero-bg.sjn-real-slider .sjn-hero-slide.is-active {
  opacity: 1;
  transform: scale(1.07);
}
.home-page .sjn-hero > .wrap {
  position: relative;
  z-index: 1;
}
@media (max-width: 900px) {
  .site-header .nav { gap: 14px; }
  .primary-nav .menu { gap: 14px; }
  .home-page .sjn-grid,
  .home-page .sjn-grid.three,
  .inner-page .card-grid,
  .inner-page .pricing,
  .inner-page .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .inner-page .page-hero,
  .inner-page .section,
  .inner-page .sjn-page-hero,
  .inner-page .sjn-section { padding-left: 32px !important; padding-right: 32px !important; }
  .home-page .sjn-hero-bg.sjn-real-slider .sjn-hero-slide::after {
    background: linear-gradient(90deg, rgba(247, 252, 255, .94), rgba(225, 241, 255, .84));
  }
}
@media (max-width: 600px) {
  html { -webkit-text-size-adjust: 100%; }
  .wrap,
  main .sjn-centered-content { width: calc(100% - 32px) !important; }
  .site-header .nav { min-height: 70px; }
  .site-header .brand-image img { width: 126px; height: auto; }
  .primary-nav,
  .nav-actions { max-width: 100%; }
  .primary-nav .menu,
  .primary-nav .menu li { width: 100%; }
  .primary-nav .menu a,
  .header-video-link { display: block; padding: 12px 0; }
  .home-page .sjn-hero { padding: 92px 0 58px; }
  .home-page .sjn-hero h1,
  .inner-page h1,
  .inner-page .page-hero h1,
  .inner-page .sjn-page-hero h1 { font-size: clamp(2.35rem, 12vw, 3.35rem) !important; line-height: 1.04; }
  .home-page .sjn-hero-choice,
  .home-page .sjn-grid,
  .home-page .sjn-grid.three,
  .inner-page .card-grid,
  .inner-page .pricing,
  .inner-page .steps,
  .global-audience-grid { grid-template-columns: 1fr !important; }
  .home-page .sjn-hero-choice a,
  .inner-page .card,
  .inner-page .price-card,
  .inner-page .steps > div { min-width: 0; }
  .inner-page .page-hero,
  .inner-page .section,
  .inner-page .sjn-page-hero,
  .inner-page .sjn-section { padding: 46px 0 !important; }
  .inner-page .page-hero .wrap,
  .inner-page .section .wrap,
  .inner-page .sjn-page-hero .wrap,
  .inner-page .sjn-section .wrap { width: 100% !important; }
  .provider-form .form-grid { grid-template-columns: 1fr !important; }
  .provider-form input,
  .provider-form textarea,
  #afs-widget input,
  #afs-widget textarea,
  #afs-widget select { max-width: 100%; font-size: 16px !important; }
  .youtube-grid { grid-template-columns: 1fr !important; }
  .button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; text-align: center; }
  .home-page .sjn-hero { min-height: 0; }
  .home-page .sjn-hero-bg.sjn-real-slider .sjn-hero-slide { background-position: 58% center; }
  .home-page .sjn-hero-bg.sjn-real-slider .sjn-hero-slide::after {
    background: rgba(239, 248, 255, .88);
  }
}
@media (prefers-reduced-motion: reduce) {
  .home-page .sjn-hero-bg.sjn-real-slider .sjn-hero-slide { transition: none; }
}
