.service-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.service-card {
  border-bottom: 1px solid #aeb8bf;
}

#training {
  scroll-margin-top: 148px;
}

#leadership-coaching {
  scroll-margin-top: 148px;
}

.leadership-coaching {
  padding: clamp(72px, 8vw, 118px) clamp(24px, 6vw, 88px);
  background: #edf2f4;
  color: #071d3d;
}

.coaching-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
  gap: clamp(40px, 7vw, 96px);
  align-items: center;
  max-width: 1240px;
  margin: 0 auto;
}

.coaching-intro h2 {
  max-width: 660px;
  margin: 14px 0 22px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5vw, 72px);
  font-weight: 400;
  line-height: 1.02;
}

.coaching-intro > div > p:last-child {
  max-width: 690px;
  margin: 0;
  font-size: clamp(18px, 1.8vw, 22px);
  line-height: 1.65;
}

.coaching-intro figure {
  min-height: 420px;
  margin: 0;
  overflow: hidden;
  border-radius: 2px;
  box-shadow: 18px 18px 0 #316f3b;
}

.coaching-intro img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 420px;
  object-fit: cover;
}

.coaching-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  max-width: 1240px;
  margin: clamp(56px, 7vw, 86px) auto 0;
  background: #aeb8bf;
  border: 1px solid #aeb8bf;
}

.coaching-grid article {
  min-height: 310px;
  padding: clamp(28px, 4vw, 48px);
  background: #fff;
}

.coaching-grid span {
  color: #dd0068;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.coaching-grid h3 {
  margin: 22px 0 18px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(27px, 2.5vw, 36px);
  font-weight: 400;
  line-height: 1.12;
}

.coaching-grid p {
  margin: 0;
  color: #33445a;
  font-size: 17px;
  line-height: 1.65;
}

.coaching-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  max-width: 1240px;
  margin: 0 auto;
  padding: 34px clamp(26px, 4vw, 48px);
  background: #071d3d;
  color: #fff;
}

.coaching-cta strong {
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(24px, 2.5vw, 34px);
  font-weight: 400;
}

.coaching-cta p {
  max-width: 700px;
  margin: 8px 0 0;
  color: #d9e0e8;
  line-height: 1.55;
}

.coaching-cta .button-dark {
  flex: 0 0 auto;
  padding: 16px 20px;
  background: #dd0068;
  color: #fff;
  font-weight: 700;
  text-align: center;
}

.coaching-cta .button-dark:hover,
.coaching-cta .button-dark:focus-visible {
  background: #316f3b;
}

.hero-services {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  max-width: 900px;
  margin: 16px 0 24px;
  background: rgba(255, 255, 255, 0.24);
  border: 1px solid rgba(255, 255, 255, 0.24);
}

.hero-services-prompt {
  margin: 28px 0 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(27px, 3vw, 40px);
  font-weight: 400;
  line-height: 1.12;
}

.hero-services a {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 82px;
  padding: 17px 12px;
  background: rgba(7, 29, 61, 0.82);
  border: 0;
  transition: background-color 180ms ease, transform 180ms ease;
}

.hero-services a:hover,
.hero-services a:focus-visible {
  background: rgba(221, 0, 104, 0.92);
  transform: translateY(-2px);
}

.hero-services span {
  color: #9ed3aa;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.hero-services strong {
  color: #fff;
  font-size: 14px;
  line-height: 1.25;
}

#build-intelligence-service,
#mature-intelligence-service {
  scroll-margin-top: 132px;
}

@media (max-width: 950px) {
  .service-grid {
    grid-template-columns: 1fr;
  }

  #training {
    scroll-margin-top: 112px;
  }

  #leadership-coaching {
    scroll-margin-top: 112px;
  }

  .coaching-intro {
    grid-template-columns: 1fr;
  }

  .coaching-intro figure {
    min-height: 360px;
  }

  .coaching-intro img {
    min-height: 360px;
  }

  .coaching-grid {
    grid-template-columns: 1fr;
  }

  .coaching-grid article {
    min-height: 0;
  }

  .coaching-cta {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 600px) {
  .hero-services {
    grid-template-columns: 1fr;
    margin-top: 24px;
  }

  .hero-services-prompt {
    margin-top: 23px;
    font-size: clamp(27px, 7.5vw, 36px);
  }

  .hero-services a {
    min-height: 0;
    padding: 13px 16px;
  }

  .hero-services strong {
    font-size: 15px;
  }

  .hero-service-train strong {
    white-space: nowrap;
    font-size: 14px;
  }

  .leadership-coaching {
    padding-inline: 20px;
  }

  .coaching-intro figure,
  .coaching-intro img {
    min-height: 280px;
  }

  .coaching-intro figure {
    box-shadow: 10px 10px 0 #316f3b;
  }

  .coaching-cta .button-dark {
    width: 100%;
  }
}

.consult-confirm {
  grid-template-columns: 20px minmax(0, 1fr) !important;
  column-gap: 13px !important;
}

.consult-confirm input[type="checkbox"] {
  -webkit-appearance: checkbox;
  appearance: auto;
  width: 20px !important;
  min-width: 20px;
  height: 20px !important;
  padding: 0 !important;
  margin: 3px 0 0 !important;
  border: 0;
  box-shadow: none;
}

.consult-confirm > span {
  min-width: 0;
}
