@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.7}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes bounceIn{0%{transform:translateY(100px) scale(.3);opacity:0}50%{transform:translateY(-10px) scale(1.05);opacity:1}70%{transform:translateY(0) scale(.9)}to{transform:translateY(0) scale(1);opacity:1}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,.15)}.hover-scale{transition:transform .3s ease}.hover-scale:hover{transform:scale(1.05)}.hover-glow{transition:all .3s ease}.hover-glow:hover{box-shadow:0 0 20px rgba(52,177,255,.5)}.avatar-contato{position:relative}.avatar-contato:hover{animation:shake .5s ease-in-out}.avatar-contato .pulse-ring{animation:pulse 2s infinite}.btn-pulse{position:relative;overflow:hidden}.btn-pulse:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-pulse:hover:before{width:300px;height:300px}.text-gradient{background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-shimmer{position:relative;overflow:hidden}.text-shimmer:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--shimmer-color,rgba(255,255,255,.4)),transparent);transition:left .5s}.text-shimmer:hover:before{left:100%}.bg-animated{background:linear-gradient(-45deg,var(--primary-color),var(--secondary-color),var(--accent-color),var(--primary-color));background-size:400% 400%;animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid var(--white);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.scroll-reveal{opacity:0;transform:translateY(50px);transition:all .8s ease}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}.particles{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.particle{position:absolute;width:4px;height:4px;background:rgba(255,255,255,.5);border-radius:50%;animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0deg);opacity:1}50%{transform:translateY(-20px) rotate(180deg);opacity:.7}}.border-glow{position:relative;border:2px solid transparent;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));background-clip:padding-box}.border-glow:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));border-radius:inherit;z-index:-1;opacity:0;transition:opacity .3s ease}.border-glow:hover:before{opacity:1}.image-hover{transition:all .3s ease;filter:brightness(1)}.image-hover:hover{filter:brightness(1.1) contrast(1.1);transform:scale(1.02)}.card-3d{transform-style:preserve-3d;transition:transform .3s ease}.card-3d:hover{transform:rotateY(5deg) rotateX(5deg)}.menu-item{position:relative;transition:color .3s ease}.menu-item:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--secondary-color);transition:width .3s ease}.menu-item:hover:after{width:100%}.animate-fade-in{animation:fadeInUp .8s ease forwards}.animate-slide-left{animation:fadeInLeft .8s ease forwards}.animate-slide-right{animation:fadeInRight .8s ease forwards}.animate-scale-in{animation:scaleIn .6s ease forwards}.animate-slide-top{animation:slideInFromTop .6s ease forwards}.animate-bounce-in{animation:bounceIn 1s ease forwards}.animate-shake{animation:shake .5s ease-in-out}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}@media (max-width:768px){.card-3d:hover,.hover-lift:hover{transform:none}.avatar-contato:hover{animation:none}}footer{background:var(--primary-color);padding:40px 0;text-align:center!important;align-items:center!important;font-family:var(--font-family);font-size:.9rem;font-weight:400}.header,footer{color:var(--white)}.header{position:relative;padding:1rem 0;width:100%;background:linear-gradient(135deg,#003366,#34B1FF)}.header.header-fixed{position:fixed;top:0;left:0;right:0}.header.header-fixed.header-scroll-top{background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;z-index:1!important}.header.header-fixed.header-scroll-down{background:rgba(0,51,102,.95)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;z-index:10!important}nav{display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.8rem;font-weight:700;color:var(--white)}.nav-links{display:flex;list-style:none;gap:2rem}.nav-links a{color:var(--white);text-decoration:none;transition:opacity .3s}.nav-links a:hover{opacity:.8}.navbar-nav .nav-link{color:var(--white);font-weight:500}.navbar-nav .nav-link:hover{color:var(--secondary-color)}.menu-icon{display:none;cursor:pointer;font-size:1.5rem;color:var(--white)}.header-scroll-top .logo-img{width:120px!important;height:auto!important;margin-top:10px!important;margin-left:10px!important}.header .logo-img{width:100px;height:auto;margin-top:10px;margin-left:0}header{box-shadow:0 2px 10px rgba(0,0,0,.1);transition:box-shadow .3s ease}:has(.header-scroll-top) header{box-shadow:none}.login-button{background-color:transparent;color:var(--white);border:1px solid var(--white);border-radius:90px;padding:10px 20px;cursor:pointer}.login-button:hover{box-shadow:0 0 10px 0 var(--accent-color)}.login-button:active,.login-button:focus,.login-button:hover{background-color:var(--accent-color);color:var(--white)}@media (max-width:991px){.nav-links{display:none}.header.header-fixed.header-scroll-top{background:linear-gradient(135deg,#003366,#34B1FF)!important;box-shadow:0 2px 10px rgba(0,0,0,.1)!important;transition:box-shadow .3s ease!important}.menu-icon{display:block}.nav-links.active{display:flex;flex-direction:column;position:absolute;top:60px;right:0;background:#003366;width:100%;padding:1rem 0}.nav-links.active a{padding:.5rem 1rem;border-bottom:1px solid rgba(255,255,255,.2)}}