:root{
  --am-ink:#171a24;
  --am-ink-soft:#30323b;
  --am-muted:#5b5a62;
  --am-paper:#faf9f7;
  --am-surface:#ffffff;
  --am-primary:#243d8f;
  --am-primary-deep:#1d3278;
  --am-accent:#006b8f;
  --am-dark:#191c27;
  --am-plum:#f2eaf4;
  --am-plum-ink:#2b2030;
  --am-peach:#f7e9e1;
  --am-peach-ink:#34221d;
  --am-mint:#e8f1ec;
  --am-mint-ink:#173128;
  --am-sand:#f2edd8;
  --am-sand-ink:#302a17;
  --am-grey:#efefed;
  --am-line:color-mix(in srgb,var(--am-ink) 12%,transparent);
  --am-line-dark:rgba(255,255,255,.12);
  --am-control-line:#a7a8af;
  --am-font-heading:"Outfit","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --am-font-body:"Outfit",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --am-font-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --am-text-xs:.75rem;
  --am-text-sm:.875rem;
  --am-text-md:1rem;
  --am-text-lg:1.125rem;
  --am-text-xl:1.25rem;
  --am-text-2xl:1.5rem;
  --am-text-display:clamp(3rem,5.2vw,4.25rem);
  --am-leading-tight:1.16;
  --am-leading-copy:1.65;
  --am-space-1:.5rem;
  --am-space-2:1rem;
  --am-space-3:1.5rem;
  --am-space-4:2rem;
  --am-space-5:2.5rem;
  --am-space-6:4rem;
  --am-space-7:6rem;
  --am-space-8:8rem;
  --am-gutter:clamp(1rem,3vw,2.5rem);
  --am-radius-sm:.75rem;
  --am-radius-md:1.25rem;
  --am-radius-lg:1.875rem;
  --am-radius-pill:999px;
  --am-shadow:0 24px 70px rgba(45,38,54,.12);
  --am-container-narrow:46rem;
  --am-container:76.25rem;
  --am-container-wide:88rem;
  --am-header-height:5rem;
  --am-section-space:clamp(5rem,9vw,8rem);
  --am-hero-pad:clamp(4.5rem,8vw,7rem);
  --am-hero-crumb-pad:3rem;
  --am-ease:cubic-bezier(.2,.75,.25,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--am-paper);color:var(--am-ink);font-family:var(--am-font-body);font-size:var(--am-text-md);line-height:var(--am-leading-copy);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
main{overflow-x:clip}
img,svg,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
h1,h2,h3,h4,h5,h6,p,blockquote,figure,dl,dd{margin:0}
ul,ol{margin:0;padding:0}
h1{font-family:var(--am-font-heading);font-size:var(--am-text-display);font-weight:500;letter-spacing:-.035em;line-height:var(--am-leading-tight)}
h2{font-family:var(--am-font-heading);font-size:clamp(2.25rem,4vw,3.2rem);font-weight:500;letter-spacing:-.028em;line-height:1.17}
h3{font-size:var(--am-text-xl);font-weight:650;letter-spacing:-.015em;line-height:1.3}
h4{font-size:var(--am-text-lg);font-weight:650;line-height:1.35}
h5{font-size:var(--am-text-md);font-weight:650;line-height:1.4}
h6{font-size:var(--am-text-sm);font-weight:700;line-height:1.4}
p,li,dt,dd,label{font-size:var(--am-text-md);line-height:var(--am-leading-copy)}
small,figcaption{font-size:var(--am-text-xs);line-height:1.55}
blockquote{font-family:var(--am-font-heading);font-size:var(--am-text-2xl);line-height:1.5}
code,pre{font-family:var(--am-font-mono);font-size:var(--am-text-sm);font-variant-numeric:tabular-nums}
th,td{font-size:var(--am-text-sm);line-height:1.5}
th{font-weight:650}
strong{font-weight:650}
:focus-visible{outline:3px solid color-mix(in srgb,var(--am-primary) 42%,transparent);outline-offset:3px}
::selection{background:var(--am-sand);color:var(--am-sand-ink)}
.am-container,.am-container-wide,.am-container-narrow{width:min(100% - var(--am-gutter)*2,var(--am-container));margin-inline:auto}
.am-container-wide{max-width:var(--am-container-wide)}
.am-container-narrow{max-width:var(--am-container-narrow)}
.am-grid{display:grid;gap:var(--am-space-3)}
.am-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.am-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.am-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.am-stack{display:flex;flex-direction:column;gap:var(--am-space-3)}
.am-cluster{display:flex;align-items:center;flex-wrap:wrap;gap:var(--am-space-2)}
.am-section{padding-block:var(--am-section-space)}
.am-section-tight{padding-block:clamp(4rem,7vw,6rem)}
.am-section-plum{background:var(--am-plum);color:var(--am-plum-ink)}
.am-section-peach{background:var(--am-peach);color:var(--am-peach-ink)}
.am-section-mint{background:var(--am-mint);color:var(--am-mint-ink)}
.am-section-sand{background:var(--am-sand);color:var(--am-sand-ink)}
.am-section-dark{background:var(--am-dark);color:#f8f7f4}
.am-section-dark p{color:#c7cad3}
.am-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,26rem);align-items:end;gap:clamp(2rem,7vw,6rem);margin-bottom:var(--am-space-6)}
.am-section-head p{color:var(--am-muted)}
.am-kicker{display:inline-flex;align-items:center;gap:.55rem;width:max-content;max-width:100%;margin-bottom:var(--am-space-3);padding:.5rem .8rem;border-radius:var(--am-radius-pill);background:var(--am-peach);color:var(--am-peach-ink);font-size:var(--am-text-xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase;line-height:1.2}
.am-kicker::before{content:"";width:.42rem;height:.42rem;border-radius:50%;background:var(--am-primary);flex:none}
.am-kicker-mint{background:var(--am-mint);color:var(--am-mint-ink)}
.am-kicker-sand{background:var(--am-sand);color:var(--am-sand-ink)}
.am-kicker-plum{background:var(--am-plum);color:var(--am-plum-ink)}
.am-mono{font-family:var(--am-font-mono);font-variant-numeric:tabular-nums}
.am-muted{color:var(--am-muted)}
.am-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}
.table-scroll,.code-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
pre{max-width:100%;overflow-x:auto;padding:var(--am-space-3);border-radius:var(--am-radius-md);background:var(--am-dark);color:#f8f7f4}
.reveal{opacity:0;transform:translateY(1.25rem);transition:opacity .65s var(--am-ease),transform .65s var(--am-ease)}
.reveal.reveal-left{transform:translateX(-1.25rem)}
.reveal.reveal-right{transform:translateX(1.25rem)}
.reveal.is-visible{opacity:1;transform:none}
[hidden]{display:none!important}
@media (max-width:64rem){
  .am-grid-4,.am-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .am-section-head{grid-template-columns:1fr;gap:var(--am-space-3)}
}
@media (max-width:42rem){
  :root{--am-gutter:1rem;--am-section-space:4.5rem}
  h1{font-size:clamp(2.75rem,14vw,4rem)}
  h2{font-size:clamp(2rem,10vw,2.75rem)}
  .am-grid-2,.am-grid-3,.am-grid-4{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal,.reveal.reveal-left,.reveal.reveal-right{opacity:1;transform:none;transition:none}
}
