/* ── 정책 페이지 ─────────────────────────────────────────────────────── */
.legal { padding-block: calc(var(--nav-h) + 48px) var(--space-section); }
.legal__panel { padding: clamp(28px, 5vw, 64px); }
.legal__panel h1 {
  margin-bottom: 24px;
  font-family: var(--font-display);
  font-size: clamp(2rem, 1.4rem + 2.4vw, 3rem);
  color: transparent;
  background: var(--g-gold-text);
  -webkit-background-clip: text;
  background-clip: text;
}
.legal__updated { margin-top: -12px; color: var(--c-text-dim); font-size: .9375rem; }
.legal__panel h3 { margin: 24px 0 8px; color: #fff4c9; font-size: 1.125rem; }
.legal__panel h2 { margin: 40px 0 12px; color: #fff4c9; font-family: var(--font-display); font-size: clamp(1.25rem, 1.1rem + .6vw, 1.5rem); }
.legal__panel p,
.legal__panel li { max-width: 70ch; font-size: 1.0625rem; line-height: 1.7; }
.legal__panel p { margin-bottom: 14px; }
.legal__panel ul,
.legal__panel ol { margin: 0 0 14px 1.25em; padding: 0; }
.legal__panel a { color: var(--c-gold-light); overflow-wrap: anywhere; }
.legal__panel a.btn { color: #fff; overflow-wrap: normal; }
.legal__panel .delete-steps li { margin-bottom: 8px; }
.delete-request { margin: 20px 0 8px; }
.delete-request .btn { padding-inline: clamp(1em, 4vw, 1.6em); font-size: clamp(1rem, .9rem + .5vw, 1.125rem); white-space: nowrap; }

/* ── 404 ─────────────────────────────────────────────────────────────── */
.page-404 .site-nav .play-badge { margin-left: auto; }
.error { display: grid; place-items: center; min-height: 100dvh; padding: calc(var(--nav-h) + 32px) 0 64px; text-align: center; }
.error__inner { display: grid; justify-items: center; gap: 20px; }
.error__machine {
  display: flex;
  gap: 10px;
  padding: 14px;
  border-radius: var(--r-panel);
  background: var(--g-panel);
  box-shadow: 0 0 0 3px #c26d0e, var(--shadow-panel);
}
.error__reel {
  display: grid;
  place-items: center;
  width: clamp(64px, 14vw, 104px);
  aspect-ratio: 244 / 435;
  overflow: hidden;
  border-radius: var(--r-inset);
  background: linear-gradient(90deg, #cdb894, #fff9ec 50%, #cdb894);
}
.error__reel img { width: 100%; height: 100%; object-fit: cover; }
.error__reel--chip img { width: 70%; height: auto; object-fit: contain; }
.error p { color: var(--c-text-dim); font-size: 1.125rem; }
