/* Use the page's editorial photography as immersive section backgrounds while
 * preserving a strong reading surface for the adjacent copy. */
.elementor-153 .elementor-element.elementor-element-b52efb3:not(.elementor-motion-effects-element-type-background),
.elementor-153 .elementor-element.elementor-element-b52efb3 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-position: center;
  background-size: cover;
}

.elementor-153 .elementor-element.elementor-element-e3718ad,
.elementor-153 .elementor-element.elementor-element-250b22a,
.elementor-153 .elementor-element.elementor-element-24f1b7b,
.elementor-153 .elementor-element.elementor-element-d84e4f3 {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: clamp(1.5rem, 3vw, 3rem);
  box-shadow: 0 1.5rem 3.5rem rgba(12, 77, 162, .18);
  min-height: clamp(32rem, 48vw, 43rem);
  overflow: hidden;
  padding: clamp(1.25rem, 5vw, 4.5rem);
}

.elementor-153 .elementor-element.elementor-element-e3718ad {
  background-image: linear-gradient(90deg, rgba(7, 36, 67, .08), rgba(7, 36, 67, .5)), url("../assets/images/programmes/children-with-swimming-instructor.png");
  justify-content: flex-end;
}

.elementor-153 .elementor-element.elementor-element-250b22a {
  background-image: linear-gradient(90deg, rgba(7, 36, 67, .5), rgba(7, 36, 67, .08)), url("../assets/images/programmes/community-water-safety-class.png");
  justify-content: flex-start;
}

.elementor-153 .elementor-element.elementor-element-24f1b7b {
  background-image: linear-gradient(90deg, rgba(7, 36, 67, .1), rgba(7, 36, 67, .52)), url("../assets/images/programmes/community-swimming-programme-group.png");
  justify-content: flex-end;
}

.elementor-153 .elementor-element.elementor-element-d84e4f3 {
  background-image: linear-gradient(90deg, rgba(7, 36, 67, .5), rgba(7, 36, 67, .1)), url("../assets/images/programmes/beach-swimming-class-group-1024x684.png");
  justify-content: flex-start;
}

.elementor-153 .elementor-element:is(.elementor-element-32d4777, .elementor-element-087f754, .elementor-element-415e030, .elementor-element-230b683) {
  display: none;
}

.elementor-153 .elementor-element.elementor-element-1d508b8,
.elementor-153 .elementor-element.elementor-element-b704e31,
.elementor-153 .elementor-element.elementor-element-46e39d4,
.elementor-153 .elementor-element.elementor-element-ebb06af {
  background: rgba(255, 255, 255, .94);
  border-radius: 1.5rem;
  box-shadow: 0 1.25rem 3rem rgba(7, 36, 67, .24);
  flex: 0 1 36rem;
  padding: clamp(1.5rem, 4vw, 3.25rem);
  width: min(100%, 36rem);
}

/* Turn the sponsorship offer into a clear set of benefits rather than an
 * undifferentiated block of body copy. */
.partnership-benefits__eyebrow {
  color: var(--e-global-color-primary, #0c4da2);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  margin: 0 0 .45rem;
  text-transform: uppercase;
}

.partnership-benefits__title {
  color: var(--e-global-color-primary, #0c4da2);
  font-size: clamp(1.6rem, 2.5vw, 2.15rem);
  line-height: 1.15;
  margin: 0 0 1.35rem;
}

.partnership-benefits__list {
  display: grid;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.partnership-benefits__list li {
  border-top: 1px solid rgba(12, 77, 162, .16);
  line-height: 1.5;
  padding: 1rem 0 1rem 2.65rem;
  position: relative;
}

.partnership-benefits__list li::before {
  align-items: center;
  background: #66f172;
  border-radius: 50%;
  color: #fff;
  content: "\2713";
  display: flex;
  font-size: .9rem;
  font-weight: 800;
  height: 1.75rem;
  justify-content: center;
  left: 0;
  position: absolute;
  top: .9rem;
  width: 1.75rem;
}

.partnership-benefits__list li:last-child {
  padding-bottom: 0;
}

/* Give the corporate partnership close enough presence to balance its image
 * card, while retaining a clear step up from supporting body copy to CTA. */
.elementor-153 .elementor-element.elementor-element-14985d2 {
  font-size: clamp(1.2rem, 1.5vw, 1.4rem);
  line-height: 1.55;
}

.elementor-153 .elementor-element.elementor-element-14985d2 p {
  margin-block: 0;
}

.elementor-153 .elementor-element.elementor-element-14985d2 p + p {
  border-left: .3rem solid #66f172;
  color: var(--e-global-color-primary, #0c4da2);
  font-size: clamp(1.3rem, 1.75vw, 1.6rem);
  line-height: 1.4;
  margin-top: 1.5rem;
  padding-left: 1.15rem;
}

@media (max-width: 767px) {
  .elementor-153 .elementor-element.elementor-element-e3718ad,
  .elementor-153 .elementor-element.elementor-element-250b22a,
  .elementor-153 .elementor-element.elementor-element-24f1b7b,
  .elementor-153 .elementor-element.elementor-element-d84e4f3 {
    border-radius: 1.5rem;
    min-height: 34rem;
    padding: 1rem;
  }

  .elementor-153 .elementor-element.elementor-element-e3718ad,
  .elementor-153 .elementor-element.elementor-element-24f1b7b {
    background-position: 35% center;
  }

  .elementor-153 .elementor-element.elementor-element-250b22a,
  .elementor-153 .elementor-element.elementor-element-d84e4f3 {
    background-position: 65% center;
  }

  .elementor-153 .elementor-element.elementor-element-1d508b8,
  .elementor-153 .elementor-element.elementor-element-b704e31,
  .elementor-153 .elementor-element.elementor-element-46e39d4,
  .elementor-153 .elementor-element.elementor-element-ebb06af {
    border-radius: 1.1rem;
    padding: 1.5rem;
  }
}
