/* Homepage-only financing announcement. The CTA never moves. */
.financing-banner { background: #b81927; color: #fff; border-bottom: 1px solid rgba(255,255,255,.16); }
.financing-banner-inner { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 1.25rem; padding-block: 1.05rem; }
.financing-banner-copy { min-width: 0; }
.financing-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.financing-marquee { overflow: hidden; font: 800 clamp(1.3rem,2.4vw,1.8rem)/1.2 var(--sans, sans-serif); letter-spacing: -.025em; }
.financing-marquee-repeat, .financing-marquee-duplicate { display: none; }
.financing-banner-provider { margin: .45rem 0 0; color: #fff; font-size: .85rem; line-height: 1.45; }
.financing-banner-cta { display: inline-flex; align-items: center; justify-content: center; gap: .85rem; min-height: 54px; padding: .95rem 1.35rem; border: 2px solid #fff; background: #fff; color: #111; font: 850 .8rem/1.2 var(--sans, sans-serif); letter-spacing: .045em; text-transform: uppercase; text-align: center; text-decoration: none; }
.financing-banner-cta:hover { background: #111; border-color: #111; color: #fff; }
.financing-banner-cta svg { flex: 0 0 auto; width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.financing-motion { display: inline-grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; background: transparent; color: #fff; cursor: pointer; }
.financing-motion[hidden] { display: none; }
.financing-motion:hover { background: rgba(0,0,0,.2); }
.financing-motion svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.financing-motion .financing-play-icon, .financing-motion[aria-pressed="true"] .financing-pause-icon { display: none; }
.financing-motion[aria-pressed="true"] .financing-play-icon { display: block; }
.financing-banner-cta:focus-visible, .financing-motion:focus-visible { outline: 3px solid #fff; outline-offset: 4px; box-shadow: 0 0 0 7px #111; }
@media (min-width: 701px) and (prefers-reduced-motion: no-preference) {
  .financing-marquee-track { display: flex; width: max-content; }
  .financing-marquee-group { display: flex; align-items: center; flex: 0 0 auto; gap: 2rem; padding-right: 2rem; white-space: nowrap; }
  .financing-marquee-repeat { display: inline; }
  .financing-banner[data-motion="running"] .financing-marquee-track { animation: financing-roll 32s linear infinite; }
  .financing-banner[data-motion="paused"] .financing-marquee-track { animation: financing-roll 32s linear infinite; animation-play-state: paused; }
  .financing-banner:hover .financing-marquee-track, .financing-banner:focus-within .financing-marquee-track { animation-play-state: paused; }
}
@keyframes financing-roll { to { transform: translateX(-50%); } }
@media (max-width: 700px) {
  .financing-banner-inner { grid-template-columns: 1fr; gap: .85rem; padding-block: 1rem; }
  .financing-marquee { font-size: clamp(1.25rem,5.6vw,1.7rem); }
  .financing-banner-provider { font-size: .8rem; }
  .financing-banner-cta { width: 100%; min-height: 52px; }
  .financing-motion { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .financing-marquee-track { animation: none !important; transform: none !important; }
  .financing-motion { display: none; }
}
