@keyframes slideInBounce{0%{opacity:0;transform:translateY(-30px) scale(.8)}60%{opacity:.8;transform:translateY(5px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideOutFade{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:.3;transform:translateY(-15px) scale(.95)}to{opacity:0;transform:translateY(-30px) scale(.8)}}@keyframes expandLine{0%{transform:scaleX(0);opacity:0}50%{opacity:.5}to{transform:scaleX(1);opacity:1}}@keyframes collapseLine{0%{transform:scaleX(1);opacity:1}50%{opacity:.5}to{transform:scaleX(0);opacity:0}}@keyframes moveUpSmooth{0%{transform:translateY(0)}50%{transform:translateY(-30px) scale(1.1)}to{transform:translateY(-25px) scale(1)}}@keyframes moveDownSmooth{0%{transform:translateY(-25px)}50%{transform:translateY(5px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes rotateSwitchButton{0%{transform:rotate(0deg) scale(1)}25%{transform:rotate(90deg) scale(1.1)}50%{transform:rotate(180deg) scale(1.15)}75%{transform:rotate(270deg) scale(1.1)}to{transform:rotate(1turn) scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOutDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}50%{opacity:.7;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.05)}to{opacity:0;transform:scale(.5)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes menu-dropdown-enter{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes menu-dropdown-exit{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.96)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes draw{50%{fill:rgba(0,0,0,0)}to{fill:#02967b;stroke-dashoffset:0}}@keyframes draw-back{0%{fill:#02967b;stroke-dashoffset:0}10%{fill:rgba(0,0,0,0)}to{fill:none;stroke-dashoffset:2000}}@keyframes hide{to{display:none}}@keyframes fadeInOut{0%{opacity:0;transform:translateY(4px)}20%{opacity:1;transform:translateY(0)}80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@keyframes pulse{0%{opacity:.8;transform:scale(1)}25%{opacity:1;transform:scale(1.05)}75%{opacity:.8;transform:scale(.95)}to{opacity:.8;transform:scale(1)}}@keyframes flyAway{0%{opacity:0;offset-distance:0;transform:scale(.8) rotate(0deg)}10%{opacity:1;transform:scale(1) rotate(-10deg)}to{opacity:0;offset-distance:100%;transform:scale(.7) rotate(10deg)}}.side-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:998;opacity:0;visibility:hidden;transition:all .3s ease}.side-menu-overlay.open{opacity:1;visibility:visible}.side-menu{position:fixed;top:0;right:0;height:100dvh;background-color:#fff;z-index:999;transform:translateX(110%);transition:transform .3s ease;display:flex;flex-direction:column;box-shadow:-4px 0 20px rgba(0,0,0,.1);padding:40px;overflow-y:auto;min-width:300px;width:50vw;max-width:600px}@media(max-width:768px){.side-menu{width:100vw;max-width:100vw;padding:40px 16px 16px}}.side-menu .close-button{position:absolute!important;top:30px;right:25px;background:none;border:none;cursor:pointer}.side-menu .close-button svg{width:24px;height:24px}.side-menu.open{transform:translateX(0)}.side-menu--narrow{--side-menu-width:300px}.side-menu--medium{--side-menu-width:400px}.side-menu--wide{--side-menu-width:500px}