html{scroll-behavior:smooth}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{from{opacity:0;transform:scale(0.9)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{from{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:500px;padding-top:var(--space-lg);padding-bottom:var(--space-lg)}}@keyframes slideUp{from{opacity:1;max-height:500px}to{opacity:0;max-height:0}}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes shimmer{0%{background-position:-1000px 0}100%{background-position:1000px 0}}.animate-fade-in{animation:fadeIn 0.6s ease-out forwards}.animate-fade-in-up{animation:fadeInUp 0.8s ease-out forwards}.animate-fade-in-left{animation:fadeInLeft 0.8s ease-out forwards}.animate-fade-in-right{animation:fadeInRight 0.8s ease-out forwards}.animate-scale-in{animation:scaleIn 0.5s ease-out forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-bounce{animation:bounce 1s ease-in-out}.animate-stagger-1{animation-delay:0.1s}.animate-stagger-2{animation-delay:0.2s}.animate-stagger-3{animation-delay:0.3s}.animate-stagger-4{animation-delay:0.4s}.animate-stagger-5{animation-delay:0.5s}.animate-stagger-6{animation-delay:0.6s}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity 0.6s ease-out,transform 0.6s ease-out}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.faq-answer{overflow:hidden;max-height:0;transition:max-height 0.3s ease-out,opacity 0.3s ease-out;opacity:0}.faq-item.active .faq-answer{opacity:1}.faq-icon{transition:transform 0.3s ease-out}.btn{position:relative;overflow:hidden}.btn::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background-color:rgba(255,255,255,0.2);transform:translate(-50%,-50%);transition:width 0.6s ease-out,height 0.6s ease-out}.btn:hover::before{width:300px;height:300px}.module-card,.benefit-card,.testimonial-card{transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.hero-content>*{opacity:0;animation:fadeInUp 0.8s ease-out forwards}.hero-headline{animation-delay:0.2s}.hero-subheadline{animation-delay:0.4s}.hero-cta{animation-delay:0.6s}.section-headline{opacity:0;transform:translateY(20px)}.section-headline.is-visible{animation:fadeInUp 0.6s ease-out forwards}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.animated-gradient{background-size:200% 200%;animation:gradientShift 15s ease infinite}.hover-lift{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}*:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.transition-colors{transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}@keyframes pageLoad{from{opacity:0}to{opacity:1}}body{animation:pageLoad 0.3s ease-out}@keyframes scrollIndicator{0%,100%{transform:translateY(0);opacity:1}50%{transform:translateY(10px);opacity:0.5}}.scroll-indicator{animation:scrollIndicator 2s ease-in-out infinite}.cta-pulse{animation:pulse 2s ease-in-out infinite}.testimonial-card{opacity:0;transform:scale(0.95)}.testimonial-card.is-visible{animation:scaleIn 0.5s ease-out forwards}.pricing-card{opacity:0;transform:scale(0.95)}.pricing-card.is-visible{animation:scaleIn 0.6s ease-out forwards}.module-card{opacity:0;transform:translateY(20px)}.module-card.is-visible{animation:fadeInUp 0.6s ease-out forwards}.benefit-card{opacity:0;transform:translateY(20px)}.benefit-card.is-visible{animation:fadeInUp 0.6s ease-out forwards}.module-icon,.benefit-icon{transition:transform var(--transition-fast)}.module-card:hover .module-icon,.benefit-card:hover .benefit-icon{transform:scale(1.1) rotate(5deg)}.language-toggle .lang-option{transition:all var(--transition-fast)}.language-toggle:hover .lang-option.active{transform:scale(1.1)}.social-link{transition:all var(--transition-fast)}.social-link:hover{transform:translateY(-4px) rotate(5deg)}.navbar{transition:box-shadow var(--transition-fast),background-color var(--transition-fast)}.navbar.scrolled{box-shadow:var(--shadow-md)}img[data-lazy]{opacity:0;transition:opacity 0.4s ease-in-out}img.lazy-loaded{opacity:1}img.loaded{opacity:1}img.load-error,img.fallback-failed{opacity:0.5;filter:grayscale(100%)}img.using-fallback{opacity:0.8}img[data-lazy].blur-up{filter:blur(10px);transition:filter 0.4s ease-in-out,opacity 0.4s ease-in-out}img[data-lazy].blur-up.loaded{filter:blur(0)}.image-placeholder{background:linear-gradient( 90deg,var(--color-light) 0%,#f0f0f0 50%,var(--color-light) 100% );background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}picture{display:block;width:100%;height:100%}picture img{width:100%;height:auto;display:block}.testimonial-photo,.instructor-photo{position:relative;overflow:hidden}.testimonial-photo img,.instructor-photo img{object-fit:cover;width:100%;height:100%}.webp .no-webp-fallback{display:none}.no-webp .webp-only{display:none}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}.animate-on-scroll{opacity:1;transform:none}img[data-lazy]{opacity:1}}