/* ========================================================================
   BlueAlly executive web system

   One family, three visible tiers per section, short page bands, and image treatment drawn
   from the 2026 executive-deck photography: high-contrast monochrome,
   BlueAlly Ink/Navy fields, and a Bright cyan registration line.
   ======================================================================== */

@font-face {
  font-family: "DM Sans";
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
  src: url("/assets/fonts/dm-sans-variable.woff2") format("woff2");
}

:root {
  --ba-x-ink: #040822;
  --ba-x-navy: #16324f;
  --ba-x-blue: #02a2fd;
  --ba-x-green: #36bf78;
  --ba-x-sky: #cde5f1;
  --ba-x-cloud: #f4f3f3;
  --ba-x-line: #dce5ef;
  --ba-x-soft: #3b497a;
  --ba-x-white: #ffffff;
  --ba-x-shell: 76rem;
  --ba-x-gutter: clamp(1.25rem, 4vw, 3rem);
  --ba-x-shadow: 0 1px 2px rgba(22, 50, 79, .06), 0 18px 46px rgba(22, 50, 79, .12);
  --ba-x-header: 4.75rem;
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--ba-x-header) + 4rem);
}

body.ba-exec {
  margin: 0;
  background: var(--ba-x-cloud);
  color: var(--ba-x-ink);
  font-family: "DM Sans", system-ui, sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.ba-exec img { max-width: 100%; }
:where(body.ba-exec) a { color: inherit; }
body.ba-exec button,
body.ba-exec input,
body.ba-exec select,
body.ba-exec textarea { font: inherit; }

/* Infrastructure entry points: accent only, with no card or type metrics changed. */
[data-ba-infrastructure-card].is-targeted {
  outline: 2px solid var(--ba-x-blue);
  outline-offset: 4px;
}
.ba-infrastructure-context {
  padding: .75rem 1rem;
  border-left: 3px solid var(--ba-x-blue);
  background: var(--ba-x-navy);
  color: var(--ba-x-white);
}

.ba-skip {
  position: fixed;
  left: 1rem;
  top: -6rem;
  z-index: 9999;
  background: var(--ba-x-white);
  color: var(--ba-x-navy);
  padding: .75rem 1rem;
  text-decoration: none;
}
.ba-skip:focus { top: 1rem; }
.ba-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.ba-shell {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--ba-x-shell);
  margin-inline: auto;
  padding-inline: var(--ba-x-gutter);
}

.ba-display,
.ba-title,
.ba-subtitle,
.ba-card-title {
  margin: 0;
  font-family: inherit !important;
  text-wrap: balance;
}

/* Each section uses no more than three visible tiers: headline, copy, and micro. */
.ba-display {
  max-width: 100% !important;
  font-size: clamp(2.70875rem, 5.91vw, 5.07275rem) !important;
  font-weight: 300 !important;
  letter-spacing: -.0295em !important;
  line-height: 1.02 !important;
}

.ba-display--wide {
  max-width: 100% !important;
  font-size: clamp(2.61025rem, 4.334vw, 4.08775rem) !important;
}

.ba-display--uppercase { text-transform: uppercase; }

.ba-title {
  max-width: 100% !important;
  font-size: clamp(1.97rem, 3.349vw, 2.955rem) !important;
  font-weight: 300 !important;
  letter-spacing: -.0205em !important;
  line-height: 1.08 !important;
}

.ba-subtitle,
.ba-lead {
  max-width: 58ch;
  font-size: 1.25rem !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
}

.ba-card-title {
  max-width: 100% !important;
  font-size: 1rem !important;
  font-weight: 500 !important;
  letter-spacing: -.01em !important;
  line-height: 1.3 !important;
}

.ba-copy,
.ba-card p,
.ba-story p,
.ba-outcome p,
.ba-service p {
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  text-wrap: pretty;
}

.ba-band--ink .ba-card__link,
.ba-band--navy .ba-card__link {
  color: var(--ba-x-white);
  border-color: rgba(205, 229, 241, .72);
}
.ba-band--ink .ba-card__link:hover,
.ba-band--ink .ba-card__link:focus-visible,
.ba-band--navy .ba-card__link:hover,
.ba-band--navy .ba-card__link:focus-visible {
  color: var(--ba-x-blue);
  border-color: var(--ba-x-blue);
}
.ba-service__stage {
  display: block;
  margin-bottom: .75rem;
  color: var(--ba-x-blue);
}

.ba-kicker,
.ba-eyebrow,
.ba-micro,
.ba-story__tag,
.ba-tier-count {
  font-size: .75rem !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
}

.ba-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  min-height: 0;
  margin: 0 0 .9rem;
  padding: 0;
  background: transparent;
  color: var(--ba-x-blue);
}
.ba-eyebrow::before { content: ""; width: 1.25rem; height: 1px; background: currentColor; }

.ba-eyebrow--outline {
  background: transparent;
  border: 0;
  color: var(--ba-x-blue);
}

.ba-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .7rem;
  margin-top: 1.75rem;
}

.ba-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  min-height: 0;
  padding: .4rem 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  background: transparent;
  color: var(--ba-x-navy);
  font-size: .9rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none;
  transition: transform .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease;
}

.ba-button::after {
  content: "\2192";
  display: inline-block;
  transition: transform .2s ease;
}

.ba-button[data-ba-external-button]::after { content: "\2197"; }

.ba-button:hover,
.ba-button:focus-visible {
  background: transparent;
  color: var(--ba-x-blue);
  transform: none;
}
.ba-button:hover::after,
.ba-button:focus-visible::after { transform: translateX(3px); }

.ba-button--quiet {
  background: transparent;
  border-color: currentColor;
  color: var(--ba-x-white);
}
.ba-button--quiet:hover,
.ba-button--quiet:focus-visible {
  border-color: var(--ba-x-blue);
  color: var(--ba-x-blue);
  background: transparent;
}

.ba-button--dark {
  background: transparent;
  color: var(--ba-x-navy);
}
.ba-button--dark:hover,
.ba-button--dark:focus-visible {
  background: transparent;
  color: var(--ba-x-blue);
}
.ba-hero .ba-button,
.ba-close .ba-button,
.ba-band--ink .ba-button,
.ba-band--navy .ba-button { color: var(--ba-x-blue); }

/* Header: compact disclosure navigation, never a media-heavy mega menu. */
.ba-masthead {
  position: sticky;
  top: 0;
  z-index: 1000;
  min-height: var(--ba-x-header);
  background: rgba(4, 8, 34, .94);
  color: var(--ba-x-sky);
  border: 0;
  backdrop-filter: blur(16px);
  transition: background-color .25s ease, box-shadow .25s ease;
}
body.ba-has-hero .ba-masthead:not(.is-scrolled):not(:has(.ba-mobile-nav[open])) {
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
.ba-masthead.is-scrolled {
  box-shadow: 0 8px 28px rgba(0, 0, 0, .18);
}

.ba-masthead__row {
  position: relative;
  display: flex;
  align-items: center;
  min-height: var(--ba-x-header);
  gap: clamp(1rem, 2.8vw, 2.4rem);
}

.ba-brand {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  padding-block: .35rem;
}
.ba-brand img {
  display: block;
  width: 148px;
  height: auto;
}

.ba-primary {
  display: flex;
  align-items: center;
  gap: clamp(.8rem, 1.7vw, 1.55rem);
  margin-left: auto;
}

.ba-primary > a,
.ba-nav-disclosure__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 2.6rem;
  padding: .4rem 0;
  color: var(--ba-x-sky);
  font-size: 1rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none;
  cursor: pointer;
  list-style: none;
}

.ba-mobile-nav > summary::-webkit-details-marker { display: none; }

.ba-primary > a::after,
.ba-nav-disclosure__link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: .25rem;
  height: 2px;
  background: var(--ba-x-blue);
  transition: right .2s ease;
}

.ba-primary > a:hover,
.ba-primary > a:focus-visible,
.ba-primary > a[aria-current="page"],
.ba-nav-disclosure__link:hover,
.ba-nav-disclosure__link:focus-visible,
.ba-nav-disclosure__link[aria-current="page"],
.ba-nav-disclosure:hover > .ba-nav-disclosure__link,
.ba-nav-disclosure:focus-within > .ba-nav-disclosure__link { color: var(--ba-x-white); }
.ba-primary > a:hover::after,
.ba-primary > a:focus-visible::after,
.ba-primary > a[aria-current="page"]::after,
.ba-nav-disclosure__link:hover::after,
.ba-nav-disclosure__link:focus-visible::after,
.ba-nav-disclosure__link[aria-current="page"]::after,
.ba-nav-disclosure:hover > .ba-nav-disclosure__link::after,
.ba-nav-disclosure:focus-within > .ba-nav-disclosure__link::after { right: 0; }
.ba-primary > .ba-federal-link { color: var(--ba-x-blue); }

.ba-nav-disclosure { position: relative; }
.ba-nav-panel {
  position: absolute;
  left: -1.2rem;
  top: 100%;
  z-index: 20;
  width: min(34rem, calc(100vw - 2rem));
  padding: .8rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(.45rem);
  background: rgba(4, 8, 34, .98);
  border: 1px solid rgba(205, 229, 241, .18);
  border-top: 2px solid var(--ba-x-blue);
  box-shadow: 0 22px 60px rgba(0, 0, 0, .32);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.ba-nav-disclosure:hover > .ba-nav-panel,
.ba-nav-disclosure:focus-within > .ba-nav-panel { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }

.ba-nav-panel__intro {
  display: none;
}

.ba-nav-panel__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: rgba(205, 229, 241, .12);
}

.ba-nav-panel__grid--partners { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ba-nav-panel__grid--partners .ba-nav-panel__prime { grid-column: 1 / -1; }

.ba-nav-panel__grid a {
  display: grid;
  align-content: center;
  gap: .18rem;
  min-height: 3.8rem;
  padding: .85rem;
  background: var(--ba-x-ink);
  color: var(--ba-x-white);
  text-decoration: none;
  transition: background-color .2s ease, color .2s ease;
}
.ba-nav-panel__grid a strong {
  font-size: 1rem !important;
  font-weight: 700;
}
.ba-nav-panel__grid a span {
  color: var(--ba-x-sky);
  font-size: .75rem;
  line-height: 1.35;
}
.ba-nav-panel__grid a:hover,
.ba-nav-panel__grid a:focus-visible {
  background: var(--ba-x-navy);
  color: var(--ba-x-blue);
}
.ba-nav-panel__grid .ba-nav-panel__resource {
  grid-column: 1 / -1;
  min-height: 4.8rem;
  padding-inline: 1rem;
}
.ba-nav-panel__grid .ba-nav-panel__resource span {
  max-width: 34rem;
}

.ba-nav-panel__blueprint {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-top: .75rem;
  padding: .75rem .7rem .2rem;
  color: var(--ba-x-blue);
  font-size: 1rem !important;
  font-weight: 700;
  text-decoration: none;
}
.ba-nav-panel__insights-copy {
  display: grid;
  gap: .18rem;
}
.ba-nav-panel__insights-copy strong {
  color: inherit;
  font-size: 1rem;
  font-weight: 700;
}
.ba-nav-panel__insights-copy small {
  max-width: 31rem;
  color: var(--ba-x-sky);
  font-size: .75rem;
  font-weight: 400;
  line-height: 1.35;
}
.ba-nav-panel__blueprint:hover,
.ba-nav-panel__blueprint:focus-visible { color: var(--ba-x-white); }

.ba-nav-panel--industries {
  right: -12rem;
  left: auto;
  width: min(52rem, calc(100vw - 2rem));
}
.ba-nav-disclosure--about .ba-nav-panel { right: 0; left: auto; }
.ba-nav-industries {
  display: grid;
  grid-template-columns: .85fr 1.55fr;
  gap: 1px;
  background: rgba(205, 229, 241, .12);
}
.ba-nav-industries section {
  padding: 1rem;
  background: var(--ba-x-ink);
}
.ba-nav-industries .ba-micro { color: var(--ba-x-blue); }
.ba-nav-industries section > div { display: grid; gap: .52rem; margin-top: .75rem; }
.ba-nav-industries a {
  color: var(--ba-x-white);
  font-size: 1rem !important;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  transition: color .2s ease;
}
.ba-nav-industries a:hover,
.ba-nav-industries a:focus-visible { color: var(--ba-x-blue); }

.ba-masthead__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: .8rem;
}
.ba-search-toggle {
  display: grid;
  width: 2.15rem;
  height: 2.15rem;
  place-items: center;
  padding: 0;
  background: transparent;
  border: 0;
  color: var(--ba-x-sky);
  cursor: pointer;
}
.ba-search-toggle i { position: relative; top: -2px; left: -2px; display: block; width: .9rem; height: .9rem; border: 1.5px solid currentColor; border-radius: 50%; }
.ba-search-toggle i::after { content: ""; position: absolute; left: 50%; top: 50%; width: .45rem; height: 1.5px; background: currentColor; transform: translateY(-50%) rotate(45deg) translateX(.55rem); transform-origin: left center; }
.ba-search-toggle:hover,
.ba-search-toggle:focus-visible { color: var(--ba-x-blue); }
/* Header search is an unboxed white glyph, not a glass form button. */
body.ba-exec .ba-masthead .ba-search-toggle.hs-button,
body.ba-exec .ba-masthead .ba-search-toggle.hs-button:is(:hover,:focus-visible,:active) {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  color: var(--ba-x-white) !important;
  transform: none !important;
}
body.ba-exec .ba-masthead .ba-search-toggle.hs-button:focus-visible {
  outline: 2px solid var(--ba-x-blue) !important;
  outline-offset: 2px !important;
}
.ba-masthead__cta {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  flex: 0 0 auto;
  color: var(--ba-x-white);
  font-size: .9rem;
  font-weight: 700;
  text-decoration: none;
}
.ba-masthead__cta::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -.35rem;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, var(--ba-x-blue), rgba(185, 237, 255, .2));
  transform-origin: left;
  transition: transform .25s ease;
}
.ba-masthead__cta i { color: var(--ba-x-blue); font-size: 1rem; font-style: normal; transition: transform .25s ease; }
.ba-masthead__cta:hover,
.ba-masthead__cta:focus-visible { color: var(--ba-x-blue); }
.ba-masthead__cta:hover::after,
.ba-masthead__cta:focus-visible::after { transform: scaleX(.65); }
.ba-masthead__cta:hover i,
.ba-masthead__cta:focus-visible i { transform: translate(.18rem, -.18rem); }
.ba-mobile-nav { display: none; margin-left: auto; }

.ba-site-search {
  width: min(50rem, calc(100vw - 2rem));
  max-height: min(42rem, calc(100vh - 5rem));
  margin: calc(var(--ba-x-header) + 1rem) auto auto;
  padding: 0;
  overflow: hidden;
  background: var(--ba-x-white);
  border: 0;
  border-top: 2px solid var(--ba-x-blue);
  color: var(--ba-x-ink);
  box-shadow: 0 28px 80px rgba(0, 0, 0, .34);
}
.ba-site-search::backdrop { background: rgba(4, 8, 34, .72); backdrop-filter: blur(7px); }
.ba-site-search__head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; padding: 1.4rem 1.5rem 1rem; }
.ba-site-search__head .ba-micro { color: var(--ba-x-blue); }
.ba-site-search__head h2 { margin: .45rem 0 0; color: var(--ba-x-navy); font-size: 1.5rem; font-weight: 400; }
.ba-site-search__head button { padding: .35rem 0; background: transparent; border: 0; border-bottom: 1px solid currentColor; color: var(--ba-x-soft); font-size: .9rem; font-weight: 700; cursor: pointer; }
.ba-site-search__field { display: block; padding: 0 1.5rem; }
.ba-site-search__field input { width: 100%; padding: .8rem 0; background: transparent; border: 0; border-bottom: 1px solid var(--ba-x-navy); border-radius: 0; color: var(--ba-x-ink); font-size: 1rem; outline: 0; }
.ba-site-search__field input:focus { border-color: var(--ba-x-blue); }
.ba-site-search__status { margin: .7rem 1.5rem 0; color: var(--ba-x-soft); font-size: .9rem; }
.ba-site-search__results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 27rem; margin: 1rem 0 0; padding: 0 1.5rem 1.5rem; overflow-y: auto; list-style: none; }
.ba-site-search__results li { border-bottom: 1px solid var(--ba-x-line); }
.ba-site-search__results li:nth-child(odd) { margin-right: 1.2rem; }
.ba-site-search__results li[hidden] { display: none; }
.ba-site-search__results a { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; min-height: 4.4rem; padding: .7rem 0; color: var(--ba-x-navy); font-size: .9rem; text-decoration: none; }
.ba-site-search__copy { display: grid; gap: .18rem; min-width: 0; }
.ba-site-search__copy strong { line-height: 1.3; }
.ba-site-search__copy small {
  display: -webkit-box;
  overflow: hidden;
  color: var(--ba-x-soft);
  font-size: .75rem;
  font-weight: 400;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.ba-site-search__results a > span[aria-hidden="true"] { flex: 0 0 auto; margin-top: .05rem; color: var(--ba-x-blue); transition: transform .2s ease; }
.ba-site-search__results a:hover > span[aria-hidden="true"],
.ba-site-search__results a:focus-visible > span[aria-hidden="true"] { transform: translateX(.2rem); }

/* Deck-derived split-image hero. The right third remains monochrome while the
   left field takes the BlueAlly focus overlay. */
.ba-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: clamp(34rem, 72vh, 46rem);
  overflow: hidden;
  isolation: isolate;
  background: var(--ba-x-ink);
  color: var(--ba-x-white);
}
body.ba-has-hero main > .ba-hero:first-child {
  margin-top: calc(-1 * var(--ba-x-header));
}

.ba-hero__media,
.ba-hero__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.ba-hero__media img {
  object-fit: cover;
  object-position: var(--ba-hero-focus, 50% 50%);
  filter: grayscale(1) contrast(1.17) brightness(.92);
  transform: scale(1.01);
}

.ba-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg,
      rgba(4, 8, 34, .78) 0%,
      rgba(4, 8, 34, .52) 11%,
      rgba(4, 8, 34, .18) 25%,
      transparent 40%),
    linear-gradient(90deg,
      rgba(4, 8, 34, .98) 0%,
      rgba(4, 8, 34, .94) 14%,
      rgba(22, 50, 79, .9) 40%,
      rgba(0, 66, 172, .68) 63%,
      rgba(91, 111, 130, .24) 78%,
      rgba(207, 213, 219, .08) 100%);
  pointer-events: none;
}

.ba-hero--deck .ba-hero__media img {
  filter: none;
  transform: none;
}
.ba-hero--deck::after {
  background:
    linear-gradient(180deg, rgba(4, 8, 34, .76), rgba(4, 8, 34, .34) 15%, transparent 38%),
    linear-gradient(90deg, rgba(4, 8, 34, .48), rgba(4, 8, 34, .08) 48%, transparent 64%);
}
.ba-home-hero::before { display: none; }

.ba-hero__content {
  position: relative;
  z-index: 3;
  width: min(66%, 52rem);
  padding-block: clamp(5rem, 10vw, 8.5rem) clamp(4rem, 7vw, 6rem);
}

.ba-hero .ba-display { color: var(--ba-x-white) !important; }
.ba-hero .ba-lead {
  margin: 1.4rem 0 0;
  color: var(--ba-x-sky);
}
.ba-hero__accent {
  display: block;
  color: var(--ba-x-blue);
}
.ba-display--inline-accent .ba-hero__accent { display: inline; }

@media (min-width: 68.01rem) {
  .ba-display--inline-accent { white-space: nowrap; }
}

.ba-hero--ian .ba-hero__media img {
  filter: grayscale(.25) contrast(.96) brightness(1.35);
}

.ba-home2-hero .ba-hero__media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1) contrast(1.24) brightness(1.14);
  transform: scale(1.008);
}
.ba-home2-hero::after {
  background:
    linear-gradient(180deg,
      rgba(4, 8, 34, .72) 0%,
      rgba(4, 8, 34, .42) 12%,
      rgba(4, 8, 34, .12) 26%,
      transparent 40%),
    linear-gradient(90deg,
      rgba(22, 50, 79, .66) 0%,
      rgba(0, 68, 166, .52) 36%,
      rgba(47, 127, 187, .34) 56%,
      rgba(137, 171, 194, .19) 76%,
      rgba(236, 239, 242, .08) 100%);
}
.ba-home2-hero::before {
  display: none;
}
.ba-video-control {
  position: absolute;
  right: var(--ba-x-gutter);
  bottom: 1.4rem;
  z-index: 4;
  display: grid;
  width: 2.9rem;
  height: 2.9rem;
  place-items: center;
  padding: 0;
  background: rgba(4, 8, 34, .55);
  border: 1px solid rgba(205, 229, 241, .46);
  border-radius: 50%;
  color: var(--ba-x-white);
  cursor: pointer;
  backdrop-filter: blur(12px);
}
.ba-video-control__icon { color: var(--ba-x-white); font-size: .9rem; font-weight: 700; line-height: 1; }
.ba-video-control:hover,
.ba-video-control:focus-visible { background: var(--ba-x-navy); border-color: var(--ba-x-blue); }

.ba-hero--animated .ba-hero__media img,
.ba-hero--animated .ba-hero__media video {
  animation: ba-hero-image-in 1.35s cubic-bezier(.2, .7, .2, 1) both;
}
.ba-hero--animated .ba-hero__content > * {
  animation: ba-hero-copy-in .72s cubic-bezier(.2, .75, .25, 1) both;
}
.ba-hero--animated .ba-hero__content > :nth-child(1) { animation-delay: .12s; }
.ba-hero--animated .ba-hero__content > :nth-child(2) { animation-delay: .22s; }
.ba-hero--animated .ba-hero__content > :nth-child(3) { animation-delay: .34s; }
.ba-hero--animated .ba-hero__content > :nth-child(4) { animation-delay: .46s; }

@keyframes ba-hero-image-in {
  from { opacity: .5; transform: scale(1.045); }
  to { opacity: 1; transform: scale(1); }
}
@keyframes ba-hero-copy-in {
  from { opacity: 0; transform: translateY(1.1rem); }
  to { opacity: 1; transform: translateY(0); }
}

.ba-home-ribbon {
  position: relative;
  overflow: hidden;
  background: rgba(244, 247, 250, .96);
  border-bottom: 1px solid var(--ba-x-line);
}
.ba-home-ribbon::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(0, 76, 167, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 76, 167, .045) 1px, transparent 1px);
  background-size: 1.3rem 1.3rem;
  mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
}
.ba-home-ribbon .ba-shell { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1.5rem; align-items: center; min-height: 6.5rem; padding-block: .8rem; }
.ba-home-ribbon > .ba-shell > .ba-micro { color: var(--ba-x-soft); white-space: nowrap; }
.ba-home-ribbon nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .55rem; }
.ba-home-ribbon a { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: .65rem; align-items: center; min-height: 3.25rem; padding: .65rem .75rem; background: rgba(255, 255, 255, .72); border: 1px solid rgba(0, 76, 167, .13); color: var(--ba-x-navy); font-size: .9rem; font-weight: 700; line-height: 1.25; text-decoration: none; transition: background-color .2s ease, border-color .2s ease, transform .2s ease; }
.ba-home-ribbon a::after { content: ""; position: absolute; right: 100%; bottom: -1px; left: 0; height: 2px; background: var(--ba-x-blue); transition: right .25s ease; }
.ba-home-ribbon a:hover,
.ba-home-ribbon a:focus-visible { background: var(--ba-x-white); border-color: rgba(2, 162, 253, .6); transform: translateY(-2px); }
.ba-home-ribbon a:hover::after,
.ba-home-ribbon a:focus-visible::after { right: 0; }
.ba-home-ribbon a i { width: .48rem; height: .48rem; background: var(--ba-x-blue); border-radius: 50%; box-shadow: 0 0 0 .3rem rgba(2, 162, 253, .1); }
.ba-home-ribbon a b { color: var(--ba-x-blue); font-weight: 700; }

.ba-proofbar {
  background: #171a20;
  color: var(--ba-x-white);
  border-top: 1px solid rgba(255, 255, 255, .12);
}
.ba-proofbar__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.ba-proofbar__item {
  display: grid;
  gap: .28rem;
  min-height: 7.25rem;
  align-content: center;
  padding: 1.2rem clamp(.8rem, 2vw, 1.7rem);
  border-right: 1px solid rgba(255, 255, 255, .12);
}
.ba-proofbar__item:first-child { border-left: 1px solid rgba(255, 255, 255, .12); }
.ba-proofbar__item b {
  color: var(--ba-x-white);
  font-size: 1.25rem;
  font-weight: 400;
}
.ba-proofbar__item span { color: #c7cbd3; font-size: 1rem; line-height: 1.35; }

.ba-section-nav {
  position: sticky;
  top: var(--ba-x-header);
  z-index: 50;
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid var(--ba-x-line);
  backdrop-filter: blur(14px);
}
.ba-section-nav__row {
  display: flex;
  align-items: center;
  gap: .25rem;
  min-height: 3.7rem;
  overflow-x: auto;
  scrollbar-width: none;
}
.ba-section-nav__row::-webkit-scrollbar { display: none; }
.ba-section-nav__label {
  margin-right: .8rem;
  color: var(--ba-x-soft);
  white-space: nowrap;
}
.ba-section-nav a { font-weight: 400; }
.ba-filter button { font-weight: 700; }
.ba-section-nav a,
.ba-filter button,
.ba-tabs button {
  flex: 0 0 auto;
  margin-inline: .35rem;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--ba-x-navy);
  padding: .55rem .1rem;
  font-size: .9rem !important;
  line-height: 1.2 !important;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.ba-section-nav a:hover,
.ba-section-nav a:focus-visible,
.ba-section-nav a[aria-current="true"],
.ba-filter button:hover,
.ba-filter button:focus-visible,
.ba-filter button[aria-pressed="true"],
.ba-tabs button:hover,
.ba-tabs button:focus-visible,
.ba-tabs button[aria-selected="true"] {
  background: transparent;
  border-bottom-color: var(--ba-x-blue);
  color: var(--ba-x-navy);
}

.ba-band {
  position: relative;
  padding-block: clamp(3.5rem, 6vw, 5.5rem);
  overflow: hidden;
}
.ba-band--white { background: var(--ba-x-white); }
.ba-band--cloud { background: var(--ba-x-cloud); }
.ba-band--navy { background: var(--ba-x-navy); color: var(--ba-x-white); }
.ba-band--ink { background: var(--ba-x-ink); color: var(--ba-x-white); }

.ba-band--navy .ba-title,
.ba-band--ink .ba-title { color: var(--ba-x-white) !important; }
.ba-band--navy .ba-copy,
.ba-band--ink .ba-copy,
.ba-band--navy .ba-lead,
.ba-band--ink .ba-lead { color: var(--ba-x-sky); }

/* Telecom Expense Management: an audit-led field with the energy of our services presentation. */
.ba-tem { background: #edf3f5; }
.ba-tem__intro {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(18rem, .55fr);
  gap: clamp(2rem, 4vw, 4rem);
  align-items: end;
  padding-bottom: 2rem;
  border-bottom: 1px solid var(--ba-x-line);
}
.ba-tem__intro .ba-title { white-space: nowrap; }
.ba-tem__intro .ba-copy { margin: 0; color: var(--ba-x-soft); }
.ba-tem__outcomes {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid var(--ba-x-line);
}
.ba-tem__outcomes article { min-height: 13.5rem; padding: 1.35rem 1.3rem 1.45rem 0; }
.ba-tem__outcomes article + article { padding-left: 1.3rem; border-left: 1px solid var(--ba-x-line); }
.ba-tem__outcomes .ba-micro { color: var(--ba-x-blue); }
.ba-tem__outcomes h3 { margin: 2.15rem 0 .55rem; color: var(--ba-x-navy); font-size: 1.12rem; font-weight: 600; line-height: 1.22; }
.ba-tem__outcomes p { margin: 0; color: var(--ba-x-soft); font-size: .9rem; line-height: 1.47; }
.ba-tem__work {
  position: relative;
  margin-top: 2.6rem;
  padding: clamp(1.5rem, 4vw, 3rem);
  overflow: hidden;
  background: var(--ba-x-ink);
  color: var(--ba-x-white);
}
.ba-tem__work::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(115deg, rgba(2,162,253,.18), transparent 38%), linear-gradient(90deg, transparent 0 32%, rgba(205,229,241,.08) 32% 32.12%, transparent 32.12%);
}
.ba-tem__work-head { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 2rem; align-items: baseline; margin-bottom: 1.55rem; }
.ba-tem__work-head .ba-micro { color: var(--ba-x-blue); }
.ba-tem__work-head p { max-width: 39rem; margin: 0; color: var(--ba-x-sky); font-size: .9rem; line-height: 1.45; }
.ba-tem__work-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(205,229,241,.19); border: 1px solid rgba(205,229,241,.19); }
.ba-tem__work-grid article { display: grid; gap: .6rem; min-height: 12.6rem; padding: 1.35rem 1.4rem 1.45rem; background: rgba(48,65,97,.82); transition: background-color .28s ease, transform .28s ease; }
.ba-tem__work-grid article:hover { background: var(--ba-x-navy); transform: translateY(-.24rem); }
.ba-tem__work-grid b { margin-bottom: .48rem; color: var(--ba-x-white); font-size: 1rem; font-weight: 700; line-height: 1.3; }
.ba-tem__work-grid span { padding-top: .58rem; border-top: 1px solid rgba(205,229,241,.19); color: var(--ba-x-sky); font-size: .9rem; line-height: 1.35; }
.ba-tem__providers { display: grid; grid-template-columns: minmax(16rem, .8fr) minmax(0, 1.6fr); gap: 2rem; align-items: center; margin-top: 2.5rem; padding: 1.35rem 0; border-top: 2px solid var(--ba-x-navy); border-bottom: 1px solid var(--ba-x-line); }
.ba-tem__providers .ba-micro { color: var(--ba-x-blue); }
.ba-tem__providers p { max-width: 33rem; margin: .55rem 0 0; color: var(--ba-x-soft); font-size: .9rem; line-height: 1.45; }
.ba-tem__provider-logos { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .45rem; align-items: stretch; }
.ba-tem__provider-logos > div { display: grid; min-height: 3.85rem; place-items: center; padding: .65rem; background: rgba(255,255,255,.62); border: 1px solid rgba(22,50,79,.11); transition: background-color .24s ease, border-color .24s ease, transform .24s ease; }
.ba-tem__provider-logos img { display: block; width: 100%; max-width: 5.6rem; max-height: 1.55rem; object-fit: contain; mix-blend-mode: multiply; filter: grayscale(1) contrast(.72) opacity(.58); transition: filter .28s ease, transform .28s ease; }
.ba-tem__provider-logos > div:hover,
.ba-tem__provider-logos > div:focus-within { background: var(--ba-x-white); border-color: rgba(2,162,253,.62); transform: translateY(-.18rem); }
.ba-tem__provider-logos > div:hover img,
.ba-tem__provider-logos > div:focus-within img { filter: grayscale(0) contrast(1) opacity(1); transform: scale(1.045); }
.ba-tem .ba-actions { margin-top: 1.2rem; }

