/* Candidats ---------------------------------------------------------------- */

/* Hero vidéo */
.cand-hero {
  position: relative; overflow: hidden; background: var(--ink); color: var(--white);
  min-height: clamp(560px, 80vh, 820px); display: flex; align-items: flex-end;
}
.cand-hero__shade { background: linear-gradient(180deg, rgba(9, 9, 2, .5) 0%, rgba(9, 9, 2, .15) 30%, rgba(9, 9, 2, .75) 100%); }
.cand-hero__inner {
  position: relative; width: 100%; max-width: var(--wrap); margin: 0 auto;
  padding: clamp(120px, 14vw, 200px) var(--gutter) clamp(64px, 8vw, 112px);
  display: flex; flex-direction: column; gap: 22px;
}
.cand-hero__h1 {
  max-width: 1100px; color: var(--white);
  font-size: clamp(40px, 5.6vw, 84px); line-height: 1.02; font-weight: 600; letter-spacing: -.02em;
  display: flex; flex-wrap: wrap; align-items: flex-end; column-gap: .3em; row-gap: .1em;
}
.cand-hero__smile { width: 1.6em; transform: translateY(-.08em); }
.cand-hero__cta { padding-top: 6px; }

/* Phrase d'introduction */
.cand-intro { max-width: 1100px; padding-block: clamp(72px, 10vw, 140px); text-align: center; }
.cand-intro__text { font-size: clamp(24px, 2.6vw, 38px); line-height: 1.3; font-weight: 500; letter-spacing: -.01em; text-wrap: balance; }

/* Vous êtes le talent */
.cand-talent {
  padding-bottom: var(--section-y);
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr));
  gap: clamp(40px, 6vw, 96px); align-items: center;
}
.cand-talent__media {
  position: relative; aspect-ratio: 4 / 5; max-height: 760px;
  border-radius: var(--radius-lg); overflow: hidden; background: var(--gray);
}
.cand-talent__img { transition: transform 1.6s var(--ease-out); }
.cand-talent__media:hover .cand-talent__img { transform: scale(1.05); }
.cand-talent__text { display: flex; flex-direction: column; gap: 22px; }
.cand-talent__cta { padding-top: 6px; }
/* Libellé long : peut passer à la ligne à 375 px plutôt que déborder. */
.cand-talent__cta .btn { white-space: normal; text-align: center; }

/* Bandeau entretien */
.cand-interview { padding-bottom: var(--section-y); }
.cand-interview__card {
  border-radius: var(--radius-lg); overflow: hidden;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); align-items: stretch;
}
.cand-interview__text {
  padding: clamp(36px, 5vw, 80px);
  display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 20px;
}
.cand-interview__title { font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; font-weight: 600; letter-spacing: -.015em; }
.cand-interview__media { position: relative; min-height: 340px; background: var(--ink); }

/* Astuces (articles du journal) */
.tip-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 12px; }
.tip-card {
  display: flex; flex-direction: column; justify-content: space-between; gap: 24px;
  min-height: 260px; padding: 28px; border-radius: var(--radius); background: var(--white);
}
.tip-card__body { display: flex; flex-direction: column; gap: 12px; }
.tip-card__num { font-size: 13px; font-weight: 700; }
.tip-card h3 { font-size: 20px; line-height: 1.25; font-weight: 600; letter-spacing: -.01em; }
.tip-card p { font-size: 15px; line-height: 1.55; }
.tip-card__more { font-size: 15px; font-weight: 700; }

/* Appel final */
.cand-cta {
  padding-block: clamp(64px, 8vw, 112px);
  display: flex; justify-content: space-between; align-items: center; gap: 32px; flex-wrap: wrap;
}
.cand-cta__title { font-size: clamp(30px, 3.4vw, 48px); line-height: 1.05; font-weight: 600; letter-spacing: -.015em; }

@media (prefers-reduced-motion: reduce) {
  .cand-talent__img { transition: none; }
  .cand-talent__media:hover .cand-talent__img { transform: none; }
}
