/* CAFEX GROUP SARL — one-at-a-time floating partner carousel */
.cafex-partner-rotator{max-width:920px;margin:36px auto 0;padding:0 18px;text-align:center;isolation:isolate}
.partner-stage{position:relative;min-height:360px;display:grid;place-items:center;overflow:hidden;border-radius:28px;border:1px solid #e6edf4;background:radial-gradient(circle at 50% 42%,#fff 0%,#fbfcff 56%,#f3f7fb 100%);box-shadow:0 20px 62px rgba(5,31,65,.065)}
.partner-stage:before,.partner-stage:after{content:"";position:absolute;pointer-events:none;border-radius:50%;filter:blur(6px)}
.partner-stage:before{width:225px;height:225px;background:rgba(202,158,53,.06);left:-92px;top:-130px}
.partner-stage:after{width:260px;height:260px;background:rgba(22,71,117,.045);right:-110px;bottom:-152px}
.partner-orbit{position:absolute;pointer-events:none;border:1px solid rgba(12,48,92,.065);border-radius:50%;z-index:0}
.partner-orbit-a{width:460px;height:460px}
.partner-orbit-b{width:620px;height:620px;border-color:rgba(200,151,43,.08)}
.partner-slides{position:relative;width:100%;height:360px;z-index:1}
.partner-slide{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:34px 38px;opacity:0;visibility:hidden;transform:translateY(17px) scale(.955);transition:opacity .7s ease,visibility .7s ease,transform .7s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.partner-slide.is-active{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}
.partner-logo-display{width:min(470px,100%);height:198px;background:#fff;border:1px solid #e7edf4;border-radius:22px;box-shadow:0 17px 46px rgba(11,36,66,.10);display:flex;align-items:center;justify-content:center;padding:28px;animation:cafex-partner-float 5s ease-in-out infinite}
.partner-logo-display img{width:100%;height:100%;object-fit:contain;display:block}
.partner-slide h3{font-size:clamp(17px,2.2vw,22px);line-height:1.3;letter-spacing:-.015em;color:#0e2b52;font-weight:750;margin:0}
@keyframes cafex-partner-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.partner-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin:21px 0 0}
.partner-nav{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;border:1px solid #dce4ec;background:#fff;color:#0c315d;box-shadow:0 7px 18px rgba(6,33,68,.07);cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}
.partner-nav:hover{background:#0c315d;color:#fff;transform:translateY(-2px)}
.partner-nav:focus-visible{outline:3px solid #c49a36;outline-offset:3px}
.partner-progress-wrap{width:min(270px,44vw);display:flex;align-items:center;justify-content:center;gap:16px}
.partner-position{white-space:nowrap;color:#20416a;font-weight:750;font-size:14px;font-variant-numeric:tabular-nums}
.partner-position span{color:#9ca9b8;margin:0 5px}
.partner-progress-track{position:relative;flex:1;height:3px;border-radius:30px;background:#e7edf4;overflow:hidden}
.partner-progress-bar{display:block;width:100%;height:100%;background:linear-gradient(90deg,#d3a443,#af7c13);transform-origin:left center;animation:cafex-partner-progress 4.5s linear infinite}
@keyframes cafex-partner-progress{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}
.cafex-partner-rotator.is-paused .partner-progress-bar{animation-play-state:paused}
.partner-rotation-note{margin:13px 0 0;color:#718197;font-size:12px;letter-spacing:.04em}
.cafex-partners-section .cafex-section-top{align-items:end}
@media(max-width:700px){.cafex-partner-rotator{padding:0 2px;margin-top:24px}.partner-stage{min-height:292px;border-radius:18px}.partner-slides{height:292px}.partner-slide{padding:25px 20px;gap:17px}.partner-logo-display{height:160px;width:min(390px,100%);padding:20px;border-radius:18px}.partner-orbit-a{width:360px;height:360px}.partner-orbit-b{width:490px;height:490px}.partner-controls{gap:13px}.partner-nav{width:44px;height:44px}.partner-slide h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.partner-logo-display,.partner-progress-bar{animation:none!important}.partner-slide,.partner-nav{transition:none!important}}