@media (max-width: 68rem) {
  .ba-tem__intro, .ba-tem__providers { grid-template-columns: 1fr; gap: 1.25rem; }
  .ba-tem__intro .ba-title { white-space: normal; }
  .ba-tem__outcomes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-tem__outcomes article:nth-child(3) { padding-left: 0; border-left: 0; border-top: 1px solid var(--ba-x-line); }
  .ba-tem__outcomes article:nth-child(4) { border-top: 1px solid var(--ba-x-line); }
}
@media (max-width: 47.99rem) {
  .ba-tem__outcomes, .ba-tem__work-grid { grid-template-columns: 1fr; }
  .ba-tem__outcomes article, .ba-tem__outcomes article + article { min-height: auto; padding: 1.15rem 0; border-left: 0; border-top: 1px solid var(--ba-x-line); }
  .ba-tem__outcomes article:first-child { border-top: 0; }
  .ba-tem__outcomes h3 { margin-top: .7rem; }
  .ba-tem__work-head { display: grid; gap: .65rem; }
  .ba-tem__work { margin-top: 2rem; padding: 1.25rem; }
  .ba-tem__work-grid article { min-height: auto; }
  .ba-tem__provider-logos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 68rem) {
  .ba-band__head .ba-copy { max-width: 48rem; }
  .ba-band__head { grid-template-columns: minmax(0, 1fr) minmax(22rem, .78fr); }
  .ba-band__head > div:only-child { grid-column: 1 / -1; }
}

/* Federal: a measured, evidence-led field system built for long-form mission content. */
.ba-federal-intro__foot { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--ba-x-line); }
.ba-federal-intro__foot p { max-width: 58ch; margin: 0; color: var(--ba-x-soft); }
.ba-federal-differentiators { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--ba-x-line); border: 1px solid var(--ba-x-line); }
.ba-federal-differentiators article { min-height: 13rem; padding: 1.45rem; background: var(--ba-x-white); }
.ba-federal-differentiators span { display: block; color: var(--ba-x-blue); font-size: .75rem; font-weight: 700; letter-spacing: .14em; }
.ba-federal-differentiators h3, .ba-federal-resources h3 { margin: 1.45rem 0 .55rem; color: var(--ba-x-navy); font-size: 1.1rem; font-weight: 600; line-height: 1.25; }
.ba-federal-differentiators p, .ba-federal-resources p { margin: 0; color: var(--ba-x-soft); font-size: .9rem; line-height: 1.5; }
.ba-federal-segments { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: rgba(205,229,241,.22); }
.ba-federal-segments a { display: flex; min-height: 16rem; flex-direction: column; justify-content: space-between; padding: 1.5rem; background: rgba(255,255,255,.045); color: var(--ba-x-white); text-decoration: none; transition: background-color .2s ease; }
.ba-federal-segments a:hover, .ba-federal-segments a:focus-visible { background: var(--ba-x-navy); }
.ba-federal-segments span { color: var(--ba-x-blue); font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ba-federal-segments strong { font-size: 1rem; font-weight: 400; line-height: 1.35; }
.ba-federal-capabilities { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0; border-top: 1px solid var(--ba-x-line); }
.ba-capability-link { text-decoration: underline; text-decoration-color: var(--ba-x-blue); text-underline-offset: .22em; }
.ba-capability-link:focus-visible { outline: 2px solid var(--ba-x-blue); outline-offset: 4px; }
.ba-federal-capabilities span { padding: 1.1rem 1.35rem 1.1rem 0; border-bottom: 1px solid var(--ba-x-line); color: var(--ba-x-navy); font-size: 1rem; font-weight: 400; line-height: 1.35; }
.ba-federal-capabilities span:nth-child(even) { padding-left: 1.35rem; border-left: 1px solid var(--ba-x-line); }
.ba-federal-roadmap { margin: 0; padding: clamp(1rem,3vw,2.5rem); overflow-x: auto; background: #f1f0f1; border: 1px solid var(--ba-x-line); }
.ba-federal-roadmap img { display: block; min-width: 44rem; width: 100%; height: auto; }
.ba-federal-certifications { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1px; background: rgba(205,229,241,.22); }
.ba-federal-certifications span { display: flex; min-height: 6.5rem; align-items: center; padding: 1rem; background: rgba(255,255,255,.04); color: var(--ba-x-white); font-size: .9rem; font-weight: 700; line-height: 1.3; }
.ba-federal-trust { display: flex; justify-content: space-between; align-items: end; gap: 1.5rem; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid rgba(205,229,241,.25); }
.ba-federal-trust .ba-micro { color: var(--ba-x-blue); }
.ba-federal-trust p { margin: .25rem 0 0; color: var(--ba-x-sky); }
.ba-federal-closecopy { max-width: 66ch; margin: -1rem 0 0; color: var(--ba-x-soft); font-size: 1.25rem; }
.ba-federal-resources { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--ba-x-line); border: 1px solid var(--ba-x-line); }
.ba-federal-resources article { display: flex; min-height: 21rem; flex-direction: column; padding: 1.45rem; background: var(--ba-x-white); }
.ba-federal-resources h3 { margin-top: 0; }
.ba-federal-resources .ba-card__link { margin-top: auto; padding-top: 1.3rem; }
.ba-federal-faq__list { border-top: 1px solid var(--ba-x-line); }
.ba-federal-faq details { border-bottom: 1px solid var(--ba-x-line); }
.ba-federal-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.15rem 0; color: var(--ba-x-navy); font-size: 1rem; font-weight: 700; cursor: pointer; list-style: none; }
.ba-federal-faq summary::-webkit-details-marker { display: none; }
.ba-federal-faq summary::after { content: "+"; color: var(--ba-x-blue); font-size: 1rem; font-weight: 400; }
.ba-federal-faq details[open] summary::after { content: "−"; }
.ba-federal-faq details p { max-width: 85ch; margin: 0; padding: 0 2rem 1.3rem 0; color: var(--ba-x-soft); }
.ba-federal-faq details a { color: var(--ba-x-navy); font-weight: 700; }

/* Resource center: editorial signal, not a directory. */
.ba-resource-hero { padding: clamp(8rem,16vw,12rem) 0 5rem; background: linear-gradient(120deg,#040822 0%,#16324f 72%,#063f85); color:var(--ba-x-white); }
.ba-resource-hero .ba-display { max-width: 12ch!important; }.ba-resource-hero .ba-display span { color:var(--ba-x-blue); }.ba-resource-hero p { max-width:58ch; margin:1.4rem 0 0; color:var(--ba-x-sky); font-size: clamp(1rem, 1.8vw, 1.25rem); }
.ba-resources { padding:3.5rem 0 6rem; background:var(--ba-x-cloud); }.ba-resources__control { display:flex; justify-content:space-between; gap:1rem; border-bottom:1px solid var(--ba-x-line); padding-bottom:1rem; }
.ba-resource-search { width:min(40rem,100%); }.ba-resource-search input { width:100%; padding:.75rem 0; border:0; border-bottom:2px solid var(--ba-x-navy); background:transparent; color:var(--ba-x-ink); outline:0; }.ba-resource-search input:focus { border-color:var(--ba-x-blue); }
.ba-resource-types { display:flex; flex-wrap:wrap; gap:.45rem; padding:1.25rem 0 .3rem; }.ba-resource-types button { padding:.45rem .8rem; border:1px solid var(--ba-x-line); background:var(--ba-x-white); color:var(--ba-x-navy); }.ba-resource-types button[aria-pressed="true"],.ba-resource-types button:hover,.ba-resource-types button:focus-visible { border-color:var(--ba-x-blue); background:var(--ba-x-navy); color:var(--ba-x-white); outline:0; }
.ba-resources button { background:none; border:0; border-bottom:1px solid currentColor; color:var(--ba-x-navy); font-size:.9rem; font-weight:700; cursor:pointer; }.ba-resource-filters { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:.7rem; padding:1.25rem 0; }.ba-resource-filters label { color:var(--ba-x-soft); letter-spacing:.08em; text-transform:uppercase; }.ba-resource-filters select { display:block; width:100%; margin-top:.4rem; padding:.45rem 0; border:0; border-bottom:1px solid var(--ba-x-line); background:transparent; color:var(--ba-x-navy); }
.ba-resource-summary { display:flex; gap:.65rem; align-items:baseline; margin:1rem 0 1.2rem; }.ba-resource-summary strong {
  letter-spacing: -.01em;
}.ba-resource-summary span { color:var(--ba-x-soft); }
.ba-resource-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--ba-x-line); border:1px solid var(--ba-x-line); }.ba-resource-grid article { display:flex; min-height:15rem; flex-direction:column; padding:1.35rem; background:#fdfdfd; }.ba-resource-grid article:hover { background:transparent; }.ba-resource-grid article[hidden] { display:none; }.ba-resource-grid article>span { color:var(--ba-x-blue); letter-spacing:.1em; text-transform:uppercase; }.ba-resource-grid h2 { margin:.9rem 0 .65rem; color:var(--ba-x-navy); font-size: clamp(1.08rem, 1.8vw, 1.25rem); font-weight: 500; line-height:1.2;
  letter-spacing: -.01em;
}.ba-resource-grid p { margin:0; color:var(--ba-x-soft); }.ba-resource-grid a { margin-top:auto; padding-top:1rem; color:var(--ba-x-navy); text-decoration-thickness:1px; text-underline-offset:.25rem; }.ba-resource-grid img { width:5rem; max-height:6.2rem; margin:-.25rem 0 .8rem; object-fit:cover; object-position:top; }.ba-resource-empty { padding:4rem 0; text-align:center; }.ba-resource-empty button { margin:.8rem auto 0; display:block; }

/* Federal: image-led audiences, compact evidence system, responsive roadmap. */
.ba-federal-segments a { position:relative; overflow:hidden; background-size:cover; background-position:center; isolation:isolate; }.ba-federal-segments a::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(4,8,34,.12),rgba(4,8,34,.94)); }.ba-federal-segments a:nth-child(1) { background-image:url("/assets/images/federal/federal-defense.jpg"); }.ba-federal-segments a:nth-child(2) { background-image:url("/assets/images/federal/federal-civilian.jpg"); }.ba-federal-segments a:nth-child(3) { background-image:url("/assets/images/federal/federal-integrators.jpg"); }
.ba-federal-capabilities span { display:flex; gap:.8rem; align-items:flex-start; }.ba-federal-capabilities span::before { content:""; flex:0 0 .65rem; width:.65rem; height:.65rem; margin-top:.35rem; border:1px solid var(--ba-x-blue); border-radius:50%; box-shadow:inset 0 0 0 3px var(--ba-x-cloud); }
.ba-federal-roadmap { padding:0; background:transparent; overflow:visible; border:0; }.ba-roadmap-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin:0; padding:0; list-style:none; background:var(--ba-x-line); counter-reset:roadmap; }.ba-roadmap-steps li { position:relative; display:grid; grid-template-columns:auto 1fr; gap:1rem; min-height:13rem; padding:1.5rem; background:var(--ba-x-cloud); }.ba-roadmap-steps span { color:var(--ba-x-blue); line-height:1; }.ba-roadmap-steps strong { color:var(--ba-x-navy); }.ba-roadmap-steps p { margin:.6rem 0 0; color:var(--ba-x-soft); }
.ba-federal-certifications { grid-template-columns:repeat(5,1fr); gap:.7rem; background:transparent; }.ba-federal-certifications span { min-height:5.4rem; justify-content:center; padding:.65rem; background:rgba(205,229,241,.08); border:1px solid rgba(205,229,241,.2); }.ba-federal-certifications img { max-width:100%; max-height:3.8rem; filter:grayscale(1) brightness(2); opacity:.85; }
.ba-federal-resources article { position:relative; padding-top:8rem; }.ba-federal-resources article::before { content:""; position:absolute; top:1.4rem; left:1.45rem; width:4.25rem; height:5.4rem; background-size:cover; background-position:top; box-shadow:0 8px 18px rgba(4,8,34,.16); }.ba-federal-resources article:nth-child(1)::before { background-image:url("/assets/images/resources/federal-network-automation-cover.webp"); }.ba-federal-resources article:nth-child(2)::before { background-image:url("/assets/images/resources/federal-ai-capability-cover.webp"); }.ba-federal-resources article:nth-child(3)::before { background-image:url("/assets/images/resources/mission-transport-workshop-cover.webp"); }
.ba-federal-faq details { padding:0 .25rem; }.ba-federal-faq summary { padding: .85rem 0; }.ba-federal-faq details p { padding-bottom:.9rem; }
@media (max-width: 60rem) { .ba-resource-filters { grid-template-columns:repeat(3,minmax(0,1fr)); }.ba-resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.ba-roadmap-steps { grid-template-columns:1fr; }.ba-roadmap-steps li { min-height:auto; } }
@media (max-width: 47.99rem) { .ba-resource-hero { padding-top:7rem; }.ba-resource-filters,.ba-resource-grid { grid-template-columns:1fr; }.ba-resources__control { align-items:flex-start; flex-direction:column; }.ba-federal-certifications { grid-template-columns:repeat(2,1fr); }.ba-federal-segments { grid-template-columns:1fr; } }

.ba-ai-lifecycle { display:grid; grid-template-columns:repeat(4,1fr); gap:0; counter-reset:ai-life; border-top:1px solid var(--ba-x-line); border-left:1px solid var(--ba-x-line); }.ba-ai-lifecycle .ba-outcome { position:relative; min-height:15rem; padding:3.5rem 1.1rem 1.2rem; border-right:1px solid var(--ba-x-line); border-bottom:1px solid var(--ba-x-line); background:transparent; }.ba-ai-lifecycle .ba-outcome::before { counter-increment:ai-life; content:"0" counter(ai-life); position:absolute; top:1.1rem; left:1.1rem; display:grid; width:1.65rem; height:1.65rem; place-items:center; border:1px solid var(--ba-x-blue); border-radius:50%; color:var(--ba-x-blue); }.ba-ai-lifecycle .ba-outcome:nth-child(2n)::before { border-radius:0; transform:rotate(45deg); }.ba-ai-lifecycle .ba-outcome:nth-child(2n)::before { color:transparent; }.ba-ai-lifecycle .ba-outcome:nth-child(2n)::after { counter-increment:none; content:""; position:absolute; top:1.65rem; left:1.65rem; width:.55rem; height:.55rem; background:var(--ba-x-blue); transform:rotate(45deg); }.ba-ai-lifecycle .ba-outcome h3 { color:var(--ba-x-navy); }.ba-ai-lifecycle .ba-outcome:hover { background:rgba(2,162,253,.06); }
@media(max-width:47.99rem){.ba-ai-lifecycle{grid-template-columns:repeat(2,1fr)}.ba-ai-lifecycle .ba-outcome{min-height:13rem}}
@media (max-width: 47.99rem) {
  .ba-federal-intro__foot, .ba-federal-trust { align-items: flex-start; flex-direction: column; }
  .ba-federal-differentiators, .ba-federal-segments, .ba-federal-resources { grid-template-columns: 1fr; }
  .ba-federal-differentiators article, .ba-federal-segments a { min-height: auto; }
  .ba-federal-segments a { gap: 2.5rem; }
  .ba-federal-capabilities { grid-template-columns: 1fr; }
  .ba-federal-capabilities span:nth-child(even) { padding-left: 0; border-left: 0; }
  .ba-federal-certifications { grid-template-columns: repeat(2, 1fr); }
  .ba-federal-certifications span { min-height: 5.5rem; }
}

/* Compact, icon-led Federal refinement. */
.ba-federal .ba-band { padding-block: clamp(2.8rem, 5vw, 4.35rem); }
.ba-federal #federal-differentiators,
.ba-federal #federal-certifications { scroll-margin-top: calc(var(--ba-x-header) + 1rem); }
.ba-federal-differentiators { grid-template-columns: repeat(2, minmax(0, 1fr)); background: transparent; border: 0; gap: .7rem 2.25rem; }
.ba-federal-differentiators article { display: grid; grid-template-columns: 3.4rem minmax(0, 1fr); gap: .9rem; min-height: 0; padding: .55rem 0 1.1rem; background: transparent; border-bottom: 1px solid var(--ba-x-line); }
.ba-federal-differentiators article > img { width: 2.65rem; max-height: 2.65rem; object-fit: contain; object-position: top center; }
.ba-federal-differentiators span { display: none; }
.ba-federal-differentiators h3 { margin: 0 0 .28rem; font-size: 1rem; }
.ba-federal-differentiators p { line-height: 1.42; }
.ba-federal-segments { grid-template-columns: repeat(3, minmax(0, 1fr)); background: transparent; gap: 1rem; }
.ba-federal-segments a { position: relative; min-height: 0; padding: .25rem 0 1.25rem 1rem; background: transparent; border-left: 2px solid var(--ba-x-blue); }
.ba-federal-segments a::after { content: "→"; margin-top: .9rem; color: var(--ba-x-blue); font-size: 1rem; font-weight: 700; }
.ba-federal-segments a:hover, .ba-federal-segments a:focus-visible { background: transparent; border-left-color: var(--ba-x-white); }
.ba-federal-segments strong { font-size: 1rem; line-height: 1.42; }
.ba-federal-capabilities { column-gap: 2rem; }
.ba-federal-capabilities span { padding-block: .8rem; }
.ba-federal-roadmap { padding: 1rem; }
.ba-federal-certifications { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .6rem; background: transparent; }
.ba-federal-certifications span { min-height: 5.7rem; justify-content: center; padding: .65rem; background: var(--ba-x-white); }
.ba-federal-certifications img { display: block; max-width: 100%; max-height: 4.2rem; object-fit: contain; }
.ba-federal-trust { display: flex; min-height: 7.5rem; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 1.5rem; padding: 1.5rem; background: rgba(48,65,97,.82); border: 1px solid rgba(205,229,241,.19); color: var(--ba-x-white); text-decoration: none; transition: background-color .2s ease, border-color .2s ease; }
.ba-federal-trust:hover, .ba-federal-trust:focus-visible { background: var(--ba-x-navy); border-color: rgba(2,162,253,.62); }
.ba-federal-trust .ba-micro { display: block; color: var(--ba-x-blue); }
.ba-federal-trust strong,
.ba-federal-trust p { display: none; }
.ba-federal-trust > span { flex: 0 0 auto; color: var(--ba-x-blue); font-size: 0; font-weight: 700; }
.ba-federal-trust > span b { font-size: 1rem; font-weight: 700; }
.ba-federal-trust b { margin-left: .3rem; font-size: 1rem; }
.ba-federal-resources { grid-template-columns: repeat(3, minmax(0,1fr)); background: transparent; border: 0; gap: 1.25rem; }
.ba-federal-resources article { position: relative; min-height: 0; padding: 1.1rem 0 0; background: transparent; border-top: 2px solid var(--ba-x-blue); }
.ba-federal-resources article::before { content: "PDF RESOURCE"; display: block; margin-bottom: .65rem; color: var(--ba-x-blue); font-size: .75rem; font-weight: 700; letter-spacing: .14em; }
.ba-federal-resources h3 { margin: 0 0 .55rem; font-size: 1.04rem; }
.ba-federal-resources p { line-height: 1.45; }
.ba-federal-resources .ba-card__link { margin-top: 1rem; padding-top: 0; }
@media (max-width: 47.99rem) {
  .ba-federal-differentiators, .ba-federal-segments, .ba-federal-resources { grid-template-columns: 1fr; gap: .8rem; }
  .ba-federal-certifications { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ba-federal-trust { align-items: flex-start; flex-direction: column; }
}

.ba-band__head {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  align-items: start;
  margin-bottom: 2.2rem;
}
.ba-band__head .ba-copy,
.ba-band__head .ba-lead { max-width: 72ch; margin: 0; }
.ba-band__head .ba-title ~ :is(p, .ba-subtitle),
.ba-band__head > :is(p, .ba-subtitle) {
  max-width: 72ch !important;
  margin: 1rem 0 0 !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  text-wrap: pretty;
}
.ba-band__head > :is(p, .ba-subtitle) { margin-top: 0 !important; }
.ba-band__head .ba-title { max-width: none !important; }

.ba-grid-2,
.ba-grid-3,
.ba-grid-4 {
  display: grid;
  gap: 1px;
  background: var(--ba-x-line);
  border: 1px solid var(--ba-x-line);
}
.ba-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ba-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ba-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.ba-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: clamp(1.2rem, 2.4vw, 1.8rem);
  background: var(--ba-x-white);
  color: var(--ba-x-ink);
}
.ba-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3rem;
  height: 2px;
  background: var(--ba-x-blue);
  transition: width .25s ease;
}
.ba-card:hover::before,
.ba-card:focus-within::before { width: 100%; }
.ba-card p { margin: .65rem 0 1rem; color: var(--ba-x-soft); }
.ba-card__link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin-top: auto;
  color: var(--ba-x-navy);
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
}
.ba-card__link::after { content: "\2192"; transition: transform .2s ease; }
.ba-card__link:hover,
.ba-card__link:focus-visible { color: var(--ba-x-blue); }
.ba-card__link:hover::after,
.ba-card__link:focus-visible::after { transform: translateX(3px); }

.ba-expertise-card {
  position: relative;
  min-height: clamp(22rem, 34vw, 29rem);
  overflow: hidden;
  background: var(--ba-x-ink);
  color: var(--ba-x-white);
  isolation: isolate;
}
.ba-expertise-card > img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--ba-card-focus, 50% 50%);
  filter: grayscale(1) contrast(1.2) brightness(.9);
  transition: transform .6s cubic-bezier(.2, .75, .25, 1);
}
.ba-expertise-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg,
    rgba(4, 8, 34, .97) 0%,
    rgba(4, 8, 34, .93) 25%,
    rgba(22, 50, 79, .82) 52%,
    rgba(0, 82, 181, .4) 76%,
    rgba(2, 162, 253, .08) 100%);
}
.ba-expertise-card::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: clamp(4rem, 16%, 8rem);
  height: 2px;
  background: var(--ba-x-blue);
}
.ba-expertise-card__body {
  position: absolute;
  z-index: 1;
  inset: 0 35% 0 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.35rem, 3vw, 2rem);
  background: rgba(4, 8, 34, .32);
}
.ba-expertise-card .ba-card-title { color: var(--ba-x-white) !important; font-size: 1.25rem !important; }
.ba-expertise-card .ba-micro { color: var(--ba-x-blue); }
.ba-expertise-card p { margin: .6rem 0 1rem; color: var(--ba-x-white); }
.ba-expertise-card a { color: var(--ba-x-blue); font-size: 1rem; font-weight: 700; text-decoration: none; }
.ba-expertise-card:hover > img,
.ba-expertise-card:focus-within > img { transform: scale(1.045); }

.ba-outcome,
.ba-service {
  position: relative;
  min-height: 11rem;
  padding: 1.45rem;
  background: var(--ba-x-white);
  transition: transform .28s ease, background-color .28s ease, box-shadow .28s ease;
}
.ba-outcome__number,
.ba-service__number {
  display: block;
  margin-bottom: 1.2rem;
  color: var(--ba-x-blue);
}
.ba-outcome h3,
.ba-service h3 { color: var(--ba-x-navy) !important; }
.ba-outcome p,
.ba-service p { margin: .55rem 0 0; color: var(--ba-x-soft); }
.ba-outcome:hover,
.ba-outcome:focus-within {
  z-index: 1;
  background: linear-gradient(145deg, var(--ba-x-white), rgba(2, 162, 253, .1));
  box-shadow: var(--ba-grid-seam, 0 0 transparent), 0 16px 30px rgba(4, 8, 34, .12);
  transform: translateY(-4px);
}

.ba-services-rail {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: rgba(205, 229, 241, .18);
  border: 1px solid rgba(205, 229, 241, .18);
}
.ba-services-rail .ba-service {
  overflow: hidden;
  background: rgba(255, 255, 255, .045);
}
.ba-services-rail .ba-service::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--ba-x-blue), transparent);
  transition: width .35s ease;
}
.ba-services-rail .ba-service h3 { color: var(--ba-x-white) !important; }
.ba-services-rail .ba-service p { color: var(--ba-x-sky); }
.ba-services-rail .ba-service:hover,
.ba-services-rail .ba-service:focus-within {
  z-index: 1;
  background: linear-gradient(145deg, rgba(2, 162, 253, .16), rgba(255, 255, 255, .06));
  box-shadow: var(--ba-grid-seam, 0 0 transparent), 0 18px 34px rgba(0, 0, 0, .24);
  transform: translateY(-4px);
}
.ba-services-rail .ba-service:hover::before,
.ba-services-rail .ba-service:focus-within::before { width: 100%; }
.ba-services-rail .ba-service .ba-service__number { transition: transform .28s ease, color .28s ease; }
.ba-services-rail .ba-service:hover .ba-service__number,
.ba-services-rail .ba-service:focus-within .ba-service__number {
  color: var(--ba-x-white);
  transform: translateX(.35rem);
}
.ba-services-rail--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ba-services-rail.ba-services-rail--five { grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 68rem) {
  .ba-services-rail.ba-services-rail--five { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-services-rail--five > .ba-service:last-child { grid-column: 1 / -1; }
}
@media (max-width: 44rem) {
  .ba-services-rail.ba-services-rail--five { grid-template-columns: minmax(0, 1fr); }
}

/* Expertise solution links reuse approved heading and dark-band link styles. */
#services .ba-expertise-deeper { margin-top: 2rem; }
#services .ba-expertise-deeper ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}
#services .ba-expertise-deeper li { min-width: 0; max-width: 100%; }
#services .ba-expertise-deeper .ba-card__link { max-width: 100%; }

.ba-blueprint-preview {
  position: relative;
  margin-top: 1px;
  background: #171a20;
  border: 1px solid rgba(255, 255, 255, .12);
  color: var(--ba-x-white);
}
.ba-blueprint-preview > div > .ba-micro {
  display: block;
  padding: 1rem 1.4rem .8rem;
  color: #c7cbd3;
}
.ba-blueprint-preview > div > div {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, .12);
}
.ba-blueprint-preview > div > div span {
  display: grid;
  align-content: center;
  gap: .28rem;
  min-height: 7.25rem;
  padding: 1.2rem clamp(.8rem, 2vw, 1.7rem);
  border-right: 1px solid rgba(255, 255, 255, .12);
  color: var(--ba-x-white);
  font-size: 1rem;
  font-weight: 400;
}
.ba-blueprint-preview > div > div span::after {
  color: #c7cbd3;
  font-size: .9rem;
  font-weight: 400;
  line-height: 1.35;
}
.ba-blueprint-preview > div > div span:nth-child(1)::after { content: "Design & deliver"; }
.ba-blueprint-preview > div > div span:nth-child(2)::after { content: "Operate & improve"; }
.ba-blueprint-preview > div > div span:nth-child(3)::after { content: "Extend the team"; }
.ba-blueprint-preview > div > div span:nth-child(4)::after { content: "Stage & scale"; }
.ba-blueprint-preview > .ba-button {
  position: absolute;
  top: .72rem;
  right: 1.4rem;
  min-height: auto;
  padding: .28rem 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, .52);
  color: var(--ba-x-white);
}
.ba-blueprint-preview > .ba-button:hover,
.ba-blueprint-preview > .ba-button:focus-visible {
  background: transparent;
  border-bottom-color: var(--ba-x-white);
  color: var(--ba-x-white);
}

