@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #2563eb66}50%{box-shadow:0 0 0 15px #2563eb00}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes floatSlow{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(2deg)}}@keyframes floatReverse{0%,to{transform:translateY(-20px)}50%{transform:translateY(0)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes gradientFlow{0%{background-position:0% 0%}50%{background-position:100% 100%}to{background-position:0% 0%}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-30px,0)}70%{transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes slideInFromBottom{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInFromTop{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes scrollReverse{0%{transform:translate(-50%)}to{transform:translate(0)}}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes glow{0%,to{box-shadow:0 0 5px #2563eb4d,0 0 10px #2563eb33}50%{box-shadow:0 0 20px #2563eb80,0 0 30px #2563eb4d}}@keyframes textGlow{0%,to{text-shadow:0 0 5px rgba(37,99,235,.3)}50%{text-shadow:0 0 20px rgba(37,99,235,.6)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes ripple{0%{transform:scale(1);opacity:1}to{transform:scale(4);opacity:0}}@keyframes loadingSpinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dotPulse{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fadeIn{animation:fadeIn .5s ease forwards}.animate-fadeInUp{animation:fadeInUp .6s ease forwards}.animate-fadeInDown{animation:fadeInDown .6s ease forwards}.animate-fadeInLeft{animation:fadeInLeft .6s ease forwards}.animate-fadeInRight{animation:fadeInRight .6s ease forwards}.animate-scaleIn{animation:scaleIn .5s ease forwards}.animate-float{animation:float 6s ease-in-out infinite}.animate-floatSlow{animation:floatSlow 8s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-spinSlow{animation:spinSlow 20s linear infinite}.animate-bounce{animation:bounce 1s ease infinite}.animate-bounceIn{animation:bounceIn .8s ease forwards}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-delay-1,.stagger-1{animation-delay:.1s}.animate-delay-2,.stagger-2{animation-delay:.2s}.animate-delay-3,.stagger-3{animation-delay:.3s}.animate-delay-4,.stagger-4{animation-delay:.4s}.animate-delay-5,.stagger-5{animation-delay:.5s}.animate-delay-6,.stagger-6{animation-delay:.6s}.animate-delay-7,.stagger-7{animation-delay:.7s}.animate-delay-8,.stagger-8{animation-delay:.8s}.animate-delay-9,.stagger-9{animation-delay:.9s}.animate-delay-10,.stagger-10{animation-delay:1s}.animation-paused{animation-play-state:paused}.animation-running{animation-play-state:running}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--bg-dark-section: linear-gradient(180deg, #0f172a 0%, #1e293b 100%);--bg-light-section: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%);--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #64748b;--text-light: #94a3b8;--border-color: #e2e8f0;--border-light: rgba(0, 0, 0, .1);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-card: 0 4px 20px rgba(0, 0, 0, .08);--navbar-bg: rgba(255, 255, 255, .95);--navbar-text: #1e293b;--input-bg: #ffffff;--input-border: #e2e8f0}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-card: #1e293b;--bg-dark-section: linear-gradient(180deg, #0f172a 0%, #1e293b 100%);--bg-light-section: linear-gradient(180deg, #1e293b 0%, #0f172a 100%);--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--text-light: #64748b;--border-color: #334155;--border-light: rgba(255, 255, 255, .1);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-card: 0 4px 20px rgba(0, 0, 0, .3);--navbar-bg: rgba(15, 23, 42, .95);--navbar-text: #f1f5f9;--input-bg: #1e293b;--input-border: #334155}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:1rem;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;transition:background-color .3s ease,color .3s ease}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text-primary)}h1{font-size:3rem}@media (max-width: 768px){h1{font-size:2.5rem}}h2{font-size:2.5rem}@media (max-width: 768px){h2{font-size:2rem}}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:1rem;line-height:1.625;color:var(--text-secondary)}a{color:#2563eb;text-decoration:none;transition:color .3s ease}a:hover{color:#7c3aed}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:12px;font-size:1rem;font-weight:600;transition:all .3s ease;text-decoration:none;cursor:pointer;border:none}.btn-primary{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #2563eb4d}.btn-secondary{background:#fff;color:#1e293b;border:2px solid #e2e8f0}.btn-secondary:hover{border-color:#2563eb;color:#2563eb}.btn-outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3)}.btn-outline:hover{background:#ffffff1a;border-color:#fff}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.btn-sm{padding:.5rem 1rem;font-size:.875rem}input,textarea,select{font-family:inherit;font-size:1rem}.container{max-width:1280px;margin:0 auto;padding:0 1rem}@media (min-width: 1024px){.container{padding:0 2rem}}.section{padding:6rem 1rem}@media (max-width: 768px){.section{padding:4rem 1rem}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.gradient-text{background:linear-gradient(135deg,#2563eb,#7c3aed);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hidden{display:none!important}.visible{visibility:visible}.invisible{visibility:hidden}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.grid{display:grid}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.animate-on-scroll{opacity:1;transform:translateY(0);transition:opacity .6s ease,transform .6s ease}.animate-on-scroll.animate-ready{opacity:0;transform:translateY(30px)}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}.stagger-children>*{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.stagger-children.animate-in>*{opacity:1;transform:translateY(0)}.stagger-children.animate-in>*:nth-child(1){transition-delay:.1s}.stagger-children.animate-in>*:nth-child(2){transition-delay:.2s}.stagger-children.animate-in>*:nth-child(3){transition-delay:.3s}.stagger-children.animate-in>*:nth-child(4){transition-delay:.4s}.stagger-children.animate-in>*:nth-child(5){transition-delay:.5s}.stagger-children.animate-in>*:nth-child(6){transition-delay:.6s}.stagger-children.animate-in>*:nth-child(7){transition-delay:.7s}.stagger-children.animate-in>*:nth-child(8){transition-delay:.8s}.stagger-children.animate-in>*:nth-child(9){transition-delay:.9s}.stagger-children.animate-in>*:nth-child(10){transition-delay:1s}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}html{scrollbar-width:thin;scrollbar-color:var(--text-muted) var(--bg-tertiary)}::selection{background:#2563eb4d;color:var(--text-primary)}:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.loading-skeleton{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
