@charset "utf-8";
/* =====================================================
   개인정보처리방침 — customer/css/privacy.css
   ===================================================== */

.pvWrap { display:flex; flex-direction:column; gap:22px; }

/* ── 머리말 ── */
.pvIntro {
	padding:18px 16px;
	border:1px solid var(--c_line); border-radius:10px; background:var(--c_soft);
	color:var(--c_muted); font-size:var(--fs14); line-height:1.75; letter-spacing:-.02em;
}
.pvIntro p + p { margin-top:9px; }

/* ── 조항 ── */
.pvArt { display:flex; flex-direction:column; gap:11px; }
.pvTit {
	display:flex; align-items:baseline; flex-wrap:wrap; gap:8px;
	padding-bottom:10px; border-bottom:1px solid var(--c_base2);
	font-family:var(--f_en), var(--f_title), var(--f_base1), sans-serif;
	color:var(--c_ink); font-size:var(--fs18); font-weight:800; letter-spacing:-.03em; line-height:1.35;
}
.pvTit .no {
	flex:0 0 auto; padding:4px 9px; border-radius:5px;
	background:var(--c_base1); color:#fff;
	font-size:var(--fs12); font-weight:700; letter-spacing:0; line-height:1; transform:translateY(-2px);
}

.pvBody { color:var(--c_muted); font-size:var(--fs15); line-height:1.75; letter-spacing:-.02em; }
.pvBody > p + p { margin-top:8px; }
.pvBody b { color:var(--c_ink); font-weight:700; }

/* 번호 목록 (ⓛ ② …) */
/* reset.css 의 `.d-page ul` (0,1,1) 이 padding/margin 을 0 으로 덮으므로
   부모 .pvBody 를 붙여 (0,2,0) 으로 우선순위를 올린다. */
.pvBody .pvList, .pvBody .pvSub { display:flex; flex-direction:column; gap:8px; margin-top:11px; }
.pvBody .pvList li, .pvBody .pvSub li { display:flex; align-items:flex-start; gap:8px; }
/* 원문자(ⓛ ② ③)는 글리프가 em 박스보다 작게 그려져 본문보다 한 단계 키운다.
   line-height 는 길이값으로 지정해 본문 첫 줄과 베이스라인을 맞춘다. */
.pvBody .pvList .mk {
	flex:0 0 auto; min-width:22px;
	color:#000; font-size:var(--fs20); font-weight:400;
	line-height:calc(var(--fs15) * 1.75);
}
.pvBody .pvSub .mk {
	flex:0 0 auto; min-width:22px; white-space:nowrap;
	color:#8b99ab; font-size:var(--fs13); font-weight:400;
	line-height:calc(var(--fs13) * 1.7);
}
.pvBody .pvList p, .pvBody .pvSub p { flex:1 1 auto; min-width:0; }

/* 하위 목록 (가. 나. 다.) — 한 단계 들여쓰기 */
.pvBody .pvSub { gap:6px; margin-top:8px; padding:13px 14px; border-radius:8px; background:#f5f7fa; }
.pvBody .pvSub p { font-size:var(--fs13); line-height:1.7; }

/* ── 개인정보보호 책임자 ── */
.pvOfficer {
	margin-top:13px; padding:16px 16px 15px;
	border:1px solid var(--c_line); border-left:3px solid var(--c_base1); border-radius:8px; background:#fff;
	box-shadow:var(--shadow1);
}
.pvOfficer .ot {
	display:block; margin-bottom:10px; padding-bottom:9px; border-bottom:1px solid var(--c_line);
	color:var(--c_ink); font-size:var(--fs15); font-weight:800; letter-spacing:-.02em;
}
.pvOfficer .oc { display:flex; flex-direction:column; gap:6px; }
.pvOfficer .oc li { display:flex; align-items:flex-start; gap:10px; }
.pvOfficer .oc .lb {
	flex:0 0 54px; padding-top:1px;
	color:#8b99ab; font-size:var(--fs13); font-weight:700; letter-spacing:.02em;
}
.pvOfficer .oc .vl { flex:1 1 auto; min-width:0; color:var(--c_ink); font-size:var(--fs14); font-weight:600; line-height:1.6; word-break:break-all; }
.pvOfficer .oc .vl a:hover { color:var(--c_base1); text-decoration:underline; }

/* ── 좁은 화면 (360px 이하) ── */
@media screen and (max-width: 360px) {
	.pvTit { font-size:var(--fs16); }
	.pvOfficer .oc .lb { flex:0 0 48px; }
}

/* ── 태블릿 이상 (600px~) ── */
@media screen and (min-width: 600px) {
	.pvWrap { gap:26px; }
	.pvIntro { padding:22px 20px; font-size:var(--fs15); }
	.pvTit { font-size:var(--fs20); }
	.pvBody { font-size:var(--fs15); }
	.pvBody .pvSub { padding:16px 18px; }
	.pvBody .pvSub p { font-size:var(--fs14); }
	.pvBody .pvSub .mk { font-size:var(--fs14); line-height:calc(var(--fs14) * 1.7); }
	.pvOfficer { padding:20px 20px 19px; }
}
