
 button {
	 position: relative;
	 display: inline-block;
	 cursor: pointer;
	 outline: none;
	 border: 0;
	 vertical-align: middle;
	 text-decoration: none;
	 background: transparent;
	 padding: 0 30px 0 50px;
	 font-size: inherit;
	 font-family: inherit;
	 height: auto;
}
 button.learn-more .circle {
	 transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
	 position: absolute;
	 margin: 0;
	 left: 0;
	 width: 2.5rem;
	 height: 2.5rem;
	 border-radius: 1.625rem;
	 border-color: inherit;
	 top: 50%;
	 transform: translate3d(0, -50%, 0);
	 background: #fff;
}
 button.learn-more .circle .icon {
	 transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
	 position: absolute;
	 top: 0;
	 bottom: 0;
	 margin: auto;
	 background: rgb(0, 194, 168);
}
 button.learn-more .circle .icon.arrow {
	 transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
	 left: 0.375rem;
	 width: 1.125rem;
	 height: 0.125rem;
	 background: none;
	 border-color: inherit;
}
 button.learn-more .circle .icon.arrow::before {
	 position: absolute;
	 content: "";
	 top: -0.25rem;
	 right: 0.0625rem;
	 width: 0.625rem;
	 height: 0.625rem;
	 border-top: 0.125rem solid rgb(0, 194, 168);
	 border-right: 0.125rem solid rgb(0, 194, 168);
	 transform: rotate(45deg);
}
 button.learn-more .button-text {
	 transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
	 position: relative;
	 line-height: 1;
	 text-align: center;
	 color: #fff;
	 font-weight: 700;
	 line-height: 1.6;
	 text-align: center;
	 text-transform: uppercase;
}
 button:hover .circle {
	 width: 100%;
}
 button:hover .circle .icon.arrow {
	 background: rgb(0, 194, 168);
	 transform: translate(1rem, 0);
}
 button:hover .button-text {
	 color: #282936;
}
 @supports (display: grid) {
	 
	 #container {
    position: relative;
    bottom: 220px;
		 grid-area: main;
		 align-self: center;
		 justify-self: center;
	}
}
 


.menu {
  background-color: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  padding: 0;
}
.line {
  fill: none;
  stroke: rgba(0,0,0,.7);
  stroke-width: 6;
  transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
    stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
}
.line1 {
  stroke-dasharray: 60 207;
  stroke-width: 6;
}
.line2 {
  stroke-dasharray: 60 60;
  stroke-width: 6;
}
.line3 {
  stroke-dasharray: 60 207;
  stroke-width: 6;
}
.opened .line1 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
  stroke-width: 6;
}
.opened .line2 {
  stroke-dasharray: 1 60;
  stroke-dashoffset: -30;
  stroke-width: 6;
}
.opened .line3 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
  stroke-width: 6;
}





#bouton-top{
  text-align: right;
  position: fixed;
  z-index: 999999;
  font-size: 28px;
  border-radius: 64px;
  bottom: 35px;
  right: 35px;
}

#bouton-top .top{
  padding: 3px 11px 5px;
  border-radius: 50%;
  color: white;
  background: rgba(0, 0, 0, 0.514);

}

#bouton-top:hover .top:hover{
  background: rgb(0, 194, 168);
  color: white;
}


.splash {
  position: fixed;
  z-index: 99999999;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background: white;
  transition: all 1s ease-in-out;
}
.splash .spinner {
  margin: 100px auto;
  width: 40px;
  height: 40px;
  position: relative;
  text-align: center;
  -webkit-animation: sk-rotate 2s infinite linear;
  animation: sk-rotate 2s infinite linear;
}
.splash.hidden{
  visibility: hidden;
  opacity: 0;
}
.splash .dot1, .splash .dot2 {
  width: 60%;
  height: 60%;
  display: inline-block;
  position: absolute;
  top: 0;
  background-color: rgb(0, 194, 168);
  border-radius: 100%;
  -webkit-animation: sk-bounce 2s infinite ease-in-out;
  animation: sk-bounce 2s infinite ease-in-out;
}
.splash .dot2 {
  top: auto;
  bottom: 0;
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}
@-webkit-keyframes sk-rotate {
  100% {
    -webkit-transform: rotate(360deg);
 }
}
@keyframes sk-rotate {
  100% {
    transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
 }
}
@-webkit-keyframes sk-bounce {
  0%, 100% {
    -webkit-transform: scale(0);
 }
  50% {
    -webkit-transform: scale(1);
 }
}
@keyframes sk-bounce {
  0%, 100% {
    transform: scale(0);
    -webkit-transform: scale(0);
 }
  50% {
    transform: scale(1);
    -webkit-transform: scale(1);
 }
}


