.section1 .banner img {
  height: 400px;
  object-fit: cover;
  max-width: unset;
}
.section1 .banner-content {
  top: 22%;
  left: 5%;
}
.section1 .banner-content p {
  font-size: 2em;
  color: var(--blanc);
}
.section1 .banner-content .orange {
  font-weight: 900;
  display: block;
}
.section2 .flex-switch {
  flex-direction: column-reverse;
}
.section2 .flex-switch .col-1 {
  margin-top: 16px;
}
.section2 .flex-switch .col-1 h1 {
  margin-bottom: 20px;
}
.section2 .flex-switch .col-1 p {
  margin-bottom: 20px;
}
.section2 .flex-switch .col-2 {
  z-index: 1;
  max-width: 380px;
}
.section3 .col-1 {
  justify-content: center;
}
.section3 .col-1 > .row-1 {
  background-color: var(--orange);
  padding: 16px 5%;
}
.section3 .col-1 > .row-1 > .col-1 {
  padding-top: 0;
}
.section3 .col-1 > .row-2 {
  padding-top: 0;
}
.section3 .col-1 > .row-2 img {
  max-width: unset;
}
.section3 .col-1 h2 {
  font-weight: 900;
}
.section3 .col-1 h3 {
  padding-top: 16px;
  font-weight: 900;
}
.section3 .col-1 p {
  padding-bottom: 16px;
}
.section3 .col-1 .annee-container .annee strong {
  color: var(--mauve);
  font-weight: 800;
}
.section3 .col-1 .button:hover {
  background-color: var(--mauve);
  color: var(--orange);
}
.section3 .grid-container {
  grid-template-columns: repeat(auto-fit, minmax(342px, 1fr));
}
.section3 .col-2 {
  gap: 9px;
}
.section3 .col-2 .bloc {
  position: relative;
  display: block;
  height: 100%;
  transition: opacity 0.3s ease-in;
  max-width: 546px;
}
.section3 .col-2 .bloc .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0%;
  background-color: #febb1e3b;
  opacity: 0;
  transition: opacity 0.3s ease-in;
  z-index: 1;
}
.section3 .col-2 .bloc:hover .overlay {
  opacity: 1;
}
.section3 .col-2 .bloc .bloc-txt {
  background-color: var(--mauve);
  color: var(--blanc);
  padding: 16px 5%;
  position: absolute;
  bottom: 12%;
}
.section3 .col-2 .bloc .bloc-txt .arrow {
  display: flex;
}
.section3 .col-2 .bloc .bloc-txt .arrow::before {
  content: url("/images/fleche.png");
  margin-top: 14px;
  margin-right: 10px;
}
.section3 .col-2 .bloc .bloc-txt .arrow strong {
  font-weight: 800;
  padding-bottom: 6px;
}
.section3 .col-2 .bloc .bloc-txt .arrow p {
  color: var(--blanc);
  margin-top: 8px;
}
.section3 .row-2 {
  padding-top: 10px;
  gap: 9px;
}
.section3 .row-2 .grid-container {
  gap: 9px;
}
@media only screen and (min-width: 768px) {
  .section1 .banner-content {
    left: 10%;
  }
  .section1 .banner-content p {
    font-size: 3em;
  }
}
@media only screen and (min-width: 1024px) {
  .section1 .banner-content {
    top: 37%;
  }
  .section1 .banner-content p {
    line-height: 78px;
  }
  .section1 .banner-content .orange {
    font-size: 1.1em;
  }
  .section1 .banner img {
    height: auto;
    object-fit: none;
  }
  .section2 {
    margin-top: 60px;
  }
  .section2 .flex-switch {
    flex-direction: row;
    align-items: center;
    margin-bottom: 54px;
  }
  .section2 .flex-switch .col-1 {
    width: 46%;
  }
  .section2 .flex-switch .col-1 h1 {
    font-size: 2.4em;
    font-weight: 900;
    line-height: 46px;
  }
  .section2 .flex-switch .col-1 p {
    line-height: 21px;
  }
  .section2 .flex-switch .col-2 {
    width: 50%;
    max-width: max-content;
  }
  .section3 .row-1 .col-1 {
    width: 45%;
    height: 100%;
    justify-content: flex-start;
  }
  .section3 .row-1 .col-1 .row-1 {
    padding-top: 5%;
  }
  .section3 .row-1 .col-1 .annee-container {
    margin-top: 20px;
  }
  .section3 .row-1 .col-1 .annee-container .annee {
    display: flex;
    align-items: center;
    padding-bottom: 10px;
    column-gap: 16px;
  }
  .section3 .row-1 .col-1 .annee-container .annee strong {
    font-size: 1.3em;
    color: var(--mauve);
    font-weight: 800;
  }
  .section3 .row-1 .col-1 .annee-container .annee p {
    padding-bottom: 0;
  }
  .section3 .row-1 .col-1 .button {
    margin-top: 40px;
  }
  .section3 .row-1 .col-2 {
    width: 55%;
    display: grid;
  }
  .section3 .row-1 .col-2.grid-container {
    grid-template-columns: 1fr 1fr;
  }
  .section3 .row-1 .col-2 .bloc img {
    height: 100%;
    object-fit: cover;
  }
  .section3 .row-1 .col-2 .bloc .bloc-txt {
    position: absolute;
    bottom: 15%;
  }
  .section3 .row-2 .grid-container {
    grid-template-columns: 1.2fr 1fr;
  }
  .section3 .row-2 .grid-container img {
    height: 100%;
  }
}
@media only screen and (min-width: 1536px) {
  .section1 .banner-content p {
    font-size: 4em;
  }
  .section2 .flex-switch {
    margin-bottom: 120px;
  }
  .section3 .row-1 .col-1 {
    padding-bottom: 56px;
  }
  .section3 .row-1 .col-1 .row-1 {
    padding-top: 6%;
    padding-bottom: 6%;
    padding-left: 10%;
    padding-right: 10%;
  }
  .section3 .row-1 .col-1 h2 {
    font-size: 2em;
  }
  .section3 .row-1 .col-1 h3 {
    font-size: 1.2em;
  }
  .section3 .row-1 .col-1 .annee-container {
    margin-top: 32px;
  }
  .section3 .row-1 .col-1 .annee-container .annee strong {
    font-size: 1.6em;
  }
  .section3 .row-1 .col-1 .button {
    margin-top: 10%;
  }
  .section3 .row-1 .col-2 .bloc .bloc-txt strong {
    font-size: 1.3em;
  }
}
