/* 개인정보처리방침·이용약관: 메인과 같은 서체·색(base.css 변수)과 머리글·푸터(chrome.css, base.css)를 쓴다.
   위는 어두운 제목 띠(메인 섹션 제목과 같은 Wanted Sans), 아래는 종이 바탕 본문. 본문 16px, 최소 13px */
body { background: var(--paper); color: var(--ink); font-family: var(--font-body); font-size: 16px; line-height: 1.75; word-break: keep-all; }
.legal-hero { padding: clamp(56px, 8vw, 96px) var(--gutter) clamp(40px, 6vw, 64px); background: var(--ink); color: var(--ink-text); }
.legal-hero__inner { max-width: 880px; margin: 0 auto; }
.legal-hero__kicker { margin: 0; font-weight: 700; font-size: 15px; color: var(--ink-sub); }
.legal-hero h1 { margin: 12px 0 0; font-family: var(--font-head); font-weight: 900; font-size: clamp(34px, 5vw, 56px); line-height: 1.2; letter-spacing: -0.04em; }
.legal-hero .meta { margin: 14px 0 0; font-size: 15px; color: var(--ink-sub); }
.legal-hero__tabs { display: flex; gap: 8px; margin-top: 28px; }
.legal-hero__tabs a { display: inline-flex; align-items: center; height: 40px; padding: 0 16px; border: 1px solid #3a3a3a; border-radius: 999px; color: var(--ink-sub); font-weight: 700; font-size: 15px; text-decoration: none; }
.legal-hero__tabs a[aria-current="page"] { border-color: var(--ink-text); background: var(--ink-text); color: var(--ink); }

main.legal { max-width: 880px; margin: 0 auto; padding: 40px var(--gutter) 96px; color: var(--ink); }
main.legal a { color: inherit; text-underline-offset: 3px; }
.toc { margin: 0 0 36px; padding: 20px 24px; border: 1px solid var(--paper-line); border-radius: 12px; background: #fff; font-size: 15px; }
.toc b { font-family: var(--font-head); font-size: 16px; }
.toc ol { margin: 8px 0 0; padding-left: 22px; columns: 2 260px; column-gap: 32px; }
.toc li { margin: 2px 0; break-inside: avoid; }
main.legal h2 { margin: 48px 0 12px; padding-top: 26px; border-top: 1px solid var(--paper-line); font-family: var(--font-head); font-weight: 800; font-size: 21px; letter-spacing: -0.03em; scroll-margin-top: calc(var(--header-h) + 16px); }
main.legal p, main.legal li { margin: 6px 0; }
main.legal ol, main.legal ul { padding-left: 22px; }
main.legal table { width: 100%; margin: 12px 0; border-collapse: collapse; background: #fff; font-size: 14px; line-height: 1.6; }
main.legal th, main.legal td { padding: 10px 10px; border: 1px solid var(--paper-line); text-align: left; vertical-align: top; }
main.legal thead th, main.legal tbody th { background: #f4f2ec; font-weight: 700; }
main.legal code { font-size: 14px; }
.note { font-size: 14px; color: var(--paper-sub); }
@media (max-width: 640px) { main.legal table { display: block; overflow-x: auto; } }
