:root { color-scheme: light; --ink:#172c2a; --jade:#1c5149; --paper:#f8f5ed; --line:#d8d9cf; --muted:#65736d; }
* { box-sizing:border-box; }
html { background:var(--paper); }
body { margin:0; color:var(--ink); font:16px/1.75 -apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB",sans-serif; background:radial-gradient(circle at 90% 0%,#e4ede4 0,transparent 35%),var(--paper); }
a { color:var(--jade); text-underline-offset:4px; }
.page { width:min(100% - 40px,850px); margin:auto; }
.masthead { display:flex; justify-content:space-between; align-items:center; padding:28px 0; font-size:14px; font-weight:600; border-bottom:1px solid var(--line); }
.masthead a { text-decoration:none; }
.hero { position:relative; padding:96px 0 72px; }
.icon { width:88px; height:88px; object-fit:cover; border-radius:22px; box-shadow:0 15px 30px #173d3526; margin-bottom:30px; }
.eyebrow { color:var(--jade); font-size:11px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; }
h1 { font-family:"Songti SC","Noto Serif CJK SC",serif; font-weight:600; font-size:clamp(42px,8vw,72px); letter-spacing:.04em; line-height:1.25; margin:15px 0 22px; }
h2 { font-size:20px; line-height:1.4; margin:30px 0 8px; }
.hero>p:last-child,.lead { max-width:590px; color:var(--muted); font-size:17px; }
.card { margin:18px 0; padding:30px 36px; border:1px solid var(--line); border-radius:24px; background:#ffffffb5; }
.card h2:first-child { margin-top:0; }
.card p { color:#40544f; }
.card ol { margin:12px 0 0; padding-left:22px; }
.card li { padding:7px 0; }
.button { display:inline-block; padding:12px 18px; border-radius:12px; background:var(--ink); color:var(--paper); text-decoration:none; font-weight:600; }
.policy { padding-top:12px; }
.policy h1 { margin-top:65px; }
.policy .lead { margin-bottom:36px; }
footer { color:var(--muted); font-size:13px; padding:45px 0 60px; }
footer span { margin:0 10px; }
@media(max-width:580px) { .masthead { padding:18px 0; } .hero { padding:60px 0 35px; } .card { padding:24px; border-radius:20px; } }
