:root{
  --md-paper:#faf9f2;
  --md-paper-solid:#fffef8;
  --md-surface:#f1f2e8;
  --md-surface-strong:#e9edda;
  --md-ink:#20250f;
  --md-ink-soft:#4f5642;
  --md-muted:#69705d;
  --md-line:#d9dccd;
  --md-line-strong:#b9bea8;
  --md-primary:#668a00;
  --md-primary-deep:#354800;
  --md-accent:#b7d84b;
  --md-accent-soft:#e7f2b9;
  --md-success:#668a00;
  --md-danger:#a34f32;
  --md-warning:#9b7417;
  --md-white:#fffef8;
  --md-font-heading:"Fraunces","Noto Serif SC","Songti SC","STSong","Hiragino Mincho ProN",serif;
  --md-font-body:"IBM Plex Sans",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --md-font-zh-hant:"IBM Plex Sans",-apple-system,"PingFang TC","Hiragino Sans CNS","Microsoft JhengHei","Noto Sans CJK TC",sans-serif;
  --md-font-ja:"IBM Plex Sans",-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo","Noto Sans CJK JP",sans-serif;
  --md-font-ko:"IBM Plex Sans",-apple-system,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans CJK KR",sans-serif;
  --md-font-mono:"IBM Plex Mono","SFMono-Regular","Cascadia Code","Roboto Mono","Menlo",monospace;
  --md-fs-0:.6875rem;
  --md-fs-1:.8125rem;
  --md-fs-2:.9375rem;
  --md-fs-3:1.0625rem;
  --md-fs-4:1.375rem;
  --md-fs-5:2rem;
  --md-fs-6:clamp(2.55rem,5.4vw,4.75rem);
  --md-lh-tight:1.06;
  --md-lh-heading:1.16;
  --md-lh-body:1.68;
  --md-lh-data:1.45;
  --md-space-1:.5rem;
  --md-space-2:1rem;
  --md-space-3:1.5rem;
  --md-space-4:2.5rem;
  --md-space-5:4rem;
  --md-space-6:6rem;
  --md-space-7:7.5rem;
  --md-radius-1:2px;
  --md-radius-2:4px;
  --md-radius-3:8px;
  --md-shadow-1:0 12px 30px rgba(32,37,15,.06);
  --md-shadow-2:0 24px 56px rgba(32,37,15,.12);
  --md-duration:160ms;
  --md-ease:cubic-bezier(.2,.7,.2,1);
  --md-container-narrow:760px;
  --md-container-standard:1120px;
  --md-container-wide:1280px;
  --md-gutter:clamp(1rem,3vw,2.5rem);
  --md-header-height:72px;
  --md-z-header:100;
  --md-z-menu:120;
}
*,
*::before,
*::after{box-sizing:border-box}
html{scroll-behavior:auto;text-size-adjust:100%}
body{
  min-width:0;
  margin:0;
  color:var(--md-ink);
  background:
    linear-gradient(rgba(32,37,15,.021) 1px,transparent 1px),
    linear-gradient(90deg,rgba(32,37,15,.016) 1px,transparent 1px),
    var(--md-paper);
  background-size:48px 48px;
  font-family:var(--md-font-body);
  font-size:var(--md-fs-2);
  line-height:var(--md-lh-body);
  -webkit-font-smoothing:antialiased;
  overflow-wrap:anywhere;
}
html[lang="zh-Hant"] body{font-family:var(--md-font-zh-hant)}
html[lang="ja"] body{font-family:var(--md-font-ja)}
html[lang="ko"] body{font-family:var(--md-font-ko)}
img,svg,video,canvas{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}
p,h1,h2,h3,h4,ul,ol,dl,dd,figure,blockquote{margin-top:0}
h1,h2,h3,h4{
  color:var(--md-ink);
  font-family:var(--md-font-heading);
  font-weight:600;
  line-height:var(--md-lh-heading);
  letter-spacing:-.025em;
}
h1{font-size:var(--md-fs-6)}
h2{font-size:clamp(2rem,4vw,3.25rem)}
h3{font-size:var(--md-fs-4)}
h4{font-size:var(--md-fs-3)}
p:last-child{margin-bottom:0}
ul,ol{padding-left:1.25rem}
table{border-collapse:collapse}
pre,code,kbd,samp,.md-mono{
  font-family:var(--md-font-mono);
  font-variant-numeric:tabular-nums slashed-zero;
}
pre{
  max-width:100%;
  margin:0;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
}
code{overflow-wrap:normal}
::selection{color:var(--md-ink);background:var(--md-accent)}
:focus-visible{outline:2px solid var(--md-primary);outline-offset:3px}
.md-container,
.md-container-wide,
.md-container-narrow{
  width:calc(100% - var(--md-gutter) * 2);
  margin-inline:auto;
}
.md-container{max-width:var(--md-container-standard)}
.md-container-wide{max-width:var(--md-container-wide)}
.md-container-narrow{max-width:var(--md-container-narrow)}
.md-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--md-space-3)}
.md-grid>*{min-width:0}
.md-grid-2,.md-grid-3,.md-grid-4{display:grid;gap:var(--md-space-3)}
.md-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.md-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.md-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.md-grid-2>*,.md-grid-3>*,.md-grid-4>*{min-width:0}
.md-stack>*+*{margin-top:var(--md-space-3)}
.md-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--md-space-2)}
.md-split{display:flex;align-items:center;justify-content:space-between;gap:var(--md-space-2)}
.md-kicker{
  display:flex;
  align-items:center;
  gap:.625rem;
  margin-bottom:var(--md-space-2);
  color:var(--md-primary);
  font:600 var(--md-fs-0)/1.2 var(--md-font-mono);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.md-kicker::before{width:1.5rem;height:1px;background:currentColor;content:""}
.md-lead{color:var(--md-ink-soft);font-size:var(--md-fs-3);line-height:1.75}
.md-muted{color:var(--md-muted)}
.md-price{color:var(--md-primary);font-family:var(--md-font-mono);font-variant-numeric:tabular-nums}
.md-rule{height:1px;border:0;background:var(--md-line)}
.md-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;
}
.md-mt-1{margin-top:var(--md-space-1)}
.md-mt-2{margin-top:var(--md-space-2)}
.md-mt-3{margin-top:var(--md-space-3)}
.md-mt-4{margin-top:var(--md-space-4)}
.md-mt-5{margin-top:var(--md-space-5)}
.md-mb-0{margin-bottom:0}
.md-text-center{text-align:center}
.md-reveal{opacity:1;transform:none}
.md-reveal.is-pending{opacity:0;transform:translateY(12px)}
.md-reveal.is-visible{
  opacity:1;
  transform:none;
  transition:opacity var(--md-duration) var(--md-ease),transform var(--md-duration) var(--md-ease);
}
@media (max-width:900px){
  :root{--md-space-6:4.5rem;--md-space-7:5rem}
  .md-grid-3,.md-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:680px){
  :root{--md-gutter:1rem;--md-header-height:64px}
  .md-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--md-space-2)}
  .md-grid-2,.md-grid-3,.md-grid-4{grid-template-columns:1fr}
  .md-split{align-items:flex-start;flex-direction:column}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .md-reveal.is-pending{opacity:1;transform:none}
}
main{overflow-x:clip}
