:root{--primary-color:#2563eb;--primary-light:#3b82f6;--secondary-color:#0ea5e9;--accent-color:#8b5cf6;--text-dark:#1e293b;--text-medium:#475569;--text-light:#64748b;--text-muted:#94a3b8;--bg-white:#fff;--bg-light:#f8fafc;--bg-card:#fff;--bg-card-hover:#f1f5f9;--border-color:#e2e8f0;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 4px 6px #0000000d, 0 2px 4px #00000008;--shadow-lg:0 10px 15px #00000014, 0 4px 6px #0000000a;--shadow-xl:0 20px 25px #0000001a, 0 10px 10px #0000000a;--shadow-glow:0 0 30px #2563eb33;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body{color:var(--text-dark);background:var(--bg-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 24px}a{color:inherit;text-decoration:none;transition:color .3s}ul{list-style:none}img{max-width:100%;height:auto}.btn{border-radius:var(--radius-full);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 32px;font-size:15px;font-weight:600;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn:hover:before{left:100%}.btn-primary{background:linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);color:#fff;box-shadow:0 4px 14px #2563eb4d}.btn-primary:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 8px 25px #2563eb66}.btn-outline{border:2px solid var(--primary-color);color:var(--primary-color);background:0 0}.btn-outline:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px)}.btn-dark{background:var(--text-dark);color:#fff}.btn-dark:hover{background:#334155;transform:translateY(-2px)scale(1.02)}.app{min-height:100vh}.animate-fadeUp{animation:.8s forwards fadeUp}.animate-fadeUp-1{animation:.6s forwards fadeUp}.animate-fadeUp-2{opacity:0;animation:.8s .2s forwards fadeUp}.animate-fadeUp-3{opacity:0;animation:.8s .4s forwards fadeUp}.animate-fadeUp-4{opacity:0;animation:.8s .6s forwards fadeUp}.animate-slideLeft{animation:.8s forwards slideLeft}.animate-slideRight{animation:.8s forwards slideRight}.animate-float{animation:6s ease-in-out infinite float}.animate-float-slow{animation:8s ease-in-out infinite float}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-scale{animation:.6s forwards scale}.animate-bounce-in{animation:.6s forwards bounceIn}.animate-shimmer{background:linear-gradient(90deg,#fff0 0%,#ffffff80 50%,#fff0 100%) 0 0/200% 100%;animation:2s linear infinite shimmer}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-15px)rotate(2deg)}50%{transform:translateY(-10px)rotate(0)}75%{transform:translateY(-20px)rotate(-2deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}@keyframes scale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes borderRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scroll-reveal{opacity:0;transition:all .8s;transform:translateY(30px)}.scroll-reveal.active{opacity:1;transform:translateY(0)}.scroll-reveal-left{opacity:0;transition:all .8s;transform:translate(-40px)}.scroll-reveal-left.active{opacity:1;transform:translate(0)}.scroll-reveal-right{opacity:0;transition:all .8s;transform:translate(40px)}.scroll-reveal-right.active{opacity:1;transform:translate(0)}@media (width<=768px){.container{padding:0 16px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.animate__animated{animation-duration:.6s;animation-fill-mode:both}.animate__fadeInUp{animation-name:fadeInUp}.animate__fadeIn{animation-name:fadeIn}.animate__bounce{animation-name:bounce}.animate__scaleIn{animation-name:scaleIn}
