:root{
  --white:#FFFFFF;
  --ink:#24211E;
  --ink-2:#4A453F;
  --muted:#6F685F;
  --amber:#AA5A00;
  --amber-hover:#934D00;
  --yellow:#FFD84D;
  --char:#3A3530;
  --char-ink:#F7F3EC;
  --char-muted:#BDB3A6;
  --violet:#2E2C33;
  --violet-ink:#F4F2EE;
  --violet-muted:#ADA8B2;
  --deep:#24211E;
  --deep-ink:#FFFFFF;
  --deep-muted:#ADA59A;
  --paper:#F3F1EC;
  --paper-ink:#24211E;
  --paper-muted:#6F685F;
  --mist:#E4EBE8;
  --mist-ink:#1F2D28;
  --mist-muted:#4E605A;
  --line-paper:rgba(36,33,30,.12);
  --line-dark:rgba(247,243,236,.12);
  --control-line:#948B80;
  --font-heading:"Albert Sans","Inter",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Hiragino Kaku Gothic ProN","Yu Gothic","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --font-body:"Inter",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Hiragino Kaku Gothic ProN","Yu Gothic","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --font-mono:"JetBrains Mono","SF Mono",Menlo,Consolas,monospace;
  --text-xs:.75rem;
  --text-sm:.875rem;
  --text-base:1rem;
  --text-lg:1.25rem;
  --text-card:1.25rem;
  --text-section:clamp(2.25rem,3.5vw,3rem);
  --text-display:clamp(2.8rem,4.45vw,4rem);
  --leading-tight:1.17;
  --leading-body:1.6;
  --space-1:.5rem;
  --space-2:1rem;
  --space-3:1.5rem;
  --space-4:2.5rem;
  --space-5:4rem;
  --space-6:6rem;
  --space-7:7rem;
  --gutter:clamp(1.25rem,3.4vw,3rem);
  --radius-sm:.5rem;
  --radius-card:1rem;
  --radius-cover:1.5rem;
  --radius-pill:999px;
  --shadow-stage:0 1px 2px rgba(36,33,30,.06),0 18px 44px rgba(36,33,30,.10);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:5rem}
body{margin:0;min-width:320px;background:#FFFFFF;color:#24211E;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased}
main{overflow-x:clip}
img,svg{max-width:100%}
img{display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-heading);font-weight:800;overflow-wrap:break-word}
h1{font-size:var(--text-display);line-height:var(--leading-tight)}
h2{font-size:var(--text-section);line-height:var(--leading-tight)}
h3{font-size:var(--text-card);line-height:1.3}
h4,h5,h6{font-size:var(--text-base);line-height:1.4}
p{margin:0;font-size:var(--text-base);line-height:var(--leading-body)}
li{font-size:var(--text-base);line-height:var(--leading-body)}
small{font-size:var(--text-xs);line-height:1.5}
figcaption{font-size:var(--text-sm);line-height:1.5}
blockquote{margin:0;font-size:var(--text-lg);line-height:1.6}
code,pre,.mono{font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.65;font-variant-numeric:tabular-nums}
pre{max-width:100%;overflow-x:auto}
code{overflow-wrap:anywhere}
th,td{font-size:var(--text-sm);line-height:1.55}
dt{font-size:var(--text-sm);line-height:1.5}
dd{margin:0;font-size:var(--text-base);line-height:1.5}
label{font-size:var(--text-sm);line-height:1.5}
:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
[hidden]{display:none!important}
.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}
.container,.wrap{width:min(100% - var(--gutter)*2,75rem);margin-inline:auto}
.container-wide{width:min(100% - var(--gutter)*2,90rem);margin-inline:auto}
.container-reading{width:min(100% - var(--gutter)*2,48rem);margin-inline:auto}
.grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
.grid-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}
.grid-two>*,.grid-four>*{min-width:0}
.stack-2>*+*{margin-top:var(--space-2)}
.stack-3>*+*{margin-top:var(--space-3)}
.measure{max-width:38rem}
.text-muted{color:var(--muted)}
.u-mt-3{margin-top:var(--space-3)}
.u-mt-4{margin-top:var(--space-4)}
.u-mb-4{margin-bottom:var(--space-4)}
@media(max-width:64rem){
  .grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:42rem){
  .grid-two,.grid-four{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
