/*
 * 푸터 약관 페이지 (개인정보처리방침 · 이메일무단수집거부) — 시안에 없는 테마 화면
 *
 * 로그인 · 회원가입과 같은 가벼운 머리(위치 표시 + 가운데 제목)와 색을 쓴다.
 * 긴 글을 읽는 화면이라 본문 폭을 줄이고 줄 간격을 넉넉히 둔다.
 */
.policy-main{background:#fff;padding:26px 0 96px;color:#1c304b}
.policy-main>.wrap{max-width:1280px}
.policy-breadcrumb{display:flex;justify-content:flex-end;gap:10px;align-items:center;font-size:11px;color:#718096;margin:0 0 40px}
.policy-breadcrumb span{color:#abb6c4}
.policy-breadcrumb strong{font-weight:600;color:#3f526c}
.policy-breadcrumb a{color:inherit}

.policy-heading{text-align:center;max-width:720px;margin:0 auto 48px}
.policy-eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#3269c0}
.policy-heading h1{margin-top:10px;font-size:36px;line-height:1.3;letter-spacing:-.045em;font-weight:700}
.policy-intro{margin-top:13px;font-size:15px;line-height:1.8;color:#718096;word-break:keep-all}

.policy-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:start;max-width:1040px;margin:0 auto}
.policy-layout--single{grid-template-columns:minmax(0,1fr);max-width:760px}

.policy-body{min-width:0;padding:36px 40px;border:1px solid #e5eaf0;border-radius:8px;background:#fff;font-size:15px;line-height:1.9;color:#40546e;word-break:keep-all;overflow-wrap:anywhere}
.policy-text{white-space:pre-wrap}
.policy-html h2,.policy-html h3,.policy-html h4{margin:1.6em 0 .6em;font-size:17px;line-height:1.5;font-weight:650;color:#1c304b}
.policy-html h2:first-child,.policy-html h3:first-child{margin-top:0}
.policy-html p{margin:0 0 1em}
.policy-html ul,.policy-html ol{margin:0 0 1em;padding-left:1.4em}
.policy-html table{width:100%;margin:0 0 1.2em;border-collapse:collapse;font-size:13px;line-height:1.7}
.policy-html th,.policy-html td{padding:10px 12px;border:1px solid #e3e9f0;text-align:left;vertical-align:top}
.policy-html th{background:#f4f7fb;font-weight:600;color:#355477}
.policy-html img{max-width:100%;height:auto}

.policy-empty{font-size:15px;color:#596c83}
.policy-admin-note{margin-top:16px;padding:14px 16px;border-radius:6px;background:#fff7e6;border:1px solid #f3d9a4;font-size:13px;line-height:1.7;color:#7a5412}

.policy-lead{font-size:16px;line-height:1.9;color:#1c304b}
.policy-law{margin-top:28px;padding:24px 26px;border-radius:8px;background:#f5f8fd;border:1px solid #e1e9f4}
.policy-law h2{font-size:15px;line-height:1.6;font-weight:650;color:#1c304b}
.policy-law h2 small{font-size:13px;font-weight:500;color:#596c83}
.policy-law ol{margin:14px 0 0;padding-left:1.5em;font-size:14px;line-height:1.85;color:#40546e;list-style:decimal}
.policy-law li+li{margin-top:8px}

.policy-contact{position:sticky;top:110px;padding:26px 24px;border:1px solid #e1e9f4;border-radius:8px;background:#f5f8fd}
.policy-contact h2{font-size:16px;font-weight:650;letter-spacing:-.02em;color:#1c304b}
.policy-contact dl{display:grid;gap:10px;margin:16px 0 0;font-size:14px}
.policy-contact dl div{display:flex;justify-content:space-between;gap:12px}
.policy-contact dt{flex:0 0 auto;color:#7b8ba0}
.policy-contact dd{margin:0;font-weight:600;text-align:right;overflow-wrap:anywhere}
.policy-contact dd a{color:#3269c0}
.policy-contact p{margin-top:16px;padding-top:14px;border-top:1px solid #dae3ee;font-size:12px;line-height:1.7;color:#718096;word-break:keep-all}

.policy-switch{display:flex;justify-content:center;gap:10px;margin:48px auto 0}
.policy-switch a{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1px solid #d8e1eb;border-radius:22px;font-size:14px;color:#506884;background:#fff}
.policy-switch a[aria-current="page"]{border-color:#3269c0;background:#3269c0;color:#fff;font-weight:600}
@media (hover:hover){.policy-switch a:not([aria-current]):hover{border-color:#82a6dc;color:#2e5fa8}}
.policy-main a:focus-visible{outline:3px solid #82a9dc;outline-offset:3px}

@media (max-width:1000px){
  .policy-layout{grid-template-columns:minmax(0,1fr);gap:24px;max-width:760px}
  .policy-contact{position:static}
}
@media (max-width:767px){
  .policy-main{padding:20px 0 64px}
  .policy-breadcrumb{margin-bottom:32px}
  .policy-heading{margin-bottom:32px}
  .policy-heading h1{font-size:28px}
  .policy-intro{font-size:14px}
  .policy-body{padding:24px 20px;font-size:14px}
  .policy-lead{font-size:15px}
  .policy-law{padding:20px 18px}
  .policy-switch{flex-wrap:wrap;margin-top:36px}
}
