.gal{
  margin-left: 15%;
  .content_gal{
    width: 2.2%!important;
    &[aria-hidden="false"]{
      .title_gal{
        opacity: 1;
        right: 70px;
        transition: right 1s ease, opacity 1s ease;
      }
    }
  }
  .title_gal{
    position: absolute;
    right: 50px;
    max-width: 50%;
    background: $light-blue;
    padding: 25px;
    top: 20vw;
    color: $white;
    opacity: 0;
  }
}

.cat{
  height: 50px;
  z-index: 999;
  margin: 20px 0;
  .btn-group{
    @include inlineflex();
    &:nth-of-type(1){
      label{
        margin-right: 20px;
      }
    }
    &:nth-of-type(2){
      float: right;
    }
  }
  label{
    padding: 10px;
    cursor: pointer;
    &.tous{
      border-top: 2px solid $green;
      border-bottom: 2px solid $green;
    }
    &.professionnels{
      border-top: 2px solid $red;
      border-bottom: 2px solid $red;
    }
    &.grand_public{
      border-top: 2px solid $light-blue;
      border-bottom: 2px solid $light-blue;
    }
    &.formations{
      border-top: 2px solid $grey;
      border-bottom: 2px solid $grey;
    }
    &.archive{
      border-top: 2px solid $dark-blue;
      border-bottom: 2px solid $dark-blue;
    }
  }
  input{
    visibility: hidden;
    position: absolute;
  }
}

.bandeau{
  width: 100%;
  height: auto;
  max-height: 500px;
  position: relative;
  overflow: hidden;
  &::before{
    position: absolute;
    display: block;
    content: ' ';
    background-image: url('/user/themes/lecampus/images/Trame-bleu.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    top: 0;
    z-index: -1;
  }
  .img{
    width: 70%;
    margin: auto;
  }
  .title_gal{
    position: absolute;
    right: 25%;
    max-width: 50%;
    background: $light-blue;
    padding: 25px;
    top: 20vw;
    color: $white;
    p{
      font-family: now_alt_bold;
      font-size: 1.2rem;
      font-weight: 400;
      line-height: 2.2rem;
    }
  }
}

.container{
  & > .title{
    background: $red;
    border-radius: 30px;
    width: auto;
    float:left;
    padding: 10px 20px;
    color: white;
  }
}

.start{
  min-height: calc(100vh - 325px);
  &:not(#home){
    .entete{
      border-bottom: 10px solid $light-blue;
    }
  }
}

.start:not(#form){
  &#calendrier,   &#archive{
      width: 70%;
      margin: 40px auto 40px auto;
      .header-wrapper{
        .title{
          display: flex;
        h1{
          width: auto;
          margin-bottom: 20px;
          background: $red;
          border-radius: 30px;
          padding: 10px 20px;
          color: white;
          font-size: 1.2rem;
        }
      }
    }
  }
  &#event{
    margin: 40px auto 40px auto;
    .title{
      display: flex;
    h1{
      width: auto;
      margin-bottom: 20px;
      background: $red;
      border-radius: 30px;
      padding: 10px 20px;
      color: white;
      font-size: 1.2rem;
    }
  }

  }
  .body-wrapper{
    @include inlineflex();
    justify-content: center;
    width: 100%;
    position: relative;
    .card{
      width: calc( (100% / 4) - 7.5px);
      min-width: 200px;
      margin: 0 0 10px 0 ;
      .card-header{
        position: absolute;
        width: 100%;
        right: 0;
        text-align: right;
        &.professionnels{
          background-color: $red;
        }
        &.grand_public{
          background-color: $light-blue;
        }
        &.formations{
          background-color: $grey;
        }
        .publics{
          padding: 2.5px 10px;
          color: white;
        }
      }
      .card-body{
        padding: 15px;
        background-image: url('/user/themes/lecampus/images/Trame-bleu.svg');
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
      }
    }
    .event{
      width: 45%;
      .card-content{
        @include inlineflex;
        flex-wrap: nowrap;
        justify-content: space-between;
        .reso{
          width: 20%;
          a{
            display: block;
            margin-bottom: 10px;
            img{
              margin-left: 10px;
              width: 20px;
            }
          }
        }
        .txt{
          width: 80%;
        }
      }
    }
  }
}

