/* executive-coaching.css — Executive Coaching page
 * Design source: Figma — Full prototype V4 → Executive Coaching (989:1259) at 1728px
 * Sections: hero, benefits, coach-profiles (3 cards alternating), discovery-cta,
 *           testimonials/why/trusted partials, joy-bio, charlotte-bio
 */

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

/* ===========================
 * Section 1 — Hero (centered, full-width)
 * Figma 989:1264 — Title 108px italic + "Coaching" emph bold + teal underline
 * =========================== */
.ec-hero {
  background: var(--bg);
  padding-block: clamp(3rem, 5.85vw, 6.25rem) clamp(3rem, 5.85vw, 6.25rem);
}

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

.ec-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;
}

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

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

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

.ec-hero__cta {
  display: flex;
  justify-content: center;
}

.btn-layout.hollow.ec-hero__btn {
  min-height: 81px;
}

/* ===========================
 * Section 2 — Benefits
 * Figma 989:1286 — Centered title 40px + benefit list 24px Work Sans
 * =========================== */
.ec-benefits {
  background: var(--bg);
  padding-block: clamp(2rem, 4vw, 4.375rem) clamp(3rem, 6.36vw, 6.875rem);
}

.ec-benefits__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(1.5rem, 2.37vw, 2.5625rem);
}

.ec-benefits__title {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1.75rem, 2.31vw, 2.5rem);
  font-weight: 700;
  line-height: 1.333;
  color: var(--brand, #183A40);
  letter-spacing: -0.005em;
}

.ec-benefits__body {
  margin: 0;
  max-width: 1548px;
  font-family: var(--sans);
  font-size: clamp(1rem, 1.4vw, 1.5rem);
  font-weight: 400;
  line-height: 1.29;
  color: var(--brand, #183A40);
  text-align: center;
}

/* ===========================
 * Section 3 — Coach Profiles (3 cards alternating)
 * Figma 989:1293 — Each card HORIZONTAL SPACE_BETWEEN gap 160, image 774x805 + content
 * =========================== */
.ec-coaches {
  background: var(--bg);
  padding-block: clamp(3rem, 5.21vw, 5.625rem);
}

.ec-coaches__inner {
  max-width: 1728px;
  margin-inline: auto;
  padding-inline: clamp(24px, 5vw, 90px);
  display: flex;
  flex-direction: column;
  gap: clamp(3rem, 7.41vw, 8rem);
}

.ec-coach {
  display: grid;
  grid-template-columns: minmax(0, 774fr) minmax(0, 774fr);
  gap: clamp(2rem, 9.26vw, 10rem);
  align-items: center;
}

.ec-coach--photo-right {
  direction: rtl;
}

.ec-coach--photo-right > * {
  direction: ltr;
}

.ec-coach__media {
  position: relative;
  width: 100%;
  max-width: 774px;
  aspect-ratio: 774 / 805;
  overflow: hidden;
  border-radius: 8px;
}

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

.ec-coach__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.5rem, 3.36vw, 3.625rem);
  text-align: center;
  padding-block: clamp(0, 1.74vw, 1.875rem);
}

.ec-coach__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(0, 0, 0);
  width: 100%;
}

.ec-coach__eyebrow {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1.85rem, 3.475vw, 3.75rem);
  font-weight: 600;
  font-style: normal;
  line-height: 1.333;
  color: #561F33;
  text-align: center;
}

.ec-coach__name {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(3.5rem, 8.68vw, 9.375rem);
  font-weight: 800;
  font-style: italic;
  line-height: 1.333;
  color: #561F33;
  text-align: center;
  letter-spacing: -0.015em;
}

.ec-coach--photo-left:nth-of-type(3) .ec-coach__name {
  font-weight: 900;
}

.ec-coach__pricing {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: clamp(0.75rem, 1.27vw, 1.375rem);
  width: 100%;
  max-width: 494px;
  padding-inline: clamp(0, 8vw, 140px);
}

.ec-coach__pricing li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  font-family: var(--sans);
  font-size: clamp(1rem, 1.4vw, 1.5rem);
  line-height: 1.25;
  color: var(--brand, #183A40);
}

.ec-coach__pricing-label {
  font-weight: 400;
}

.ec-coach__pricing-value {
  font-weight: 600;
}

.ec-coach__ctas {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(0.75rem, 1.5vw, 1.5rem);
  width: 100%;
  max-width: 632px;
}

.btn-layout.hollow.ec-coach__btn {
  width: 100%;
  min-height: 56px;
  padding-inline: clamp(0.5rem, 1vw, 1rem);
  font-size: clamp(0.8rem, 0.93vw, 1rem);
}

