/* -----------------------------
   Galerie (Masonry via columns)
------------------------------*/
.dfv-preloader{
  width:100%;
  text-align:center;
  padding:40px 0;
  font-size:18px;
  font-weight:600;
  opacity:.75;
}

.dfv-load-more{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin: 30px auto 10px;
  padding: 12px 24px;

  border-radius: 999px;
  border: 0;
  background: rgba(230,0,126,.95);
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

/* WICHTIG: Elterncontainer zentrieren */
.dfv-gallery-wrap{
  text-align: center;
}



/* GRID statt Masonry */
/* Einheitliche Bildgröße im Grid */
.dfv-gallery figure {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 380px; /* gewünschte Höhe */
}

.dfv-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* macht einheitliche Kacheln */
  display: block;
  border: 10px solid #FFF !important;
}

.dfv-gallery{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:var(--gap, 10px);
}

@media (max-width:640px){
  .dfv-gallery{
    grid-template-columns:1fr;
  }

  #eventbox-lightbox .epl-wrapper{
    flex-direction: column-reverse !important;
  }

  .dfv-gallery figure{
    height: 260px;
  }
}

.dfv-gallery figure{
  position:relative;
  overflow:hidden;
  box-sizing:border-box;
}

.dfv-gallery img{
  width:100%;
  height:auto;
  display:block;
  border:10px solid #FFF !important;
}

.dfv-bar{
  position:absolute;
  left:50%;
  bottom:12px;
  transform:translateX(-50%);
  display:flex;
  gap:8px;
  z-index:2;
  pointer-events:auto;
}

.dfv-btn{
  border:0;
  border-radius:999px;
  padding:8px 12px;
  font-weight:700;
  color:#fff;
  background:rgba(230,0,126,.95);
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:.5em;
}

.dfv-like.dfv-voted{
  box-shadow:0 0 0 2px rgba(255,255,255,.6);
  transform:translateY(-1px);
}

.dfv-sentinel{
  width:100%;
  height:20px;
}

/* -----------------------------
   Custom Lightbox (EPL)
------------------------------*/
#eventbox-lightbox{display:none;position:fixed;inset:0;z-index:999999;}
#eventbox-lightbox.active{display:block;}
#eventbox-lightbox .epl-bg{position:absolute;inset:0;background:rgba(0,0,0,.92);}
#eventbox-lightbox .epl-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;gap:10px;padding:16px;}
#eventbox-lightbox .epl-topbar{display:flex;align-items:center;justify-content:space-between;color:#fff;font-weight:600;}
#eventbox-lightbox .epl-close{background:transparent;border:0;color:#fff;font-size:28px;line-height:1;cursor:pointer}
#eventbox-lightbox .epl-layout{position:relative;flex:1;display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:center;justify-items:center;min-height:0;}
#eventbox-lightbox .epl-media{max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center;}
#eventbox-lightbox .epl-image{max-width:100%;max-height:86vh;width:auto;height:auto;display:block;box-shadow:0 10px 30px rgba(0,0,0,.35);background:#000}
#eventbox-lightbox .epl-ad-slot{width:100%;height:100%;overflow:auto;display:flex;align-items:center;justify-content:center}
#eventbox-lightbox .epl-like-area{display:flex;justify-content:center}
#eventbox-lightbox .epl-like-area .dfv-bar{position:static;transform:none;margin-top:8px}
#eventbox-lightbox .epl-prev,
#eventbox-lightbox .epl-next{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(255,255,255,.08);
  color:#fff;
  border:0;
  width:44px;
  height:60px;
  cursor:pointer;
  font-size:28px;
  line-height:1;
  border-radius:6px;
  transition:background .15s;
}
#eventbox-lightbox .epl-prev:hover,
#eventbox-lightbox .epl-next:hover{
  background:rgba(255,255,255,.18);
}
#eventbox-lightbox .epl-prev{left:12px;}
#eventbox-lightbox .epl-next{right:12px;}
#eventbox-lightbox .epl-count{opacity:.8}

@media (max-width:1024px){
  #eventbox-lightbox .epl-layout{
    grid-template-columns:1fr;
    grid-auto-rows:auto;
  }
  #eventbox-lightbox .epl-ad-slot{
    order:3;
    width:100%;
  }
}
