.homepage-good-ticker {
  position: fixed;
  bottom: var(--ks-home-ticker-bottom-offset);
  left: 0;
  right: 0;
  z-index: 69;
  height: var(--ks-home-ticker-layout-space);
  background: var(--ks-home-ticker-bg);
  border-top: var(--ks-home-ticker-border-width) solid var(--ks-home-ticker-border);
  border-bottom: var(--ks-home-ticker-border-width) solid var(--ks-home-ticker-border);
  box-sizing: border-box;
}

.homepage-good-ticker[hidden] {
  display: none !important;
}

body.homepage-demo-4 {
  --ks-home-mobile-copyright-extra-space: 0px;
}

.homepage-good-ticker-toggle {
  position: fixed;
  right: var(--ks-home-ticker-toggle-right);
  bottom: var(--ks-home-ticker-toggle-bottom-offset);
  z-index: 121;
  height: var(--ks-home-ticker-toggle-size);
  min-height: 0;
  min-width: 0;
  padding: 0;
  background: transparent;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  transition:
    color var(--ks-home-ticker-toggle-transition),
    opacity var(--ks-home-ticker-toggle-transition);
  color: var(--ks-home-ticker-toggle-color);
  border: 0;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  user-select: none;
}

.homepage-good-ticker-toggle[hidden] {
  display: none !important;
}

.homepage-good-ticker-toggle__icon {
  position: relative;
  width: var(--ks-home-ticker-toggle-size);
  height: var(--ks-home-ticker-toggle-size);
  flex: 0 0 var(--ks-home-ticker-toggle-size);
  background: var(--ks-home-ticker-toggle-icon-bg);
  border: var(--ks-home-ticker-toggle-stroke-width) solid currentColor;
  border-radius: 50%;
  box-sizing: border-box;
  transition: transform var(--ks-home-ticker-toggle-transition);
  z-index: 1;
}

.homepage-good-ticker-toggle__line {
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc((var(--ks-home-ticker-toggle-size) - 5px) * var(--ks-home-ticker-toggle-glyph-scale));
  height: var(--ks-home-ticker-toggle-stroke-width);
  border-radius: 999px;
  background: currentColor;
  transform-origin: center center;
  transition:
    background-color var(--ks-home-ticker-toggle-transition);
}

.homepage-good-ticker-toggle__label-slot {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  width: var(--homepage-good-ticker-toggle-label-width, auto);
  margin-right: var(--ks-home-ticker-toggle-label-gap);
  overflow: hidden;
  flex: 0 0 auto;
  transition:
    width var(--ks-home-ticker-toggle-transition),
    margin-right var(--ks-home-ticker-toggle-transition);
}

.homepage-good-ticker-toggle__label {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
  color: currentColor;
  font-size: var(--ks-home-ticker-toggle-label-size);
  line-height: 1;
  font-weight: var(--ks-home-ticker-toggle-label-weight);
  transform: translateX(0);
  transition: transform var(--ks-home-ticker-toggle-transition);
}

.homepage-good-ticker-toggle__line--primary {
  transform: translate(-50%, -50%) rotate(0deg);
}

.homepage-good-ticker-toggle__line--secondary {
  transform: translate(-50%, -50%) rotate(90deg);
}

.homepage-good-ticker-toggle[aria-expanded="true"] .homepage-good-ticker-toggle__icon {
  transform: rotate(45deg);
}

.homepage-good-ticker-toggle[aria-expanded="false"] .homepage-good-ticker-toggle__icon {
  transform: rotate(0deg);
}

.homepage-good-ticker-toggle.is-label-collapsing .homepage-good-ticker-toggle__label-slot {
  width: 0 !important;
  margin-right: 0;
}

.homepage-good-ticker-toggle.is-label-collapsing .homepage-good-ticker-toggle__label {
  transform: translateX(calc(100% + var(--ks-home-ticker-toggle-label-gap)));
}

.homepage-good-ticker-toggle.is-label-expanding .homepage-good-ticker-toggle__label-slot {
  margin-right: 0;
}