html {
  scroll-behavior: smooth;
}




.container-fluid .blanc{
    margin: 199px 50px 348px 50px;
    background-color: rgba(255, 255, 255, 0.6);
    padding: 30px;
    border-radius: 10px;
    font-size: 21px; 
}


li{display:inline-block;min-width:50px;}
li a {
    text-decoration:none;
    line-height: 50px;
    padding: 0 10px;
    text-align: center;
    font-size: 1.3em;
}
li a:after {
  content: '';
  display: block;
  margin: auto;
  height: 4px;
  bottom: 10px;
  width: 0;
  background: transparent;
  transition: width .5s ease, background-color .5s ease;
}
li a:hover:after, li a:focus:after {
  width: 90%;
  background: rgb(0, 194, 168);
  
}


.dark #style-changer {
  background: #222;
  border-color: #494949;
  box-shadow: 10px 10px 0 0 rgb(70 70 70 / 10%);
}		

.dark #style-changer .changer-opener {
  background: #222;
  border-color: #494949;
  box-shadow: 10px 10px 0 0 rgb(70 70 70 / 10%);
}


.w-100 {
  height: 753px;
  width: 100%!important;
}

/* Effet des lettres */
.ml7 {
  position: relative;
  font-weight: 900;
  font-size: 3.7em;
}
.ml7 .text-wrapper {
  position: relative;
  display: inline-block;
  padding-top: 0.2em;
  padding-right: 0.05em;
  padding-bottom: 0.1em;
  overflow: hidden;  
  height:87px;
}
.ml7 .letter {
  transform-origin: 0 100%;
  display: inline-block;
  line-height: 1em;

}
.carousel-item h1{
  height:79px;
  z-index: 1;
}

.carousel-item .CV{
    text-align: center;
}
.fas .fa-chevron-left{
  border: solid #1e1919;
  padding: 20px;
  padding-left: 29px;
  padding-right: 39px;
  font-size: 48px;
  right: 63px;
  position: absolute;
}

#charger .navbar{
  padding: 0;
  z-index: 50;
  width: 100%;
}

.container .col-12 #whire:hover, .container .col-12 #whire:focus{
  transform: scale(1.5);
}

.container .col-12 #git:hover, .container .col-12 #git:focus{
  transform: scale(1.5);
}

.container .col-12 #linkedin:hover, .container .col-12 #linkedin:focus{
  transform: scale(1.5);
}

#charge{
  position:relative;
}

.navbar{
  position:absolute !important;
}


.header {
  height: 80px; 
  z-index: 7; 
  top:50px; 
  position: absolute;
  background-color: rgb(255 255 255 / 42%);
  width: 100%;
}


.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  background: white;
  box-shadow: 0px 9px 17px 2px rgb(0 0 0 / 35%);
}


.carousel #left{
  background-color: rgba(0, 0, 0, 0.4); 
  padding: 15px; 
  padding-left: 24px; 
  padding-right: 28px; 
  font-size: 45px; 
  right: 33px; 
  position: relative;
}
.carousel #right{
  background-color: rgba(0, 0, 0, 0.4); 
  padding: 15px; 
  padding-left: 24px; 
  padding-right: 28px; 
  font-size: 45px; 
  left: 33px; 
  position: relative;
  font-weight: 10px;
  
}
.carousel #left:hover, .carousel #left:focus{
  background-color: white;
  color:gray;
}
.carousel #right:hover, .carousel #right:focus{
  background-color: white;
  color:gray;
}

.navbar-collapse{
  color: rgb(44, 44, 44);
  text-transform: uppercase;
  font-weight: 700;
  font-size: 14px;

}

.navbar button{
  border: none;
}
.text-wrapper {
  position:relative; 
  z-index: 7; 
  bottom:378px; 
   color: white;
}


.btn span{
  font-size: 20px;
  font-weight: 500;
  margin-top: 39px;
}

.btn #svg {
  position: absolute;
  top: 35px;
  left: 621px;
}

