
/* ===== v6: Robust full‑bleed (edge‑to‑edge) ===== */

:root{  --carousel-h: clamp(240px, 44vh, 600px);}

/* Make the carousel escape any parent padding/width constraints */
.home-carousel.home-bleed{
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  max-width: 100vw;
  margin-left: -50vw;
  margin-right: -50vw;
  height: var(--carousel-h);
  padding: 0 !important;
  border-radius: 0 !important;
  overflow: hidden;
  background: #f3f5f8;
}

/* Ensure no default margins/paddings interfere */
.home-carousel, .marquee{ margin: 0; }
.home-carousel .marquee-track{
  display: flex;
  gap: var(--gap);
  align-items: stretch;
  height: 100%;
  padding: 0 !important;
  margin: 0 !important;
  will-change: transform;
}
.home-carousel .marquee-track > *{ margin: 0 !important; }

/* Images fill height; keep ratio */
.home-carousel .marquee-track > img{
  height: 100%;
  width: auto;
  max-width: none;
  object-fit: cover;
  object-position: center;
  display: block;
  flex: 0 0 auto;
}

/* Optional global guard for horizontal scrollbars */
html, body { overflow-x: hidden; }

@media (max-width: 390px){
  :root{ --carousel-h: clamp(240px, 48vh, 520px); }
}