.fw-300 {font-weight: 300;}
.fw-500 {font-weight: 500;}
.fw-700 {font-weight: 700;}
.fw-900 {font-weight: 900;}

.text-justify {text-align: justify;}

#section1, #section3, #section5 {
  color: #000000;
  background-color: #ffffff;
  padding: 50px 0;
}

#section2, #section4 {
  color: #ffffff;
  background-color: #000000;
  padding: 50px 0;
}

#section3 a span:hover {
  border-bottom-color: #000000;
  padding-bottom: 0.25rem !important;
  transition: all 0.2s;
}

#section5 a:hover{
  opacity: 1 !important;
  text-decoration: underline;
}

h1 {
  font-size: 3.5rem;
}

h2 {
  font-size: 2.5rem;
}

h3 {
  height: 105px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

h1 > sup {
  font-size: 0.45em;
}

p > sup {
  font-size: 0.8em;
}

p {
  margin: 0;
}

a {
  color: #000000;
  text-decoration: none;
}

.bg-green {
  background-color: #9ce5b4;
}

.bg-orange {
  background-color: #f99f4e;
}

.bg-bleu {
  background-color: #6391ca;
}

.bg-cta {
  background-color: #ffff00;
}

.bg-green p, .bg-orange p, .bg-bleu p {
  height: 112px;
}

.link-border-bottom {
  border-bottom: 3px solid #000000;
  transition: all 0.3s ease;
}

.bg-green .link-border-bottom:hover {
   background-color: #C4E3CB;
}

.bg-orange .link-border-bottom:hover {
  background-color: #FBB87A;
}

.bg-bleu .link-border-bottom:hover {
  background-color: #7AA9DC;
}

.link-border-bottom-yellow {
  border-bottom: 3px solid #ffff00;
}

.underbox {
  background-color: #ffff00;
  width: 75%;
  height: 8px;
}

.video-frame {
  width: 100%;
  aspect-ratio: 16/9;
  max-height: 600px;
}

.form-control {
  color: #000000;
  border-radius: 0;
}

.form-textarea {
  height: 150px;
}

.form-control:focus {
  border-color: #ffff00;
}

.btn-submit {
  border: 2px solid #ffff00;
  transition: all ease 0.3s;
}

.btn-submit:hover {
  color: #ffff00;
  background-color: #000000;
  border: 2px solid #ffff00;
}

@media (max-width: 992px) {
  .bg-green p, .bg-orange p, .bg-bleu p {
    height: 140px;
  }
}