/* Shared carousel system: homepage and CMS page modules use identical card dimensions. */
.content-carousel{position:relative;width:100%;max-width:1180px;margin-inline:auto;padding-inline:56px;box-sizing:border-box}
.content-carousel-swiper{overflow:hidden;padding:12px 2px 30px}
.content-carousel .swiper-wrapper{align-items:stretch;gap:20px}
.content-carousel .swiper-slide{height:auto;display:flex;box-sizing:border-box}
.content-carousel-nav{position:absolute;top:50%;z-index:8;width:42px;height:42px;border:1px solid rgba(148,163,184,.35);border-radius:50%;background:#fff;color:#0f172a;box-shadow:0 10px 28px rgba(15,23,42,.13);display:grid;place-items:center;transform:translateY(-50%);transition:.22s ease}
.content-carousel-nav:hover{background:var(--ix-primary,#2563eb);color:#fff;transform:translateY(-50%) scale(1.05)}
.content-carousel-prev{left:4px}.content-carousel-next{right:4px}
.content-carousel.is-static .content-carousel-nav{display:none}
.content-carousel.is-static .swiper-wrapper{justify-content:center!important;transform:none!important}
.content-carousel.is-static .content-carousel-swiper{overflow:visible}

/* Width is calculated from the admin-selected visible count, but is identical in every context. */
.content-carousel .swiper-slide{width:calc((100% - (var(--carousel-desktop) - 1)*20px)/var(--carousel-desktop))}
.team-unified-card{width:100%;height:300px;min-height:300px;padding:30px 22px;border:1px solid rgba(148,163,184,.22);border-radius:var(--theme-card-radius,22px);background:#fff;box-shadow:0 14px 42px rgba(15,23,42,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:.28s ease;overflow:hidden}
.team-unified-card:hover{transform:translateY(-7px);box-shadow:0 22px 58px rgba(15,23,42,.14)}
.team-unified-photo-wrap{width:132px;height:132px;flex:0 0 132px;margin-bottom:22px;border-radius:50%;padding:5px;background:#fff;box-shadow:0 13px 34px rgba(15,23,42,.16)}
.team-unified-photo,.team-unified-placeholder{width:100%;height:100%;border-radius:50%;object-fit:cover}
.team-unified-placeholder{display:grid;place-items:center;background:#e2e8f0;color:#64748b;font-size:38px}
.team-unified-card h3{font-size:1.08rem;font-weight:800;color:var(--theme-heading-color,#0f172a);margin:0 0 7px;line-height:1.25}
.team-unified-card p{font-size:.92rem;color:var(--theme-muted-color,#64748b);margin:0;line-height:1.5}
.reference-unified-card{width:100%;height:150px;min-height:150px;padding:24px;border:1px solid rgba(148,163,184,.2);border-radius:var(--theme-card-radius,18px);background:#fff;box-shadow:0 12px 36px rgba(15,23,42,.07);display:flex;align-items:center;justify-content:center;text-align:center;color:#0f172a;font-weight:700;text-decoration:none;transition:.25s ease}
.reference-unified-card:hover{transform:translateY(-5px);box-shadow:0 20px 48px rgba(15,23,42,.12)}
.reference-unified-card img{display:block;max-width:100%;max-height:82px;width:auto;height:auto;object-fit:contain}

@media(max-width:1199.98px){
 .content-carousel{max-width:920px;padding-inline:50px}
 .content-carousel .swiper-slide{width:calc((100% - (var(--carousel-tablet) - 1)*20px)/var(--carousel-tablet))}
 .team-unified-card{height:280px;min-height:280px;padding:26px 18px}
 .team-unified-photo-wrap{width:118px;height:118px;flex-basis:118px}
}
@media(max-width:767.98px){
 .content-carousel{padding-inline:40px}
 .content-carousel .swiper-slide{width:calc((100% - (var(--carousel-mobile) - 1)*20px)/var(--carousel-mobile))}
 .content-carousel-nav{width:36px;height:36px}
 .content-carousel-prev{left:0}.content-carousel-next{right:0}
 .team-unified-card{height:252px;min-height:252px;padding:22px 14px}
 .team-unified-photo-wrap{width:104px;height:104px;flex-basis:104px;margin-bottom:18px}
 .reference-unified-card{height:124px;min-height:124px;padding:16px}
}

/* Final spacing rule: static lists use CSS gap; active Swiper uses spaceBetween. */
.content-carousel:not(.is-static) .swiper-wrapper{gap:0}
.content-carousel.is-static .swiper-wrapper{gap:20px}
