/* Shared policy typography; fonts are delivered from the same website. */
:root { --navy:#0a2d62; --teal:#00a3ad; --teal-dk:#007b85; --bg:#f6f9fb; --white:#fff; --ink-2:#263a4d; --mid:#526779; --border:#dce5eb; }
.legal-sec { background:var(--white); color:var(--ink-2); }
.legal-container { max-width:1320px; margin:auto; }
.legal-version { margin-top:14px; font-size:13px; color:var(--mid); }
.legal-review { margin:0 0 24px !important; padding:14px 18px; border:1px solid #d3a74a; border-radius:6px; background:#fff9ea; color:#684b12; font-size:13px; line-height:1.8; }
.legal-lead { margin-top:18px; max-width:850px; font-size:17px; line-height:1.75; color:var(--mid); }
.legal-callout { margin:28px 0 36px; padding:20px 24px; border:1px solid var(--border); border-left:4px solid var(--teal-dk); border-radius:6px; background:var(--bg); font-size:14px; line-height:1.8; }
.legal-layout { display:grid; grid-template-columns:minmax(190px,.65fr) minmax(0,2.2fr); gap:48px; align-items:start; }
.legal-toc { position:sticky; top:110px; padding:22px; border:1px solid var(--border); border-radius:8px; background:var(--bg); font-size:13px; line-height:1.6; }
.legal-toc p { font-weight:700; color:var(--navy); margin-bottom:12px; }
.legal-toc ol { list-style:none; margin:0; padding:0; }
.legal-toc li + li { margin-top:10px; }
.legal-toc a, .legal-copy a, .legal-callout a { color:var(--navy); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-print-link { display:block; margin-top:22px; padding-top:18px; border-top:1px solid var(--border); }
.legal-copy { min-width:0; font-size:14px; line-height:1.85; }
.legal-part + .legal-part { margin-top:34px; padding-top:30px; border-top:1px solid var(--border); }
.legal-part h3 { margin:0 0 14px; color:var(--navy); font-family:'Montserrat',sans-serif; font-size:20px; line-height:1.5; }
.legal-part p + p, .legal-part ul + p { margin-top:14px; }
.legal-part ul { padding-left:22px; margin:14px 0; }
.legal-part li + li { margin-top:10px; }
.legal-table-wrap { max-width:100%; overflow-x:auto; margin:18px 0; border:1px solid var(--border); border-radius:6px; }
.legal-copy table { width:100%; border-collapse:collapse; font-size:13px; line-height:1.75; text-align:left; }
.legal-copy th { background:var(--bg); color:var(--navy); font-weight:600; }
.legal-copy th, .legal-copy td { padding:16px; vertical-align:top; }
.legal-copy tr + tr td, .legal-copy tbody tr:first-child td { border-top:1px solid var(--border); }
.legal-copy th:first-child { min-width:160px; }
.legal-copy td { overflow-wrap:anywhere; }
.legal-copy code { font-size:12px; }
.legacy-anchor { display:block; }
.legal-inline-note { max-width:680px; margin:16px auto 0; color:var(--mid); font-size:13px; line-height:1.8; }
.legal-inline-note a { color:var(--navy); text-decoration:underline; text-underline-offset:3px; }
.legal-sec :focus-visible { outline:3px solid var(--teal-dk); outline-offset:4px; }
.policy-tabs { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); }
.policy-tabs li { min-width:0; }
/* Standalone versions use the same content as the website's policy tabs. */
.standalone-body { margin:0; font-family:'Inter',system-ui,sans-serif; color:var(--ink-2); background:var(--white); }
.standalone-body * { box-sizing:border-box; }
.standalone-body p, .standalone-body h1, .standalone-body h3 { margin:0; }
.standalone-body a { color:var(--navy); }
.standalone-header { display:flex; align-items:center; justify-content:space-between; gap:24px; max-width:1320px; margin:auto; padding:24px 48px; }
.standalone-header img { display:block; width:190px; height:auto; }
.standalone-header > a:last-child { font-size:13px; font-weight:600; }
.standalone-nav { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 28px; padding:18px 24px; border-block:1px solid var(--border); background:var(--bg); font-size:13px; }
.standalone-nav a[aria-current] { font-weight:600; text-decoration-thickness:2px; text-underline-offset:5px; }
.standalone-body .legal-sec { padding:48px; }
.standalone-body .tag { text-transform:uppercase; letter-spacing:.14em; color:var(--teal-dk); font-size:11px; font-weight:600; margin-bottom:14px; }
.standalone-body .sh { font-family:'Montserrat',sans-serif; color:var(--navy); font-size:clamp(30px,4vw,44px); line-height:1.2; }
.standalone-body .ac { color:var(--teal-dk); }
.standalone-footer { padding:28px 24px; background:var(--bg); border-top:1px solid var(--border); text-align:center; font-size:12px; line-height:1.8; }
.standalone-skip { position:absolute; top:-100px; left:16px; background:white; padding:12px; }
.standalone-skip:focus { top:12px; }
@media(max-width:900px) { .legal-layout { grid-template-columns:1fr; gap:30px; } .legal-toc { position:static; } .legal-toc ol { display:grid; grid-template-columns:1fr 1fr; gap:10px 24px; } .legal-toc li + li { margin-top:0; } }
@media(max-width:600px) { .policy-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); } .legal-callout { padding:18px; } .legal-part h3 { font-size:18px; } .legal-toc ol { grid-template-columns:1fr; } .standalone-header { padding:20px; flex-wrap:wrap; } .standalone-body .legal-sec { padding:32px 20px; } .standalone-header img { width:160px; } .legal-copy th, .legal-copy td { padding:12px; } }
@media print { .legal-toc, .standalone-nav, .standalone-header, .standalone-footer, .standalone-skip { display:none !important; } .legal-layout { display:block; } .legal-copy, .legal-callout { color:#000; } .legal-table-wrap { overflow:visible; } .standalone-body .legal-sec { padding:0; } .legal-part { break-inside:avoid; } }
