/* Premium-Akzente: Mesh, Orbs, Glanz – Startseite, Leistungen, Content-Pages */
.fx-section{position:relative;overflow:hidden}
.fx-mesh::before{
  content:"";position:absolute;width:min(520px,80vw);height:min(520px,80vw);border-radius:50%;
  background:radial-gradient(circle,rgba(34,98,68,.09) 0%,transparent 68%);
  top:-180px;right:-120px;pointer-events:none;z-index:0
}
.fx-mesh::after{
  content:"";position:absolute;width:min(380px,60vw);height:min(380px,60vw);border-radius:50%;
  background:radial-gradient(circle,rgba(159,209,180,.14) 0%,transparent 70%);
  bottom:-140px;left:-80px;pointer-events:none;z-index:0
}
.fx-dark.fx-mesh::before{background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 68%)}
.fx-dark.fx-mesh::after{background:radial-gradient(circle,rgba(159,209,180,.08) 0%,transparent 70%)}
.fx-section > .wrap,.fx-section > .gallery-grid,.fx-section > .gallery-showcase{position:relative;z-index:2}

.section-sparkles{
  position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden
}
.section-sparkles .sparkle{
  position:absolute;animation:sparkle-drift var(--dur,7s) var(--delay,0s) infinite ease-in-out
}
.section-sparkles .sparkle--dot{
  width:var(--size,3px);height:var(--size,3px);border-radius:50%;
  background:radial-gradient(circle,rgba(34,98,68,.55) 0%,transparent 70%)
}
.fx-dark .section-sparkles .sparkle--dot{
  background:radial-gradient(circle,#fff 0%,rgba(255,255,255,.25) 45%,transparent 70%);
  box-shadow:0 0 8px rgba(255,255,255,.35)
}
.section-sparkles .sparkle--star{
  font-size:var(--size,9px);line-height:1;color:rgba(34,98,68,.35);font-family:serif
}
.fx-dark .section-sparkles .sparkle--star{
  color:rgba(255,236,179,.75);
  text-shadow:0 0 10px rgba(255,176,58,.45)
}

.glass-card{
  background:rgba(255,255,255,.78);backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.65);
  box-shadow:0 20px 60px rgba(16,42,29,.12),inset 0 1px 0 rgba(255,255,255,.8)
}

.shine-line{
  position:relative
}
.shine-line::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(34,98,68,.25),transparent)
}

/* Startseite: Sektionen aufwerten */
.leistungen-section::after{
  content:"";position:absolute;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,176,58,.06) 0%,transparent 70%);
  bottom:-80px;left:-60px;pointer-events:none
}
.about-section .section-sparkles,.reviews-after-hero{position:relative}
#ablauf.fx-section::before{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(rgba(34,98,68,.04) 1px,transparent 1px);
  background-size:24px 24px;opacity:.5;pointer-events:none
}

@media (prefers-reduced-motion:reduce){
  .section-sparkles{display:none}
}
