*,: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:var(--font-primary);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-dark);overflow-x:hidden}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none}.container{width:100%;max-width:var(--container-max);padding:0 var(--space-6);margin:0 auto}.section{padding:var(--space-20)0}.section--dark{background-color:var(--color-bg-dark);color:var(--color-text-primary)}.section--light{background-color:var(--color-bg-light);color:var(--color-text-dark)}.section--gradient{background:linear-gradient(135deg,var(--color-primary)0%,var(--color-accent-blue)100%)}.heading-1{font-family:var(--font-display);font-size:clamp(var(--text-4xl),5vw,var(--text-6xl));font-weight:var(--font-bold);line-height:var(--leading-tight);letter-spacing:-.02em}.heading-2{font-family:var(--font-display);font-size:clamp(var(--text-3xl),4vw,var(--text-5xl));font-weight:var(--font-bold);line-height:var(--leading-tight);letter-spacing:-.01em}.heading-3{font-family:var(--font-display);font-size:clamp(var(--text-2xl),3vw,var(--text-4xl));font-weight:var(--font-semibold);line-height:var(--leading-snug)}.heading-4{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-semibold);line-height:var(--leading-snug)}.text-gradient{background:var(--color-primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-muted{color:var(--color-text-secondary)}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-6);font-size:var(--text-sm);font-weight:var(--font-semibold);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-normal);border:none;text-decoration:none;display:inline-flex}.btn--primary{background:var(--color-bg-light);color:var(--color-text-dark)}.btn--primary:hover{background:var(--color-bg-light-alt);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn--outline{color:var(--color-text-primary);border:1px solid var(--color-border);background:0 0}.btn--outline:hover{border-color:var(--color-text-primary);background:#ffffff1a}.btn--purple{background:var(--color-primary);color:#fff}.btn--purple:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.card{background:var(--color-bg-light);border-radius:var(--radius-xl);padding:var(--space-6);transition:all var(--transition-normal)}.card--dark{background:var(--color-bg-dark-card);border:1px solid var(--color-border)}.card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.card--dark:hover{border-color:var(--color-border-purple);box-shadow:var(--shadow-glow)}.grid{gap:var(--space-6);display:grid}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid--4,.grid--3{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid--4,.grid--3,.grid--2{grid-template-columns:1fr}}.flex{display:flex}.flex--center{justify-content:center;align-items:center}.flex--between{justify-content:space-between;align-items:center}.flex--col{flex-direction:column}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.animate-fade-in-up{animation:.6s forwards fadeInUp}.animate-fade-in{animation:.6s forwards fadeIn}.animate-float{animation:3s ease-in-out infinite float}.animate-delay-1{animation-delay:.1s}.animate-delay-2{animation-delay:.2s}.animate-delay-3{animation-delay:.3s}.animate-delay-4{animation-delay:.4s}.animate-delay-5{animation-delay:.5s}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-bg-dark)}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light)}::selection{background:var(--color-primary);color:#fff}
