/* Long-form policy pages: reuses the site's Apple-inspired tokens. */
.policy-main{background:var(--paper)}

/* Header: neutralise the generic English transforms so the unified header
   sits cleanly on this page, the way each other page tunes it for itself. */
@media(min-width:781px){
  html[lang="en"] body.policy-page .site-header .logo-link,
  html[lang="en"] body.policy-page .site-header .main-nav,
  html[lang="en"] body.policy-page .site-header .header-controls{transform:none}
  html[lang="en"] body.policy-page .site-header .main-nav{gap:26px}
}

.policy-hero{background:radial-gradient(circle at 82% 18%,rgba(0,113,227,.16),transparent 30%),linear-gradient(135deg,#fff 0%,#f3f8ff 54%,#edf4ff 100%);border-bottom:1px solid rgba(210,210,215,.72);padding:88px 0 72px}
.policy-hero-inner{margin:0 auto;max-width:1200px;padding:0 24px}
.policy-eyebrow{color:#0071e3;font-family:Manrope,sans-serif;font-size:12px;font-weight:800;letter-spacing:1.4px;margin:0 0 18px}
.policy-hero h1{color:#1d1d1f;font-size:clamp(34px,4.4vw,58px);letter-spacing:-2.2px;line-height:1.12;margin:0}
.policy-effective{color:#092b63;font-family:Manrope,sans-serif;font-size:15px;font-weight:700;margin:22px 0 0}
.policy-intro{color:#515154;font-size:17px;line-height:1.85;margin:20px 0 0;max-width:720px}

.policy-body{display:grid;gap:56px;grid-template-columns:260px minmax(0,1fr);margin:0 auto;max-width:1200px;padding:72px 24px 104px}

.policy-toc{align-self:start;position:sticky;top:112px}
.policy-toc h2{color:#6e6e73;font-family:Manrope,sans-serif;font-size:11px;font-weight:800;letter-spacing:1.2px;margin:0 0 14px;text-transform:uppercase}
.policy-toc ol{counter-reset:policy-toc;list-style:none;margin:0;padding:0}
.policy-toc li{counter-increment:policy-toc;margin:0 0 3px}
.policy-toc a{border-radius:8px;color:#424245;display:block;font-size:14px;line-height:1.45;padding:7px 10px;transition:background .18s ease,color .18s ease}
.policy-toc a:before{color:#a1a1a6;content:counter(policy-toc) ". ";font-family:Manrope,sans-serif;font-weight:700}
.policy-toc a:hover,.policy-toc a:focus-visible{background:#eef6ff;color:#0071e3;outline:none}

.policy-content{background:#fff;border:1px solid rgba(210,210,215,.8);border-radius:24px;box-shadow:0 4px 16px rgba(0,0,0,.035);max-width:820px;padding:56px 60px}
.policy-content>section+section{border-top:1px solid #e8e8ed;margin-top:44px;padding-top:44px}
.policy-content h2{color:#1d1d1f;font-size:clamp(21px,2vw,27px);letter-spacing:-.8px;line-height:1.3;margin:0 0 18px;scroll-margin-top:130px}
.policy-content p{color:#515154;font-size:16px;line-height:1.9;margin:0 0 16px}
.policy-content p:last-child{margin-bottom:0}
.policy-content ul{color:#515154;font-size:16px;line-height:1.9;margin:0 0 16px;padding-inline-start:22px}
.policy-content li{margin-bottom:9px}
.policy-content li:last-child{margin-bottom:0}
.policy-content li::marker{color:#0071e3}
.policy-content strong{color:#1d1d1f;font-weight:700}
.policy-content a{color:#0071e3;font-weight:600;overflow-wrap:anywhere}
.policy-content a:hover{text-decoration:underline}
.policy-content section[id]{scroll-margin-top:130px}
.policy-contact{background:#f5f5f7;border-radius:16px;color:#1d1d1f;font-size:16px;font-style:normal;line-height:1.9;padding:22px 24px}
.policy-contact strong{font-family:Manrope,sans-serif}

@media(max-width:980px){
  .policy-body{display:block;padding:52px 24px 80px}
  .policy-toc{border-bottom:1px solid #e8e8ed;margin-bottom:36px;padding-bottom:28px;position:static}
  .policy-toc ol{columns:2;column-gap:18px}
  .policy-content{padding:36px 28px}
}

@media(max-width:600px){
  .policy-hero{padding:56px 0 48px}
  .policy-intro{font-size:16px}
  .policy-toc ol{columns:1}
  .policy-content{border-radius:18px;padding:28px 22px}
  .policy-content>section+section{margin-top:34px;padding-top:34px}
  .policy-content p,.policy-content ul{font-size:15px}
}