.ba-blueprint-section {
  padding-top: 3rem;
  padding-bottom: 0;
  scroll-margin-top: -4rem;
  overflow: hidden;
  background: var(--ba-x-white);
}
.ba-blueprint-section .ba-shell { position: relative; }
.ba-blueprint-section .ba-band__head {
  position: relative;
  z-index: 2;
}
.ba-blueprint-section .ba-band__head .ba-copy { max-width: none; }

.ba-blueprint-studio {
  position: relative;
  z-index: 1;
  margin-top: .5rem;
  scroll-margin-top: calc(var(--ba-x-header) + 1rem);
}
.ba-blueprint-studio::before {
  content: none;
}

.ba-blueprint-studio::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -10rem calc(50% - 50vw) 0;
  background-color: #e4f2fb;
  background-image:
    linear-gradient(rgba(0, 76, 167, .2) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 76, 167, .2) 1px, transparent 1px),
    linear-gradient(rgba(0, 76, 167, .085) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 76, 167, .085) 1px, transparent 1px),
    linear-gradient(145deg, #d7ebf8 0%, #eef8ff 54%, #ffffff 100%);
  background-size: 2rem 2rem, 2rem 2rem, .5rem .5rem, .5rem .5rem, auto;
  background-position: .25rem calc(10rem + .25rem), .25rem calc(10rem + .25rem), .25rem calc(10rem + .25rem), .25rem calc(10rem + .25rem), 0 0;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, rgba(0, 0, 0, .08) 1.8rem, rgba(0, 0, 0, .5) 5.6rem, #000 10rem);
  mask-image: linear-gradient(to bottom, transparent 0, rgba(0, 0, 0, .08) 1.8rem, rgba(0, 0, 0, .5) 5.6rem, #000 10rem);
  pointer-events: none;
}

.ba-blueprint-frame {
  position: relative;
  z-index: 1;
  overflow: hidden;
  isolation: isolate;
  background: transparent;
  border: 0;
  box-shadow: none;
  color: var(--ba-x-navy);
}

.ba-blueprint-frame > * { position: relative; z-index: 1; }
.ba-blueprint-frame::before {
  content: none;
}
.ba-blueprint-frame::after {
  content: none;
}

.ba-blueprint-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
  padding: .8rem 1.25rem;
  border-bottom: 1px dashed rgba(0, 76, 167, .34);
  color: #315274;
}
.ba-blueprint-meta strong,
.ba-blueprint-meta span {
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.ba-blueprint-wordmark {
  color: var(--ba-x-navy);
  font-size: 1rem !important;
  letter-spacing: .01em !important;
  text-transform: none !important;
}
.ba-blueprint-wordmark span {
  color: var(--ba-x-blue);
  font-size: inherit;
  letter-spacing: inherit !important;
  text-transform: none !important;
}

.ba-blueprint-client {
  position: relative;
  display: grid;
  grid-template-columns: minmax(10rem, .8fr) 1.4fr;
  align-items: end;
  min-height: 6.7rem;
  margin-inline: 1.35rem;
  padding: 3.7rem 2.2rem 1rem;
  color: var(--ba-x-white);
}
.ba-blueprint-client::before {
  content: "";
  position: absolute;
  inset: .9rem 0 0;
  z-index: -1;
  background: linear-gradient(135deg, #16324f, #005bac);
  border: 1px solid #02a2fd;
  clip-path: polygon(50% 0, 100% 42%, 100% 100%, 0 100%, 0 42%);
}
.ba-blueprint-client > span,
.ba-blueprint-outcomes > span {
  color: var(--ba-x-blue);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.ba-blueprint-client > div,
.ba-blueprint-outcomes > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: .55rem 1.25rem;
}
.ba-blueprint-client strong {
  position: relative;
  font-size: 1rem;
  font-weight: 700;
}
.ba-blueprint-client strong:not(:last-child)::after {
  content: "";
  position: absolute;
  top: .2rem;
  right: -.7rem;
  width: 2px;
  height: 1rem;
  background: var(--ba-x-green);
}

.ba-blueprint-outcomes {
  position: relative;
  display: grid;
  grid-template-columns: minmax(10rem, .7fr) 1.5fr;
  align-items: center;
  gap: 1rem;
  margin-inline: 1.35rem;
  padding: .75rem 1rem;
  background:
    linear-gradient(rgba(235, 243, 248, .1), rgba(235, 243, 248, .1)),
    linear-gradient(135deg, #16324f 0%, #064d9c 100%);
  border: 1px solid rgba(22, 50, 79, .72);
  border-top: 2px solid var(--ba-x-green);
}
.ba-blueprint-outcomes::before {
  content: "";
  position: absolute;
  top: -2px;
  right: 0;
  left: 0;
  height: 2px;
  background: linear-gradient(
    90deg,
    transparent 28%,
    rgba(54, 191, 120, .18) 42%,
    rgba(111, 231, 168, .9) 50%,
    rgba(54, 191, 120, .18) 58%,
    transparent 72%
  );
  background-position: 140% 0;
  background-size: 220% 100%;
  box-shadow: 0 0 8px rgba(54, 191, 120, .14);
  pointer-events: none;
  animation: ba-blueprint-priority-divider 5.8s ease-in-out infinite;
}
.ba-blueprint-outcomes > span {
  color: #b9edff;
}
.ba-blueprint-outcomes strong {
  position: relative;
  padding: .35rem .5rem;
  color: rgba(255, 255, 255, .78);
  border-bottom: 1px solid transparent;
  font-size: .9rem;
  font-weight: 700;
  transition: color .25s ease, background-color .25s ease, border-color .25s ease;
}
.ba-blueprint-outcomes strong.is-related {
  background: rgba(2, 162, 253, .18);
  border-color: #7fd0ff;
  color: var(--ba-x-white);
}
.ba-blueprint-outcomes strong.is-related::before {
  content: "";
  position: absolute;
  left: .5rem;
  right: .5rem;
  bottom: -.45rem;
  height: 1px;
  background: var(--ba-x-blue);
  box-shadow: 0 0 12px var(--ba-x-blue);
}

.ba-blueprint-domains {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .55rem;
  padding: 1rem 1.35rem;
}
.ba-blueprint-domain,
.ba-blueprint-panel {
  --ba-domain-accent: var(--ba-x-blue);
}
.ba-domain--hybrid-cloud-infrastructure { --ba-domain-accent: #7fd0ff; }
.ba-domain--cybersecurity { --ba-domain-accent: #36bf78; }
.ba-domain--data-ai { --ba-domain-accent: #02a2fd; }
.ba-domain--network-collaboration { --ba-domain-accent: #b9edff; }
.ba-blueprint-domain {
  --ba-domain-accent: var(--ba-x-blue);
  position: relative;
  display: grid;
  align-content: space-between;
  min-width: 0;
  min-height: 7.8rem;
  padding: .8rem;
  overflow: hidden;
  appearance: none;
  background: rgba(255, 255, 255, .88);
  border: 1px solid rgba(0, 76, 167, .3);
  border-top: 3px solid var(--ba-domain-accent);
  border-radius: 0;
  color: var(--ba-x-navy);
  text-align: left;
  cursor: pointer;
  transition: transform .25s ease, background-color .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.ba-blueprint-domain::after {
  content: "";
  position: absolute;
  right: -.8rem;
  bottom: -.8rem;
  width: 3.2rem;
  height: 3.2rem;
  border: 1px solid var(--ba-domain-accent);
  border-radius: 50%;
  opacity: .35;
}
.ba-blueprint-domain.is-active::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 2px;
  border: 2px solid var(--ba-domain-accent);
  transform-origin: center;
  pointer-events: none;
  animation: ba-blueprint-selected-outline 2.6s ease-in-out infinite;
  animation-delay: -1.3s;
}
.ba-blueprint-domain:hover,
.ba-blueprint-domain:focus-visible {
  background: #e1f3ff;
  border-color: var(--ba-domain-accent);
  outline: none;
  transform: translateY(-3px);
}
.ba-blueprint-domain.is-active {
  --ba-domain-accent: var(--ba-x-green);
  background: rgba(255, 255, 255, .96);
  border-color: var(--ba-domain-accent);
  color: var(--ba-x-navy);
  box-shadow: 0 0 0 1px var(--ba-domain-accent), 0 14px 35px rgba(0, 0, 0, .2);
}
.ba-blueprint-domain__outcome,
.ba-blueprint-domain__action {
  color: #075ca9;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.ba-blueprint-domain.is-active .ba-blueprint-domain__outcome,
.ba-blueprint-domain.is-active .ba-blueprint-domain__action { color: #075ca9; }
.ba-blueprint-domain__title {
  display: block;
  margin-block: .45rem .65rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.18;
}
.ba-blueprint-domain__action { align-self: end; letter-spacing: .04em; text-transform: none; }

.ba-blueprint-panels { padding: 0 1.35rem 1.35rem; }
.ba-blueprint-panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(14rem, .55fr) minmax(0, 1.45fr);
  gap: clamp(1.2rem, 3vw, 2.5rem);
  min-height: 0;
  padding: clamp(1rem, 2vw, 1.4rem);
  overflow: hidden;
  background: linear-gradient(135deg, #16324f 0%, #064d9c 100%);
  border: 1px solid rgba(22, 50, 79, .72);
  border-top: 2px solid var(--ba-domain-accent);
  color: var(--ba-x-white);
}
.ba-blueprint-panel::before {
  display: none;
}
.ba-blueprint-panel[hidden] { display: none; }
.ba-blueprint-panel.is-active { display: grid; }
.ba-blueprint--stable .ba-blueprint-panels { display: grid; }
.ba-blueprint--stable .ba-blueprint-panel {
  grid-area: 1 / 1;
  min-width: 0;
}
.ba-blueprint--stable .ba-blueprint-panel[hidden] {
  display: grid;
  visibility: hidden;
  pointer-events: none;
}
.ba-blueprint-panel__intro { display: flex; flex-direction: column; align-items: flex-start; }
.ba-blueprint-panel__intro .ba-micro,
.ba-blueprint-panel__services > .ba-micro { color: var(--ba-domain-accent); }
.ba-blueprint-panel__intro h3 {
  margin: .5rem 0 0;
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  font-weight: 300;
  letter-spacing: normal;
  line-height: 1.05;
}
.ba-blueprint-panel__intro p { margin: .65rem 0 .9rem; color: var(--ba-x-sky); }
.ba-blueprint-panel__intro a {
  margin-top: auto;
  color: var(--ba-x-white);
  font-size: .9rem;
  font-weight: 700;
  text-decoration-color: var(--ba-domain-accent);
  text-underline-offset: .3rem;
}
.ba-blueprint-panel__services ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .45rem;
  margin: .65rem 0 0;
  padding: 0;
  list-style: none;
}
.ba-blueprint-panel__services li {
  position: relative;
  min-height: 3rem;
  padding: .58rem .75rem .58rem 1.15rem;
  background: rgba(235, 243, 248, .1);
  border: 1px solid rgba(205, 229, 241, .14);
  color: var(--ba-x-white);
  font-size: .9rem;
  line-height: 1.35;
}
.ba-blueprint-practice-link {
  font-size: .75rem;
  font-weight: 700;
  color: var(--ba-x-sky);
  text-decoration: underline;
  text-decoration-color: rgba(185, 231, 250, .55);
  text-decoration-thickness: 1px;
  text-underline-offset: .18em;
  transition: color .2s ease, text-decoration-color .2s ease;
}
.ba-blueprint-practice-link:hover,
.ba-blueprint-practice-link:focus-visible {
  color: var(--ba-x-white);
  text-decoration-color: var(--ba-x-sky);
}
.ba-blueprint-practice-link:focus-visible {
  outline: 2px solid var(--ba-x-sky);
  outline-offset: 3px;
}
.ba-blueprint-panel__services li::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 2px;
  background: var(--ba-domain-accent);
}

.ba-blueprint-connective {
  display: grid;
  grid-template-columns: minmax(9rem, .45fr) minmax(0, 1.8fr);
  align-items: center;
  gap: 1rem;
  margin: 0 1.35rem 1rem;
  padding: .6rem .8rem;
  background: rgba(255, 255, 255, .9);
  border: 1px solid rgba(0, 76, 167, .28);
  color: var(--ba-x-navy);
}
.ba-blueprint-connective > span { color: #315274; }
.ba-blueprint-connective__track {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .45rem;
}
.ba-blueprint-connective__track::before {
  display: none;
}
.ba-blueprint-connective__track > strong,
.ba-blueprint-connective__track > a {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 2.55rem;
  align-content: center;
  padding: .55rem .7rem .55rem 1.25rem;
  background: #064d9c;
  border: 1px solid #0c78cf;
  color: var(--ba-x-white);
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
}
.ba-blueprint-connective__track > strong::before,
.ba-blueprint-connective__track > a::before {
  content: "";
  position: absolute;
  left: .55rem;
  top: 50%;
  width: .38rem;
  height: .38rem;
  background: var(--ba-x-green);
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(54, 191, 120, .12), 0 0 14px rgba(54, 191, 120, .8);
  transform: translateY(-50%);
}
.ba-blueprint-connective__track > a {
  transition: background-color .2s ease, border-color .2s ease;
}
.ba-blueprint-connective__track > a:hover,
.ba-blueprint-connective__track > a:focus-visible {
  background: #075cac;
  border-color: var(--ba-x-blue);
}

.ba-blueprint-panel__connections {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin-top: .7rem;
  padding-top: .7rem;
  border-top: 1px dashed rgba(205, 229, 241, .28);
}
.ba-blueprint-panel__connections > .ba-micro { color: var(--ba-x-sky); }
.ba-blueprint-panel__connections > div {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  margin-top: 0;
}
.ba-blueprint-panel__connections > div span,
.ba-blueprint-panel__connections > div a {
  display: inline-block;
  padding: .38rem .55rem;
  background: rgba(185, 237, 255, .1);
  border-left: 2px solid var(--ba-domain-accent);
  color: var(--ba-x-white);
  font-size: .75rem;
  font-weight: 700;
}

.ba-blueprint-legend {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: .75rem 1rem;
  color: var(--ba-x-soft);
  font-size: .75rem;
}
.ba-blueprint-legend i {
  display: inline-block;
  width: .55rem;
  height: .55rem;
  margin-right: .45rem;
  background: var(--ba-x-blue);
  box-shadow: 0 0 0 4px rgba(2, 162, 253, .12);
}

.ba-blueprint-domain h3,
.ba-offer h2,
.ba-offer h3 {
  margin: 0;
  color: var(--ba-x-navy);
  font-size: 1.25rem;
  line-height: 1.25;
}
.ba-offer h3 { font-weight: 500; letter-spacing: -.01em; }
.ba-offer ul {
  display: grid;
  gap: .55rem;
  margin: 1rem 0 1.3rem;
  padding: 0;
  list-style: none;
}
.ba-offer li {
  position: relative;
  padding-left: .85rem;
  color: var(--ba-x-soft);
  font-size: 1rem;
  line-height: 1.35;
}
.ba-offer li::before {
  content: "";
  position: absolute;
  top: .55em;
  left: 0;
  width: .28rem;
  height: .28rem;
  background: var(--ba-x-blue);
}
@keyframes ba-blueprint-selected-outline {
  0%, 100% {
    opacity: .68;
    transform: scale(.988);
    box-shadow: inset 0 0 0 rgba(54, 191, 120, 0), 0 0 0 0 rgba(54, 191, 120, 0);
  }
  50% {
    opacity: 1;
    transform: scale(1.008);
    box-shadow: inset 0 0 16px rgba(54, 191, 120, .14), 0 0 0 3px rgba(54, 191, 120, .18), 0 0 20px rgba(54, 191, 120, .28);
  }
}
@keyframes ba-blueprint-priority-divider {
  0%, 12% {
    opacity: .42;
    background-position: 140% 0;
  }
  50% {
    opacity: .9;
  }
  88%, 100% {
    opacity: .42;
    background-position: -120% 0;
  }
}

[data-ba-reveal].is-visible > .ba-shell > .ba-band__head,
[data-ba-reveal].is-visible .ba-lifecycle,
[data-ba-reveal].is-visible .ba-offer-grid {
  animation: ba-reveal-up .72s cubic-bezier(.2, .75, .25, 1) both;
}
[data-ba-reveal].is-visible .ba-blueprint-frame {
  animation: ba-blueprint-draw 1s cubic-bezier(.2, .75, .25, 1) .12s both;
}
[data-ba-reveal].is-visible .ba-blueprint-domain {
  animation: ba-reveal-up .55s cubic-bezier(.2, .75, .25, 1) both;
}
[data-ba-reveal].is-visible .ba-blueprint-domain:nth-child(1) { animation-delay: .32s; }
[data-ba-reveal].is-visible .ba-blueprint-domain:nth-child(2) { animation-delay: .39s; }
[data-ba-reveal].is-visible .ba-blueprint-domain:nth-child(3) { animation-delay: .46s; }
[data-ba-reveal].is-visible .ba-blueprint-domain:nth-child(4) { animation-delay: .53s; }

@keyframes ba-reveal-up {
  from { opacity: 0; transform: translateY(1rem); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes ba-blueprint-draw {
  from { opacity: 0; clip-path: inset(0 100% 0 0); transform: translateY(.8rem); }
  to { opacity: 1; clip-path: inset(0); transform: translateY(0); }
}

.ba-offer-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  background: var(--ba-x-line);
  border: 1px solid var(--ba-x-line);
}
.ba-offer {
  display: flex;
  flex-direction: column;
  min-height: 22rem;
  padding: 1.35rem;
  background: var(--ba-x-white);
  border-top: 3px solid var(--ba-x-blue);
}
.ba-offer > .ba-micro { margin-bottom: 1rem; color: var(--ba-x-blue); }
.ba-offer p { margin: .7rem 0 0; color: var(--ba-x-soft); }
.ba-offer ul { margin-top: auto; margin-bottom: 0; padding-top: 1.1rem; }
#engagements .ba-offer > .ba-card__link { align-self: flex-start; margin-top: auto; }
#engagements .ba-offer > ul { margin-top: 0; margin-bottom: 1.5rem; }
#domains .ba-offer > h3 { min-height: 3.125rem; }
#domains .ba-offer > ul { margin-top: 0; }
#domains .ba-offer > .ba-card__link { margin-top: auto; padding-top: 1.3rem; }
#domains .ba-blueprint-practice-link {
  font-size: 1rem;
  font-weight: 400;
  color: var(--ba-x-soft);
  text-decoration-color: currentColor;
}
#domains .ba-blueprint-practice-link:is(:hover, :focus-visible) { color: var(--ba-x-blue); }
#domains .ba-blueprint-practice-link:focus-visible { outline-color: var(--ba-x-blue); }
#engage .ba-offer > h3 ~ .ba-micro {
  display: block;
  margin: 1.5rem 0 .4rem;
}
#engage .ba-offer > .ba-micro + p { margin-top: 0; }

.ba-lifecycle {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin: 0;
  padding: 0;
  background: var(--ba-x-line);
  border: 1px solid var(--ba-x-line);
  list-style: none;
}
/* Five-stage lifecycles retain the base component's single-column phone layout. */
@media (min-width: 68.01rem) {
  .ba-lifecycle.ba-lifecycle--five {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
.ba-lifecycle li {
  position: relative;
  display: grid;
  gap: .55rem;
  min-height: 8rem;
  align-content: center;
  padding: .9rem;
  background: rgba(255, 255, 255, .78);
  color: var(--ba-x-navy);
  text-align: center;
}
.ba-lifecycle li strong {
  color: var(--ba-x-navy);
  font-size: 1.2rem;
  font-weight: 700;
}
.ba-lifecycle li > span {
  color: var(--ba-x-soft);
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.35;
}
.ba-band--ink .ba-lifecycle {
  background: rgba(205, 229, 241, .18);
  border-color: rgba(205, 229, 241, .18);
}
.ba-band--ink .ba-lifecycle li {
  background: rgba(255, 255, 255, .045);
  color: var(--ba-x-white);
}
.ba-band--ink .ba-lifecycle li strong { color: var(--ba-x-white); }
.ba-band--ink .ba-lifecycle li > span { color: var(--ba-x-sky); }
.ba-lifecycle li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -.35rem;
  z-index: 2;
  width: .7rem;
  height: .7rem;
  border-top: 1px solid var(--ba-x-blue);
  border-right: 1px solid var(--ba-x-blue);
  transform: translateY(-50%) rotate(45deg);
}
@media (min-width: 46.01rem) {
  /* Keep five-stage connectors within their cells, including tablet wraps. */
  .ba-lifecycle--five li:not(:last-child)::after { right: .2rem; }
}
@media (max-width: 46rem) {
  .ba-lifecycle.ba-lifecycle--five { grid-template-columns: 1fr; }
  .ba-lifecycle--five li:not(:last-child)::after {
    top: auto;
    right: 50%;
    bottom: -.35rem;
    transform: translateX(50%) rotate(135deg);
  }
}
.ba-services-continuum .ba-title { font-weight: 300 !important; letter-spacing: -.0205em !important; }

.ba-telecom-route {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(20rem, 1.1fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: center;
}
.ba-telecom-route .ba-copy { margin-top: 0; color: var(--ba-x-sky); }

.ba-contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(17rem, .55fr);
  gap: 1px;
  background: var(--ba-x-line);
  border: 1px solid var(--ba-x-line);
  box-shadow: var(--ba-x-shadow);
}
#contact-form.ba-band { padding-block: clamp(2rem, 4vw, 3.25rem); }
.ba-contact-card {
  padding: clamp(1.35rem, 3vw, 2.25rem);
  background: var(--ba-x-white);
}
.ba-contact-card > .ba-copy { margin: 1rem 0 0; color: var(--ba-x-soft); }
.ba-contact-form { display: grid; gap: .8rem; margin-top: 1.35rem; }
.ba-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.ba-contact-form label { display: grid; gap: .4rem; color: var(--ba-x-navy); }
.ba-contact-form label > span { font-size: .75rem; font-weight: 700; }
.ba-contact-form input,
.ba-contact-form select,
.ba-contact-form textarea {
  width: 100%;
  padding: .78rem .85rem;
  background: var(--ba-x-white);
  border: 1px solid #b9c8d9;
  border-radius: 0;
  color: var(--ba-x-ink);
  font-size: 1rem;
}
.ba-contact-form textarea { min-height: 6.5rem; resize: vertical; }
.ba-contact-form input[readonly] {
  background: #e5ebf2;
  border-color: #c5d0dc;
  box-shadow: inset 3px 0 0 var(--ba-x-line);
  color: var(--ba-x-soft);
  cursor: default;
}
.ba-contact-form input:focus,
.ba-contact-form select:focus,
.ba-contact-form textarea:focus { border-color: var(--ba-x-blue); outline: 2px solid rgba(2, 162, 253, .18); outline-offset: 1px; }
.ba-contact-context { position: relative; }
.ba-contact-context__label { display: block; padding-right: 2rem; font-size: .9rem; }
.ba-contact-context [data-ba-regarding] { margin: .4rem 0 0; padding-right: 2rem; overflow-wrap: anywhere; }
.ba-contact-context [data-ba-regarding] a { color: var(--ba-x-navy); text-underline-offset: .2em; }
.ba-contact-context [data-ba-regarding] a:focus-visible { outline: 2px solid var(--ba-x-navy); outline-offset: 2px; }
.ba-contact-context__hide {
  position: absolute;
  top: -.15rem;
  right: 0;
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--ba-x-navy);
  line-height: 1;
  cursor: pointer;
}
.ba-contact-context__hide:focus-visible {
  outline: 2px solid var(--ba-x-navy);
  outline-offset: 2px;
}
.ba-form-actions { display: flex; align-items: center; gap: 1rem; margin-top: 40px; }
.ba-form-actions p { margin: 0; color: var(--ba-x-soft); font-size: .9rem; }
.ba-contact-details {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 0;
  background: linear-gradient(145deg, #040822 0%, #07164f 54%, #00346b 100%);
  color: var(--ba-x-white);
}
.ba-contact-details__image {
  position: relative;
  aspect-ratio: 16 / 9;
  margin: 0;
  overflow: hidden;
  border-bottom: 2px solid var(--ba-x-blue);
}
.ba-contact-details__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.2) contrast(1.2) brightness(1.03);
  transition: transform .7s cubic-bezier(.2, .75, .25, 1);
}
.ba-contact-details__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(22, 50, 79, .18), rgba(2, 162, 253, .08));
  mix-blend-mode: color;
  pointer-events: none;
}
.ba-contact-details:hover .ba-contact-details__image img { transform: scale(1.035); }
.ba-contact-details__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(1.25rem, 2.4vw, 1.8rem);
}
.ba-contact-details__body > .ba-micro,
.ba-contact-details__body > div .ba-micro { color: var(--ba-x-blue); }
.ba-contact-details h2 { margin: .5rem 0 0; font-size: 20px; font-weight: 500;
  letter-spacing: -.01em;
}
.ba-contact-details p { margin: .65rem 0 0; color: var(--ba-x-sky); }
.ba-contact-details__body > div { display: grid; gap: .25rem; margin-top: .9rem; }
.ba-contact-details a:not(.ba-button) { color: var(--ba-x-white); font-size: 1rem; font-weight: 700; }
.ba-contact-details__note { margin-top: auto; padding-top: 1.25rem; }
.ba-contact-details .ba-button { margin-top: .8rem; background: transparent; color: var(--ba-x-white); }

.ba-ecommerce-explorer {
  position: sticky;
  top: var(--ba-x-header);
  z-index: 6;
  display: grid;
  grid-template-columns: minmax(15rem, 1.05fr) minmax(20rem, 1.4fr) auto;
  gap: 1.4rem;
  align-items: center;
  margin-bottom: 1.5rem;
  padding: .85rem 0;
  background: rgba(244, 243, 243, .95);
  border-top: 1px solid var(--ba-x-navy);
  border-bottom: 1px solid var(--ba-x-line);
  box-shadow: 0 10px 24px rgba(22, 50, 79, .07);
  backdrop-filter: blur(12px);
}
.ba-ecommerce-explorer label { display: grid; gap: .45rem; }
.ba-ecommerce-explorer label .ba-micro { color: var(--ba-x-navy); }
.ba-ecommerce-explorer input {
  width: 100%;
  min-height: 2.35rem;
  padding: .4rem 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--ba-x-navy);
  color: var(--ba-x-ink);
  font-size: 1rem;
}
.ba-ecommerce-explorer input:focus { border-color: var(--ba-x-blue); outline: 0; }
.ba-ecommerce-filters { display: flex; flex-wrap: wrap; gap: 1rem; }
.ba-ecommerce-filters button {
  min-height: 2.2rem;
  padding: .25rem 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid transparent;
  color: var(--ba-x-soft);
  font-size: .75rem;
  font-weight: 700;
  cursor: pointer;
}
.ba-ecommerce-filters button[aria-pressed="true"],
.ba-ecommerce-filters button:hover,
.ba-ecommerce-filters button:focus-visible { background: transparent; border-color: var(--ba-x-blue); color: var(--ba-x-navy); }
.ba-ecommerce-explorer p { margin: 0; color: var(--ba-x-soft); font-size: .75rem; white-space: nowrap; }
.ba-ecommerce-status { display: flex; align-items: center; justify-content: flex-end; gap: .8rem; }
.ba-ecommerce-carousel-controls { display: flex; gap: .3rem; }
.ba-ecommerce-carousel-controls button {
  display: grid;
  width: 2rem;
  min-height: 2rem;
  place-items: center;
  background: transparent;
  border: 1px solid var(--ba-x-line);
  border-radius: 50%;
  color: var(--ba-x-navy);
  font-size: 1rem;
  cursor: pointer;
}
.ba-ecommerce-carousel-controls button:hover,
.ba-ecommerce-carousel-controls button:focus-visible { background: transparent; border-color: var(--ba-x-blue); color: var(--ba-x-blue); }
.ba-ecommerce-directory {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  height: clamp(21rem, 54vh, 29rem);
  align-items: stretch;
  gap: 1rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--ba-x-blue) rgba(22, 50, 79, .1);
  scrollbar-width: thin;
}
.ba-ecommerce-group {
  min-width: 0;
  height: 100%;
  overflow-y: auto;
  padding: .2rem .2rem 1.25rem;
  scroll-padding-bottom: 1.25rem;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}
.ba-ecommerce-group[hidden],
.ba-commerce-portal[hidden] { display: none !important; }
.ba-ecommerce-group__head {
  position: sticky;
  top: -.2rem;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: .7rem;
  padding: .45rem .2rem .55rem;
  background: var(--ba-x-cloud);
  border-bottom: 1px solid rgba(22, 50, 79, .18);
}
.ba-ecommerce-group__head h3 { margin: 0; color: var(--ba-x-navy); font-size: 1rem; }
.ba-ecommerce-group__head span { color: var(--ba-x-soft); font-size: .75rem; }
.ba-ecommerce-empty { padding: 2rem; background: var(--ba-x-white); border-left: 3px solid var(--ba-x-blue); color: var(--ba-x-navy); }

.ba-commerce-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 1.4rem;
  background: transparent;
  border: 0;
}
.ba-commerce-portal {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 4rem;
  gap: 1rem;
  padding: .55rem .15rem;
  background: transparent;
  border-bottom: 1px solid var(--ba-x-line);
  color: var(--ba-x-navy);
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
  transition: color .2s ease, padding .2s ease, border-color .2s ease;
}
.ba-commerce-portal:hover,
.ba-commerce-portal:focus-visible { background: transparent; border-color: var(--ba-x-blue); color: var(--ba-x-blue); padding-left: .35rem; }
.ba-commerce-portal__identity {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: .75rem;
}
.ba-commerce-portal__logo {
  display: grid;
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  overflow: hidden;
  place-items: center;
  border-radius: .55rem;
  background: var(--ba-x-white);
  box-shadow: 0 1px 0 rgba(22, 50, 79, .08);
}
.ba-commerce-portal__logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.ba-commerce-portal__logo.is-fallback {
  border: 1px solid var(--ba-x-line);
  color: var(--ba-x-navy);
  font-size: .75rem;
  font-weight: 700;
}
.ba-commerce-portal__name {
  min-width: 0;
  line-height: 1.25;
}
.ba-commerce-portal__arrow { color: var(--ba-x-blue); }
.ba-commerce-support {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem 2rem;
  background: transparent;
  border: 0;
}
.ba-commerce-support article {
  position: relative;
  min-height: 13rem;
  padding: 1.15rem 0 2.4rem;
  background: transparent;
  border-top: 1px solid var(--ba-x-navy);
}
.ba-commerce-support .ba-micro { color: var(--ba-x-blue); }
.ba-commerce-support h3 { margin: .8rem 0 0; color: var(--ba-x-navy); font-size: 1.25rem; }
.ba-commerce-support p { color: var(--ba-x-soft); }
.ba-commerce-support a { position: absolute; left: 0; bottom: .4rem; color: var(--ba-x-navy); font-size: .9rem; font-weight: 700; text-underline-offset: .25rem; }
#vendors .ba-commerce-support article { display: flex; flex-direction: column; min-width: 0; padding-bottom: 1.25rem; }
#vendors .ba-commerce-support a { position: static; overflow-wrap: anywhere; }
#vendors .ba-commerce-support .ba-actions {
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  margin-top: auto;
  padding-top: 1.25rem;
}
#vendors .ba-commerce-support .ba-actions a { max-width: 100%; }

