/* MAELOU — carrousel horizontal sobre, sans bordure ni recadrage */
.maelou-galerie, .maelou-galerie * { box-sizing: border-box; }
.maelou-galerie {
  --maelou-ink: #352443;
  --maelou-soft: #8d7b96;
  max-width: 920px;
  width: 100%;
  margin: 18px auto 28px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--maelou-ink);
  font-family: inherit;
}
.maelou-galerie__viewport {
  height: clamp(300px, 40vw, 480px);
  width: 100%;
  position: relative;
  overflow: hidden;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.maelou-galerie__track {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  height: 100%;
  transform: translate3d(0, 0, 0);
  transition: transform 850ms cubic-bezier(.22, 1, .36, 1);
  will-change: transform;
}
.maelou-galerie__slide {
  display: flex;
  flex: 0 0 100%;
  min-width: 100%;
  height: 100%;
  margin: 0 !important;
  padding: 0;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  overflow: hidden;
}
.maelou-galerie__slide img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  object-fit: contain;
}
.maelou-galerie__controls {
  min-height: 42px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
  flex-wrap: wrap;
  margin-top: 14px;
}
.maelou-galerie__arrow,
.maelou-galerie__pause,
.maelou-galerie__dot {
  cursor: pointer;
  appearance: none;
  font-family: inherit;
  color: var(--maelou-ink);
  border: 0;
  box-shadow: none;
}
.maelou-galerie__arrow {
  font-size: 17px;
  line-height: 1;
  background: rgba(53,36,67,.07);
  border-radius: 50%;
  padding: 0;
  width: 36px;
  height: 36px;
  transition: background-color .2s ease;
}
.maelou-galerie__arrow:hover {background: rgba(53,36,67,.16);}
.maelou-galerie__position {
  font-family: inherit;
  font-size: 11px;
  letter-spacing: 1.2px;
  font-variant-numeric: tabular-nums;
  color: var(--maelou-soft);
  white-space: nowrap;
}
.maelou-galerie__dots {display: flex; align-items: center; gap: 8px;}
.maelou-galerie__dot {
  width: 8px;
  height: 8px;
  min-width: 8px;
  min-height: 8px;
  padding: 0;
  margin: 0;
  background: rgba(53,36,67,.23);
  border-radius: 50%;
  transition: transform .2s ease, background .2s ease;
}
.maelou-galerie__dot[aria-current="true"] {
  background: var(--maelou-ink);
  transform: scale(1.25);
}
.maelou-galerie__pause {
  padding: 5px 9px;
  border-radius: 5px;
  background: transparent;
  font-size: 11px;
  letter-spacing: .3px;
  color: var(--maelou-soft);
}
.maelou-galerie__pause:hover {color: var(--maelou-ink); background: rgba(53,36,67,.05);}
.maelou-galerie button:focus-visible,
.maelou-galerie:focus-visible {outline: 2px solid #8d6ca4; outline-offset: 4px;}
@media (max-width: 650px) {
  .maelou-galerie__viewport {height: clamp(255px, 77vw, 385px);}
  .maelou-galerie__controls {gap: 10px; margin-top: 10px;}
}
@media (prefers-reduced-motion: reduce) {
  .maelou-galerie__track {transition-duration: 0ms !important;}
}
