.imp-brand-strip {
  --imp-brand-strip-pattern: none;
  --imp-brand-strip-size: 23px;
  --imp-brand-strip-repeat: 64px;
  --imp-brand-strip-duration: 28s;
  width: 100%;
  height: 46px;
  overflow: hidden;
  background-color: #f00000;
  box-sizing: border-box;
}

.e-con:has(> .elementor-widget-imperatriz_brand_strip) {
  padding-block-start: 0 !important;
  padding-block-end: 0 !important;
  padding-inline: 0 !important;
}

.imp-brand-strip__viewport {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.imp-brand-strip__track {
  display: flex;
  width: max-content;
  min-width: 200%;
  height: 100%;
  transform: translate3d(0, 0, 0);
}

.imp-brand-strip__group {
  display: flex;
  align-items: center;
  min-width: max-content;
  height: 100%;
  gap: var(--imp-brand-strip-repeat);
  padding-right: var(--imp-brand-strip-repeat);
  flex: 0 0 auto;
}

.imp-brand-strip__symbol {
  display: block;
  width: calc(var(--imp-brand-strip-size) * 140 / 223) !important;
  min-width: calc(var(--imp-brand-strip-size) * 140 / 223);
  max-width: none !important;
  height: var(--imp-brand-strip-size) !important;
  max-height: var(--imp-brand-strip-size);
  aspect-ratio: 140 / 223;
  flex: 0 0 calc(var(--imp-brand-strip-size) * 140 / 223);
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}

.imp-brand-strip--animated .imp-brand-strip__track {
  animation: imp-brand-strip-scroll var(--imp-brand-strip-duration) linear infinite;
  will-change: transform;
}

.imp-brand-strip--reverse .imp-brand-strip__track {
  animation-direction: reverse;
}

.imp-brand-strip--pause-hover:hover .imp-brand-strip__track,
.imp-brand-strip--pause-focus:focus-within .imp-brand-strip__track,
.imp-brand-strip.is-paused .imp-brand-strip__track {
  animation-play-state: paused;
}

@keyframes imp-brand-strip-scroll {
  from {
    transform: translate3d(0, 0, 0);
  }

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

@media (max-width: 1024px) {
  .imp-brand-strip {
    --imp-brand-strip-duration: 24s;
  }
}

@media (max-width: 767px) {
  .imp-brand-strip {
    --imp-brand-strip-duration: 20s !important;
    --imp-brand-strip-size: 22px !important;
    --imp-brand-strip-repeat: 48px !important;
    height: 42px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .imp-brand-strip--animated .imp-brand-strip__track {
    animation: none;
    transform: none;
    will-change: auto;
  }
}
