:root { --ink:#14212b; --teal:#00a9a5; --cream:#f8f6f1; --muted:#58646a; --line:#d9ddd7; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:Arial,Helvetica,sans-serif; line-height:1.6; }
a { color:#087a78; text-underline-offset:3px; }
.legal-header { display:flex; align-items:center; justify-content:space-between; gap:24px; max-width:1080px; margin:auto; padding:24px 28px; }
.legal-header img { display:block; width:205px; }
.back-link { padding:9px 13px; border:1px solid #bdd4d0; border-radius:999px; color:var(--ink); font-size:13px; font-weight:700; text-decoration:none; }
.back-link:hover { border-color:var(--teal); color:#056c69; }
main { max-width:900px; margin:24px auto 80px; padding:0 28px; }
.label { margin:0 0 14px; color:#087a78; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
h1 { max-width:750px; margin:0 0 14px; font-size:clamp(39px,6vw,64px); line-height:1; letter-spacing:-.055em; }
h2 { margin:45px 0 12px; font-size:25px; line-height:1.12; letter-spacing:-.035em; }
p,li { color:#39494f; }
.intro { max-width:720px; margin:0; color:var(--muted); font-size:18px; }
.meta { display:flex; flex-wrap:wrap; gap:10px; margin:30px 0 38px; }
.meta span { padding:6px 10px; border:1px solid #c9dedb; border-radius:999px; color:#43615f; background:#ecf8f6; font-size:12px; font-weight:700; }
.notice { margin-top:32px; padding:18px 20px; border-left:4px solid var(--teal); background:#e9f8f6; }
.notice p { margin:0; }
.data-table { width:100%; border-collapse:collapse; margin:18px 0; overflow:hidden; border:1px solid var(--line); border-radius:10px; background:white; }
.data-table th,.data-table td { padding:14px 16px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
.data-table th { width:31%; color:#31504f; background:#f1f7f5; font-size:13px; }
.data-table tr:last-child th,.data-table tr:last-child td { border-bottom:0; }
.legal-footer { padding:28px; color:#8fa0a5; background:#0e171e; font-size:12px; text-align:center; }
.legal-footer a { color:#b9f2ef; }
@media (max-width:620px) { .legal-header,main { padding-left:18px; padding-right:18px; } .legal-header { align-items:flex-start; flex-direction:column; } main { margin-top:12px; } .data-table th,.data-table td { display:block; width:100%; } .data-table th { padding-bottom:4px; border-bottom:0; } .data-table td { padding-top:4px; } }
