/*
 * Kohn International — Homepage editorial introduction
 * Single-column editorial layout for the homepage text block.
 */

.kohn-home-intro {
  --kohn-home-blue: #2c73b4;
  --kohn-home-blue-dark: #1459a7;
  --kohn-home-ink: #111827;
  --kohn-home-muted: #4b5563;
  --kohn-home-line: rgba(44, 115, 180, 0.28);

  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: clamp(3.5rem, 6vw, 6.5rem) 0 clamp(4.5rem, 7vw, 7rem);
  color: var(--kohn-home-ink);
  font-family: var(--mak-font-family-variable);
}

.kohn-home-intro * {
  box-sizing: border-box;
}

.kohn-home-intro__eyebrow {
  margin: 0 0 clamp(1.4rem, 2.5vw, 2rem) !important;
  color: var(--kohn-home-blue);
  text-align: center;
  font-size: clamp(0.72rem, 0.85vw, 0.88rem);
  font-variation-settings: 'wght' 650;
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.kohn-home-intro__title {
  max-width: 900px;
  margin: 0 auto !important;
  color: var(--kohn-home-ink);
  text-align: center;
  font-size: clamp(3rem, 5.4vw, 5.8rem);
  font-variation-settings: 'wght' 420;
  font-weight: 420;
  line-height: 0.98;
  letter-spacing: -0.032em;
  text-wrap: balance;
}

.kohn-home-intro__title-city {
  color: var(--kohn-home-blue);
  font-variation-settings: 'wght' 560;
  font-weight: 560;
}

/* Un seul séparateur, discret, entre le titre et le texte de labeur. */
.kohn-home-intro__rule {
  width: 3rem;
  height: 1px;
  margin: clamp(2.15rem, 3.5vw, 3rem) auto clamp(2.7rem, 4vw, 3.6rem);
  background: var(--kohn-home-line);
}

.kohn-home-intro__content {
  width: min(100%, 880px);
  margin: 0 auto;
}

.kohn-home-intro__content p {
  margin: 0 0 1.45em !important;
  color: var(--kohn-home-muted);
  font-size: clamp(1.30rem, 1.46vw, 1.46rem);
  font-variation-settings: 'wght' 400;
  font-weight: 400;
  line-height: 1.62;
  letter-spacing: 0.001em;
  text-align: justify;
  text-align-last: left;
  text-justify: inter-word;
  -webkit-hyphens: auto;
  hyphens: auto;
  hanging-punctuation: first last;
  orphans: 3;
  widows: 3;
}

.kohn-home-intro__content p:last-child {
  margin-bottom: 0 !important;
}

.kohn-home-intro__content strong,
.kohn-home-intro__person,
.kohn-home-intro__specialty {
  color: var(--kohn-home-ink);
  font-variation-settings: 'wght' 580;
  font-weight: 580;
}

.kohn-home-intro__person {
  color: var(--kohn-home-blue-dark);
}

.kohn-home-intro__cabinet {
  font-style: normal;
  color: var(--kohn-home-blue-dark);
  font-variation-settings: 'wght' 540;
  font-weight: 540;
}

/* Le dernier paragraphe reste dans le flux : aucun filet supplémentaire. */
.kohn-home-intro__final {
  margin-top: 0.25em !important;
  color: var(--kohn-home-ink) !important;
}

/* Neutralise tout pseudo-guillemet éventuellement hérité d'une ancienne version. */
.kohn-home-intro q::before,
.kohn-home-intro q::after {
  content: none !important;
}

@media (max-width: 900px) {
  .kohn-home-intro {
    max-width: 900px;
    padding-top: 3rem;
    padding-bottom: 5rem;
  }

  .kohn-home-intro__content {
    width: min(100%, 800px);
  }
}

@media (max-width: 680px) {
  .kohn-home-intro {
    padding-top: 2.5rem;
    padding-bottom: 4rem;
  }

  .kohn-home-intro__title {
    font-size: clamp(2.65rem, 12vw, 4.2rem);
    line-height: 1;
  }

  .kohn-home-intro__content p {
    font-size: 1.24rem;
    line-height: 1.58;
    text-align: left;
    -webkit-hyphens: manual;
    hyphens: manual;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kohn-home-intro,
  .kohn-home-intro * {
    animation: none !important;
    transition: none !important;
  }
}
