/* manager-training.css — ScaleJoy Manager Training page
 * Design source: Figma — Full prototype V4 → Manager Training (989:999) at 1728px
 * Sections: hero, overview, delivery, cta, then trusted-by + why-leaders + testimonials (partials)
 */

.site-main--manager-training {
  background: var(--bg, #F2E8D4);
  color: var(--brand, #183A40);
}

/* ===========================
 * Section 1 — Hero (centered, full-width)
 * Figma 989:1000 — Frame 1728x953 cream, VERTICAL counter CENTER gap 66
 * =========================== */
.mt-hero {
  background: var(--bg);
  padding-block: clamp(3rem, 5.85vw, 6.25rem) clamp(3rem, 5.85vw, 6.25rem);
}

.mt-hero__inner {
  max-width: 1728px;
  margin-inline: auto;
  padding-inline: clamp(24px, 5vw, 90px);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: clamp(2rem, 4.62vw, 5rem);
}

.mt-hero__title {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(3rem, 6.25vw, 6.75rem);
  font-weight: 400;
  font-style: italic;
  line-height: 1.333;
  color: #561F33;
  letter-spacing: -0.005em;
  white-space: nowrap;
}

.mt-hero__title-emph {
  font-weight: 700;
  font-style: italic;
  position: relative;
  display: inline-block;
}

.mt-hero__underline {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.47em;
  width: 100%;
  height: auto;
  display: block;
  pointer-events: none;
}

.mt-hero__lead {
  margin: 0;
  max-width: 1308px;
  font-family: var(--sans);
  font-size: clamp(1rem, 1.4vw, 1.5rem);
  font-weight: 400;
  line-height: 1.25;
  color: #561F33;
  text-align: center;
}

.mt-hero__ctas {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, clamp(220px, 23.9vw, 413px)));
  justify-content: center;
  gap: clamp(0.75rem, 1.97vw, 2.125rem);
  width: 100%;
  max-width: clamp(480px, 50vw, 860px);
  margin-inline: auto;
}

.btn-layout.hollow.mt-hero__btn {
  width: 100%;
  min-height: 81px;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
  padding-block: clamp(0.9rem, 1.5vw, 1.5rem);
  padding-inline: clamp(0.75rem, 1.5vw, 1.5rem);
  overflow-wrap: break-word;
  word-break: normal;
}

/* ===========================
 * Section 2 — Training Programs Overview (split: image LEFT + list RIGHT, statement BELOW)
 * Figma 989:1020 — Frame 1728x880 cream, VERTICAL gap 105, padding-x 90
 * =========================== */
.mt-overview {
  background: var(--bg);
  padding-block: clamp(2rem, 3vw, 3rem) clamp(3rem, 5.5vw, 6rem);
}

.mt-overview__inner {
  max-width: 1728px;
  margin-inline: auto;
  padding-inline: clamp(24px, 5vw, 90px);
  display: flex;
  flex-direction: column;
  gap: clamp(2.5rem, 6.07vw, 6.5625rem);
}

.mt-overview__split {
  display: grid;
  grid-template-columns: minmax(0, 721fr) minmax(0, 727fr);
  gap: clamp(2rem, 5.78vw, 6.25rem);
  align-items: center;
}

.mt-overview__media {
  position: relative;
  width: 100%;
  max-width: 721px;
  aspect-ratio: 721 / 615;
  overflow: hidden;
  border-radius: 8px;
  justify-self: start;
}

.mt-overview__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.mt-overview__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 2.9vw, 3.125rem);
}

.mt-overview__list-title {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1.75rem, 2.31vw, 2.5rem);
  font-weight: 700;
  line-height: 1.08;
  color: var(--brand, #183A40);
}

.mt-overview__items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: clamp(0.5rem, 1vw, 1rem);
  font-family: var(--sans);
  font-size: clamp(1rem, 1.4vw, 1.5rem);
  line-height: 1.75;
  color: var(--brand, #183A40);
}

.mt-overview__statement {
  text-align: center;
}

.mt-overview__statement p {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1.85rem, 3.475vw, 3.75rem);
  font-weight: 400;
  font-style: normal;
  line-height: 1.333;
  color: var(--brand, #183A40);
  letter-spacing: -0.005em;
}

