.elementor-58438 .elementor-element.elementor-element-0a593b3{--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;--align-items:stretch;--gap:0rem 1rem;--row-gap:0rem;--column-gap:1rem;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:5rem;--padding-bottom:5rem;--padding-left:0rem;--padding-right:0rem;}.elementor-58438 .elementor-element.elementor-element-365c855{--display:flex;--gap:4rem 4rem;--row-gap:4rem;--column-gap:4rem;--padding-top:1rem;--padding-bottom:1rem;--padding-left:1rem;--padding-right:1rem;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-58438 .elementor-element.elementor-element-89d2d83{width:100%;max-width:100%;text-align:center;}.elementor-58438 .elementor-element.elementor-element-89d2d83.elementor-element{--align-self:center;}.elementor-58438 .elementor-element.elementor-element-89d2d83 .elementor-heading-title{font-family:"Manrope", Sans-serif;font-size:16px;font-weight:600;line-height:24px;color:#212121;}@media(max-width:1024px){.elementor-58438 .elementor-element.elementor-element-0a593b3{--margin-top:0rem;--margin-bottom:0rem;--margin-left:0rem;--margin-right:0rem;--padding-top:2rem;--padding-bottom:2rem;--padding-left:0rem;--padding-right:0rem;}.elementor-58438 .elementor-element.elementor-element-365c855{--justify-content:flex-start;--padding-top:1rem;--padding-bottom:1rem;--padding-left:1rem;--padding-right:1rem;}}@media(max-width:767px){.elementor-58438 .elementor-element.elementor-element-0a593b3{--margin-top:2rem;--margin-bottom:2rem;--margin-left:0rem;--margin-right:0rem;--padding-top:0rem;--padding-bottom:0rem;--padding-left:0rem;--padding-right:0rem;}.elementor-58438 .elementor-element.elementor-element-365c855{--padding-top:1rem;--padding-bottom:1rem;--padding-left:1rem;--padding-right:1rem;}.elementor-58438 .elementor-element.elementor-element-89d2d83 .elementor-heading-title{font-size:14px;line-height:1.5em;}}/* Start custom CSS for html, class: .elementor-element-080e192 *//* === Image Ticker (153:50, 6-up, rightward scroll) === */
#toplogo .img-ticker {
  /* Configurable variables */
  --count: 8;          /* visible items on desktop */
  --gap: 68px;         /* space between items */
  --radius: 12px;      /* image rounding */
  --speed: 80s;        /* full cycle duration */
  --fade: 80px;        /* fade overlay width */
  --bg: #fff;          /* section/page background for fades */

  position: relative;
  overflow: hidden;
  width: 100%;
  height: auto;        /* height derives from item aspect-ratio */
  box-sizing: border-box;
}

/* Edge fades */
.img-ticker__fade {
  position: absolute;
  top: 0; bottom: 0;
  width: var(--fade);
  pointer-events: none;
  z-index: 2;
}
.img-ticker__fade--left  { left: 0;  background: linear-gradient(to right, var(--bg), transparent); }
.img-ticker__fade--right { right: 0; background: linear-gradient(to left,  var(--bg), transparent); }

.img-ticker__track {
  display: flex;
  align-items: center;
  gap: var(--gap);
  
  flex-wrap: nowrap;           /* prevent wrapping */
  width: max-content;       
  will-change: transform;
  animation: tickerLeft var(--speed) linear infinite; /* leftward = simpler */
}

/* Items: width-driven so exactly --count fit across viewport */
.img-ticker__item {
  flex: 0 0 auto;  /* no shrinking, no growing */
  width: calc((100vw - (var(--gap) * (var(--count) - 1))) / var(--count));
  /* ^ using 100vw ensures each item width is based on the viewport,
     so Set A has a predictable total width regardless of container quirks. 
     If you prefer container-based, switch 100vw back to 100% BUT keep nowrap+max-content. */
  aspect-ratio: 153 / 50;
  height: auto;
  display: flex;
  box-sizing: border-box;
}

/* Simpler, always-correct loop: start at 0 and move left by half the track (one full set) */
@keyframes tickerLeft {
  0%   { transform: translateX(0%); }
  100% { transform: translateX(-50%); }  /* because Set A + Set B are equal width */
}

.img-ticker__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;       /* fill without distortion (crops if needed) */
  border-radius: var(--radius);
  display: block;
}

/* Pause on hover (optional) */
.img-ticker:hover .img-ticker__track { animation-play-state: paused; }

/* Rightward loop: because content is duplicated, -50% -> 0% is seamless */
@keyframes tickerScroll {
  0%   { transform: translateX(-50%); }
  100% { transform: translateX(0%); }
}

/* Accessibility: respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .img-ticker__track { animation: none; transform: none; }
}

/* === Responsive counts === */
@media (max-width: 1024px) {
  .img-ticker { --count: 6; --speed: 70s; --fade: 64px; }
}

@media (max-width: 768px) {
  .img-ticker { --count: 3!important; --speed: 80s; --gap: 12px; --fade: 80px; }
}/* End custom CSS */