/*
Bu yazılım anxcure.com'a aittir.
Tüm hakları anxcure.com tarafından saklıdır.
İzinsiz kullanım, kopyalama veya dağıtım yasaktır.
© 2025 anxcure.com. Tüm hakları saklıdır.
*/

/* ===== GELİŞMİŞ SCROLL ANİMASYONLARI ===== */

/* AOS Animasyon Geliştirmeleri */
[data-aos] {
    transition-duration: 0.8s;
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Özel Animasyon Efektleri */
[data-aos="fade-up-slow"] {
    opacity: 0;
    transform: translateY(60px);
    transition: all 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos="fade-up-slow"].aos-animate {
    opacity: 1;
    transform: translateY(0);
}

[data-aos="slide-in-left"] {
    opacity: 0;
    transform: translateX(-100px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos="slide-in-left"].aos-animate {
    opacity: 1;
    transform: translateX(0);
}

[data-aos="slide-in-right"] {
    opacity: 0;
    transform: translateX(100px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos="slide-in-right"].aos-animate {
    opacity: 1;
    transform: translateX(0);
}

[data-aos="scale-in"] {
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos="scale-in"].aos-animate {
    opacity: 1;
    transform: scale(1);
}

[data-aos="flip-left"] {
    opacity: 0;
    transform: perspective(1000px) rotateY(-90deg);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos="flip-left"].aos-animate {
    opacity: 1;
    transform: perspective(1000px) rotateY(0deg);
}

[data-aos="flip-right"] {
    opacity: 0;
    transform: perspective(1000px) rotateY(90deg);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos="flip-right"].aos-animate {
    opacity: 1;
    transform: perspective(1000px) rotateY(0deg);
}

/* Staggered Animasyonlar */
.stagger-animation [data-aos] {
    transition-delay: calc(var(--stagger-delay, 0) * 100ms);
}

/* Parallax Efektleri */
.parallax-element {
    transform: translateZ(0);
    will-change: transform;
}

/* Scroll Progress Bar */
.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 4px;
    background: linear-gradient(90deg, #4FD1C5, #38B2AC);
    z-index: 9999;
    transition: width 0.1s ease;
}

/* Smooth Scroll */
html {
    scroll-behavior: smooth;
}

/* Intersection Observer Optimizasyonları */
.observe-element {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.observe-element.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Hover Efektleri ile Kombine Animasyonlar */
.feature-card[data-aos] {
    transition: all 0.3s ease;
}

.feature-card[data-aos]:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}

/* Loading States */
.loading-animation {
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.6s ease forwards;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Mobile Optimizasyonları */
@media (max-width: 768px) {
    [data-aos] {
        transition-duration: 0.5s;
    }
    
    [data-aos="fade-up-slow"] {
        transform: translateY(30px);
    }
    
    [data-aos="slide-in-left"],
    [data-aos="slide-in-right"] {
        transform: translateX(0);
    }
}

/* Performance Optimizasyonları */
[data-aos] {
    will-change: transform, opacity;
}

[data-aos].aos-animate {
    will-change: auto;
}

/* Dark Theme Desteği */
[data-theme="dark"] [data-aos] {
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Özel Animasyon Sınıfları */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.animate-on-scroll.visible {
    opacity: 1;
    transform: translateY(0);
}

.animate-on-scroll-left {
    opacity: 0;
    transform: translateX(-50px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.animate-on-scroll-left.visible {
    opacity: 1;
    transform: translateX(0);
}

.animate-on-scroll-right {
    opacity: 0;
    transform: translateX(50px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.animate-on-scroll-right.visible {
    opacity: 1;
    transform: translateX(0);
}

/* Counter Animasyonları */
.counter-animate {
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.counter-animate.visible {
    opacity: 1;
    transform: scale(1);
}

/* Progress Bar Animasyonları */
.progress-animate {
    width: 0%;
    transition: width 1.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.progress-animate.visible {
    width: 100%;
}

/* Card Hover Animasyonları */
.card-hover-animate {
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.card-hover-animate:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 15px 35px rgba(0,0,0,0.1);
}

/* Text Reveal Animasyonları */
.text-reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.text-reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Image Reveal Animasyonları */
.image-reveal {
    opacity: 0;
    transform: scale(0.9);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.image-reveal.visible {
    opacity: 1;
    transform: scale(1);
}

/* Button Animasyonları */
.button-animate {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.button-animate.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Form Element Animasyonları */
.form-animate {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.form-animate.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Staggered Children Animasyonları */
.stagger-children > * {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.stagger-children.visible > * {
    opacity: 1;
    transform: translateY(0);
}

.stagger-children.visible > *:nth-child(1) { transition-delay: 0.1s; }
.stagger-children.visible > *:nth-child(2) { transition-delay: 0.2s; }
.stagger-children.visible > *:nth-child(3) { transition-delay: 0.3s; }
.stagger-children.visible > *:nth-child(4) { transition-delay: 0.4s; }
.stagger-children.visible > *:nth-child(5) { transition-delay: 0.5s; }
.stagger-children.visible > *:nth-child(6) { transition-delay: 0.6s; }
