@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%,to{transform:scale(1);box-shadow:0 0 0 0 rgba(59,130,246,.4)}50%{transform:scale(1.05);box-shadow:0 0 0 10px rgba(59,130,246,0)}}@keyframes gradient-shift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes gentle-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes heartbeat{0%,50%,to{transform:scale(1)}25%{transform:scale(1.1)}75%{transform:scale(.95)}}@keyframes wave{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes breathe{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.02);opacity:.8}}@keyframes pulse-subtle{0%,to{transform:scale(1);box-shadow:0 0 0 0 rgba(34,197,94,.4)}50%{transform:scale(1.02);box-shadow:0 0 0 8px rgba(34,197,94,0)}}.animate-fadeInUp{animation:fadeInUp .6s ease-out forwards}.animate-pulse-glow{animation:pulse-glow 2s infinite}.animate-pulse-subtle{animation:pulse-subtle 2.5s ease-in-out infinite}.animate-gradient-shift{background-size:200% 200%;animation:gradient-shift 3s ease infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-gentle-spin{animation:gentle-spin 8s linear infinite}.animate-heartbeat{animation:heartbeat 2s ease-in-out infinite}.animate-wave{animation:wave 2s ease-in-out infinite}.animate-breathe{animation:breathe 4s ease-in-out infinite}.hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.15)}.hover-glass{transition:all .3s ease}.hover-glass:hover{backdrop-filter:blur(20px);background-color:rgba(255,255,255,.1)}.text-gradient-blue{background:linear-gradient(135deg,#3b82f6,#1d4ed8);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-green{background:linear-gradient(135deg,#10b981,#059669);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-emerald{background:linear-gradient(135deg,#10b981,#047857);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.glass-card{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px 0 rgba(31,38,135,.37)}.glass-nav{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}.particle{pointer-events:none;position:absolute;border-radius:50%;animation:float 6s ease-in-out infinite}.particle:nth-child(2n){animation-delay:-2s;animation-duration:8s}.particle:nth-child(3n){animation-delay:-4s;animation-duration:10s}.smooth-scroll{scroll-behavior:smooth}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.shimmer{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.2) 20%,rgba(255,255,255,.5) 60%,rgba(255,255,255,0));background-size:468px 104px}@media (max-width:768px){.animate-fadeInUp{animation-duration:.4s}.animate-pulse-glow{animation:none}.hover-lift:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 10px 20px rgba(0,0,0,.1)}.glass-card{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.glass-nav{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}@media (prefers-reduced-motion:reduce){.animate-breathe,.animate-fadeInUp,.animate-float,.animate-gentle-spin,.animate-gradient-shift,.animate-heartbeat,.animate-pulse-glow,.animate-wave{animation:none!important}.hover-lift{transition:none!important}}@media (min-width:1024px){.hover-lift:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 25px 50px rgba(0,0,0,.2)}}.btn-hover-primary{position:relative;overflow:hidden;background:linear-gradient(135deg,#3b82f6,#1d4ed8);transition:all .3s cubic-bezier(.4,0,.2,1);border:none;color:white;font-weight:600}.btn-hover-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.btn-hover-primary:hover:before{left:100%}.btn-hover-primary:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 15px 35px rgba(59,130,246,.4)}.btn-hover-secondary{position:relative;background:linear-gradient(135deg,#10b981,#059669);transition:all .3s ease;overflow:hidden}.btn-hover-secondary:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.1),transparent);opacity:0;transition:opacity .3s}.btn-hover-secondary:hover:after{opacity:1}.btn-hover-secondary:hover{transform:scale(1.03);box-shadow:0 10px 25px rgba(16,185,129,.3)}.card-hover-effect{position:relative;transition:all .4s cubic-bezier(.25,.46,.45,.94);cursor:pointer;overflow:hidden}.card-hover-effect:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(16,185,129,.1),rgba(139,92,246,.1));opacity:0;transition:opacity .4s ease;pointer-events:none}.card-hover-effect:hover:before{opacity:1}.card-hover-effect:hover{transform:translateY(-8px) rotateX(5deg);box-shadow:0 20px 60px rgba(0,0,0,.2)}.input-hover-effect{position:relative;transition:all .3s ease;border:2px solid transparent;background-clip:padding-box}.input-hover-effect:before{content:"";position:absolute;inset:0;padding:2px;background:linear-gradient(135deg,#3b82f6,#10b981,#8b5cf6);border-radius:inherit;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease}.input-hover-effect:focus:before,.input-hover-effect:hover:before{opacity:1}.input-hover-effect:focus,.input-hover-effect:hover{transform:scale(1.02)}.icon-hover-effect{transition:all .3s cubic-bezier(.68,-.55,.265,1.55);cursor:pointer}.icon-hover-effect:hover{transform:rotate(12deg) scale(1.2);color:#3b82f6;filter:drop-shadow(0 0 8px rgba(59,130,246,.6))}.tab-hover-effect{position:relative;transition:all .3s ease;overflow:hidden}.tab-hover-effect:before{content:"";position:absolute;bottom:0;left:50%;width:0;height:3px;background:linear-gradient(90deg,#3b82f6,#10b981);transition:all .3s ease;transform:translateX(-50%)}.tab-hover-effect:hover:before{width:100%}.tab-hover-effect:hover{transform:translateY(-2px);color:#3b82f6}.link-hover-effect{position:relative;color:inherit;text-decoration:none;transition:all .3s ease}.link-hover-effect:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,#3b82f6,#10b981);transition:width .3s ease}.link-hover-effect:hover:after{width:100%}.link-hover-effect:hover{color:#3b82f6;transform:translateY(-1px)}.badge-hover-effect{position:relative;transition:all .3s ease;overflow:hidden}.badge-hover-effect:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,rgba(255,255,255,.3) 0,transparent 70%);transition:all .3s ease;transform:translate(-50%,-50%);border-radius:50%}.badge-hover-effect:hover:before{width:200%;height:200%}.badge-hover-effect:hover{transform:scale(1.1);box-shadow:0 5px 15px rgba(0,0,0,.2)}.nav-item-hover{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-item-hover:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(16,185,129,.1));border-radius:12px;opacity:0;transition:all .3s ease;z-index:-1}.nav-item-hover:hover:before{opacity:1;transform:scale(1.05)}.nav-item-hover:hover{transform:translateX(4px)}.list-item-hover{position:relative;padding:12px 16px;border-radius:8px;transition:all .3s ease;cursor:pointer}.list-item-hover:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(135deg,#3b82f6,#10b981);transition:width .3s ease;border-radius:8px 0 0 8px}.list-item-hover:hover:before{width:4px}.list-item-hover:hover{background-color:rgba(59,130,246,.05);transform:translateX(8px);box-shadow:0 4px 12px rgba(0,0,0,.1)}@media (max-width:768px){.btn-hover-primary:hover,.btn-hover-secondary:hover{transform:scale(1.02)}.card-hover-effect:hover{transform:translateY(-4px)}.input-hover-effect:focus,.input-hover-effect:hover{transform:scale(1.01)}}@media (prefers-reduced-motion:reduce){.badge-hover-effect:hover,.btn-hover-primary:hover,.btn-hover-secondary:hover,.card-hover-effect:hover,.icon-hover-effect:hover,.input-hover-effect:hover,.link-hover-effect:hover,.list-item-hover:hover,.nav-item-hover:hover,.tab-hover-effect:hover{transform:none!important}}@media (max-width:768px){body{overflow-x:hidden!important;width:100vw!important}.main-container,[class*=container],[class*=wrapper]{max-width:100vw!important;overflow-x:hidden!important;padding-left:1rem!important;padding-right:1rem!important}.card,[class*=Card]{max-width:calc(100vw - 2rem)!important;margin-left:auto;margin-right:auto;word-wrap:break-word;overflow-wrap:break-word}div,li,p,span{word-break:break-word;overflow-wrap:break-word;hyphens:auto}table{display:block;overflow-x:auto;white-space:nowrap;max-width:100%;-webkit-overflow-scrolling:touch}embed,iframe,img,object,video{max-width:100%!important;height:auto!important}.flex{flex-wrap:wrap!important}.badge,[class*=Badge],[class*=badge]{max-width:100%;white-space:normal;padding:.25rem .5rem;display:inline-block;word-break:break-word}input,select,textarea{max-width:100%!important;width:100%!important;font-size:16px!important}button{max-width:100%!important;white-space:normal;padding:.75rem 1rem}[role=button],a,button{min-height:44px;min-width:44px}[role=button],a{display:inline-flex;align-items:center;justify-content:center}.safe-area-padding{padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}.scrollable{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:640px){h1{font-size:1.5rem!important;line-height:2rem!important}h2{font-size:1.25rem!important;line-height:1.75rem!important}h3{font-size:1.125rem!important}h3,h4{line-height:1.5rem!important}h4{font-size:1rem!important}.text-2xl{font-size:1.25rem!important;line-height:1.75rem!important}.text-xl{font-size:1.125rem!important}.text-lg,.text-xl{line-height:1.5rem!important}.text-lg{font-size:1rem!important}.text-base{font-size:.875rem!important;line-height:1.25rem!important}.text-sm{font-size:.75rem!important;line-height:1rem!important}.p-6{padding:1rem!important}.p-8{padding:1.25rem!important}.px-6{padding-left:1rem!important;padding-right:1rem!important}.py-6{padding-top:1rem!important;padding-bottom:1rem!important}.m-6{margin:1rem!important}.mx-6{margin-left:1rem!important;margin-right:1rem!important}.gap-6{gap:1rem!important}.gap-8{gap:1.25rem!important}.space-x-6>*+*{margin-left:1rem!important}.space-y-6>*+*{margin-top:1rem!important}}.eventos-card,.news-card,[class*=eventos],[class*=news-item]{padding:.75rem!important;margin:.5rem 0!important;max-width:100%!important;overflow:hidden}.eventos-card h2,.eventos-card h3{font-size:1.125rem!important;margin-bottom:.75rem!important;word-break:break-word}.eventos-card .badge,.news-card .badge{display:inline-block;max-width:100%;margin:.25rem 0;white-space:normal}.news-card .date,.timeline-text{font-size:.75rem!important;white-space:normal!important;word-break:break-word}.scenario-card{padding:1rem!important;margin:.5rem 0!important;max-width:100%!important}.scenario-price{font-size:1.75rem!important;font-weight:700;line-height:1.2}.scenario-percentage{font-size:.875rem!important;line-height:1.25rem}.scenario-description{font-size:.875rem!important;line-height:1.5;word-break:break-word}.metric-card,[class*=metric]{padding:.75rem!important;min-width:0!important;flex:1 1 auto;max-width:100%}.metric-value{font-size:1.25rem!important;font-weight:600;word-break:break-word}.metric-label{font-size:.75rem!important;color:#6b7280;word-break:break-word}.portfolio-table{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.portfolio-table table{min-width:100%;font-size:.875rem!important}.portfolio-table td,.portfolio-table th{padding:.5rem!important;white-space:nowrap}.score-gauge-container{max-width:100%!important;padding:1rem!important;overflow:hidden}.score-gauge{max-width:min(200px,100%)!important;max-height:min(200px,100%)!important;margin:0 auto}.chart-container,[class*=Chart],[class*=recharts]{max-width:100%!important;overflow-x:auto;-webkit-overflow-scrolling:touch}.chart-container svg{max-width:100%!important;height:auto!important}.tabs-mobile-optimized{overflow-x:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.tabs-mobile-optimized::-webkit-scrollbar{display:none}.tab-trigger-mobile{min-width:80px!important;font-size:.75rem!important;padding:.5rem .75rem!important;white-space:nowrap}@media (max-width:640px){.dialog-content,[class*=Dialog],[role=dialog]{max-width:calc(100vw - 2rem)!important;max-height:calc(100vh - 4rem)!important;margin:1rem!important}}.toast,[class*=Toast]{max-width:calc(100vw - 2rem)!important;font-size:.875rem!important;word-break:break-word}.tooltip,[class*=Tooltip]{max-width:80vw!important;font-size:.75rem!important;word-break:break-word;z-index:9999}@media (max-width:768px){.overflow-debug{outline:2px solid red!important;background:rgba(255,0,0,.1)!important}body.debug-mode:before{content:"📱 Mobile Debug Mode";position:fixed;top:0;right:0;background:#000;color:#fff;padding:4px 8px;font-size:10px;z-index:99999;border-radius:0 0 0 4px}*{-webkit-tap-highlight-color:transparent;-webkit-overflow-scrolling:touch}}@supports (-webkit-touch-callout:none){body{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=url],select,textarea{font-size:16px!important}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:inherit}}