:root{
  --paper:#fbf8ef;
  --paper-rgb:251,248,239;
  --ink:#130f02;
  --ink-rgb:19,15,2;
  --muted:#665f52;
  --soft:#a09c8f;
  --surface:#f3efe2;
  --surface-deep:#e9e4d5;
  --white:#ffffff;
  --green:#18713a;
  --green-deep:#0d4828;
  --green-bright:#49c45b;
  --green-pale:#dcebd9;
  --danger:#ec4545;
  --warning:#d7c864;
  --line:rgba(19,15,2,.12);
  --line-strong:rgba(19,15,2,.28);
  --line-inverse:rgba(255,255,255,.12);
  --dark-card:#211d10;
  --dark-card-2:#292517;
  --font-heading:"Albert Sans",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;
  --font-body:"Albert Sans",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;
  --font-zh-hant:"Albert Sans",-apple-system,"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif;
  --font-ja:"Albert Sans",-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",sans-serif;
  --font-ko:"Albert Sans",-apple-system,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;
  --font-mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --text-xs:.75rem;
  --text-sm:.875rem;
  --text-md:1rem;
  --text-lg:1.125rem;
  --text-xl:1.5rem;
  --text-2xl:2rem;
  --text-3xl:3rem;
  --text-hero:3.625rem;
  --leading-tight:1.08;
  --leading-heading:1.16;
  --leading-body:1.65;
  --space-1:.5rem;
  --space-2:1rem;
  --space-3:1.5rem;
  --space-4:2.5rem;
  --space-5:4rem;
  --space-6:6rem;
  --space-7:8rem;
  --radius-sm:.75rem;
  --radius-md:1rem;
  --radius-lg:1.5rem;
  --radius-xl:2rem;
  --radius-pill:999px;
  --shadow-soft:0 18px 48px rgba(44,37,16,.1);
  --shadow-menu:0 18px 48px rgba(19,15,2,.14);
  --container-narrow:46rem;
  --container-standard:77.5rem;
  --container-wide:90rem;
  --page-gutter:clamp(1.25rem,4vw,3rem);
  --ease:cubic-bezier(.2,.75,.25,1);
  --duration:200ms;
  --header-offset:7.75rem;
}
*,
*::before,
*::after{box-sizing:border-box}
html{scroll-behavior:auto}
body{
  margin:0;
  min-width:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:var(--text-md);
  line-height:var(--leading-body);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
html[lang="zh-Hant"] body{font-family:var(--font-zh-hant)}
html[lang="ja"] body{font-family:var(--font-ja)}
html[lang="ko"] body{font-family:var(--font-ko)}
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,
p,
figure,
blockquote,
dl,
dd{margin:0}
h1,
h2,
h3,
h4{
  font-family:var(--font-heading);
  font-weight:700;
  line-height:var(--leading-heading);
  overflow-wrap:anywhere;
  text-wrap:balance;
}
h1{
  font-size:clamp(2.75rem,5vw,var(--text-hero));
  letter-spacing:-.02em;
}
h2{
  font-size:clamp(2.25rem,4vw,var(--text-3xl));
  letter-spacing:-.018em;
}
h3{font-size:var(--text-xl)}
h4{font-size:var(--text-lg)}
p{text-wrap:pretty}
ul,
ol{margin:0;padding-inline-start:1.25rem}
table{border-collapse:collapse}
address{font-style:normal}
::selection{background:var(--green-pale);color:var(--green-deep)}
:focus-visible{
  outline:3px solid rgba(73,196,91,.52);
  outline-offset:3px;
}
[hidden]{display:none!important}
.skip-link{
  position:fixed;
  inset-block-start:.75rem;
  inset-inline-start:.75rem;
  z-index:1000;
  padding:.75rem 1rem;
  border-radius:var(--radius-sm);
  background:var(--white);
  color:var(--ink);
  transform:translateY(-180%);
}
.skip-link:focus{transform:none}
.l-container,
.l-container-wide,
.l-container-narrow{
  width:min(100% - (var(--page-gutter) * 2),var(--container-standard));
  margin-inline:auto;
}
.l-container-wide{max-width:var(--container-wide)}
.l-container-narrow{max-width:var(--container-narrow)}
.l-grid{display:grid;gap:var(--space-3)}
.l-grid>*{min-width:0}
.l-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.l-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.l-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.l-card-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-3);
  align-items:start;
}
.l-card-grid>*{min-width:0}
.l-paired{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(18rem,.82fr);
  gap:var(--space-3);
  align-items:stretch;
}
.l-paired__side{
  display:grid;
  grid-auto-rows:1fr;
  gap:var(--space-3);
  min-width:0;
}
.l-paired__side>*{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.l-paired__side .c-actions{margin-block-start:auto}
.u-flow>*+*{margin-block-start:var(--flow-space,var(--space-2))}
.u-cluster{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-2);
}
.u-stack{display:grid;gap:var(--space-2)}
.u-stack-sm{display:grid;gap:var(--space-1)}
.u-stack-lg{display:grid;gap:var(--space-4)}
.u-text-center{text-align:center}
.u-text-muted{color:var(--muted)}
.u-text-soft{color:var(--soft)}
.u-text-green{color:var(--green)}
.u-text-danger{color:var(--danger)}
.u-mono{
  font-family:var(--font-mono);
  font-variant-numeric:tabular-nums;
}
.u-nowrap{white-space:nowrap}
.u-visually-hidden{
  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;
}
.u-mt-1{margin-block-start:var(--space-1)}
.u-mt-2{margin-block-start:var(--space-2)}
.u-mt-3{margin-block-start:var(--space-3)}
.u-mt-4{margin-block-start:var(--space-4)}
.u-mt-5{margin-block-start:var(--space-5)}
.u-mb-0{margin-block-end:0}
.u-py-4{padding-block:var(--space-4)}
.u-py-5{padding-block:var(--space-5)}
.u-py-6{padding-block:var(--space-6)}
.u-surface{background:var(--surface);color:var(--ink)}
.u-paper{background:var(--paper);color:var(--ink)}
.u-dark{background:var(--ink);color:var(--paper)}
.u-green{background:var(--green);color:var(--white)}
.reveal,
.reveal-up,
.reveal-left,
.reveal-scale{
  opacity:0;
  transition:
    opacity .65s var(--ease),
    transform .65s var(--ease);
  will-change:opacity,transform;
}
.reveal-up{transform:translateY(1.5rem)}
.reveal-left{transform:translateX(-1.5rem)}
.reveal-scale{transform:scale(.975)}
.reveal.is-visible,
.reveal-up.is-visible,
.reveal-left.is-visible,
.reveal-scale.is-visible{
  opacity:1;
  transform:none;
}
@media (max-width:64rem){
  :root{
    --space-6:5rem;
    --space-7:6rem;
    --header-offset:6.75rem;
  }
  .l-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .l-paired{grid-template-columns:1fr}
}
@media (max-width:47.99rem){
  :root{
    --page-gutter:1rem;
    --space-5:3rem;
    --space-6:4rem;
    --space-7:5rem;
  }
  h1{font-size:clamp(2.55rem,13vw,3.5rem)}
  h2{font-size:clamp(2rem,10vw,2.75rem)}
  .l-grid-2,
  .l-grid-3,
  .l-grid-4,
  .l-card-grid{grid-template-columns:1fr}
  .u-nowrap{white-space:normal}
}
@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
  .reveal,
  .reveal-up,
  .reveal-left,
  .reveal-scale{
    opacity:1;
    transform:none;
  }
}
