@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;600;700&display=swap";:root{--color-primary:#06c;--color-primary-hover:#0071e3;--color-primary-dark:#049;--color-on-primary:#fff;--color-ink:#1d1d1f;--color-ink-secondary:#424245;--color-ink-muted:#6e6e73;--color-ink-caption:#86868b;--color-canvas:#fff;--color-canvas-parchment:#f5f5f7;--color-surface-pearl:#fafafc;--color-surface-dark:#1d1d1f;--color-surface-dark-2:#2d2d2f;--color-block-mint:#c8e6cd;--color-block-lilac:#c5b0f4;--color-block-cream:#f4ecd6;--color-block-pink:#efd4d4;--color-block-sky:#c5dff5;--color-block-coral:#f3c9b6;--color-success:#1ea64a;--color-warning:#bf8500;--color-error:#e53935;--color-hairline:#d2d2d7;--color-hairline-soft:#e8e8ed;--font-sans:"Inter", "Noto Sans SC", system-ui, -apple-system, sans-serif;--font-mono:"SF Mono", "Fira Code", monospace;--text-hero:clamp(2.5rem, 5vw, 3.5rem);--text-display-lg:clamp(2rem, 4vw, 2.5rem);--text-display-md:clamp(1.5rem, 3vw, 2.125rem);--text-headline:clamp(1.25rem, 2.5vw, 1.75rem);--text-subhead:1.25rem;--text-body-lg:1.125rem;--text-body:1rem;--text-body-sm:.875rem;--text-caption:.75rem;--text-eyebrow:.8125rem;--space-xxs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-section:96px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-pill:9999px;--shadow-card:0 2px 12px #00000014;--shadow-card-hover:0 8px 30px #0000001f;--shadow-elevated:0 12px 40px #00000026;--transition-fast:.2s ease;--transition-base:.3s ease;--transition-slow:.5s ease;--max-width:1200px;--nav-height:52px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-body);color:var(--color-ink);background-color:var(--color-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}.skip-link{z-index:9999;background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-sm);transition:top var(--transition-fast);padding:12px 24px;font-weight:600;text-decoration:none;position:absolute;top:-100%;left:16px}.skip-link:focus{top:16px}:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}a{color:var(--color-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-hover)}img{max-width:100%;height:auto;display:block}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.container{max-width:var(--max-width);padding:0 var(--space-lg);margin:0 auto}.section{padding:var(--space-section) 0}.eyebrow{font-size:var(--text-eyebrow);text-transform:uppercase;letter-spacing:1.2px;color:var(--color-ink-muted);font-weight:600}.section-title{font-size:var(--text-display-lg);letter-spacing:-.02em;color:var(--color-ink);margin-bottom:var(--space-md);font-weight:700;line-height:1.1}.section-desc{font-size:var(--text-body-lg);color:var(--color-ink-secondary);max-width:640px;line-height:1.7}.btn{justify-content:center;align-items:center;gap:var(--space-xs);font-size:var(--text-body);border-radius:var(--radius-pill);transition:all var(--transition-fast);white-space:nowrap;min-height:44px;padding:12px 28px;font-weight:500;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover{background:var(--color-primary-hover);color:var(--color-on-primary);transform:translateY(-1px);box-shadow:0 4px 12px #0066cc4d}.btn-secondary{color:var(--color-primary);border:1.5px solid var(--color-primary);background:0 0}.btn-secondary:hover{background:var(--color-primary);color:var(--color-on-primary)}.btn-dark{background:var(--color-surface-dark);color:var(--color-canvas)}.btn-dark:hover{background:#333336;transform:translateY(-1px)}.card{background:var(--color-canvas);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-card);transition:all var(--transition-base);border:1px solid var(--color-hairline-soft)}.card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.grid-2{gap:var(--space-lg);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:high){:root{--color-ink-muted:#424245;--color-ink-caption:#6e6e73;--color-hairline:#86868b}}@media (width<=1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){:root{--space-section:64px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.container{padding:0 var(--space-md)}}@media (width<=480px){:root{--space-section:48px}}.navbar[data-v-9fee3806]{z-index:1000;-webkit-backdrop-filter:saturate(180%)blur(20px);transition:all var(--transition-fast);height:var(--nav-height);background:#ffffffb8;border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}.navbar--scrolled[data-v-9fee3806]{border-bottom-color:var(--color-hairline-soft);background:#ffffffeb}.navbar__inner[data-v-9fee3806]{max-width:var(--max-width);padding:0 var(--space-lg);justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.navbar__logo[data-v-9fee3806]{align-items:center;gap:var(--space-xs);color:var(--color-primary);letter-spacing:-.02em;font-size:1.125rem;font-weight:700;text-decoration:none;display:flex}.navbar__logo-icon[data-v-9fee3806]{flex-shrink:0}.navbar__logo-text[data-v-9fee3806]{color:var(--color-ink)}.navbar__nav[data-v-9fee3806]{display:flex}.navbar__links[data-v-9fee3806]{gap:var(--space-xl);align-items:center;list-style:none;display:flex}.navbar__link[data-v-9fee3806]{font-size:var(--text-body-sm);color:var(--color-ink-secondary);transition:color var(--transition-fast);align-items:center;min-height:44px;padding:4px 0;font-weight:400;text-decoration:none;display:flex;position:relative}.navbar__link[data-v-9fee3806]:hover{color:var(--color-ink)}.navbar__link--active[data-v-9fee3806]{color:var(--color-ink);font-weight:500}.navbar__link--active[data-v-9fee3806]:after{content:"";background:var(--color-primary);border-radius:1px;height:2px;position:absolute;bottom:-2px;left:0;right:0}.navbar__hamburger[data-v-9fee3806]{flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:44px;min-height:44px;padding:10px;display:none}.navbar__hamburger-line[data-v-9fee3806]{background:var(--color-ink);width:20px;height:1.5px;transition:all var(--transition-fast);border-radius:1px;display:block}.navbar__hamburger-line--open[data-v-9fee3806]:first-child{transform:translateY(6.5px)rotate(45deg)}.navbar__hamburger-line--open[data-v-9fee3806]:nth-child(2){opacity:0}.navbar__hamburger-line--open[data-v-9fee3806]:last-child{transform:translateY(-6.5px)rotate(-45deg)}.navbar__mobile[data-v-9fee3806]{top:var(--nav-height);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--color-hairline-soft);padding:var(--space-lg);background:#fffffffa;position:absolute;left:0;right:0}.navbar__mobile-links[data-v-9fee3806]{gap:var(--space-xs);flex-direction:column;list-style:none;display:flex}.navbar__mobile-link[data-v-9fee3806]{padding:var(--space-sm) var(--space-md);font-size:var(--text-body-lg);color:var(--color-ink-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);align-items:center;min-height:44px;text-decoration:none;display:flex}.navbar__mobile-link[data-v-9fee3806]:hover{background:var(--color-canvas-parchment);color:var(--color-ink)}.navbar__mobile-link--active[data-v-9fee3806]{color:var(--color-primary);background:#0066cc0f;font-weight:600}.mobile-menu-enter-active[data-v-9fee3806],.mobile-menu-leave-active[data-v-9fee3806]{transition:all .3s}.mobile-menu-enter-from[data-v-9fee3806],.mobile-menu-leave-to[data-v-9fee3806]{opacity:0;transform:translateY(-8px)}@media (width<=768px){.navbar__nav[data-v-9fee3806]{display:none}.navbar__hamburger[data-v-9fee3806]{display:flex}}.footer[data-v-e2cae30c]{background:var(--color-canvas-parchment);padding:var(--space-3xl) 0 var(--space-xl);color:var(--color-ink-secondary);font-size:var(--text-body-sm)}.footer__grid[data-v-e2cae30c]{gap:var(--space-2xl);margin-bottom:var(--space-2xl);grid-template-columns:2fr 1fr 1fr 1fr;display:grid}.footer__brand[data-v-e2cae30c]{max-width:300px}.footer__logo[data-v-e2cae30c]{align-items:center;gap:var(--space-xs);font-weight:700;font-size:var(--text-body-lg);color:var(--color-primary);margin-bottom:var(--space-sm);display:flex}.footer__desc[data-v-e2cae30c]{color:var(--color-ink-muted);line-height:1.7}.footer__col-title[data-v-e2cae30c]{font-size:var(--text-body-sm);color:var(--color-ink);margin-bottom:var(--space-sm);font-weight:600}.footer__links[data-v-e2cae30c]{gap:var(--space-xs);flex-direction:column;list-style:none;display:flex}.footer__links a[data-v-e2cae30c]{color:var(--color-ink-muted);transition:color var(--transition-fast);align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.footer__links a[data-v-e2cae30c]:hover{color:var(--color-primary)}.footer__bottom[data-v-e2cae30c]{padding-top:var(--space-lg);border-top:1px solid var(--color-hairline-soft);color:var(--color-ink-caption);font-size:var(--text-caption);justify-content:space-between;align-items:center;display:flex}.footer__a11y[data-v-e2cae30c]{align-items:center;gap:var(--space-xxs);display:flex}@media (width<=768px){.footer__grid[data-v-e2cae30c]{gap:var(--space-xl);grid-template-columns:1fr 1fr}.footer__brand[data-v-e2cae30c]{grid-column:1/-1}.footer__bottom[data-v-e2cae30c]{gap:var(--space-xs);text-align:center;flex-direction:column}}@media (width<=480px){.footer__grid[data-v-e2cae30c]{grid-template-columns:1fr}}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .3s}.page-fade-enter-from,.page-fade-leave-to{opacity:0}