[data-ba-ecommerce].is-searching .ba-ecommerce-directory {
  display: block;
  height: auto;
  overflow: visible;
  scroll-snap-type: none;
}
[data-ba-ecommerce].is-searching .ba-ecommerce-group {
  height: auto;
  overflow: visible;
  margin-bottom: 1.5rem;
}
[data-ba-ecommerce].is-searching .ba-ecommerce-group__head { position: static; }
[data-ba-ecommerce].is-searching .ba-commerce-grid { grid-template-columns: minmax(0, 1fr); }
[data-ba-ecommerce].is-searching .ba-ecommerce-carousel-controls { display: none; }

.ba-industry-tabs {
  display: flex;
  gap: .45rem;
  margin-bottom: 1rem;
  overflow-x: auto;
}
.ba-industry-tabs button {
  min-height: 2.4rem;
  padding: .45rem 0;
  margin-right: 1.2rem;
  white-space: nowrap;
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  color: var(--ba-x-navy);
  font-size: .9rem;
  font-weight: 700;
  cursor: pointer;
}
.ba-industry-tabs button[aria-selected="true"],
.ba-industry-tabs button:hover,
.ba-industry-tabs button:focus-visible { background: transparent; border-color: var(--ba-x-blue); color: var(--ba-x-navy); }
.ba-industry-panel[hidden] { display: none; }
.ba-industry-panel { animation: ba-industry-panel-in .42s cubic-bezier(.2, .75, .25, 1) both; }
.ba-industry-rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(16.5rem, 30%);
  gap: .75rem;
  overflow-x: auto;
  padding: .2rem .1rem .9rem;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--ba-x-blue) rgba(22, 50, 79, .1);
  scrollbar-width: thin;
}
.ba-industry-link {
  position: relative;
  display: grid;
  min-height: 13rem;
  align-content: start;
  padding: 1.35rem;
  overflow: hidden;
  background: linear-gradient(145deg, var(--ba-x-white), #edf6fc);
  border: 1px solid rgba(0, 76, 167, .2);
  color: var(--ba-x-navy);
  text-decoration: none;
  scroll-snap-align: start;
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.ba-industry-link::after {
  content: "";
  position: absolute;
  right: -2rem;
  bottom: -2rem;
  width: 7rem;
  height: 7rem;
  border: 1px solid rgba(2, 162, 253, .32);
  border-radius: 50%;
}
.ba-industry-link:hover,
.ba-industry-link:focus-visible { transform: translateY(-3px); border-color: var(--ba-x-blue); box-shadow: var(--ba-x-shadow); }
.ba-industry-link .ba-micro { color: var(--ba-x-blue); }
.ba-industry-link strong { margin-top: 0; font-size: 1.2rem; font-weight: 700; }
.ba-industry-link p { margin: .75rem 0 0; color: var(--ba-x-soft); font-size: .9rem; }
.ba-industry-link i { margin-top: auto; color: var(--ba-x-blue); font-size: 1rem; font-style: normal; }
.ba-industry-directory { display: grid; gap: 2.5rem; }
.ba-industry-group h3 { margin: 0 0 .85rem; color: var(--ba-x-navy); font-size: 1.2rem; font-weight: 600; }
.ba-industry-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .65rem; }
.ba-home-industries-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .65rem; }
.ba-home-industries-grid .ba-industry-link { min-height: 11rem; }
.ba-public-sector-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  background: rgba(205, 229, 241, .16);
  border: 1px solid rgba(205, 229, 241, .16);
}
.ba-public-sector-card {
  display: grid;
  grid-template-rows: auto 1fr;
  min-height: 34rem;
  background: rgba(255, 255, 255, .055);
  color: var(--ba-x-white);
  text-decoration: none;
  transition: background .25s ease, transform .25s ease;
}
.ba-public-sector-card:hover,
.ba-public-sector-card:focus-visible { background: rgba(2, 162, 253, .14); transform: translateY(-2px); }
.ba-public-sector-card__image { position: relative; aspect-ratio: 16 / 9; overflow: hidden; }
.ba-public-sector-card__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(22, 50, 79, .7) 0%, rgba(0, 68, 166, .52) 42%, rgba(83, 131, 165, .3) 70%, rgba(218, 225, 231, .12) 100%);
  mix-blend-mode: multiply;
  pointer-events: none;
}
.ba-public-sector-card__image img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.68) contrast(1.08); transition: filter .3s ease, transform .5s ease; }
.ba-public-sector-card:hover img,
.ba-public-sector-card:focus-visible img { filter: grayscale(.38) contrast(1.08); transform: scale(1.025); }
.ba-public-sector-card__body { display: flex; flex-direction: column; padding: 1.35rem; }
.ba-public-sector-card .ba-micro { color: var(--ba-x-blue); }
.ba-public-sector-card h3 { margin: .8rem 0 0; color: var(--ba-x-white); font-size: clamp(1.5rem, 2.2vw, 2rem); font-weight: 300; }
.ba-public-sector-card p { margin: 1.1rem 0 0; color: var(--ba-x-sky); font-size: .9rem; line-height: 1.65; }
.ba-public-sector-card i { margin-top: auto; padding-top: 1.5rem; color: var(--ba-x-blue); font-size: .9rem; font-style: normal; font-weight: 700; }
/* Compact directory cards only; specificity also overrides tablet minimums. */
#industry-public-sector .ba-public-sector-card { min-height: 20.625rem; }
#industry-public-sector .ba-public-sector-card__image { height: 7rem; aspect-ratio: auto; }
#industry-public-sector .ba-public-sector-card__body { padding: 1rem 1.25rem; }
#industry-public-sector .ba-public-sector-card h3 { margin-top: .5rem; }
#industry-public-sector .ba-public-sector-card p { margin-top: .5rem; }
#industry-public-sector .ba-public-sector-card i { padding-top: .65rem; }
.ba-public-sector-secondary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin-top: .75rem; }
.ba-public-sector-secondary a { position: relative; display: grid; grid-template-columns: minmax(9rem, .55fr) minmax(0, 1.45fr) auto; gap: 1rem; align-items: center; min-height: 8rem; padding: 1.2rem 1.4rem; background: rgba(255, 255, 255, .055); border: 1px solid rgba(205, 229, 241, .16); color: var(--ba-x-white); text-decoration: none; transition: background .25s ease, border-color .25s ease; }
.ba-public-sector-secondary a:hover,
.ba-public-sector-secondary a:focus-visible { background: rgba(2, 162, 253, .12); border-color: rgba(2, 162, 253, .6); }
.ba-public-sector-secondary .ba-micro { position: absolute; top: 1rem; left: 1.4rem; color: var(--ba-x-blue); }
.ba-public-sector-secondary strong { padding-top: 1.2rem; font-size: 1.2rem; }
.ba-public-sector-secondary p { margin: 0; padding-top: 1.2rem; color: var(--ba-x-sky); font-size: .9rem; }
.ba-public-sector-secondary i { color: var(--ba-x-blue); font-style: normal; }
.ba-public-sector-grid > .ba-public-sector-secondary { display: flex; margin-top: 0; }
.ba-public-sector-grid > .ba-public-sector-secondary > a {
  width: 100%;
  grid-template-columns: minmax(0, 1fr);
  align-content: center;
}
.ba-industry-outcomes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: var(--ba-x-line); border: 1px solid var(--ba-x-line); }
.ba-industry-outcome { min-height: 13rem; padding: 1.4rem; background: var(--ba-x-white); border-top: 2px solid var(--ba-x-blue); }
.ba-industry-outcome h3 { margin: 0; color: var(--ba-x-navy); font-size: 1.18rem; }
.ba-industry-outcome p { color: var(--ba-x-soft); }
.ba-industry-context { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(22rem, .9fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: start; }
.ba-industry-context > div > p:last-child { max-width: 48rem; color: var(--ba-x-soft); }
.ba-industry-factors { padding: 1.35rem; background: linear-gradient(145deg, var(--ba-x-ink), #16324f); border-top: 2px solid var(--ba-x-blue); box-shadow: var(--ba-x-shadow); }
.ba-industry-factors > .ba-micro { color: var(--ba-x-blue); }
.ba-industry-factors ul { margin: 1rem 0 0; padding: 0; border-top: 1px solid rgba(205, 229, 241, .16); list-style: none; }
.ba-industry-factors li { position: relative; padding: .9rem .25rem .9rem 1.25rem; border-bottom: 1px solid rgba(205, 229, 241, .16); color: var(--ba-x-sky); font-size: .9rem; line-height: 1.5; }
.ba-industry-factors li::before { content: ""; position: absolute; top: 1.35rem; left: .12rem; width: .4rem; height: .4rem; background: var(--ba-x-blue); border-radius: 50%; box-shadow: 0 0 0 .28rem rgba(2, 162, 253, .12); }
.ba-industry-stories__more { display: flex; justify-content: flex-end; margin-top: 1.25rem; }
.ba-industry-stories__more a { color: var(--ba-x-navy); font-size: .9rem; font-weight: 700; text-underline-offset: .28rem; }
.ba-band--navy .ba-industry-stories__more a { color: var(--ba-x-white); text-decoration-color: var(--ba-x-blue); }
.ba-industry-resource-block + .ba-industry-resource-block { margin-top: clamp(3rem, 6vw, 5rem); }
.ba-industry-resource-head { display: flex; justify-content: space-between; gap: 1.5rem; align-items: end; margin-bottom: 1rem; padding-bottom: .8rem; border-bottom: 1px solid var(--ba-x-line); }
.ba-industry-resource-head .ba-micro { color: var(--ba-x-blue); }
.ba-industry-resource-head h3 { margin: .4rem 0 0; color: var(--ba-x-navy); font-size: 1.2rem; }
.ba-industry-resource-head > a { color: var(--ba-x-navy); font-size: .9rem; font-weight: 700; text-decoration: none; }
.ba-band--navy .ba-industry-resource-head,
.ba-band--ink .ba-industry-resource-head { border-color: rgba(205, 229, 241, .18); }
.ba-band--navy .ba-industry-resource-head h3,
.ba-band--ink .ba-industry-resource-head h3,
.ba-band--navy .ba-industry-resource-head > a,
.ba-band--ink .ba-industry-resource-head > a { color: var(--ba-x-white); }
.ba-industry-architecture { display: grid; grid-template-columns: minmax(16rem, .7fr) minmax(0, 1.3fr); gap: 1rem; align-items: stretch; }
.ba-industry-core {
  position: relative;
  display: flex;
  min-height: 18rem;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1.5rem;
  overflow: hidden;
  background: linear-gradient(145deg, #16324f, #075ca9);
  border: 1px solid rgba(2, 162, 253, .55);
}
.ba-industry-core::after { content: ""; position: absolute; top: -4rem; right: -4rem; width: 12rem; height: 12rem; border: 1px solid rgba(185, 237, 255, .34); border-radius: 50%; }
.ba-industry-core .ba-micro { color: var(--ba-x-blue); }
.ba-industry-core strong { margin-top: .8rem; color: var(--ba-x-white); font-size: 1.2rem; font-weight: 700; line-height: 1.05; }
.ba-industry-core p { margin: .8rem 0 0; color: var(--ba-x-sky); }
.ba-industry-expertise { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.ba-industry-expertise a { position: relative; display: grid; gap: .5rem; min-height: 8.5rem; align-content: center; padding: 1.2rem; overflow: hidden; background: rgba(255, 255, 255, .06); border: 1px solid rgba(205, 229, 241, .16); color: var(--ba-x-white); text-decoration: none; }
.ba-industry-expertise a::after { content: "↗"; position: absolute; right: .8rem; bottom: .6rem; color: var(--ba-x-blue); font-size: .9rem; }
.ba-industry-expertise a:hover,
.ba-industry-expertise a:focus-visible { background: rgba(2, 162, 253, .14); }
.ba-industry-expertise strong { font-size: 1rem; }
.ba-industry-expertise span { color: var(--ba-x-sky); font-size: .75rem; }
@keyframes ba-industry-panel-in {
  from { opacity: 0; transform: translateX(.75rem); }
  to { opacity: 1; transform: translateX(0); }
}

.ba-datacenter-pillars,
.ba-datacenter-oversight,
.ba-datacenter-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem;
}
.ba-datacenter-pillars article {
  min-height: 16rem;
  padding: 1.35rem;
  background: var(--ba-x-white);
  border: 1px solid var(--ba-x-line);
  border-top: 2px solid var(--ba-x-blue);
}
.ba-datacenter-pillars .ba-micro { color: var(--ba-x-navy); }
.ba-datacenter-pillars p { margin-top: 2rem; color: var(--ba-x-soft); }
.ba-datacenter-stage { display: grid; grid-template-columns: minmax(20rem, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.ba-datacenter-stage .ba-band__head { display: block; margin-bottom: 1.5rem; }
.ba-datacenter-stage .ba-band__head > p { margin-top: 1.2rem; }
.ba-datacenter-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; margin: 0; padding: 0; list-style: none; }
.ba-datacenter-flow li {
  position: relative;
  min-height: 4.8rem;
  padding: 1rem 1.8rem 1rem 1rem;
  background: #edf6fc;
  border: 1px solid var(--ba-x-line);
  color: var(--ba-x-navy);
  font-size: .9rem;
  font-weight: 700;
}
.ba-datacenter-flow li > span { color: var(--ba-x-blue); margin-right: .5rem; font-variant-numeric: tabular-nums; }
.ba-datacenter-visual { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: var(--ba-x-ink); border: 1px solid rgba(2, 162, 253, .45); box-shadow: var(--ba-x-shadow); }
.ba-datacenter-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(110deg, rgba(22, 50, 79, .24), transparent 58%, rgba(205, 229, 241, .07)); pointer-events: none; }
.ba-datacenter-visual > img { width: 100%; height: 100%; object-fit: cover; filter: contrast(1.12) saturate(.82); }
.ba-datacenter-led {
  position: absolute;
  z-index: 3;
  left: var(--led-x);
  top: var(--led-y);
  width: .34rem;
  height: .34rem;
  background: #7dff6a;
  border-radius: 50%;
  box-shadow: 0 0 .25rem #7dff6a, 0 0 .8rem rgba(125, 255, 106, .9), 0 0 1.4rem rgba(2, 162, 253, .65);
  animation: ba-datacenter-led 2.8s var(--led-delay) ease-in-out infinite;
}
.ba-datacenter-visual__status { position: absolute; z-index: 4; right: 1rem; bottom: 1rem; display: flex; gap: .55rem; align-items: center; padding: .55rem .7rem; background: rgba(4, 8, 34, .78); border: 1px solid rgba(205, 229, 241, .35); color: var(--ba-x-white); font-size: .75rem; backdrop-filter: blur(10px); }
.ba-datacenter-visual__status i { width: .55rem; height: .55rem; background: var(--ba-x-green); border-radius: 50%; box-shadow: 0 0 .7rem var(--ba-x-green); animation: ba-datacenter-status 2s ease-in-out infinite; }
@keyframes ba-datacenter-led {
  0%, 15%, 100% { opacity: .2; transform: scale(.7); }
  30%, 62% { opacity: 1; transform: scale(1.25); }
  72% { opacity: .45; transform: scale(.85); }
}
@keyframes ba-datacenter-status {
  0%, 100% { opacity: .45; }
  50% { opacity: 1; }
}
.ba-datacenter-oversight article { min-height: 14rem; padding: 1.35rem; background: rgba(255, 255, 255, .06); border: 1px solid rgba(205, 229, 241, .18); border-bottom: 2px solid var(--ba-x-green); }
.ba-datacenter-oversight h3 { margin: 0; color: var(--ba-x-white); font-size: 1.1rem; }
.ba-datacenter-oversight p { color: var(--ba-x-sky); }
.ba-datacenter-links a { position: relative; display: grid; min-height: 12rem; align-content: start; gap: .75rem; padding: 1.3rem 2.8rem 1.3rem 1.3rem; background: var(--ba-x-white); border: 1px solid var(--ba-x-line); color: var(--ba-x-navy); text-decoration: none; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.ba-datacenter-links a:hover,
.ba-datacenter-links a:focus-visible { transform: translateY(-3px); border-color: var(--ba-x-blue); box-shadow: var(--ba-x-shadow); }
.ba-datacenter-links strong { font-size: 1rem; }
.ba-datacenter-links span { color: var(--ba-x-soft); font-size: .9rem; }
.ba-datacenter-links i { position: absolute; top: 1.2rem; right: 1.2rem; color: var(--ba-x-blue); font-style: normal; }

/* ADP opportunities reuse the site's typography and quiet ruled layout. */
.ba-jobs { display: grid; border-top: 1px solid var(--ba-x-line); }
.ba-job { min-width: 0; padding-block: clamp(1.25rem, 2.5vw, 1.75rem); border-bottom: 1px solid var(--ba-x-line); }
.ba-job .ba-subtitle { max-width: none; }
.ba-job .ba-subtitle a { color: var(--ba-x-navy); text-decoration-thickness: 1px; text-underline-offset: .22em; overflow-wrap: anywhere; }
.ba-job .ba-subtitle a:hover,
.ba-job .ba-subtitle a:focus-visible { color: var(--ba-x-soft); }
.ba-job__meta { margin: .6rem 0 0; color: var(--ba-x-soft); font-size: .9rem; line-height: 1.5; overflow-wrap: anywhere; }
.ba-jobs-fallback { margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid var(--ba-x-line); }
.ba-job-detail .ba-title { overflow-wrap: anywhere; }
.ba-job-detail .ba-job__meta { margin-top: 1.25rem; }
.ba-job-description { max-width: 76ch; margin-top: 2rem; color: var(--ba-x-navy); font-size: 1rem; line-height: 1.65; overflow-wrap: anywhere; }
.ba-job-description > :first-child { margin-top: 0; }
.ba-job-description h2,
.ba-job-description h3,
.ba-job-description h4 { margin: 1.75rem 0 .75rem; font-weight: 500; line-height: 1.3; }
.ba-job-description h2 { font-size: 1.5rem; }
.ba-job-description h3 { font-size: 1.25rem; }
.ba-job-description h4 { font-size: 1rem; }
.ba-job-description p,
.ba-job-description ul,
.ba-job-description ol { margin-block: 0 1rem; }
.ba-job-description ul,
.ba-job-description ol { padding-left: 1.5rem; }
.ba-job-description li + li { margin-top: .4rem; }
.ba-job-description a { text-underline-offset: .2em; }
.ba-job-description img { max-width: 100%; height: auto; }
.ba-job-description table { display: block; max-width: 100%; overflow-x: auto; }
.ba-job :is(a):focus-visible,
.ba-jobs-fallback a:focus-visible,
.ba-job-detail a:focus-visible { outline: 2px solid var(--ba-x-blue); outline-offset: 4px; }
@media (max-width: 47.99rem) {
  .ba-job-detail .ba-actions { align-items: flex-start; flex-direction: column; }
  .ba-jobs-fallback .ba-button { max-width: 100%; text-align: left; }
}

.ba-about-strengths,
.ba-career-benefits,
.ba-career-quotes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--ba-x-line);
  border: 1px solid var(--ba-x-line);
}
.ba-about-strengths article,
.ba-career-benefits article {
  min-height: 13rem;
  padding: 1.4rem;
  background: var(--ba-x-white);
  border-top: 2px solid var(--ba-x-blue);
}
.ba-about-strengths h3,
.ba-career-benefits h3 { margin: 0; color: var(--ba-x-navy); font-size: 1.2rem; }
.ba-about-strengths p,
.ba-career-benefits p { color: var(--ba-x-soft); }
.ba-about-timeline-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.25rem;
  align-items: center;
  margin: -.8rem 0 1rem;
}
.ba-about-timeline-controls { margin: 0; }
.ba-about-timeline-tools:not(:has(.ba-about-timeline-progress)) {
  display: flex;
  justify-content: flex-end;
}
.ba-about-timeline-progress {
  position: relative;
  height: 3px;
  overflow: hidden;
  background: var(--ba-x-line);
}
.ba-about-timeline-progress span {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  min-width: 2.5rem;
  background: var(--ba-x-blue);
  transition: left .12s linear, width .12s linear;
}
.ba-about-timeline {
  position: relative;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(18rem, 29%);
  gap: .8rem;
  padding: .35rem 0 1.2rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  scrollbar-color: var(--ba-x-blue) var(--ba-x-line);
}
.ba-about-timeline::before {
  content: "";
  position: absolute;
  top: 4.85rem;
  left: 0;
  width: max(100%, 170rem);
  height: 1px;
  background: var(--ba-x-line);
}
.ba-about-timeline article {
  position: relative;
  min-height: 19rem;
  padding: 1.25rem;
  background: linear-gradient(155deg, #f7fbfe, var(--ba-x-white) 60%);
  border: 1px solid var(--ba-x-line);
  scroll-snap-align: start;
}
.ba-about-timeline span { color: var(--ba-x-blue); font-size: 1rem; font-weight: 700; letter-spacing: .08em; }
.ba-about-timeline i {
  position: relative;
  z-index: 2;
  display: block;
  width: .85rem;
  height: .85rem;
  margin: 1.95rem 0 1.45rem;
  background: var(--ba-x-blue);
  border: 3px solid var(--ba-x-white);
  border-radius: 50%;
  box-shadow: 0 0 0 1px var(--ba-x-blue), 0 0 0 .4rem rgba(2, 162, 253, .1);
}
.ba-about-timeline h3 { margin: 0; color: var(--ba-x-navy); font-size: 1.1rem; }
.ba-about-timeline p { color: var(--ba-x-soft); font-size: .9rem; }
.ba-about-directory {
  display: grid;
  grid-template-columns: 1fr;
  gap: .75rem;
}
.ba-about-directory-section { border-top: 1px solid var(--ba-x-line); }
.ba-about-directory a {
  position: relative;
  min-height: 14rem;
  padding: 1.35rem 3rem 1.35rem 1.35rem;
  background: var(--ba-x-white);
  border: 1px solid var(--ba-x-line);
  color: var(--ba-x-navy);
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.ba-about-directory a:hover,
.ba-about-directory a:focus-visible { transform: translateY(-3px); border-color: var(--ba-x-blue); box-shadow: var(--ba-x-shadow); }
.ba-about-directory strong { display: block; font-size: 1rem; white-space: nowrap; }
.ba-about-directory p { margin: .7rem 0 0; color: var(--ba-x-soft); font-size: .9rem; }
.ba-about-directory__icon {
  display: grid;
  width: 2.65rem;
  height: 2.65rem;
  margin-bottom: 1.15rem;
  place-items: center;
  border-radius: .7rem;
  background: linear-gradient(145deg, var(--ba-x-blue), #0068d8);
  box-shadow: 0 .55rem 1.2rem rgba(2, 162, 253, .2);
  color: var(--ba-x-white);
  transition: transform .2s ease, box-shadow .2s ease;
}
.ba-about-directory__icon svg { width: 1.35rem; height: 1.35rem; fill: currentColor; }
.ba-about-directory a:hover .ba-about-directory__icon,
.ba-about-directory a:focus-visible .ba-about-directory__icon {
  transform: translateY(-2px) rotate(-2deg);
  box-shadow: 0 .75rem 1.5rem rgba(2, 162, 253, .28);
}
.ba-about-directory__arrow { position: absolute; top: 1.2rem; right: 1.2rem; color: var(--ba-x-blue); }
#documents .ba-about-directory__item {
  position: relative;
  min-height: 14rem;
  padding: 1.35rem 3rem 1.35rem 1.35rem;
  background: var(--ba-x-white);
  border: 1px solid var(--ba-x-line);
  color: var(--ba-x-navy);
}
#documents .ba-about-directory__item strong { display: block; font-size: 1rem; white-space: nowrap; }
#documents .ba-about-directory__item p { margin: .7rem 0 0; color: var(--ba-x-soft); font-size: .9rem; }
#documents .ba-trust-request { margin: .75rem 0 0; }
#documents .ba-trust-request a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  padding: .4rem 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  background: transparent;
  color: var(--ba-x-navy);
  font-size: .9rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none;
  transition: transform .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease;
}
#documents .ba-trust-request a:hover,
#documents .ba-trust-request a:focus-visible { color: var(--ba-x-blue); }
.ba-about-belief { display: block; }
.ba-about-belief .ba-eyebrow { color: var(--ba-x-blue); }
.ba-about-belief .ba-lead { margin: 0; color: var(--ba-x-sky); }
#leadership-team .ba-band__head { grid-template-columns: 1fr; gap: 1rem; }
#leadership-team .ba-copy { max-width: none; }
.ba-career-culture > .ba-shell { display: grid; grid-template-columns: minmax(0, .95fr) minmax(20rem, 1.05fr); gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.ba-career-culture__image { position: relative; min-height: 28rem; overflow: hidden; border: 1px solid rgba(205, 229, 241, .18); }
.ba-career-culture__image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, rgba(22, 50, 79, .7), rgba(2, 162, 253, .14)); mix-blend-mode: multiply; }
.ba-career-culture__image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.14); }
.ba-career-culture .ba-band__head { margin-bottom: 1.4rem; }

