@keyframes hero-marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes hero-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.5s ease-out forwards hero-fade-in}.animate-fade-in-delay{opacity:0;animation:.5s ease-out .15s forwards hero-fade-in}.hero-title-gradient{-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#1e40af 0%,#2929a3 25%,#1e40af 50%,#2929a3 75%,#1e40af 100%) 0 0/200%;-webkit-background-clip:text;background-clip:text;animation:8s linear infinite hero-gradient-shimmer}.hero-subtitle{opacity:0;animation:.8s ease-out .3s forwards hero-subtitle-fade}.mask-fade-out{-webkit-mask-image:linear-gradient(#000 30%,#0000 100%);mask-image:linear-gradient(#000 30%,#0000 100%)}.hero-grid-bg{background-image:linear-gradient(#1919700d 1px,#0000 1px),linear-gradient(90deg,#1919700d 1px,#0000 1px);background-size:50px 50px}.hero-ripple-container{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-ripple{pointer-events:none;border:2px solid #cf06;border-radius:50%;animation:2s ease-out forwards hero-ripple;position:absolute}.hero-cta-primary{position:relative;overflow:hidden}.hero-cta-primary:before{content:"";background:#fff3;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-cta-primary:hover:before{width:300px;height:300px}@keyframes hero-float{0%,to{transform:translateY(0)translate(0)}25%{transform:translateY(-20px)translate(10px)}50%{transform:translateY(-10px)translate(-10px)}75%{transform:translateY(-30px)translate(5px)}}.hero-particle{pointer-events:none;background:#cf09;border-radius:50%;width:4px;height:4px;animation:6s ease-in-out infinite hero-float;position:absolute}.hero-particle:nth-child(2n){background:#19197066;animation-duration:8s;animation-delay:1s}.hero-particle:nth-child(3n){background:#ff6b354d;animation-duration:10s;animation-delay:2s}.hero-mockup-marquee-container{width:100%;padding:.5rem 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000);mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000)}.hero-mockup-marquee-content{will-change:transform;gap:.75rem;width:max-content;animation:20s linear infinite hero-marquee-scroll;display:flex;animation-play-state:running!important}.hero-marquee-paused .hero-mockup-marquee-content{animation-play-state:paused!important}.hero-project-card{flex-shrink:0;transition:transform .3s;border-radius:1rem!important;width:280px!important;height:220px!important}.hero-project-card:hover{z-index:10;transform:translateY(-3px)scale(1.01)}@media (min-width:480px){.hero-project-card{width:340px!important;height:260px!important}}@media (min-width:640px){.hero-mockup-marquee-container{padding:1rem 0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.hero-mockup-marquee-content{gap:1.25rem;animation-duration:30s}.hero-project-card{width:400px!important;height:300px!important}.hero-project-card:hover{transform:translateY(-5px)scale(1.02)}}@media (min-width:768px){.hero-mockup-marquee-container{padding:1.5rem 0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.hero-mockup-marquee-content{gap:1.5rem;animation-duration:40s}.hero-project-card{width:460px!important;height:340px!important}.hero-project-card:hover{transform:translateY(-8px)scale(1.02)}}@media (min-width:1024px){.hero-mockup-marquee-container{padding:2rem 0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 15% 85%,#0000);mask-image:linear-gradient(90deg,#0000,#000 15% 85%,#0000)}.hero-mockup-marquee-content{gap:2rem;animation-duration:45s}.hero-project-card{width:480px!important;height:355px!important}.hero-project-card:hover{transform:translateY(-10px)scale(1.02)}}@keyframes hero-shimmer{to{transform:translate(100%)}}.animate-hero-shimmer{animation:2s infinite hero-shimmer}@media (prefers-reduced-motion:reduce){.hero-mockup-marquee-content{animation-duration:120s!important}.hero-project-card:hover{transform:none}.animate-fade-in,.animate-fade-in-delay{opacity:1;animation:none}}
@media (prefers-reduced-motion:no-preference){.hsf-in{animation:hsf-in .5s cubic-bezier(.2,.7,.2,1)var(--d,0s)both}.hsf-fade{animation:hsf-fade .4s ease-out var(--d,0s)both}.hsf-pop{animation:hsf-pop .35s cubic-bezier(.2,.7,.3,1.3)var(--d,0s)both}.hsf-out{animation:hsf-out .2s ease-out var(--d,0s)both}.hsf-dim{animation:hsf-dim .35s ease-out var(--d,0s)both}.hsf-grow-y{transform-origin:top;animation:hsf-grow-y .45s ease-out var(--d,0s)both}.hsf-grow-x{transform-origin:0;animation:hsf-grow-x .8s cubic-bezier(.6,0,.2,1)var(--d,0s)both}.hsf-run-x{animation:hsf-run-x var(--hsf-cycle)linear var(--hsf-start)infinite both}.hsf-run-y{animation:hsf-run-y var(--hsf-cycle)linear var(--hsf-start)infinite both}.hsf-return{animation:hsf-return var(--hsf-cycle)linear var(--hsf-start)infinite both}.hsf-pulse{animation:hsf-pulse var(--hsf-cycle)ease-out var(--d,0s)infinite both}.hsf-badge{animation:hsf-badge var(--hsf-cycle)linear var(--d,0s)infinite both}.hsf-attr{animation:hsf-attr var(--hsf-rotation)linear var(--d,0s)infinite both}.hsf-tag{animation:hsf-tag var(--hsf-rotation)linear var(--d,0s)infinite}.hsf-ring{animation:hsf-ring 2s ease-out var(--hsf-start)infinite both}.hsf[data-paused=true] *{animation-play-state:paused}}@keyframes hsf-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes hsf-fade{0%{opacity:0}to{opacity:1}}@keyframes hsf-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes hsf-out{0%{opacity:1}to{opacity:0}}@keyframes hsf-dim{0%{opacity:.35}to{opacity:1}}@keyframes hsf-grow-y{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes hsf-grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes hsf-run-x{0%{opacity:0;transform:translate(calc(10% - .2rem))}6%,12%{opacity:1;transform:translate(calc(10% - .2rem))}70%{opacity:1;transform:translate(100%)}72%,to{opacity:0;transform:translate(100%)}}@keyframes hsf-run-y{0%{opacity:0;transform:translateY(0)}6%,12%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(100%)}74%,to{opacity:0;transform:translateY(100%)}}@keyframes hsf-return{0%,70%{opacity:0;transform:translateY(100%)}72%{opacity:1;transform:translateY(100%)}84%{opacity:1;transform:translateY(0)}87%,to{opacity:0;transform:translateY(0)}}@keyframes hsf-pulse{0%{opacity:0}4%,14%{opacity:1}24%,to{opacity:0}}@keyframes hsf-badge{0%{opacity:0}5%,35%{opacity:1}42%,to{opacity:0}}@keyframes hsf-attr{0%{opacity:0}1.25%,8.75%{opacity:1}10.5%,to{opacity:0}}@keyframes hsf-tag{0%,24.9%{opacity:1}25%,to{opacity:0}}@keyframes hsf-ring{0%{opacity:.5;transform:scale(1)}70%,to{opacity:0;transform:scale(2.4)}}
