.glass{background:rgba(0,0,0,.6);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5)}.grain{position:relative;overflow:hidden}.grain:after{content:"";position:absolute;inset:-100%;width:300%;height:300%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.035;pointer-events:none;z-index:1;animation:grain-shift .5s steps(1) infinite}@keyframes grain-shift{0%{transform:translate(0)}25%{transform:translate(-2%,-3%)}50%{transform:translate(1%,2%)}75%{transform:translate(-1%,1%)}to{transform:translate(2%,-1%)}}.glow-border{position:relative;background:#050505;overflow:hidden}.glow-border:before{content:"";position:absolute;inset:0;padding:1px;background:conic-gradient(from var(--angle,0deg),transparent 40%,rgba(255,255,255,.15) 50%,transparent 60%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask-composite:xor;animation:rotate-border 4s linear infinite;pointer-events:none}@property --angle{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes rotate-border{to{--angle:360deg}}.glow-border-hover:before{opacity:0;transition:opacity .5s}.glow-border-hover:hover:before{opacity:1}.text-gradient{background:linear-gradient(135deg,#ffffff,#c4b5fd 30%,#818cf8 60%,#ffffff);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-text-shift 6s ease-in-out infinite}@keyframes gradient-text-shift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.btn-glow{position:relative;overflow:hidden}.btn-glow:after{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at var(--mouse-x,50%) var(--mouse-y,50%),rgba(255,255,255,.15),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}.btn-glow:hover:after{opacity:1}.dot-grid-bg{background-color:#06000f;background-image:radial-gradient(ellipse 900px 550px at -5% -15%,rgba(99,102,241,.28) 0,transparent 60%),radial-gradient(ellipse 650px 450px at 110% 110%,rgba(168,85,247,.2) 0,transparent 60%),radial-gradient(rgba(255,255,255,.13) 1px,transparent 0);background-size:100% 100%,100% 100%,22px 22px}.card-lift{transition:transform .35s cubic-bezier(.34,1.2,.64,1),box-shadow .35s ease,border-color .25s ease}.card-lift:hover{transform:translateY(-6px);box-shadow:0 24px 56px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.08)}.progress-track{background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden;height:5px}.progress-fill{height:100%;border-radius:99px;transition:width .8s cubic-bezier(.34,1.2,.64,1)}.btn-primary{position:relative;display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;background:linear-gradient(135deg,#6366f1,#8b5cf6 55%,#a855f7);background-size:200% 200%;padding:.65rem 1.6rem;font-size:.75rem;font-weight:700;letter-spacing:.07em;color:#fff;transition:all .3s ease;overflow:hidden;box-shadow:0 0 0 1px rgba(139,92,246,.4),0 4px 14px rgba(99,102,241,.3)}.btn-primary:after{content:"";position:absolute;top:0;left:-80%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:skewX(-20deg);transition:left .6s ease}.btn-primary:hover{box-shadow:0 0 28px rgba(139,92,246,.6),0 0 0 1px rgba(139,92,246,.6),0 6px 20px rgba(0,0,0,.5);filter:brightness(1.12)}.btn-primary:hover:after{left:140%}.btn-primary:active{transform:scale(.97)}.btn-outline{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;border:1px solid rgba(139,92,246,.45);background:rgba(99,102,241,.08);padding:.65rem 1.6rem;font-size:.75rem;font-weight:600;letter-spacing:.07em;color:rgba(196,181,253,.9);transition:all .25s ease}.btn-outline:hover{border-color:rgba(139,92,246,.75);background:rgba(99,102,241,.15);color:#fff;box-shadow:0 0 18px rgba(139,92,246,.25)}.btn-outline:active{transform:scale(.97)}.accent-bar{background:linear-gradient(90deg,#6366f1,#8b5cf6,transparent);height:2px}@keyframes reveal-up{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal-scale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes line-expand{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes pulse-ring{0%{transform:scale(1);opacity:.5}to{transform:scale(1.8);opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes orbit{0%{transform:rotate(0deg) translateX(var(--orbit-radius,120px)) rotate(0deg)}to{transform:rotate(1turn) translateX(var(--orbit-radius,120px)) rotate(-1turn)}}.animate-reveal-up{animation:reveal-up 1s cubic-bezier(.16,1,.3,1) both}.animate-reveal-up-1{animation:reveal-up 1s cubic-bezier(.16,1,.3,1) .1s both}.animate-reveal-up-2{animation:reveal-up 1s cubic-bezier(.16,1,.3,1) .2s both}.animate-reveal-up-3{animation:reveal-up 1s cubic-bezier(.16,1,.3,1) .35s both}.animate-reveal-up-4{animation:reveal-up 1s cubic-bezier(.16,1,.3,1) .5s both}.animate-reveal-scale{animation:reveal-scale 1s cubic-bezier(.16,1,.3,1) .2s both}.animate-line-expand{animation:line-expand 1s cubic-bezier(.16,1,.3,1) .4s both;transform-origin:left}.animate-float{animation:float 6s ease-in-out infinite}.animate-orbit{animation:orbit 20s linear infinite}