.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.animate-on-scroll.stagger>*{opacity:0;transform:translateY(20px);transition:opacity .5s ease-out,transform .5s ease-out}.animate-on-scroll.stagger.is-visible>:first-child{transition-delay:0.1s}.animate-on-scroll.stagger.is-visible>:nth-child(2){transition-delay:0.2s}.animate-on-scroll.stagger.is-visible>:nth-child(3){transition-delay:0.3s}.animate-on-scroll.stagger.is-visible>:nth-child(4){transition-delay:0.4s}.animate-on-scroll.stagger.is-visible>:nth-child(5){transition-delay:0.5s}.animate-on-scroll.stagger.is-visible>*{opacity:1;transform:translateY(0)}.animate-fade-in{animation:fadeIn .8s ease-out forwards}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.animate-fade-in-up{opacity:0;animation:fadeInUp .8s ease-out forwards;animation-delay:var(--delay, 0s)}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-left{animation:fadeInLeft .8s ease-out forwards;animation-delay:var(--delay, 0s)}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.animate-fade-in-right{animation:fadeInRight .8s ease-out forwards;animation-delay:var(--delay, 0s)}@keyframes fadeInRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.animate-scale-up{animation:scaleUp .6s ease-out forwards;animation-delay:var(--delay, 0s)}@keyframes scaleUp{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-float{animation:float 6s ease-in-out infinite}@keyframes float{0%,100%{transform:translateY(0) rotateY(-5deg)}50%{transform:translateY(-10px) rotateY(-5deg)}}.animate-pulse-glow{animation:pulseGlow 2s ease-in-out infinite}@keyframes pulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(201,162,39,.4)}50%{box-shadow:0 0 20px 10px rgba(201,162,39,.2)}}.animate-shimmer{position:relative;overflow:hidden}.animate-shimmer::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer 3s infinite;transform:translateX(-100%);will-change:transform}@keyframes shimmer{0%{transform:translateX(-100%)}100%,50%{transform:translateX(100%)}}.btn::before{content:'';position:absolute;top:50%;left:50%;width:300px;height:300px;background:rgba(255,255,255,.2);border-radius:50%;transform:translate(-50%,-50%) scale(0);transition:transform .6s ease;will-change:transform}.btn:active::before{transform:translate(-50%,-50%) scale(1)}.link-animated{position:relative;display:inline-block}.link-animated::after{content:'';position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s ease;will-change:transform}.link-animated:hover::after{transform:scaleX(1)}.univers__item::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.5) 0,transparent 50%);opacity:0;transition:opacity .3s ease}.univers__item:hover::after{opacity:1}body{animation:pageLoad .5s ease-out}@keyframes pageLoad{from{opacity:0}to{opacity:1}}.parallax-container{overflow:hidden;position:relative}.parallax-bg{position:absolute;inset:-10%;background-size:cover;background-position:center;will-change:transform}.lightbox__image{transform:scale(.9);opacity:0;transition:transform .3s ease,opacity .3s ease}.lightbox--open .lightbox__image{transform:scale(1);opacity:1}.form__input{transition:border-color .3s ease,box-shadow .3s ease,transform .2s ease}.form__input:focus{transform:scale(1.01)}.form__message{animation:slideDown .3s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form__checkbox{transition:transform .2s ease}.form__checkbox:checked{animation:checkPop .3s ease}@keyframes checkPop{0%{transform:scale(1)}50%{transform:scale(1.2)}100%{transform:scale(1)}}.faq__answer{animation:accordionOpen .3s ease-out}@keyframes accordionOpen{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.countdown__number{transition:transform .3s ease}.countdown__number--changed{animation:numberFlip .3s ease}@keyframes numberFlip{0%{transform:translateY(0);opacity:1}50%{transform:translateY(-20px);opacity:0}51%{transform:translateY(20px)}100%{transform:translateY(0);opacity:1}}.music-player--playing .music-player__toggle{animation:musicPulse 1s ease-in-out infinite}@keyframes musicPulse{0%,100%{box-shadow:0 0 0 0 rgba(201,162,39,.4)}50%{box-shadow:0 0 15px 5px rgba(201,162,39,.2)}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}.animate-on-scroll{opacity:1;transform:none}.animate-float,.animate-pulse-glow,.animate-shimmer{animation:none}html{scroll-behavior:auto}}