.geer-sponsors{width:100%;max-width:100%;margin:24px auto;--geer-gap:20px;--geer-side:40px;font-family:inherit;box-sizing:border-box}
.geer-sponsors *{box-sizing:border-box}
.geer-sponsors__title{margin:0 0 20px;text-align:center;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.3}
.geer-sponsors__shell{display:flex;align-items:center;gap:8px;width:100%;min-width:0}
.geer-sponsors__viewport{min-width:0;flex:1;overflow:hidden;scrollbar-width:none;outline-offset:3px}
.geer-sponsors__track{display:flex;gap:var(--geer-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;padding:8px 1px}
.geer-sponsors__track::-webkit-scrollbar{display:none}
.geer-sponsors__item{min-width:0;flex:0 0 calc((100% - (var(--geer-desktop) - 1)*var(--geer-gap))/var(--geer-desktop));scroll-snap-align:start;display:flex;align-items:center;justify-content:center}
.geer-sponsors__logo{display:flex;width:100%;height:120px;align-items:center;justify-content:center;padding:16px 12px;border:1px solid #e8ecf1;border-radius:10px;background:#fff;box-shadow:0 2px 9px rgba(16,37,63,.035);transition:box-shadow .2s,border-color .2s,transform .2s;text-decoration:none}
.geer-sponsors a.geer-sponsors__logo:hover{transform:translateY(-2px);border-color:#cdd8e5;box-shadow:0 6px 18px rgba(16,37,63,.1)}
.geer-sponsors a.geer-sponsors__logo:focus-visible,.geer-sponsors__arrow:focus-visible,.geer-sponsors__dot:focus-visible{outline:3px solid #297db2;outline-offset:2px}
.geer-sponsors__image{display:block;width:auto!important;height:auto!important;max-width:100%!important;max-height:84px!important;object-fit:contain!important;filter:none!important;box-shadow:none!important;border:0!important}
.geer-sponsors__arrow{flex:0 0 34px;display:grid;place-items:center;padding:0;width:34px;height:40px;border:1px solid #e1e6ed;border-radius:9px;background:#fff;color:#28394a;cursor:pointer;line-height:1;transition:background .2s,border-color .2s}
.geer-sponsors__arrow span{font-family:Arial,sans-serif;font-size:32px;transform:translateY(-2px)}
.geer-sponsors__arrow:hover:not(:disabled){background:#f3f7fa;border-color:#b8c7d4}
.geer-sponsors__arrow:disabled{opacity:.28;cursor:default}
.geer-sponsors__dots{display:flex;justify-content:center;gap:8px;margin:14px 0 0}
.geer-sponsors__dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#c9d2da;cursor:pointer}
.geer-sponsors__dot[aria-current="true"]{background:#3d6d90}
@media(max-width:900px){.geer-sponsors__item{flex-basis:calc((100% - (var(--geer-tablet) - 1)*var(--geer-gap))/var(--geer-tablet))}.geer-sponsors{--geer-gap:14px}.geer-sponsors__logo{height:110px}.geer-sponsors__image{max-height:75px!important}}
@media(max-width:600px){.geer-sponsors{--geer-gap:10px}.geer-sponsors__item{flex-basis:calc((100% - (var(--geer-mobile) - 1)*var(--geer-gap))/var(--geer-mobile))}.geer-sponsors__shell{gap:3px}.geer-sponsors__arrow{flex-basis:25px;width:25px;height:34px}.geer-sponsors__arrow span{font-size:26px}.geer-sponsors__logo{height:91px;padding:9px 7px;border-radius:8px}.geer-sponsors__image{max-height:65px!important}}
@media(prefers-reduced-motion:reduce){.geer-sponsors__track{scroll-behavior:auto}.geer-sponsors__logo{transition:none}}

/* Default: logos sit directly on the page, without forced backgrounds or borders. */
.geer-sponsors{--geer-logo-height:90px;--geer-mobile-logo-height:65px}
.geer-sponsors__logo{height:calc(var(--geer-logo-height) + 30px);background:transparent;border:0;box-shadow:none;border-radius:0;padding:12px}
.geer-sponsors a.geer-sponsors__logo:hover{border:0;box-shadow:none;transform:translateY(-2px)}
.geer-sponsors__image{max-height:var(--geer-logo-height)!important}
.geer-sponsors--cards .geer-sponsors__logo{background:#fff;border:1px solid #e8ecf1;border-radius:10px;box-shadow:0 2px 9px rgba(16,37,63,.035)}
.geer-sponsors--cards a.geer-sponsors__logo:hover{border:1px solid #cdd8e5;box-shadow:0 6px 18px rgba(16,37,63,.1)}
.geer-sponsors[data-motion="continuous"] .geer-sponsors__track{scroll-snap-type:none;scroll-behavior:auto;overscroll-behavior-x:contain}
.geer-sponsors[data-motion="continuous"] .geer-sponsors__item{scroll-snap-align:none}
@media(max-width:600px){.geer-sponsors__logo{height:calc(var(--geer-mobile-logo-height) + 22px);padding:8px 5px}.geer-sponsors__image{max-height:var(--geer-mobile-logo-height)!important}}
/* Track scrolls, never the parent viewport. Keep overflow for looping clones. */
.geer-sponsors__track{width:100%;min-width:0;}
.geer-sponsors__viewport{overflow:hidden}
.geer-sponsors__track{scrollbar-width:none}
.geer-sponsors__arrow:disabled{opacity:.25}

/* In Divi's Visual Builder the slider is a stable static preview, never an animation. */
body.et-fb .geer-sponsors__arrow,body.et-bfb .geer-sponsors__arrow,.geer-sponsors--editor .geer-sponsors__arrow{display:none!important}
body.et-fb .geer-sponsors__track,body.et-bfb .geer-sponsors__track,.geer-sponsors--editor .geer-sponsors__track{overflow:hidden!important;scroll-behavior:auto!important}
.geer-sponsors__editor-label{font:12px/1.4 system-ui,sans-serif!important;color:#64748b!important;text-align:center;margin-bottom:4px}
