:root{
  --gm-primary:#8a6500;
  --gm-primary-deep:#684b00;
  --gm-primary-paper:#765600;
  --gm-accent:#f4c95d;
  --gm-accent-soft:#fff0b9;
  --gm-dark:#2b2418;
  --gm-ink:#332d22;
  --gm-muted:#665e52;
  --gm-light:#fff8e7;
  --gm-surface:#fff;
  --gm-band:#f4f0e8;
  --gm-band-cool:#eef3f5;
  --gm-terminal:#211d17;
  --gm-success:#2d7551;
  --gm-danger:#9b493d;
  --gm-line:#e9e2d5;
  --gm-line-dark:rgba(255,255,255,.12);
  --gm-control-line:#cfc5b3;
  --gm-font-heading:"Sora",-apple-system,"PingFang SC","PingFang TC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Yu Gothic","Malgun Gothic","Microsoft YaHei",sans-serif;
  --gm-font-body:"Albert Sans",-apple-system,"PingFang SC","PingFang TC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Yu Gothic","Malgun Gothic","Microsoft YaHei",sans-serif;
  --gm-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  --gm-text-0:.75rem;
  --gm-text-1:.875rem;
  --gm-text-2:1rem;
  --gm-text-3:1.125rem;
  --gm-text-4:1.5rem;
  --gm-text-5:clamp(1.9rem,4vw,3rem);
  --gm-text-6:clamp(2.55rem,5.4vw,4.15rem);
  --gm-leading-tight:1.18;
  --gm-leading-heading:1.25;
  --gm-leading-body:1.68;
  --gm-leading-data:1.45;
  --gm-space-1:.5rem;
  --gm-space-2:1rem;
  --gm-space-3:1.5rem;
  --gm-space-4:2.5rem;
  --gm-space-5:4rem;
  --gm-space-6:6rem;
  --gm-space-7:8rem;
  --gm-radius-sm:.5rem;
  --gm-radius-md:.875rem;
  --gm-radius-lg:1.375rem;
  --gm-shadow-soft:0 12px 34px rgba(73,58,24,.07);
  --gm-shadow-float:0 22px 60px rgba(69,53,17,.09),0 4px 14px rgba(69,53,17,.05);
  --gm-container-narrow:46rem;
  --gm-container:74rem;
  --gm-container-wide:86rem;
  --gm-gutter:clamp(1rem,4vw,2rem);
  --gm-ease:cubic-bezier(.2,.7,.2,1);
  --gm-duration:200ms
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto;text-size-adjust:100%}
body{margin:0;color:var(--gm-ink);background:var(--gm-surface);font-family:var(--gm-font-body);font-size:var(--gm-text-2);line-height:var(--gm-leading-body);-webkit-font-smoothing:antialiased}
main{overflow-x:clip}
img,svg,video,canvas{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{margin:0;color:var(--gm-dark);font-family:var(--gm-font-heading);font-weight:650;letter-spacing:-.026em}
h1{font-size:var(--gm-text-6);line-height:var(--gm-leading-tight)}
h2{font-size:var(--gm-text-5);line-height:var(--gm-leading-tight)}
h3{font-size:var(--gm-text-4);line-height:var(--gm-leading-heading)}
h4{font-size:var(--gm-text-3);line-height:var(--gm-leading-heading)}
h5{font-size:var(--gm-text-2);line-height:var(--gm-leading-heading)}
h6{font-size:var(--gm-text-1);line-height:var(--gm-leading-heading)}
p{margin:0;font-size:var(--gm-text-2);line-height:var(--gm-leading-body)}
li{font-size:var(--gm-text-2);line-height:var(--gm-leading-body)}
small{font-size:var(--gm-text-0);line-height:var(--gm-leading-data)}
figcaption{font-size:var(--gm-text-1);line-height:var(--gm-leading-body)}
blockquote{margin:0;font-size:var(--gm-text-3);line-height:var(--gm-leading-body)}
code{font-family:var(--gm-font-mono);font-size:var(--gm-text-1);line-height:var(--gm-leading-data)}
pre{max-width:100%;overflow-x:auto}
pre code{font-size:var(--gm-text-1);line-height:var(--gm-leading-data)}
th{font-size:var(--gm-text-1);line-height:var(--gm-leading-data)}
td{font-size:var(--gm-text-1);line-height:var(--gm-leading-data)}
dt{font-size:var(--gm-text-1);line-height:var(--gm-leading-data);font-weight:700}
dd{margin:0;font-size:var(--gm-text-1);line-height:var(--gm-leading-body)}
label{font-size:var(--gm-text-1);line-height:var(--gm-leading-data)}
hr{height:1px;margin:var(--gm-space-4) 0;border:0;background:var(--gm-line)}
::selection{color:var(--gm-dark);background:var(--gm-accent-soft)}
:focus-visible{outline:3px solid color-mix(in srgb,var(--gm-accent) 72%,white);outline-offset:3px}
.gm-container,.gm-container-narrow,.gm-container-wide{width:calc(100% - (var(--gm-gutter) * 2));margin-inline:auto}
.gm-container{max-width:var(--gm-container)}
.gm-container-narrow{max-width:var(--gm-container-narrow)}
.gm-container-wide{max-width:var(--gm-container-wide)}
.gm-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gm-space-3)}
.gm-grid>*{min-width:0}
.gm-stack{display:flex;flex-direction:column;gap:var(--gm-space-3)}
.gm-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gm-space-2)}
.gm-mono{font-family:var(--gm-font-mono);font-variant-numeric:tabular-nums}
.gm-muted{color:var(--gm-muted)}
.gm-center{text-align:center}
.gm-center .gm-actions{justify-content:center}
.gm-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}
.gm-mt-1{margin-top:var(--gm-space-1)}
.gm-mt-2{margin-top:var(--gm-space-2)}
.gm-mt-3{margin-top:var(--gm-space-3)}
.gm-mt-4{margin-top:var(--gm-space-4)}
.gm-mb-2{margin-bottom:var(--gm-space-2)}
.gm-mb-4{margin-bottom:var(--gm-space-4)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s var(--gm-ease),transform .55s var(--gm-ease)}
.reveal-left{opacity:0;transform:translateX(-18px);transition:opacity .55s var(--gm-ease),transform .55s var(--gm-ease)}
.reveal-right{opacity:0;transform:translateX(18px);transition:opacity .55s var(--gm-ease),transform .55s var(--gm-ease)}
.reveal.is-visible,.reveal-left.is-visible,.reveal-right.is-visible{opacity:1;transform:none}
@media(max-width:48rem){
  :root{--gm-space-6:4.5rem;--gm-space-7:5.5rem}
  .gm-grid{grid-template-columns:1fr}
}
@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}
}
