/* หน้านโยบายความเป็นส่วนตัว / เงื่อนไขการให้บริการ: สารบัญซ้าย + การ์ดหัวข้อ (inc/legal.php) */
.lg-sec { padding: 56px 0 72px; }
.lg-wrap { display: grid; align-items: start; grid-template-columns: 300px minmax(0, 1fr); gap: 32px; }
.lg-toc { position: sticky; top: calc(var(--hd-h, 76px) + 20px); padding: 22px 22px 20px; background: #fff; border: 1px solid var(--green-100); border-radius: 22px; box-shadow: 0 10px 28px rgba(0, 82, 65, .07); }
.lg-toc > b { display: block; margin-bottom: 12px; padding-bottom: 12px; color: var(--green-950); border-bottom: 1px solid var(--line); font-size: 16px; font-weight: 700; }
.lg-toc ol { display: grid; margin: 0; padding: 0; gap: 2px; list-style: none; }
.lg-toc a { display: flex; padding: 8px 10px; align-items: center; gap: 12px; color: var(--text); border-radius: 12px; font-size: 14.5px; line-height: 1.4; text-decoration: none; transition: background .15s ease, color .15s ease; }
.lg-toc a span { display: grid; width: 26px; height: 26px; flex: none; place-items: center; color: var(--green-800); background: var(--green-100); border-radius: 50%; font-size: 12.5px; font-weight: 700; }
.lg-toc a:hover { color: var(--green-800); background: var(--green-50); }
.lg-list { display: grid; gap: 16px; }
.lg-card { display: flex; padding: 26px 30px; align-items: flex-start; gap: 20px; scroll-margin-top: calc(var(--hd-h, 76px) + 20px); background: #fff; border: 1px solid var(--green-100); border-radius: 22px; box-shadow: 0 8px 22px rgba(0, 82, 65, .05); }
.lg-no { display: grid; width: 44px; height: 44px; flex: none; place-items: center; color: #fff; background: var(--green-700); border-radius: 14px; box-shadow: 0 0 0 5px var(--green-100); font-size: 18px; font-weight: 700; }
.lg-body { min-width: 0; flex: 1; }
.lg-body h2 { margin: 6px 0 10px; color: var(--green-950); font-size: 21px; font-weight: 700; line-height: 1.35; }
.lg-body p,
.lg-body li { margin: 0; color: var(--text); font-size: 15px; line-height: 1.85; }
.lg-body p + p { margin-top: 10px; }
.lg-body ul { display: grid; margin: 4px 0 0; padding: 0; gap: 8px; list-style: none; }
.lg-body li { position: relative; padding-left: 26px; }
.lg-body li::before { position: absolute; top: .55em; left: 0; width: 16px; height: 16px; content: "\2713"; display: grid; place-items: center; color: var(--green-700); background: var(--green-100); border-radius: 50%; font-size: 10px; font-weight: 800; line-height: 1; transform: translateY(-4px); }
.lg-body a { color: var(--green-700); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 980px) {
    .lg-wrap { grid-template-columns: 1fr; gap: 20px; }
    .lg-toc { position: static; }
    .lg-toc ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .lg-sec { padding: 32px 0 48px; }
    .lg-toc ol { grid-template-columns: 1fr; }
    .lg-card { padding: 20px 18px; gap: 14px; }
    .lg-no { width: 38px; height: 38px; font-size: 16px; }
}