/* Animations */
.fade-in{opacity:0;transform:translateY(30px);transition:opacity 0.6s ease,transform 0.6s ease}
.fade-in.visible{opacity:1;transform:translateY(0)}
.fade-in-left{opacity:0;transform:translateX(-30px);transition:opacity 0.6s ease,transform 0.6s ease}
.fade-in-left.visible{opacity:1;transform:translateX(0)}
.fade-in-right{opacity:0;transform:translateX(30px);transition:opacity 0.6s ease,transform 0.6s ease}
.fade-in-right.visible{opacity:1;transform:translateX(0)}
.scale-in{opacity:0;transform:scale(0.9);transition:opacity 0.6s ease,transform 0.6s ease}
.scale-in.visible{opacity:1;transform:scale(1)}

/* Counter Animation */
.counter{font-variant-numeric:tabular-nums}

/* Page Transitions */
.ng-enter{animation:pageIn 0.5s ease both}
.ng-leave{animation:pageOut 0.3s ease both}
@keyframes pageIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes pageOut{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}

/* Responsive */
@media(max-width:1024px){
    .hero-content{grid-template-columns:1fr;gap:40px}
    .hero-title{font-size:44px}
    .hero-visual{display:none}
    .about-grid{grid-template-columns:1fr;gap:40px}
    .services-grid{grid-template-columns:repeat(2,1fr)}
    .portfolio-grid{grid-template-columns:repeat(2,1fr)}
    .contact-grid{grid-template-columns:1fr}
    .process-grid{grid-template-columns:repeat(2,1fr)}
    .process-line{display:none}
    .footer-top{grid-template-columns:1fr 1fr;gap:30px}
    .section-title{font-size:34px}
    .cta-title{font-size:36px}
    .team-grid-4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
    .menu-toggle{display:flex}
    .nav-cta{display:none}
    .hero-title{font-size:36px}
    .hero-description{font-size:16px}
    .hero-stats{flex-direction:column;gap:20px}
    .services-grid{grid-template-columns:1fr}
    .portfolio-grid{grid-template-columns:1fr}
    .about-features{grid-template-columns:1fr}
    .form-row{grid-template-columns:1fr}
    .process-grid{grid-template-columns:1fr}
    .team-grid-4{grid-template-columns:1fr}
    .footer-top{grid-template-columns:1fr}
    .footer-bottom{flex-direction:column;gap:12px;text-align:center}
    .section{padding:60px 0}
    .section-title{font-size:28px}
    .cta-title{font-size:28px}
    .custom-cursor,.custom-cursor-follower{display:none}
    
    /* SEO Page Responsiveness */
    .seo-hero-grid, .seo-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: center;
    }
    .seo-hero-title {
        font-size: 32px;
    }
    .seo-hero-content {
        order: 2;
    }
    .seo-hero-visual {
        order: 1;
        margin-bottom: 20px;
    }
    .seo-prose {
        order: 2;
    }
    .seo-img-box {
        order: 1;
    }
    .seo-objective-grid {
        grid-template-columns: 1fr;
    }
}
@media(max-width:480px){
    .hero-title{font-size:30px}
    .hero-buttons{flex-direction:column}
    .btn{width:100%;justify-content:center}
    .container{padding:0 16px}
}
