:root{
  --primary:#362782;
  --accent:#8373BA;
  --ink:#20232A;
  --muted:#59636D;
  --paper:#ffffff;
  --surface:#FEFEFD;
  --night:#161B25;
  --night-card:#202733;
  --night-ink:#F9FAFB;
  --night-muted:#ABB3C0;
  --line:#E7E9EC;
  --line-dark:#343C4A;
  --rose:#F8ECE9;
  --rose-ink:#423235;
  --sage:#ECF3ED;
  --sage-ink:#233E35;
  --blue:#EAF1F5;
  --blue-ink:#233A4C;
  --sand:#F7F1E3;
  --sand-ink:#423B25;
  --space-1:.5rem;
  --space-2:1rem;
  --space-3:1.5rem;
  --space-4:2.5rem;
  --space-5:4rem;
  --space-6:6rem;
  --gutter:clamp(1rem,4vw,2rem);
  --radius-sm:.5rem;
  --radius-md:.875rem;
  --radius-lg:1.625rem;
  --shadow:0 8px 20px #20232A0D;
  --text-xs:.6875rem;
  --text-sm:.8125rem;
  --text-base:.9375rem;
  --text-lg:1.125rem;
  --text-card:1.25rem;
  --text-section:clamp(1.65rem,3vw,1.875rem);
  --text-display:clamp(2.25rem,4vw,3rem);
  --leading-tight:1.2;
  --leading-normal:1.6;
  --leading-relaxed:1.75;
  --hero-pad:4.5rem;
  --hero-crumb-pad:3rem;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Apple SD Gothic Neo","Malgun Gothic","Microsoft YaHei",sans-serif;font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased}
main{overflow-x:clip}
img,svg{max-width:100%}
img{display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4,h5,h6{font-family:"Albert Sans","Outfit",-apple-system,"PingFang SC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Apple SD Gothic Neo","Malgun Gothic","Microsoft YaHei",sans-serif;letter-spacing:-.035em;line-height:var(--leading-tight);overflow-wrap:break-word}
h1{font-size:var(--text-display);font-weight:750;margin:0 0 var(--space-3)}
h2{font-size:var(--text-section);font-weight:750;margin:0 0 var(--space-2)}
h3{font-size:var(--text-card);font-weight:700;margin:0 0 var(--space-1)}
h4{font-size:var(--text-lg);font-weight:700;margin:0 0 var(--space-1)}
h5,h6{font-size:var(--text-base);font-weight:700;margin:0 0 var(--space-1)}
p{font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0 0 var(--space-2)}
li{font-size:var(--text-base);line-height:var(--leading-normal)}
small{font-size:var(--text-xs);line-height:var(--leading-normal)}
figcaption{font-size:var(--text-sm);line-height:var(--leading-normal)}
blockquote{font-size:var(--text-lg);line-height:var(--leading-normal);margin:var(--space-3) 0}
code{font-size:var(--text-sm);line-height:var(--leading-normal);font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
th,td{font-size:var(--text-sm);line-height:var(--leading-normal)}
dt,dd,label{font-size:var(--text-sm);line-height:var(--leading-normal)}
dd{margin-inline-start:0}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
[hidden]{display:none!important}
.container-wide,.wrap{width:min(100% - 2*var(--gutter),1248px);margin-inline:auto}
.container{width:min(100% - 2*var(--gutter),1100px);margin-inline:auto}
.container-narrow{width:min(100% - 2*var(--gutter),760px);margin-inline:auto}
.grid-2,.grid-3,.grid-5{display:grid;align-items:stretch;gap:var(--space-2)}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.grid-2>*,.grid-3>*,.grid-5>*{min-width:0}
.mono{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;font-variant-numeric:tabular-nums;letter-spacing:-.025em}
.muted{color:var(--muted)}
.mt-1{margin-top:var(--space-1)}
.mt-2{margin-top:var(--space-2)}
.mt-3{margin-top:var(--space-3)}
.mt-4{margin-top:var(--space-4)}
.mb-0{margin-bottom:0}
.mb-2{margin-bottom:var(--space-2)}
.text-center{text-align:center}
.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}
.surface-rose{background:var(--rose);color:var(--rose-ink)}
.surface-sage{background:var(--sage);color:var(--sage-ink)}
.surface-blue{background:var(--blue);color:var(--blue-ink)}
.surface-sand{background:var(--sand);color:var(--sand-ink)}
.surface-night{background:var(--night);color:var(--night-ink)}
.surface-rose p,.surface-sage p,.surface-blue p,.surface-sand p{color:inherit;opacity:.83}
.surface-night p{color:var(--night-muted)}
pre{max-width:100%;overflow-x:auto;padding:var(--space-3);border-radius:var(--radius-sm);background:#F5F6F7;color:var(--ink)}
pre code{white-space:pre}
@media(max-width:64rem){.grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:42rem){.grid-2,.grid-3,.grid-5{grid-template-columns:minmax(0,1fr)}
:root{--hero-pad:2.5rem;--hero-crumb-pad:3rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}
*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
