:root { --ink:#1d252b; --paper:#f3eee5; --oxide:#9b6449; --line:rgba(29,37,43,.2); }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Noto Sans KR","Noto Sans JP",sans-serif; line-height:1.8; }
a { color:inherit; }
:focus-visible { outline:2px solid var(--oxide); outline-offset:4px; }
.legal-header { display:flex; min-height:80px; padding:0 clamp(1.25rem,5vw,5rem); align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.legal-header > a { display:flex; gap:.65rem; align-items:center; text-decoration:none; }
.legal-mark { display:block; width:38px; height:38px; flex:0 0 auto; }
.legal-header nav { display:flex; gap:.8rem; font-size:.7rem; }
.legal-intro { padding:clamp(5rem,9vw,9rem) clamp(1.25rem,8vw,10rem); background:var(--ink); color:#fffaf1; }
.legal-intro > p:first-child { font-size:.65rem; letter-spacing:.2em; }
.legal-intro h1 { max-width:900px; margin:1rem 0; font-family:Georgia,"Noto Serif KR",serif; font-size:clamp(3.5rem,8vw,8rem); font-weight:400; line-height:1; letter-spacing:-.06em; }
.legal-intro > p:last-child { color:rgba(255,250,241,.62); font-size:.75rem; }
.legal-document { max-width:960px; margin:0 auto; padding:clamp(5rem,8vw,8rem) clamp(1.25rem,5vw,4rem); scroll-margin-top:1rem; }
.legal-document + .legal-document { border-top:1px solid var(--ink); }
.language-label { margin:0; color:var(--oxide); font-size:.68rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.legal-document > h2 { margin:1rem 0 4rem; font-family:Georgia,"Noto Serif KR","Noto Serif JP",serif; font-size:clamp(2.3rem,5vw,4.8rem); font-weight:400; line-height:1.12; letter-spacing:-.045em; }
.legal-document section { display:grid; grid-template-columns:minmax(180px,.42fr) minmax(0,1fr); gap:clamp(1.5rem,5vw,5rem); padding:2rem 0; border-top:1px solid var(--line); }
.legal-document h3 { margin:0; font-size:.95rem; }
.legal-document section p { margin:0; color:rgba(29,37,43,.75); }
.legal-caution { margin-top:3rem; padding:1.2rem; border-left:3px solid var(--oxide); background:rgba(155,100,73,.08); font-size:.82rem; }
@media (max-width:680px) { .legal-document section { grid-template-columns:1fr; gap:.6rem; } .legal-header { min-height:70px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
