/* Original Bridge footer, scoped to the report's shared content frame. */
body.has-share-shortcut { padding-bottom:0; }
.bridge-footer { position:relative; isolation:isolate; overflow:hidden; background:#001a32; color:#fff; padding:128px var(--page-inset,7%) 80px; }
.bridge-footer-background { position:absolute; inset:0 0 auto; height:50%; z-index:-1; pointer-events:none; background:radial-gradient(circle,#e4d9fb3d 2px,transparent 2px) 0 0 / 24px 24px; }
.bridge-footer-background canvas { display:block; width:100%; height:100%; }
.bridge-footer-background::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,#fff0 91%,#001a32),radial-gradient(circle farthest-corner at 50% -200%,#fff0 11%,#001a32 95%); }
.bridge-footer-cta { max-width:640px; margin-bottom:128px; }
.bridge-footer-cta h2 { color:#fff; font-size:48px; line-height:1.1; letter-spacing:-1px; font-weight:600; margin:0 0 32px; text-wrap:pretty; }
.bridge-footer-cta .pill { gap:8px; font-weight:500; padding:12px 18px; min-height:44px; }
.bridge-footer-cta .pill svg { width:16px; height:16px; }
.bridge-footer-grid { display:grid; grid-template-columns:2.25fr repeat(3,minmax(0,1fr)); gap:32px; margin-bottom:96px; }
.bridge-footer-brand { display:flex; flex-direction:column; justify-content:space-between; align-items:flex-start; gap:32px; }
.bridge-footer-brand>a { display:inline-flex; align-items:center; min-height:44px; }
.bridge-footer img { display:block; filter:none; margin:0; max-width:100%; }
.bridge-footer-brand .bridge-footer-logo { width:97px; height:21px; }
.bridge-footer-brand .bridge-footer-compliance { width:125px; height:40px; }
.bridge-footer-column { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.bridge-footer-column h3 { font-size:14px; font-weight:600; line-height:1.5; margin:0 0 4px; color:white; text-wrap:pretty; }
.bridge-footer-column a { display:inline-block; position:relative; color:#ffffff99; text-decoration:none; font-size:14px; line-height:1.6; transition:color .25s; }
.bridge-footer-column a::after { content:""; position:absolute; bottom:0; left:0; width:100%; height:1px; background:#e4d9fb; transform:scaleX(0); transform-origin:left; opacity:0; transition:transform .25s,opacity .25s; }
.bridge-footer-column a:hover,.bridge-footer-column a:focus-visible { color:#fff; }
.bridge-footer-column a:hover::after,.bridge-footer-column a:focus-visible::after { transform:scaleX(1); opacity:1; }
.bridge-footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:24px; border-top:1.5px solid #ffffff1a; }
.bridge-footer .bridge-footer-copyright { color:#ffffff99; font-size:16px; line-height:1.5; margin:0; }
.bridge-footer-social { width:44px; height:44px; display:grid; place-items:center; color:#ffffff99; border-radius:8px; }
.bridge-footer-social:hover { color:white; background:#ffffff0d; }
.bridge-footer-social svg { width:16px; height:16px; }
.bridge-footer a:focus-visible { outline-color:#bb99ff; }
/* The share dock's clearance belongs inside the navy footer, never after it. */
.has-share-shortcut .bridge-footer { padding-bottom:max(112px,calc(96px + env(safe-area-inset-bottom))); }
@media screen and (max-width:991px) {
  .bridge-footer { padding-top:104px; }
  .bridge-footer-grid { grid-template-columns:1fr; gap:32px; }
  .bridge-footer-brand { gap:32px; }
  .bridge-footer-column { gap:0; }
  .bridge-footer-column h3 { margin-bottom:8px; }
  .bridge-footer-column a { min-height:44px; display:flex; align-items:center; }
}
@media screen and (max-width:767px) {
  .bridge-footer { padding-top:88px; padding-bottom:48px; }
  .bridge-footer-cta { margin-bottom:64px; }
  .bridge-footer-cta h2 { font-size:40px; }
  .bridge-footer-grid { margin-bottom:40px; }
  .bridge-footer-bottom { align-items:flex-start; }
}
@media screen and (max-width:370px) { .bridge-footer-cta h2 { font-size:36px; } }
@media print {
  .bridge-footer,.has-share-shortcut .bridge-footer { padding:24px 0 0; margin-top:24px; background:white; color:#001a32; break-before:auto; break-inside:avoid; }
  .bridge-footer-background,.bridge-footer-cta,.bridge-footer-column,.bridge-footer-compliance,.bridge-footer-social { display:none!important; }
  .bridge-footer-grid { display:block; margin-bottom:12px; }
  .bridge-footer-logo { filter:brightness(0)!important; }
  .bridge-footer-bottom { border-color:#001a321a; padding-top:12px; }
  .bridge-footer .bridge-footer-copyright { color:#565e6a; font-size:9pt; }
}
/* Self-contained basics so the footer needs no other stylesheet. */
.bridge-footer .pill { display:inline-flex; align-items:center; border:0; border-radius:99px; background:#823ffe; color:#fff; text-decoration:none; font-size:14px; transition:background .2s; }
.bridge-footer .pill:hover { background:#955aff; }
.bridge-footer .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.bridge-footer h2,.bridge-footer h3 { font-family:inherit; }