.btn #svg rect {
  stroke: rgb(36, 216, 192) rgb(36, 189, 216);
  stroke-width: 4;
  stroke-dasharray: 353, 0;
  stroke-dashoffset: 0;
  -webkit-transition: all 600ms ease;
  transition: all 600ms ease;
}

.btn span{
  left: 87vh;
  top: 40px;
  position: relative;
  background: rgb(36, 216, 192);
  background: -moz-linear-gradient(left,  rgb(36, 216, 192) 0%, rgb(36, 189, 216)  100%);
  background: -webkit-linear-gradient(left,  rgb(36, 216, 192)  0%,rgb(36, 189, 216) 100%);
  background: linear-gradient(to right,  rgb(36, 216, 192)  0%,rgb(36, 189, 216)100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff8282', endColorstr='#e178ed',GradientType=15 );

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.btn:hover #svg rect {
  stroke-width: 4;
  stroke-dasharray: 196, 543;
  stroke-dashoffset: 437;
}

/************* Partie tablette **************/
@media only screen and (max-width:991px) and (min-width:768px){
  
  .container, .container-md, .container-sm {
    max-width: 95% !important;
}
  #charger .navbar{
    z-index: 7;  
  }

  .carousel #left{
    padding: 15px;
    padding-left: 20px;
    padding-right: 24px;
    font-size: 38px;
    right: 23px;

  }
  .carousel #right{ 
    padding: 15px;
    padding-left: 20px;
    padding-right: 24px;
    font-size: 38px;
    left: 23px;
    
  }
  .navbar-collapse{    
    font-size: 14px;
    width: 100%;
    font-weight: 700;
    background-color: rgba(255, 255, 255, 0.904);
  }
  .navbar{
    padding: 0 auto;
  }

  .ml7 .letter{
    font-size: 40px;
  }
  .ml7 .letters{
    font-size: 40px;
  }

  #charger .haut .row{
    flex-wrap: inherit;
    margin-right: 0;
    margin-left: 0;
  }
  #charger .navbar .header div{
    width: 80% !important;
  }

  .btn span{
    left: 38.3vw;
  }
  .btn #svg{
    left: 35vw;
  }
  .title h4{
    font-size: 3vh !important;
  }
  .title h1{
    font-size: 6vh !important;
  }
}



/************* Partie tablette fin **************/
/************* Partie mobile **************/
@media only screen and (max-width:768px){


  .header {
    top: 0px;
  }
  .carousel #left{
    padding: 15px;
    padding-left: 20px;
    padding-right: 24px;
    font-size: 27px;
    right: 6px;

  }
  .carousel #right{
    padding: 15px;
    padding-left: 20px;
    padding-right: 24px;
    font-size: 27px;
    left: 5px;
    
  }
  .navbar-collapse{    
    font-size: 14px;
    width: 100%;
    font-weight: 700;
    background-color: rgba(255, 255, 255, 0.904);
  }
  .ml7 .letter {
    font-size: 27px;

  }
  .ml7 .letters {
    font-size: 27px;
    z-index: 0;
    width: 100%;
  }
  .text-wrapper {
    bottom:500px; 
  }

  #charger .container .jc {
    display: block !important;
  }
  #charger .navbar {
    top:75px;
  }

  #charger .haut .row{
    font-size: 12.8px;
    margin-left: auto;
    margin-right: auto;
    width: 20em;
  }


  .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl {
    width: 97%;
  }

  #charger .container .jc .col-md-2 .row{
    margin-left: auto;
    margin-right: auto;
    width: 10em;

  }

  .btn #svg {
    top: -5vw;
    left: 22vw;
  }

  .btn span {
    top: -4vw;
    left: 29vw;
  }
}



@media only screen and (max-width:380px){
  #charger .container .jc {
    margin-left: 11vw !important;
  }

  #charger .container .jc .col-md-2 .row {
    margin-left: 45px;
  }

  main .row1 i {
    font-size: 20px !important;
    padding: 16px !important;
    margin: 0 !important;
  }

  main .row2 i {
    font-size: 20px !important;
    padding: 16px !important;
    margin-top: 30px !important;
    margin-bottom: 21px !important;
    float: left;
  }
  #charger .haut {
    left: 0 !important;
}

  main .row1 i {
    margin-top: 10px;
  }
  main .col{
    max-width: 100%;
  }

  main .row1 h4{
    font-size: 6vw;
  }
  main .row2 h4{
    font-size: 6vw;
  }

  main .row1 p{
    font-size: 3.5vw;
  }

  main .row2 h4{
    font-size: 6vw;
  }

  main .row2 p{
    font-size: 3.5vw;
  }

  #charger .haut{
    left:0;
  }

  



}
/************* Partie mobile fin **************/

