/* --- Keyframe-Animationen --- */
@keyframes pulse { 
    0%, 100% { opacity: 0.5; } 
    50% { opacity: 1; } 
}
.loader-logo {
    animation: pulse 1.5s infinite ease-in-out;
}

@keyframes pulse-border-glow {
    0%, 100% { 
        box-shadow: 0 0 15px rgba(255, 255, 255, 0.05), inset 0 0 10px rgba(255, 255, 255, 0.05); 
    }
    50% { 
        box-shadow: 0 0 30px rgba(255, 255, 255, 0.15), inset 0 0 20px rgba(255, 255, 255, 0.08); 
    }
}
.content-screen-wrapper {
    animation: pulse-border-glow 6s infinite ease-in-out;
}

/* MODIFIZIERT: Social Glow Helligkeit und Sichtbarkeit deutlich erhöht */
@keyframes social-glow {
    0%, 100% { opacity: 0.7; transform: translate(-50%, -50%) scale(1); }
    50% { opacity: 1.0; transform: translate(-50%, -50%) scale(1.15); }
}

/* MODIFIZIERT: Glow-Animation für Buttons intensiviert */
@keyframes header-button-glow {
    0%, 100% { 
        box-shadow: 0 0 15px rgba(255, 255, 255, 0.3), 0 0 22px rgba(255, 255, 255, 0.2); 
    }
    50% { 
        box-shadow: 0 0 30px rgba(255, 255, 255, 0.5), 0 0 45px rgba(255, 255, 255, 0.3); 
    }
}

/* NEU: Wiggle-Animation für Social Icons */
@keyframes wiggle {
    0%, 100% { transform: rotate(0); }
    25% { transform: rotate(-5deg) scale(1.2); }
    75% { transform: rotate(5deg) scale(1.2); }
}

/* Animation für aufsteigende Sterne (Idle-Zustand) */
@keyframes fly-up {
    from {
        transform: translateY(0);
        opacity: 1;
    }
    to {
        transform: translateY(-250px);
        opacity: 0;
    }
}

/* NEU: Keyframe für den Navigations-Boost-Effekt */
@keyframes fly-up-boost {
    from {
        transform: translateY(0) scale(0.5);
        opacity: 1;
    }
    to {
        transform: translateY(-400px) scale(1);
        opacity: 0;
    }
}


/* --- Animations-Helferklassen für GSAP --- */
.section-title-reveal .line, 
.section-subtitle span, 
.section-text-reveal { 
    opacity: 0; 
    transform: translateY(100%); 
    display: inline-block; 
}

.section-title-reveal .line { 
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); 
}

/* --- Button Hover-Effekt --- */
.cta-button::before { 
    content: ''; 
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    background-color: var(--bg-color); 
    transform: scaleX(0); 
    transform-origin: right; 
    transition: transform 0.4s cubic-bezier(0.7, 0, 0.3, 1); 
    z-index: -1; 
}
.cta-button:hover { 
    color: var(--accent-color); 
}
.cta-button:hover::before { 
    transform: scaleX(1); 
    transform-origin: left; 
}


/* --- Responsive Anpassungen für Animationen --- */
@media (max-width: 768px) {
    .section-title-reveal .line, 
    .section-subtitle span, 
    .section-text-reveal { 
        opacity: 1; 
        transform: none; 
    }
}