.homepage-good-ticker-toggle.is-label-expanding .homepage-good-ticker-toggle__label {
  transform: translateX(calc(100% + var(--ks-home-ticker-toggle-label-gap)));
}

.homepage-good-ticker-toggle:hover,
.homepage-good-ticker-toggle:focus-visible {
  color: #5f7088;
  outline: none;
}

.homepage-good-ticker-toggle:hover .homepage-good-ticker-toggle__icon,
.homepage-good-ticker-toggle:focus-visible .homepage-good-ticker-toggle__icon {
  box-shadow: 0 0 0 0.5px currentColor inset;
}

.homepage-good-ticker__shell {
  width: min(var(--ks-home-ticker-shell-inline), var(--ks-home-ticker-shell-max));
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.homepage-good-ticker__viewport {
  width: 100%;
  overflow: hidden;
}

.homepage-good-ticker__marquee {
  display: flex;
  align-items: center;
  width: max-content;
  min-width: 100%;
  animation: ks-homepage-good-ticker-scroll var(--ks-home-ticker-speed) linear infinite;
  will-change: transform;
}

.homepage-good-ticker__group {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  padding-inline-end: var(--ks-home-ticker-track-gap);
}

.homepage-good-ticker__item {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  white-space: nowrap;
  color: var(--ks-home-ticker-text);
  font-family: var(--ks-home-ticker-font-family);
  font-size: var(--ks-home-ticker-font-size);
  line-height: var(--ks-home-ticker-font-line-height);
  letter-spacing: 0;
}

.homepage-good-ticker__name {
  font-weight: 700;
}

.homepage-good-ticker__text {
  margin-inline-start: var(--ks-home-ticker-name-gap);
  font-weight: 400;
}

.homepage-good-ticker__divider {
  width: 1px;
  height: var(--ks-home-ticker-divider-height);
  margin-inline: var(--ks-home-ticker-divider-gap);
  background: var(--ks-home-ticker-divider-color);
  flex: 0 0 auto;
}

body.homepage-demo-4.homepage-good-ticker-visible {
  --ks-home-mobile-copyright-extra-space: var(--ks-home-ticker-layout-space);
}

.homepage-good-ticker.is-collapsed {
  transform: translateY(var(--ks-home-ticker-hidden-shift));
}

.homepage-good-ticker.is-closing {
  animation: ks-homepage-good-ticker-close var(--ks-home-ticker-close-duration) var(--ks-home-ticker-close-ease) forwards;
}

.homepage-good-ticker.is-opening {
  animation: ks-homepage-good-ticker-open var(--ks-home-ticker-open-duration) var(--ks-home-ticker-open-ease) forwards;
}

.homepage-good-ticker.is-collapsed .homepage-good-ticker__marquee {
  animation-play-state: paused;
}

body.homepage-demo-4.homepage-good-ticker-toggle-mounted .homepage-good-ticker-toggle,
body.homepage-demo-4.homepage-good-ticker-visible .homepage-good-ticker-toggle {
  opacity: 1;
}

@media (hover: none) and (pointer: coarse) {
  .homepage-good-ticker-toggle {
    z-index: 130;
  }
}

@media (max-width: 375px) {
  .homepage-good-ticker-toggle {
    right: calc(
      var(--ks-bottom-nav-padding-inline-compact)
      + ((var(--ks-bottom-nav-item-max-width-compact) - var(--ks-bottom-nav-theme-track-width)) / 2)
    );
  }
}

@keyframes ks-homepage-good-ticker-scroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

@keyframes ks-homepage-good-ticker-close {
  from {
    transform: translateY(0);
  }

  to {
    transform: translateY(var(--ks-home-ticker-hidden-shift));
  }
}

@keyframes ks-homepage-good-ticker-open {
  0% {
    transform: translateY(var(--ks-home-ticker-hidden-shift));
  }

  100% {
    transform: translateY(0);
  }
}