/* Dark / Light */
#showDark, #hideDark {
  position: fixed;
  padding: 8px;
  padding-left: 17px;
  padding-right: 17px;
  color: rgb(0, 194, 168);
  font-size: 29px;
  background:white;
  border-bottom-right-radius: 8px;
  border-top-right-radius: 8px;
  bottom: 53vh;
  left: 0;
  z-index: 1001;
  box-shadow: 4px 4px rgb(106 106 106 / 17%);
  border-top: solid rgb(106 106 106 / 17%) 1px;
  border-right: solid rgb(106 106 106 / 17%) 1px;
  border-bottom: solid rgb(106 106 106 / 17%) 1px;
  -webkit-transition: left 0.2s, color 0.2s; 
  transition: left 0.2s, color 0.2s;
}
#charger .haut{
  position: relative;
  top: 14px;
  z-index: 10;
  left: 8em;
}
#charger .container .jc{
  display: flex;
  justify-content: space-between;
  position: absolute;
  width: 87%;
}

#charger .container .jc #linkedin{
  color: white; 
  font-size: 20px;
   margin-right: 18px; 
   transition: ease-out 0.3s;
}
#charger .container .jc #git{
  color: white; 
  font-size: 20px; 
  margin-right: 18px; 
  transition: ease-out 0.3s;
}

#charger .container .jc #mail i{
  color: white;
  margin-right: 15px;
  margin-top: 6px;

}
#charger .container .jc #mail a{
  color: white;
}
#charger .container .jc #mail a:hover{
  color:rgb(0, 194, 168);
}
#charger .container .jc #whire{
margin-bottom: 6px;
 transition: ease-out 0.3s;
}
#showDark i:hover, #hideDark i:hover {
  cursor: pointer;
}



#navigation-dark {
  position: fixed;
  width: 250px;
  box-shadow: 4px 4px rgb(106 106 106 / 17%);
  border: solid rgb(106 106 106 / 17%) 1px;
  background: white;
  left: -300px;
  bottom: 32.5vh;
  z-index: 2;
  -webkit-transition: left 0.2s;
  transition: left 0.2s;
  height: 255px !important;
}





body {
  background-color: white;
  color: #2e2e2e;
}

.dark-mode{
  
background-color: #2e2e2e !important;
color: white !important;
}

.darks-mode{
  background-color: #555555 !important;
  color: white !important;
}

/******************************* Mon Parcours ************************************/
#id .mon_parcours:nth-child(odd) {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  text-align: right;
  justify-content: flex-end;
}

#id .mon_parcours:nth-child(even) {
  margin-bottom: 10px;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  text-align: left;
  justify-content: flex-end;
}




.title{
  text-align: center;
}
.title h4{
  color: gray;
  font-size: 2pc;
  font-weight: 400;
}
.title h1{
  font-size: 3pc;
  font-weight: 700;
}
.title .line{
  width: 4%;
  background: rgb(0, 194, 168);
  height: 4px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
}
main .row1 i{
  padding: 23px;
  margin-right: 21px;
    font-size: 27px;
    margin-left: 21px;
    border: solid 2px;
    border-radius: 50%;
    color: rgb(0, 194, 168);
}
main .row2 i{
  padding: 23px;
    /* padding-top: 22px; */
    font-size: 27px;
    margin-right: 21px;
    border: solid 2px rgb(0, 194, 168);
    border-radius: 50%;
    color: rgb(0, 194, 168);
}
main .row1 i:hover, .row2 i:hover {
  background-color: rgb(0, 194, 168);
  color: white;
  border: solid 2px rgb(0, 194, 168);
}


main .container{
  padding: 0;
}
main .top{
  padding-bottom: 10vh;
}

/************* Partie tablette **************/
@media only screen and (max-width:991px) and (min-width:768px){
  #section1 .container .row{
    margin-right: 0;
  }  
  main .row1 i, main .row2 i{
      margin-top: 16px;
      margin-bottom: 32px;

  }
  main .container{
    padding-right: 0;
    padding-left: 0;
  }

  #charger .haut{
    left: 0;
  }
  #charger .container .jc{
    width: 100%;
  }
}

