.theme-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease-out}.theme-toggle:hover{background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent);transform:scale(1.02);box-shadow:0 1px 4px #3b82f633}[data-theme=light] .theme-toggle:hover{box-shadow:0 1px 4px #3b82f633}.theme-toggle:active{transform:scale(.98)}.theme-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.theme-toggle__icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px}.theme-toggle__icon svg{width:100%;height:100%}.header{position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky);background:transparent;transition:background-color .3s ease,backdrop-filter .3s ease,border-color .3s ease,box-shadow .3s ease;animation:slideDown .4s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.header--scrolled{background:#0a0e1ad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);box-shadow:0 2px 20px #0000001a}[data-theme=light] .header--scrolled{background:#f5f7fae6;box-shadow:0 2px 20px #0000000d}.header__container{display:flex;align-items:center;justify-content:space-between;height:72px;gap:var(--space-4)}.header__logo{display:flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--color-text);font-weight:var(--font-bold);font-size:var(--text-lg);transition:opacity var(--transition-fast)}.header__logo:hover{opacity:.8}.header__logo-img{height:36px;width:auto;flex-shrink:0;display:block}.header__nav{flex:1;display:flex;justify-content:center}.header__nav-list{display:flex;align-items:center;gap:var(--space-1)}.header__nav-link{padding:var(--space-2) var(--space-4);color:var(--color-text-secondary);font-weight:var(--font-medium);font-size:var(--text-sm);border-radius:var(--radius-md);transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-block;text-decoration:none}.header__nav-link:hover{color:var(--color-text);background:var(--color-accent-light);transform:translateY(-1px)}.header__nav-link--active{color:var(--color-accent);background:var(--color-accent-light)}.header__actions{display:flex;align-items:center;gap:var(--space-3)}.header__menu-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;border:none;cursor:pointer}.header__menu-icon{display:flex;flex-direction:column;justify-content:center;align-items:center;width:24px;height:24px;position:relative}.header__menu-icon span{position:absolute;width:20px;height:2px;background:var(--color-text);border-radius:var(--radius-full);transition:all var(--transition-base)}.header__menu-icon span:nth-child(1){transform:translateY(-6px)}.header__menu-icon span:nth-child(2){transform:translateY(0)}.header__menu-icon span:nth-child(3){transform:translateY(6px)}.header__menu-icon--open span:nth-child(1){transform:rotate(45deg)}.header__menu-icon--open span:nth-child(2){opacity:0}.header__menu-icon--open span:nth-child(3){transform:rotate(-45deg)}.header__mobile-menu{position:fixed;top:72px;left:0;right:0;bottom:0;background:var(--color-bg);padding:var(--space-6);transform:translate(100%);transition:transform var(--transition-slow);overflow-y:auto;z-index:var(--z-modal)}.header__mobile-menu--open{transform:translate(0)}.header__mobile-nav-list{display:flex;flex-direction:column;gap:var(--space-2)}.header__mobile-nav-link{display:block;padding:var(--space-4);color:var(--color-text);font-weight:var(--font-medium);font-size:var(--text-lg);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.header__mobile-nav-link:hover,.header__mobile-nav-link--active{background:var(--color-accent-light);color:var(--color-accent)}.header__mobile-cta{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.header__backdrop{position:fixed;top:72px;left:0;right:0;bottom:0;background:#00000080;z-index:calc(var(--z-modal) - 1);animation:fadeIn .3s ease}@media (min-width: 768px){.header__container{height:80px}.header__mobile-menu,.header__backdrop{top:80px}}@media (min-width: 1024px){.header__nav-link{padding:var(--space-2) var(--space-5)}}.footer{background:var(--color-surface);border-top:1px solid var(--color-border);padding-block:var(--space-16);margin-top:auto}.footer__container{max-width:var(--container-xl)}.footer__grid{display:grid;gap:var(--space-12)}@media (min-width: 768px){.footer__grid{grid-template-columns:1.5fr 2fr;gap:var(--space-16)}}.footer__brand{max-width:400px}.footer__logo{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--color-text);font-weight:var(--font-bold);font-size:var(--text-lg);margin-bottom:var(--space-4)}.footer__logo:hover{opacity:.8}.footer__logo-img{height:32px;width:auto;flex-shrink:0;display:block}.footer__description{color:var(--color-text-dim);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin-bottom:var(--space-6)}.footer__badges{display:flex;flex-wrap:wrap;gap:var(--space-2)}.footer__badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--color-accent-light);color:var(--color-accent);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);transition:all .2s ease-out}.footer__badge:hover{background:var(--color-accent);color:#fff;transform:translateY(-1px);box-shadow:0 1px 4px #3b82f640}[data-theme=light] .footer__badge:hover{box-shadow:0 1px 4px #3b82f640}.footer__badge svg{flex-shrink:0;transition:transform .2s ease-out}.footer__badge:hover svg{transform:scale(1.05)}.footer__links-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-8)}@media (min-width: 640px){.footer__links-grid{grid-template-columns:repeat(3,1fr)}}.footer__links-column{display:flex;flex-direction:column;gap:var(--space-4)}.footer__links-title{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.footer__links-list{display:flex;flex-direction:column;gap:var(--space-3)}.footer__link{color:var(--color-text-dim);font-size:var(--text-sm);transition:all .2s ease-out;position:relative;display:inline-block}.footer__link:hover{color:var(--color-accent);transform:translate(4px)}.footer__link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background:var(--color-accent);transition:width .3s cubic-bezier(.4,0,.2,1)}.footer__link:hover:after{width:100%}.footer__bottom{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-8);margin-top:var(--space-12);border-top:1px solid var(--color-border);text-align:center}@media (min-width: 640px){.footer__bottom{flex-direction:row;justify-content:space-between;align-items:center;text-align:left}}.footer__copyright{color:var(--color-text-muted);font-size:var(--text-sm)}.footer__version{color:var(--color-text-muted);font-size:var(--text-xs)}.app{display:flex;flex-direction:column;min-height:100vh;animation:fadeIn .4s ease-out}.main{flex:1;display:flex;flex-direction:column}.page-loader{display:flex;align-items:center;justify-content:center;min-height:60vh;animation:fadeIn .3s ease-out}.loader-spinner{width:48px;height:48px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite;position:relative}.loader-spinner:after{content:"";position:absolute;top:-3px;left:-3px;right:-3px;bottom:-3px;border:3px solid transparent;border-top-color:var(--color-accent);border-radius:50%;opacity:.5;animation:spin 1.2s linear infinite reverse}@keyframes spin{to{transform:rotate(360deg)}}.skip-link{position:absolute;top:-100px;left:0;z-index:9999;padding:var(--space-3) var(--space-4);background:var(--color-accent);color:#fff;text-decoration:none;border-radius:var(--radius-md);transition:top .3s ease}.skip-link:focus{top:var(--space-4);animation:fadeInUp .3s ease-out}:root{--color-bg: #0a0e1a;--color-bg-elevated: #0f1424;--color-surface: #151925;--color-card: #1c2130;--color-card-hover: #232838;--color-border: rgba(255, 255, 255, .08);--color-border-light: rgba(255, 255, 255, .12);--color-border-accent: rgba(59, 130, 246, .3);--color-text: #e8edf5;--color-text-secondary: #8b95a8;--color-text-dim: #8b95a8;--color-text-muted: #5d6878;--color-accent: #3b82f6;--color-accent-hover: #2563eb;--color-accent-light: rgba(59, 130, 246, .15);--color-accent-gradient: linear-gradient(135deg, #3b82f6 0%, #2563eb 50%, #1d4ed8 100%);--color-accent-gradient-hover: linear-gradient(135deg, #2563eb 0%, #1d4ed8 50%, #1e40af 100%);--color-secondary: #06b6d4;--color-secondary-hover: #22d3ee;--color-secondary-light: rgba(6, 182, 212, .15);--color-success: #10b981;--color-success-light: rgba(16, 185, 129, .15);--color-error: #ef4444;--color-error-light: rgba(239, 68, 68, .15);--color-warning: #f59e0b;--color-warning-light: rgba(245, 158, 11, .15);--color-info: #3b82f6;--color-info-light: rgba(59, 130, 246, .15);--gradient-hero: radial-gradient(ellipse 80% 50% at 50% -20%, rgba(59, 130, 246, .3) 0%, transparent 50%), radial-gradient(ellipse 60% 40% at 80% 60%, rgba(37, 99, 235, .15) 0%, transparent 50%), linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-elevated) 100%);--gradient-cta: linear-gradient(135deg, rgba(59, 130, 246, .1) 0%, rgba(37, 99, 235, .1) 100%);--font-family: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", "SF Mono", Monaco, "Cascadia Code", monospace;--text-xs: clamp(.75rem, .7rem + .25vw, .8125rem);--text-sm: clamp(.875rem, .8rem + .35vw, .9375rem);--text-base: clamp(1rem, .925rem + .4vw, 1.0625rem);--text-lg: clamp(1.125rem, 1rem + .5vw, 1.25rem);--text-xl: clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--text-2xl: clamp(1.5rem, 1.25rem + 1.25vw, 2rem);--text-3xl: clamp(1.875rem, 1.5rem + 1.875vw, 2.5rem);--text-4xl: clamp(2.25rem, 1.75rem + 2.5vw, 3.25rem);--text-5xl: clamp(3rem, 2rem + 5vw, 4.5rem);--text-6xl: clamp(3.75rem, 2.5rem + 6.25vw, 5.5rem);--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-none: 1;--leading-tight: 1.2;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-normal: 0;--tracking-wide: .025em;--tracking-wider: .05em;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .35);--shadow-2xl: 0 24px 64px rgba(0, 0, 0, .4);--shadow-glow: 0 0 40px rgba(59, 130, 246, .3);--shadow-glow-lg: 0 0 60px rgba(59, 130, 246, .4);--shadow-card: 0 4px 20px rgba(0, 0, 0, .25);--shadow-card-hover: 0 8px 32px rgba(0, 0, 0, .35), 0 0 0 1px var(--color-border-accent);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-slower: .5s ease;--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-modal-backdrop: 40;--z-modal: 50;--z-popover: 60;--z-tooltip: 70;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1200px;--container-2xl: 1400px}[data-theme=light]{--color-bg: #f5f7fa;--color-bg-elevated: #ffffff;--color-surface: #ffffff;--color-card: #ffffff;--color-card-hover: #f1f5f9;--color-border: rgba(0, 0, 0, .08);--color-border-light: rgba(0, 0, 0, .06);--color-border-accent: rgba(59, 130, 246, .25);--color-text: #1f2937;--color-text-secondary: #6b7280;--color-text-dim: #64748b;--color-text-muted: #94a3b8;--color-accent: #3b82f6;--color-accent-hover: #2563eb;--color-accent-light: rgba(59, 130, 246, .1);--color-accent-gradient: linear-gradient(135deg, #3b82f6 0%, #2563eb 50%, #1d4ed8 100%);--color-accent-gradient-hover: linear-gradient(135deg, #2563eb 0%, #1d4ed8 50%, #1e40af 100%);--gradient-hero: radial-gradient(ellipse 80% 50% at 50% -20%, rgba(59, 130, 246, .15) 0%, transparent 50%), radial-gradient(ellipse 60% 40% at 80% 60%, rgba(37, 99, 235, .08) 0%, transparent 50%), linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-elevated) 100%);--gradient-cta: linear-gradient(135deg, rgba(59, 130, 246, .05) 0%, rgba(37, 99, 235, .05) 100%);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .1);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .12);--shadow-2xl: 0 24px 64px rgba(0, 0, 0, .15);--shadow-glow: 0 0 40px rgba(59, 130, 246, .15);--shadow-glow-lg: 0 0 60px rgba(59, 130, 246, .2);--shadow-card: 0 2px 12px rgba(0, 0, 0, .06), 0 0 0 1px var(--color-border);--shadow-card-hover: 0 8px 24px rgba(0, 0, 0, .1), 0 0 0 1px var(--color-border-accent)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}*:not(svg):not(path):not(circle):not(rect):not(line):not(polygon):not([class*=no-transition]){transition:background-color .5s cubic-bezier(.25,.46,.45,.94),color .5s cubic-bezier(.25,.46,.45,.94),border-color .5s cubic-bezier(.25,.46,.45,.94),box-shadow .5s cubic-bezier(.25,.46,.45,.94)}svg,path,circle,rect,line,polygon{transition:fill .5s cubic-bezier(.25,.46,.45,.94),stroke .5s cubic-bezier(.25,.46,.45,.94)}html{font-size:100%;line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;scroll-behavior:smooth;scroll-padding-top:80px;transition:background-color .5s cubic-bezier(.25,.46,.45,.94),color .5s cubic-bezier(.25,.46,.45,.94)}body{font-family:var(--font-family);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;transition:background-color .5s cubic-bezier(.25,.46,.45,.94),color .5s cubic-bezier(.25,.46,.45,.94),border-color .5s cubic-bezier(.25,.46,.45,.94)}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:var(--font-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text);transition:color .5s cubic-bezier(.25,.46,.45,.94)}h1{font-size:var(--text-5xl);font-weight:var(--font-extrabold);letter-spacing:var(--tracking-tighter)}h2{font-size:var(--text-4xl);font-weight:var(--font-bold)}h3{font-size:var(--text-2xl);font-weight:var(--font-semibold)}h4{font-size:var(--text-xl);font-weight:var(--font-semibold)}h5{font-size:var(--text-lg);font-weight:var(--font-medium)}h6{font-size:var(--text-base);font-weight:var(--font-medium)}p{color:var(--color-text-secondary);line-height:var(--leading-relaxed);transition:color .5s cubic-bezier(.25,.46,.45,.94)}a{color:var(--color-accent);text-decoration:none;transition:color .2s ease-out;position:relative}a:hover{color:var(--color-accent-hover)}a:not(.btn):not(.header__logo):not(.footer__logo):after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--color-accent);transition:width .3s cubic-bezier(.4,0,.2,1)}a:not(.btn):not(.header__logo):not(.footer__logo):hover:after{width:100%}a:hover svg,button:hover svg,[role=button]:hover svg{color:var(--color-accent);transition:color .2s ease-out}svg{transition:color .2s ease-out,fill .2s ease-out,stroke .2s ease-out}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}img,svg,video{display:block;max-width:100%;height:auto}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none}button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}ul,ol{list-style:none}strong,b{font-weight:var(--font-semibold)}.container{width:100%;max-width:var(--container-xl);margin-inline:auto;padding-inline:var(--space-6)}@media (min-width: 768px){.container{padding-inline:var(--space-8)}}@media (min-width: 1024px){.container{padding-inline:var(--space-12)}}.section{padding-block:var(--space-16)}@media (min-width: 768px){.section{padding-block:var(--space-24)}}.text-gradient{background:var(--color-accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.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}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:var(--font-semibold);line-height:1;border-radius:var(--radius-lg);transition:all .3s cubic-bezier(.4,0,.2,1),background-color .5s cubic-bezier(.25,.46,.45,.94),color .5s cubic-bezier(.25,.46,.45,.94),border-color .5s cubic-bezier(.25,.46,.45,.94),box-shadow .5s cubic-bezier(.25,.46,.45,.94),transform .2s cubic-bezier(.4,0,.2,1);cursor:pointer;white-space:nowrap;min-height:48px;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.btn:active:before{width:300px;height:300px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-accent-gradient);color:#fff;box-shadow:var(--shadow-md),0 0 20px #3b82f64d}[data-theme=light] .btn-primary{box-shadow:var(--shadow-md),0 0 20px #3b82f64d}.btn-primary:hover:not(:disabled){background:var(--color-accent-gradient-hover);color:#fff;transform:translateY(-2px) scale(1.02);box-shadow:var(--shadow-lg),0 0 30px #3b82f666}[data-theme=light] .btn-primary:hover:not(:disabled){box-shadow:var(--shadow-lg),0 0 30px #3b82f666}.btn-primary:active:not(:disabled){transform:translateY(0) scale(.98);transition:transform .1s ease}.btn-primary:active:not(:disabled),.btn-primary:focus:not(:disabled){background:var(--color-accent-gradient-hover);color:#fff;transform:translateY(0)}.btn-primary svg{color:#fff}.btn-secondary{background:transparent;color:var(--color-text);border:2px solid var(--color-border-light)}.btn-secondary:hover:not(:disabled){background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-accent-light);color:var(--color-accent)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);min-height:40px}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-lg);min-height:56px}.card{background:var(--color-card);border-radius:var(--radius-xl);border:1px solid var(--color-border);padding:var(--space-6);transition:all .3s cubic-bezier(.4,0,.2,1),background-color .5s cubic-bezier(.25,.46,.45,.94),border-color .5s cubic-bezier(.25,.46,.45,.94),box-shadow .5s cubic-bezier(.25,.46,.45,.94),transform .3s cubic-bezier(.4,0,.2,1);animation:fadeInUp .6s ease-out backwards}.card:hover{background:var(--color-card-hover);border-color:var(--color-border-accent);box-shadow:var(--shadow-card-hover);transform:translateY(-4px) scale(1.01)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulseGlow{0%,to{box-shadow:var(--shadow-md),0 0 20px #3b82f64d}50%{box-shadow:var(--shadow-lg),0 0 30px #3b82f680}}[data-theme=light] .btn-primary{animation:pulseGlowLight 3s ease-in-out infinite}@keyframes pulseGlowLight{0%,to{box-shadow:var(--shadow-md),0 0 20px #3b82f64d}50%{box-shadow:var(--shadow-lg),0 0 30px #3b82f680}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in-up{animation:fadeInUp .6s var(--ease-out) forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .5s var(--ease-out) forwards}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scaleIn .4s var(--ease-out) forwards}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slideInLeft .5s var(--ease-out) forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-right{animation:slideInRight .5s var(--ease-out) forwards}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:float 4s ease-in-out infinite}@keyframes pulseGlow{0%,to{box-shadow:var(--shadow-glow)}50%{box-shadow:var(--shadow-glow-lg)}}.animate-pulse-glow{animation:pulseGlow 3s ease-in-out infinite}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.delay-700{animation-delay:.7s}.delay-800{animation-delay:.8s}.animate-on-scroll{opacity:0}.animate-on-scroll.is-visible{opacity:1}[data-animate]{opacity:0;transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}[data-animate=fade-up]{transform:translateY(30px)}[data-animate=fade-in]{transform:none}[data-animate=scale]{transform:scale(.95)}[data-animate=slide-left]{transform:translate(-30px)}[data-animate=slide-right]{transform:translate(30px)}[data-animate].is-visible{opacity:1;transform:none}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.skip-link{position:absolute;top:-100%;left:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-accent);color:#fff;border-radius:var(--radius-md);z-index:100;transition:top var(--transition-fast)}.skip-link:focus{top:var(--space-4)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:var(--radius-full);border:2px solid var(--color-bg)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-dim)}*{scrollbar-width:thin;scrollbar-color:var(--color-border-light) var(--color-bg)}::selection{background:var(--color-accent);color:#fff}@media (max-width: 767px){.hide-mobile{display:none!important}}@media (min-width: 768px){.hide-desktop{display:none!important}}.grid{display:grid;gap:var(--space-6)}.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(1,1fr)}@media (min-width: 640px){.grid-2,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}
