/* =========================================================
   PAGE PROFESSIONNEL — ZONE TDAH
   ========================================================= */

body.page-professionnel-site {
  --pro-bleu: #082d57;

  --pro-vert: #159b86;
  --pro-vert-fonce: #0e7568;
  --pro-vert-pale: #e7f7f2;

  --pro-texte: #263443;
  --pro-texte-doux: #5d6c78;

  --pro-bordure: #d5e7e3;

  --pro-ombre:
    0 12px 32px rgba(8, 45, 87, 0.08);
}


body.page-professionnel-site
main.page-professionnel {
  width: 100%;

  padding:
    168px
    0
    5rem;

  background:
    linear-gradient(
      180deg,
      #f4faf8 0%,
      #ffffff 38%,
      #f7faf9 100%
    );

  color: var(--pro-texte);

  font-family:
    "Be Vietnam Pro",
    Arial,
    sans-serif;
}


body.page-professionnel-site
main.page-professionnel * {
  box-sizing: border-box;
}


/* =========================================================
   PAGE PROFESSIONNEL — ZONE TDAH
   ========================================================= */

body.page-professionnel-site {
  --pro-bleu: #082d57;

  --pro-vert: #159b86;
  --pro-vert-fonce: #0e7568;
  --pro-vert-pale: #e8f7f3;

  --pro-texte: #263443;
  --pro-texte-doux: #5d6b77;

  --pro-bordure: #d5e7e3;

  --pro-ombre:
    0 12px 32px rgba(8, 45, 87, 0.08);
}


body.page-professionnel-site
main.page-professionnel {
  width: 100%;

  padding:
    160px
    0
    5rem;

  background:
    linear-gradient(
      180deg,
      #f4faf8 0%,
      #ffffff 38%,
      #f7faf9 100%
    );

  color: var(--pro-texte);

  font-family:
    "Be Vietnam Pro",
    Arial,
    sans-serif;
}


body.page-professionnel-site
main.page-professionnel * {
  box-sizing: border-box;
}


/* =========================================================
   INTRO PROFESSIONNEL
   ========================================================= */

body.page-professionnel-site
.professionnel-intro {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    380px;

  gap: 2.5rem;

  align-items: center;

  width:
    min(
      1160px,
      calc(100% - 2rem)
    );

  margin:
    0 auto 2rem;

  padding:
    clamp(
      1.7rem,
      4vw,
      3rem
    );

  box-sizing: border-box;

  border:
    1px solid
    var(--pro-bordure);

  border-radius: 30px;

  background:
    radial-gradient(
      circle at 92% 10%,
      rgba(21, 155, 134, 0.13),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      #ffffff,
      var(--pro-vert-pale)
    );

  box-shadow:
    0 17px 45px
    rgba(8, 45, 87, 0.10);
}


/* =========================================================
   TEXTE
   ========================================================= */

body.page-professionnel-site
.professionnel-intro-texte {
  width: 100%;
  max-width: none;

  min-width: 0;

  margin: 0;
  padding: 0;

  text-align: left;
}


body.page-professionnel-site
.sur-titre-professionnel {
  margin:
    0
    0
    1.5rem;

  color:
    var(--pro-vert-fonce);

  font-size: 1rem;
  font-weight: 850;

  line-height: 1.35;

  letter-spacing: 0.075em;

  text-transform: uppercase;
}


body.page-professionnel-site
.professionnel-intro h2 {
  margin:
    0
    0
    1.15rem;

  color:
    var(--pro-bleu);

  font-size:
    clamp(
      2.3rem,
      4vw,
      3.5rem
    );

  line-height: 1.08;

  letter-spacing: -0.035em;

  text-align: left;
}


body.page-professionnel-site
.professionnel-intro
p:not(.sur-titre-professionnel) {
  width: 100%;
  max-width: none;

  margin:
    0
    0
    0.85rem;

  color:
    var(--pro-texte-doux);

  font-size: 1.25rem;

  line-height: 1.65;

  text-align: left;
}

/* Enlever les bandes/blocs blancs dans l'intro */

body.page-professionnel-site
.professionnel-intro
p {
  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;
}


/* Premier paragraphe plus présent */

body.page-professionnel-site
.professionnel-intro
.professionnel-intro-principale {
  color:
    #364958 !important;

  font-size:
    1.2rem !important;

  font-weight: 600;

  line-height: 1.65;
}


/* =========================================================
   PROFESSIONNEL — IMAGE HARMONISÉE
   ========================================================= */

body.page-professionnel-site
.professionnel-intro-image {
  width: 100%;

  margin: 0;

  overflow: hidden;

  border-radius: 24px;

  box-shadow:
    0 13px 32px
    rgba(8, 45, 87, 0.12);
}

body.page-professionnel-site
.professionnel-intro-image img {
  display: block;

  width: 100%;
  height: 330px;

  margin: 0;

  object-fit: cover;
  object-position: center;

  border-radius: 0;
}



