:root{--brand-50:#f2f3fd;--brand-100:#e5e7fb;--brand-200:#ccd0f6;--brand-300:#adb4ee;--brand-400:#8b93e5;--brand-500:#6978de;--brand-600:#4d59cd;--brand-700:#3e46ac;--brand-800:#34398a;--brand-900:#2f346e;--brand-950:#1d2044;--act-50:#eff7f7;--act-100:#d8ecec;--act-300:#6cb1b3;--act-400:#479a9c;--act-500:#308587;--act-600:#237274;--act-700:#1e585a;--mint:#b7dbc5;--mint-strong:#6fbf95;--lavender:#b69ae3;--lavender-strong:#9670d4;--cat-1:#6978de;--cat-2:#2f8f91;--cat-3:#5aa87f;--cat-4:#9670d4;--cat-5:#5b93cf;--cat-6:#c98bbf;--n-0:#fff;--n-25:#fcfcfe;--n-50:#f8f8fc;--n-100:#f1f2f8;--n-200:#e4e5ee;--n-300:#cdcede;--n-400:#9698ad;--n-500:#676a82;--n-600:#4a4d63;--n-700:#353749;--n-800:#21222f;--n-900:#131420;--n-950:#080810;--ok-500:#2fa373;--ok-bg:#eaf6ef;--warn-500:#e0a010;--warn-bg:#fdf6e6;--err-500:#e14b4b;--err-bg:#fdeeee;--bg:var(--n-0);--bg-subtle:var(--n-50);--bg-raised:var(--n-0);--bg-inset:var(--n-100);--text:var(--n-900);--text-muted:var(--n-600);--text-faint:var(--n-500);--border:var(--n-200);--border-strong:var(--n-300);--accent:var(--brand-600);--accent-hover:var(--brand-700);--accent-text:#fff;--accent-subtle:var(--brand-50);--ring:var(--brand-500);--action:var(--act-600);--action-hover:var(--act-700);--action-text:#fff;--font-sans:var(--font-inter), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace;--t-xs:.75rem;--t-sm:.875rem;--t-base:1rem;--t-lg:1.125rem;--t-xl:clamp(1.25rem, .5vw + 1.1rem, 1.375rem);--t-2xl:clamp(1.5rem, 1vw + 1.25rem, 1.875rem);--t-3xl:clamp(1.875rem, 2vw + 1.4rem, 2.5rem);--t-4xl:clamp(2.25rem, 3.5vw + 1.4rem, 3.5rem);--t-5xl:clamp(2.75rem, 5vw + 1.5rem, 4.5rem);--lh-tight:1.08;--lh-snug:1.25;--lh-normal:1.6;--lh-relaxed:1.75;--tr-tight:-.03em;--tr-snug:-.015em;--tr-wide:.06em;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.25rem;--s-6:1.5rem;--s-8:2rem;--s-10:2.5rem;--s-12:3rem;--s-16:4rem;--s-20:5rem;--s-24:6rem;--s-32:8rem;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-2xl:28px;--r-full:999px;--sh-xs:0 1px 2px #0f172a0a;--sh-sm:0 1px 3px #0f172a0f, 0 1px 2px #0f172a0a;--sh-md:0 4px 12px #0f172a0f, 0 2px 4px #0f172a0a;--sh-lg:0 12px 32px #0f172a17, 0 4px 8px #0f172a0a;--sh-xl:0 24px 64px #0f172a1f, 0 8px 16px #0f172a0d;--container:1200px;--container-narrow:760px;--ease:cubic-bezier(.16, 1, .3, 1);--dur-fast:.14s;--dur:.24s;--dur-slow:.42s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-sans);font-size:var(--t-base);line-height:var(--lh-normal);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02", "cv03", "cv04", "cv11";transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease)}h1,h2,h3,h4{letter-spacing:var(--tr-tight);font-weight:600;line-height:var(--lh-tight);text-wrap:balance}p{text-wrap:pretty}img,svg,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:var(--accent-subtle);color:var(--text)}.container{width:100%;max-width:var(--container);padding-inline:var(--s-6);margin-inline:auto}@media (max-width:640px){.container{padding-inline:var(--s-4)}}.container-narrow{max-width:var(--container-narrow)}.section{padding-block:var(--s-24)}@media (max-width:768px){.section{padding-block:var(--s-16)}}.scroll-x{-webkit-overflow-scrolling:touch;overflow-x:auto}.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}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.rise{animation:rise var(--dur-slow) var(--ease) both;animation-delay:var(--delay,0s)}
