.policy-body { min-height:100vh; color:#162a42; background:linear-gradient(180deg,#edf5fb 0,#f8fbfd 380px,#f4f7fa 100%); }
.policy-header { position:sticky; top:0; z-index:20; border-bottom:1px solid rgba(191,208,222,.75); background:rgba(249,252,254,.9); backdrop-filter:blur(16px); }
.policy-nav { display:flex; min-height:76px; align-items:center; gap:22px; }
.policy-brand { display:flex; align-items:center; gap:12px; color:#122e4c; }
.policy-brand strong { font-size:23px; letter-spacing:-1.1px; }
.policy-brand strong em { color:#168bcf; font-style:normal; }
.policy-brand span { padding-left:12px; border-left:1px solid #cbd8e3; color:#5d7187; font-size:10px; font-weight:700; letter-spacing:.11em; line-height:1.35; }
.policy-nav nav { display:flex; align-items:center; gap:7px; margin-left:auto; }
.policy-nav nav a { min-height:38px; padding:0 13px; display:inline-flex; align-items:center; border-radius:9px; color:#47617a; font-size:12px; font-weight:700; }
.policy-nav nav a[aria-current="page"] { color:#0b70b8; background:#e5f4ff; }
.policy-home { min-height:40px; padding:0 15px; display:inline-flex; align-items:center; border:1px solid #ccd9e4; border-radius:10px; color:#274965; background:#fff; font-size:12px; font-weight:800; }
.policy-hero { padding:66px 0 62px; color:#fff; background:radial-gradient(circle at 78% 20%,rgba(76,217,229,.25),transparent 24%),linear-gradient(125deg,#06182e,#0b3c68 62%,#087c8b); }
.policy-hero .eyebrow { margin:0 0 12px; color:#83ddef; font-size:12px; font-weight:800; letter-spacing:.14em; }
.policy-hero h1 { margin:0; font-size:clamp(36px,5vw,56px); letter-spacing:-2.8px; }
.policy-hero .lead { max-width:780px; margin:18px 0 0; color:#d9ebf4; font-size:16px; line-height:1.8; }
.policy-meta { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.policy-meta span { padding:7px 11px; border:1px solid rgba(174,225,240,.24); border-radius:999px; color:#cdebf5; background:rgba(3,24,45,.2); font-size:11px; }
.policy-main { padding:42px 0 80px; }
.policy-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:24px; align-items:start; }
.policy-toc { position:sticky; top:100px; padding:20px; border:1px solid #d9e4ed; border-radius:15px; background:rgba(255,255,255,.9); box-shadow:0 10px 28px rgba(18,57,86,.06); }
.policy-toc strong { display:block; margin-bottom:11px; color:#183a58; font-size:12px; }
.policy-toc a { display:block; padding:7px 0; color:#61748a; font-size:12px; line-height:1.45; }
.policy-toc a:hover { color:#1377bd; }
.policy-document { padding:38px 44px; border:1px solid #d8e3ec; border-radius:18px; background:#fff; box-shadow:0 18px 50px rgba(18,55,83,.07); }
.policy-callout { margin:0 0 28px; padding:18px 20px; border:1px solid #bcd9eb; border-radius:12px; color:#274a65; background:#edf8ff; font-size:13px; line-height:1.75; }
.policy-callout.warning { border-color:#f0cf93; color:#684b1c; background:#fff8e9; }
.policy-section { scroll-margin-top:105px; padding:8px 0 27px; }
.policy-section + .policy-section { padding-top:28px; border-top:1px solid #e5ecf2; }
.policy-section h2 { margin:0 0 14px; color:#102e4b; font-size:21px; letter-spacing:-.7px; }
.policy-section h3 { margin:20px 0 8px; color:#244965; font-size:15px; }
.policy-section p, .policy-section li { color:#4d6177; font-size:13px; line-height:1.9; word-break:keep-all; }
.policy-section p { margin:8px 0; }
.policy-section ul, .policy-section ol { margin:8px 0 0; padding-left:22px; }
.policy-table-wrap { overflow:auto; margin:14px 0; border:1px solid #dbe5ed; border-radius:11px; }
.policy-table { width:100%; min-width:620px; border-collapse:collapse; font-size:12px; }
.policy-table th, .policy-table td { padding:13px 14px; border-bottom:1px solid #e4ebf1; text-align:left; vertical-align:top; line-height:1.7; }
.policy-table th { color:#38526b; background:#f1f6fa; }
.policy-table tr:last-child td { border-bottom:0; }
.policy-contact { padding:18px; border-radius:11px; background:#f4f8fb; }
.policy-footer { padding:26px 0 40px; color:#7a899a; border-top:1px solid #dce5ed; font-size:11px; }
.policy-footer .container { display:flex; justify-content:space-between; gap:18px; }
.policy-footer nav { display:flex; flex-wrap:wrap; gap:14px; }
.policy-footer a { color:#4e6d87; }
@media(max-width:900px){.policy-nav nav{display:none}.policy-layout{grid-template-columns:1fr}.policy-toc{position:static;display:flex;overflow:auto;gap:14px;padding:14px}.policy-toc strong{display:none}.policy-toc a{white-space:nowrap}.policy-document{padding:30px 26px}}
@media(max-width:620px){.policy-nav{min-height:68px}.policy-brand span{display:none}.policy-home{margin-left:auto}.policy-hero{padding:48px 0}.policy-hero h1{font-size:36px}.policy-main{padding-top:24px}.policy-document{padding:24px 19px}.policy-footer .container{flex-direction:column}}

