/* =========================================================
   개인정보처리방침 (/privacy) — 문서형 페이지 (2026-10-02)
   헤어라인 구획, 단일 서체, 장식 없음. 본문 문구는 partials/privacy_content.
   ========================================================= */
.kp-head{padding:44px 0 0}
.kp-head .kh-page-title{margin:0}
.kp-lead{margin:12px 0 0;font-size:16px;line-height:1.6;color:var(--body)}

.kp-wrap{padding:36px 0 104px}
.kp-layout{display:grid;grid-template-columns:200px minmax(0,1fr);column-gap:72px;align-items:start;border-top:1px solid var(--ink)}

/* 목차 */
.kp-toc{position:sticky;top:calc(var(--header-h,72px) + 28px);padding-top:28px}
.kp-toc-title{margin:0 0 10px;font-size:13px;font-weight:600;line-height:1.4;color:#8b95a1}
.kp-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}
.kp-toc li{margin:0}
.kp-toc a{display:flex;gap:10px;margin-left:-1px;padding:7px 0 7px 14px;border-left:2px solid transparent;
  font-size:14px;line-height:1.45;color:#6b7684;text-decoration:none;transition:color .15s,border-color .15s}
.kp-toc a:hover{color:var(--ink)}
.kp-toc a[aria-current]{color:var(--ink);font-weight:600;border-left-color:var(--brand)}
.kp-toc a:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.kp-n{flex:none;font-variant-numeric:tabular-nums;letter-spacing:0;color:#a0a7b1;font-weight:500}
.kp-toc a[aria-current] .kp-n{color:var(--brand)}

/* 본문 */
.kp-sec{padding:28px 0 32px;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--header-h,72px) + 12px)}
.kp-sec:last-child{border-bottom:0}
.kp-sec-h{display:flex;align-items:baseline;gap:14px;margin:0 0 14px;font-size:20px;font-weight:700;line-height:1.4;letter-spacing:-.02em;color:var(--ink)}
.kp-sec-h .kp-n{font-size:15px;font-weight:600;color:var(--brand)}
.kp-sec-b{max-width:760px;padding-left:31px}
.kp-sec-b p{margin:0;font-size:16px;line-height:1.8;color:var(--body);word-break:keep-all}
.kp-sec-b p + p{margin-top:10px}
.kp-sec-b ul{list-style:none;margin:0;padding:0}
.kp-sec-b li{position:relative;margin:0;padding-left:14px;font-size:16px;line-height:1.8;color:var(--body);word-break:keep-all}
.kp-sec-b li + li{margin-top:4px}
.kp-sec-b li:before{content:'';position:absolute;left:0;top:.82em;width:4px;height:4px;border-radius:50%;background:#b0b8c1}
.kp-sec-b a{color:var(--ink);text-decoration:underline;text-decoration-color:#c4cad1;text-underline-offset:3px}
.kp-sec-b a:hover{text-decoration-color:currentColor}

/* "항목: 내용" 목록 */
.kp-sec-b .kp-kvlist li{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:20px;padding:13px 0;border-top:1px solid var(--line-2,#f2f4f6)}
.kp-sec-b .kp-kvlist li:first-child{padding-top:2px;border-top:0}
.kp-sec-b .kp-kvlist li:last-child{padding-bottom:0}
.kp-sec-b .kp-kvlist li + li{margin-top:0}
.kp-sec-b .kp-kvlist li:before{display:none}
.kp-k{font-size:15px;font-weight:600;line-height:1.8;color:var(--ink)}
.kp-v{min-width:0}

/* 책임자 연락처 */
.kp-dl{margin:0;border:1px solid var(--line);border-radius:8px;background:#fff}
.kp-dl div{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:20px;padding:13px 20px;border-top:1px solid var(--line)}
.kp-dl div:first-child{border-top:0}
.kp-dl dt{font-size:15px;font-weight:600;line-height:1.7;color:var(--ink)}
.kp-dl dd{margin:0;min-width:0;font-size:16px;line-height:1.7;color:var(--body);overflow-wrap:anywhere}

@media (prefers-reduced-motion:no-preference){html:has(.kp-toc){scroll-behavior:smooth}}

/* 태블릿·모바일: 목차를 본문 위 목록으로 */
@media (max-width:1023px){
  .kp-head{padding-top:36px}
  .kp-wrap{padding:28px 0 88px}
  .kp-layout{grid-template-columns:minmax(0,1fr)}
  .kp-toc{position:static;padding:18px 0 20px;border-bottom:1px solid var(--line)}
  .kp-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;border-left:0}
  .kp-toc a{margin-left:0;padding:7px 0;border-left:0}
  .kp-toc a[aria-current]{font-weight:inherit;color:#6b7684}
  .kp-toc a[aria-current] .kp-n{color:#a0a7b1}
}
@media (max-width:639px){
  .kp-head{padding-top:26px}
  .kp-lead{margin-top:8px;font-size:15px}
  .kp-wrap{padding:22px 0 72px}
  .kp-toc{padding:14px 0 16px}
  .kp-toc a{font-size:14px;gap:8px}
  .kp-sec{padding:24px 0 26px}
  .kp-sec-h{gap:10px;margin-bottom:12px;font-size:18px}
  .kp-sec-h .kp-n{font-size:14px}
  .kp-sec-b{padding-left:0}
  .kp-sec-b p,.kp-sec-b li{font-size:15px;line-height:1.75}
  .kp-sec-b .kp-kvlist li{grid-template-columns:minmax(0,1fr);row-gap:2px;padding:12px 0}
  .kp-sec-b .kp-kvlist li:first-child{padding-top:0}
  .kp-sec-b .kp-kvlist li:last-child{padding-bottom:0}
  .kp-k{font-size:14px;line-height:1.6}
  .kp-dl div{grid-template-columns:72px minmax(0,1fr);column-gap:12px;padding:12px 16px}
  .kp-dl dt{font-size:14px}
  .kp-dl dd{font-size:15px}
}
@media (max-width:379px){
  .kp-toc ol{grid-template-columns:minmax(0,1fr)}
}