/* =========================================================
   SECTION EN ATTENTE
   ========================================================= */

.professionnel-attente {
  width:
    min(
      1080px,
      calc(100% - 2rem)
    );

  margin: 0 auto;

  padding:
    2.2rem
    2.4rem;

  border:
    1px solid
    var(--pro-bordure);

  border-radius: 24px;

  background:
    #ffffff;

  box-shadow:
    var(--pro-ombre);

  text-align: left;
}


.professionnel-attente h2 {
  margin:
    0
    auto
    0.9rem;

  max-width: 760px;

  color:
    var(--pro-bleu);

  font-size:
    clamp(
      1.7rem,
      3vw,
      2.4rem
    );

  line-height: 1.2;
}


.professionnel-attente > p:not(.sur-titre-professionnel) {
  max-width: 720px;

  margin:
    0
    auto
    1.8rem;

  color:
    var(--pro-texte-doux);

  line-height: 1.55;
}


/* =========================================================
   3 PETITES CARTES
   ========================================================= */

.professionnel-types {
  display: grid;

  grid-template-columns:
    repeat( 3, minmax(0, 1fr) );
  gap: 1rem;
}


.professionnel-types > div {
  display: flex;
  flex-direction: column;
  align-items: center;

  padding:
    1.4rem
    1.3rem;

  border:
    1px solid
    var(--pro-bordure);

  border-radius: 18px;

  background:
    linear-gradient(
      180deg,
      #ffffff,
      #f7fbfa
    );

  text-align: center;
}
 

.professionnel-types h3 {
  margin:
    0
    0
    0.45rem;
text-align: center;
  color:
    var(--pro-bleu);

  font-size: 1.08rem;
}


.professionnel-types p {
  max-width: 260px;

  margin: 0 auto;

  color:
    var(--pro-texte-doux);

  font-size: 1rem;
  line-height: 1.5;

  text-align: center;
}


/* =========================================================
   TABLETTE — PROFESSIONNEL
   ========================================================= */

@media (max-width: 980px) {

  body.page-professionnel-site
  main.page-professionnel {
    padding-top: 130px;
  }


  body.page-professionnel-site
  .professionnel-intro {
    grid-template-columns: 1fr;

    gap: 1.6rem;

    width:
      min(
        760px,
        calc(100% - 2rem)
      );

    padding:
      2rem;

    border-radius: 26px;
  }


  body.page-professionnel-site
  .professionnel-intro-texte {
    width: 100%;
    max-width: none;
  }


  body.page-professionnel-site
  .professionnel-intro-image {
    width: 100%;
    max-width: 500px;

    margin:
      0
      auto;

    align-self: auto;
  }


  body.page-professionnel-site
  .professionnel-intro-image img {
    width: 100%;
    height: auto;

    object-fit: cover;

    border-radius: 20px;
  }


  body.page-professionnel-site
  .professionnel-intro h2 {
    font-size:
      clamp(
        2.3rem,
        6vw,
        3.4rem
      );
  }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

  body.page-professionnel-site
  main.page-professionnel {
    padding:
      110px
      0
      3rem;
  }


  .professionnel-intro,
  .professionnel-attente {
    width:
      calc(
        100% - 1rem
      );

    padding:
      1.5rem
      1.3rem;
  }


  .professionnel-types {
    grid-template-columns: 1fr;
  }

 

  body.page-professionnel-site
  .professionnel-intro {
    width:
      calc(
        100% - 1rem
      );

    gap: 1.4rem;

    margin-bottom: 1.5rem;

    padding:
      1.4rem
      1.2rem;

    border-radius: 22px;
  }

  body.page-professionnel-site
  .professionnel-intro h2 {
    margin-bottom: 1rem;

    font-size: 2.25rem;

    line-height: 1.1;

    letter-spacing: -0.025em;
  }
 body.page-professionnel-site
  .sur-titre-professionnel {
    margin-bottom: 1rem;

    font-size: 0.85rem;

    line-height: 1.35;
  }

  body.page-professionnel-site
  .professionnel-intro
  p:not(.sur-titre-professionnel) {
    margin-bottom: 0.7rem;

    font-size: 1rem;

    line-height: 1.55;
  }


   /* Premier paragraphe plus important */

  body.page-professionnel-site
  .professionnel-intro-texte
  p:first-of-type:not(.sur-titre-professionnel) {
    font-size: 1.05rem;

    line-height: 1.55;
  }


  body.page-professionnel-site
  .professionnel-intro-image {
    width: 100%;
    max-width: none;

    margin: 0;
  }


  body.page-professionnel-site
  .professionnel-intro-image img {
    display: block;

    width: 100%;
    height: auto;

    margin: 0;

    border-radius: 18px;

    object-fit: cover;
  }
}
