/* staging overrides on top of v3.css: a11y, contrast, reveal, legal prose */
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:#0B2A55;color:#fff;padding:12px 18px;border-radius:0 0 8px 0}
.skip:focus{left:0}
.stg{background:#0B2A55;color:#fff;font-size:12px;text-align:center;padding:6px 12px;letter-spacing:.02em}
.draftbar{background:#FFF4E5;color:#0B2A55;border-bottom:3px solid #EF7801;font-size:14px;text-align:center;padding:12px 16px;line-height:1.45}
.draftbar b{color:#B34F00}
:focus-visible{outline:3px solid #1D6ADA;outline-offset:2px}
.hero :focus-visible,.ph :focus-visible,.ft :focus-visible,.dark :focus-visible,.how :focus-visible,.vision :focus-visible{outline-color:#fff}
main:focus{outline:none}
/* contrast: white on orange fails AA (2.85) -> navy on orange (4.98) */
.btn.o,.btn.o:hover{color:#0B2A55}
.cta,.cta .h2,.cta p,.cta .ctal{color:#0B2A55}
.cta .k{color:#0B2A55}
.cta .btn.ow{color:#0B2A55;border-color:#0B2A55}
.cta .btn.w{background:#fff;color:#0B2A55}
.cta .em{color:#0B2A55;border-color:#0B2A55}
/* orange text on white fails -> navy eyebrow text, orange rule kept by v3 */
.k{color:#0B2A55}
.hero .k,.ph .k,.dark .k,.how .k,.vision .k{color:#fff}
.p9 .tg{color:#1D6ADA}
.sub a.on{color:#0B2A55;box-shadow:inset 0 -3px 0 #EF7801}
.p9 .pc{display:block}
.ctal{margin-top:16px;font-size:16px}
/* click-to-reveal */
.emw{display:inline-block}
button.js-em{font:inherit;cursor:pointer}
.em{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#1D6ADA;background:transparent;border:1px solid rgba(29,106,218,.45);border-radius:999px;padding:6px 14px;margin-top:8px;text-decoration:none;word-break:break-all}
.em:hover{background:rgba(29,106,218,.06)}
a.em{border-style:dashed}
.tm .emw{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.ft .em,.on-blue{color:#fff;border-color:rgba(255,255,255,.6)}
.ft .fc{margin-top:28px}.ft .fc p{margin:6px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ft .fc p .em{margin-top:0}
.ft .h5{font-size:14px;font-weight:700;margin:0 0 14px;color:#fff}
.ft .bot nav{display:flex;gap:18px;flex-wrap:wrap}
.btn.js-em{border:0}
/* mobile nav */
.mnav{display:none}
@media (max-width:1024px){
 .hd .nav.open{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:#fff;padding:12px 24px 24px;box-shadow:0 12px 24px rgba(11,42,85,.12);z-index:50;gap:4px}
 .hd .nav.open a{padding:12px 0;border-bottom:1px solid rgba(11,42,85,.10)}
 .hd .nav.open .mnav{display:inline-flex;margin-top:12px;justify-content:center}
 .hd .c{position:relative}
 .burger{background:none;border:0;color:#0B2A55;cursor:pointer}
}
/* legal prose */
.prose{max-width:820px;color:#0B2A55;font-size:16px;line-height:1.7}
.prose h2{font-size:24px;margin:40px 0 12px}.prose h3{font-size:19px;margin:28px 0 8px}
.prose p,.prose ul,.prose ol{margin:0 0 14px}.prose ul,.prose ol{padding-left:22px}
.prose a{color:#1D6ADA;text-decoration:underline}
.prose blockquote{border-left:4px solid #EF7801;margin:0 0 16px;padding:8px 16px;background:#FFF8EF}
.prose .tw{overflow-x:auto;margin:0 0 18px}
.prose table{border-collapse:collapse;width:100%;font-size:14px}.prose th,.prose td{border:1px solid rgba(11,42,85,.15);padding:8px 10px;text-align:left;vertical-align:top}
.prose th{background:#F7F9FC}
mark.phd{background:#FFE7C7;color:#0B2A55;padding:0 3px;border-radius:3px;font-weight:600}
.docs .doc a{color:#1D6ADA}
.team.t3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:640px){.team.t3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.tm .ar,.ar{color:#1D6ADA}