.start#form{
  .entete{
    border-top: 1px solid $light-blue
  }
  h2{
    margin-top: 0;
  }
  .body-wrapper{
    width: 100%;
    min-width: 250px;
    margin: auto auto 140px auto;
    form{
      width: calc( (100% / 2));
      margin-top: 20px;
      margin: auto;
      & > div{
        width: 100%;
        margin: 20px 0;
        border-bottom: 1px solid $red;
        .form-data{
          @include inlineflex();
          margin: 20px 0px;
          &> div{
            overflow: hidden;
            margin: 10px 10px;
            min-width: 100px;
            border: 2px solid $red;
            border-radius: 30px;
            padding: 10px 20px;
            &.check{
              background: $red;
              color: white;
            }
            input{
              border: none;
            }
            input[type='radio'] {
              visibility: hidden;
              position: absolute;
            }
            label{
              cursor: pointer;
            }
          }
        }
        &:nth-of-type(n+5):not(:nth-of-type(n+11)){
          width: 50%;
          float: left;
          border-bottom: 0px;
          .form-data{
            width: 100%;
            & > div{
              width: 100%;
            }
          }
        }
        &:nth-of-type(9), &:nth-of-type(10){
          border-bottom: 1px solid $red !important;
        }
        &.button-wrapper{
          background: $red;
          height: 100px;
          position: absolute;
          left: 0;
          width: 100%;
          button{
            margin-right: 25%;
            position: absolute;
            right: 0;
            top: 50%;
            -webkit-transform: translateY(-50%);
                    transform: translateY(-50%);
            background: white;
            border-radius: 30px;
            padding: 10px 35px;
            box-shadow:none;
            border:0;
          }
        }
      }
    }
    #send-valide{
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      background: $red;
      border-radius: 20px;
      position: fixed;
      width: 30%;
      height: 30%;
      left: 50%;
      top: 50%;
      padding: 50px;
      .toast{
        position: relative;
        text-align: center;
        color: white;
      }
      .ok{
        color: white;
        position: absolute;
        right: 20px;
        bottom: 20px;
      }
    }
  }
}

.header-wrapper{
.title{
  h2{
    width: auto;
    margin-bottom: 20px;
    background: $red;
    border-radius: 30px;
    width: auto;
    padding: 10px 20px;
    color: white;
    font-size: 1.2rem;
    width:115px;
  }
}
}

.content{
  width: 50%;
  margin: 4rem auto;
  p{
    margin: 10px 0;
  }
}

.content_s{
  margin: auto!important;
}

.entete{
  @include inlineflex;
  padding: 20px;
  background-image: url('/user/themes/lecampus/images/Trame-bleu.svg');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: auto;
  border-top: 10px solid $green;
  .entete_c{
    @include inlineflex;
    text-align: center;
    width: 70%;
    margin: 50px auto;
    position: relative;

    h1{
      width: auto;
      margin-bottom: 20px;
      background: $red;
      border-radius: 30px;
      width: auto;
      padding: 10px 20px;
    }
  }
}

.body-wrapper{
  .content{
    h4{
      &:not(:first-of-type){
        border-top: 1px solid black;
        padding-top: 30px;
        margin: 30px 0 0 0;
      }
    }
  }
  .sub-content{
    border-top: 1px solid black;
    margin-bottom: 20px;
    margin-top: 20px;
    & > img{
      width: 33%;
      float: left;
      margin: 20px 10px 0px 0px;
    }
  }
}

#event{
  margin-bottom: 20px;
  .content{
    margin-top: 50px;
    h2{
      float: left;
      margin-right: 20px;
    }
    .reso{
      @include inlineflex;
      flex-wrap: nowrap;
      width: 50px;
      height: 25px;
    }
  }
  .sidebar{
    margin-top: 50px;
  }
}

.sidebar{
  position: absolute;
  right: 0;
  width: 20%;
  margin: -55px auto 0 20px;
  h2{
    background: $red;
    border-radius: 100px;
    width: 100px;
    height: 100px;
  }
  .side-agenda{
    padding: 10px 20px 10px 0;
    &:not(:nth-of-type(1)){
      border-top: 1px solid $light-blue;
      &::before{
        content: " ";
        display: block;
        position: absolute;
        width: 5px;
        height: 5px;
        margin-top: -13px;
        border-radius: 10px;
        background: $light-blue;
      }
    }
    &:nth-of-type(3){
      margin-bottom: 10px;
    }
  }
  .side-all-agenda{
    background: white;
    width: auto;
    padding: 10px 20px;
    margin-bottom: 10px;
    float: left;
    border: 2px solid $red;
    border-radius: 30px;
    transition: background-color 0.3s ease;
    a{
      color: black;
    }
    &:hover{
      background-color: $red;
      transition: background-color 0.3s ease;
      a{
        color: white;
      }
    }
  }

}

