/* Leistungen page */
.leistungen-page{text-align:center; max-width:1200px; margin:60px auto; padding:0 16px}
.leistungen-page h1{font-size:clamp(28px,4vw,48px); margin-bottom:32px; text-shadow:0 0 18px rgba(139,92,246,.4)}
.leistungen-grid{display:grid; gap:22px; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));}
.leistung-card{position:relative; border-radius:16px; overflow:hidden; height:320px; background:#0f0f13; border:1px solid rgba(139,92,246,.25); box-shadow:0 0 18px rgba(139,92,246,.12); cursor:pointer; transition: all .25s ease;}
.leistung-card .img-base,.leistung-card .img-hover{position:absolute; inset:0; background-image:var(--img); background-size:cover; background-position:center; transition:opacity .4s ease}
.leistung-card .img-hover{opacity:0; background-image:var(--img2)}
.leistung-card:hover .img-hover{opacity:1}
.leistung-card:hover{transform:translateY(-3px); box-shadow:0 0 30px rgba(139,92,246,.45)}
.caption-top{position:absolute; top:14px; left:50%; transform:translateX(-50%); font-weight:600; font-size:20px; text-shadow:0 0 14px rgba(139,92,246,.4)}
.caption-bottom{position:absolute; bottom:12px; left:50%; transform:translateX(-50%); font-weight:500; font-size:16px; color:#dcdcf8; text-shadow:0 0 10px rgba(139,92,246,.35)}
.leistung-card.active{height:480px; transform:scale(1.05); z-index:10; box-shadow:0 0 36px rgba(139,92,246,.6)}
.leistung-card .info{position:absolute; inset:0; background:rgba(0,0,0,.85); display:none; flex-direction:column; justify-content:center; align-items:center; padding:24px; text-align:center; color:#efeff5; backdrop-filter:blur(8px)}
.leistung-card.active .info{display:flex; animation:fadeIn .3s ease}
.leistung-card .info h3{margin-bottom:10px}
.leistung-card .info ul{text-align:left; max-width:360px; margin:10px auto 0; padding-left:20px}
.leistung-card .info li{margin:6px 0}
.close-card{margin-top:18px; padding:8px 14px; border:none; border-radius:10px; background:rgba(139,92,246,.25); color:#fff; cursor:pointer}
.close-card:hover{background:rgba(139,92,246,.4)}
@keyframes fadeIn{from{opacity:0; transform:translateY(10px)} to{opacity:1; transform:none}}
