.about-text strong {
  font-weight: 600;
}

.about-text a {
  border-bottom: 1px solid rgba(34, 34, 34, .35);
  transition: border-color .25s ease;
}

.about-text a:hover {
  border-color: #222;
}

@media (min-width: 901px) {
  .about-grid {
    align-items: stretch;
  }

  .about-portrait {
    aspect-ratio: auto;
    min-height: 100%;
  }

  .about-portrait img {
    position: absolute;
    inset: 0;
  }
}

.about-page > .expertise {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(0, 4fr);
  gap: clamp(40px, 7vw, 110px);
  margin-top: clamp(65px, 7vw, 110px);
  padding: clamp(32px, 3vw, 48px) 0;
  border-top: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
}

.about-page > .expertise h2 {
  margin: 0;
  align-self: start;
}

.about-page > .expertise .expertise-track {
  width: 100%;
  min-width: 0;
  overflow: hidden;
}

.about-page > .expertise .expertise-marquee {
  width: 100%;
}

.about-page > .expertise .expertise-set {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: clamp(18px, 2.5vw, 42px);
}

.about-page > .expertise .expertise-set[aria-hidden="true"] {
  display: none;
}

.about-page > .expertise p {
  margin: 0;
  line-height: 1.5;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .about-page > .expertise {
    grid-template-columns: 1fr;
    gap: 30px;
    margin-right: -24px;
    margin-left: -24px;
    padding-right: 0;
    padding-left: 0;
  }

  .about-page > .expertise h2 {
    padding: 0 24px;
  }

  .about-page > .expertise .expertise-track {
    width: 100%;
    max-width: 100vw;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 24px, #000 calc(100% - 24px), transparent);
    mask-image: linear-gradient(90deg, transparent, #000 24px, #000 calc(100% - 24px), transparent);
  }

  .about-page > .expertise .expertise-marquee {
    display: flex;
    width: max-content;
    animation: expertise-marquee 22s linear infinite;
  }

  .about-page > .expertise .expertise-set {
    flex: 0 0 auto;
    justify-content: flex-start;
    gap: 42px;
    padding-right: 42px;
  }

  .about-page > .expertise .expertise-set:first-child {
    padding-left: 24px;
  }

  .about-page > .expertise .expertise-set[aria-hidden="true"] {
    display: flex;
  }

}

@keyframes expertise-marquee {
  to { transform: translateX(-50%); }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .about-page > .expertise .expertise-track {
    overflow-x: auto;
    scrollbar-width: none;
  }

  .about-page > .expertise .expertise-marquee { animation: none; }

  .about-page > .expertise .expertise-set[aria-hidden="true"] {
    display: none;
  }
}

/* Resserre l'espace entre le dernier trait de la page et le footer. */
.about-page {
  padding-bottom: clamp(27px, 2.4vw, 39px);
}

@media (max-width: 600px) {
  .about-page { padding-bottom: 24px; }
}

/* Version plus compacte de la section À propos. */
.about-page {
  padding-top: clamp(120px, 9.5vw, 150px);
}

.about-page > h1 {
  margin-bottom: clamp(38px, 4.2vw, 58px);
}

.about-grid {
  gap: clamp(38px, 5.5vw, 78px);
}

.about-text {
  gap: clamp(14px, 1.35vw, 20px);
}

.about-text p {
  font-size: clamp(14px, .9vw, 15px);
  line-height: 1.72;
}

.about-page > .expertise {
  margin-top: clamp(48px, 5vw, 78px);
  padding-top: clamp(24px, 2.3vw, 36px);
  padding-bottom: clamp(24px, 2.3vw, 36px);
}

@media (max-width: 600px) {
  .about-page { padding-top: 100px; }
  .about-page > h1 { margin-bottom: 34px; }
  .about-text { gap: 16px; }
  .about-text p { font-size: 14px; line-height: 1.68; }
}
