/* 약관/정책 문서 */
.policy-doc { text-align: left; }
.policy-doc .policy-kicker { margin-left: 50%; transform: translateX(-50%); }
.policy-doc h1 { text-align: center; }
.policy-lead { margin: 0 auto 30px !important; max-width: 620px; color: #475569 !important; font-size: 16px !important; line-height: 1.75 !important; text-align: center; }
.policy-section { padding: 22px 0; border-top: 1px solid #e6ebf2; }
.policy-section:first-of-type { border-top: 0; padding-top: 6px; }
.policy-section h2 { margin: 0 0 10px; color: #111827; font-size: 18px; font-weight: 900; letter-spacing: 0; }
.policy-section p { margin: 0; color: #475569; font-size: 15px; line-height: 1.8; word-break: keep-all; }
@media (max-width: 800px) {
    .policy-section { padding: 18px 0; }
    .policy-section h2 { font-size: 16px; }
    .policy-section p { font-size: 14px; line-height: 1.75; }
    .policy-lead { margin-bottom: 24px !important; font-size: 14px !important; }
}
/* 약관/정책 하단 정보 */
.policy-meta { margin-top: 8px; padding: 20px; border: 1px solid #e6ebf2; border-radius:14px; background: #f8fafc; }
.policy-meta dl { display: grid; gap: 10px; margin: 0; }
.policy-meta dl div { display: flex; align-items: center; gap: 12px; white-space: nowrap; }
.policy-meta dt { margin: 0; color: #64748b; font-size: 14px; font-weight: 800; }
.policy-meta dd { margin: 0; color: #111827; font-size: 14px; font-weight: 400; }
@media (max-width: 800px) {
    .policy-meta { padding: 16px; }
    .policy-meta dl div { display: flex; gap: 8px; white-space: nowrap; }
}