body {
  overflow-x: hidden; 
}

/************* Partie tablette fin **************/
/************* Partie mobile **************/
@media only screen and (max-width:768px){
  #attente .container {
    display: block !important;
    /* justify-content: space-between; */
    /* width: 65%; */
    text-align: center !important;
  }
  #attente .container .row {
    justify-content: center !important;
  }

  #charger .haut{
    left: 0;
  }
  #charger .container .jc{
    width: 100%;
  }
  #section1 .container .row{
    display: block;
    margin-left: 0;
  } 
  #section1 .container .row1 div{
    float: right;
    text-align: left;
    margin-top: 4px;
    flex-direction: row-reverse;
  } 
  #section1 .container .row2 div{
    float: right;
  } 
  main .container{
    padding-left: 0;
    margin-bottom: 0;
    padding: 0;
  }
  main .row div{
    margin-bottom: 14px;
  }
  main .row1 i{
    margin-left: 0;
  }
  .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl {
    width: 90% !important;
  }

  .col-4 {
    max-width: 100%;
}
  
}
/************* Partie mobile fin **************/

/************** Séparation *****************/
.img1{ 
  background-image: url(../images/back5.jpg); 
}

section .separation{
  color: white;
  text-align: center;
  margin-top: 43px;
}

section .separation2 {
  color: white;
  text-align: center;
}

section .organisation div{
  margin-right: 60px;
}

#loading .organisation i{
  border: solid 1px white;
  border-radius: 50%;
  padding: 27px;
  color: #1f1f1f;
  padding-top: 29px;
  font-size: 24px;
  background-color: white;
}

#loading .organisation p{
  color: white;
  text-transform: uppercase;
  text-align: center;
  margin-top: 10px;
  font-size: 17px;
  margin-left: 35px;
}

#loading .organisation span{
  border: solid 1px rgb(0, 194, 168);
  border-radius: 50%;
  padding: 4px;
  padding-right: 10px;
  padding-left: 10px;
  z-index: 10;
  position: relative;
  font-size: 18px;
  left: 31px;
  color: white;
  background-color: rgb(0, 194, 168);
}

#loading .organisation{
  margin-right: 0;
  margin-left: 0;
  margin-top: 50px;
  justify-content: space-evenly;
}

section .separation abbr{
  cursor: help;
}

.img1 { 
  position: relative;
  height: 385px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  flex-direction: column;
  padding: 2vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  font-size: 4vw;
}


#image img{
  width: 74%;
  position: relative;
  top: 61px;
}

.img2{ 
  background-image: url(../images/image6.jpg); 
}



section .separation abbr{
  cursor: help;
}

.img2 { 
  position: relative;
  height: 53vh; 
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center; 
  flex-direction: column;
  padding: 2vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  font-size: 4vw; 
}
/************* Partie tablette **************/
@media only screen and (max-width:991px) and (min-width:768px){
  section .separation {
  
    top: 1767px;
    left: 171px;
  }

  section .organisation div {
    margin-right: 122px;
    margin-left: auto;
  }
  .img2{
    height: 68vh;
  }
  #loading .organisation{
    margin-left: 2%;
  }

  .title p .wrap{
    font-size: 20px !important;
  }
}

/************* Partie tablette fin **************/
/************* Partie mobile **************/
@media only screen and (max-width:768px){

  section .separation{
      top: 2100px;
      left: 2vh;
  }

  #loading .organisation span {
    left: 21px !important;
  }
  section .separation h1{
    font-size: 6vw;
  }

  #image img {
    width: 59%;
    top: 41px;
  }

  .img1 {
    height: 272px;
    width: 100%;
  }
  .separation2 h1{
    font-size: larger !important;
  }
  #loading .organisation{
    display: block;
  }

  section .organisation div {
    margin-right: 32px;
    margin-top: 35px;
  }
  .img2{
    height: 154vh;
  }
  
}
  

/************* Partie mobile fin **************/

/************************** Compétence *****************/

/******** Pregress bar *****/




.perc {position:absolute; display:none; top: 0; line-height:30px; right:10px;}
.progressbar {
    position: relative;
    width: 70%;
    height: 30px;
    background-color: rgba(0, 194, 168, 0.411);
    border-radius: 4px;
    margin: 10px auto;
}
.progressbar:after { position: absolute; top:0; right: 10px;line-height: 30px;}
.fillmult {
    height: 100%;
    width: 0;
    margin-top: 24px;
    background-color: rgba(0, 194, 168, 0.411);
    border-radius: 4px;
    line-height: 30px;
    text-align: left;
}
.fillmult span {
    padding-left: 10px;
}





