/* Homepage v3.0.3 — mobile hero recovery and soft-corner lock.
   This layer is intentionally narrow: preserve the approved copy and structure,
   preserve the current executive portrait, reduce mobile image dominance,
   and remove residual sharp/open-ended component edges.

   HARD IMAGE LOCK: do not replace the homepage hero image in CSS.
   The hero must use the HTML source /assets/home-executive-portrait.webp. */

.home-executive {
  --home-radius-xl: 32px;
  --home-radius-lg: 28px;
  --home-radius-md: 22px;
  --home-surface: rgba(252, 251, 247, .82);
  --home-surface-deep: rgba(238, 232, 219, .44);
  --home-soft-border: rgba(11, 61, 46, .09);
  --home-soft-shadow: 0 18px 46px rgba(5, 39, 30, .055);
}

/* --------------------------------------------------------------------------
   HERO — preserve the current executive portrait and treat it as an editorial card.
   -------------------------------------------------------------------------- */
.home-executive .hero-portrait-executive {
  width: 100%;
  max-width: 540px;
  margin-left: auto;
  padding: 10px;
  overflow: hidden;
  border: 1px solid var(--home-soft-border);
  border-radius: 36px;
  background: rgba(252, 251, 247, .90);
  box-shadow: 0 26px 64px rgba(5, 39, 30, .09);
}

.home-executive .hero-portrait-executive img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center center;
  border: 0;
  border-radius: 27px;
  box-shadow: none;
}

.home-executive .hero-portrait-executive figcaption {
  margin: 11px 5px 2px;
  padding: 0;
}

/* --------------------------------------------------------------------------
   SOFT-CORNER LOCK — no residual sharp boxes on the homepage.
   -------------------------------------------------------------------------- */
.home-executive .assurance-outcomes,
.home-executive .nista-panel,
.home-executive .isf-panel,
.home-executive .proof-metrics-executive,
.home-executive .selected-experience-accordion,
.home-executive .v27-card-grid,
.home-executive .publication-feature,
.home-executive .publication-feature-dark {
  overflow: hidden;
  border-radius: var(--home-radius-lg) !important;
}

.home-executive .assurance-outcomes,
.home-executive .proof-metrics-executive,
.home-executive .v27-card-grid {
  border: 1px solid var(--home-soft-border) !important;
  background: var(--home-surface) !important;
  box-shadow: var(--home-soft-shadow);
}

.home-executive .nista-panel {
  border-radius: var(--home-radius-xl) !important;
  box-shadow: 0 22px 56px rgba(5, 39, 30, .09);
}

.home-executive .isf-panel {
  border-radius: var(--home-radius-lg) !important;
  box-shadow: 0 18px 44px rgba(5, 39, 30, .07);
}

.home-executive .selected-experience-accordion {
  border: 1px solid var(--home-soft-border) !important;
  background: var(--home-surface-deep) !important;
  box-shadow: var(--home-soft-shadow) !important;
}

.home-executive .selected-experience-accordion .sector-card-grid article,
.home-executive .selected-experience-accordion .sector-card-grid article:nth-child(odd) {
  border: 1px solid var(--home-soft-border) !important;
  border-radius: var(--home-radius-md) !important;
  background: rgba(252, 251, 247, .90) !important;
  box-shadow: 0 10px 26px rgba(5, 39, 30, .035);
}

.home-executive .selected-experience-accordion .experience-disclosure {
  border-radius: 18px !important;
}

/* Keep work cards inside one finished rounded surface rather than open-ended rules. */
.home-executive .v27-card-grid > .info-card,
.home-executive .v27-card-grid > .info-card:not(.green-card) {
  border-radius: 0 !important;
}

/* Featured publication cards should follow the same visual language. */
.home-executive .publication-feature,
.home-executive .publication-feature-dark {
  border: 1px solid var(--home-soft-border);
  box-shadow: 0 16px 40px rgba(5, 39, 30, .045);
}

/* --------------------------------------------------------------------------
   PROOF RAIL — give the estimate breathing room and show the approved spacing.
   The source stays unchanged; this is a visual typography correction only.
   -------------------------------------------------------------------------- */
.home-executive .proof-metrics-executive {
  border-radius: 30px !important;
}

.home-executive .proof-metrics-executive > article,
.home-executive .proof-metrics-executive > article + article {
  min-height: 180px;
  padding: 38px 46px;
}

.home-executive .proof-metrics-executive > article:nth-child(2) strong {
  font-size: 0;
}

.home-executive .proof-metrics-executive > article:nth-child(2) strong::after {
  content: '1,800 – 2,200';
  display: inline-block;
  color: var(--green);
  font-family: var(--display);
  font-size: clamp(2.2rem, 4vw, 3.9rem);
  font-weight: inherit;
  line-height: 1;
  letter-spacing: -.035em;
  white-space: nowrap;
}

/* --------------------------------------------------------------------------
   RESPONSIVE — keep the portrait visible but stop it becoming a full-screen slab.
   -------------------------------------------------------------------------- */
@media (max-width: 900px) {
  .home-executive .hero-grid-executive {
    gap: 28px;
  }

  .home-executive .hero-portrait-executive {
    width: min(82vw, 360px);
    max-width: 360px;
    margin: 4px auto 0;
    padding: 8px;
    border-radius: 30px;
    justify-self: center;
  }

  .home-executive .hero-portrait-executive img {
    border-radius: 23px;
  }
}

@media (max-width: 760px) {
  .home-executive .hero-executive {
    padding: 34px 0 44px;
  }

  .home-executive .hero-copy-executive h1 {
    max-width: 10.8ch;
    font-size: clamp(2.45rem, 10.4vw, 3.55rem);
    line-height: .97;
  }

  .home-executive .hero-intro-executive {
    margin-top: 19px;
    font-size: 1rem;
    line-height: 1.55;
  }

  .home-executive .button-row {
    margin-top: 24px;
  }

  .home-executive .hero-portrait-executive {
    width: min(80vw, 330px);
    max-width: 330px;
    margin-top: 6px;
    border-radius: 28px;
  }

  .home-executive .hero-portrait-executive img {
    border-radius: 21px;
  }

  .home-executive .assurance-outcomes,
  .home-executive .nista-panel,
  .home-executive .isf-panel,
  .home-executive .proof-metrics-executive,
  .home-executive .selected-experience-accordion,
  .home-executive .v27-card-grid,
  .home-executive .publication-feature,
  .home-executive .publication-feature-dark {
    border-radius: 24px !important;
  }

  .home-executive .selected-experience-accordion .sector-card-grid article,
  .home-executive .selected-experience-accordion .sector-card-grid article:nth-child(odd) {
    border-radius: 19px !important;
  }

  .home-executive .proof-metrics-executive > article,
  .home-executive .proof-metrics-executive > article + article {
    padding: 30px 26px;
  }

  .home-executive .proof-metrics-executive > article:nth-child(2) strong::after {
    font-size: clamp(2rem, 10vw, 3rem);
  }
}

@media (max-width: 420px) {
  .home-executive .hero-portrait-executive {
    width: min(78vw, 305px);
    max-width: 305px;
  }

  .home-executive .hero-copy-executive h1 {
    font-size: clamp(2.35rem, 10vw, 3.15rem);
  }
}
