.ldfe.ldfe-carousel { min-width: 0; max-width: 100%; }
.ldfe.ldfe-carousel .ldfe-grid {
  display: grid;
  grid-template-columns: none;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - (var(--ldfe-columns,3) - 1) * 28px) / var(--ldfe-columns,3));
  gap: 28px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  padding: 5px 2px 18px;
  scrollbar-width: thin;
  scrollbar-color: #f0e74f #252525;
}
.ldfe.ldfe-carousel .ldfe-card { scroll-snap-align: start; min-width: 0; }
.ldfe.ldfe-carousel .ldfe-controls { display: flex; justify-content: flex-end; gap: 12px; margin: 0 0 18px; }
.ldfe.ldfe-carousel .ldfe-controls[hidden] { display: none; }
.ldfe.ldfe-carousel .ldfe-controls button {
  display: inline-flex; align-items: center; justify-content: center;
  width: 48px; height: 48px; padding: 0; border: 1px solid #f0e74f;
  border-radius: 50%; color: #0d0d0d; background: #f0e74f;
  font: 26px/1 Arial, sans-serif; cursor: pointer;
}
.ldfe.ldfe-carousel .ldfe-controls button:disabled { opacity: .35; cursor: default; }
.ldfe.ldfe-carousel button:focus-visible,
.ldfe.ldfe-carousel .ldfe-grid:focus-visible { outline: 3px solid #f0e74f; outline-offset: 3px; }
@media(max-width:900px) {
  .ldfe.ldfe-carousel .ldfe-grid { grid-auto-columns: calc((100% - 28px) / 2); }
}
@media(max-width:540px) {
  .ldfe.ldfe-carousel .ldfe-grid { grid-auto-columns: 88%; gap: 18px; }
}

/* Paste into WordPress Appearance > Customize > Additional CSS,
   or your site's existing global custom CSS area. */
.ldfe.ldfe-carousel {
  font-family: Inter, sans-serif;
  font-weight: 500;
  --ldfe-accent: #f0e74f !important;
  --ldfe-bg: #151515 !important;
  --ldfe-text: #ffffff !important;
}
.ldfe.ldfe-carousel .ldfe-grid { gap: 28px; }
.ldfe.ldfe-carousel .ldfe-card {
  background: #151515;
  color: #fff;
  border: 1px solid #ffffff26;
  border-radius: 12px;
  box-shadow: none;
}
.ldfe.ldfe-carousel .ldfe-art { aspect-ratio: 16 / 9; background: #050505; }
.ldfe.ldfe-carousel .ldfe-art img { object-fit: contain; }
.ldfe.ldfe-carousel .ldfe-art:hover img { transform: none; }
.ldfe.ldfe-carousel .ldfe-body { padding: 24px; gap: 16px; }
.ldfe.ldfe-carousel time { color: #f0e74f; font-size: 13px; letter-spacing: .025em; }
.ldfe.ldfe-carousel .ldfe-body h3 {
  font-family: "Integral CF Bold", Inter, sans-serif;
  color: #fff;
  font-size: 19px;
  line-height: 1.45;
  font-weight: 700;
}
.ldfe.ldfe-carousel .ldfe-body h3 a { color: #fff; }
.ldfe.ldfe-carousel .ldfe-venue { color: #d0d0d0; font-size: 14px; }
.ldfe.ldfe-carousel a.ldfe-button {
  background: #f0e74f;
  color: #0d0d0d;
  border-radius: 999px;
  font-family: "Integral CF Bold", Inter, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .035em;
  padding: 16px 20px;
}
.ldfe.ldfe-carousel a.ldfe-button:hover { background: #fff66b; color: #0d0d0d; filter: none; }
.ldfe.ldfe-carousel .ldfe-source { color: #f0e74f; }
@media (max-width: 540px) {
  .ldfe.ldfe-carousel .ldfe-body { padding: 20px; }
}