/******** Fin pregress bar *****/
/******** 2e Séparation ********/

.title p{
  text-align: center;
  font-size: 22px;
  margin-top: 18px;
  font-weight: 500;
  color: rgb(0 194 168 / 70%);
}
/************* Partie tablette **************/
@media only screen and (max-width:991px) and (min-width:768px){

}

/************* Partie tablette fin **************/
/************* Partie mobile **************/
@media only screen and (max-width:768px){

  section .separation2 {
    top: 3185px;
    text-align: center;
    left: 2px;
  }
  .title h4 {
    font-size: x-large;
  }
  .title h1 {
    font-size: xx-large;
  }
}
  

/************* Partie mobile fin **************/

/****************** A propos *****************/

#section3 .row img{
  width: 100%;
  margin-top: 6vh;
  margin-bottom: 8vh;
}
#section3 .row p{
  font-size: 14px;
  color: gray;
}
#section3 .container{
  padding-top: 74px;
}
/********** Partie tablette *********/

@media only screen and (max-width:991px) and (min-width:768px){
  #section3 .row h4{
    font-size: 20px;
  }

}

/************* Partie mobile **************/
@media only screen and (max-width:768px){

  section .separation2 {
    top: 3185px;
    text-align: center;
    left: 2px;
  }
  .title h4 {
    font-size: large;
  }
  .title h1 {
    font-size: xx-large;
  }

  #section3 .container .row{
    display: block;
    margin-bottom: 50px;
  }

  #section3 .container .row .col-4{
    max-width: 100%;
    text-align: justify;
  }

  section .separation3 h1 {
    font-size: 5vw;
  }
}



/************** Séparation *****************/
.img3{ 
  background-image: url(../images/back2.jpg); 
  height: 250px;
}

section .separation3{
  color: white;
  text-align: center;
  margin-top: 43px;
}

section .separation3 h1{
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 46px;
}
.img3 { 
  position: relative;
  height: 41vh;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center; 
  flex-direction: column;
  padding: 2vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  font-size: 4vw; 
}


/******************** Portfolio ******************/



.wrapper {
  width: 90%;
  margin: 0 auto;
  max-width: 76rem;
  margin-top: 31px;
  margin-bottom: 45px;
}

.cols{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#section4 .col{
  width: calc(25% - 2rem);
  margin: 1rem;
  cursor: pointer;
}

#section4 .container{
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
	-webkit-perspective: 1000px;
	        perspective: 1000px;
}


.front,
.back{
  background-size: cover;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.25);
  border-radius: 10px;
	background-position: center;
	-webkit-transition: -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
	transition: -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
	-o-transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
	transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
	transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1), -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
	text-align: center;
	min-height: 280px;
	height: auto;
	border-radius: 10px;
	color: #fff;
	font-size: 1.5rem;
}

.back{
  background: #cedce7;
  background: -webkit-linear-gradient(45deg,  rgb(0, 194, 168) 0%,rgb(2, 184, 197) 100%);
  background: -o-linear-gradient(45deg,  rgb(0, 194, 168) 0%,rgb(2, 184, 197) 100%);
  background: linear-gradient(45deg,  rgb(0, 194, 168) 0%,rgb(2, 184, 197) 100%);
}

.front:after{
	position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    opacity: 0.3;
    background-color: #000;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    border-radius: 10px;
}
.container:hover .front,
.container:hover .back{
    -webkit-transition: -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    -o-transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
    transition: transform .7s cubic-bezier(0.4, 0.2, 0.2, 1), -webkit-transform .7s cubic-bezier(0.4, 0.2, 0.2, 1);
}

.back{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.inner{
    -webkit-transform: translateY(-50%) translateZ(60px) scale(0.94);
            transform: translateY(-50%) translateZ(60px) scale(0.94);
    top: 50%;
    position: absolute;
    left: 0;
    width: 100%;
    padding: 2rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    outline: 1px solid transparent;
    -webkit-perspective: inherit;
            perspective: inherit;
    z-index: 2;
}

.container .back{
    -webkit-transform: rotateY(180deg);
            transform: rotateY(180deg);
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d;
}

.container .front{
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg);
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d;
}

