:root{
  --n-primary:#3426D3;
  --n-primary-hover:#2B20B5;
  --n-accent:#7258E8;
  --n-dark:#241F2D;
  --n-light:#FFFDFC;
  --n-white:#FFFFFF;
  --n-surface:#F3F1EA;
  --n-surface-2:#EAE7DD;
  --n-indigo-soft:#E8E4FF;
  --n-indigo-pale:#F2F0FF;
  --n-ink:#241F2D;
  --n-muted:#625C68;
  --n-muted-light:#9C96A1;
  --n-success:#247653;
  --n-danger:#A53D4C;
  --n-paper-line:color-mix(in srgb,var(--n-ink) 13%,transparent);
  --n-dark-line:rgba(255,255,255,.14);
  --n-input-line:color-mix(in srgb,var(--n-ink) 32%,var(--n-white));
  --n-heading:"Outfit",-apple-system,"PingFang SC","PingFang TC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Yu Gothic","Apple SD Gothic Neo","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --n-body:"Albert Sans",-apple-system,"PingFang SC","PingFang TC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Yu Gothic","Apple SD Gothic Neo","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --n-mono:"SFMono-Regular","Cascadia Code",Consolas,"Liberation Mono",Menlo,monospace;
  --n-fs-0:.75rem;
  --n-fs-1:.875rem;
  --n-fs-2:1rem;
  --n-fs-3:1.125rem;
  --n-fs-4:1.375rem;
  --n-fs-5:clamp(1.75rem,3vw,2.75rem);
  --n-fs-6:clamp(2.5rem,5vw,4.25rem);
  --n-lh-tight:1.15;
  --n-lh-heading:1.22;
  --n-lh-body:1.65;
  --n-space-1:.5rem;
  --n-space-2:1rem;
  --n-space-3:1.5rem;
  --n-space-4:2.5rem;
  --n-space-5:4rem;
  --n-space-6:6rem;
  --n-space-7:8rem;
  --n-radius-sm:.75rem;
  --n-radius-md:1.25rem;
  --n-radius-lg:2rem;
  --n-shadow-sm:0 14px 34px rgba(36,31,45,.08);
  --n-shadow-lg:0 28px 70px rgba(52,38,211,.12),0 5px 18px rgba(36,31,45,.07);
  --n-container-narrow:46rem;
  --n-container:77.5rem;
  --n-container-wide:90rem;
  --n-gutter:clamp(1rem,4vw,2.5rem);
  --n-header-h:4.75rem;
  --n-ease:cubic-bezier(.2,.75,.25,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto;background:var(--n-light);color-scheme:light}
body{margin:0;color:var(--n-ink);background:var(--n-light);font-family:var(--n-body);font-size:var(--n-fs-2);line-height:var(--n-lh-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
main{overflow-x:clip}
header,main,footer,section,article,aside,nav,figure{display:block}
img,svg,video{display:block;max-width:100%}
img{height:auto}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
ul,ol{margin-block:0;padding-inline-start:1.25rem}
h1,h2,h3,h4,h5,h6{margin:0;color:inherit;font-family:var(--n-heading);font-weight:600;overflow-wrap:anywhere}
h1{font-size:var(--n-fs-6);line-height:var(--n-lh-tight);letter-spacing:-.035em}
h2{font-size:var(--n-fs-5);line-height:var(--n-lh-heading);letter-spacing:-.025em}
h3{font-size:var(--n-fs-4);line-height:var(--n-lh-heading);letter-spacing:-.015em}
h4{font-size:var(--n-fs-3);line-height:var(--n-lh-heading)}
h5{font-size:var(--n-fs-2);line-height:var(--n-lh-heading)}
h6{font-size:var(--n-fs-1);line-height:var(--n-lh-heading)}
p{margin:0;font-size:var(--n-fs-2);line-height:var(--n-lh-body)}
li{font-size:var(--n-fs-2);line-height:var(--n-lh-body)}
small{font-size:var(--n-fs-0);line-height:1.5}
figcaption{font-size:var(--n-fs-1);line-height:1.55}
blockquote{margin:0;font-size:var(--n-fs-4);line-height:1.45}
code,pre{font-family:var(--n-mono);font-size:var(--n-fs-1);line-height:1.7;font-variant-numeric:tabular-nums}
pre{max-width:100%;overflow-x:auto;margin:0}
th{font-size:var(--n-fs-1);line-height:1.45}
td{font-size:var(--n-fs-1);line-height:1.55}
dt{font-size:var(--n-fs-1);line-height:1.45;font-weight:700}
dd{margin:0;font-size:var(--n-fs-1);line-height:1.55}
label{font-size:var(--n-fs-1);line-height:1.45}
strong{font-weight:700}
:focus-visible{outline:3px solid color-mix(in srgb,var(--n-accent) 48%,transparent);outline-offset:3px}
::selection{color:var(--n-white);background:var(--n-primary)}
.n-container,.n-container-wide,.n-container-narrow{width:min(100% - (var(--n-gutter) * 2),var(--n-container));margin-inline:auto}
.n-container-wide{max-width:var(--n-container-wide)}
.n-container-narrow{max-width:var(--n-container-narrow)}
.n-grid{display:grid;gap:var(--n-space-3);min-width:0}
.n-grid>*{min-width:0}
.n-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.n-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.n-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.n-stack>*+*{margin-top:var(--n-space-3)}
.n-mono{font-family:var(--n-mono);font-variant-numeric:tabular-nums}
.n-muted{color:var(--n-muted)}
.n-center{text-align:center}
.n-kicker{display:flex;align-items:center;gap:.65rem;width:fit-content;margin:0 0 var(--n-space-2);color:var(--n-primary);font-family:var(--n-body);font-size:var(--n-fs-0);font-weight:750;line-height:1.4;letter-spacing:.1em;text-transform:uppercase}
.n-kicker::before{content:"";width:1.7rem;height:2px;border-radius:2px;background:currentColor}
.n-center .n-kicker{margin-inline:auto}
.n-lead{max-width:42rem;margin-top:var(--n-space-3);color:var(--n-muted);font-size:var(--n-fs-3);line-height:1.7}
.n-center .n-lead{margin-inline:auto}
.n-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.mt-1{margin-top:var(--n-space-1)}
.mt-2{margin-top:var(--n-space-2)}
.mt-3{margin-top:var(--n-space-3)}
.mt-4{margin-top:var(--n-space-4)}
.mt-5{margin-top:var(--n-space-5)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s var(--n-ease),transform .65s var(--n-ease)}
.reveal-left{opacity:0;transform:translateX(-22px);transition:opacity .65s var(--n-ease),transform .65s var(--n-ease)}
.reveal.is-visible,.reveal-left.is-visible{opacity:1;transform:none}
@media(max-width:64rem){
  .n-grid-3,.n-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:42rem){
  :root{--n-space-6:4.5rem;--n-space-7:5.5rem}
  .n-grid-2,.n-grid-3,.n-grid-4{grid-template-columns:1fr}
  .n-lead{font-size:var(--n-fs-2)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal,.reveal-left{opacity:1;transform:none}
}
