@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@200&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@1,100&display=swap');

* {
  margin: 0;
  padding: 0;
  box-sizing: 0;
  font-family: 'Nunito';
  font-size: 1.1rem;
}

a[href^='tel'] {
  color: inherit; /* Inherit text color of parent element. */
  text-decoration: none; /* Remove underline. */
}

body {
  text-align: justify;
}
/* Global CSS */

.container {
  margin: 1rem 2rem 1rem 2rem;
}

h2 {
  font-size: 1.4rem;
}

.text-decoration-none {
  text-decoration: none;
}

.underline {
  text-decoration: underline;
}

.roboto {
  font-family: 'Roboto', sans-serif;
}

.white {
  color: white;
}

.black {
  color: black;
}

.ligth-green {
  color: rgb(149, 174, 156);
}

.background-green {
  background-color: rgb(149, 174, 156);
}

.flex {
  display: flex;
}

.flex-col {
  display: flex;
  flex-direction: column;
}

.justify-end {
  justify-content: flex-end;
}

.align-center {
  align-items: center;
}

.radius-5 {
  border-radius: 5%;
}

.radius-full {
  border-radius: 999%;
}

.size {
  font-size: 1rem;
}

.global-margin {
  margin: 0.5rem;
}

.mt-1 {
  margin-top: 1rem;
}

.mb-1 {
  margin-bottom: 1rem;
}

.pt-2 {
  padding-top: 2rem;
}

.pb-2 {
  padding-bottom: 2rem;
}

.container-padding {
  padding-bottom: 5rem;
  padding-top: 5rem;
}

.container-padding-spe {
  padding-top: 6rem;
}

.bold {
  font-weight: bold;
}

/* Navbar */

.fixed {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}

.navbar {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.nav-item {
  list-style-type: none;
}

/* Background Image */

.bg-image {
  background-image: url('../img/bg.jpg');
  background-repeat: no-repeat;
  background-size: cover;
  height: 20rem;
}

.title-margin {
  margin: 2rem;
}

/* Approach content */

.app-img {
  width: 8rem;
  position: absolute;
  top: 49rem;
}

.icon-container {
  display: flex;
}

.selfpicture {
  width: 8rem;
  margin-top: -10rem;
}

/* Why content */

@media (max-width: 768px) {
  .text-initial {
    text-align: initial;
  }
}

.why-img {
  width: 15rem;
}

.why-flexbox {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Who content */

.who-img {
  width: 12rem;
  border-radius: 999%;
}

.who-flexbox {
  display: flex;
  flex-direction: column;
}

/* Values content */

.values-container {
  margin-top: 2rem;
}

.values-flexbox {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}

.values-text {
  text-align: center !important;
  padding: 2rem 1rem 2rem 1rem;
}

/* Appointment content */

.apt-flexbox {
  display: flex;
  flex-direction: column;
}

/* Map content */

.map-flexbox {
  display: flex;
  justify-content: center;
}

.access-flexbox {
  display: flex;
  justify-content: space-evenly;
  margin: 2rem;
}

.map-text {
  text-align: center;
}

.online-rdv {
  background-color: rgb(158, 172, 158);
  width: 5rem;
  border: 1px solid rgb(158, 172, 158);
  border-radius: 5px;
  color: white;
  text-decoration: none;
  padding: 5px 43px;
}


/* Footer */

.footer-flexbox {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.footer2-flexbox {
  display: flex;
  justify-content: center;
}

.under-container {
  width: 100%;
  margin: auto;
}

/* Media query */
@media only screen and (max-width: 1023px) and (min-width: 150px) {
  .navbar {
    visibility: hidden;
  }
  html,
  body {
    width: 100%;
    height: 100%;
    margin: 0px;
    padding: 0px;
  }
}

@media (min-width: 1024px) {
  .navbar {
    visibility: visible;
    display: flex;
    flex-direction: row;
    justify-content: end;
  }
}

@media (min-width: 768px) {
  .why-flexbox {
    flex-direction: row;
    justify-content: center;
  }
  
  .who-flexbox {
    flex-direction: row;
    justify-content: space-around;
  }

  .values-flexbox {
    flex-direction: row;
  }
}

@media only screen and (max-width: 850px) and (min-width: 768px) {
  .values-text {
    width: 20rem;
    height: 27rem;
  }
}

@media (min-width: 850px) {
  .under-container {
    width: 67%;
    margin: auto;
  }
}

@media (min-width: 1400px) {
  .under-container {
    width: 67%;
    margin: 5rem auto 0 auto;
  }
}

@media (min-width: 850px) {
  .values-text {
    width: 20rem;
    height: 20rem;
  }
}

@media (min-width: 1022px) {
  .values-text {
    width: 20rem;
    height: 18rem;
  }
}

@media (min-width: 1024px) {
  .bg-image {
    height: 35rem;
  }
}

@media (min-width: 1440px) {
  .bg-image {
    height: 40rem;
  }
}

@media only screen and (max-width: 343px) and (min-width: 320px) {
  .app-img {
    top: 60rem;
  }
}

@media only screen and (max-width: 357px) and (min-width: 343px) {
  .app-img {
    top: 58rem;
  }
}

@media only screen and (max-width: 383px) and (min-width: 357px) {
  .app-img {
    top: 56rem;
  }
}

@media only screen and (max-width: 400px) and (min-width: 383px) {
  .app-img {
    top: 55rem;
  }
}

@media only screen and (max-width: 403px) and (min-width: 400px) {
  .app-img {
    top: 53.5rem;
  }
}

@media only screen and (max-width: 417px) and (min-width: 404px) {
  .app-img {
    top: 52rem;
  }
}

@media only screen and (max-width: 500px) and (min-width: 418px) {
  .app-img {
    top: 50rem;
  }
}

@media only screen and (max-width: 537px) and (min-width: 466px) {
  .app-img {
    top: 49rem;
  }
}

@media only screen and (max-width: 615px) and (min-width: 537px) {
  .app-img {
    top: 47rem;
  }
}

@media only screen and (max-width: 692px) and (min-width: 615px) {
  .app-img {
    top: 46rem;
  }
}

@media only screen and (max-width: 701px) and (min-width: 692px) {
  .app-img {
    top: 44rem;
  }
}

@media only screen and (max-width: 705px) and (min-width: 702px) {
  .app-img {
    top: 43rem;
  }
}

@media only screen and (max-width: 757px) and (min-width: 703px) {
  .app-img {
    top: 43rem;
  }
}

@media only screen and (max-width: 990px) and (min-width: 757px) {
  .app-img {
    top: 41rem;
  }
}

@media only screen and (max-width: 1001px) and (min-width: 990px) {
  .app-img {
    top: 40rem;
  }
}

@media only screen and (max-width: 1023px) and (min-width: 1001px) {
  .app-img {
    width: 10rem;
    top: 39rem;
  }
}

@media only screen and (max-width: 1421px) and (min-width: 1023px) {
  .app-img {
    width: 11rem;
    top: 54rem;
  }
}

@media only screen and (max-width: 1439px) and (min-width: 1421px) {
  .app-img {
    width: 12rem;
    top: 52rem;
  }
}

@media only screen and (max-width: 2000px) and (min-width: 1439px) {
  .app-img {
    width: 12rem;
    top: 57rem;
  }
}