.page-loader{position:fixed;top:0;left:0;width:100%;height:100vh;height:100svh;background:var(--blue-invest-dark);display:none;align-items:center;justify-content:center;z-index:999999;overflow:hidden}.page-loader.active{display:flex}.page-loader.hidden{opacity:0;visibility:hidden;pointer-events:none;transition:opacity 0.8s cubic-bezier(.16,1,.3,1),visibility 0.8s cubic-bezier(.16,1,.3,1)}.page-loader::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgb(26 90 156 / .3) 0%,transparent 60%),radial-gradient(ellipse at 70% 50%,rgb(91 155 213 / .15) 0%,transparent 60%);pointer-events:none}.loader-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;padding:2rem;position:relative;z-index:1}.loader-logo{opacity:0;animation:logoReveal 0.8s cubic-bezier(.16,1,.3,1) 0.2s forwards}.loader-logo-img{max-height:70px;width:auto;filter:brightness(0) invert(1)}@keyframes logoReveal{0%{opacity:0;transform:translateY(10px) scale(.95)}100%{opacity:1;transform:translateY(0) scale(1)}}.building-animation{width:200px;height:180px;position:relative}.building-foundation{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:180px;height:2px;background:linear-gradient(90deg,transparent,var(--blue-invest-accent),rgb(165 200 231 / .8),var(--blue-invest-accent),transparent);border-radius:2px;animation:foundationGlow 2.5s ease-in-out infinite}.building-foundation::before{content:'';position:absolute;bottom:-6px;left:10%;right:10%;height:6px;background:radial-gradient(ellipse at center,rgb(165 200 231 / .12) 0%,transparent 70%)}@keyframes foundationGlow{0%,100%{opacity:.6}50%{opacity:1}}.building-floors{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:120px;display:flex;flex-direction:column-reverse;gap:3px}.building-floor{width:100%;height:28px;background:linear-gradient(135deg,rgb(91 155 213 / .12) 0%,rgb(91 155 213 / .06) 50%,rgb(91 155 213 / .12) 100%);border:1px solid rgb(165 200 231 / .35);border-radius:2px;position:relative;opacity:0;transform:scaleY(0) translateY(10px);transform-origin:bottom center;animation:floorConstruct 0.5s cubic-bezier(.16,1,.3,1) forwards}.building-floor:nth-child(1){animation-delay:0.15s}.building-floor:nth-child(2){animation-delay:0.3s}.building-floor:nth-child(3){animation-delay:0.45s}.building-floor:nth-child(4){animation-delay:0.6s}.building-floor:nth-child(5){animation-delay:0.75s}@keyframes floorConstruct{0%{opacity:0;transform:scaleY(0) translateY(10px)}60%{transform:scaleY(1.03) translateY(-1px)}100%{opacity:1;transform:scaleY(1) translateY(0)}}.building-floor::after{content:'';position:absolute;top:50%;left:12px;width:5px;height:5px;transform:translateY(-50%);background:rgb(165 200 231 / .85);border-radius:1px;box-shadow:16px 0 0 rgb(165 200 231 / .65),32px 0 0 rgb(165 200 231 / .85),48px 0 0 rgb(165 200 231 / .55),64px 0 0 rgb(165 200 231 / .75),80px 0 0 rgb(165 200 231 / .65);opacity:0;animation:windowsLight 0.5s ease-out forwards;animation-delay:calc(var(--floor-delay, 0s) + 0.35s)}.building-floor:nth-child(1)::after{--floor-delay:0.15s}.building-floor:nth-child(2)::after{--floor-delay:0.3s}.building-floor:nth-child(3)::after{--floor-delay:0.45s}.building-floor:nth-child(4)::after{--floor-delay:0.6s}.building-floor:nth-child(5)::after{--floor-delay:0.75s}@keyframes windowsLight{0%{opacity:0}100%{opacity:1}}.building-floor:nth-child(odd)::after{animation:windowsLight 0.5s ease-out forwards,windowFlicker 4s ease-in-out 1.5s infinite}@keyframes windowFlicker{0%,100%{opacity:1}30%{opacity:.6}60%{opacity:1}80%{opacity:.7}}.building-floor:last-child::before{content:'';position:absolute;top:-6px;left:50%;transform:translateX(-50%);width:40px;height:2px;background:rgb(165 200 231 / .5);border-radius:1px;opacity:0;animation:roofAppear 0.4s ease-out 1s forwards}@keyframes roofAppear{0%{opacity:0;transform:translateX(-50%) scaleX(0)}100%{opacity:1;transform:translateX(-50%) scaleX(1)}}.construction-particles{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.particle{position:absolute;width:2px;height:2px;background:var(--blue-invest-accent);border-radius:50%;opacity:0;animation:particleRise 3s ease-out infinite}.particle:nth-child(1){left:30%;animation-delay:0.4s}.particle:nth-child(2){left:50%;animation-delay:0.9s;width:3px;height:3px}.particle:nth-child(3){left:70%;animation-delay:1.3s}@keyframes particleRise{0%{bottom:10px;opacity:0;transform:scale(1) translateX(0)}20%{opacity:.4}100%{bottom:180px;opacity:0;transform:scale(.3) translateX(15px)}}.loader-dots{display:flex;gap:6px}.dot{width:5px;height:5px;background:var(--blue-invest-accent);border-radius:50%;animation:dotPulse 1.2s ease-in-out infinite}.dot:nth-child(1){animation-delay:0s}.dot:nth-child(2){animation-delay:0.15s}.dot:nth-child(3){animation-delay:0.3s}@keyframes dotPulse{0%,80%,100%{transform:scale(.6);opacity:.3}40%{transform:scale(1);opacity:1}}.loader-progress{width:100%;max-width:180px;height:2px;background:rgb(255 255 255 / .08);border-radius:1px;overflow:hidden}.loader-progress-bar{height:100%;background:linear-gradient(90deg,var(--blue-invest-accent),rgb(255 255 255 / .9),var(--blue-invest-accent));border-radius:1px;transform-origin:left;animation:progressGrow 2s cubic-bezier(.16,1,.3,1) forwards}@keyframes progressGrow{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}@media (max-width:768px){.building-animation{width:170px;height:155px}.building-floors{width:100px}.building-floor{height:24px}.building-foundation{width:150px}.loader-logo-img{max-height:60px}.loader-content{gap:1.75rem}}@media (max-width:480px){.building-animation{width:150px;height:135px}.building-floors{width:90px}.building-floor{height:20px}.building-foundation{width:130px}.loader-logo-img{max-height:50px}.loader-content{gap:1.5rem;padding:1rem}.loader-progress{max-width:140px}}@media (prefers-reduced-motion:reduce){.page-loader,.building-floor,.building-floor::after,.building-floor:nth-child(odd)::after,.building-floor:last-child::before,.particle,.dot,.loader-progress-bar,.building-foundation,.loader-logo{animation:none!important}.building-floor{opacity:1;transform:scaleY(1) translateY(0)}.building-floor::after{opacity:1}.loader-logo{opacity:1}.loader-progress-bar{transform:scaleX(1)}.page-loader.hidden{transition:opacity 0.3s ease}}