#newsletter{
  padding: 20px;
  background: $light-blue;
  #mc_embed_signup{
    width: 600px;
    margin: auto;
    padding: 0 0 0 10px;
    border-radius: 100px;
    border: 1px solid $white;
    form{
      @include inlineflex();
      width: 100%;
      #mc_embed_signup_scroll{
        @include inlineflex();
        width: 100%;
        margin: auto;
        label{
          text-align: center;
          color: $white;
          margin-right: 10px;
          width: 260px;
        }
        &>input{
          width: 315px;
          padding-left: 20px;
        }
        input{
          border-radius: 30px;
          height: 31px;
          box-shadow: none;
          border: none;
        }
        .clear{
          input{
            background: $white;
            margin-left: -30px;
          }
        }
      }
    }
  }
}

#home{
  .content{
    @include inlineflex();
    & > p{
      position: relative;
      width: calc(100% / 3);
      padding: 50px 20px;
      margin-top: 10px;
      img{
        position: absolute;
        width: auto;
        height: 50px;
        top: -20px;
        left: 50%;
        -webkit-transform: translate(-50%);
                transform: translate(-50%);
      }
      &:nth-of-type(n+4){
        width: calc(100% / 4);
      }
      &:last-child{
        width: auto!important;
        margin-top: 0!important;
        margin: auto;
        a{
          display: block;
          padding: 10px 20px;
          text-align: center;
          border: 2px solid $green;
          border-radius: 30px;
          margin: auto;
          transition: background-color 0.3s ease;
        }
      }
    }
  }
}

#item{
  .content{
    @include inlineflex;
    .images_s{
      // width: calc(100% / 2 - 15px);
      width: 40%;
      // min-width: 300px;
      margin-right: 15px;
      img{
        margin-bottom: 15px;
      }
    }
    .content_s{
      width: calc(60% - 30px);
    }
    .icones{
      margin: 70px 0;
      @include inlineflex;
      justify-content: space-around;
      width: 100%;
      .icon{
        height: 50px;
        width: auto;
        max-width: 200px;
        img{
          height: 50px;
          width: 100%;
        }
        p{
          text-align: center;
        }
      }
    }
  }
}

#devis{
  @include inlineflex();
  justify-content: center;
  align-items: center;
  background-image: url('/user/themes/lecampus/images/Trame-bleu.svg');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  // height: 300px;
  .title{
    width: 200px;
    height: 200px;
    background: $red;
    border-radius: 200px;
    -webkit-transform: translateX(80px);
            transform: translateX(80px);
    h4{
      text-align: center;
      color: white;
      margin: 50% 10px 0 10px;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
    }
  }
  .txt{
    @include inlineflex();
    background: white;
    width: 25%;
    margin-right: 20px;
    height: auto;
    p{
      padding: 20px 20px 20px 100px;
      color: black;
      text-align: left;
      strong{
        font-size: 1.3rem;
      }
    }
  }
  .demander-votre-devis{
    margin-top: 0;
    -webkit-transform: translateX(-200px);
            transform: translateX(-200px);
  }
  .img{
    width: 400px;
    height: 300px;
    overflow: hidden;
    img{
      width: auto;
      height: 400px;
    }
  }
}

#devis{
  &.item, &.sublog{
    background: $red;
    height: auto;
    padding: 20px 0;
    a{
      color: white;
    .title{
      vertical-align: baseline;
      border-radius: 30px;
      border: 1px solid white;
      padding: 5px 20px;
      height: 35px;
      width: auto;
      -webkit-transform: translateX(0);
              transform: translateX(0);
      }
      &:hover{
        color: black;
        .title{
          background: white;
          transition: background 0.3s ease;
        }
      }
    }
  }
}

// .bx-viewport{
//     height: 30vw!important;
// }

#reco{
  background: $dark-blue;
  .title{
    display: flex;
    cursor: pointer;
    width: 100%;
    padding: 10px;
    h2{
      width: auto;
      margin: auto;
      color: white;
      padding: 10px;
      text-align: center;
      border-top: 1px solid white;
      border-bottom: 1px solid white;
      font-size: 1rem;
      &::after{
        display: inline-flex;
        margin-left: 10px;
        content: " ";
        background: url('../images/fleche-top.svg');
        background-size: 15px 18px;
        background-repeat: no-repeat;
        width: 15px;
        height: 18px;
      }
    }
    &.open{
      h2:after{
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg);
      }
    }
  }
  .txt{
    z-index: -1;
    position: absolute;
    width: 100%;
    padding-top: 20px;
    @include inlineflex;
    justify-content: center;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    p{
      color: white;
      width: 300px;
      a{
        color: white;
        text-decoration: underline;
      }
    }
    &.open{
      z-index: 999;
      background: $dark-blue;
      .item{
        display: block;
      }
    }
    h3{
      color: $green;
    }
  }
  .item{
    display: none;
    margin: 0 0px 20px 20px;
    border-left: 1px solid white;
    padding-left: 20px;
    img{
      width: 50px;
      margin-bottom: 10px;
    }
  }
}

