:root { color-scheme: dark; --ink:#f5f0e6; --muted:#c6bda9; --line:#403b35; --page:#151412; --card:#201e1a; --accent:#d5ae67; }
* { box-sizing: border-box; }
body { margin:0; min-width:320px; background:radial-gradient(circle at top, #30291e, var(--page) 48rem); color:var(--ink); font:16px/1.75 ui-sans-serif, system-ui, -apple-system, "Noto Sans TC", sans-serif; }
.shell { width:min(100% - 40px, 760px); margin:0 auto; padding:72px 0 36px; }
.hero { padding:20px 0 44px; border-bottom:1px solid var(--line); }
.eyebrow { margin:0; color:var(--accent); font-size:.78rem; font-weight:700; letter-spacing:.18em; }
h1 { margin:6px 0 0; font-family:ui-serif, "Noto Serif TC", serif; font-size:clamp(3rem, 12vw, 5.8rem); line-height:1.05; letter-spacing:.08em; }
.tagline { margin:14px 0; font-size:1.25rem; color:var(--accent); }
.intro { max-width:36rem; color:var(--muted); }
section { padding:28px 0; border-bottom:1px solid var(--line); }
h2 { margin:0 0 10px; font-size:1.15rem; }
p { margin:0 0 10px; }
.quiet { color:var(--muted); font-size:.94rem; }
dl { margin:0; }
dl div { display:grid; grid-template-columns:7rem 1fr; padding:6px 0; }
dt { color:var(--muted); } dd { margin:0; }
a { color:var(--accent); text-underline-offset:3px; }
footer { width:min(100% - 40px, 760px); margin:0 auto; padding:18px 0 42px; color:var(--muted); font-size:.9rem; }
footer span { margin:0 8px; } footer p { margin-top:10px; }
.legal h1 { font-size:clamp(2.3rem, 8vw, 4rem); letter-spacing:.03em; margin-bottom:24px; }
.legal h2 { margin-top:28px; }
.legal > p { max-width:46rem; }
@media (max-width:480px) { .shell { width:min(100% - 32px, 760px); padding-top:48px; } footer { width:min(100% - 32px, 760px); } dl div { grid-template-columns:1fr; gap:1px; } }
