/* BusinessAtNight Homepage V20 — user-supplied 3-film presentation.
   Scoped to the homepage. No globe, mission planner, or other page CSS changed. */
body.home.ban-home-videos-v20 {
  --ban-home-ink: #14202d;
  --ban-home-muted: #63707c;
  --ban-home-cyan: #00bbd9;
  color: var(--ban-home-ink);
  background: #fff !important;
  font-family: Inter, 'Helvetica Neue', Arial, sans-serif;
}
body.home.ban-home-videos-v20 .site-chrome,
body.home.ban-home-videos-v20 main { background: #fff !important; }
/* Semi-transparent header over the visual opening, without sacrificing menu contrast. */
body.home.ban-home-videos-v20 .site-header[data-ban-glass-header] {
  position: fixed !important;
  top: 0; left: 0; right: 0;
  z-index: 300;
  background: rgba(232, 249, 252, .16) !important;
  border-bottom: 1px solid rgba(129, 195, 215, .32) !important;
  box-shadow: 0 6px 26px rgba(10, 50, 72, .035) !important;
  -webkit-backdrop-filter: blur(16px) saturate(135%) !important;
  backdrop-filter: blur(16px) saturate(135%) !important;
}
body.home.ban-home-videos-v20 .site-header .main-nav > a:not(.header-cta) {
  color: #163747 !important;
  text-shadow: 0 1px 8px rgba(248,255,255,.8);
}
body.home.ban-home-videos-v20 .site-header .wordmark { color: #102c40 !important; }
body.home.ban-home-videos-v20 .site-header .main-nav.is-open {
  background: rgba(245,252,254,.96) !important;
  -webkit-backdrop-filter: blur(22px) !important;
  backdrop-filter: blur(22px) !important;
}
body.home.ban-home-videos-v20 .site-header .nav-toggle span { background: #173d4f !important; }
body.home.ban-home-videos-v20 main#main { margin: 0 !important; padding: 0 !important; }
/* True edge-to-edge 16:9 videos. No cover-crop: all source labels remain visible. */
body.home.ban-home-videos-v20 .ban-home-film,
body.home.ban-home-videos-v20 .ban-home-film__frame {
  width: 100%; max-width: none; margin: 0; padding: 0; overflow: hidden;
}
body.home.ban-home-videos-v20 .ban-home-film__frame {
  position: relative; aspect-ratio: 16 / 9; background: #fff;
}
body.home.ban-home-videos-v20 .ban-home-film__frame video {
  display: block; width: 100%; height: 100%;
  object-fit: contain; object-position: center center;
  background: transparent;
}
/* Header visually overlaps the hero. Film content begins below a clear header-safe zone. */
body.home.ban-home-videos-v20 .ban-home-film--hero {
  padding-top: 0;
  background: linear-gradient(180deg, #d5effb 0%, #c7eaf6 15%, #fff 55%);
}
body.home.ban-home-videos-v20 .ban-home-film--hero .ban-home-film__frame { background: #cce9f5; }
body.home.ban-home-videos-v20 .ban-home-film--hero video { object-fit: contain; }
body.home.ban-home-videos-v20 .ban-home-story {
  width: min(1160px, calc(100% - 80px));
  margin: 0 auto;
  padding-block: clamp(54px, 7.2vw, 112px);
}
body.home.ban-home-videos-v20 .ban-home-story--intro { padding-block: clamp(46px, 6.5vw, 92px) clamp(78px, 8vw, 124px); }
body.home.ban-home-videos-v20 .ban-home-story--split {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.75fr);
  align-items: end; gap: clamp(32px, 7vw, 110px);
}
body.home.ban-home-videos-v20 .ban-home-story .ban-home-eyebrow {
  color: #64717e !important; font-size: 11px; font-weight: 730;
  letter-spacing: .16em; text-transform: uppercase; margin: 0 0 22px;
}
body.home.ban-home-videos-v20 .ban-home-story h1,
body.home.ban-home-videos-v20 .ban-home-story h2 {
  max-width: 1050px; margin: 0; color: #17212a !important;
  font-family: Inter, 'Helvetica Neue', Arial, sans-serif !important;
  font-size: clamp(37px, 5.4vw, 76px) !important;
  line-height: 1.055 !important; font-weight: 760 !important;
  letter-spacing: -.053em !important;
  text-wrap: balance;
}
body.home.ban-home-videos-v20 .ban-home-story--split h1 { max-width: 700px; }
body.home.ban-home-videos-v20 .ban-home-story h2 {
  max-width: 850px; font-size: clamp(31px, 4.15vw, 58px) !important;
}
body.home.ban-home-videos-v20 .ban-home-story .ban-home-soft-accent {
  color: #1597b0; background: linear-gradient(105deg, #009dbb 5%, #8b79d9 57%, #d74ea6 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.home.ban-home-videos-v20 .ban-home-story .ban-home-copy,
body.home.ban-home-videos-v20 .ban-home-story p.ban-home-copy {
  margin: 20px 0 0; max-width: 600px; font-size: clamp(16px, 1.25vw, 19px);
  font-weight: 400; line-height: 1.65; letter-spacing: -.008em;
  color: #596471 !important;
}
body.home.ban-home-videos-v20 .ban-home-cta { display: flex; gap: 12px; margin-top: 28px; flex-wrap: wrap; }
body.home.ban-home-videos-v20 .ban-home-btn {
  border-radius: 9px; display: inline-flex; align-items: center; justify-content: center;
  min-height: 48px; padding: 12px 22px; font-size: 14px;
  font-weight: 690; line-height: 1.2; transition: background .2s, transform .2s;
}
body.home.ban-home-videos-v20 .ban-home-btn:hover { transform: translateY(-2px); }
body.home.ban-home-videos-v20 .ban-home-btn--primary { background: #162029; color: white !important; }
body.home.ban-home-videos-v20 .ban-home-btn--secondary { background: #eef1f2; color: #22303d !important; }
body.home.ban-home-videos-v20 .ban-home-micro { margin-top: 14px; font-size: 12px; color: #818995 !important; }
body.home.ban-home-videos-v20 .ban-home-video-section {
  background: #fff; border-top: 1px solid rgba(23, 50, 66, .065);
}
body.home.ban-home-videos-v20 .ban-home-video-section .ban-home-story { padding-bottom: clamp(30px, 5vw, 70px); }
body.home.ban-home-videos-v20 .ban-home-video-section .ban-home-film__frame { background: #fff; }
body.home.ban-home-videos-v20 .ban-home-video-section .ban-home-film { background: #fff; }
body.home.ban-home-videos-v20 .ban-home-footnote {
  text-align: center; font-size: 13px; color: #77818c !important;
  padding: 18px 24px 48px; margin: 0;
}
/* Keep keyboard and reduced-motion behavior predictable. */
body.home.ban-home-videos-v20 .ban-home-btn:focus-visible { outline: 3px solid #13b8ce; outline-offset: 3px; }
@media (max-width: 800px) {
  body.home.ban-home-videos-v20 .ban-home-story {
    width: min(100% - 40px, 660px); padding-block: 52px 72px;
  }
  body.home.ban-home-videos-v20 .ban-home-story--split {
    display: flex; flex-direction: column; align-items: flex-start; gap: 8px;
  }
  body.home.ban-home-videos-v20 .ban-home-story h1 { font-size: clamp(35px, 8.3vw, 54px) !important; }
  body.home.ban-home-videos-v20 .ban-home-story h2 { font-size: clamp(31px, 7vw, 44px) !important; }
  body.home.ban-home-videos-v20 .ban-home-story .ban-home-copy { font-size: 16px; }
  body.home.ban-home-videos-v20 .ban-home-film--hero { padding-top: 72px; }
}
@media (max-width: 520px) {
  body.home.ban-home-videos-v20 .ban-home-film--hero { padding-top: 69px; }
  body.home.ban-home-videos-v20 .ban-home-story { width: calc(100% - 34px); padding-block: 46px 62px; }
  body.home.ban-home-videos-v20 .ban-home-story .ban-home-eyebrow { font-size: 10px; margin-bottom: 18px; }
  body.home.ban-home-videos-v20 .ban-home-btn { min-height: 48px; }
  body.home.ban-home-videos-v20 .ban-home-film__frame { aspect-ratio: 16/9; }
  body.home.ban-home-videos-v20 .ban-home-story h1 { font-size: clamp(33px, 9vw, 41px) !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.home.ban-home-videos-v20 .ban-home-btn { transition: none; }
  body.home.ban-home-videos-v20 .ban-home-btn:hover { transform: none; }
}
