:root { color-scheme: dark; --ink:#f7f2e8; --muted:#c7c2b7; --line:rgba(214,178,104,.24); --page:#061a2c; --surface:#0b2942; --accent:#d6b268; }
* { box-sizing: border-box; }
html { overflow-x:hidden; }
body { margin:0; min-width:320px; overflow-x:hidden; background:radial-gradient(circle at 50% 0, #123c5d 0, var(--page) 38rem); color:var(--ink); font:16px/1.75 ui-sans-serif, system-ui, -apple-system, "Noto Sans TC", sans-serif; }
.shell { width:min(calc(100% - 40px), 760px); margin:0 auto; padding:64px 0 28px; }
.hero { padding:12px 0 42px; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:14px; margin-bottom:22px; }
.brand-mark { display:grid; place-items:center; width:56px; height:56px; border:1px solid var(--accent); color:var(--accent); font-family:ui-serif, "Noto Serif TC", serif; font-size:1.1rem; letter-spacing:.08em; }
.eyebrow { margin:0; color:var(--accent); font-size:.78rem; font-weight:700; letter-spacing:.18em; }
h1 { margin:0; font-family:ui-serif, "Noto Serif TC", serif; font-size:clamp(3.8rem, 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; }
.line-id { margin:0; color:var(--accent); font-family:ui-serif, "Noto Serif TC", serif; font-size:1.8rem; letter-spacing:.03em; }
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 p { margin:0; }
.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(calc(100% - 32px), 760px); padding-top:42px; } footer { width:min(calc(100% - 32px), 760px); } dl div { grid-template-columns:1fr; gap:1px; } }
