:root{
  --paper:#f2efe8;
  --surface:#fbfaf6;
  --ink:#171714;
  --muted:#68665f;
  --steel:#777d7f;
  --bronze:#8b6848;
  --line:#d6d1c7;
  --serif:"Noto Serif KR","Iropke Batang","Batang",Georgia,serif;
  --sans:Pretendard,"Apple SD Gothic Neo","Malgun Gothic","Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{background:var(--paper);color:var(--ink);scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.78;word-break:keep-all;overflow-wrap:anywhere}
a{color:inherit;text-underline-offset:4px}
.legal-header{border-bottom:1px solid var(--line)}
.legal-nav{width:min(1120px,calc(100% - 40px));min-height:72px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.wordmark{font-family:var(--serif);font-size:20px;letter-spacing:.14em;text-decoration:none}
.back{color:var(--muted);font-size:14px}
.legal-layout{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:64px 0 96px;display:grid;grid-template-columns:minmax(220px,330px) minmax(0,700px);gap:clamp(48px,8vw,112px);align-items:start}
.legal-intro{position:sticky;top:32px}
.eyebrow{margin:0 0 18px;color:var(--bronze);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.035em}
h1{margin:0;font-size:clamp(38px,5vw,68px);line-height:1.12}
.effective{margin:24px 0 0;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
.summary{margin:0 0 56px;padding:24px 0;border-top:3px solid var(--ink);border-bottom:1px solid var(--line);font-size:20px;line-height:1.7}
.legal-body section{padding:0 0 44px;margin:0 0 44px;border-bottom:1px solid var(--line)}
.legal-body section:last-of-type{margin-bottom:0}
h2{margin:0 0 18px;font-size:26px;line-height:1.35}
p{margin:0 0 14px}
ul{margin:0;padding-left:20px}
li{margin:0 0 10px}
.fact{background:var(--surface);border-left:3px solid var(--bronze);padding:18px 20px;margin:18px 0}
.fact p:last-child{margin-bottom:0}
.label{display:inline-block;margin-right:8px;color:var(--bronze);font-size:12px;font-weight:800;letter-spacing:.08em}
.legal-footer{padding:28px 20px 48px;border-top:1px solid var(--line);color:var(--muted);text-align:center;font-size:13px}
.notice-page{min-height:100vh;display:grid;place-items:center;padding:32px 20px}
.notice{width:min(720px,100%);border-top:4px solid var(--ink);border-bottom:1px solid var(--line);padding:40px 0}
.notice h1{font-size:clamp(36px,8vw,68px);margin-bottom:24px}
.notice p{font-size:18px;color:var(--muted)}
.notice-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border:1px solid var(--ink);text-decoration:none;font-weight:700}
.button.primary{background:var(--ink);color:var(--surface)}
.button:focus-visible,a:focus-visible{outline:3px solid var(--bronze);outline-offset:4px}
@media(max-width:760px){
  body{font-size:16px}
  .legal-nav{width:min(100% - 28px,1120px)}
  .legal-layout{width:min(100% - 28px,1120px);padding:42px 0 72px;display:block}
  .legal-intro{position:static;margin-bottom:48px}
  .summary{font-size:18px}
  .legal-body section{padding-bottom:34px;margin-bottom:34px}
  h2{font-size:23px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
