/* Privacy Policy — "policy" theme: calm and readable, sticky contents, soft card accents */
.pp-hero{padding:52px 0 60px;background:radial-gradient(circle at 90% 10%,rgba(58,106,253,.12),transparent 30%),linear-gradient(135deg,#FFFCF8,#FAFBFF 57%,#EEF3FF)}
.pp-hero .lead{max-width:760px}
.pp-hero p{max-width:760px}
.effective{display:inline-flex;align-items:center;gap:9px;margin-top:10px;padding:9px 14px;border:1px solid #D9E3FF;border-radius:10px;background:#fff;color:#394B5D;font-weight:700;font-size:.9rem}
.effective::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px rgba(58,106,253,.15)}
.pp-body{padding:56px 0 80px;background:linear-gradient(180deg,#F8FAFF,#FFFCF8)}
.pp-grid{display:grid;grid-template-columns:270px 1fr;gap:40px;align-items:start}
.toc{position:sticky;top:90px;padding:22px;border-radius:20px;background:#fff;border:1px solid #DDE5F4;box-shadow:0 10px 28px rgba(35,65,145,.05)}
.toc strong{display:block;margin-bottom:10px;font-family:var(--head);font-weight:600;font-size:1.2rem;color:var(--navy)}
.toc ol{margin:0;padding-left:22px;display:grid;gap:5px}
.toc li{font-size:.86rem;line-height:1.4;color:var(--slate)}
.toc li::marker{color:var(--gold);font-weight:700}
.toc a{color:#3f4b57;text-decoration:none}.toc a:hover{color:var(--blue-700);text-decoration:underline}
.pp-main{min-width:0;max-width:820px}
.policy-intro{padding:26px 28px;border-radius:22px;background:#fff;border:1px solid #DDE5F4;margin-bottom:18px}
.policy-intro p+p{margin-top:10px}
.policy-stack{display:grid;gap:16px}
.policy-card{--accent:var(--blue);--soft:var(--pale);position:relative;overflow:hidden;padding:30px;border-radius:22px;background:#fff;border:1px solid #E2E7F0;scroll-margin-top:90px}
.policy-card::after{content:"";position:absolute;width:118px;height:118px;border-radius:50%;right:-60px;top:-62px;background:var(--soft);opacity:.85}
.policy-card>*{position:relative;z-index:1}
.policy-card:nth-child(3n+2){--accent:#A9792D;--soft:var(--gold-soft)}
.policy-card:nth-child(3n+3){--accent:#087A45;--soft:#EAF5EF}
.policy-card:target{border-color:var(--accent);box-shadow:0 0 0 4px var(--soft)}
.policy-number{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:30px;padding:0 10px;margin-bottom:10px;border-radius:9px;background:var(--soft);color:var(--accent);font-weight:800;font-size:.8rem}
.policy-card h2{font-size:1.7rem;margin:0 0 .5em}
.policy-card p+p{margin-top:10px}
.policy-card ul{margin:12px 0 0;padding-left:20px;color:var(--slate)}
.policy-card li{margin-bottom:7px;line-height:1.6}
.policy-card li::marker{color:var(--accent)}
.policy-card strong{color:var(--ink)}
.data-note{margin-top:16px;padding:15px 17px;border-radius:0 14px 14px 0;background:var(--soft);border-left:4px solid var(--accent);color:#40515E;font-size:.95rem;line-height:1.65}
.subhead{margin-top:18px;color:var(--ink);font-weight:700}
.contact-box{margin-top:16px;padding:20px 22px;border-radius:16px;background:linear-gradient(145deg,#102255,#17366F);color:#fff}
.contact-box strong{display:block;color:#fff!important;margin-bottom:6px}
.contact-box p{color:#D6DEE8!important;margin:0}
.contact-box a{color:#BFD1FF;font-weight:700}
.pp-cta{padding:0 0 80px;background:#FFFCF8}
@media(max-width:1000px){.pp-grid{grid-template-columns:1fr}.toc{position:static}.toc ol{grid-template-columns:1fr 1fr;column-gap:24px}}
@media(max-width:640px){.policy-card{padding:24px 20px}.policy-card h2{font-size:1.4rem}.toc ol{grid-template-columns:1fr}}
