*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Epilogue,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#fdfcfb;color:#1e293b;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.1}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.roadmap-path{stroke-dasharray:8 8;animation:dash 60s linear infinite}@keyframes dash{to{stroke-dashoffset:-1000}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .6s ease-out forwards}@keyframes slideIn{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.slide-in{animation:slideIn .5s ease-out forwards}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.scale-in{animation:scaleIn .4s ease-out forwards}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}::selection{background-color:#64748b;color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}*:focus-visible{outline:2px solid #64748b;outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading-skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.transition-base{transition:all .3s ease}.transition-fast{transition:all .15s ease}.transition-slow{transition:all .5s ease}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}@media(min-width:768px){.container{padding:0 2rem}}@media(min-width:1024px){.container{padding:0 3rem}}