/* Owned Atlanta showcase: preserve the original photo, not the career treatment. */
#showcase .ba-career-culture__image::after { display: none; }
#showcase .ba-career-culture__image { min-height: 0; aspect-ratio: 4 / 3; align-self: start; }
#showcase .ba-career-culture__image img { filter: none; object-position: 15% 50%; }
#showcase .ba-showcase-happens { margin-top: 1.4rem; }
#showcase .ba-showcase-happens .ba-micro { display: block; color: var(--ba-x-blue); margin-bottom: .4rem; }
#showcase .ba-showcase-proof { margin-top: 1rem; font-size: .8rem; color: var(--ba-x-soft); }
.ba-career-values { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .65rem; }
.ba-career-values article { min-height: 14rem; padding: 1.2rem; background: linear-gradient(145deg, #edf6fc, var(--ba-x-white)); border: 1px solid rgba(0, 76, 167, .18); }
.ba-career-values h3 { margin: 0; color: var(--ba-x-navy); font-size: 1.08rem; }
.ba-career-values p { color: var(--ba-x-soft); font-size: .9rem; }
.ba-career-quotes blockquote { min-height: 15rem; margin: 0; padding: 1.4rem; background: var(--ba-x-white); }
.ba-career-quotes p { margin: 0; color: var(--ba-x-navy); font-size: 17px; line-height: 1.55; }
.ba-career-quotes cite { display: block; margin-top: 1.2rem; color: var(--ba-x-blue); font-size: .75rem; font-style: normal; font-weight: 700; text-transform: uppercase; }
.ba-career-notice { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(20rem, .85fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.ba-career-notice > div > p { color: var(--ba-x-soft); }
.ba-career-notice aside { padding: 1.4rem; background: var(--ba-x-navy); color: var(--ba-x-white); border-top: 2px solid var(--ba-x-blue); }
.ba-career-notice aside .ba-micro { color: var(--ba-x-blue); }
.ba-career-notice aside h3 { margin: .8rem 0 0; font-size: 1.2rem; }
.ba-career-notice aside p { color: var(--ba-x-sky); }
.ba-career-notice aside a { color: var(--ba-x-white); font-size: 1rem; font-weight: 700; text-underline-offset: .25rem; }

.ba-leadership-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem;
}
.ba-leader-card { position: relative; display: grid; grid-template-rows: auto 1fr; overflow: hidden; background: var(--ba-x-white); border: 1px solid var(--ba-x-line); }
.ba-leader-card__portrait { position: relative; aspect-ratio: 1 / 1; overflow: hidden; background: var(--ba-x-navy); }
.ba-leader-card__portrait::before { display: none; }
.ba-leader-card__portrait::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(22, 50, 79, .72) 0%, rgba(0, 68, 166, .5) 42%, rgba(91, 132, 159, .28) 70%, rgba(218, 225, 231, .1) 100%); mix-blend-mode: multiply; pointer-events: none; }
.ba-leader-card__portrait img { display: block; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.08); transition: filter .45s ease, transform .55s ease; }
.ba-leader-card:hover .ba-leader-card__portrait img { filter: grayscale(.45) contrast(1.08); transform: scale(1.025); }
.ba-leader-card__portrait i { position: absolute; z-index: 3; right: 1.1rem; bottom: 1.1rem; width: 2.8rem; height: 2px; background: var(--ba-x-blue); box-shadow: 0 0 1rem rgba(2, 162, 253, .8); transition: width .35s ease; }
.ba-leader-card:hover .ba-leader-card__portrait i { width: 5.2rem; }
.ba-leader-card > div:last-child { min-height: 15rem; padding: 1.25rem; border-top: 2px solid var(--ba-x-blue); }
.ba-leader-card .ba-micro { color: var(--ba-x-blue); }
.ba-leader-card h2 { margin: .9rem 0 0; color: var(--ba-x-navy); font-size: 1.2rem; }
.ba-leader-card p { color: var(--ba-x-soft); font-size: .9rem; }

.ba-awards-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem;
}
.ba-award-card { padding: 1.2rem; background: var(--ba-x-cloud); border: 1px solid var(--ba-x-line); }
.ba-award-card > div { display: grid; height: 17rem; place-items: center; margin-bottom: 1rem; overflow: hidden; background: var(--ba-x-white); }
.ba-award-card img { width: auto; max-height: 15rem; }
.ba-award-card span { color: var(--ba-x-blue); font-size: .75rem; font-weight: 700; }
.ba-award-card h2 { margin: .35rem 0 0; color: var(--ba-x-navy); font-size: 1rem; }

.ba-article-layout { display: grid; grid-template-columns: minmax(14rem, .42fr) minmax(0, 1.58fr); gap: clamp(2.5rem, 8vw, 8rem); align-items: start; }
.ba-article-meta { position: sticky; top: calc(var(--ba-x-header) + 2rem); display: grid; gap: .8rem; padding-top: 1rem; border-top: 2px solid var(--ba-x-blue); }
.ba-article-meta .ba-micro { color: var(--ba-x-blue); }
.ba-article-meta strong { color: var(--ba-x-navy); font-size: .9rem; font-weight: 400; }
.ba-article-meta p { margin: 0; color: var(--ba-x-soft); font-size: .9rem; }
.ba-article-meta a { color: var(--ba-x-navy); font-size: .9rem; font-weight: 700; text-underline-offset: .25rem; }
.ba-article-body { max-width: 55rem; }
.ba-article-dek { margin: 0 0 clamp(3rem, 7vw, 6rem); color: var(--ba-x-navy); font-size: 1.25rem; font-weight: 400; line-height: 1.45; }
.ba-article-body section { padding: clamp(2rem, 5vw, 4rem) 0; border-top: 1px solid var(--ba-x-line); }
.ba-article-body section:first-of-type { padding-top: 0; border-top: 0; }
.ba-article-body h2 { margin: 0 0 1.5rem; color: var(--ba-x-navy); font-size: clamp(1.728rem, 2.88vw, 2.976rem); font-weight: 300; letter-spacing: -.0205em; line-height: 1.08; }
.ba-article-body section p { color: var(--ba-x-soft); font-size: 1rem; line-height: 1.75; }
.ba-article-body .ba-gated-download {
  margin-top: clamp(2.5rem, 6vw, 5rem);
  padding: clamp(2rem, 3vw, 2.5rem) clamp(1.35rem, 3vw, 2.5rem);
  background: var(--ba-x-cloud);
  border-top: 2px solid var(--ba-x-blue);
}
.ba-article-body section.ba-gated-download:first-of-type {
  padding-top: clamp(2rem, 3vw, 2.5rem);
  border-top: 2px solid var(--ba-x-blue);
}
.ba-gated-download .ba-eyebrow { margin-bottom: .8rem; }
.ba-gated-download .ba-title {
  margin-bottom: .8rem;
  font-size: clamp(1.62525rem, 2.955vw, 2.4625rem);
}
.ba-gated-download > p { margin: 0 0 1.2rem; }
.ba-gated-download__form {
  min-height: 5rem;
  padding: clamp(1rem, 2vw, 1.5rem) 0 0;
  background: transparent;
  border: 0;
}
.ba-gated-download__status {
  margin: 0 !important;
  color: var(--ba-x-soft);
  font-size: .9rem !important;
}
.ba-gated-download__form form { max-width: 100%; }
.ba-gated-download__form iframe {
  max-width: 100%;
  background: transparent;
}
.ba-gated-download__form,
.ba-gated-download__form .hs-form,
.ba-gated-download__form .hs-form fieldset,
.ba-gated-download__form .hs-form label,
.ba-gated-download__form .hs-form legend,
.ba-gated-download__form .hs-form p,
.ba-gated-download__form .hs-form span,
.ba-gated-download__form .hs-form .hs-field-desc,
.ba-gated-download__form .hs-form .hs-richtext,
.ba-gated-download__form .hs-form .legal-consent-container,
.ba-gated-download__form .hs-form .hs-form-booleancheckbox-display {
  color: var(--ba-x-ink) !important;
}
.ba-gated-download__form .hs-form .hs-form-required,
.ba-gated-download__form .hs-form .hs-error-msg,
.ba-gated-download__form .hs-form .hs-error-msgs label {
  color: #a12622 !important;
}
.ba-gated-download__form .hs-form a {
  color: #0067b9 !important;
  text-decoration: underline;
}
.ba-gated-download__form .hs-form input:not(.hs-button):not([type="submit"]),
.ba-gated-download__form .hs-form select,
.ba-gated-download__form .hs-form textarea {
  color: var(--ba-x-ink) !important;
  background: var(--ba-x-white) !important;
}
.ba-gated-download__form .hs-form .hs-button,
.ba-gated-download__form .hs-form input.hs-button[type="submit"] {
  color: #fff !important;
}
.ba-gated-download__form .hs-form .hs_submit {
  padding-top: 40px !important;
}
.ba-imported-article-body > p:not(.ba-article-dek),
.ba-imported-article-body > li,
.ba-imported-article-body > div,
.ba-imported-article-body > figure,
.ba-imported-article-body > dl {
  color: var(--ba-x-soft);
  font-size: 1rem;
  line-height: 1.75;
}
.ba-imported-article-body > h2,
.ba-imported-article-body > h3,
.ba-imported-article-body > h4,
.ba-imported-article-body > h5,
.ba-imported-article-body > h6 {
  margin: clamp(2rem, 5vw, 4rem) 0 1.1rem;
  color: var(--ba-x-navy);
  font-weight: 300;
  letter-spacing: -.025em;
  line-height: 1.12;
}
.ba-imported-article-body > h2 { font-size: clamp(1.728rem, 2.88vw, 2.976rem); letter-spacing: -.0205em; }
/* Preserve deliberate bold italic emphasis while normalizing imported bold wrappers. */
.ba-imported-article-body :is(h2, h3, h4, h5, h6) :is(strong, b):not(:has(> i, > em)) { font-weight: inherit; }
.ba-imported-article-body > h3 { font-size: clamp(1.45rem, 2.3vw, 2.15rem); }
.ba-imported-article-body > h4,
.ba-imported-article-body > h5,
.ba-imported-article-body > h6 { font-size: 1.25rem; }
.ba-imported-article-body ul,
.ba-imported-article-body ol { margin: 1.2rem 0; padding-left: 1.5rem; color: var(--ba-x-soft); }
.ba-imported-article-body li { margin: .45rem 0; }
.ba-imported-article-body blockquote {
  margin: 2rem 0;
  padding: 1rem 1.4rem;
  border-left: 2px solid var(--ba-x-blue);
  color: var(--ba-x-navy);
  font-size: 1.25rem;
  font-weight: 400;
}
.ba-imported-article-body table { width: 100%; margin: 1.5rem 0; border-collapse: collapse; color: var(--ba-x-soft); }
.ba-imported-article-body th,
.ba-imported-article-body td { padding: .65rem .75rem; border: 1px solid var(--ba-x-line); text-align: left; vertical-align: top; }
.ba-imported-article-body th { color: var(--ba-x-navy); font-weight: 700; }
.ba-article-source { margin-top: 3rem; padding-top: 1rem; border-top: 1px solid var(--ba-x-line); font-size: .9rem !important; }
.ba-article-source a { color: var(--ba-x-navy); font-weight: 700; text-underline-offset: .2rem; }

.ba-policy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.ba-policy-grid article { min-height: 15rem; padding: 1.4rem; background: linear-gradient(150deg, #edf6fc, var(--ba-x-white)); border: 1px solid var(--ba-x-line); border-top: 2px solid var(--ba-x-blue); }
.ba-policy-grid .ba-micro { color: var(--ba-x-blue); }
.ba-policy-grid h2 { margin: 1rem 0 0; color: var(--ba-x-navy); font-size: 20px;
  font-weight: 500;

  letter-spacing: -.01em;
}
.ba-policy-grid p { color: var(--ba-x-soft); }
#compliance .ba-policy-grid article { display: flex; flex-direction: column; }
#compliance .ba-policy-grid__link {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  margin-top: auto;
  padding: .4rem 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  background: transparent;
  color: var(--ba-x-navy);
  font-size: .9rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none;
  transition: transform .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease;
}
#compliance .ba-policy-grid__link:hover,
#compliance .ba-policy-grid__link:focus-visible { color: var(--ba-x-blue); }
#compliance .ba-policy-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.ba-brand-toolkit { display: grid; grid-template-columns: minmax(0, 1fr) minmax(20rem, 1fr); gap: 1rem; }
.ba-brand-toolkit > article { padding: 1.4rem; background: var(--ba-x-cloud); border: 1px solid var(--ba-x-line); }
.ba-brand-toolkit .ba-micro,
.ba-brand-naming .ba-micro { color: var(--ba-x-blue); }
.ba-brand-toolkit__logo > div { display: grid; min-height: 13rem; margin: 1rem 0; place-items: center; background: var(--ba-x-navy); }
.ba-brand-toolkit__logo img { width: min(18rem, 70%); }
.ba-brand-toolkit__colors > div { display: grid; grid-template-columns: 2.5rem 1fr auto; gap: .8rem; align-items: center; margin-top: .8rem; padding: .55rem; background: var(--ba-x-white); }
.ba-brand-toolkit__colors i { width: 2.5rem; height: 2.5rem; background: var(--swatch); border: 1px solid rgba(4, 8, 34, .15); }
.ba-brand-toolkit__colors code { color: var(--ba-x-soft); font-size: .9rem; }
.ba-brand-naming { margin-top: 1rem; padding: 1.4rem; background: var(--ba-x-navy); }
.ba-brand-naming > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 1rem; background: rgba(205, 229, 241, .18); }
.ba-brand-naming article { padding: 1.2rem; background: var(--ba-x-ink); color: var(--ba-x-white); }
.ba-brand-naming strong { font-size: 1.2rem; }
.ba-brand-naming p { color: var(--ba-x-sky); font-size: .9rem; }

.ba-logo-rail,
.ba-logo-grid {
  display: grid;
  gap: .75rem;
  background: transparent;
  border: 0;
}
.ba-logo-rail { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ba-logo-rail--strategic { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ba-logo-grid { grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr)); }
.ba-logo-grid--telecom { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ba-logo {
  display: grid;
  min-height: 7.2rem;
  place-items: center;
  gap: .45rem;
  padding: 1rem;
  background: var(--ba-x-white);
  border: 1px solid var(--ba-x-line);
  text-decoration: none;
}
.ba-logo img {
  display: block;
  width: auto;
  max-width: min(100%, 9rem);
  max-height: 2.7rem;
  object-fit: contain;
  filter: grayscale(1) contrast(1.05);
  opacity: .8;
  transition: filter .2s ease, opacity .2s ease, transform .2s ease;
}
.ba-logo img[src$="/everpure.svg"] { max-width: min(100%, 6rem); }
.ba-logo:hover img { filter: grayscale(0); opacity: 1; transform: translateY(-2px); }
.ba-logo--linked { transition: border-color .2s ease, transform .2s ease; }
.ba-logo--linked:hover,
.ba-logo--linked:focus-visible { border-color: var(--ba-x-blue); transform: translateY(-2px); }
.ba-logo span { color: var(--ba-x-soft); font-size: .75rem; text-align: center; }

.ba-strategic-profile { display: grid; grid-template-columns: minmax(15rem, .65fr) minmax(0, 1.35fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: center; }
.ba-strategic-profile__logo { display: grid; min-height: 19rem; place-items: center; padding: 2rem; background: linear-gradient(145deg, #edf6fc, var(--ba-x-white)); border-top: 1px solid var(--ba-x-navy); border-bottom: 1px solid var(--ba-x-line); }
.ba-strategic-profile__logo img { width: auto; max-width: min(100%, 18rem); max-height: 6rem; }
.ba-strategic-profile .ba-lead { margin: 1rem 0; color: var(--ba-x-soft); }
.ba-text-link { display: inline-flex; gap: .55rem; margin-top: .5rem; padding: .35rem 0; border-bottom: 1px solid currentColor; color: var(--ba-x-navy); font-size: .9rem; font-weight: 700; text-decoration: none; }
.ba-text-link:hover,
.ba-text-link:focus-visible { color: var(--ba-x-blue); }
.ba-partner-capabilities { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(205, 229, 241, .16); border: 1px solid rgba(205, 229, 241, .16); }
.ba-partner-capabilities article { position: relative; min-height: 13rem; padding: 1.25rem; background: rgba(255, 255, 255, .045); border-top: 1px solid var(--ba-x-blue); transition: transform .28s ease, background-color .28s ease, box-shadow .28s ease; }
.ba-partner-capabilities article:hover,
.ba-partner-capabilities article:focus-within {
  z-index: 1;
  background: linear-gradient(145deg, rgba(2, 162, 253, .15), rgba(255, 255, 255, .055));
  box-shadow: var(--ba-grid-seam, 0 0 transparent), 0 18px 34px rgba(0, 0, 0, .24);
  transform: translateY(-4px);
}
.ba-partner-capabilities h3 { margin: 0; color: var(--ba-x-white); font-size: 1.05rem; }
.ba-partner-capabilities p { margin: 1rem 0 0; color: var(--ba-x-sky); font-size: .9rem; }
.ba-partner-detail-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: .75rem;
}
.ba-partner-detail-grid article {
  min-height: 11rem;
  padding: 1.25rem;
  background: linear-gradient(145deg, var(--ba-x-white), #edf6fc);
  border: 1px solid var(--ba-x-line);
  border-top: 2px solid var(--ba-x-blue);
}
.ba-partner-detail-grid .ba-micro { color: var(--ba-x-blue); }
.ba-partner-detail-grid h3 { margin: .75rem 0 0; color: var(--ba-x-navy); font-size: 1.05rem; }
.ba-partner-detail-grid p { margin: .75rem 0 0; color: var(--ba-x-soft); font-size: .9rem; }

.ba-tabs,
.ba-filter {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin-bottom: 1.4rem;
}
.ba-tabs { border-bottom: 1px solid var(--ba-x-line); padding-bottom: .8rem; }
.ba-tier-panel[hidden],
.ba-story[hidden] { display: none !important; }

.ba-tier-note {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(16rem, 1.2fr);
  gap: 2rem;
  align-items: start;
  margin: .5rem 0 1.6rem;
}
.ba-tier-note p { margin: 0; color: var(--ba-x-soft); }
.ba-tier-count { color: var(--ba-x-navy); }

.ba-channel-partner-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(20rem, .8fr);
  gap: 2rem;
}
.ba-channel-partner-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.ba-channel-partner-cards article {
  padding: 1.2rem;
  background: var(--ba-x-cloud);
  border-top: 2px solid var(--ba-x-blue);
}
.ba-channel-partner-cards h3 { margin: 0; color: var(--ba-x-navy); font-size: 1rem; }
.ba-channel-partner-cards p { margin: .65rem 0 0; color: var(--ba-x-soft); font-size: .9rem; }
.ba-channel-partner-grid aside > .ba-micro { display: block; margin-bottom: .7rem; color: var(--ba-x-blue); }
.ba-contract-vehicles { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: 1.4rem; }
.ba-contract-vehicles span { padding: .42rem .55rem; background: var(--ba-x-navy); color: var(--ba-x-white); font-size: .75rem; }
.ba-contract-vehicles--subcontract span { background: transparent; color: var(--ba-x-navy); border: 1px solid currentColor; }
.ba-logo-grid--channel { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.ba-story-controls {
  display: flex;
  gap: .45rem;
  justify-content: flex-end;
  margin-bottom: .8rem;
}
.ba-story-controls button {
  display: grid;
  width: 2.7rem;
  height: 2.7rem;
  place-items: center;
  border: 1px solid rgba(205, 229, 241, .35);
  border-radius: 50%;
  background: transparent;
  color: currentColor;
  cursor: pointer;
}
.ba-story-controls button:hover,
.ba-story-controls button:focus-visible { border-color: var(--ba-x-blue); color: var(--ba-x-blue); }

.ba-story-rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(18rem, 34%);
  gap: 1rem;
  overflow-x: auto;
  padding: .2rem 0 1rem;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--ba-x-blue) rgba(205, 229, 241, .18);
}
.ba-story-rail--fit {
  grid-auto-flow: row;
  grid-auto-columns: auto;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: visible;
  scroll-snap-type: none;
}
.ba-story {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  scroll-snap-align: start;
  background: var(--ba-x-white);
  color: var(--ba-x-ink);
  border-bottom: 2px solid transparent;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.ba-story:hover,
.ba-story:focus-within {
  transform: translateY(-3px);
  border-color: var(--ba-x-blue);
  box-shadow: var(--ba-x-shadow);
}
.ba-story--linked {
  position: relative;
  text-decoration: none;
}
.ba-story--linked:focus-visible {
  outline: 3px solid var(--ba-x-blue);
  outline-offset: 3px;
}
.ba-story__media {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--ba-x-ink);
}
.ba-story__media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(105deg,
    rgba(22, 50, 79, .76) 0%,
    rgba(0, 67, 163, .6) 52%,
    rgba(2, 162, 253, .24) 100%);
}
.ba-story__media::before {
  content: "";
  position: absolute;
  z-index: 2;
  left: 0;
  bottom: 0;
  width: clamp(3.5rem, 20%, 7rem);
  height: 2px;
  background: var(--ba-x-blue);
}
.ba-story__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1) contrast(1.2) brightness(.96);
  transition: transform .55s ease;
}
.ba-story__media--wash::after {
  background: linear-gradient(90deg,
    rgba(22, 50, 79, .74) 0%,
    rgba(0, 68, 166, .58) 38%,
    rgba(63, 122, 166, .38) 64%,
    rgba(174, 190, 202, .24) 84%,
    rgba(231, 236, 240, .12) 100%);
  mix-blend-mode: multiply;
}
.ba-story__media:has(img[src$="blog-ian-interview.png"]) img {
  filter: grayscale(.2) contrast(.96) brightness(1.42);
}
.ba-story__media--wash:has(img[src$="blog-ian-interview.png"])::after {
  background: linear-gradient(90deg, rgba(22, 50, 79, .22), rgba(0, 68, 166, .08));
  mix-blend-mode: normal;
}
.ba-no-card-ordinals .ba-outcome__number,
.ba-no-card-ordinals .ba-service__number {
  display: none;
}
.ba-story__media--mirrored img { transform: scaleX(-1); }
.ba-story:hover .ba-story__media img { transform: scale(1.04); }
.ba-story:hover .ba-story__media--mirrored img { transform: scaleX(-1) scale(1.04); }
.ba-story__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 1.2rem;
}
.ba-story__tag { margin-bottom: .55rem; color: var(--ba-x-blue); }
.ba-story p { margin: .6rem 0 1rem; color: var(--ba-x-soft); }
.ba-story .ba-card__link { margin-top: auto; }
.ba-band--ink .ba-story .ba-card__link,
.ba-band--navy .ba-story .ba-card__link {
  color: var(--ba-x-blue);
  border-color: var(--ba-x-blue);
}

.ba-story-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.ba-story-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.ba-case-context { display: grid; grid-template-columns: minmax(0, .9fr) minmax(22rem, 1.1fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: start; }
.ba-case-context > div:last-child { padding: 1.1rem 0 0; background: transparent; border: 0; border-top: 1px solid var(--ba-x-blue); }
.ba-case-context > div:last-child .ba-micro { color: var(--ba-x-blue); }
.ba-case-context > div:last-child p { margin: .6rem 0 1.5rem; color: var(--ba-x-soft); }
.ba-case-context > div:last-child p:last-child { margin-bottom: 0; }
.ba-case-context .ba-title { font-size: clamp(1.97rem, 2.955vw, 2.758rem) !important; }
.ba-case-chapter { display: grid; grid-template-columns: minmax(15rem, .55fr) minmax(0, 1.45fr); gap: clamp(2.5rem, 8vw, 8rem); align-items: start; }
.ba-case-chapter > div:first-child { position: sticky; top: calc(var(--ba-x-header) + 2rem); }
.ba-case-chapter .ba-micro { color: var(--ba-x-blue); }
.ba-case-chapter h2 { margin: .7rem 0 0; color: var(--ba-x-navy); font-size: clamp(1.92rem, 2.88vw, 2.688rem); font-weight: 300; letter-spacing: -.0205em; line-height: 1.05; }
.ba-case-chapter > div:last-child p { max-width: 53rem; margin: 0 0 1.4rem; color: var(--ba-x-soft); font-size: 1rem; line-height: 1.7; }
.ba-band--ink .ba-case-chapter h2 { color: var(--ba-x-white); }
.ba-band--ink .ba-case-chapter > div:last-child p { color: var(--ba-x-sky); }
.ba-case-highlights__head { display: grid; grid-template-columns: minmax(0, .45fr) minmax(0, 1.55fr); gap: 2rem; align-items: end; margin-bottom: 2rem; }
.ba-case-highlights__head .ba-eyebrow { color: var(--ba-x-blue); }
.ba-case-highlights__head .ba-title { max-width: none; color: var(--ba-x-white); }
.ba-case-highlights { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: rgba(205, 229, 241, .18); border: 1px solid rgba(205, 229, 241, .18); }
.ba-case-highlights:has(> article:nth-child(5):last-child) { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.ba-case-highlights:has(> article:nth-child(5):last-child) > article { grid-column: span 2; }
.ba-case-highlights:has(> article:nth-child(5):last-child) > article:nth-last-child(-n+2) { grid-column: span 3; }
.ba-case-highlights article { min-height: 13rem; padding: 1.35rem; background: linear-gradient(145deg, rgba(22, 50, 79, .98), rgba(5, 87, 166, .72)); }
.ba-case-highlights span { display: block; color: var(--ba-x-blue); font-size: 1rem; font-weight: 700; }
.ba-case-highlights p { margin: 1.2rem 0 0; color: var(--ba-x-sky); font-size: 1rem; line-height: 1.55; }

.ba-partner-callout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(18rem, .8fr);
  gap: clamp(2rem, 6vw, 5rem);
  align-items: center;
}

.ba-close {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(
      to bottom,
      rgba(4, 8, 34, .5) 0,
      rgba(4, 8, 34, .3) 1.25rem,
      rgba(4, 8, 34, .13) 3rem,
      rgba(4, 8, 34, .04) 4.5rem,
      rgba(4, 8, 34, 0) 6rem
    ),
    var(--ba-x-white);
  color: var(--ba-x-navy);
  border-top: 0;
  box-shadow: none;
}
.ba-close::after {
  display: none;
}
.ba-close .ba-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2rem;
  align-items: center;
  min-height: clamp(16rem, 24vw, 19rem);
  padding-block: clamp(4rem, 7vw, 5.5rem);
}
.ba-close .ba-title { color: var(--ba-x-navy) !important; font-size: clamp(1.97rem, 2.955vw, 2.758rem) !important; }
.ba-close p { margin: .9rem 0 0; color: var(--ba-x-soft); }
.ba-close--home {
  background:
    linear-gradient(
      to bottom,
      rgba(4, 8, 34, .5) 0,
      rgba(4, 8, 34, .3) 1.25rem,
      rgba(4, 8, 34, .13) 3rem,
      rgba(4, 8, 34, .04) 4.5rem,
      rgba(4, 8, 34, 0) 6rem
    ),
    var(--ba-x-white);
  color: var(--ba-x-navy);
  border-top: 0;
  box-shadow: none;
}
.ba-close--home .ba-shell {
  min-height: clamp(16rem, 24vw, 19rem);
  padding-block: clamp(4rem, 7vw, 5.5rem);
}
.ba-close--home .ba-title { color: var(--ba-x-navy) !important; }
.ba-close--home p { color: var(--ba-x-soft); }

