/* privacy-policy page specific CSS */
:root { --red:#B91C1C;--red-soft:#FEF2F2;--dark:#111827;--dark2:#1F2937;--body:#475569;--bg:#F8FAFC;--white:#FFFFFF;--border:#E2E8F0;--maxw:1240px; }
html { scroll-behavior:smooth;scroll-padding-top:100px; }
h2 { font-size:30px;line-height:1.2; }
h3 { font-size:20px;line-height:1.3; }
.btn { display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:8px;font-weight:600;font-size:15px;border:1.5px solid transparent;cursor:pointer;transition:background .15s ease; }
.btn-primary { background:var(--red);color:#fff; }
.btn-primary:hover { background:#9f1a1a; }
.btn-ghost { color:var(--dark);font-weight:500; }
.page-hero { position:relative;overflow:hidden;padding:72px 0 64px;background:linear-gradient(180deg,var(--bg) 0%,#fff 100%);border-bottom:1px solid var(--border); }
.page-hero::before { content:"";position:absolute;inset:0;background-image:radial-gradient(circle,#E2E8F0 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 80%);opacity:.55;pointer-events:none; }
.page-hero .cfp_cs_wrap { position:relative; }
.page-hero h1 { margin-bottom:22px; }
.page-hero .intro { max-width:760px; }
.page-hero .intro p { font-size:19px; }
.page-hero .intro p + p { margin-top:16px; }
.rule { width:56px;height:4px;background:var(--red);border-radius:2px;margin-bottom:22px; }
.doc { display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;padding:64px 0 96px;align-items:start; }
.toc { position:sticky;top:100px;border:1px solid var(--border);border-radius:12px;background:var(--bg);padding:20px 18px;max-height:calc(100vh - 130px);overflow:auto; }
.toc a { display:block;padding:7px 10px;border-radius:6px;font-size:14px;font-weight:500;color:var(--dark2); }
.toc a:hover { background:#fff;color:var(--red); }
.content section { padding:0 0 44px;margin-bottom:44px;border-bottom:1px solid var(--border); }
.content section:last-child { border-bottom:0;margin-bottom:0;padding-bottom:0; }
.content h2 { margin-bottom:18px; }
.content h3 { margin:28px 0 12px; }
.content h4 { font-size:17px;font-weight:700;color:var(--dark);margin:22px 0 8px; }
.content p { margin-bottom:16px; }
.content p:last-child { margin-bottom:0; }
.content ul { margin:4px 0 18px;padding-left:0;list-style:none; }
.content li { position:relative;padding-left:26px;margin-bottom:12px;font-size:17px; }
.content li::before { content:"";position:absolute;left:4px;top:.6em;width:7px;height:7px;border-radius:2px;background:var(--red); }
.content li strong, .content p strong { color:var(--dark);font-weight:600; }
.content a.link { color:var(--red);font-weight:600; }
.cookie { background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:20px 22px;margin:14px 0; }
.cookie h4 { margin:0 0 10px; }
.cookie p { font-size:16px;margin-bottom:6px; }
@media (max-width:980px) {
  h2 { font-size:26px; }
  .doc { grid-template-columns:1fr;gap:32px; }
  .toc { position:static;max-height:none; }
}
@media (max-width:620px) {
  .page-hero { padding:48px 0 44px; }
}
