.program-h3-blue-heading {
  color: #000000A6;
}

.regen-design-section .regen-design-content {
  font-size: 15px;
}

.regren-philosophy-section {
  background-color: #fbd601;
}

.feature-circle-tick {
  padding: 10px 0;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}

/* ------Training Approach section---------- */

.approach-card {
  flex: 0 0 auto;
  width: 420px;
  height: 440px;

  padding: 32px;
  border-radius: 20px;
  box-sizing: border-box;
  overflow: hidden;
  transition: width 0.35s ease, height 0.35s ease, box-shadow 0.35s ease,
    transform 0.35s ease;
}

.approach-img {
  width: 60px;
}

.approach-card:hover {
  width: 620px;
  height: 360px;
  transform: translateY(-6px);
}

.card-blue {
  background: #EAEAEA;
}
.card-green {
  background: #d3eedc;
}
.card-pink {
  background: #eed3e9;
}
.card-peach {
  background: #eed3d3;
}

.approach-card h3 {
  font-size: 24px;
  font-weight: 600;
  line-height: 30px;
  margin-bottom: 12px;
}

.approach-card p {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}

/* --------personalise section--------------- */

.personalise-sub-heading {
  color: #23262f;
  font-size: 18px;
  font-weight: 600;
}

/* -------------cta section-------------- */

.regen-cta-section .cta-regen-content {
  font-size: 18px;
  color: #ffffff;
}

.check-list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding: 5px 24px 29px 24px;
  flex-wrap: wrap;
}

.check-item {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 400;
  white-space: nowrap;
}

/* --------------Where ESPA Regen Operates section ------------------ */


.operate-desc {
  color: #555;
  margin-bottom: 35px;
  line-height: 1.7;
  max-width: 620px;
}

/* list */
.operate-list {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

/* items */
.operate-item {
  padding-bottom: 18px;
  border-bottom: 1px solid #e9e9e9;
  transition: .3s ease;
}

.operate-item h3 {
  font-size: 19px;
  font-weight: 600;
  margin: 0;
  transition: .3s;
}

/* hover style */
.operate-item:hover h3 {
  color: #FCD600;
  letter-spacing: .4px;
}

.operate-item:hover {
  transform: translateX(6px);
}

.operate-image img {
  width: 100%;
  border-radius: 24px;
}

/* ---------Nutrition, Physio & Expert Support---------- */

.regen-support-section .performance-content {
  color: #4b5563;
  font-size: 17px;
}

.regen-support-section .performance-track {
  width: 100%;
  padding: 12px 7% 4px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.regen-support-section .performance-card {
  position: relative;
  min-width: 0;
  max-width: 100%;
  padding: 16px;
  border-radius: 20px;
  background: linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
  border: 1px solid white;
  box-shadow: 0 3px 4px rgba(15, 23, 42, 0.06);
}

.regen-support-section .performance-card img {
  width: 100%;
  height: 240px;
  border-radius: 14px;
  object-fit: cover;
  display: block;
}

.regen-support-section .performance-card p {
  margin: 0;
}

.regen-support-section .performance-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.12);
}

.regen-support-section .support-tag {
  display: inline-block;
  margin: 20px 0 20px;
  padding: 6px 12px;
  border-radius: 999px;
  background: #ffffff;
  color: #fbd601;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.2px;
}

.regen-support-section .support-title {
  margin: 0;
  color: #111827;
  font-size: 20px;
  font-weight: 700;
  padding-bottom: 10px;
  line-height: 1.35;
}

.regen-support-section .support-desc {
  margin: 10px auto 0;
  max-width: 320px;
  color: #4b5563;
  font-size: 14px;
  line-height: 1.65;
}

@media (max-width: 991px) {
  .regen-support-section .performance-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .regen-support-section .support-title {
    font-size: 18px;
  }
}



@media (max-width: 767px) {
  .where-espa-operates-section .where-espa-contents {
    padding: 0 !important;
  }

  .approach-card {
    width: 359px;
  }

  .check-list {
    align-items: flex-start;
    justify-content: start;
    gap: 15px;
  }

  .check-item {
    font-size: 13px;
  }
  .approach-right-section {
    padding: 0;
  }

  .regen-support-section .performance-track {
    display: flex;
    width: max-content;
    gap: 16px;
    padding: 8px 4% 6px;
  }

  .regen-support-section .performance-card {
    min-width: 290px;
    max-width: 290px;
    padding: 14px;
  }

  .regen-support-section .performance-card img {
    height: 180px;
  }

  .regen-support-section .support-title {
    font-size: 17px;
  }

  .regen-support-section .support-desc {
    font-size: 13px;
  }
}