/* Closing contact CTA only: native anchors retain their destination and attribution. */
.ba-close .ba-button[href^="/contact"] {
  min-height: 3rem;
  max-width: 100%;
  justify-self: start;
  padding: .875rem 1.25rem;
  border: 1px solid rgba(255, 255, 255, .36);
  border-radius: .375rem;
  background-color: rgba(22, 50, 79, .94);
  background-image: linear-gradient(180deg,
    rgba(255, 255, 255, .16) 0%,
    rgba(255, 255, 255, .06) 48%,
    rgba(255, 255, 255, 0) 49%,
    rgba(255, 255, 255, .04) 100%);
  color: var(--ba-x-white);
  -webkit-backdrop-filter: blur(12px) saturate(1.25);
  backdrop-filter: blur(12px) saturate(1.25);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3),
    inset 0 -1px 0 rgba(4, 8, 34, .2),
    0 3px 0 rgba(4, 8, 34, .2), 0 6px 16px rgba(22, 50, 79, .16);
  overflow-wrap: anywhere;
  transition: transform .16s ease, background-color .16s ease, box-shadow .16s ease;
}
.ba-close .ba-button[href^="/contact"]::after {
  flex: 0 0 auto;
  transform: none;
}
.ba-close .ba-button[href^="/contact"]:focus-visible {
  background-color: rgba(19, 65, 101, .96);
  color: var(--ba-x-white);
  outline: 3px solid var(--ba-x-navy);
  outline-offset: 4px;
}
@media (hover: hover) and (pointer: fine) {
  .ba-close .ba-button[href^="/contact"]:hover {
    background-color: rgba(19, 65, 101, .96);
    color: var(--ba-x-white);
    transform: translateY(-2px);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4),
      inset 0 -1px 0 rgba(4, 8, 34, .2), 0 7px 18px rgba(4, 8, 34, .24);
  }
  .ba-close .ba-button[href^="/contact"]:hover::after { transform: translateX(3px); }
}
.ba-close .ba-button[href^="/contact"]:is(:active, .is-pressed) {
  background-color: rgba(4, 8, 34, .96);
  color: var(--ba-x-white);
  transform: translateY(1px);
  box-shadow: inset 0 2px 4px rgba(4, 8, 34, .35);
  transition-duration: 0s;
}
.ba-close .ba-button[href^="/contact"]:is(:active, .is-pressed)::after { transform: none; }
@media (prefers-reduced-motion: reduce) {
  .ba-close .ba-button[href^="/contact"],
  .ba-close .ba-button[href^="/contact"]::after {
    transform: none !important;
    transition: none !important;
  }
}
/* End closing contact CTA. */

.ba-footer {
  background: var(--ba-x-ink);
  color: var(--ba-x-sky);
  border-top: 1px solid rgba(205, 229, 241, .15);
}
.ba-footer__top {
  display: grid;
  grid-template-columns: minmax(14rem, 1.15fr) minmax(10rem, .85fr) minmax(9rem, .75fr) minmax(17rem, 1.25fr);
  gap: clamp(1.25rem, 2.5vw, 3rem);
  padding-block: 3rem;
}
.ba-footer__brand {
  display: flex;
  align-self: stretch;
  flex-direction: column;
}
.ba-footer__brand img { width: 140px; height: auto; }
.ba-footer__line {
  display: block;
  margin-top: 1.15rem;
  color: var(--ba-x-blue);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.ba-footer__brand p { max-width: 30rem; margin: .65rem 0 0; color: var(--ba-x-sky); font-size: 1rem; }
.ba-footer__company { min-width: 0; }
.ba-footer__contact-row {
  display: flex;
  align-items: center;
  grid-column: 1 / -1;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
  margin-top: .15rem;
  white-space: nowrap;
}
@media (min-width: 68.01rem) {
  .ba-footer__top > :nth-child(1) { grid-column: 1; grid-row: 1; }
  .ba-footer__top > :nth-child(2) { grid-column: 2; grid-row: 1; }
  .ba-footer__top > :nth-child(3) { grid-column: 3; grid-row: 1; }
  .ba-footer__top > :nth-child(4) { grid-column: 4; grid-row: 1; }
  .ba-footer__contact-row {
    grid-row: 1;
    align-self: end;
    margin-top: 0;
    margin-bottom: 1.05rem;
    pointer-events: none;
  }
  .ba-footer__contact-row > * { pointer-events: auto; }
}
.ba-footer .ba-footer__contact-row .ba-footer__phone {
  flex: 0 0 auto;
  min-height: 0;
  line-height: 2rem;
}
.ba-footer .ba-footer__socials {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  gap: .4rem;
  margin: 0;
  padding: 0;
}
.ba-footer .ba-footer__socials a {
  display: inline-grid;
  flex: 0 0 2rem;
  place-items: center;
  box-sizing: border-box;
  width: 2rem;
  min-width: 2rem;
  max-width: 2rem;
  height: 2rem;
  min-height: 2rem;
  max-height: 2rem;
  aspect-ratio: 1;
  padding: 0;
  line-height: 1;
  color: var(--ba-x-sky);
  border: 1px solid rgba(205, 229, 241, .3);
  border-radius: 50%;
  transition: border-color .2s ease, color .2s ease, transform .2s ease;
}
.ba-footer .ba-footer__socials a:hover,
.ba-footer .ba-footer__socials a:focus-visible {
  color: var(--ba-x-blue);
  border-color: var(--ba-x-blue);
  transform: translateY(-2px);
}
.ba-footer__socials svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}
.ba-footer__cta {
  display: inline-flex;
  gap: .6rem;
  margin-top: 1rem;
  color: var(--ba-x-blue);
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
}
.ba-footer__cta:hover,
.ba-footer__cta:focus-visible { color: var(--ba-x-white); }
.ba-footer h2 {
  margin: 0 0 .8rem;
  color: var(--ba-x-blue) !important;
  font-size: .75rem !important;
  font-weight: 700 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase;
}
.ba-footer nav { display: grid; gap: .5rem; }
.ba-footer nav a { color: var(--ba-x-sky); font-size: 1rem; text-decoration: none; }
.ba-footer nav a:hover,
.ba-footer nav a:focus-visible { color: var(--ba-x-blue); }
.ba-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding-block: 1rem;
  border-top: 1px solid rgba(205, 229, 241, .14);
  color: rgba(205, 229, 241, .72);
  font-size: .75rem;
}
.ba-footer__bottom > span:last-child { display: flex; gap: 1rem; }
.ba-footer__bottom a { text-decoration: none; }
.ba-footer__bottom a[aria-disabled="true"] { color: rgba(205, 229, 241, .42); cursor: default; }

/* Existing mirrored pages receive the same shell and imagery language without
   discarding their useful content. */
body.ba-exec .main-header,
body.ba-exec .mbnav,
body.ba-exec .main-footer { display: none !important; }
body.ba-exec .wrapper,
body.ba-exec .main-container { padding-top: 0 !important; }
body.ba-exec:not(.ba-page) .hero-section {
  position: relative;
  min-height: clamp(28rem, 62vh, 42rem);
  overflow: hidden;
  isolation: isolate;
}
body.ba-exec:not(.ba-page) .hero-section .hs-bg img {
  filter: grayscale(1) contrast(1.16) brightness(.88) !important;
}
body.ba-exec:not(.ba-page) .hero-section::after {
  z-index: 1 !important;
  opacity: 1 !important;
  background:
    radial-gradient(75% 110% at 22% 0%, rgba(2, 162, 253, .14), transparent 58%),
    linear-gradient(90deg, rgba(4, 8, 34, .98), rgba(22, 50, 79, .86) 67%, rgba(4, 8, 34, .14) 67.1%) !important;
}
body.ba-exec:not(.ba-page) .hero-section .hs-banner-wrap { z-index: 3 !important; }
body.ba-exec:not(.ba-page) .hero-section h1 { color: var(--ba-x-white) !important; }
body.ba-exec:not(.ba-page) .hero-section p { color: var(--ba-x-sky) !important; }
body.ba-exec:not(.ba-page) .main-content img:not(.pg-logo):not([src*="Logo"]):not([src*="logo"]) {
  filter: grayscale(1) contrast(1.08);
}
body.ba-exec:not(.ba-page) .btn,
body.ba-exec:not(.ba-page) .ov-btn {
  border-radius: 2px !important;
}

@media (min-width: 68.01rem) {
  .ba-about-belief .ba-title,
  #leadership-team .ba-copy { white-space: nowrap; }
}

@media (max-width: 68rem) {
  .ba-primary,
  .ba-masthead__actions { display: none; }
  .ba-mobile-nav { display: block; }
  .ba-mobile-nav > summary {
    display: inline-flex;
    align-items: center;
    min-height: 2.7rem;
    padding: .55rem .8rem;
    border: 1px solid rgba(205, 229, 241, .42);
    border-radius: 2px;
    color: var(--ba-x-white);
    font-size: 1rem;
    font-weight: 700;
    list-style: none;
    cursor: pointer;
  }
  .ba-mobile-nav[open] > summary { border-color: var(--ba-x-blue); color: var(--ba-x-blue); }
  .ba-mobile-panel {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: grid;
    max-height: calc(100vh - var(--ba-x-header));
    overflow-y: auto;
    padding: .8rem calc(var(--ba-x-gutter) + clamp(1.25rem, 5vw, 2rem)) 1.25rem;
    background: rgba(4, 8, 34, .99);
    border-top: 1px solid rgba(205, 229, 241, .14);
    box-shadow: 0 20px 55px rgba(0, 0, 0, .4);
  }
  .ba-mobile-panel__label {
    margin-top: .45rem;
    padding: .8rem 0 .35rem;
  }
  .ba-mobile-panel a {
    padding: .72rem 0;
    border-bottom: 1px solid rgba(205, 229, 241, .12);
    color: var(--ba-x-white);
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
  }
  .ba-mobile-panel .ba-mobile-panel__label {
    color: var(--ba-x-blue);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
  }
  .ba-mobile-panel a.ba-mobile-link--primary {
    color: var(--ba-x-white);
    font-weight: 700;
  }
  .ba-mobile-panel a.ba-mobile-link--nested {
    margin-left: .7rem;
    padding: .65rem .25rem .65rem 1rem;
    border-left: 1px solid rgba(2, 162, 253, .38);
    color: var(--ba-x-white);
    font-size: 1rem;
    font-weight: 700;
  }
  .ba-mobile-panel a:hover,
  .ba-mobile-panel a:focus-visible { color: var(--ba-x-white); }
  .ba-mobile-panel .ba-button { justify-self: start; margin-top: .9rem; background: transparent; color: var(--ba-x-blue); }
  .ba-mobile-search { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: .72rem 0; background: transparent; border: 0; border-bottom: 1px solid rgba(205, 229, 241, .12); color: var(--ba-x-sky); text-align: left; cursor: pointer; }

  .ba-hero__content { width: 72%; }
  .ba-home-ribbon .ba-shell { grid-template-columns: 1fr; gap: .7rem; padding-block: 1rem; }
  .ba-home-ribbon nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-band__head { grid-template-columns: 1fr; gap: 1.2rem; align-items: start; }
  .ba-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-grid-3,
  .ba-services-rail,
  .ba-partner-capabilities { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-commerce-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-ecommerce-explorer { position: relative; top: auto; grid-template-columns: 1fr; align-items: start; }
  .ba-ecommerce-explorer p { white-space: normal; }
  .ba-blueprint-domains,
  .ba-offer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-blueprint-client,
  .ba-blueprint-outcomes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-blueprint-client span,
  .ba-blueprint-outcomes span { grid-column: 1 / -1; }
  .ba-blueprint-connective { grid-template-columns: 1fr; }
  .ba-blueprint-connective__track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-blueprint-panel { grid-template-columns: 1fr; min-height: 0; }
  .ba-blueprint-client { padding-inline: 2rem; }
  .ba-lifecycle { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ba-industry-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ba-home-industries-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-public-sector-card { min-height: 31rem; }
  .ba-public-sector-secondary a { grid-template-columns: 1fr; gap: .45rem; }
  .ba-public-sector-secondary p { padding-top: 0; }
  .ba-industry-expertise { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-case-highlights { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-case-highlights:has(> article:nth-child(5):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-case-highlights:has(> article:nth-child(5):last-child) > article,
  .ba-case-highlights:has(> article:nth-child(5):last-child) > article:nth-last-child(-n+2) { grid-column: auto; }
  .ba-case-highlights:has(> article:nth-child(5):last-child) > article:last-child { grid-column: 1 / -1; }
  .ba-career-values { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ba-leadership-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-datacenter-stage { grid-template-columns: 1fr; }
  .ba-brand-toolkit { grid-template-columns: 1fr; }
  .ba-logo-grid { grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr)); }
  .ba-channel-partner-grid { grid-template-columns: 1fr; }
  .ba-story-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-story-rail { grid-auto-columns: minmax(18rem, 47%); }
  .ba-story-rail--fit { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-footer__top { grid-template-columns: 1.4fr repeat(2, 1fr); }
  .ba-footer__brand { grid-column: 1 / -1; }
  .ba-footer .ba-footer__socials { margin: 0; padding: 0; }
}

@media (max-width: 44rem) {
  :root { --ba-x-header: 4.25rem; }
  .ba-brand img { width: 128px; }
  .ba-hero { min-height: 34rem; align-items: end; }
  .ba-hero::after {
    background: linear-gradient(180deg, rgba(4, 8, 34, .28), rgba(22, 50, 79, .93) 46%, rgba(4, 8, 34, .98));
  }
  .ba-home2-hero::after {
    background: linear-gradient(180deg, rgba(205, 215, 224, .08), rgba(0, 78, 174, .62) 45%, rgba(22, 50, 79, .78));
  }
  .ba-hero__content { width: 100%; padding-block: 6rem 3.25rem; }
  .ba-display { font-size: clamp(2.1350rem, 10.8843vw, 3.3490rem) !important; }
  .ba-site-search__results { grid-template-columns: 1fr; }
  .ba-site-search__results li:nth-child(odd) { margin-right: 0; }
  .ba-proofbar__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-home-ribbon nav { grid-template-columns: 1fr; }
  .ba-proofbar__item:nth-child(2) { border-right: 0; }
  .ba-proofbar__item:nth-child(n+3) { border-top: 1px solid rgba(205, 229, 241, .16); }
  .ba-section-nav__label { display: none; }
  .ba-grid-2,
  .ba-grid-3,
  .ba-grid-4,
  .ba-services-rail,
  .ba-contact-layout,
  .ba-form-grid,
  .ba-commerce-grid,
  .ba-commerce-support,
  .ba-blueprint-domains,
  .ba-offer-grid,
  .ba-telecom-route,
  .ba-story-grid,
  .ba-partner-callout,
  .ba-strategic-profile,
  .ba-partner-capabilities,
  .ba-channel-partner-grid,
  .ba-channel-partner-cards,
  .ba-tier-note,
  .ba-industry-outcomes,
  .ba-industry-context,
  .ba-industry-architecture,
  .ba-industry-expertise,
  .ba-industry-grid,
  .ba-home-industries-grid,
  .ba-public-sector-grid,
  .ba-public-sector-secondary,
  .ba-about-strengths,
  .ba-about-belief,
  .ba-leadership-grid,
  .ba-awards-grid,
  .ba-article-layout,
  .ba-case-context,
  .ba-case-chapter,
  .ba-case-highlights,
  .ba-policy-grid,
  .ba-brand-toolkit,
  .ba-datacenter-pillars,
  .ba-datacenter-oversight,
  .ba-datacenter-links,
  .ba-datacenter-stage,
  .ba-career-benefits,
  .ba-career-culture > .ba-shell,
  .ba-career-values,
  .ba-career-quotes,
  .ba-career-notice,
  .ba-close .ba-shell { grid-template-columns: 1fr; }
  .ba-logo-rail,
  .ba-logo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-story-rail { grid-auto-columns: 86%; }
  .ba-story-rail--fit { grid-template-columns: 1fr; }
  .ba-industry-resource-head { align-items: flex-start; flex-direction: column; }
  .ba-public-sector-card { min-height: 0; }
  .ba-public-sector-secondary a { min-height: 0; }
  .ba-about-timeline { grid-auto-columns: 84%; }
  .ba-about-timeline::before { width: 220rem; }
  .ba-story-controls { justify-content: flex-start; }
  .ba-case-chapter > div:first-child,
  .ba-article-meta { position: static; }
  .ba-case-highlights__head { grid-template-columns: 1fr; }
  .ba-case-highlights:has(> article:nth-child(5):last-child) { grid-template-columns: 1fr; }
  .ba-case-highlights:has(> article:nth-child(5):last-child) > article,
  .ba-case-highlights:has(> article:nth-child(5):last-child) > article:last-child { grid-column: auto; }
  .ba-brand-naming > div { grid-template-columns: 1fr; }
  .ba-datacenter-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-datacenter-flow li:not(:nth-child(3n))::after { content: none; }
  .ba-contact-details__image { aspect-ratio: 16 / 9; }
  .ba-form-actions { align-items: flex-start; flex-direction: column; }
  .ba-blueprint-preview > div > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-blueprint-preview > .ba-button {
    position: static;
    display: inline-flex;
    margin: .85rem 1.4rem 1.1rem;
  }
  .ba-blueprint-client,
  .ba-blueprint-outcomes { grid-template-columns: 1fr; }
  .ba-blueprint-meta,
  .ba-blueprint-meta > div,
  .ba-blueprint-legend { align-items: flex-start; flex-direction: column; }
  .ba-blueprint-meta > div:last-child { justify-content: flex-start; }
  .ba-blueprint-client {
    min-height: 0;
    margin-inline: .8rem;
    padding: 1.25rem;
  }
  .ba-blueprint-client::before { inset: 0; clip-path: none; }
  .ba-blueprint-client > div,
  .ba-blueprint-outcomes > div { justify-content: flex-start; }
  .ba-blueprint-outcomes {
    margin-inline: .8rem;
    gap: .5rem;
    padding: .8rem 1rem .85rem;
  }
  .ba-blueprint-outcomes > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .35rem 1rem;
    align-items: start;
  }
  .ba-blueprint-outcomes strong {
    padding: 0 0 0 .4rem;
    background: none;
    border-bottom: none;
    border-left: 2px solid rgba(255, 255, 255, .18);
    font-size: .9rem;
    line-height: 1.3;
  }
  .ba-blueprint-outcomes strong.is-related {
    color: var(--ba-x-white);
    background: none;
    border-bottom: none;
    border-left-color: #7fd0ff;
  }
  .ba-blueprint-outcomes strong.is-related::before { display: none; }
  .ba-blueprint-domains { padding: .8rem; }
  .ba-blueprint-domain { min-height: 8.5rem; }
  .ba-blueprint-panels { padding: 0 .8rem .8rem; }
  .ba-blueprint-panel__services ul { grid-template-columns: 1fr; }
  .ba-blueprint-connective { margin-inline: .8rem; }
  .ba-blueprint-connective__track { grid-template-columns: 1fr; }
  .ba-lifecycle { grid-template-columns: 1fr; }
  .ba-lifecycle li:not(:last-child)::after {
    top: auto;
    right: 50%;
    bottom: -.35rem;
    transform: translateX(50%) rotate(135deg);
  }
  .ba-industry-core { min-height: 15rem; }
  .ba-career-culture__image { min-height: 21rem; }
  .ba-expertise-card { min-height: 31rem; }
  .ba-expertise-card::after {
    background: linear-gradient(180deg,
      rgba(2, 162, 253, .04) 0%,
      rgba(0, 82, 181, .16) 24%,
      rgba(22, 50, 79, .72) 52%,
      rgba(4, 8, 34, .98) 100%);
  }
  .ba-expertise-card::before {
    top: auto;
    bottom: 0;
    left: 0;
    width: 28%;
    height: 2px;
  }
  .ba-expertise-card__body {
    inset: 35% 0 0;
    justify-content: center;
    background: rgba(4, 8, 34, .6);
  }
  .ba-close::after { right: 1rem; }
  .ba-footer__top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-footer__brand { grid-column: 1 / -1; }
  .ba-footer__company { grid-column: 1 / -1; }
  .ba-footer__contact-row { grid-column: 1 / -1; }
  .ba-footer__bottom { flex-direction: column; }

}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* Final terminology and interaction refinements. */
.ba-title > span {
  color: var(--ba-x-blue);
}
.ba-title > .ba-title__accent-inline { display: inline; }
.ba-title > .ba-title__accent-block { display: block; }

.ba-tabs {
  display: flex;
  flex-wrap: nowrap;
  gap: .55rem;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 1.5rem;
  padding: .4rem;
  overflow-x: auto;
  border: 1px solid rgba(22, 50, 79, .12);
  background: rgba(22, 50, 79, .045);
  scrollbar-width: thin;
}

.ba-tabs button,
.ba-tabs button:hover,
.ba-tabs button:focus-visible,
.ba-tabs button[aria-selected="true"] {
  flex: 0 0 auto;
  min-height: 2.8rem;
  margin: 0;
  padding: .65rem 1rem;
  border: 1px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--ba-x-navy);
  font-weight: 700 !important;
  white-space: nowrap;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}

.ba-tabs button:hover,
.ba-tabs button:focus-visible {
  border-color: rgba(2, 162, 253, .55);
  background: rgba(2, 162, 253, .08);
  color: var(--ba-x-navy);
  transform: translateY(-1px);
}

.ba-tabs button:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(2, 162, 253, .28);
}

.ba-tabs button[aria-selected="true"],
.ba-tabs button[aria-selected="true"]:hover,
.ba-tabs button[aria-selected="true"]:focus-visible {
  border-color: var(--ba-x-navy);
  background: var(--ba-x-navy);
  box-shadow: inset 3px 0 0 var(--ba-x-blue);
  color: var(--ba-x-white);
}

.ba-tabs button[aria-selected="true"]:focus-visible {
  box-shadow: inset 3px 0 0 var(--ba-x-blue), 0 0 0 2px rgba(2, 162, 253, .28);
}

.ba-industry-selector {
  padding: clamp(1rem, 2vw, 1.5rem) 0;
  background: var(--ba-x-white);
}

.ba-industry-selector .ba-tabs { margin: 0; }
.ba-industry-flow-next { border-top: clamp(.9rem, 2vw, 1.35rem) solid var(--ba-x-white); }

@media (min-width: 48rem) {
  .ba-about-directory { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .ba-about-directory a { grid-column: span 2; }
  .ba-about-directory a:nth-last-child(-n + 2) { grid-column: span 3; }
  #documents .ba-about-directory { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  #documents .ba-about-directory__item:nth-child(-n + 4) { grid-column: span 3; }
  #documents .ba-about-directory__item:nth-child(n + 5) { grid-column: span 4; }
  .ba-footer__top { align-items: start; }
  .ba-footer nav { gap: 0; }
  .ba-footer nav a {
    display: block;
    min-height: 2.7rem;
    line-height: 1.35;
  }
}

@media (max-width: 56rem) {
  #compliance .ba-policy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 44rem) {
  #compliance .ba-policy-grid { grid-template-columns: 1fr; }
  #documents .ba-about-directory__item { min-height: 0; }
}

.ba-leader-card__portrait::after {
  background: linear-gradient(135deg, rgba(22, 50, 79, .2), rgba(2, 162, 253, .06) 52%, rgba(255, 255, 255, .12));
  mix-blend-mode: soft-light;
}

.ba-leader-card__portrait img {
  filter: grayscale(.24) contrast(1.02) brightness(1.16);
}

.ba-leader-card:hover .ba-leader-card__portrait img {
  filter: grayscale(.05) contrast(1.03) brightness(1.19);
}

/* Coordinated resource, Federal, and AI visual system. */
@media (min-width: 68rem) {
  .ba-band__head {
    grid-template-columns: minmax(0, 1.2fr) minmax(22rem, 1fr);
  }

  .ba-band__head .ba-copy,
  .ba-band__head .ba-lead {
    max-width: none;
  }
}

.ba-resource-hero {
  position: relative;
  isolation: isolate;
  padding: clamp(8rem, 14vw, 11rem) 0 clamp(3.8rem, 7vw, 5.8rem);
  overflow: hidden;
  background:
    radial-gradient(circle at 76% 28%, rgba(2, 162, 253, .24), transparent 25rem),
    linear-gradient(118deg, #040822 0%, #16324f 72%, #063f85 100%);
  color: var(--ba-x-white);
}

.ba-resource-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -8rem;
  bottom: -13rem;
  width: 36rem;
  height: 36rem;
  border: 1px solid rgba(205, 229, 241, .24);
  border-radius: 50%;
  box-shadow:
    0 0 0 5rem rgba(205, 229, 241, .035),
    0 0 0 10rem rgba(205, 229, 241, .025);
}

.ba-resource-hero .ba-display {
  max-width: none !important;
}

.ba-resource-hero .ba-display span {
  display: inline-block;
  color: var(--ba-x-blue);
  white-space: nowrap;
}

@media (min-width: 68rem) {
  .ba-resource-hero .ba-display {
    white-space: normal;
  }
}

.ba-resource-hero p {
  max-width: 60rem;
  margin: 1.2rem 0 0;
  color: var(--ba-x-sky);
  font-size: clamp(1rem, 1.8vw, 1.25rem);
}

.ba-resources {
  padding: clamp(2.8rem, 5vw, 4.5rem) 0 clamp(4rem, 7vw, 6rem);
  background: var(--ba-x-cloud);
}

.ba-resources__control {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--ba-x-line);
}

.ba-resource-search {
  position: relative;
  width: min(48rem, 100%);
}

.ba-resource-search::before {
  content: "";
  position: absolute;
  top: 50%;
  left: .1rem;
  width: .85rem;
  height: .85rem;
  border: 2px solid var(--ba-x-navy);
  border-radius: 50%;
  transform: translateY(-70%);
}

.ba-resource-search::after {
  content: "";
  position: absolute;
  top: 55%;
  left: .82rem;
  width: .5rem;
  height: 2px;
  background: var(--ba-x-navy);
  transform: rotate(45deg);
}

.ba-resource-search input {
  width: 100%;
  padding: .85rem .2rem .85rem 1.8rem;
  border: 0;
  border-bottom: 2px solid var(--ba-x-navy);
  border-radius: 0;
  outline: 0;
  background: transparent;
  color: var(--ba-x-ink);
  font: inherit;
  font-size: 1rem;
}

.ba-resource-search input:focus {
  border-color: var(--ba-x-blue);
}

.ba-resource-types {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  padding: 1.25rem 0 .45rem;
}

.ba-resources .ba-resource-types button {
  min-height: 2.45rem;
  padding: .48rem .85rem;
  border: 1px solid rgba(22, 50, 79, .18);
  background: rgba(255, 255, 255, .74);
  color: var(--ba-x-navy);
  font: inherit;
  font-size: .9rem;
  font-weight: 700;
  cursor: pointer;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
}

.ba-resources .ba-resource-types button:hover,
.ba-resources .ba-resource-types button:focus-visible,
.ba-resources .ba-resource-types button[aria-pressed="true"] {
  border-color: var(--ba-x-navy);
  outline: 0;
  background: var(--ba-x-navy);
  color: var(--ba-x-white);
  transform: translateY(-1px);
}

.ba-resource-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .7rem 1.2rem;
  padding: 1rem 0 1.25rem;
}

.ba-resource-filters label {
  color: var(--ba-x-soft);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.ba-resource-filters select {
  display: block;
  width: 100%;
  margin-top: .35rem;
  padding: .55rem 1.5rem .55rem 0;
  border: 0;
  border-bottom: 1px solid var(--ba-x-line);
  border-radius: 0;
  background: transparent;
  color: var(--ba-x-navy);
  font: inherit;
  font-size: .9rem;
  text-transform: none;
}

.ba-resources button[data-resource-reset],
.ba-resource-empty button {
  padding: .25rem 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  background: transparent;
  color: var(--ba-x-navy);
  font: inherit;
  font-size: .9rem;
  font-weight: 700;
  cursor: pointer;
}

.ba-resource-summary {
  display: flex;
  align-items: baseline;
  gap: .6rem;
  margin: .75rem 0 1.15rem;
}

.ba-resource-summary strong {
  color: var(--ba-x-navy);
  font-size: 20px;
  font-weight: 400;

  letter-spacing: -.01em;
}

.ba-resource-summary span {
  color: var(--ba-x-soft);
  font-size: .9rem;
}

.ba-resource-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.2rem 1.25rem;
  border: 0;
  background: transparent;
}

.ba-resource-grid article {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  padding: 0 0 1.15rem;
  border-bottom: 1px solid var(--ba-x-line);
  background: transparent;
}
.ba-resource-grid #press-releases {
  scroll-margin-top: calc(var(--ba-x-header) + 1rem);
}

.ba-resources .ba-resource-card--text {
  min-height: 18rem;
  padding: 1.35rem;
  border-top: 2px solid var(--ba-x-blue);
  background: linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(220, 234, 243, .42));
}

.ba-resources .ba-resource-card--text:hover {
  background: linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(220, 234, 243, .42));
}

.ba-resource-grid article[hidden] {
  display: none;
}

.ba-resource-grid img {
  display: block;
  width: 100%;
  height: 11.5rem;
  max-height: none;
  margin: 0 0 1rem;
  object-fit: cover;
  object-position: center;
  background: #dceaf3;
  filter: saturate(.82) contrast(1.02);
  transition: filter .22s ease, transform .22s ease;
}

