.elementor-231 .elementor-element.elementor-element-51f57d41{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:45px;--padding-bottom:45px;--padding-left:0px;--padding-right:0px;overflow:visible;}@media(min-width:768px){.elementor-231 .elementor-element.elementor-element-51f57d41{--content-width:1280px;}}@media(max-width:1024px){.elementor-231 .elementor-element.elementor-element-51f57d41{--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}}@media(max-width:767px){.elementor-231 .elementor-element.elementor-element-51f57d41{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}}/* Start custom CSS for container, class: .elementor-element-51f57d41 */.top-banner {
  position: relative;
  width: 100%;
  background: linear-gradient(120deg, #ff051c, #050000);
  color: #fff;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  overflow: hidden;
  padding: 12px 0;
}

.top-banner__track {
  display: inline-block;
  white-space: nowrap;
  animation: bannerMarquee 12s linear infinite;
}

.top-banner__track span {
  display: inline-block;
}

@keyframes bannerMarquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Borda flamejante */
.flame-edge::before,
.flame-edge::after {
  content: "";
  position: absolute;
  left: -10%;
  right: -10%;
  height: 8px;
  background: linear-gradient(90deg, rgba(255,0,0,0), rgba(255,77,0,0.9), rgba(0,0,0,0));
  filter: blur(3px);
  animation: flamePulse 2s ease-in-out infinite;
}

.flame-edge::before { top: 0; }
.flame-edge::after  { bottom: 0; }

@keyframes flamePulse {
  0%, 100% { opacity: 0.4; transform: scaleX(1); }
  50%      { opacity: 0.9; transform: scaleX(1.08); }
}/* End custom CSS */