.mt-overview__statement .is-emph {
  font-style: italic;
  font-weight: 800;
  color: var(--brand-light, #67929A);
}

/* ===========================
 * Section 3 — Delivery Options (2x2 bordered cards)
 * Figma 989:1029 — Frame 1728x729 cream, VERTICAL center gap 130, padding 70/90
 * Cards: 1px teal stroke, padding 70/60, title Playfair 500 56px + first letter 700-italic 86px brand-light
 * =========================== */
.mt-delivery {
  background: var(--bg);
  padding-block: clamp(2rem, 4.05vw, 4.375rem) clamp(3rem, 5.5vw, 6rem);
}

.mt-delivery__inner {
  max-width: 1728px;
  margin-inline: auto;
  padding-inline: clamp(24px, 5vw, 90px);
}

.mt-delivery__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2.14vw, 2.3125rem);
}

/* Override shared .program-card styles to match Figma manager-training cards (bordered, no bg fill) */
.mt-delivery .program-card {
  background: transparent;
  border: 1px solid var(--brand, #183A40);
  border-radius: 0;
  padding: clamp(2rem, 4.05vw, 4.375rem) clamp(1.5rem, 3.47vw, 3.75rem);
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 2.43vw, 2.625rem);
  min-height: auto;
}

.mt-delivery .program-card__title {
  font-family: var(--serif);
  font-size: clamp(2rem, 3.24vw, 3.5rem);
  font-weight: 500;
  font-style: normal;
  line-height: 1.16;
  color: var(--brand, #183A40);
  letter-spacing: -0.005em;
  margin: 0;
}

.mt-delivery .program-card__initial {
  font-family: var(--serif);
  font-size: 1.535em;
  font-weight: 700;
  font-style: italic;
  color: var(--brand-light, #67929A);
  line-height: 1;
  display: inline;
  margin-right: 0.02em;
  vertical-align: baseline;
}

.mt-delivery .program-card__body {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1rem, 1.1vw, 1.1875rem);
  font-weight: 400;
  line-height: 1.333;
  color: var(--brand, #183A40);
}

/* ===========================
 * Section 4 — Centered CTA (We Create & Deliver)
 * Figma 989:1059 — Frame 1728x621 cream, VERTICAL center gap 90, padding 210/90/160/90
 * =========================== */
.mt-cta {
  background: var(--bg);
  padding-block: clamp(4rem, 12.15vw, 13.125rem) clamp(3rem, 9.26vw, 10rem);
}

.mt-cta__inner {
  max-width: 1728px;
  margin-inline: auto;
  padding-inline: clamp(24px, 5vw, 90px);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: clamp(2rem, 3.47vw, 3.75rem);
}

.mt-cta__title {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(2rem, 3.475vw, 3.75rem);
  font-weight: 700;
  font-style: normal;
  line-height: 1.333;
  color: var(--brand, #183A40);
  letter-spacing: -0.005em;
}

.mt-cta__title .is-emph {
  font-style: italic;
  font-weight: 800;
}

.mt-cta__actions {
  display: flex;
  justify-content: center;
}

/* ===========================
 * Responsive — 1399px
 * =========================== */
@media (max-width: 1399px) {
  .mt-hero__title {
    white-space: normal;
  }

  .mt-overview__split {
    gap: clamp(2rem, 3.5vw, 3rem);
  }
}

/* ===========================
 * Responsive — 991px (tablet)
 * =========================== */
@media (max-width: 991px) {
  .mt-overview__split {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .mt-overview__media {
    max-width: 100%;
    aspect-ratio: 16 / 10;
    justify-self: stretch;
  }

  .mt-delivery__grid {
    grid-template-columns: 1fr;
  }

  .mt-delivery .program-card {
    min-height: auto;
  }
}

/* ===========================
 * Responsive — 767px (mobile)
 * =========================== */
@media (max-width: 767px) {
  .mt-hero__title {
    font-size: clamp(2.25rem, 10vw, 4rem);
  }

  .mt-hero__lead {
    font-size: clamp(0.95rem, 4vw, 1.15rem);
  }

  .mt-hero__lead br {
    display: none;
  }

  .mt-overview__statement p {
    font-size: clamp(1.5rem, 6.5vw, 2.5rem);
  }

  .mt-cta__title {
    font-size: clamp(1.65rem, 7vw, 2.5rem);
  }

  .mt-hero__ctas {
    grid-template-columns: 1fr;
    max-width: 100%;
  }
}

/* ===========================
 * Responsive — 575px (small mobile)
 * =========================== */
@media (max-width: 575px) {
  .mt-hero__inner,
  .mt-overview__inner,
  .mt-delivery__inner,
  .mt-cta__inner {
    padding-inline: 18px;
  }
}
