:root{--dur-fast:.22s;--dur-med:.65s;--dur-slow:1s;--dur-hero:1.4s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--slide-sm:12px;--slide-md:28px;--stagger-step:90ms}@media (width<=768px){:root{--stagger-step:50ms;--slide-md:18px}}*{box-sizing:border-box}body{overflow-x:clip}.hero .bg-video,.hero-content,.image-box img,.text-box,.timeline:after{will-change:transform, opacity}.js-enabled .reveal-on-scroll:not(.hero .reveal-on-scroll){opacity:0;transition:opacity var(--dur-med) var(--ease-out), transform var(--dur-med) var(--ease-out)}.hero .reveal-on-scroll{opacity:1}.js-enabled .reveal-on-scroll.fade-up:not(.hero .reveal-on-scroll){transform:translateY(var(--slide-md))}.js-enabled .reveal-on-scroll.slide-left:not(.hero .reveal-on-scroll){transform:translateX(calc(-1 * var(--slide-md)))}.js-enabled .reveal-on-scroll.slide-right:not(.hero .reveal-on-scroll){transform:translateX(var(--slide-md))}.js-enabled .reveal-on-scroll.scale-in:not(.hero .reveal-on-scroll){transform:scale(.95)}.js-enabled .reveal-on-scroll.slide-right.scale-in:not(.hero .reveal-on-scroll){transform:translateX(var(--slide-md)) scale(.95)}.js-enabled .reveal-on-scroll.is-visible{transition-delay:calc(var(--i,0) * var(--stagger-step));opacity:1!important;transform:translate(0)scale(1)!important}.js-enabled .reveal-on-scroll.scale-zero-in:not(.hero .reveal-on-scroll){transform:scale(0)}.js-enabled .reveal-on-scroll.scale-zero-in.is-visible{transform:scale(1)!important}.reveal-block{vertical-align:bottom;display:inline-block;position:relative;overflow:hidden}.reveal-block:after{content:"";background-color:var(--primary);z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;transform:translate(-101%)}.js-enabled .reveal-block>span{opacity:0}.is-visible .reveal-block:after,.reveal-block.is-visible:after{animation:block-reveal var(--dur-hero) cubic-bezier(.77, 0, .175, 1) forwards}.is-visible .reveal-block>span,.reveal-block.is-visible>span{animation:10ms forwards text-reveal;animation-delay:calc(var(--dur-hero) * .42)}@keyframes block-reveal{0%{transform:translate(-101%)}45%,55%{transform:translate(0)}to{transform:translate(101%)}}@keyframes text-reveal{to{opacity:1}}.reveal-block.block-secondary:after{background-color:var(--secondary)}.reveal-block.block-accent:after{background-color:var(--accent)}header{transition:box-shadow var(--dur-med) var(--ease-out), background-color var(--dur-med) var(--ease-out)}header.scrolled{-webkit-backdrop-filter:blur(12px);background-color:#fffffff7;box-shadow:0 4px 24px #00000014,0 1px #4f46e50f}.logo img{transition:transform var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out)}header.scrolled .logo img{transform:scale(.94)}.nav-links a{transition:color var(--dur-fast) var(--ease-out);position:relative}.nav-links a:after{content:"";background:linear-gradient(90deg, var(--primary), var(--secondary));width:0%;height:2px;transition:width var(--dur-med) var(--ease-out);border-radius:2px;position:absolute;bottom:-2px;left:0}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-toggle span{background-color:var(--text);width:25px;height:2.5px;transition:transform var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out);transform-origin:50%;border-radius:2px;margin:5px 0;display:block}.nav-toggle.active span:first-child{transform:translateY(7.5px)rotate(45deg)}.nav-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-toggle.active span:nth-child(3){transform:translateY(-7.5px)rotate(-45deg)}.dropdown-menu,.nested-menu{opacity:0;visibility:hidden;pointer-events:none;transform-origin:0 0;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), visibility 0s .22s;border-top:2px solid var(--primary);transform:translateY(-8px)scale(.98);display:flex!important}.dropdown:hover>.dropdown-menu,.dropdown:focus-within>.dropdown-menu,.nested-dropdown:hover>.nested-menu,.nested-dropdown:focus-within>.nested-menu{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), visibility 0s 0s;transform:translateY(0)scale(1)}.dropdown-menu li,.nested-menu li{opacity:0;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);transform:translateY(-4px)}.dropdown:hover>.dropdown-menu li,.dropdown:focus-within>.dropdown-menu li,.nested-dropdown:hover>.nested-menu li,.nested-dropdown:focus-within>.nested-menu li{opacity:1;transform:translateY(0)}.dropdown:hover>.dropdown-menu li:first-child,.nested-dropdown:hover>.nested-menu li:first-child{transition-delay:40ms}.dropdown:hover>.dropdown-menu li:nth-child(2),.nested-dropdown:hover>.nested-menu li:nth-child(2){transition-delay:80ms}.dropdown:hover>.dropdown-menu li:nth-child(3),.nested-dropdown:hover>.nested-menu li:nth-child(3){transition-delay:.12s}.dropdown:hover>.dropdown-menu li:nth-child(4),.nested-dropdown:hover>.nested-menu li:nth-child(4){transition-delay:.16s}.dropdown:hover>.dropdown-menu li:nth-child(5),.nested-dropdown:hover>.nested-menu li:nth-child(5){transition-delay:.2s}.dropdown:hover>.dropdown-menu li:nth-child(6),.nested-dropdown:hover>.nested-menu li:nth-child(6){transition-delay:.24s}.dropdown:hover>.dropdown-menu li:nth-child(7),.nested-dropdown:hover>.nested-menu li:nth-child(7){transition-delay:.28s}.button{transition:transform var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);position:relative;overflow:hidden}.button:before{content:"";width:60%;height:100%;transition:left .5s var(--ease-out);background:linear-gradient(90deg,#0000,#ffffff38,#0000);position:absolute;top:0;left:-100%;transform:skew(-20deg)}.button:hover:before{left:160%}@media (hover:hover){.button:hover{box-shadow:0 8px 25px #4f46e540}}.button:active{transition-duration:.1s;transform:scale(.97)!important}.button:focus-visible{outline:2px solid var(--primary);outline-offset:4px;border-radius:6px}.contact-form input,.contact-form textarea,.contact-form select{transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out)}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--primary);background-color:#fff;outline:none;box-shadow:0 0 0 3px #4f46e526}.contact-form .form-group{position:relative}.testimonial{transition:opacity var(--dur-med) var(--ease-out), transform var(--dur-med) var(--ease-out)}.testimonial:not(.active){opacity:0;pointer-events:none}.testimonial.active{opacity:1}.slider-dot{transition:transform var(--dur-fast) var(--ease-spring), background-color var(--dur-fast) var(--ease-out)}.slider-dot.active{transform:scale(1.35)}.timeline:before{background:#e2e8f0!important}.timeline:after{content:"";transform-origin:top;width:2px;transform:scaleY(var(--progress,0));will-change:transform;margin-left:-1px;transition:none;position:absolute;top:0;bottom:0;left:50px;background:var(--primary)!important}@media (width<=768px){.timeline:after{left:30px}}.js-enabled .reveal-on-scroll.timeline-dot{transition:background .4s var(--ease-out), box-shadow .4s var(--ease-out), transform .4s var(--ease-spring);background:#fff;opacity:1!important;transform:translate(-50%)!important}.js-enabled .reveal-on-scroll.timeline-dot.filled,.timeline-dot.filled{box-shadow:0 0 0 4px #4f46e533;background:var(--primary)!important;transform:translate(-50%)scale(1.15)!important}.image-box{transition:box-shadow var(--dur-med) var(--ease-out);border-radius:inherit;overflow:hidden}.service-card,.card{transition:transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out);overflow:hidden}.service-card:hover,.card:hover{transform:translateY(-5px)}.service-card img,.card img{transition:transform var(--dur-slow) var(--ease-out)}.faq-item{transition:box-shadow var(--dur-fast) var(--ease-out);overflow:hidden}.faq-item summary,.faq-item>.faq-question{transition:color var(--dur-fast) var(--ease-out);cursor:pointer}.faq-item summary:hover,.faq-item>.faq-question:hover{color:var(--primary)}details[open] .faq-icon,.faq-item.open .faq-icon{transition:transform var(--dur-fast) var(--ease-out);transform:rotate(45deg)}.faq-icon{transition:transform var(--dur-fast) var(--ease-out)}details>:not(summary){animation:faq-expand var(--dur-med) var(--ease-out)}@keyframes faq-expand{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.footer-aurora{filter:blur(70px);z-index:0;pointer-events:none;background:radial-gradient(#4f46e517 0%,#06b6d417 40%,#0000 70%);width:90%;height:90%;animation:9s ease-in-out infinite alternate footer-breathe;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes footer-breathe{0%{opacity:.6;transform:translate(-50%,-50%)scale(1)}to{opacity:1;transform:translate(-50%,-50%)scale(1.12)}}.page-wrapper{flex-direction:column;min-height:100vh;display:flex}.page-wrapper>main{flex:1 0 auto}.page-wrapper>footer{flex-shrink:0}.hero{overflow:hidden}.hero .bg-video{transition:opacity .5s}.hero-content{clip-path:inset(0 0% 0 0)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js-enabled .reveal-on-scroll{opacity:1!important;transform:translate(0)scale(1)!important}.dropdown-menu,.nested-menu{transition:none!important}.footer-aurora{animation:none!important}.hero .bg-video{transform:none!important}.hero-content{clip-path:none!important}.button:before{display:none}}
