/* Logo Slideshow – defaults; Elementor controls override these via {{WRAPPER}} selectors / CSS variables */
.qls{--qls-gap:72px;--qls-h:44px;--qls-fade-l:90px;--qls-fade-r:90px;--qls-gs:0%;--qls-op:1;--qls-hgs:0%;--qls-hop:1;--qls-hs:1.06;--qls-t:300ms;--qls-w:0px;--qls-dur:30s;position:relative;width:100%;overflow:hidden;box-sizing:border-box;padding:20px 0}
.qls *,.qls *::before,.qls *::after{box-sizing:border-box}

.qls__viewport{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--qls-fade-l),#000 calc(100% - var(--qls-fade-r)),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 var(--qls-fade-l),#000 calc(100% - var(--qls-fade-r)),transparent 100%)}
.qls__track{display:flex;width:max-content}
.qls__group{display:flex;flex:0 0 auto;align-items:center}

/* continuous scroll */
.qls.is-ready .qls__track{animation:qls-scroll var(--qls-dur) linear infinite;will-change:transform}
.qls[data-dir="right"].is-ready .qls__track{animation-direction:reverse}
.qls[data-pause="1"]:hover .qls__track{animation-play-state:paused}
@keyframes qls-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(var(--qls-w) * -1),0,0)}}

/* static (no scroll) mode */
.qls[data-mode="static"] .qls__track{width:100%;justify-content:center}
.qls[data-mode="static"] .qls__group{flex-wrap:wrap;justify-content:center;row-gap:calc(var(--qls-gap) / 2)}
.qls[data-mode="static"] .qls__item{margin:0 calc(var(--qls-gap) / 2)}

/* item */
.qls__item{display:flex;align-items:center;justify-content:center;flex:0 0 auto;margin-right:var(--qls-gap);color:inherit;text-decoration:none;filter:grayscale(var(--qls-gs));opacity:var(--qls-op);transition:filter var(--qls-t) ease,opacity var(--qls-t) ease,transform var(--qls-t) ease,background-color var(--qls-t) ease,border-color var(--qls-t) ease,box-shadow var(--qls-t) ease}
.qls__item:hover,.qls__item:focus-visible{filter:grayscale(var(--qls-hgs));opacity:var(--qls-hop);transform:scale(var(--qls-hs))}
.qls__item:focus-visible{outline:2px solid currentColor;outline-offset:6px}
.qls .qls__img{display:block;height:var(--qls-h);width:auto;max-width:none;object-fit:contain;margin:0;border:0;border-radius:0;box-shadow:none}

/* text logos */
.qls .qls__text{display:inline-flex;flex-direction:column;align-items:flex-start;color:#111;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:32px;font-weight:800;line-height:1;letter-spacing:-.02em;white-space:nowrap}
.qls .qls__tag{display:block;margin-top:.4em;font-size:.3em;font-weight:500;letter-spacing:.04em;line-height:1.2;opacity:.8;text-transform:none;font-style:italic}

/* presets – every one of these can be overridden per logo in Elementor */
.qls .qls-p--bold-sans{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:800;letter-spacing:-.02em}
.qls .qls-p--serif{font-family:"Playfair Display","Bodoni MT",Didot,Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.01em}
.qls .qls-p--caps{font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.qls .qls-p--caps .qls__name{font-size:.78em}
.qls .qls-p--italic{font-style:italic;font-weight:700;letter-spacing:-.01em}
.qls .qls-p--condensed{font-family:"Oswald","Arial Narrow","Roboto Condensed",Impact,sans-serif;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.qls .qls-p--rounded{font-family:"Nunito","Varela Round","Trebuchet MS",sans-serif;font-weight:800;letter-spacing:-.01em}
.qls .qls-p--mono{font-family:ui-monospace,Menlo,Consolas,"Courier New",monospace;font-weight:700;letter-spacing:-.03em}
.qls .qls-p--light{font-weight:300;letter-spacing:.01em}

/* accents (use --qls-ac, defaults to the text color) */
.qls .qls__name{display:inline-block}
.qls .qls-a--underscore .qls__name::after{content:"";display:inline-block;width:1.1em;height:.08em;margin-left:.1em;background:var(--qls-ac,currentColor);vertical-align:baseline}
.qls .qls-a--underline .qls__name{padding-bottom:.1em;border-bottom:.1em solid var(--qls-ac,currentColor)}
.qls .qls-a--dot .qls__name::before{content:"";display:inline-block;width:.36em;height:.36em;margin-right:.3em;border-radius:50%;background:var(--qls-ac,currentColor);vertical-align:.12em}
.qls .qls-a--diamond .qls__name::before{content:"";display:inline-block;width:.3em;height:.3em;margin-right:.4em;background:var(--qls-ac,currentColor);transform:rotate(45deg);vertical-align:.14em}
.qls .qls-a--box .qls__name{padding:.2em .5em;border:.09em solid var(--qls-ac,currentColor);border-radius:.18em}

@media (max-width:767px){.qls .qls__text{font-size:24px}}
@media (prefers-reduced-motion:reduce){
	.qls.is-ready .qls__track{animation:none}
	.qls[data-mode="scroll"] .qls__viewport{overflow-x:auto}
}
