/* 2026-07-27: shared infinite commission/lowest-price marquee */
.home-header-marquee {
  position: relative;
  z-index: 20;
  width: 100%;
  height: 48px;
  display: flex;
  align-items: center;
  overflow: hidden;
  border-top: 0;
  border-bottom: 1px solid #eef1f5;
  background: #fff;
  box-shadow: 0 5px 16px rgba(26, 48, 83, .04);
}

body.special-page .site-common-header {
  border-bottom: 0 !important;
}

.home-header-marquee-viewport {
  width: 100%;
  overflow: hidden;
}

.home-header-marquee-track {
  width: max-content;
  display: flex;
  align-items: center;
  will-change: transform;
  animation: home-header-marquee-loop 20s linear infinite;
}

.home-header-marquee-group {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0;
}

.home-header-marquee-item {
  flex: 0 0 286px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: #53637b;
  font-size: 15px;
  font-weight: 750;
  letter-spacing: -.025em;
  white-space: nowrap;
}

.home-header-marquee-item > span {
  display: inline-flex;
  align-items: center;
}

.home-header-marquee-item strong {
  margin: 0 2px 0 4px;
  color: #1267ee;
  font-size: 15px;
  font-weight: 950;
}

.home-header-marquee-item i {
  color: #1267ee;
  font-size: 16px;
  font-style: normal;
  font-weight: 900;
}

.home-header-marquee-separator {
  margin: 0 9px;
  color: #1267ee;
  font-size: 12px;
  font-weight: 900;
}

@keyframes home-header-marquee-loop {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (max-width: 760px) {
  .home-header-marquee {
    height: 42px;
  }

  .home-header-marquee-track {
    animation-duration: 15s;
  }

  .home-header-marquee-group {
    gap: 0;
  }

  .home-header-marquee-item {
    flex-basis: 258px;
    height: 40px;
    gap: 6px;
    font-size: 13px;
  }

  .home-header-marquee-item strong {
    font-size: 13px;
  }

  .home-header-marquee-item i {
    font-size: 14px;
  }

  .home-header-marquee-separator {
    margin: 0 7px;
    font-size: 10px;
  }
}

/*
 * Main-page desktop spacing after the shared header marquee.
 * Keep tablet/mobile composition unchanged.
 */
@media (min-width: 1081px) {
  body.home-page .landing-main {
    padding-top: 0 !important;
  }

  body.home-page .landing-hero.home-hero-quote-reference {
    min-height: 600px !important;
    padding-top: 24px !important;
    padding-bottom: 20px !important;
  }

  body.home-page .home-hero-quote-reference .landing-hero-copy {
    top: -15px;
  }
}

@media (min-width: 901px) and (max-width: 1080px) {
  body.home-page .landing-main {
    padding-top: 0 !important;
  }

  body.home-page .landing-hero.home-hero-quote-reference {
    min-height: 600px !important;
    padding-top: 16px !important;
    padding-bottom: 20px !important;
  }

  body.home-page .home-hero-quote-reference .landing-hero-copy {
    top: -15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-header-marquee-track {
    animation-duration: 60s;
  }
}
