:root{
  --zm-yellow:#f7ff00;
  --zm-yellow-paper:#d7de00;
  --zm-amber:#ffb000;
  --zm-ink:#111114;
  --zm-ink-2:#252528;
  --zm-muted:#626266;
  --zm-muted-light:#a6a6ac;
  --zm-line:#dededa;
  --zm-line-dark:#38383d;
  --zm-paper:#fafaf7;
  --zm-soft:#f3f3ef;
  --zm-surface:#fff;
  --zm-danger:#a52618;
  --zm-success:#697000;
  --zm-font-heading:"Chivo",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --zm-font-body:"Albert Sans",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --zm-font-mono:"SFMono-Regular","Cascadia Code",Consolas,"Liberation Mono",Menlo,monospace;
  --zm-fs-0:.75rem;
  --zm-fs-1:.875rem;
  --zm-fs-2:1rem;
  --zm-fs-3:1.125rem;
  --zm-fs-4:1.375rem;
  --zm-fs-5:clamp(1.8rem,3vw,3.25rem);
  --zm-fs-6:clamp(3rem,6vw,4.25rem);
  --zm-lh-tight:.94;
  --zm-lh-heading:1.08;
  --zm-lh-body:1.6;
  --zm-lh-small:1.45;
  --zm-space-1:.5rem;
  --zm-space-2:1rem;
  --zm-space-3:1.5rem;
  --zm-space-4:2.5rem;
  --zm-space-5:4rem;
  --zm-space-6:6rem;
  --zm-space-7:8rem;
  --zm-radius-sm:.5rem;
  --zm-radius-md:.875rem;
  --zm-radius-lg:1.125rem;
  --zm-radius-pill:999px;
  --zm-shadow:4px 4px 0 rgba(17,17,20,.08);
  --zm-container-narrow:48rem;
  --zm-container:76rem;
  --zm-container-wide:84rem;
  --zm-gutter:clamp(1rem,4vw,2rem);
  --zm-control-border:#aaa9a4;
  --zm-ease:cubic-bezier(.2,.8,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--zm-surface);color:var(--zm-ink);font-family:var(--zm-font-body);font-size:var(--zm-fs-2);line-height:var(--zm-lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
main{overflow-x:clip}
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}
h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--zm-font-heading);font-weight:800;letter-spacing:-.035em;color:inherit}
h1{font-size:var(--zm-fs-6);line-height:var(--zm-lh-tight)}
h2{font-size:var(--zm-fs-5);line-height:var(--zm-lh-heading)}
h3{font-size:var(--zm-fs-4);line-height:1.18}
h4{font-size:var(--zm-fs-3);line-height:1.25}
h5{font-size:var(--zm-fs-2);line-height:1.3}
h6{font-size:var(--zm-fs-1);line-height:1.35}
p{margin:0;font-size:var(--zm-fs-2);line-height:var(--zm-lh-body)}
ul,ol{font-size:var(--zm-fs-2);line-height:var(--zm-lh-body)}
li{font-size:var(--zm-fs-2);line-height:var(--zm-lh-body)}
small{font-size:var(--zm-fs-0);line-height:var(--zm-lh-small)}
figcaption{font-size:var(--zm-fs-1);line-height:var(--zm-lh-small)}
blockquote{margin:0;font-size:var(--zm-fs-3);line-height:1.5}
code,pre,kbd,samp{font-family:var(--zm-font-mono);font-size:var(--zm-fs-1);line-height:1.65;font-variant-numeric:tabular-nums}
th{font-size:var(--zm-fs-1);line-height:1.4}
td{font-size:var(--zm-fs-1);line-height:1.5}
dt{font-size:var(--zm-fs-1);line-height:1.4;font-weight:700}
dd{margin:0;font-size:var(--zm-fs-1);line-height:1.5}
label{font-size:var(--zm-fs-1);line-height:1.4}
::selection{background:var(--zm-yellow);color:var(--zm-ink)}
:focus-visible{outline:3px solid var(--zm-amber);outline-offset:3px}
.zm-container,.zm-container-wide,.zm-container-narrow{width:min(100% - 2 * var(--zm-gutter),var(--zm-container));margin-inline:auto}
.zm-container-wide{max-width:var(--zm-container-wide)}
.zm-container-narrow{max-width:var(--zm-container-narrow)}
.zm-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--zm-space-3)}
.zm-grid>*{min-width:0}
.zm-grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:var(--zm-space-3);align-items:start}
.zm-stack{display:flex;flex-direction:column;gap:var(--zm-space-2)}
.zm-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--zm-space-1)}
.zm-mono{font-family:var(--zm-font-mono);font-variant-numeric:tabular-nums}
.zm-muted{color:var(--zm-muted)}
.zm-center{text-align:center}
.zm-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}
.zm-mt-1{margin-top:var(--zm-space-1)}
.zm-mt-2{margin-top:var(--zm-space-2)}
.zm-mt-3{margin-top:var(--zm-space-3)}
.zm-mt-4{margin-top:var(--zm-space-4)}
.zm-mt-5{margin-top:var(--zm-space-5)}
.zm-mb-2{margin-bottom:var(--zm-space-2)}
.zm-mb-3{margin-bottom:var(--zm-space-3)}
.zm-py-5{padding-block:var(--zm-space-5)}
.zm-py-6{padding-block:var(--zm-space-6)}
.reveal,.reveal-left,.reveal-right{opacity:0;transform:translateY(18px);transition:opacity .5s var(--zm-ease),transform .5s var(--zm-ease)}
.reveal-left{transform:translateX(-18px)}
.reveal-right{transform:translateX(18px)}
.reveal.is-visible,.reveal-left.is-visible,.reveal-right.is-visible{opacity:1;transform:none}
@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,.reveal-right{opacity:1;transform:none}
}
@media(max-width:48rem){
  :root{--zm-space-6:4.5rem;--zm-space-7:5.5rem}
  .zm-grid{grid-template-columns:1fr}
}
