/* H120 footer nav = design (Inter 14px, one row): fs-small on all widths. Footer top edge: Bricks footer section 05pfln custom CSS paints s7-03-torn-edge.svg (design asset) at natural aspect. */
/* Footer join + footer layout. FINAL rules only (H98 collapse; stacked history in backups/h98-TS/orig-ics-footer-join.css).
   P77: yellow full-bleed band as last section (#mv-cta-band, #ics-contact-bg): content margin 0, footer first section pulled up so the black torn top sits over the band and its notches show the band colour. Add new yellow band ids here.
   H10: same for mission band #mis-s3-band (solid #ffef6b = svg fill).
   H25/H50/H92c: #ft-legal bottom bar (border-top = separator): row, wrap, copyright left, social right; column at <=599; padding-top sp-xl.
   H79: #ft-social native Social Icons; #ft-main-nav / #ft-legal-nav native Nav Menus (ul.bricks-nav-menu > li > a).
   H89: #brxe-9qi9lb = 2 equal columns (main nav left, #brxe-yjtwhq legal right), gap sp-l, all widths.
   H91/H92b: each nav = horizontal wrap row, 44px links, gap sp-l (sp-xs at <=599).
   H92: nav text -> separator = separator -> row = row -> footer bottom = sp-xl (32px); navs centred on one line at >=992.
   H35b/H50/H57 rules on #brxe-skkdtv and on #brxe-cc5gtc > #ft-legal-nav matched removed markup and were dropped.
   Specificity: doubled ids beat tear-guard.css; #ft-legal padding-top needs 3 ids (tear-guard.css 2-id rule is !important). */
#brx-content:has(> :last-child #mv-cta-band),
#brx-content:has(> :last-child #ics-contact-bg),
#brx-content:has(> :last-child #mis-s3-band) {
  margin-bottom: 0;
}
body:has(#brx-content > :last-child #mv-cta-band) #brx-footer > :first-child,
body:has(#brx-content > :last-child #ics-contact-bg) #brx-footer > :first-child {
  margin-top: calc(-2 * var(--sp-2xl) - var(--sp-xs));
}
#mis-s3-band::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% - 48px);
  height: 160px;
  background: #ffef6b;
  z-index: -1;
  pointer-events: none;
}

/* Bottom bar */
html body #ft-legal#ft-legal { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; }
html body #ft-legal#ft-legal#ft-legal { padding-top: var(--sp-xl) !important; }
@media (max-width: 599px) {
  html body #ft-legal#ft-legal { flex-direction: column; align-items: flex-start; gap: var(--sp-m); }
}

/* Social icons */
html body #ft-social#ft-social { list-style: none; margin: 0; padding: 0; }
html body #ft-social#ft-social > li { display: flex; margin: 0; padding: 0; }
html body #ft-social#ft-social i { font-size: 1.25rem; line-height: 1; width: auto; height: auto; color: inherit; }

/* Nav wrapper: 2 columns 50:50 */
html body #brxe-cc5gtc > #brxe-9qi9lb#brxe-9qi9lb { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; column-gap: var(--sp-l) !important; row-gap: 0 !important; align-items: start !important; width: 100%; box-sizing: border-box; margin-bottom: 0 !important; padding-bottom: calc(var(--sp-xl) - var(--sp-s) - var(--fs-body) * (var(--lh-body) - 1.25) / 2) !important; }
html body #brxe-9qi9lb#brxe-9qi9lb > #ft-main-nav#ft-main-nav, html body #brxe-9qi9lb#brxe-9qi9lb > #brxe-yjtwhq#brxe-yjtwhq { min-width: 0; width: 100% !important; margin: 0 !important; padding: 0; align-self: start; }
@media (min-width: 992px) {
  html body #brxe-cc5gtc > #brxe-9qi9lb#brxe-9qi9lb { align-items: center !important; }
  html body #brxe-9qi9lb#brxe-9qi9lb > * { align-self: center !important; }
}
html body #ft-legal-nav#ft-legal-nav { width: 100%; margin: 0 !important; padding-top: 0; border-top: 0; box-sizing: border-box; }

/* Nav lists and links (both navs: horizontal wrap row) */
html body #ft-main-nav#ft-main-nav .bricks-nav-menu, html body #ft-legal-nav#ft-legal-nav .bricks-nav-menu { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: flex-start; column-gap: var(--sp-l); row-gap: 0; list-style: none; margin: 0; padding: 0; }
html body #ft-main-nav#ft-main-nav .bricks-nav-menu { grid-template-columns: minmax(0, 1fr); justify-items: start; }
html body #ft-main-nav#ft-main-nav .bricks-nav-menu > li, html body #ft-legal-nav#ft-legal-nav .bricks-nav-menu > li { width: auto; flex: 0 0 auto; min-width: 0; margin: 0; padding: 0; }
html body #ft-main-nav#ft-main-nav .bricks-nav-menu a, html body #ft-legal-nav#ft-legal-nav .bricks-nav-menu a { display: inline-flex; align-items: center; width: auto; min-height: 44px; box-sizing: border-box; text-align: left; text-decoration: none; }
html body #ft-main-nav#ft-main-nav .bricks-nav-menu a { padding: var(--sp-s) 0; font-family: "Inter"; font-size: var(--fs-small); font-weight: 400; letter-spacing: var(--ls-body); line-height: var(--lh-body); }
html body #ft-legal-nav#ft-legal-nav .bricks-nav-menu a { padding-block: var(--sp-xs); color: var(--yellow-0); font-size: var(--fs-small); }
html body #ft-main-nav#ft-main-nav .bricks-nav-menu a:hover, html body #ft-main-nav#ft-main-nav .bricks-nav-menu a:focus-visible, html body #ft-legal-nav#ft-legal-nav .bricks-nav-menu a:hover, html body #ft-legal-nav#ft-legal-nav .bricks-nav-menu a:focus-visible { text-decoration: underline; }
html body #ft-main-nav#ft-main-nav .bricks-nav-menu a:focus-visible, html body #ft-legal-nav#ft-legal-nav .bricks-nav-menu a:focus-visible { outline: 2px solid var(--heading); outline-offset: 3px; }
@media (max-width: 991px) {
  html body #ft-main-nav#ft-main-nav .bricks-nav-menu a { font-size: var(--fs-small); }
}
@media (max-width: 599px) {
  html body #ft-main-nav#ft-main-nav .bricks-nav-menu, html body #ft-legal-nav#ft-legal-nav .bricks-nav-menu { column-gap: var(--sp-xs); }
}
