/* Homepage Route Pool promo — full-bleed navy hero, no inset card. */
.route-pool-section {
  --route-pool-navy: #0b2a5b;
  --route-pool-navy-2: #14438f;
  --route-pool-blue: #2477e3;
  --route-pool-yellow: #c9990f;
  --route-pool-sky: #e4eefc;
  --route-pool-display: "Unbounded", "Manrope", system-ui, sans-serif;
  --route-pool-body: "Manrope", system-ui, sans-serif;
  box-sizing: border-box;
  width: min(1160px, calc(100% - 40px));
  max-width: 1160px;
  margin: 0 auto;
  padding: 0;
}

.route-pool-section *,
.route-pool-section *::before,
.route-pool-section *::after {
  box-sizing: border-box;
}

/* Full-bleed navy. Homepage global * {margin:0;padding:0} is overridden below. */
#bigfella-container section#homePoolTeaser.home-band,
#bigfella-container #homePoolTeaser {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  overflow: visible !important;
  margin: 0 !important;
  padding: 0 0 36px !important;
  border-bottom: 0 !important;
  color: #fff !important;
  background:
    radial-gradient(900px 420px at 85% 10%, #3b8cf0 0, transparent 60%),
    linear-gradient(135deg, #0b2a5b, #14438f) !important;
}

#bigfella-container #homePoolTeaser .route-pool-section {
  display: block !important;
  width: min(1160px, calc(100% - 40px)) !important;
  max-width: 1160px !important;
  margin: 0 auto !important;
  padding: 48px 0 0 !important;
  overflow: visible !important;
}

#bigfella-container #homePoolTeaser .rpv2-hero {
  padding: 0 !important;
  overflow: visible !important;
}

#bigfella-container #homePoolTeaser .rpv2-stage {
  display: grid !important;
  grid-template-columns: 1.05fr 1fr !important;
  gap: 28px !important;
  align-items: center !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 8px 0 72px !important;
  overflow: visible !important;
  border-radius: 0 !important;
  background: transparent !important;
}

#bigfella-container #homePoolTeaser h2.route-pool-title,
#bigfella-container #homePoolTeaser h2.rpv2-title {
  max-width: 560px !important;
  margin: 0 !important;
  color: #fff !important;
  font-family: "Unbounded", "Manrope", system-ui, sans-serif !important;
  font-size: clamp(38px, 5vw, 58px) !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.02em !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  -webkit-text-fill-color: #fff !important;
}

#bigfella-container #homePoolTeaser h2.route-pool-title em,
#bigfella-container #homePoolTeaser h2.rpv2-title em {
  display: inline-block !important;
  margin: 10px 0 0 !important;
  padding: 4px 14px !important;
  border-radius: 12px !important;
  background: #c9990f !important;
  color: #0b2a5b !important;
  -webkit-text-fill-color: #0b2a5b !important;
  font-style: normal !important;
  transform: rotate(-2deg);
}

#bigfella-container #homePoolTeaser .route-pool-eyebrow {
  margin: 0 0 14px !important;
  padding: 0 !important;
  color: #cfe0fa !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  -webkit-text-stroke: 0 !important;
}

#bigfella-container #homePoolTeaser .route-pool-lead,
#bigfella-container #homePoolTeaser .rpv2-stage p.route-pool-lead {
  max-width: 480px !important;
  margin: 22px 0 28px !important;
  color: #cfe0fa !important;
  font-size: 18px !important;
  line-height: 1.5 !important;
}

#bigfella-container #homePoolTeaser .route-pool-cta,
#bigfella-container #homePoolTeaser .rpv2-btn.route-pool-cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 52px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 14px 26px !important;
  line-height: 1.1 !important;
  color: #0b2a5b !important;
  background: #fff !important;
  box-shadow: 0 5px 0 #c9990f !important;
}

#bigfella-container #homePoolTeaser .route-pool-alt {
  color: #cfe0fa !important;
}

#bigfella-container #homePoolTeaser .route-pool-cta-row,
#bigfella-container #homePoolTeaser .route-pool-chips {
  color: inherit;
}

#bigfella-container #homePoolTeaser .rpv2-trust,
#bigfella-container #homePoolTeaser .route-pool-chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
}

