
/* ───────────────────────────────────────────────
   styles.css L3831-3905 — block_client_carousel__wall 40 logos grid + override
   ─────────────────────────────────────────────── */
/* ============================================================
   Client wall (40 logos grid)
   ============================================================ */
.block_client_carousel__wall {
  margin-top: 40px;
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 1px;
  background: var(--ink-300);
  border: 1px solid var(--ink-300);
  border-radius: var(--r-lg, 16px);
  overflow: hidden;
}
@media (max-width: 1100px) { .block_client_carousel__wall { grid-template-columns: repeat(5, 1fr); } }
@media (max-width: 700px)  { .block_client_carousel__wall { grid-template-columns: repeat(3, 1fr); } }

.block_client_carousel__logo {
  background: var(--paper);
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
  transition: background 0.18s;
}
.block_client_carousel__logo:hover { background: var(--ink-50); }
.block_client_carousel__logo img {
  max-width: 80%;
  max-height: 56%;
  object-fit: contain;
  filter: grayscale(0.15);
  opacity: 0.92;
  transition: filter 0.18s, opacity 0.18s;
}
.block_client_carousel__logo:hover img {
  filter: none;
  opacity: 1;
}

/* Client wall — 5x8, white background, bottom-only divider per cell */
.block_client_carousel__wall {
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--ink-200) !important;
  border-radius: 0 !important;
  margin-top: 40px;
}
.block_client_carousel__logo {
  background: var(--white) !important;
  border-bottom: 1px solid var(--ink-200) !important;
  border-radius: 0 !important;
}
.block_client_carousel__logo:hover { background: var(--white) !important; }
@media (max-width: 900px) { .block_client_carousel__wall { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 600px) { .block_client_carousel__wall { grid-template-columns: repeat(2, 1fr) !important; } }

/* Client logos section — white bg + 300:169 landscape cells, bigger logos */
.block_client_carousel--marquee { background: var(--white) !important; }
.block_client_carousel__logo {
  aspect-ratio: 300 / 169 !important;
  padding: 18px 22px !important;
}
.block_client_carousel__logo img {
  max-width: 88% !important;
  max-height: 80% !important;
}

/* Client logo — remove padding */
.block_client_carousel__logo { padding: 0 !important; }

/* Client logo — fill cell as much as possible */
.block_client_carousel__logo { padding: 0 !important; }


/* ───────────────────────────────────────────────
   styles.css L3906-3966 — block_client_carousel__swiper marquee
   ─────────────────────────────────────────────── */
/* ============================================================
   Clients — auto-scrolling marquee (Swiper, full-bleed)
   ============================================================ */
.block_client_carousel__swiper {
  margin-top: 40px;
  margin-bottom: 0;
  width: 100%;
  overflow: hidden;
}
/* Section-specific: bigger sub copy + tighter spacing under swiper */
.block_client_carousel--marquee .review-section__sub {
  font-size: 19px !important;
  line-height: 1.55 !important;
}
.block_client_carousel--marquee { padding-bottom: clamp(64px, 8vw, 100px); }
.block_client_carousel__swiper .swiper-wrapper {
  /* linear scrolling instead of easing */
  transition-timing-function: linear !important;
  align-items: center;
}
.block_client_carousel__swiper .swiper-slide {
  width: 320px;
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.block_client_carousel__swiper .swiper-slide .block_client_carousel__logo {
  width: 100% !important;
  height: 100% !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  aspect-ratio: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.block_client_carousel__swiper .swiper-slide .block_client_carousel__logo img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 95% !important;
  object-fit: contain !important;
  filter: grayscale(0.1);
  opacity: 0.95;
}
@media (max-width: 900px) {
  .block_client_carousel__swiper .swiper-slide { width: 180px; height: 120px; }
}
@media (max-width: 600px) {
  .block_client_carousel__swiper .swiper-slide { width: 150px; height: 100px; }
}
.block_client_carousel__logo img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