.ec-coach__note {
  margin: 0;
  font-family: var(--sans);
  font-size: clamp(1rem, 1.4vw, 1.5rem);
  line-height: 1.29;
  color: var(--brand, #183A40);
  max-width: 666px;
  text-align: center;
}

/* ===========================
 * Section 4 — Discovery Call CTA (teal bg, logo-art top-left)
 * Figma 989:1360 — Frame 1728x691 teal
 * =========================== */
.ec-discovery-cta {
  position: relative;
  background: var(--brand, #183A40);
  color: var(--bg, #F2E8D4);
  padding-block: clamp(5rem, 10.5vw, 11.25rem) clamp(3rem, 3.47vw, 3.75rem);
  overflow: hidden;
  isolation: isolate;
}

.ec-discovery-cta__shape {
  position: absolute;
  bottom: 60px;
  left: -85px;
  width: clamp(240px, 27.3vw, 472px);
  height: auto;
  z-index: 0;
  pointer-events: none;
  transform: translateX(-12%);
}

@media (max-width: 991px) {
  .ec-discovery-cta__shape {
    opacity: 0.35;
    bottom: 60px;
  }
}

.ec-discovery-cta__inner {
  position: relative;
  z-index: 1;
  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(3rem, 6.94vw, 7.5rem);
}

.ec-discovery-cta__title {
  margin: 0;
  max-width: 1380px;
  font-family: var(--serif);
  font-size: clamp(2.4rem, 3.47vw, 3.75rem);
  font-weight: 400;
  font-style: normal;
  line-height: 1.333;
  color: var(--bg, #F2E8D4);
  letter-spacing: 0;
}

.ec-discovery-cta__btn {
  display: flex;
  justify-content: center;
  margin-top: auto;
  padding-bottom: clamp(1rem, 3.47vw, 3.75rem);
}

.ec-discovery-cta .btn-layout.hollow-light {
  padding: clamp(1.1rem, 1.74vw, 1.875rem) clamp(1.5rem, 2.32vw, 2.5rem);
  font-size: clamp(0.95rem, 1.04vw, 1.125rem);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-width: 1px;
}

.ec-discovery-cta .btn-layout.hollow-light:hover,
.ec-discovery-cta .btn-layout.hollow-light:focus-visible {
  background: #561F33;
  color: var(--bg, #F2E8D4);
  border-color: #561F33;
}

/* ===========================
 * Section 5/6 — Bio sections (Joy + Charlotte/Allison placeholder)
 * Figma 989:1427 / 989:1439 — split photo + content
 * =========================== */
.ec-bio {
  position: relative;
  z-index: 20;
  background: var(--bg);
  padding-block: clamp(3rem, 5.21vw, 5.625rem);
}

.ec-bio__inner {
  max-width: 1728px;
  margin-inline: auto;
  padding-inline: clamp(24px, 5vw, 90px);
  display: grid;
  grid-template-columns: minmax(0, 654fr) minmax(0, 894fr);
  gap: clamp(2rem, 5.78vw, 6.25rem);
  align-items: center;
}

.ec-bio__inner--reverse {
  direction: rtl;
}

.ec-bio__inner--reverse > * {
  direction: ltr;
}

.ec-bio__media {
  position: relative;
  width: 100%;
  max-width: 654px;
  aspect-ratio: 654 / 680;
  overflow: hidden;
  border-radius: 8px;
}

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

.ec-bio__content {
  display: flex;
  flex-direction: column;
  gap: clamp(1.5rem, 2.9vw, 3.125rem);
}

.ec-bio__body {
  display: flex;
  flex-direction: column;
  gap: clamp(0.85rem, 2.3vw, 2.5rem);
}

.ec-bio__body p {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1rem, 1.33vw, 1.4375rem);
  font-weight: 400;
  line-height: 1.87;
  color: var(--ink, #252522);
}

.ec-bio__dropcap {
  font-family: var(--serif);
  font-style: normal;
  font-weight: 700;
  font-size: clamp(6rem, 9.2vw, 10.75rem);
  line-height: 0.9;
  color: #561F33;
  margin-right: 0.1em;
  margin-top: 0.06em;
  float: left;
  display: block;
}

.ec-bio--charlotte .ec-bio__dropcap {
  color: var(--brand-light, #67929A);
}

.ec-bio__cta {
  width: 100%;
}

.btn-layout.hollow.ec-bio__btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ===========================
 * Sticky chain on this page (DOM order, ascending z):
 *   ec-hero/benefits/coaches/discovery-cta (default)
 *   testimonials (sticky default z 3 from shared base)
 *   why-leaders (sticky default z 2 from shared base — needs cover)
 *   trusted-by (sticky default z 1)
 *   ec-bio (relative z 20)
 * Per-page boost: trusted-by must cover why-leaders+testimonials in DOM order:
 *   testimonials z 3 → why-leaders z 4 → trusted-by z 5 → bio z 20
 * =========================== */
.site-main--executive-coaching .home-testimonials {
  position: relative;
  z-index: 3;
  background: var(--bg, #F2E8D4);
}

.site-main--executive-coaching .home-why--sticky {
  z-index: 4;
}

.site-main--executive-coaching .home-trusted--sticky {
  z-index: 5;
}

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

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

  .ec-coach--photo-right {
    direction: ltr;
  }

  .ec-coach--photo-right .ec-coach__media {
    order: -1;
  }

  .ec-bio__inner,
  .ec-bio__inner--reverse {
    grid-template-columns: 1fr;
    direction: ltr;
    gap: 2rem;
  }

  .ec-coach__name {
    font-size: clamp(2.5rem, 14vw, 5rem);
  }
}

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

  .ec-coach__name {
    font-size: clamp(2.5rem, 16vw, 5rem);
  }

  .ec-discovery-cta__title {
    font-size: clamp(1.4rem, 6vw, 2rem);
  }
}

/* ===========================
 * Responsive — 575px (small mobile)
 * =========================== */
@media (max-width: 575px) {
  .ec-hero__inner,
  .ec-benefits__inner,
  .ec-coaches__inner,
  .ec-discovery-cta__inner,
  .ec-bio__inner {
    padding-inline: 18px;
  }
}