#bigfella-container #homePoolTeaser .rpv2-trust span,
#bigfella-container #homePoolTeaser .route-pool-chips span {
  padding: 6px 12px !important;
  border-radius: 99px !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  background: rgba(255, 255, 255, 0.12) !important;
  color: #fff !important;
  font-weight: 600 !important;
  font-size: 13px !important;
}

#bigfella-container #homePoolTeaser .rpv2-map-wrap {
  position: relative !important;
  min-height: 280px !important;
}

#bigfella-container #homePoolTeaser .rpv2-map {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

#bigfella-container #homePoolTeaser .rpv2-chip {
  position: absolute !important;
  padding: 8px 14px !important;
  border-radius: 99px !important;
  background: #fff !important;
  color: #0b2a5b !important;
  -webkit-text-fill-color: #0b2a5b !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25) !important;
  font: 800 14px "Unbounded", "Manrope", system-ui, sans-serif !important;
  white-space: nowrap !important;
}

#bigfella-container #homePoolTeaser .rpv2-chip i {
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  margin: 0 7px 0 0 !important;
  border-radius: 50% !important;
  background: #22b573 !important;
}

#bigfella-container #homePoolTeaser .route-pool-steps,
#bigfella-container #homePoolTeaser .rpv2-steps {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  max-width: 900px !important;
  margin: -36px auto 0 !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 14px 40px rgba(20, 67, 143, 0.18) !important;
}

#bigfella-container #homePoolTeaser .route-pool-steps li,
#bigfella-container #homePoolTeaser .rpv2-steps div {
  flex: 1 !important;
  margin: 0 !important;
  padding: 18px 22px !important;
  border-right: 1px solid #dbe4f3 !important;
  color: #5a6785 !important;
  background: transparent !important;
  font-size: 14px !important;
}

#bigfella-container #homePoolTeaser .rpv2-steps div:last-child {
  border-right: 0 !important;
}

#bigfella-container #homePoolTeaser .route-pool-steps li::before {
  content: none !important;
}

#bigfella-container #homePoolTeaser .route-pool-step-num,
#bigfella-container #homePoolTeaser .rpv2-steps b {
  display: block !important;
  margin: 0 0 4px !important;
  color: #0f1b33 !important;
  font: 800 15px "Unbounded", "Manrope", system-ui, sans-serif !important;
}

#bigfella-container #homePoolTeaser .route-pool-cta-row {
  margin: 22px 0 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

@media (max-width: 860px) {
  #bigfella-container #homePoolTeaser .rpv2-stage {
    grid-template-columns: 1fr !important;
    padding: 8px 0 56px !important;
  }

  #bigfella-container #homePoolTeaser .route-pool-steps,
  #bigfella-container #homePoolTeaser .rpv2-steps {
    flex-direction: column !important;
    margin: -24px 0 0 !important;
  }

  #bigfella-container #homePoolTeaser .rpv2-steps div {
    border-right: 0 !important;
    border-bottom: 1px solid #dbe4f3 !important;
  }

  #bigfella-container #homePoolTeaser .rpv2-steps div:last-child {
    border-bottom: 0 !important;
  }

  #bigfella-container #homePoolTeaser .rpv2-chip {
    display: inline-flex !important;
    align-items: center;
    padding: 5px 9px !important;
    font-size: 11px !important;
  }
}

@media (max-width: 620px) {
  #bigfella-container section#homePoolTeaser.home-band,
  #bigfella-container #homePoolTeaser {
    margin-top: 0 !important;
    padding: 0 0 28px !important;
  }

  #bigfella-container #homePoolTeaser .route-pool-section {
    width: min(1160px, calc(100% - 28px)) !important;
    padding-top: 28px !important;
  }

  #bigfella-container #homePoolTeaser h2.route-pool-title,
  #bigfella-container #homePoolTeaser h2.rpv2-title {
    max-width: none !important;
    font-size: clamp(30px, 9vw, 40px) !important;
  }

  #bigfella-container #homePoolTeaser .route-pool-cta {
    width: 100% !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #homePoolTeaser .rpv2-map .arc {
    animation: none !important;
  }
}