.content_s{
  &.map{
    width: 100%!important;
    height: auto;
    p{
      &:last-child{
        height: 500px;
      }
    }
    a#carte{
      display: block;
      width: 100%;
      height: 100%;
    }
  }
}

#event{
  .title{
    width: 45%;
    margin: auto;
  }
  .head-event{
    .tags{
      width: 100%;
      &.professionnels{
        background-color: $red;
      }
      &.grand_public{
        background-color: $light-blue;
      }
      &.formations{
        background-color: $grey;
      }
      &.publics{
        padding: 2.5px 10px;
        color: white;
      }
    }
}
.card-header{
  @include inlineflex;
  flex-direction: column;
  width: 100%;
  &.professionnels{
    background-color: $red;
  }
  &.grand_public{
    background-color: $light-blue;
  }
  &.formations{
    background-color: $grey;
  }
  .publics{
    text-align: right;

    &.publics{
      padding: 2.5px 10px;
      color: white;
    }
  }
}
.card-body{
  padding: 15px;
  background-image: url('/user/themes/lecampus/images/Trame-bleu.svg');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  }
  .card-content{
    margin-top: 20px;
  }
}

.demander-votre-devis{
  padding: 10px;
  z-index: 999;
  background: $red;
  position: absolute;
  width: 200px;
  height: 200px;
  right: 100px;
  margin-top: -100px;
  color: white;
  text-align: center;
  strong{
    font-weight: bold!important;
  }
  a{
    color: white;
  }
  img{
    margin-top: 10px;
    width: 50px;
  }
}

#sublog{
  .body-wrapper{
    background-image: url('../images/Trame-gris.svg');
    background-repeat: no-repeat;

  }
  .content{
    @include inlineflex;
    width: 90%;
    flex-direction: row-reverse;
    justify-content: space-between;
    & > p{
        font-size: 1.2rem;
        font-family: $Bold;
      }
  }
  svg{
      pointer-events: none;
  }
  .mapsalles{
    width: 50%;
    position: relative;
    .contour{
      position: relative;
      z-index: 1;
      pointer-events: none;
      display: inline-block;
      width: 100%;
      vertical-align: middle;
      overflow: hidden;
    }
    .fond{
      position: absolute;
      display: inline-block;
      width: 100%;
      vertical-align: middle;
      overflow: hidden;
      z-index:0;
      left: 0;
      top: 5.3%;
      path{
        fill: none;
        pointer-events: all;
        transition: fill 0.3s ease;
        &:hover{
          fill: $light-blue!important;
          transition: fill 0.3s ease;
        }
      }
    }
  }
  .txt{
    width: 30%;
  }
  .content_salle{
    // display: none;
    visibility: hidden;

    position: absolute;
    left: 50%;
    top: 300px;
    width: 40%;
    background: white;
    & > p{
      padding-left: 10px;
    }
    .header-salles{
      background: $light-blue;
      padding: 5px 10px;
      color: white;
      margin-top: 0;
      width: 100%;
      h3{
        width: 100%;
      }
      img{
        display: none;
      }
    }
    h4{
      background: $green;
      font-size: 1.2rem;
      font-family: $Bold;
      padding: 5px 10px;
      margin-top: -1px;
    }
    .bx-wrapper .bx-controls-auto, .bx-wrapper .bx-pager{
      bottom: 10px!important;
    }
    .bx-controls-direction{
      display: none;
    }
    .bx-pager-link {
      background: white!important;
      &.active{
        background: black!important;
      }
    }
  }
}

#default{
  .header-wrapper{
    width: 45%;
    margin-top: 50px;
    margin: auto;
  }
  .body-wrapper{
    margin-bottom: 50px;
  }
  .title{
    width: 80%;
    margin: auto;
  }
  .txt{
    margin:auto;
  }
  p{
    margin-bottom: 10px;
  }
}

.ok{
  cursor: pointer;
}