:root{
  --indigo:#0E2F4A;
  --gold:#F0B429;
  --ink:#12212E;
  --body:#2B3A47;
  --muted:#5A6B7A;
  --line:#E4E9EE;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#fff;
  color:var(--ink);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  line-height:1.65;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
a{color:var(--indigo)}

/* ---- header ---- */
.site-head{display:flex;align-items:center;gap:12px;max-width:760px;width:100%;margin:0 auto;padding:26px 24px}
.site-head .logo{width:30px;height:30px;display:block;flex:none}
.site-head .wordmark{font-weight:700;font-size:19px;letter-spacing:-.01em;color:var(--indigo);text-decoration:none}
.site-head .spacer{flex:1}
.site-head .back{font-size:14px;color:var(--muted);text-decoration:none}
.site-head .back:hover{color:var(--indigo)}

/* ---- layout ---- */
main{flex:1}
main.center{display:flex;align-items:center;justify-content:center;padding:24px}
main.plain{display:block;padding:0}

/* ---- home hero ---- */
.hero{max-width:620px;text-align:center}
.hero .mark{width:88px;height:88px;margin:0 auto 28px;display:block}
.hero h1{font-size:clamp(24px,4.4vw,34px);line-height:1.25;letter-spacing:-.02em;margin:0 0 16px;color:var(--indigo)}
.hero .lead{font-size:17px;color:var(--muted);margin:0}
.pill{display:inline-block;margin-top:24px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;font-size:14px;color:var(--muted)}
.hero .mail{margin-top:30px;font-size:15px}
.hero .mail a{color:var(--indigo);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:2px}

/* ---- document pages ---- */
.doc{max-width:760px;width:100%;margin:0 auto;padding:8px 24px 72px}
.doc h1{font-size:clamp(24px,3.6vw,30px);letter-spacing:-.02em;color:var(--indigo);margin:22px 0 6px}
.doc .updated{color:var(--muted);font-size:14px;margin:0 0 32px}
.doc h2{font-size:17px;color:var(--indigo);margin:34px 0 8px;letter-spacing:-.01em}
.doc p,.doc li{font-size:15.5px;color:var(--body)}
.doc p{margin:8px 0}
.doc ul{padding-left:20px;margin:8px 0}
.doc li{margin:6px 0}

/* ---- footer ---- */
.site-foot{border-top:1px solid var(--line);padding:22px 0;font-size:13px;color:var(--muted);margin-top:auto}
.site-foot .inner{max-width:760px;margin:0 auto;padding:0 24px;display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;justify-content:space-between}
.site-foot a{color:var(--muted);text-decoration:none}
.site-foot a:hover{color:var(--indigo)}