.ba-resource-grid article[data-type="White Paper"] img,
.ba-resource-grid article[data-type="Solution Brief"] img {
  object-fit: contain;
  object-position: center top;
  padding: .8rem;
  background: linear-gradient(145deg, #d8eaf5, #f7fbfd);
}

.ba-resource-grid article.ba-resource-card--feature-image img {
  padding: 0;
  object-fit: cover;
  object-position: center;
  background: #dceaf3;
}

.ba-resource-grid article:hover img {
  filter: saturate(1) contrast(1.03);
  transform: translateY(-2px);
}

.ba-resource-grid article > span {
  color: var(--ba-x-blue);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.ba-resource-grid h2 {
  margin: .7rem 0 .55rem;
  color: var(--ba-x-navy);
  font-size: clamp(1.08rem, 1.8vw, 1.25rem);
  font-weight: 500;
  line-height: 1.2;

  letter-spacing: -.01em;
}

.ba-resource-grid p {
  margin: 0;
  color: var(--ba-x-soft);
  font-size: .9rem;
  line-height: 1.48;
}

.ba-resource-grid a {
  align-self: flex-start;
  margin-top: auto;
  padding-top: .9rem;
  color: var(--ba-x-navy);
  font-size: .9rem;
  font-weight: 700;
  text-decoration-thickness: 1px;
  text-underline-offset: .25rem;
}

.ba-resource-grid a:hover,
.ba-resource-grid a:focus-visible {
  color: var(--ba-x-blue);
}

.ba-resource-grid .ba-resource-download {
  align-self: flex-start;
  margin-top: auto;
  padding: .9rem 0 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  background: transparent;
  color: var(--ba-x-navy);
  font: inherit;
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.4;
  cursor: pointer;
}

.ba-resource-grid .ba-resource-download:hover,
.ba-resource-grid .ba-resource-download:focus-visible {
  color: var(--ba-x-blue);
  outline: 0;
}

.ba-resource-gate {
  width: min(46rem, calc(100% - 2rem));
  max-height: min(88vh, 54rem);
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--ba-x-navy);
}

.ba-resource-gate::backdrop {
  background: rgba(4, 8, 34, .78);
  backdrop-filter: blur(5px);
}

.ba-resource-gate__panel {
  position: relative;
  overflow: auto;
  max-height: min(88vh, 54rem);
  padding: clamp(1.5rem, 4vw, 3rem);
  border-top: 4px solid var(--ba-x-blue);
  background: var(--ba-x-white);
  box-shadow: 0 1.5rem 4rem rgba(4, 8, 34, .32);
}

.ba-resource-gate__close {
  position: absolute;
  top: .75rem;
  right: .9rem;
  display: grid;
  width: 2.4rem;
  height: 2.4rem;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(22, 50, 79, .2);
  border-radius: 50%;
  background: transparent;
  color: var(--ba-x-navy);
  font: inherit;
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
}

.ba-resource-gate__close:hover,
.ba-resource-gate__close:focus-visible {
  border-color: var(--ba-x-blue);
  color: var(--ba-x-blue);
  outline: 0;
}

.ba-resource-gate h2 {
  max-width: 36rem;
  margin: 1rem 3rem .75rem 0;
  font-size: clamp(1.6rem, 4vw, 2.4rem);
  font-weight: 550;
  line-height: 1.08;
}

.ba-resource-gate__panel > p {
  max-width: 39rem;
  margin: 0;
  color: var(--ba-x-soft);
  line-height: 1.55;
}

.ba-resource-gate__form {
  min-height: 16rem;
  margin-top: 1.5rem;
  padding-block: 1.5rem;
  border-top: 1px solid var(--ba-x-line);
  color: var(--ba-x-ink);
}

.ba-resource-gate__form .hs-form,
.ba-resource-gate__form .hs-form fieldset,
.ba-resource-gate__form .hs-form label,
.ba-resource-gate__form .hs-form legend,
.ba-resource-gate__form .hs-form p,
.ba-resource-gate__form .hs-form span,
.ba-resource-gate__form .hs-form .hs-field-desc,
.ba-resource-gate__form .hs-form .hs-richtext,
.ba-resource-gate__form .hs-form .legal-consent-container,
.ba-resource-gate__form .hs-form .hs-form-booleancheckbox-display {
  color: var(--ba-x-ink) !important;
}

.ba-resource-gate__form .hs-form .hs-form-required,
.ba-resource-gate__form .hs-form .hs-error-msg,
.ba-resource-gate__form .hs-form .hs-error-msgs label {
  color: #a12622 !important;
}

.ba-resource-gate__form .hs-form a {
  color: #0067b9 !important;
  text-decoration: underline;
  text-underline-offset: .15rem;
}

.ba-resource-gate__form .hs-form input[type="text"],
.ba-resource-gate__form .hs-form input[type="email"],
.ba-resource-gate__form .hs-form input[type="tel"],
.ba-resource-gate__form .hs-form input[type="number"],
.ba-resource-gate__form .hs-form input[type="url"],
.ba-resource-gate__form .hs-form select,
.ba-resource-gate__form .hs-form textarea {
  width: 100% !important;
  min-height: 2.75rem;
  padding: .65rem .75rem !important;
  border: 1px solid #9aabba !important;
  border-radius: 0 !important;
  background: var(--ba-x-white) !important;
  color: var(--ba-x-ink) !important;
  caret-color: var(--ba-x-ink);
}

.ba-resource-gate__form .hs-form input::placeholder,
.ba-resource-gate__form .hs-form textarea::placeholder {
  color: #526778 !important;
  opacity: 1;
}

.ba-resource-gate__form .hs-form input:focus,
.ba-resource-gate__form .hs-form select:focus,
.ba-resource-gate__form .hs-form textarea:focus {
  border-color: var(--ba-x-blue) !important;
  outline: 2px solid rgba(2, 162, 253, .22) !important;
  outline-offset: 1px;
}

.ba-resource-gate__form .hs-form input[type="checkbox"],
.ba-resource-gate__form .hs-form input[type="radio"] {
  accent-color: #0067b9;
}

.ba-resource-gate__form .hs-form fieldset + fieldset,
.ba-resource-gate__form .hs-form > .hs-form-field + .hs-form-field {
  margin-top: 1.25rem !important;
}

.ba-resource-gate__form .hs-form .hs_submit {
  padding-top: 40px !important;
}

.ba-resource-empty {
  padding: 3.5rem 0;
  color: var(--ba-x-navy);
  text-align: center;
}

.ba-resource-empty p {
  margin: .45rem 0 .75rem;
  color: var(--ba-x-soft);
}

.ba-federal-segments a {
  display: grid;
  grid-template-rows: 10.5rem auto 1fr auto;
  gap: .65rem;
  min-height: 0;
  padding: 0 0 1rem;
  overflow: hidden;
  border: 0;
  border-bottom: 1px solid rgba(205, 229, 241, .28);
  background: transparent !important;
  background-image: none !important;
}

.ba-federal-segments a::before {
  display: none;
}

.ba-federal-segments a::after {
  justify-self: start;
  margin: 0;
  padding: 0 .9rem;
}

.ba-federal-segments img {
  display: block;
  width: 100%;
  height: 10.5rem;
  object-fit: cover;
  filter: saturate(.72) contrast(1.05);
  transition: filter .22s ease, transform .22s ease;
}

.ba-federal-segments a:nth-child(1) img {
  object-position: center 42%;
}

.ba-federal-segments a:nth-child(2) img {
  object-position: center 45%;
}

.ba-federal-segments a:nth-child(3) img {
  object-position: center 50%;
}

.ba-federal-segments a:hover img,
.ba-federal-segments a:focus-visible img {
  filter: saturate(.95) contrast(1.05);
  transform: scale(1.015);
}

.ba-federal-segments span,
.ba-federal-segments strong {
  padding-inline: .9rem;
}

.ba-federal-capabilities {
  gap: 0 2rem;
}

.ba-federal-capabilities span {
  display: grid;
  grid-template-columns: 2.55rem minmax(0, 1fr);
  align-items: center;
  gap: .85rem;
  min-width: 0;
  padding-block: .85rem;
}

.ba-federal-capabilities span::before {
  display: none;
}

.ba-federal-capabilities svg {
  width: 2.25rem;
  height: 2.25rem;
  padding: .48rem;
  border: 1px solid rgba(22, 50, 79, .16);
  background: rgba(255, 255, 255, .7);
  color: var(--ba-x-blue);
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.6;
}

.ba-federal-capabilities b {
  color: var(--ba-x-navy);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.35;
}

.ba-federal-roadmap {
  margin: 0;
  padding: 0;
  overflow: visible;
  border: 0;
  background: transparent;
}

.ba-roadmap-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 1rem 0 0;
  border-top: 1px solid var(--ba-x-line);
  list-style: none;
  background: transparent;
}

.ba-roadmap-steps li {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .95rem;
  min-height: 0;
  padding: 1.1rem clamp(1rem, 2.5vw, 2rem) 1rem 0;
  background: transparent;
}

.ba-roadmap-steps li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 1.25rem;
  right: 1rem;
  width: clamp(1.5rem, 3vw, 3rem);
  height: 1px;
  background: linear-gradient(90deg, var(--ba-x-blue), transparent);
}

.ba-roadmap-steps span {
  color: var(--ba-x-blue);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
}

.ba-roadmap-steps strong {
  color: var(--ba-x-navy);
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.ba-roadmap-steps p {
  max-width: 30rem;
  margin: .45rem 0 0;
  color: var(--ba-x-soft);
  font-size: .9rem;
  line-height: 1.45;
}

.ba-federal-certifications {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .65rem 1.2rem;
  padding: 1rem 0;
  border-top: 1px solid rgba(205, 229, 241, .22);
  border-bottom: 1px solid rgba(205, 229, 241, .22);
  background: transparent;
}

.ba-federal-certifications span {
  min-height: 4.4rem;
  justify-content: center;
  padding: .35rem;
  border: 0;
  background: transparent;
}

.ba-federal-certifications img {
  display: block;
  max-width: 100%;
  max-height: 3.45rem;
  object-fit: contain;
  filter: grayscale(1) brightness(2);
  opacity: .86;
}

.ba-federal-resources {
  gap: 1.4rem;
  border: 0;
  background: transparent;
}

.ba-federal-resources article {
  display: grid;
  grid-template-columns: 5.35rem minmax(0, 1fr);
  align-content: start;
  align-items: start;
  gap: 0 1rem;
  min-height: 0;
  padding: 1rem 0 0;
  border-top: 2px solid var(--ba-x-blue);
  background: transparent;
}

.ba-federal-resources article::before {
  display: none;
}

.ba-federal-resource__cover {
  width: 5.35rem;
  height: 7.25rem;
  object-fit: cover;
  object-position: top;
  box-shadow: 0 .5rem 1.1rem rgba(4, 8, 34, .15);
}

.ba-federal-resource__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
}

.ba-federal-resource__body > .ba-micro {
  margin-bottom: .55rem;
}

.ba-federal-resources h3 {
  margin: 0 0 .45rem;
  font-size: 1rem;
}

.ba-federal-resources p {
  font-size: .9rem;
  line-height: 1.45;
}

.ba-federal-resources .ba-card__link {
  align-self: flex-start;
  margin-top: .75rem;
  padding-top: 0;
}

/* Only media-bearing singleton events split; text-only stories retain full width. */
@media (min-width: 1025px) {
  .ba-events__list[data-ba-balanced-singleton] .ba-story:has(> .ba-story__media) {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    align-items: start;
  }
  .ba-events__list[data-ba-balanced-singleton] .ba-story > .ba-story__body {
    min-width: 0;
  }
}

.ba-federal-faq__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 2.4rem;
  border-top: 0;
}

.ba-federal-faq details {
  padding: 0;
  border-top: 1px solid var(--ba-x-line);
  border-bottom: 0;
}

.ba-federal-faq summary {
  padding: .82rem 0;
  font-size: 1rem;
  line-height: 1.32;
}

.ba-federal-faq details p {
  max-width: none;
  padding: 0 1.75rem .9rem 0;
  font-size: .9rem;
  line-height: 1.5;
}

.ba-ai-lifecycle {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  border: 0;
  background: rgba(205, 229, 241, .24);
  counter-reset: ai-life;
}

.ba-ai-lifecycle .ba-outcome {
  position: relative;
  min-width: 0;
  min-height: 14.5rem;
  padding: 1.25rem 1.15rem;
  border: 0;
  background: var(--ba-x-ink);
  color: var(--ba-x-white);
  transition: background-color .2s ease, transform .2s ease;
}

.ba-ai-lifecycle .ba-outcome::before,
.ba-ai-lifecycle .ba-outcome:nth-child(2n)::before {
  content: "0" counter(ai-life);
  position: absolute;
  top: 1.15rem;
  right: 1.15rem;
  left: auto;
  display: block;
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  color: rgba(205, 229, 241, .64);
  font-size: .75rem;
  font-weight: 700;
  line-height: 1;
  transform: none;
  counter-increment: ai-life;
}

.ba-ai-lifecycle .ba-outcome:nth-child(2n)::after {
  display: none;
}

.ba-ai-lifecycle .ba-outcome:hover {
  z-index: 1;
  background: var(--ba-x-navy);
  transform: translateY(-2px);
}

.ba-ai-lifecycle__icon {
  display: grid;
  width: 2.7rem;
  height: 2.7rem;
  margin-bottom: 1.25rem;
  place-items: center;
  border: 1px solid rgba(2, 162, 253, .58);
  color: var(--ba-x-blue);
}

.ba-ai-lifecycle__icon svg {
  width: 1.45rem;
  height: 1.45rem;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.55;
}

.ba-ai-lifecycle .ba-outcome h3 {
  margin: 0 0 .55rem;
  color: var(--ba-x-white) !important;
}

.ba-ai-lifecycle .ba-outcome p {
  margin: 0;
  color: var(--ba-x-sky);
  font-size: .9rem;
  line-height: 1.48;
}

@media (max-width: 60rem) {
  .ba-resource-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ba-resource-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ba-roadmap-steps {
    grid-template-columns: 1fr;
  }

  .ba-roadmap-steps li {
    padding-right: 0;
    border-bottom: 1px solid var(--ba-x-line);
  }

  .ba-roadmap-steps li:not(:last-child)::after {
    display: none;
  }

  .ba-ai-lifecycle {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 47.99rem) {
  .ba-resource-hero {
    padding-top: 7rem;
  }

  .ba-resources__control {
    align-items: flex-start;
    flex-direction: column;
  }

  .ba-resource-filters,
  .ba-resource-grid {
    grid-template-columns: 1fr;
  }

  .ba-resource-grid img {
    height: 13rem;
  }

  .ba-resource-summary {
    align-items: flex-start;
    flex-direction: column;
    gap: .15rem;
  }

  .ba-federal-segments {
    grid-template-columns: 1fr;
  }

  .ba-federal-segments a {
    grid-template-rows: 12rem auto 1fr auto;
  }

  .ba-federal-segments img {
    height: 12rem;
  }

  .ba-federal-capabilities {
    grid-template-columns: 1fr;
  }

  .ba-federal-certifications {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ba-federal-resources {
    grid-template-columns: 1fr;
  }

  .ba-federal-faq__list {
    grid-template-columns: 1fr;
  }

  .ba-ai-lifecycle {
    grid-template-columns: 1fr;
  }

  .ba-ai-lifecycle .ba-outcome {
    min-height: 0;
  }
}

/* Refinement pass: evidence-led Federal and Cisco pages. */
.ba-federal-mission { padding-block: clamp(2.6rem, 4.5vw, 3.8rem); }
.ba-federal-mission .ba-band__head {
  align-items: start;
  margin-bottom: 1.4rem;
}
.ba-federal-mission .ba-copy { max-width: 60ch; }

.ba-federal-certifications {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .75rem;
  padding: .75rem 0;
  background: transparent;
}
.ba-federal-certifications span {
  display: grid;
  grid-template-columns: 4.7rem minmax(0, 1fr);
  align-items: center;
  gap: .75rem;
  min-height: 7.8rem;
  padding: .8rem;
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(205,229,241,.16);
}
.ba-federal-certifications span > span {
  display: grid;
  grid-template-columns: 1fr;
  min-height: 0;
  padding: 0;
  background: transparent;
  border: 0;
}
.ba-federal-certifications img {
  display: block;
  width: 4.7rem;
  height: 4.7rem;
  max-width: 4.7rem;
  max-height: 4.7rem;
  padding: .38rem;
  object-fit: contain;
  background: var(--ba-x-white);
  border-radius: .25rem;
  filter: none;
  opacity: 1;
}
.ba-federal-certifications strong {
  color: var(--ba-x-white);
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.25;
}
.ba-federal-certifications small {
  margin-top: .22rem;
  color: var(--ba-x-sky);
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.35;
}
.ba-federal-trust {
  display: flex;
  min-height: 7.5rem;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  margin-top: 1.35rem;
  padding: 1.5rem;
  background: rgba(48,65,97,.82);
  border: 1px solid rgba(205,229,241,.19);
  color: var(--ba-x-white);
  text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease;
}
.ba-federal-trust > div { display: grid; gap: .22rem; }
.ba-federal-trust .ba-micro {
  color: var(--ba-x-blue);
}
.ba-federal-trust strong,
.ba-federal-trust p { display: none; }
.ba-federal-trust > span {
  flex: 0 0 auto;
  color: var(--ba-x-blue);
  font-size: 0;
  font-weight: 700;
}
.ba-federal-trust > span b { font-size: 1rem; font-weight: 700; }
.ba-federal-trust:hover,
.ba-federal-trust:focus-visible {
  background: var(--ba-x-navy);
  border-color: rgba(2,162,253,.62);
}

.ba-federal-faq { padding-block: clamp(2.25rem, 4vw, 3.25rem) !important; }
.ba-federal-faq .ba-band__head { display: block; margin-bottom: 1.2rem; }
.ba-federal-faq__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2.25rem;
  counter-reset: federal-faq;
}
.ba-federal-faq details {
  position: relative;
  counter-increment: federal-faq;
  border-top: 1px solid var(--ba-x-line);
  transition: background-color .22s ease, transform .22s ease;
}
.ba-federal-faq details[open] {
  background: linear-gradient(90deg, rgba(0,169,224,.08), transparent 72%);
}
.ba-federal-faq summary {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr) 1.75rem;
  align-items: center;
  min-height: 3.8rem;
  padding: .65rem 0;
  font-size: 1rem;
}
.ba-federal-faq summary::before {
  content: counter(federal-faq, decimal-leading-zero);
  color: var(--ba-x-blue);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
}
.ba-federal-faq summary::after {
  position: static;
  grid-column: 3;
  justify-self: end;
  display: grid;
  width: 1.55rem;
  height: 1.55rem;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: 1rem;
  line-height: 1;
  transition: transform .2s ease, color .2s ease, background-color .2s ease;
}
.ba-federal-faq details:hover summary::after,
.ba-federal-faq details:focus-within summary::after {
  background: var(--ba-x-blue);
  color: var(--ba-x-white);
  transform: rotate(90deg);
}
.ba-federal-faq details[open] summary::after { transform: rotate(180deg); }
.ba-federal-faq details p {
  max-width: 70ch;
  margin: 0 2.5rem 1rem;
  padding-right: 1.75rem;
  font-size: .9rem;
}

.ba-cisco .ba-title--cisco-lifecycle { white-space: nowrap; }
.ba-cisco .ba-cisco-keep { white-space: nowrap; }
.ba-cisco .ba-strategic-profile { gap: clamp(3.25rem, 8vw, 8.5rem); }
.ba-cisco .ba-strategic-profile__logo {
  position: relative;
  overflow: hidden;
  min-height: 23rem;
  background: #040822;
}
.ba-cisco .ba-strategic-profile__logo::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/assets/images/editorial/partners-hero.jpg") center/cover;
  filter: grayscale(1) contrast(1.15) brightness(.85);
}
.ba-cisco .ba-strategic-profile__logo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(4,8,34,.9) 0%, rgba(22,50,79,.78) 55%, rgba(0,82,181,.5) 100%);
  border-bottom: 3px solid var(--ba-x-blue);
}
.ba-cisco .ba-strategic-profile__logo img { position: relative; z-index: 1; filter: brightness(0) invert(1); }
.ba-cisco #cisco-recognition .ba-partner-detail-grid article {
  position: relative;
  overflow: hidden;
  min-height: 10.5rem;
  padding: 1.35rem;
  background: #040822;
  border-top: 2px solid var(--ba-x-blue);
}
.ba-cisco #cisco-recognition .ba-partner-detail-grid article::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(135deg, rgba(4,8,34,.92) 0%, rgba(22,50,79,.84) 55%, rgba(0,60,140,.72) 100%);
  pointer-events: none;
}
.ba-cisco #cisco-recognition .ba-partner-detail-grid article::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/assets/images/editorial/story-government-collaboration.jpg") center 62%/cover;
  filter: grayscale(1) contrast(1.15) brightness(.85);
  transition: transform .35s ease;
}
.ba-cisco #cisco-recognition .ba-partner-detail-grid article:is(:hover, :focus-within)::after { transform: scale(1.04); }
.ba-cisco #cisco-recognition .ba-partner-detail-grid article > * { position: relative; z-index: 2; }
.ba-cisco #cisco-recognition :is(h3, p, a) { color: #ffffff; }
.ba-cisco #cisco-recognition .ba-micro { color: #8fd3ff; }
.ba-cisco #cisco-recognition a:is(:hover, :focus-visible) { color: #ffffff; border-bottom-width: 2px; }
.ba-cisco #cisco-recognition a:focus-visible { outline: 2px solid #ffffff; outline-offset: 4px; }
.ba-cisco #cisco-recognition .ba-partner-detail-grid article:nth-child(3n + 2)::after {
  background-image: url("/assets/images/editorial/story-healthcare-automation.jpg");
}
.ba-cisco #cisco-recognition .ba-partner-detail-grid article:nth-child(3n)::after {
  background-image: url("/assets/images/editorial/partners-hero.jpg");
}
.ba-cisco .ba-partner-capabilities { gap: .8rem; background: transparent; border: 0; }
.ba-cisco .ba-partner-capabilities article {
  position: relative;
  min-height: 17rem;
  padding: 1.45rem;
  overflow: hidden;
  background-color: var(--ba-x-ink);
  background-image: linear-gradient(180deg, rgba(4,8,34,.1), rgba(4,8,34,.96) 82%), url("/assets/images/editorial/partners-hero.jpg");
  background-position: center;
  background-size: cover;
}
.ba-cisco .ba-partner-capabilities article:nth-child(2),
.ba-cisco .ba-partner-capabilities article:nth-child(5) { background-image: linear-gradient(180deg, rgba(4,8,34,.1), rgba(4,8,34,.96) 82%), url("/assets/images/editorial/story-government-collaboration.jpg"); }
.ba-cisco .ba-partner-capabilities article:nth-child(3),
.ba-cisco .ba-partner-capabilities article:nth-child(6) { background-image: linear-gradient(180deg, rgba(4,8,34,.1), rgba(4,8,34,.96) 82%), url("/assets/images/editorial/story-healthcare-automation.jpg"); }
.ba-cisco .ba-partner-capabilities article:nth-child(4) { background-position: 60% center; }
.ba-cisco .ba-partner-capabilities article:hover { transform: translateY(-3px); }

