/* 개인정보처리방침 · 이용약관 — 사이트 디자인 컨셉(Pretendard · #f8fafc 카드 · 라운드) */
.legal { width: 900px; margin: 0 auto; padding: 100px 0 150px; color: #000; }
.legal-title { font-size: 30px; font-weight: 600; line-height: normal; }
.legal-date { margin-top: 12px; font-size: 15px; color: #707070; }
.legal-lead { margin-top: 40px; padding: 28px 30px; border-radius: 20px; background: #f8fafc; font-size: 16px; line-height: 1.8; color: #2e2e27; }
.legal-sec { margin-top: 50px; }
.legal-sec h2 { margin-bottom: 16px; font-size: 20px; font-weight: 600; line-height: normal; }
.legal-sec p, .legal-sec li { font-size: 16px; line-height: 1.8; color: #4b4b4b; }
.legal-sec p + p, .legal-sec p + ol, .legal-sec ol + p, .legal-sec .legal-table + p, .legal-sec p + .legal-table { margin-top: 12px; }
.legal-sec ol { list-style: decimal; padding-left: 22px; }
.legal-sec ul { list-style: disc; padding-left: 22px; margin-top: 6px; }
.legal-sec li + li { margin-top: 6px; }
.legal-sec a { color: #3182f6; text-decoration: underline; text-underline-offset: 3px; }
.legal-table { overflow-x: auto; border-radius: 20px; background: #f8fafc; }
.legal-table table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.6; }
.legal-table th, .legal-table td { padding: 16px 22px; text-align: left; vertical-align: top; }
.legal-table thead th { color: #707070; font-weight: 600; font-size: 14px; }
.legal-table tbody th { width: 200px; font-weight: 600; color: #000; }
.legal-table tr + tr, .legal-table thead + tbody tr:first-child { border-top: 1px solid #eceff3; }
.legal-table td { color: #2e2e27; }

@media (max-width: 1023px) {
  .legal { width: min(650px, 100% - 40px); padding: 80px 0 100px; }
  .legal-title { font-size: 25px; }
  .legal-sec { margin-top: 40px; }
  .legal-sec h2 { font-size: 18px; }
}
@media (max-width: 767px) {
  .legal { width: calc(100% - 55px); padding: 50px 0 80px; }
  .legal-title { font-size: 22px; }
  .legal-lead { margin-top: 30px; padding: 20px; border-radius: 16px; font-size: 15px; }
  .legal-sec { margin-top: 36px; }
  .legal-sec h2 { font-size: 17px; }
  .legal-sec p, .legal-sec li { font-size: 15px; }
  .legal-table { border-radius: 16px; }
  .legal-table th, .legal-table td { padding: 12px 14px; font-size: 14px; }
  .legal-table tbody th { width: 110px; }
}

/* 404 */
.nf-links { display: flex; flex-wrap: wrap; gap: 12px; margin: 40px 0 0; padding: 0; list-style: none; }
.nf-links a { display: inline-flex; padding: 14px 22px; border-radius: 100px; background: #f2f4f6; font-size: 16px; font-weight: 600; color: #191f28; text-decoration: none; }
.nf-links a:hover { background: #e5e8eb; }
.nf-links li:first-child a { background: #3182f6; color: #fff; }
