/* =========================================================
   MARQUEE FINAL FIX
   Load this file AFTER styles.css/contact-fix.css.
   It force-styles homepage motion marquee as a complete chip bar.
   ========================================================= */

body main#home > section.motion-marquee,
body section.motion-marquee {
  position: relative !important;
  z-index: 10 !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 86px !important;
  margin: 0 !important;
  padding: 20px 0 !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(8, 120, 164, 0.10) !important;
  border-bottom: 1px solid rgba(8, 120, 164, 0.10) !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.98), rgba(239,250,253,0.94), rgba(255,255,255,0.98)) !important;
  box-shadow:
    0 18px 56px rgba(13,86,117,.08),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

body section.motion-marquee::before,
body section.motion-marquee::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  z-index: 3 !important;
  width: 140px !important;
  height: 100% !important;
  pointer-events: none !important;
}

body section.motion-marquee::before {
  left: 0 !important;
  background: linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,.92) 34%, transparent 100%) !important;
}

body section.motion-marquee::after {
  right: 0 !important;
  background: linear-gradient(270deg, #ffffff 0%, rgba(255,255,255,.92) 34%, transparent 100%) !important;
}

body .motion-marquee .marquee-mask {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 46px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

body .motion-marquee .marquee-track {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  width: max-content !important;
  height: 46px !important;
  gap: 16px !important;
  white-space: nowrap !important;
  animation: ctlMarqueeFinal 28s linear infinite !important;
  will-change: transform !important;
}

body .motion-marquee .marquee-group {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  flex: 0 0 auto !important;
  gap: 16px !important;
  height: 46px !important;
  white-space: nowrap !important;
}

body .motion-marquee .marquee-track span,
body .motion-marquee .marquee-group span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  margin: 0 !important;
  padding: 0 18px !important;
  border: 1px solid rgba(8, 120, 164, 0.10) !important;
  border-radius: 999px !important;
  color: #075b82 !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.99), rgba(232,248,251,0.96)) !important;
  box-shadow:
    0 12px 32px rgba(13,86,117,0.08),
    inset 0 1px 0 rgba(255,255,255,0.96) !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  letter-spacing: -0.01em !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body .motion-marquee .marquee-track span::before,
body .motion-marquee .marquee-group span::before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 8px !important;
  height: 8px !important;
  margin: 0 10px 0 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #0878a4, #13b7a5) !important;
  box-shadow: 0 0 0 4px rgba(19,183,165,0.10) !important;
}

body .motion-marquee:hover .marquee-track {
  animation-play-state: paused !important;
}

@keyframes ctlMarqueeFinal {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(calc(-50% - 8px), 0, 0);
  }
}

@media (max-width: 760px) {
  body main#home > section.motion-marquee,
  body section.motion-marquee {
    min-height: 70px !important;
    padding: 16px 0 !important;
  }

  body section.motion-marquee::before,
  body section.motion-marquee::after {
    width: 58px !important;
  }

  body .motion-marquee .marquee-mask,
  body .motion-marquee .marquee-track,
  body .motion-marquee .marquee-group {
    height: 38px !important;
  }

  body .motion-marquee .marquee-track,
  body .motion-marquee .marquee-group {
    gap: 10px !important;
  }

  body .motion-marquee .marquee-track span,
  body .motion-marquee .marquee-group span {
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    padding: 0 14px !important;
    font-size: 12px !important;
  }
}