/* Approved Cisco credentials and service delivery additions. */
.ba-cisco .ba-cisco-designations {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .75rem;
}
.ba-cisco .ba-cisco-designations article {
  min-width: 0;
  padding: 1.15rem;
  background: #ffffff;
  border: 1px solid #d9e2ec;
  border-top: 2px solid var(--ba-x-blue);
}
.ba-cisco .ba-cisco-designations span {
  display: block;
  color: #0569b8;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ba-cisco .ba-cisco-designations h3 {
  margin: .6rem 0 0;
  color: var(--ba-x-navy);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
}
.ba-cisco .ba-cisco-credentials {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
  margin-block: 1.5rem 1rem;
}
.ba-cisco .ba-cisco-credentials article {
  min-width: 0;
  padding: 1.4rem;
  background: #ffffff;
  border: 1px solid #d9e2ec;
}
.ba-cisco .ba-cisco-credentials h3 {
  margin: 0 0 1rem;
  color: #0569b8;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.4;
  text-transform: uppercase;
}
.ba-cisco .ba-cisco-credentials ul { margin: 0; padding-left: 1.1rem; color: var(--ba-x-navy); font-size: .9rem; }
.ba-cisco .ba-cisco-credentials li + li { margin-top: .45rem; }
.ba-cisco .ba-cisco-locator { color: #0569b8; }
.ba-cisco .ba-cisco-locator:is(:hover, :focus-visible) { color: var(--ba-x-navy); }
.ba-cisco .ba-cisco-msp__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(2rem, 6vw, 5rem);
}
.ba-cisco .ba-cisco-msp .ba-title { font-size: clamp(2rem, 3.2vw, 2.8rem) !important; line-height: 1.12 !important; }
.ba-cisco .ba-cisco-msp p { color: var(--ba-x-sky); }
.ba-cisco .ba-cisco-msp .ba-text-link { color: #ffffff; }
.ba-cisco .ba-cisco-msp .ba-text-link:is(:hover, :focus-visible) { color: var(--ba-x-blue); }
.ba-cisco .ba-cisco-msp__services { display: grid; gap: .8rem; margin: 0; padding: 0; list-style: none; }
.ba-cisco .ba-cisco-msp__services li { padding: 1.2rem 1.4rem; border: 1px solid rgba(255,255,255,.18); border-left: 3px solid var(--ba-x-blue); }
.ba-cisco .ba-cisco-msp__services strong { display: block; color: #ffffff; font-size: 1.05rem; font-weight: 600; }
.ba-cisco .ba-cisco-msp__services span { display: block; margin-top: .3rem; color: var(--ba-x-sky); font-size: .85rem; }
.ba-cisco .ba-cisco-team__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; }
.ba-cisco .ba-cisco-team__grid article { min-width: 0; padding: 1.4rem; background: #ffffff; border-top: 2px solid var(--ba-x-blue); }
.ba-cisco .ba-cisco-team__grid h3 { margin: 0; color: var(--ba-x-navy); font-size: 1.05rem; line-height: 1.35; }
.ba-cisco .ba-cisco-team__grid p { margin: .85rem 0 0; color: var(--ba-x-soft); font-size: .9rem; }
.ba-cisco .ba-lifecycle > li { align-content: start; }
.ba-cisco .ba-cisco-lifecycle-points { display: grid; gap: .65rem; margin: .85rem 0 0; padding: 0; list-style: none; }
/* Explicit reset prevents generic lifecycle descendant rules and arrows on nested points. */
.ba-cisco .ba-lifecycle .ba-cisco-lifecycle-points > li {
  position: relative;
  display: block;
  min-height: 0;
  gap: 0;
  align-content: normal;
  margin: 0;
  padding: 0 0 0 .9rem;
  border: 0;
  background: none;
  box-shadow: none;
  color: var(--ba-x-navy);
  font-size: .9rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
}
.ba-cisco .ba-lifecycle .ba-cisco-lifecycle-points > li::after { content: none; }
.ba-cisco .ba-cisco-lifecycle-points > li::before { content: ""; position: absolute; left: 0; top: .55em; width: .3rem; height: .3rem; background: var(--ba-x-blue); }
@media (max-width: 47.99rem) {
  .ba-cisco .ba-cisco-designations { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-cisco .ba-cisco-designations article:last-child { grid-column: 1 / -1; }
  .ba-cisco .ba-cisco-credentials,
  .ba-cisco .ba-cisco-msp__grid,
  .ba-cisco .ba-cisco-team__grid { grid-template-columns: minmax(0, 1fr); }
  .ba-cisco .ba-lifecycle { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .ba-cisco #cisco-recognition .ba-partner-detail-grid article::after { transition: none; }
  .ba-cisco #cisco-recognition .ba-partner-detail-grid article:is(:hover, :focus-within)::after { transform: none; }
}

.ba-footer,
.ba-footer h2,
.ba-footer nav a,
.ba-footer__brand p,
.ba-footer__cta,
.ba-footer__bottom {
  font-family: "DM Sans", system-ui, sans-serif !important;
}
.ba-footer__top { gap: clamp(1.5rem, 3.5vw, 3.5rem); }
.ba-footer nav a { font-size: 1rem; line-height: 1.4; }
.ba-footer__brand p { font-size: 1rem; }

@media (max-width: 68rem) {
  .ba-cisco .ba-title--cisco-lifecycle { white-space: normal; }
  .ba-cisco .ba-cisco-keep { white-space: normal; }
  .ba-federal-certifications { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 46rem) {
  .ba-federal-mission .ba-band__head { display: block; }
  .ba-federal-certifications { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ba-federal-certifications span { min-height: 7rem; }
  .ba-federal-certifications span > span { min-height: 0; }
  .ba-federal-faq__list { grid-template-columns: 1fr; }
  .ba-federal-faq summary { grid-template-columns: 2.75rem minmax(0, 1fr) 2rem; }
  .ba-federal-faq details p { margin-left: 2.75rem; padding-right: 0; }
  .ba-federal-trust { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 32rem) {
  .ba-federal-certifications { grid-template-columns: 1fr; }
}

@media (min-width: 48rem) {
  .ba-services-rail--four,
  .ba-partner-capabilities--four {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* NASA SEWP VI */
.ba-sewp .ba-hero .ba-lead {
  max-width: 64rem;
  line-height: 1.65;
}
.ba-sewp-split,
.ba-sewp-contract-layout,
.ba-sewp-procurement {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(24rem, 1.22fr);
  gap: clamp(2rem, 7vw, 7rem);
  align-items: start;
}
.ba-sewp-category-list {
  padding: clamp(1.4rem, 3vw, 2rem);
  background: var(--ba-x-cloud);
  border-top: 2px solid var(--ba-x-blue);
}
.ba-sewp-category-list p {
  margin: 0;
  color: var(--ba-x-navy);
  font-size: 20px;
}
.ba-sewp-category-list p + p { margin-top: .7rem; }
.ba-sewp-facts {
  padding: clamp(1.4rem, 3vw, 2rem);
  background: var(--ba-x-white);
  border: 1px solid var(--ba-x-line);
}
.ba-sewp-facts ul,
.ba-sewp-action-grid ul,
.ba-sewp-procurement ol {
  margin: 0;
  padding-left: 1.25rem;
}
.ba-sewp-facts li,
.ba-sewp-action-grid li,
.ba-sewp-procurement li {
  margin: 0 0 .7rem;
  color: var(--ba-x-soft);
  line-height: 1.6;
}
.ba-sewp-facts > p {
  margin: 1.4rem 0 0;
  overflow-wrap: anywhere;
  color: var(--ba-x-soft);
  line-height: 1.6;
}
.ba-sewp-facts a,
.ba-sewp-contacts a,
.ba-sewp-procurement a { color: #006da8; text-decoration: underline; text-underline-offset: .16em; }
.ba-sewp-contacts { display: grid; gap: 1px; background: var(--ba-x-line); border: 1px solid var(--ba-x-line); }
.ba-sewp-contacts > h3 {
  margin: 0;
  padding: 1.2rem 1.35rem;
  background: var(--ba-x-navy);
  color: var(--ba-x-white);
  font-size: 1.05rem;
}
.ba-sewp-contacts article { padding: 1.25rem 1.35rem; background: var(--ba-x-white); }
.ba-sewp-contacts h4 { margin: .45rem 0 .8rem; color: var(--ba-x-navy); font-size: 1.35rem; font-weight: 500; }
.ba-sewp-contacts p { margin: .25rem 0; color: var(--ba-x-soft); }
.ba-sewp-action-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(255,255,255,.16); }
.ba-sewp-action-grid article { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(1.5rem, 3vw, 2.4rem); background: rgba(255,255,255,.045); }
.ba-sewp-action-grid .ba-micro { color: var(--ba-x-blue); }
.ba-sewp-action-grid article:first-child h2 { font-size: clamp(1.35rem, 2.2vw, 2rem); font-weight: 300; }
.ba-sewp-action-grid h2 { margin: .7rem 0 1rem; color: var(--ba-x-white); font-size: clamp(1.45rem, 2.4vw, 2.15rem); font-weight: 400; line-height: 1.15; }
.ba-sewp-action-grid p,
.ba-sewp-action-grid li { color: var(--ba-x-sky); }
.ba-sewp-action-grid a:not(.ba-button) { color: var(--ba-x-white); }
.ba-sewp-action-grid .ba-button { margin-top: auto; }
.ba-sewp-procurement > div:last-child p { margin: 0 0 1.15rem; color: var(--ba-x-soft); line-height: 1.7; }
.ba-federal-sewp { padding-block: clamp(1.7rem, 3vw, 2.4rem) !important; }
.ba-federal-sewp .ba-shell { display: flex; justify-content: space-between; gap: 2rem; align-items: center; }
.ba-federal-sewp .ba-title { margin: .4rem 0 0; color: var(--ba-x-white); font-size: clamp(1.97rem, 3.94vw, 3.349rem); }
@media (max-width: 760px) {
  .ba-sewp-split,
  .ba-sewp-contract-layout,
  .ba-sewp-procurement,
  .ba-sewp-action-grid { grid-template-columns: 1fr; }
  .ba-federal-sewp .ba-shell { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 44rem) {
  .ba-case-highlights > article,
  .ba-grid-4 > .ba-outcome,
  .ba-grid-3 > .ba-outcome,
  .ba-services-rail > .ba-service,
  .ba-industry-outcomes > .ba-industry-outcome,
  .ba-partner-capabilities > article,
  .ba-about-timeline > article,
  .ba-about-directory > a,
  .ba-industry-grid > .ba-industry-link,
  .ba-offer-grid > .ba-offer,
  .ba-leader-card > div,
  .ba-leader-card > div:last-child,
  .ba-policy-grid > article,
  .ba-partner-detail-grid > article,
  .ba-resources .ba-resource-card--text,
  .ba-career-values > article,
  .ba-commerce-support > article,
  .ba-about-strengths > article,
  .ba-career-quotes > blockquote,
  .ba-datacenter-oversight > article,
  .ba-datacenter-links > a,
  .ba-career-benefits > article,
  .ba-datacenter-pillars > article {
    min-height: 0;
  }

  .ba-offer ul,
  .ba-resource-grid a {
    margin-top: 0;
  }
}

/* Approved responsive sweep: keep these scoped corrections last. */
.ba-article-body {
  min-width: 0;
  overflow-wrap: break-word;
}
.ba-article-body a { overflow-wrap: anywhere; }
.ba-article-body img,
.ba-article-body iframe,
.ba-article-body video { max-width: 100%; }
.ba-article-body pre,
.ba-article-body table {
  max-width: 100%;
  overflow-x: auto;
}
.ba-article-body table { display: block; }
.ba-cisco .ba-title--cisco-lifecycle { white-space: normal; }

@media (max-width: 44rem) {
  .ba-resource-hero .ba-display span { white-space: normal; }
}

@media (max-width: 22rem) {
  .ba-blueprint-outcomes {
    padding-left: .75rem;
    padding-right: .75rem;
  }
  .ba-blueprint-outcomes > div { column-gap: .75rem; }
  .ba-blueprint-outcomes strong { font-size: .8125rem; }
}

/* Occupied-cell dividers. Keep all existing tracks, gaps and card metrics.
   The frame alpha includes the former container layer beneath the border.
   Spaced federal/resource/Cisco layouts intentionally do not participate. */
:is(.ba-grid-2, .ba-grid-3, .ba-grid-4, .ba-offer-grid,
    .ba-contact-layout, .ba-industry-outcomes, .ba-about-strengths,
    .ba-career-benefits, .ba-career-quotes, .ba-sewp-contacts, .ba-lifecycle) {
  --ba-grid-line: var(--ba-x-line);
  background: transparent;
}
:is(.ba-services-rail, .ba-case-highlights, .ba-brand-naming > div),
.ba-band--ink .ba-lifecycle {
  --ba-grid-line: rgba(205, 229, 241, .18);
  background: transparent;
  border-color: rgba(205, 229, 241, .3276);
}
:is(.ba-partner-capabilities:not(.ba-cisco *), .ba-public-sector-grid) {
  --ba-grid-line: rgba(205, 229, 241, .16);
  background: transparent;
  border-color: rgba(205, 229, 241, .2944);
}
.ba-tem__work-grid {
  --ba-grid-line: rgba(205, 229, 241, .19);
  background: transparent;
  border-color: rgba(205, 229, 241, .3439);
}
:is(.ba-nav-panel__grid, .ba-nav-industries) {
  --ba-grid-line: rgba(205, 229, 241, .12);
  background: transparent;
}
.ba-ai-lifecycle {
  --ba-grid-line: rgba(205, 229, 241, .24);
  background: transparent;
}
.ba-sewp-action-grid {
  --ba-grid-line: rgba(255, 255, 255, .16);
  background: transparent;
}
/* The contact shell has intentional filled side padding, not empty tracks. */
.ba-shell.ba-contact-layout {
  box-shadow: inset var(--ba-x-gutter) 0 var(--ba-x-line),
    inset calc(-1 * var(--ba-x-gutter)) 0 var(--ba-x-line), var(--ba-x-shadow);
}
:where(.ba-grid-2, .ba-grid-3, .ba-grid-4, .ba-services-rail,
    .ba-industry-outcomes, .ba-partner-capabilities:not(.ba-cisco *),
    .ba-nav-panel__grid, .ba-nav-industries, .ba-tem__work-grid,
    .ba-offer-grid, .ba-lifecycle, .ba-contact-layout, .ba-public-sector-grid,
    .ba-about-strengths, .ba-career-benefits, .ba-career-quotes,
    .ba-brand-naming > div, .ba-case-highlights, .ba-ai-lifecycle,
    .ba-sewp-contacts, .ba-sewp-action-grid) > * {
  box-shadow: var(--ba-grid-seam, 0 0 transparent);
}
/* Move the former container layer beneath translucent surfaces, including
   interaction gradients, rather than making the entire card darker. */
.ba-services-rail .ba-service,
.ba-partner-capabilities:not(.ba-cisco *) article,
.ba-band--ink .ba-lifecycle li,
.ba-sewp-action-grid article {
  background: linear-gradient(rgba(255,255,255,.045), rgba(255,255,255,.045)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
.ba-lifecycle li {
  background: linear-gradient(rgba(255,255,255,.78), rgba(255,255,255,.78)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
.ba-tem__work-grid article {
  background: linear-gradient(rgba(48,65,97,.82), rgba(48,65,97,.82)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
.ba-tem__work-grid article:hover { background: var(--ba-x-navy); }
.ba-public-sector-card {
  background: linear-gradient(rgba(255,255,255,.055), rgba(255,255,255,.055)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
.ba-public-sector-card:is(:hover, :focus-visible) {
  background: linear-gradient(rgba(2,162,253,.14), rgba(2,162,253,.14)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
.ba-case-highlights article {
  background: linear-gradient(145deg, rgba(22,50,79,.98), rgba(5,87,166,.72)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
:is(.ba-grid-2, .ba-grid-3, .ba-grid-4) > .ba-outcome:is(:hover, :focus-within) {
  background: linear-gradient(145deg, var(--ba-x-white), rgba(2,162,253,.1)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
/* AI capability tiles remain dark through both pointer and keyboard states. */
#ai-lifecycle > .ba-outcome:is(:hover, :focus-visible, :focus-within) {
  background: var(--ba-x-navy);
  transform: none;
  box-shadow: inset 0 3px var(--ba-x-blue);
}
#ai-lifecycle > .ba-outcome:focus-visible,
#ai-lifecycle a:focus-visible {
  outline: 2px solid var(--ba-x-blue);
  outline-offset: -3px;
}
#ai-lifecycle a { color: var(--ba-x-sky); text-decoration: underline; }
#ai-lifecycle a:is(:hover, :focus-visible) { color: var(--ba-x-white); }
.ba-services-rail .ba-service:is(:hover, :focus-within) {
  background: linear-gradient(145deg, rgba(2,162,253,.16), rgba(255,255,255,.06)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
.ba-partner-capabilities:not(.ba-cisco *) article:is(:hover, :focus-within) {
  background: linear-gradient(145deg, rgba(2,162,253,.15), rgba(255,255,255,.055)),
    linear-gradient(var(--ba-grid-line), var(--ba-grid-line));
}
.ba-partner-capabilities h3 { color: var(--ba-x-ink); }
.ba-partner-capabilities p { color: var(--ba-x-soft); }
:is(.ba-band--ink, .ba-band--navy, .ba-cisco) .ba-partner-capabilities h3 { color: var(--ba-x-white); }
:is(.ba-band--ink, .ba-band--navy, .ba-cisco) .ba-partner-capabilities p { color: var(--ba-x-sky); }

/* October corrections: card copy shares the standard 16px / 1.55 body rhythm.
   Card headings, labels, controls and intentional media geometry stay distinct. */
body.ba-exec :is(article, .ba-card, .ba-story, .ba-outcome, .ba-service,
  .ba-industry-link, .ba-resource-card, .ba-resource-grid > a) :is(p, li) {
  font-size: 1rem !important;
  line-height: 1.55 !important;
}
.ba-hash-target {
  outline: 2px solid var(--ba-x-blue);
  outline-offset: -2px;
}
.ba-facility-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
.ba-facility-grid > article { min-width: 0; }
.ba-facility-grid img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: left center;
  filter: grayscale(.68) contrast(1.08);
}
.ba-facility-grid > .ba-card > img + .ba-card-title { margin-top: 1.35rem; }
@media (max-width: 48rem) {
  .ba-facility-grid { grid-template-columns: minmax(0, 1fr); }
}

/* Equal logo tracks keep labels on a common baseline without duplicate boxes.
   Flex wrapping centers incomplete rows at every tier's narrower breakpoints. */
:is(#tier-strategic, #tier-focus, #tier-ecosystem) .ba-logo-grid {
  --ba-partner-columns: 4;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#tier-ecosystem .ba-logo-grid { --ba-partner-columns: 5; }
:is(#tier-strategic, #tier-focus, #tier-ecosystem) .ba-logo {
  flex: 0 0 calc((100% - (var(--ba-partner-columns) - 1) * .75rem) / var(--ba-partner-columns));
  min-width: 0;
  height: 9rem;
  grid-template-rows: 3.5rem 2rem;
  align-content: center;
  padding: .75rem;
}
:is(#tier-strategic, #tier-focus, #tier-ecosystem) .ba-logo img {
  width: 100%;
  height: 2.7rem;
}
:is(#tier-strategic, #tier-focus, #tier-ecosystem) .ba-logo span { align-self: start; line-height: 1.35; }
.ba-logo img[src$="/apc-schneider-electric.svg"] { max-width: min(100%, 5.5rem); max-height: 2.2rem; }
.ba-logo img[src$="/proofpoint.svg"] { max-width: min(100%, 6.5rem); max-height: 2.1rem; }
.ba-logo img[src$="/firefly.svg"] { max-width: min(100%, 5.5rem); max-height: 2.2rem; }
.ba-logo img[src$="/vertiv.svg"] { max-width: min(100%, 5rem); max-height: 2.2rem; }
.ba-logo img[src$="/syntasso.svg"] { max-width: min(100%, 5.5rem); max-height: 2.2rem; }
.ba-logo img[src$="/broadcom.svg"] { max-width: min(100%, 7rem); max-height: 2.4rem; }
.ba-logo img[src$="/omtac-defense-solutions.png"] {
  max-width: min(100%, 8rem);
  max-height: 3rem;
  height: 3rem;
  filter: none;
  opacity: 1;
}
.ba-tab-count {
  color: var(--ba-x-navy);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.65rem;
  margin-left: .4rem;
  padding: .2rem .4rem;
  border: 1px solid var(--ba-x-line);
  border-radius: 2rem;
  background: var(--ba-x-cloud);
  font-size: .75rem;
  font-weight: 700;
  line-height: 1;
}
.ba-tier-next { display: flex; justify-content: flex-end; margin-top: 1.75rem; }
.ba-tier-next button { cursor: pointer; }
#partner-tiers [data-ba-tabs] { scroll-margin-top: calc(var(--ba-x-header) + 1rem); }
#partner-tiers [role="tab"]:focus-visible,
.ba-tier-next button:focus-visible { outline: 2px solid var(--ba-x-blue); outline-offset: 4px; }
#recognition .ba-recognition-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 1rem;
}
#recognition .ba-recognition-grid > a {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  min-height: 11.5rem;
  padding: 1.25rem 1.25rem 2.25rem;
  border: 1px solid rgba(205, 229, 241, .16);
  background: rgba(255, 255, 255, .06);
  color: var(--ba-x-white);
  text-decoration: none;
}
#recognition .ba-recognition-grid > a::after {
  content: "↗";
  position: absolute;
  right: .8rem;
  bottom: .6rem;
  color: var(--ba-x-blue);
  font-size: .9rem;
}
#recognition .ba-recognition-grid > a:hover,
#recognition .ba-recognition-grid > a:focus-visible {
  background: rgba(2, 162, 253, .14);
  border-color: var(--ba-x-blue);
}
#recognition .ba-recognition-grid > a:focus-visible {
  outline: 2px solid var(--ba-x-blue);
  outline-offset: 3px;
}
#recognition .ba-recognition-link {
  display: block;
  margin-top: .65rem;
  color: var(--ba-x-sky);
  font-size: .75rem;
}
#recognition h3.ba-card-title {
  font-weight: 700 !important;
  text-wrap: initial;
}
#recognition .ba-recognition-logo {
  display: block;
  flex: 0 0 auto;
  width: 98px;
  height: 32px;
  object-fit: cover;
  object-position: center;
  filter: brightness(0) invert(1);
  margin-bottom: 1rem;
}
/* Compensate for transparent source margins, preserving each logo's aspect ratio. */
#recognition .ba-recognition-logo--palo-alto-networks { margin-left: -11.5px; }
#recognition .ba-recognition-logo[src$="/microsoft-white.svg"] { width: 106px; object-fit: contain; filter: none; }
#recognition .ba-recognition-logo[src$="/hpe.svg"] { width: 75px; object-fit: contain; margin-left: -15px; }
#recognition .ba-recognition-logo[src$="/fortinet.svg"] { margin-left: -10.5px; }
#recognition .ba-recognition-logo--cisco { width: 90px; object-fit: contain; margin-left: -18px; }
#recognition .ba-recognition-logo--citrix { width: 130px; margin-left: -32.5px; }
@media (max-width: 68rem) {
  #recognition .ba-recognition-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 44rem) {
  #recognition .ba-recognition-grid { grid-template-columns: minmax(0, 1fr); }
}
.ba-job__summary { max-width: 75ch; margin: .6rem 0; }
@media (min-width: 68.01rem) {
  .ba-masthead__row { gap: clamp(.8rem, 1.6vw, 1.5rem); }
  .ba-primary { gap: clamp(.65rem, 1.25vw, 1.2rem); }
  .ba-primary,
  .ba-masthead__actions { position: relative; top: 3.5px; }
  .ba-primary > a,
  .ba-nav-disclosure__link,
  .ba-masthead__cta { white-space: nowrap; }
}
@media (max-width: 68rem) {
  #tier-ecosystem .ba-logo-grid { --ba-partner-columns: 4; }
}
@media (max-width: 44rem) {
  :is(#tier-strategic, #tier-focus, #tier-ecosystem) .ba-logo-grid { --ba-partner-columns: 2; }
  #domains .ba-offer > h3 { min-height: 0; }
}

/* AND-45: About Promise keeps the existing Careers card visuals and typography.
   Local tracks override the shared balancer with or without JavaScript. */
#about-promise .ba-about-promise__intro {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  align-items: center;
  gap: 2.5rem;
  margin-bottom: 2rem;
}
#about-promise .ba-about-promise__flywheel {
  display: block;
  width: 180px;
  height: auto;
}
#about-promise .ba-about-promise__intro .ba-band__head {
  margin-bottom: 1rem;
}
#about-promise .ba-about-promise__intro .ba-copy { margin: 0; }
#about-promise .ba-about-values {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}
#about-promise .ba-about-values > * {
  grid-column: span 1 !important;
  min-width: 0;
}
#about-promise .ba-about-promise__values-label { margin: 0 0 1rem; }
#about-promise .ba-text-link { margin-top: 1.5rem; }
@media (max-width: 64rem) {
  #about-promise .ba-about-values {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  #about-promise .ba-about-values > :last-child {
    grid-column: 1 / -1 !important;
  }
}
@media (max-width: 44rem) {
  #about-promise .ba-about-promise__intro {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 1rem;
  }
  #about-promise .ba-about-promise__flywheel { width: 96px; }
  #about-promise .ba-about-values {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Approved finite collections use twelve equal tracks: spans 3/4/6/12
   fill rows of four/three/two/one, including unequal balanced row lengths.
   Only layout is overridden; card surfaces, imagery and sizing stay authored. */
main { --ba-balanced-enabled: 1; }
main [data-ba-balanced] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  grid-auto-columns: auto !important;
}
main [data-ba-balanced] > * {
  grid-column: span var(--ba-balanced-span, 12) !important;
  grid-row: auto !important;
  order: 0 !important;
  min-width: 0;
}
/* AND-46: only the five engagement offers share a desktop row.
   Tablet and phone still use the shared balanced spans (2+2+1 and 1). */
@media (min-width: 64.001rem) {
  main #engagements .ba-offer-grid--five[data-ba-balanced] {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  main #engagements .ba-offer-grid--five[data-ba-balanced] > * {
    grid-column: span 1 !important;
  }
}
.ba-proofbar--ai .ba-proofbar__item { align-content: start; }
main [data-ba-balanced][hidden],
main [data-ba-balanced] > [hidden],
main [data-ba-balanced] > [data-ba-balanced-invisible] {
  display: none !important;
}
/* Authored semantic trails inherit each hero's readable foreground.
   They stay inside the hero shell so masthead/first-child behavior is unchanged. */
.ba-breadcrumbs {
  font-size: .875rem;
  line-height: 1.5;
  margin: 0 0 1rem;
  max-width: 100%;
  text-transform: none;
  letter-spacing: normal;
}
.ba-breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ba-breadcrumbs li { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.ba-breadcrumbs li:not(:last-child)::after { content: "/"; margin-left: .5rem; }
.ba-breadcrumbs a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.ba-breadcrumbs a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.ba-hero .ba-breadcrumbs { color: #fff; }
.ba-job-detail .ba-breadcrumbs { color: var(--ba-x-ink); }
.ba-home-current #solutions .ba-expertise-card a { color: #8fd3ff; }
/* Approved home bands and partner directory geometry. */
@media (min-width: 64rem) {
  .ba-home-current #solutions .ba-expertise-card__body {
    inset: 0 8% 0 0;
    justify-content: flex-start;
    padding-top: 6.5rem;
    background: linear-gradient(90deg, rgba(4,8,34,.32) 0%, rgba(4,8,34,.32) 50%, rgba(4,8,34,0) 100%);
  }
  .ba-home-current #solutions .ba-expertise-card::after {
    background: linear-gradient(90deg, rgba(4,8,34,.97) 0%, rgba(4,8,34,.93) 28%, rgba(22,50,79,.86) 58%, rgba(0,68,166,.62) 82%, rgba(0,82,181,.42) 100%);
  }
  .ba-home-current #solutions .ba-expertise-card__body .ba-card-title { min-height: 2.6em; }
  .ba-home-current #solutions .ba-expertise-card__body p { min-height: 6.2em; }
}
.ba-home-current main .ba-logo-rail.ba-logo-rail--strategic {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.ba-home-current main .ba-logo-rail.ba-logo-rail--strategic > .ba-logo {
  grid-column: auto !important;
}
.ba-logo--paired .ba-logo__pair {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  width: 100%;
  min-width: 0;
}
:is(.ba-logo-rail, #tier-strategic, .ba-logo-grid--telecom) .ba-logo--paired .ba-logo__pair img {
  width: 49%;
  max-width: 49%;
  height: 2.9rem;
  max-height: 2.9rem;
  min-width: 0;
}
@media (min-width: 64rem) {
  :is(#tier-focus, #tier-ecosystem) .ba-logo-grid { --ba-partner-columns: 5; }
}
@media (max-width: 44rem) {
  .ba-home-current main .ba-logo-rail.ba-logo-rail--strategic {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
/* Closing CTAs and the footer are separate components, never band targets. */
body.ba-exec .ba-band:not(.ba-close):not(.ba-footer) {
  padding-block: 56px !important;
}
@media (max-width: 44rem) {
  main [data-ba-balanced] { grid-template-columns: minmax(0, 1fr) !important; }
  main [data-ba-balanced] > * { grid-column: 1 !important; }
  body.ba-exec .ba-band:not(.ba-close):not(.ba-footer) {
    padding-block: 40px !important;
  }
}

/* Upcoming events: a calm, full-width bridge into the shared footer. */
.ba-upcoming-events {
  width: 100%;
  padding-block: 56px;
  overflow: hidden;
  background: #eaf1f5;
  border-top: 1px solid #d7e2ea;
  color: var(--ba-x-ink);
  font-family: "DM Sans", system-ui, sans-serif;
}
.ba-upcoming-events__shell {
  width: 100%;
  max-width: var(--ba-x-shell, 76rem);
  margin-inline: auto;
  padding-inline: var(--ba-x-gutter, clamp(1.25rem, 4vw, 3rem));
}
.ba-upcoming-events__heading {
  position: relative;
  margin: 0 0 1.65rem;
  padding-left: 1rem;
  color: var(--ba-x-navy, #16324f);
  font-size: clamp(1.8rem, 3vw, 2.35rem);
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1.12;
  text-wrap: balance;
}
.ba-upcoming-events__heading::before {
  position: absolute;
  top: .16em;
  bottom: .12em;
  left: 0;
  width: 3px;
  background: var(--ba-x-blue, #02a2fd);
  content: "";
}
.ba-upcoming-events__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  min-width: 0;
}
.ba-upcoming-events__card {
  display: grid;
  grid-template-columns: 3.4rem minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
  align-content: start;
  gap: .95rem;
  min-width: 0;
  padding: 1.15rem;
  background: #f8fafb;
  border: 1px solid #d5e1e9;
  border-top: 2px solid var(--ba-x-navy, #16324f);
  box-shadow: 0 5px 16px rgba(22, 50, 79, .045);
}
.ba-upcoming-events__card[hidden] { display: none !important; }
.ba-upcoming-events__date {
  display: flex;
  align-self: start;
  width: 3.4rem;
  min-height: 3.8rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: .35rem;
  background: var(--ba-x-navy, #16324f);
  color: #f8fafb;
  text-align: center;
}
.ba-upcoming-events__date--empty { visibility: hidden; }
.ba-upcoming-events__month {
  color: #9cdcff;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.2;
  text-transform: uppercase;
}
.ba-upcoming-events__day {
  margin-top: .12rem;
  font-size: 1.45rem;
  font-weight: 500;
  letter-spacing: -.04em;
  line-height: 1.05;
}
.ba-upcoming-events__content { min-width: 0; }
.ba-upcoming-events__title {
  margin: 0;
  color: var(--ba-x-navy, #16324f);
  font-size: 1.07rem;
  font-weight: 700;
  line-height: 1.28;
  overflow-wrap: anywhere;
}
.ba-upcoming-events__details {
  display: grid;
  gap: .22rem;
  margin-top: .65rem;
  color: #435978;
  font-size: .82rem;
  line-height: 1.4;
}
.ba-upcoming-events__detail { margin: 0; overflow-wrap: anywhere; }
.ba-upcoming-events__summary {
  display: block;
  height: 4.5em;
  margin: .72rem 0 0;
  padding-right: .35rem;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-y: contain;
  scrollbar-gutter: stable;
  color: #42516d;
  font-size: .88rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.ba-upcoming-events__summary:focus-visible {
  outline: 3px solid #0784c8;
  outline-offset: 3px;
}
.ba-upcoming-events__action {
  grid-column: 2;
  align-self: end;
  justify-self: start;
  max-width: 100%;
  margin-top: -.05rem;
  padding: .35rem 0;
  border-bottom: 1px solid currentColor;
  color: #075d98;
  font-size: .86rem;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: color .18s ease, transform .18s ease;
}
.ba-upcoming-events__action:hover,
.ba-upcoming-events__action:focus-visible {
  color: #003f70;
  transform: translateX(2px);
}
.ba-upcoming-events__action:focus-visible,
.ba-upcoming-events__toggle:focus-visible {
  outline: 3px solid #0784c8;
  outline-offset: 3px;
}
.ba-upcoming-events__toggle {
  display: inline-flex;
  min-height: 2.85rem;
  align-items: center;
  justify-content: center;
  margin-top: 1.4rem;
  padding: .65rem 1rem;
  border: 1px solid #153d62;
  background: #153d62;
  color: #f8fafb;
  font: inherit;
  font-size: .9rem;
  font-weight: 700;
  cursor: pointer;
  transition: background-color .18s ease, color .18s ease, transform .18s ease;
}
.ba-upcoming-events__toggle:hover {
  background: #eaf1f5;
  color: #153d62;
  transform: translateY(-1px);
}
@media (max-width: 64rem) {
  .ba-upcoming-events__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 44rem) {
  .ba-upcoming-events { padding-block: 40px; }
  .ba-upcoming-events__heading { margin-bottom: 1.25rem; }
  .ba-upcoming-events__grid { grid-template-columns: minmax(0, 1fr); gap: .8rem; }
  .ba-upcoming-events__card { padding: 1rem; }
}
