:root { --ink:#12313a; --paper:#f7fbfa; --white:#fff; --line:#d3e0de; --muted:#64797d; --coral:#b9473d; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Microsoft JhengHei","Noto Sans TC",sans-serif; line-height:1.75; }
a { color:inherit; text-underline-offset:3px; }
.legal-header { display:flex; justify-content:space-between; gap:20px; padding:18px clamp(18px,5vw,76px); border-bottom:1px solid var(--line); background:rgba(247,251,250,.96); }
.legal-header a:first-child { font-weight:700; letter-spacing:.1em; text-decoration:none; }
.legal-header span { font-size:10px; }
.legal-shell { width:min(860px,calc(100% - 32px)); margin:56px auto 88px; }
.eyebrow { color:var(--coral); font-size:11px; font-weight:700; letter-spacing:.17em; }
h1 { margin:0 0 18px; font:700 clamp(32px,5vw,50px)/1.2 "Noto Serif TC","Microsoft JhengHei",serif; }
.lead { color:#41636a; font-size:17px; }
section { margin-top:22px; padding:22px 24px; border:1px solid var(--line); background:var(--white); }
h2 { margin:0 0 8px; font-size:19px; }
section p { margin:0; }
.updated { margin-top:26px; color:var(--muted); font-size:13px; }
@media (max-width:560px) { .legal-header { align-items:flex-start; flex-direction:column; }.legal-shell { margin-top:34px; } section { padding:18px; } }
