:root{--ink:#172b31;--muted:#5d6f75;--line:#dbe7e5;--paper:#fff;--ground:#f2f7f6;--nav:#10272b;--teal:#008d7b;--mint:#dff4ee;--accent:#55d9c3;--shadow:0 22px 60px rgba(16,39,43,.1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,#e9f5f2 0,#f7faf9 340px);color:var(--ink);font:16px/1.72 system-ui,-apple-system,"Segoe UI",sans-serif}
a{color:#006e61;text-underline-offset:3px}
a:hover{color:#004f46}
.legal-nav{background:var(--nav);color:#fff;border-bottom:3px solid var(--accent)}
.legal-nav-inner{width:min(1080px,calc(100% - 40px));margin:auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-weight:800;letter-spacing:-.02em}
.brand-mark{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--accent);color:var(--nav);font-size:18px}
.legal-links{display:flex;align-items:center;gap:20px;font-size:14px}
.legal-links a{color:#d6e8e6;text-decoration:none}
.legal-links a[aria-current="page"]{color:#fff;font-weight:700}
.legal-hero{width:min(1080px,calc(100% - 40px));margin:54px auto 30px;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:38px;align-items:end}
.eyebrow{display:inline-block;margin-bottom:12px;color:#087a6c;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
h1{margin:0;font-size:clamp(2.25rem,6vw,4.2rem);line-height:1.04;letter-spacing:-.055em}
.intro{max-width:720px;margin:20px 0 0;color:var(--muted);font-size:18px}
.meta-card{padding:20px;border:1px solid #cce0dc;border-radius:16px;background:rgba(255,255,255,.72);backdrop-filter:blur(10px)}
.meta-card span{display:block;color:var(--muted);font-size:13px}
.meta-card strong{display:block;margin-top:4px;font-size:15px}
.legal-layout{width:min(1080px,calc(100% - 40px));margin:0 auto 70px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:38px;align-items:start}
.toc{position:sticky;top:22px;padding:19px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.8)}
.toc strong{display:block;margin-bottom:9px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.toc a{display:block;padding:6px 0;color:var(--muted);font-size:14px;text-decoration:none}
.document{padding:clamp(25px,5vw,54px);border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:var(--shadow)}
.document section+section{margin-top:38px;padding-top:34px;border-top:1px solid #e8efee}
h2{margin:0 0 13px;font-size:1.35rem;line-height:1.3;letter-spacing:-.025em}
h3{margin:23px 0 8px;font-size:1rem}
p{margin:0 0 14px}
ul,ol{margin:10px 0 0;padding-left:24px}
li+li{margin-top:8px}
.notice{margin:22px 0;padding:17px 19px;border-left:4px solid var(--teal);border-radius:0 10px 10px 0;background:var(--mint)}
.steps{counter-reset:step;list-style:none;padding:0}
.steps li{position:relative;padding:3px 0 19px 48px;min-height:42px}
.steps li:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:var(--nav);color:#fff;font-weight:800;font-size:14px}
.contact-card{padding:22px;border-radius:14px;background:var(--nav);color:#fff}
.contact-card a{color:var(--accent)}
.legal-footer{padding:28px 20px;text-align:center;color:#6a7a7e;font-size:13px}
@media(max-width:820px){.legal-hero{grid-template-columns:1fr}.legal-layout{grid-template-columns:1fr}.toc{position:static;display:none}}
@media(max-width:620px){.legal-nav-inner{padding:14px 0;align-items:flex-start;flex-direction:column}.legal-links{gap:13px;flex-wrap:wrap}.legal-hero,.legal-layout{width:min(100% - 24px,1080px)}.legal-hero{margin-top:34px}.document{border-radius:15px}body{font-size:15.5px}}
