:root{
--primary:#1D3FE0;--primary-hover:#1733B8;--accent:#0FA0D8;--ink:#15142E;--light:#FBFAF7;--paper:#FBFAF7;--white:#FFFFFF;--muted:#5E5A78;--soft:#625F78;
--peach:#FDE7D6;--peach-ink:#5A2E12;--lav:#ECE6FA;--lav-ink:#2E2163;--mint:#E2F2EA;--mint-ink:#1E4A33;--cream:#FBF1CC;--cream-ink:#4F3C00;
--hero-blue:#DCE6FF;--hero-peach:#FFE3CF;--hero-cream:#FBF1CC;--hero-orb-warm:#FFD3B8;--hero-orb-cool:#C9D6FF;
--on-dark:#FBFAF7;--muted-dark:#B9B6D6;--line:rgba(21,20,46,.14);--line-dark:rgba(255,255,255,.22);--input-line:#8C8AA0;--focus:#1D3FE0;
--sans:"Albert Sans",-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Hiragino Kaku Gothic ProN","Yu Gothic","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
--heading-font:var(--sans);--body-font:var(--sans);--mono:"SF Mono",ui-monospace,"JetBrains Mono",Menlo,Consolas,monospace;
--fs-1:4rem;--fs-2:2.75rem;--fs-3:1.35rem;--fs-4:1.125rem;--fs-5:1rem;--fs-6:.875rem;--fs-7:.75rem;
--lh-display:1.15;--lh-heading:1.3;--lh-body:1.6;--lh-code:1.75;
--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:2.5rem;--space-6:3.5rem;--space-7:4rem;--space-8:6rem;--space-9:8rem;
--field-gap:.5rem;--gutter:1.5rem;--space-close:2rem;--hero-pad:4rem;--hero-crumb-pad:3rem;--crumb-gap:1.5rem;
--r-xl:2.5rem;--r-lg:2rem;--r-md:1.25rem;--r-sm:.75rem;--radius-sm:.75rem;--pill:9999px;
--shadow:0 28px 56px -30px rgba(21,20,46,.28),0 2px 8px rgba(21,20,46,.05);--shadow-hover:0 28px 50px -24px rgba(46,33,99,.35);
--width-narrow:48rem;--width-standard:75rem;--width-wide:86rem;--header-height:4.25rem;--stage-height:35.375rem;
--motion-fast:180ms;--motion-ease:cubic-bezier(.2,.7,.3,1);--border-width:1px;--icon-stroke:1.8;--header-font:var(--fs-7);
}
*{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;text-size-adjust:100%;scroll-padding-top:calc(var(--header-height) + var(--space-3))}
body{margin:0;font-family:var(--body-font);font-size:var(--fs-5);line-height:var(--lh-body);color:var(--ink);background:var(--white)}
main{overflow-x:clip}
h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,figure,blockquote,pre{margin:0}
h1,h2,h3,h4,h5,h6{font-family:var(--heading-font);font-weight:800;overflow-wrap:break-word}
h1{font-size:var(--fs-1);line-height:var(--lh-display);letter-spacing:-.045em}
h2{font-size:var(--fs-2);line-height:var(--lh-display);letter-spacing:-.03em}
h3{font-size:var(--fs-3);line-height:var(--lh-heading);letter-spacing:-.02em}
h4{font-size:var(--fs-4);line-height:var(--lh-heading)}
h5{font-size:var(--fs-5);line-height:var(--lh-heading)}
h6{font-size:var(--fs-6);line-height:var(--lh-heading)}
p,li,blockquote,dt,dd,label{font-size:var(--fs-5);line-height:var(--lh-body)}
small,figcaption{font-size:var(--fs-7);line-height:var(--lh-body)}
th,td{font-size:var(--fs-6);line-height:var(--lh-body)}
code{font-family:var(--mono);font-size:var(--fs-6);line-height:var(--lh-code);font-variant-numeric:tabular-nums}
pre{position:relative;max-width:100%;overflow-x:auto;font-family:var(--mono);font-size:var(--fs-6);line-height:var(--lh-code);tab-size:2}
pre code{display:block;min-width:max-content}
:not(pre)>code{display:inline-block;max-width:100%;overflow-x:auto;vertical-align:middle}
a{color:inherit;text-decoration:none}
a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}
button,input,textarea,select{font:inherit;font-size:var(--fs-5);line-height:var(--lh-body)}
button{cursor:pointer}
button{border:0}
button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.6}
img,svg,video{display:block;max-width:100%}
img,video{height:auto}
svg{flex-shrink:0}
button svg,a svg{pointer-events:none}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
[hidden]{display:none!important}
::selection{background:var(--lav);color:var(--lav-ink)}
.wrap,.container,.container-narrow,.container-wide{width:min(calc(100% - var(--gutter)*2),var(--width-standard));margin-inline:auto}
.container-narrow{max-width:var(--width-narrow)}
.container-wide{max-width:var(--width-wide)}
.mono,.c-data{font-family:var(--mono);font-variant-numeric:tabular-nums}
.h2{font-size:var(--fs-2);font-weight:800;letter-spacing:-.03em;line-height:var(--lh-display)}
.lede{font-size:var(--fs-4);line-height:1.65;color:var(--muted);margin-top:var(--space-2);max-width:38.75rem}
.c-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:var(--space-3);align-items:stretch}
.c-grid>*{min-width:0}
.c-stack{display:flex;flex-direction:column;gap:var(--space-3)}
.c-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}
.c-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);align-items:stretch}
.c-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);align-items:stretch}
.c-grid-2>*,.c-grid-3>*{min-width:0}
.c-mt-1{margin-top:var(--space-1)}.c-mt-2{margin-top:var(--space-2)}.c-mt-3{margin-top:var(--space-3)}.c-mt-4{margin-top:var(--space-4)}.c-mt-6{margin-top:var(--space-6)}
.c-pad{padding:var(--space-4)}
.c-muted{color:var(--muted);font-size:var(--fs-6);line-height:var(--lh-body)}
.c-url{overflow-wrap:anywhere}
.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}
:where(.c-reading){font-size:var(--fs-5);line-height:var(--lh-body);max-width:var(--width-narrow)}
.c-reading h2,.c-reading h3{font-size:var(--fs-3);line-height:var(--lh-heading);margin-block:var(--space-5) var(--space-2)}
.c-reading p,.c-reading ul,.c-reading ol,.c-reading pre,.c-reading .table-scroll{margin-block:var(--space-2)}
.c-reading li{font-size:var(--fs-5);line-height:var(--lh-body)}
.c-reading .c-faq{padding-inline:var(--space-3)}
.reveal{opacity:1;transform:none}
.reveal.is-pending{opacity:0;transform:translateY(18px);transition:opacity 600ms var(--motion-ease),transform 600ms var(--motion-ease)}
.reveal.reveal-left.is-pending{transform:translateX(-18px)}
.reveal.reveal-right.is-pending{transform:translateX(18px)}
.reveal.is-visible{opacity:1;transform:none}
@media(max-width:64rem){
:root{--gutter:1.5rem;--fs-1:3.25rem;--fs-2:2.25rem}
.c-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:42rem){
:root{--gutter:1rem;--fs-1:2.75rem;--fs-2:2rem;--space-9:4rem;--space-8:3.5rem;--hero-pad:3rem}
.c-grid-2,.c-grid-3{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.reveal.is-pending{opacity:1;transform:none}
}
