@keyframes sc-shine { 
  0% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
.scp0:hover { color: rgb(0, 28, 117) !important; }
.scp1:hover { background: rgb(0, 19, 90) !important; color: rgb(255, 255, 255) !important; }
.scp2:hover { background: rgb(0, 19, 90) !important; color: rgb(255, 255, 255) !important; transform: translateY(-1px) !important; }
.scp3:hover { color: rgb(0, 28, 117) !important; border-color: rgb(0, 28, 117) !important; }
.scp4:hover { background: rgb(0, 28, 117) !important; border-color: rgb(0, 28, 117) !important; color: rgb(255, 255, 255) !important; transform: scale(1.06) !important; }
.scp5:hover { transform: translateY(-8px) !important; box-shadow: rgba(0, 28, 117, 0.12) 0px 26px 50px, rgb(0, 28, 117) 0px 3px 0px inset !important; border-color: rgb(210, 217, 238) !important; background: rgb(250, 251, 253) !important; }
.scp6:hover { transform: scale(1.12) rotate(-6deg) !important; background: rgb(210, 217, 238) !important; }
.scp7:hover { transform: scale(1.05) !important; filter: saturate(1) contrast(1.04) brightness(1.05) !important; }
.scp8:hover { color: rgb(0, 28, 117) !important; transform: translateY(-1px) !important; }
.scp9:hover { padding-left: 8px !important; }
html, body { height: 100%; margin: 0px; }
:root { --blue-50: #EAEFFF; --blue-100: #D6E0FF; --blue-200: #ADC2FF; --blue-300: #7A98FF; --blue-400: #3D63FF; --blue-500: #0030FF; --blue-600: #0026D6; --blue-700: #001FAD; --blue-800: #00197F; --blue-900: #0A1224; --ink-900: #0A1224; --ink-800: #161E30; --ink-700: #2A3346; --ink-600: #424B60; --ink-500: #5A6478; --ink-400: #7E879B; --ink-300: #9AA3B5; --ink-200: #D4DBE8; --ink-100: #E6EAF2; --ink-50: #F2F5FB; --white: #FFFFFF; --canvas: #F4F6FB; --surface: #FFFFFF; --surface-2: #F7F9FC; --surface-blue: #EAEFFF; --azure-50: #E2F2FF; --azure-100: #C2E4FF; --azure-200: #8FCCFF; --azure-300: #54AEFF; --azure-400: #1F95FF; --azure-500: #0094FF; --azure-600: #0077DB; --azure-700: #005CAD; --corn-100: #DDE6FF; --corn-300: #93ABFF; --corn-500: #4D7CFF; --corn-700: #2C53D6; --success-500: #0094FF; --success-100: #DCEEFF; --success-700: #005CAD; --warning-500: #4D7CFF; --warning-100: #E1E9FF; --warning-700: #2C53D6; --danger-500: #E5364E; --danger-100: #FCE2E6; --danger-700: #B11D33; --info-500: var(--blue-500); --info-100: var(--blue-50); --text-strong: var(--ink-900); --text-body: var(--ink-700); --text-muted: var(--ink-500); --text-subtle: var(--ink-300); --text-on-brand: #FFFFFF; --text-link: var(--blue-500); --bg-app: var(--canvas); --surface-card: var(--surface); --surface-inset: var(--surface-2); --surface-accent: var(--surface-blue); --border-subtle: var(--ink-100); --border-strong: var(--ink-200); --border-focus: var(--blue-500); --brand: var(--blue-500); --brand-hover: var(--blue-600); --brand-press: var(--blue-700); --brand-tint: var(--blue-50); --focus-ring: rgba(0, 48, 255, 0.16); --positive: var(--azure-500); --positive-bg: var(--azure-50); --active: var(--blue-500); --neutral: var(--ink-500); --negative: var(--danger-500); }
:root { --font-display: 'Sora', system-ui, -apple-system, sans-serif; --font-sans: 'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif; --font-mono: 'JetBrains Mono', ui-monospace, 'SF Mono', monospace; --text-2xs: 0.6875rem; --text-xs: 0.75rem; --text-sm: 0.8125rem; --text-md: 0.875rem; --text-lg: 1rem; --text-xl: 1.1875rem; --text-2xl: 1.4375rem; --text-3xl: 1.75rem; --text-4xl: 2.25rem; --text-5xl: 3rem; --fw-regular: 400; --fw-medium: 500; --fw-semibold: 600; --fw-bold: 700; --fw-extra: 800; --lh-tight: 1.1; --lh-snug: 1.3; --lh-normal: 1.5; --lh-relaxed: 1.65; --ls-tighter: -0.03em; --ls-tight: -0.02em; --ls-snug: -0.01em; --ls-normal: 0; --ls-wide: 0.06em; --ls-wider: 0.08em; --eyebrow-size: var(--text-2xs); --eyebrow-spacing: var(--ls-wider); }
:root { --space-0: 0; --space-1: 0.25rem; --space-2: 0.5rem; --space-3: 0.75rem; --space-4: 1rem; --space-5: 1.25rem; --space-6: 1.5rem; --space-7: 2rem; --space-8: 2.5rem; --space-9: 3rem; --space-10: 4rem; --sidebar-w: 248px; --content-max: 1500px; --page-pad: 2rem; --page-pad-sm: 1.25rem; --control-h-sm: 32px; --control-h-md: 40px; --control-h-lg: 48px; --tap-min: 44px; }
:root { --radius-xs: 6px; --radius-sm: 9px; --radius-md: 11px; --radius-lg: 13px; --radius-xl: 18px; --radius-pill: 999px; --shadow-xs: 0 1px 2px rgba(10, 18, 36, 0.05); --shadow-sm: 0 2px 10px rgba(28, 45, 80, 0.06); --shadow-md: 0 10px 30px rgba(28, 45, 80, 0.08); --shadow-lg: 0 20px 48px rgba(28, 45, 80, 0.12); --shadow-brand: 0 6px 18px rgba(0, 48, 255, 0.26); --shadow-brand-sm: 0 2px 8px rgba(0, 48, 255, 0.22); --shadow-inset: inset 0 1px 2px rgba(10, 18, 36, 0.04); --ring: 0 0 0 3px var(--focus-ring); --ease-out: cubic-bezier(0.22, 1, 0.36, 1); --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1); --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1); --dur-fast: 0.15s; --dur-base: 0.22s; --dur-slow: 0.4s; --blur-sm: 8px; --blur-md: 16px; }
*, ::before, ::after { box-sizing: border-box; }
* { margin: 0px; padding: 0px; }
html { text-size-adjust: 100%; }
body { font-family: var(--font-sans); font-size: var(--text-md); line-height: var(--lh-normal); letter-spacing: var(--ls-snug); color: var(--text-body); background: var(--bg-app); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5 { font-family: var(--font-display); color: var(--text-strong); letter-spacing: var(--ls-tight); line-height: var(--lh-tight); font-weight: var(--fw-bold); }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font-family: inherit; font-size: inherit; }
code, kbd, samp { font-family: var(--font-mono); }
::selection { background: var(--blue-200); color: var(--ink-900); }
* { scrollbar-width: thin; scrollbar-color: var(--ink-200) transparent; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: var(--ink-200); border-radius: 99px; }
::-webkit-scrollbar-thumb:hover { background: var(--ink-300); }
@keyframes sne-fade-up { 
  0% { opacity: 0; transform: translateY(8px); }
  100% { opacity: 1; transform: translateY(0px); }
}
@keyframes sne-fade-in { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes sne-slide-in { 
  0% { opacity: 0; transform: translateX(-10px); }
  100% { opacity: 1; transform: translateX(0px); }
}
@keyframes sne-pop-in { 
  0% { opacity: 0; transform: scale(0.92); }
  100% { opacity: 1; transform: scale(1); }
}
@keyframes sne-shimmer { 
  0% { background-position: -200% 0px; }
  100% { background-position: 200% 0px; }
}
@keyframes sne-spin { 
  100% { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
  *, ::before, ::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; }
}
body { margin: 0px; background: rgb(246, 247, 250); }
a { color: rgb(0, 28, 117); text-decoration: none; }
a:hover { color: rgb(0, 19, 90); }
html { scroll-behavior: smooth; }
@keyframes pt-word-in { 
  0% { opacity: 0; transform: translateY(0.55em); filter: blur(6px); }
  100% { opacity: 1; transform: translateY(0px); filter: blur(0px); }
}
@keyframes pt-fade-up { 
  0% { opacity: 0; transform: translateY(28px); }
  100% { opacity: 1; transform: none; }
}
@keyframes pt-label-in { 
  0% { opacity: 0; clip-path: inset(0px 100% 0px 0px); }
  100% { opacity: 1; clip-path: inset(0px); }
}
@keyframes pt-underline { 
  0% { transform: scaleX(0); }
  100% { transform: scaleX(1); }
}
@keyframes pt-float { 
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-14px); }
}
@media (prefers-reduced-motion: reduce) {
  *, ::before, ::after { animation: auto ease 0s 1 normal none running none !important; transition: none !important; }
}