:root{--color-bg: #050A14;--color-surface: #0C1628;--color-surface-2: #0F1E38;--color-glass: rgba(13, 24, 50, .6);--color-glass-light: rgba(255, 255, 255, .04);--color-primary: #6C63FF;--color-primary-dark: #5248D9;--color-primary-glow: rgba(108, 99, 255, .35);--color-accent: #00D4FF;--color-accent-glow: rgba(0, 212, 255, .3);--color-danger: #FF6B6B;--color-text: #E8EDF8;--color-text-muted: #8899BB;--color-text-dim: #4A5878;--color-border: rgba(108, 99, 255, .2);--color-border-light: rgba(255, 255, 255, .06);--gradient-primary: linear-gradient(135deg, #6C63FF 0%, #00D4FF 100%);--gradient-hero: radial-gradient(ellipse at 50% 50%, rgba(108, 99, 255, .15) 0%, transparent 70%);--gradient-card: linear-gradient(135deg, rgba(108,99,255,.08) 0%, rgba(0,212,255,.04) 100%);--glass-blur: blur(20px);--glass-blur-sm: blur(12px);--container-max: 1200px;--section-padding: 5rem 1.5rem;--shadow-glow: 0 0 40px rgba(108, 99, 255, .2);--shadow-card: 0 8px 32px rgba(0, 0, 0, .4);--shadow-elevated: 0 20px 60px rgba(0, 0, 0, .6);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: .15s ease;--transition-slow: .6s cubic-bezier(.4, 0, .2, 1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 9999px;--font-heading: "Inter", -apple-system, sans-serif;--font-body: "Inter", -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;letter-spacing:-.02em}a{color:inherit;text-decoration:none}.container{max-width:var(--container-max);margin:0 auto;padding:0 1.5rem}.section{padding:var(--section-padding)}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-card{background:var(--color-glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:var(--transition-base)}.glass-card:hover{border-color:#6c63ff66;box-shadow:var(--shadow-card),var(--shadow-glow);transform:translateY(-4px)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;border-radius:var(--radius-full);font-family:var(--font-body);font-size:.95rem;font-weight:600;cursor:pointer;border:none;transition:var(--transition-base);white-space:nowrap}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 20px var(--color-primary-glow)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px var(--color-primary-glow)}.btn-primary:active{transform:translateY(0)}.btn-outline{background:transparent;color:var(--color-text);border:1px solid var(--color-border);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary);background:#6c63ff14}.btn-sm{padding:.5rem 1.25rem;font-size:.875rem}.btn-lg{padding:1rem 2.25rem;font-size:1.05rem}.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .85rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.badge-primary{background:#6c63ff26;color:var(--color-primary);border:1px solid rgba(108,99,255,.3)}.badge-accent{background:#00d4ff1a;color:var(--color-accent);border:1px solid rgba(0,212,255,.25)}.badge-danger{background:#ff6b6b1a;color:var(--color-danger);border:1px solid rgba(255,107,107,.25)}.section-label{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.section-label:before{content:"";display:block;width:24px;height:2px;background:var(--gradient-primary);border-radius:var(--radius-full)}.section-title{font-size:clamp(2rem,4vw,3rem);font-weight:800;margin-bottom:1rem;color:var(--color-text)}.section-subtitle{font-size:1.1rem;color:var(--color-text-muted);max-width:600px;line-height:1.7}.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}.reveal.revealed{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}.neon-border{position:relative}.neon-border:after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:var(--gradient-primary);z-index:-1;opacity:0;transition:opacity .3s ease}.neon-border:hover:after{opacity:.5}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}@media(max-width:768px){.grid-2{grid-template-columns:1fr}}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media(max-width:1024px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.grid-3{grid-template-columns:1fr}}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}@media(max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.grid-4{grid-template-columns:1fr}}.cyber-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(108,99,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(108,99,255,.04) 1px,transparent 1px);background-size:60px 60px;pointer-events:none}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent);margin:3rem 0}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none}@media(max-width:768px){:root{--section-padding: 3.5rem 1rem}.section-title{font-size:clamp(1.6rem,6vw,2.2rem)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--radius-full)}::selection{background:#6c63ff4d;color:var(--color-text)}
