*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--space-md));-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body{font-family:var(--font-body);font-size:var(--font-size-fluid-base);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal);color:var(--color-slate-200);background-color:var(--color-navy-900);min-height:100vh;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-white);letter-spacing:-.02em}h1{font-size:var(--font-size-fluid-4xl)}h2{font-size:var(--font-size-fluid-3xl)}h3{font-size:var(--font-size-fluid-2xl)}h4{font-size:var(--font-size-fluid-xl)}h5{font-size:var(--font-size-fluid-lg)}h6{font-size:var(--font-size-fluid-base)}p{margin-bottom:var(--space-md);max-width:75ch}p:last-child{margin-bottom:0}a{color:var(--color-electric-blue);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-cyan)}a:focus-visible{outline:2px solid var(--color-electric-blue);outline-offset:2px}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer}:focus-visible{outline:2px solid var(--color-electric-blue);outline-offset:3px;border-radius:var(--radius-sm)}::selection{background:var(--color-electric-blue);color:var(--color-navy-900)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-navy-900)}::-webkit-scrollbar-thumb{background:var(--color-slate-700);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-slate-600)}.skip-link{position:absolute;top:-100%;left:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-electric-blue);color:var(--color-navy-900);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);z-index:var(--z-tooltip);transition:top var(--transition-fast)}.skip-link:focus{top:var(--space-md)}.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}:root{--color-navy-900: #0A0F1A;--color-navy-800: #0F172A;--color-charcoal: #111827;--color-slate-800: #1E293B;--color-slate-700: #334155;--color-slate-600: #475569;--color-slate-500: #64748B;--color-slate-400: #94A3B8;--color-slate-300: #CBD5E1;--color-slate-200: #E2E8F0;--color-slate-100: #F1F5F9;--color-white: #FFFFFF;--color-electric-blue: #00BCD4;--color-electric-blue-dim: rgba(0, 188, 212, .15);--color-cyan: #00BCD4;--color-violet: #AB47BC;--color-violet-dim: rgba(171, 71, 188, .15);--color-pink: #E91E63;--color-amber: #FFB300;--color-emerald: #43A047;--color-orange: #FF8F00;--color-indigo: #1565C0;--color-navy-brand: #1A237E;--gradient-primary: linear-gradient(135deg, #00BCD4 0%, #43A047 30%, #FFB300 55%, #E91E63 78%, #AB47BC 100%);--gradient-primary-hover: linear-gradient(135deg, #0097A7 0%, #388E3C 30%, #FFA000 55%, #C2185B 78%, #8E24AA 100%);--gradient-subtle: linear-gradient(180deg, rgba(0, 188, 212, .08) 0%, transparent 100%);--gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, .06) 0%, rgba(255, 255, 255, .02) 100%);--gradient-hero: radial-gradient(ellipse 50% 40% at 20% 15%, rgba(0, 188, 212, .14) 0%, transparent 65%), radial-gradient(ellipse 45% 35% at 80% 20%, rgba(67, 160, 71, .1) 0%, transparent 60%), radial-gradient(ellipse 40% 35% at 75% 80%, rgba(233, 30, 99, .1) 0%, transparent 60%), radial-gradient(ellipse 40% 30% at 15% 85%, rgba(255, 179, 0, .08) 0%, transparent 60%), var(--color-navy-900);--gradient-rainbow: linear-gradient(90deg, #00BCD4, #43A047, #FFB300, #FF8F00, #E91E63, #AB47BC, #00BCD4);--gradient-warm: linear-gradient(135deg, #FFB300 0%, #E91E63 100%);--gradient-cool: linear-gradient(135deg, #43A047 0%, #00BCD4 100%);--gradient-cosmic: linear-gradient(135deg, #1565C0 0%, #E91E63 50%, #FFB300 100%);--gradient-sunset: linear-gradient(135deg, #FF8F00 0%, #E91E63 100%);--gradient-aurora: radial-gradient(ellipse 40% 35% at 15% 20%, rgba(0, 188, 212, .16) 0%, transparent 70%), radial-gradient(ellipse 45% 40% at 85% 30%, rgba(171, 71, 188, .16) 0%, transparent 70%), radial-gradient(ellipse 35% 30% at 70% 85%, rgba(233, 30, 99, .12) 0%, transparent 70%), radial-gradient(ellipse 30% 25% at 20% 80%, rgba(67, 160, 71, .12) 0%, transparent 70%);--glass-bg: rgba(17, 24, 39, .7);--glass-border: rgba(255, 255, 255, .04);--glass-border-hover: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .3);--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--font-size-fluid-xs: clamp(.75rem, .7rem + .25vw, .875rem);--font-size-fluid-sm: clamp(.875rem, .8rem + .375vw, 1rem);--font-size-fluid-base: clamp(1rem, .9rem + .5vw, 1.125rem);--font-size-fluid-lg: clamp(1.125rem, 1rem + .625vw, 1.25rem);--font-size-fluid-xl: clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--font-size-fluid-2xl: clamp(1.5rem, 1.25rem + 1.25vw, 2rem);--font-size-fluid-3xl: clamp(1.75rem, 1.4rem + 1.75vw, 2.5rem);--font-size-fluid-4xl: clamp(2.5rem, 1.8rem + 3.5vw, 4.5rem);--font-size-fluid-5xl: clamp(3rem, 2rem + 5vw, 5.5rem);--line-height-tight: 1.1;--line-height-snug: 1.35;--line-height-normal: 1.6;--line-height-relaxed: 1.75;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--space-0: 0;--space-px: 1px;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--space-5xl: 8rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .35);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 48px rgba(0, 0, 0, .55);--shadow-glow-blue: 0 0 24px rgba(0, 188, 212, .3);--shadow-glow-violet: 0 0 24px rgba(171, 71, 188, .3);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--container-narrow: 720px;--container-wide: 1200px;--container-full: 1440px;--header-height: 72px;--header-height-mobile: 64px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-glow{0%,to{box-shadow:0 0 24px #00bcd44d}50%{box-shadow:0 0 32px #00bcd480,0 0 48px #ab47bc4d}}@keyframes float{0%,to{transform:translateY(0) translate(0)}33%{transform:translateY(-8px) translate(4px)}66%{transform:translateY(4px) translate(-6px)}}@keyframes grid-move{0%{transform:translate(0)}to{transform:translate(60px,60px)}}@keyframes particle-drift{0%{transform:translate(0) rotate(0);opacity:.3}25%{opacity:.6}50%{transform:translate(20px,-30px) rotate(180deg);opacity:.4}75%{opacity:.5}to{transform:translate(0) rotate(360deg);opacity:.3}}@keyframes count-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fade-in var(--transition-slow) ease-out forwards}.animate-slide-up{animation:slide-up var(--transition-slow) ease-out forwards}.animate-slide-down{animation:slide-down var(--transition-base) ease-out forwards}.animate-scale-in{animation:scale-in var(--transition-base) ease-out forwards}@media (prefers-reduced-motion: reduce){.animate-fade-in,.animate-slide-up,.animate-slide-down,.animate-scale-in{animation:none!important;opacity:1!important;transform:none!important}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease-out,transform .7s ease-out}.reveal.is-visible{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}.reveal-delay-6{transition-delay:.6s}.stagger>*{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.stagger.is-visible>*:nth-child(1){transition-delay:0ms}.stagger.is-visible>*:nth-child(2){transition-delay:80ms}.stagger.is-visible>*:nth-child(3){transition-delay:.16s}.stagger.is-visible>*:nth-child(4){transition-delay:.24s}.stagger.is-visible>*:nth-child(5){transition-delay:.32s}.stagger.is-visible>*:nth-child(6){transition-delay:.4s}.stagger.is-visible>*{opacity:1;transform:translateY(0)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-family:var(--font-body);font-size:var(--font-size-fluid-sm);font-weight:var(--font-weight-semibold);color:var(--color-navy-900);background:var(--gradient-primary);border-radius:var(--radius-full);border:none;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast);white-space:nowrap}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow-blue);filter:brightness(1.1)}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-primary:focus-visible{outline:2px solid var(--color-electric-blue);outline-offset:3px}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-family:var(--font-body);font-size:var(--font-size-fluid-sm);font-weight:var(--font-weight-semibold);color:var(--color-slate-100);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-full);backdrop-filter:blur(20px);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);white-space:nowrap}.btn-secondary:hover{background:var(--gradient-glass);border-color:var(--glass-border-hover);color:var(--color-white);transform:translateY(-2px)}.btn-secondary:active{transform:translateY(0) scale(.98)}.btn-secondary:focus-visible{outline:2px solid var(--color-electric-blue);outline-offset:3px}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);font-family:var(--font-body);font-size:var(--font-size-fluid-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-300);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.btn-ghost:hover{color:var(--color-white);background:#ffffff0f}.btn-ghost:focus-visible{outline:2px solid var(--color-electric-blue);outline-offset:3px}.card{background:var(--color-charcoal);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-xl);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--glass-border-hover)}.card:focus-within{outline:2px solid var(--color-electric-blue);outline-offset:2px}.card-glass{background:var(--glass-bg);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-xl);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.card-glass:hover{transform:translateY(-4px);box-shadow:var(--glass-shadow);border-color:var(--glass-border-hover)}.card-elevated{background:var(--color-charcoal);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.card-elevated:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl);border-color:var(--glass-border-hover)}.section{padding:var(--space-4xl) var(--space-xl)}.section-alt{background:var(--color-navy-800)}.section-gradient{background:var(--gradient-subtle)}.container{width:100%;max-width:var(--container-wide);margin:0 auto;padding:0 var(--space-lg)}.container-narrow{max-width:var(--container-narrow)}.container-full{max-width:var(--container-full)}.grid{display:grid;gap:var(--space-xl)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}@media (max-width: 1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.section{padding:var(--space-3xl) var(--space-md)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.container{padding:0 var(--space-md)}}.text-center{text-align:center}.text-muted{color:var(--color-slate-400)}.text-sm{font-size:var(--font-size-fluid-sm)}.text-xs{font-size:var(--font-size-fluid-xs)}.font-mono{font-family:var(--font-mono)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);font-family:var(--font-mono);font-size:var(--font-size-fluid-xs);font-weight:var(--font-weight-medium);color:var(--color-electric-blue);background:var(--color-electric-blue-dim);border-radius:var(--radius-full);white-space:nowrap}.badge-violet{color:var(--color-violet);background:var(--color-violet-dim)}.badge-cyan{color:var(--color-cyan);background:#00bcd426}.icon{display:inline-block;width:24px;height:24px;flex-shrink:0}.icon-lg{width:32px;height:32px}.icon-xl{width:48px;height:48px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@font-face{font-family:Space Grotesk;src:local("Space Grotesk"),local("Segoe UI");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:local("Inter"),local("Segoe UI");font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:local("JetBrains Mono"),local("Consolas"),local("Monospace");font-weight:400 500;font-style:normal;font-display:swap}::selection{background:var(--color-violet);color:var(--color-white)}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}app-section h2.section-title{background:linear-gradient(115deg,var(--color-white) 30%,var(--color-electric-blue) 60%,var(--color-emerald) 80%,var(--color-violet) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}[appTilt]{position:relative;transform:perspective(1100px) rotateX(var(--tilt-rx, 0deg)) rotateY(var(--tilt-ry, 0deg));transform-style:preserve-3d;transition:transform var(--transition-base),box-shadow var(--transition-base);will-change:transform}[appTilt]:after{content:"";position:absolute;inset:0;border-radius:var(--radius-lg);background:radial-gradient(480px circle at var(--glow-x, 50%) var(--glow-y, 50%),rgba(255,255,255,.09),rgba(255,255,255,.025) 45%,transparent 70%);opacity:0;transition:opacity var(--transition-base);pointer-events:none;z-index:2}[appTilt]:hover:after{opacity:1}[appTilt]:active{transform:perspective(1100px) rotateX(var(--tilt-rx, 0deg)) rotateY(var(--tilt-ry, 0deg)) scale(.985)}app-card.card-accent>article{position:relative;overflow:hidden}app-card.card-accent>article:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent, #00BCD4) 0%,transparent 85%);opacity:.85;z-index:1}app-card.card-accent>article:after{content:"";position:absolute;top:-42px;right:-42px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,var(--accent, #00BCD4) 0%,transparent 70%);opacity:.14;pointer-events:none}@media (prefers-reduced-motion: reduce){[appTilt]{transition:none;transform:none!important}[appTilt]:after{display:none}}
