@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lobster&display=swap');
    @font-face {
      font-family: Montserrat;
      src: url("../font/Montserrat-Regular.otf") format("opentype");
    }
    @font-face {
      font-family: "Northwell";
      src: url("../font/Northwell.ttf") format("truetype");
    }
    html, body {
      height: 100%;
      background-color: #fff;
      padding: 0; margin: 0;
      overflow-x: clip;
      font-family: 'Montserrat';
      color: #58585a;
    }
    .row.page { height: 100%; background-color: white; }
    .container {
      max-width: 100%;
      height: 100%;
    }
    .batiment {
      background-image: url('../img/background.jpg');
      height: 100%;
      background-position: bottom;
      background-size: cover;
    }
    .batiment2 {
      background-image: url('../img/background-2.jpg');
      height: 100%;
      background-position: bottom;
      background-size: cover;
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      transition: all 0.6s;
      z-index: 3;
    }
    .fondDore {
      /*background-image: url('../img/background-color.jpg');*/
      height: 100%;
      /*background-size: cover;*/
      background-color: #f29128;
        overflow: auto;
    }
    .ml {
      top: 100px;
      font-size: 0.7em;
    }
    .dore {
      color: #f29128;
    }
    .telephone {
      color: #3b4137;
      font-size: 3.5em;
      font-weight: bold;
      font-family: 'DIN';
    }
    .gris { color: #3b4137; }
    .prochainement {
      font-family: Minion;
      font-size: 3em;
      line-height: 1.2em;
    }
    .logo-weassocies {
      text-align: left;
    }
    .logo-weassocies {
      text-align: right;
    }
    .texte {
      margin: 0;
      font-size: 0.75em;
      line-height: 1.1em;
    }
    a {
      transition: all 0.2s;
    }
    a:hover {
      text-decoration: underline;
      color: #405aba;
    }

    @media screen and (max-width: 956px) {
      .prochainement {
        font-size: 2em;
      }
      .ml {
        position: relative;
        bottom: 0;
      }
    }
    @media screen and (max-width: 830px) {
      .telephone {
        font-size: 3em;
      }
    }
    @media screen and (max-width: 767px) {
      .batiment {
        height: 40%;
        background-position: center;
      }
      .batiment2 {
        height: 40%;
        background-position: center;
      }
      .prochainement {
        font-size: 2em;
      }
      .logo-weassocies {
        text-align: center;
        padding: 0!important;
      }
      .logo-weassocies {
        text-align: center;
        padding: 0!important;
      }
	  .fondDore {
	  	min-height: 910px;
	  }
    }
    @media screen and (max-width: 424px) {
      .telephone {
        font-size: 2em;
      }
    }

    .btn_bas {
      position: absolute;
      bottom: 10px;
      right: 0;
      width: 40%;
      text-align: center;
      cursor: pointer;
    }
    .en-tete {
      width: calc(100% - 25%);
      height: 100%;
      position: relative;
    }
    .menu-droite {
      position: fixed;
      width: 25%;
      max-width: 100%;
      z-index: 4;
      right: 0px;
      top: 0;
      overflow-x: hidden;
      overflow-y: auto;
      color: #191c1f;
      /*background-color: #f29128;*/
      background-color: #ddf1f5;
      height: 100%;
      transition: all 0.2s;
    }
    .menu-droite:hover {
      right: 0;
    }
    .menu-droite.active {
      display: block;
      right: 0;
    }
    .menu-droite .btn_ferme {
      width: 100%;
      padding: 10px;
      text-align: center;
      background-color: rgba(226, 190, 140, 0.4);
      cursor: pointer;
      opacity: 0;
      transition: all 0.2s;
      position: absolute;
      z-index: 2;
    }
    .menu-droite.active .btn_ferme {
      opacity: 1;
    }
    .btn_inscription {
      /*width: 120px;*/
      padding: 28px;
      text-align: center;
      /*background-color: rgba(226, 190, 140, 0.4);*/
      cursor: pointer;
      transition: all 0.2s;
      position: fixed;
      top: 0;
      right: 280px;
      z-index: 4;
      font-size: 18px;
      animation-name: inscription;
      animation-duration: 4s;
      animation-iteration-count: infinite;
    }

    @keyframes inscription {
      0% { right: 280px; }
      50% { right: 310px;}
      100% { right: 280px;}
    }

    .bouton {
      cursor: pointer;
      padding: 12px 16px;
      border-radius: 2px;
      background-color: #f29128;
      border: 4px solid transparent;
      color: white;
      transition: all 0.2s;
      outline: none;
    }
    .bouton:focus {
      outline: none;
    }
    .bouton:hover {
      background-color: transparent;
      color: #f29128;
      border-color: #f29128;
      outline: none;
    }
    .logo-haut {
      width: calc(100% - 460px);
      position: fixed;
      top: 32px;
      text-align: center;
    }
    .menu-top {
      width: calc(100% - 25%);
      height: 83px;
      z-index: 3;
      padding: 4px 0;
      padding-right: 12px;
      background-color: #fff;
      position: fixed;
      top: 0;
      text-align: right;
      display: none;
      z-index: 5;
    }
    .menu-top .logo {
      padding-right: 23px;
    }
    .menu-hamb img {
      vertical-align: middle;
    }
    .menu-hamb {
      position: fixed;
      z-index: 6;
      top: 0;
      left: 0;
      padding: 19px 28px;
      font-size: 30px;
      color: white;
      cursor: pointer;
    }
    .menu-gauche {
      position: fixed;
      width: 400px;
      max-width: 100%;
      z-index: 4;
      left: -600px;
      top: 0;
      font-size: 12px;
      overflow-x: hidden;
      overflow-y: auto;
      color: #444;

      /*background-image: url('./img/background-color.jpg');*/
      height: 100%;
      /*background-size: cover;*/
      background-color: #f29128;
      transition: all 0.2s;
    }



    @media screen and (max-width: 1644px) {
      .logo-haut {
        width: 66%;
        top: 144px;
        left: 90px;
      }
    }
    @media screen and (max-width: 1092px) {
      .en-tete, .menu-top {
        width: 100%;
      }
      .logo-haut {
        width: 83%;
        top: 144px;
        left: 90px;
      }
      .menu-droite {
        width: 100%;
        position: relative;
        /*display: none;*/
      }
/*      .logo-haut {
        width: 100%;
        top: 74px;
      }*/
      .logo-haut img {
        max-width: 90%;
      }
      .menu-top .logo {
        padding-right: 0;
      }

      .btn_inscription {
        right: -20px;
        z-index: 4;
        font-size: 18px;
      }

      @keyframes inscription {
        0% { right: -20px; }
        50% { right: 10px;}
        100% { right: -20px;}
      }

    }


/*    .retour {
      cursor: pointer;
      padding: 12px 16px;
      border-radius: 50px;
      background-color: #e2be8c;
      border: 4px solid transparent;
      color: white;
      transition: all 0.2s;
      outline: none;
    }
    .retour:focus {
      outline: none;
    }
    .retour:hover {
      background-color: white;
      color: #d79163;
      border-color: #d79163;
      outline: none;
    }*/

    h3, h4 {
      color: #f29128;
    }
    .retour {
      cursor: pointer;
      padding: 12px 16px;
      font-size: 72px;
      opacity: 0.8;
      color: white;
      transition: all 0.2s;
      outline: none;
    }
    .retour:hover {
      opacity: 1;
      color: white;
      outline: none;
    }

    .picto {
      box-shadow: 0px 0px 0px 0px #000000;
      transition: all 0.3s;
    }
/*    .picto:hover {
      box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.2);
    }*/
    .picto img {
      max-width: 50px;
      display: block;
      margin: auto;
    }

    .bandeau_haut {
      width: 100%;
      max-width: 400px;
      height: 58px;
      line-height: 52px;
      position: absolute;
      top: 0;
      z-index: 1;
      right: 0;
      background-color: #fff;
      color: #54c5d0;
      /*text-shadow: 0px 0px 5px #000000;*/
      font-family: 'Open Sans';
      font-size: 1em;
      font-weight: bold;
      text-align: center;
      border:  5px solid #54c5d0;
    }
    .bandeau_haut:before {
    content: '';
    transform: rotate(75deg);
    background-color: #fff;
    width: 117px;
    height: 108%;
    display: block;
    left: -54px;
    top: -40px;
    position: absolute;
    z-index: -1;
    border-bottom: 5px solid #54c5d0;
    }
    .bandeau_haut:after {
    content: '';
    width: 117px;
    height: 20px;
    display: block;
    left: -16px;
    top: -5px;
    position: absolute;
    z-index: -1;
    border-top: 5px solid #54c5d0;
    }


    .bandeau_haut_noir {
      width: 100%;
      max-width: 540px;
      min-height: 68px;
      line-height: 26px;
      padding-top: 8px;
      position: absolute;
      top: 58px;
      overflow-y: clip;
      z-index: 1;
      right: 0;
      background-color: #482683;
      color: white;
      text-shadow: 0px 0px 5px #482683;
      font-family: 'Open Sans';
      font-size: 0.85em;
      font-weight: bold;
      text-align: center;
    }
    .bandeau_haut_noir:before {
      content: '';
      transform: rotate(75deg);
      background-color: #482683;
      width: 126px;
      height: 108%;
      display: block;
      left: -48px;
      top: -35px;
      position: absolute;
      z-index: -1;
    }


    @media screen and (max-width: 825px) {
      .logo-haut {
        width: 70px;
        top: 10px;
        right: 6px;
        left: auto;
      }
      .menu-hamb {
        padding: 17px 22px;
      }
      .menu-hamb img {
        max-height: 28px;
        height: auto;
      }
      .bandeau_haut {
        top: 80px !important;
        max-width: 100%!important;
        left: 0!important;
      }
      .bandeau_haut:before {
        width: 0!important;
        height: 0!important;
      }
      .bandeau_haut_noir {
        top: 160px !important;
        max-width: 100%!important;
        font-size: 0.9em;
        left: 0!important;
      }
      .bandeau_haut_noir:before {
        width: 0!important;
        height: 0!important;
      }

    }

    @media screen and (max-width: 450px) {
      .nouvelle_residence { display: none; }
    }
    @media screen and (max-width: 375px) {

      .bandeau_haut_noir {
        top: 139px !important;
        max-width: 100%!important;
        font-size: 1em;
        left: 0!important;
        line-height: 24px;
        padding: 10px 0;
      }
    }

.modal.show .modal-dialog {
  align-items: stretch;
  min-width: calc(100% - 3.5rem);
  min-height: calc(100% - 3.5rem);
}


.point_repere {
  align-items: center;
}
.point_repere .repere_ligne {
  display: flex;
  width: 100%;
  align-items: flex-end;
  flex-grow: 3;
  margin-top: 10px;
}
.point_repere .repere_ligne div {
  border-bottom: 1px solid #1f1e53;
  padding: 4px 8px;
  text-align: left;
  font-size: 14px;
}
.reperes {
  font-size: 30px;
  line-height: 30px;
  font-weight: lighter;
  text-transform: uppercase;
  color: #1f1e53;
  margin-bottom: 20px;
}


h5.motcle {
  font-size: 2.2em;
  color: white;
  font-family: 'Lobster', cursive;
}