@charset "utf-8";

/*
 * 이용약관 · 개인정보처리방침 · 손해배상 청구절차 (2026-10-19 · site/policy.blade.php)
 * 머리 = 사진 없는 사례 판과 같은 어두운 금빛 바탕 · 본문 = 흰 종이 · 표 · 목록 · 소제목은 읽기 쉽게.
 * 공통 CSS 가 ul · li 점을 지우고(default.css) 제목 크기를 1em 으로 두므로 여기서 다시 준다.
 */
.policy_page { background:#f7f5f1; padding:0 0 100px; }
.policy_in { max-width:960px; margin:0 auto; padding:0 20px; box-sizing:border-box; }

.policy_hd { background:linear-gradient(160deg, #3d352e 0%, #27221e 58%, #1b1815 100%); padding:110px 0 90px; text-align:center; }
.policy_hd .policy_kicker { margin:0 0 14px; color:#d4bc84; font-size:13px; letter-spacing:4px; }
.policy_hd h2 { margin:0; color:#fff; font-size:36px; font-weight:700; line-height:1.3; word-break:keep-all; }

.policy_tabs { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:40px 0 30px; }
.policy_tabs a { display:inline-block; padding:9px 18px; border:1px solid #e3d3ad; border-radius:999px; background:#fff; color:#8a6d2f; font-size:14px; line-height:1.4; text-decoration:none; }
.policy_tabs a:hover,
.policy_tabs a:focus-visible { border-color:#c5a059; outline:none; }
.policy_tabs a.on { border-color:#c5a059; background:#c5a059; color:#fff; }

.policy_date { margin:0 0 12px; color:#888; font-size:14px; text-align:right; }

.policy_doc { padding:40px 44px; border:1px solid #ece7dd; border-radius:12px; background:#fff; color:#333; font-size:15px; line-height:1.85; word-break:keep-all; overflow-wrap:anywhere; box-sizing:border-box; }
.policy_doc > :first-child { margin-top:0; }
.policy_doc h1, .policy_doc h2 { margin:32px 0 12px; color:#111; font-size:21px; font-weight:700; line-height:1.5; }
.policy_doc h3 { margin:28px 0 10px; color:#111; font-size:18px; font-weight:700; line-height:1.5; }
.policy_doc h4, .policy_doc h5, .policy_doc h6 { margin:22px 0 8px; color:#222; font-size:16px; font-weight:700; line-height:1.5; }
.policy_doc p { margin:0 0 12px; }
.policy_doc ul, .policy_doc ol { margin:0 0 14px; padding-left:22px; }
.policy_doc ul li { list-style:disc; }
.policy_doc ol li { list-style:decimal; }
.policy_doc li { display:list-item; margin:4px 0; }
.policy_doc b, .policy_doc strong { font-weight:700; }
.policy_doc a { color:#8a6d2f; text-decoration:underline; }
.policy_doc hr { margin:24px 0; border:0; border-top:1px solid #eee; }
.policy_doc blockquote { margin:0 0 14px; padding:10px 16px; border-left:3px solid #d4bc84; background:#faf7f0; color:#555; }
.policy_doc .policy_tbl { margin:12px 0 18px; overflow-x:auto; }
.policy_doc table { width:100%; margin:0; border-collapse:collapse; font-size:14px; line-height:1.6; }
/* 칸 글은 낱말 중간에서 안 끊음 — 칸이 많은 표가 휴대폰에서 글자 단위로 짓눌리지 않고 표 칸(.policy_tbl) 안에서만 옆으로 밀린다 */
.policy_doc th, .policy_doc td { padding:8px 10px; border:1px solid #ddd; vertical-align:top; text-align:left; word-break:keep-all; overflow-wrap:normal; }
.policy_doc th { background:#f7f3ea; font-weight:700; }
.policy_doc img { max-width:100%; height:auto; }

.policy_empty { padding:80px 20px 60px; border:1px dashed #e3d3ad; border-radius:12px; background:#fff; text-align:center; }
.policy_empty p { margin:0; color:#555; font-size:17px; }

@media screen and (max-width:900px) {
    .policy_page { padding-bottom:60px; }
    .policy_in { padding:0 16px; }
    .policy_hd { padding:70px 0 56px; }
    .policy_hd .policy_kicker { font-size:12px; letter-spacing:3px; }
    .policy_hd h2 { font-size:26px; }
    .policy_tabs { margin:24px 0 20px; gap:6px; }
    .policy_tabs a { padding:8px 13px; font-size:13px; }
    .policy_date { font-size:13px; }
    .policy_doc { padding:24px 18px; font-size:14.5px; }
    .policy_doc h1, .policy_doc h2 { font-size:18px; }
    .policy_doc h3 { font-size:16.5px; }
    .policy_empty { padding:56px 16px 44px; }
}
