/* CIDES Partners & Clients carousel */
.cides-partners-carousel{
    position:relative;
    overflow:hidden;
    padding:76px 0 82px;
    background:#fff;
    color:#102619;
    border-top:1px solid #eef1ec;
}
.cides-partners-carousel::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 10% 12%,rgba(247,197,44,.08),transparent 28%),
        radial-gradient(circle at 90% 85%,rgba(30,115,52,.07),transparent 30%);
}
.cides-partners-carousel>.cides-container{position:relative;z-index:1}
.cides-partners-carousel__heading{
    max-width:790px;
    margin:0 auto 38px;
    text-align:center;
}
.cides-partners-carousel__heading .cides-df-kicker{justify-content:center}
.cides-partners-carousel__heading h2{
    margin:10px 0 14px;
    color:#102619;
    font-size:clamp(34px,4vw,52px);
    font-weight:750;
    line-height:1.05;
    letter-spacing:-.035em;
}
.cides-partners-carousel__heading p{
    margin:0 auto;
    max-width:720px;
    color:#4e5b51;
    font-size:17px;
    font-weight:500;
    line-height:1.7;
}
.cides-partners-carousel__shell{
    display:grid;
    grid-template-columns:50px minmax(0,1fr) 50px;
    gap:16px;
    align-items:center;
}
.cides-partners-carousel__viewport{
    min-width:0;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    overscroll-behavior-inline:contain;
    border-radius:24px;
}
.cides-partners-carousel__viewport::-webkit-scrollbar{display:none}
.cides-partners-carousel__viewport:focus-visible{
    outline:3px solid rgba(247,197,44,.8);
    outline-offset:5px;
}
.cides-partners-carousel__track{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 64px)/5);
    gap:16px;
    padding:4px;
}
.cides-partner-card{
    scroll-snap-align:start;
    min-width:0;
    min-height:198px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:22px 16px 18px;
    border:1px solid #e1e9e1;
    border-radius:20px;
    background:#fff;
    color:#102619;
    text-align:center;
    text-decoration:none;
    box-shadow:0 12px 34px rgba(12,75,37,.06);
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
a.cides-partner-card:hover,
a.cides-partner-card:focus-visible{
    transform:translateY(-4px);
    border-color:#c8dccb;
    box-shadow:0 18px 44px rgba(12,75,37,.12);
}
.cides-partner-card__logo{
    width:100%;
    height:92px;
    display:grid;
    place-items:center;
    padding:8px;
}
.cides-partner-card__logo img{
    display:block;
    width:100%;
    height:100%;
    max-width:170px;
    object-fit:contain;
    filter:saturate(.94);
}
.cides-partner-card__fallback{
    width:72px;
    height:72px;
    display:grid;
    place-items:center;
    border-radius:18px;
    background:#edf5ee;
    color:#0c4b25;
    font-size:30px;
    font-weight:800;
}
.cides-partner-card strong{
    display:block;
    max-width:100%;
    color:#102619;
    font-size:15px;
    font-weight:750;
    line-height:1.35;
}
.cides-partner-card small{
    color:#607066;
    font-size:12px;
    font-weight:650;
}
.cides-partners-carousel__control{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:50%;
    background:#0c4b25;
    color:#fff;
    font-size:22px;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 10px 26px rgba(12,75,37,.17);
    transition:transform .18s ease,background .18s ease;
}
.cides-partners-carousel__control:hover,
.cides-partners-carousel__control:focus-visible{
    transform:scale(1.06);
    background:#1e7334;
}
.cides-partners-carousel__control:disabled{opacity:.35;cursor:default;transform:none}

@media(max-width:1100px){
    .cides-partners-carousel__track{grid-auto-columns:calc((100% - 32px)/3)}
}
@media(max-width:760px){
    .cides-partners-carousel{padding:62px 0 68px}
    .cides-partners-carousel__heading{margin-bottom:28px}
    .cides-partners-carousel__heading p{font-size:16px}
    .cides-partners-carousel__shell{grid-template-columns:42px minmax(0,1fr) 42px;gap:9px}
    .cides-partners-carousel__control{width:40px;height:40px;font-size:19px}
    .cides-partners-carousel__track{grid-auto-columns:calc((100% - 14px)/2);gap:14px}
    .cides-partner-card{min-height:178px;padding:18px 12px}
    .cides-partner-card__logo{height:82px}
}
@media(max-width:480px){
    .cides-partners-carousel__shell{display:block}
    .cides-partners-carousel__viewport{border-radius:18px}
    .cides-partners-carousel__track{grid-auto-columns:82%;gap:12px}
    .cides-partners-carousel__control{display:none}
}
@media(prefers-reduced-motion:reduce){
    .cides-partner-card,.cides-partners-carousel__control{transition:none}
    .cides-partners-carousel__viewport{scroll-behavior:auto}
}