.container:hover .back{
  -webkit-transform: rotateY(0deg);
          transform: rotateY(0deg);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.container:hover .front{
  -webkit-transform: rotateY(-180deg);
          transform: rotateY(-180deg);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.front .inner p{
  font-size: 2rem;
  margin-bottom: 2rem;
  position: relative;
}
.back .inner p{
  font-size: 25px;
}

.front .inner p:after{
  content: '';
  width: 4rem;
  height: 2px;
  position: absolute;
  background: #C6D4DF;
  display: block;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -.75rem;
}

.front .inner span{
  color: white;
  font-family: 'Montserrat';
  font-weight: 300;
}


/***********Tablette *********/

@media only screen and (max-width:991px) and (min-width:768px){

  .front .inner p {
    font-size: 3vw;
  }

  .wrapper {
    margin-right: 5.5vw;
  }
  
}

/************* Partie mobile **************/
@media only screen and (max-width:768px){

  .cols{
    display: block;
  }

  #section4 .col{
      margin-right: 0;
    width: 82vw;
    padding: 0;
  }

  .wrapper {
    margin-right: 5vw;
  }
  

}





.container .back a {
  color: rgb(0, 194, 168);
  border: solid 1px white;
  border-radius: 50%;
  background-color: white;
  padding: 5px 8px 5px 8px;

}

.container .back a:hover {
  border: solid 1px rgba(255, 255, 255, 0.404);
  box-shadow: 2px 2px rgba(82, 82, 82, 0.329);
  background-color: rgba(255, 255, 255, 0.404);
  color: white;

}

/************** Séparation *****************/
.img4{ 
  background-image: url(../images/image5.jpg); 
  height: 250px;
}

section .separation4{
  color: white;
  text-align: center;
  margin-top: 43px;
}

section .separation4 h1{
  margin-right: auto;
  margin-left: auto;
}
.img4 { 
  position: relative;
  height: 32vh;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center; 
  flex-direction: column;
  padding: 2vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  font-size: 4vw; 
}

/*********** Contact ************/

#section5 .container{
  width: 65%;
  margin-top: 41px;
}

#section5 .container .input-group{
  margin-bottom: 2vw !important;
}

#section5 .container .form-check{
  margin-bottom: 2vw !important;
}


#section5 .container .input-group .input-group-text{
  background: rgb(36 216 192 / 27%);
  border-radius: 0;
}

.dark-input{
  background: rgb(255 255 255 / 84%) !important;
}

.dark-form{
  background: #5d5d5d !important;
  color: white !important;
}


.dark-form::placeholder{
  color: rgb(255 255 255 / 84%) !important;
}






 #section5 a:hover {
     color: white;
     text-decoration: none;
     
 }
 
 .btn-blink1 {
  margin-top: 14px;

  position: relative;
  display: inline-block;
  padding: 13px 15px;
  border-radius: 5px;
  font-family: sans-serif;
  font-size: 0.9em;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-decoration: none;
  color: #fff;
  background-color: rgb(0, 194, 168);
  transition: ease-out 0.3s;
 }

 .btn-blink1:hover {
  transform: scale(1.1);
  background-color: rgb(0, 194, 168);
  text-shadow: 0 2px 6px rgba(0, 0, 0, .35);
  box-shadow: 0 0 12px rgb(0, 194, 168), 0 0 10px rgba(0, 0, 0, .5) inset;
 }
 

 main .row div{
  margin-bottom: 15px;
 }

 /******************** footer ********************/

 #attente .footer{
   background-color: rgb(53 53 53);
 }

 #attente .container {
  display: flex;
  justify-content: space-between;
  width: 65%;
  height: 100%;
  margin-top: 34px;
  padding-top: 15px;
}

#attente .container .row{
  margin-top: 11px;
}

.footer .container a{
  color: white;
  margin-right: 25px;
}

.footer .container a i{
  border: solid 1px;
  padding: 13px;
  background: #565555;
  border-radius: 50%;
}

.footer .container a .img {
  border: solid 1px;
  margin-bottom: 33px;
  padding: 8px 11px 11px 10px;
  background: #565555;
  border-radius: 50%;
}

.footer .container a i:hover{
  background: rgb(0, 194, 168);
}

.footer .container a .img:hover {
  background: rgb(0, 194, 168);
}

.footer .container p{
  color: #ffffffa1;
  margin-top: 25px;
}
/**************************/





