.overlay{opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.overlay.open{opacity:1;visibility:visible}.mega-menu{opacity:0;transition:opacity .3s,transform .3s;transform:translateY(-10px)}.mega-menu.open{opacity:1;transform:translateY(0)}.mobile-menu{transition:transform .3s;transform:translate(-100%)}.mobile-menu.open{transform:translate(0)}.banner{animation:.6s ease-out slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.header{animation:.5s ease-out .2s both fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.logo{transition:transform .3s}.logo:hover{transform:scale(1.02)}.search-container{transition:transform .3s}.search-container:focus-within{transform:scale(1.02)}.btn-animate{transition:all .3s}.btn-animate:hover{transform:scale(1.05)}.btn-animate:active{transform:scale(.95)}.icon-animate{transition:all .3s}.icon-animate:hover{transform:scale(1.1)}.cart-counter{animation:.3s bounceIn}@keyframes bounceIn{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.menu-item{transition:all .2s}.menu-item:hover{background-color:rgba(7,214,175,.1);transform:translateY(-2px)}.mega-panel{opacity:0;transition:opacity .2s,transform .2s;transform:translate(-10px)}.mega-panel.active{opacity:1;transform:translate(0)}.mobile-panel{transition:transform .3s;transform:translate(-100%)}.mobile-panel.active{transform:translate(0)}.loading-spinner{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in{animation:.5s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.scale-in{animation:.3s scaleIn}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.slide-up{animation:.3s slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pulse{animation:2s infinite pulse}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.shake{animation:.5s shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (max-width:768px){.mega-menu{transform:translateY(-5px)}.mobile-menu{transform:translate(-100%)}}*{will-change:auto}.animate-transform{will-change:transform}.animate-opacity{will-change:opacity}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
