/* ONFORM — 법적 고지 페이지(privacy / terms) 공용 스타일. tokens.css 기반. */
*, *::before, *::after { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--c-sand);
  color: var(--c-ink);
  font-family: var(--f-body);
  font-size: 1rem;
  line-height: 1.7;
  letter-spacing: var(--ls-body);
  word-break: keep-all;
  overflow-wrap: break-word;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; }

.legal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--sp-5) var(--pad-x);
  border-bottom: 1px solid var(--c-hairline);
}
.legal-header .brand { font-family: var(--f-display); font-size: 1.5rem; letter-spacing: 0.02em; text-decoration: none; color: var(--c-espresso); }
.legal-header .back {
  font-family: var(--f-mono);
  font-size: var(--fs-label);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--c-taupe);
  text-decoration: none;
}
.legal-header .back:hover { color: var(--c-espresso); }

.legal { max-width: 760px; margin: 0 auto; padding: clamp(48px, 8vw, 96px) var(--pad-x) clamp(64px, 10vw, 120px); }
.legal h1 {
  font-family: var(--f-display);
  font-weight: 400;
  font-size: var(--fs-h2);
  line-height: var(--lh-h2);
  letter-spacing: var(--ls-h2);
  color: var(--c-espresso);
  margin: 0 0 var(--sp-4);
}
.legal .effective {
  font-family: var(--f-mono);
  font-size: var(--fs-label);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--c-clay);
  margin: 0 0 var(--sp-9);
}
.legal h2 {
  font-family: var(--f-display);
  font-weight: 400;
  font-size: var(--fs-h5);
  letter-spacing: -0.01em;
  color: var(--c-espresso);
  margin: var(--sp-8) 0 var(--sp-3);
}
.legal p { color: var(--c-ink); margin: 0 0 var(--sp-4); }
.legal ul { margin: 0 0 var(--sp-4); padding-left: 1.2em; color: var(--c-ink); }
.legal li { margin-bottom: var(--sp-2); }
.legal .muted { color: var(--c-taupe); }

.legal-foot {
  border-top: 1px solid var(--c-hairline);
  padding: var(--sp-7) var(--pad-x);
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-5);
  justify-content: space-between;
}
.legal-foot p, .legal-foot a {
  font-family: var(--f-mono);
  font-size: var(--fs-label);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--c-taupe);
  margin: 0;
  text-decoration: none;
}
.legal-foot a:hover { color: var(--c-espresso); }
