/**
  * Luc Bataillé - Vitrine Web
  * Description: Personal Portfolio Website Template
  * Author/Developer: Luc Bataillé 
  * Version: v4
  */
/* .services-heading{
    height: auto;
    width: 100%;
    text-align: center;
    align-items: center;
    justify-content: center;
    font-size: 45px;
    font-family: raleway;
    color: whitesmoke;
    padding:10px;
    padding-bottom: 30px;
    padding-top: 30px;
    font-weight: 900;

}
.services-content{
    height: auto;
    width: 100%;
    overflow: hidden;
    text-align: center;
    padding:2.5%;
}
.service{
    height:380px;
    width:28%;
    margin: 1.5%;
    background-color: #191919;
    display: inline-block;
    box-shadow:0px 0px 25px rgb(0,0,0,.05);
    position: relative;
    text-align: center;
    z-index: 2;
    border-radius: 10px;
    overflow: hidden;
    animation: opacity 1.4s ease ;
}
.service-img{
    text-align: center;
}

.service-img img{
    display: inline-block;
    z-index: 2;
    position: relative;
    margin: 20px;
    border-radius: 30%;
    padding: 10px;
    border: 0px solid #36e3d9;
    background: #36e3d9;
    box-shadow:0px 0px 0px 0px #36e3d9 ;
    height:100px;
    transition: all .8s ease;
}
.service:hover .service-img img{
    box-shadow:0px 0px 0px 400px #36e3d9 ;
}
.service-description{
    font-family: poppins;
    color:whitesmoke;
    position: relative;
    display: inline-block;
    z-index:2;
}
.service-description h2{
    padding: 10px;
    margin: 5px;
    font-weight: 200;
    font-size: 25px;
}
.service-description p{
    padding: 10px;
    font-weight: 200;
    font-size: 16px;
    opacity: .8;
} */
.formsup{
	width: 70%;
     margin: 10px auto 0 auto;
     justify-content: center; 
     box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
}

.step-indicator {
    width:100%;
    text-align: center;
    font-weight: bold;
    margin-top:20px;
    margin-bottom: 20px;
    color:#03524d;
}

.step {
    display: none;
}

.step.active {
    display: block;
    animation: fadeIn 0.5s;
}

h4 {
    text-align: center;
    color: #333;
}

label {
    display: block;
    margin: 10px 0;
    color: #555;
}
.input-line{
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.input-name{
    width: 40%;
    padding:10px 20px;
    margin:14px;
    border-radius: 8px;
    outline: none;
    background: #050505;
    border:none;
    color: whitesmoke;
    font-family: poppins;
    font-size: 18px;
}

input[type="text"],
input[type="email"] {
    width: calc(100% - 22px);
    padding: 10px;
    margin: 5px 0 15px 0;
    border: 1px solid #ccc;
    border-radius: 5px;
}

input[type="radio"],
input[type="checkbox"] {
    margin-right: 10px;
}
 button:hover .index{
     position: relative;
    z-index: 4;
}
.button{
    text-align: center;
}
form button{
    padding:8px 24px;
    font-family: poppins;
    font-size:20px;
    color: whitesmoke;
    background:#03524d;
    opacity: .8;
    margin: 20px;
    cursor: pointer;
    border: none;
    border-radius: 8px;
    transition: all .4s ease;
}
form button:hover{
  opacity: 1;
}

/***  TOOLTIP
.tooltip .tooltiptext {
    visibility: hidden;
    width: 140px;
    background-color: #fff;
    color: #000;
    font-weight:regular;
    text-align: center;
    border-radius: 6px;
    padding: 5px 0;
    position: absolute;
    z-index: 1;
    bottom: 180%;
    left: 50%;
    margin-left: -60px;
}

.tooltip .tooltiptext::after {
    content: "";
    position: absolute;
    top: 95%;
    left: 43%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
}
  FIN TOOLTIP ***/

/*** SUB OPTIONS ****/
.sub-options {
            margin-left: 30px;
            max-height: 0;
            overflow: hidden;
            opacity: 0;
            transition: max-height 0.5s ease-out, opacity 0.5s ease-out;
        }

        .option-group input[type="checkbox"]:checked ~ .sub-options {
            max-height: 400px;
            opacity: 1;
        }

/*** INFOBULLE ***/
input[title] {
  position: relative;
}

input[title]:hover::after {
  content: attr(title);
  position: absolute;
  top: -35px; /* Position au-dessus de l'input */
  left: 50%;
  transform: translateX(-50%);
  background-color: #036564; /* Couleur de fond de l'infobulle */
  color: #fff; /* Couleur du texte */
  padding: 8px 12px;
  border-radius: 5px;
  font-size: 0.9em;
  white-space: nowrap;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  z-index: 10;
  opacity: 0;
  transition: opacity 0.3s ease;
}


input[title]:hover::after,
input[title]:hover::before {
  opacity: 1;
}
input[title][data-tooltip-hidden]:hover::after {
  display: none; /* ou opacity: 0; */
}
button {
    background: #03524d; 
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    margin: 10px 5px;
}

button:hover {
    background: #36e3d9;
}

button.prev, button.next, .next {
    margin-top:55px;
    margin-bottom:40px;
    background: #03524d; 
    opacity:1;
}

button.prev:hover, button.next:hover, .next:hover {
    background: #36e3d9;
    margin-top:55px;
    margin-bottom:40px;
}

small {
    font-size: 0.9em;
    color: #777;
}

.divclassiq{width:100%;float:left;position:relative;}
.color{
    color: #36e3d9;
    transition: all .4s ease;
}
.colorcoche{color:#fff;background:#03524d; border-radius:45px; padding:3px 8px 3px 8px;animation:5s ease infinite fadecoche;
}
.colorcoche1{color:#fff;background:#03524d; border-radius:45px; padding:3px 8px 3px 8px;animation:15s ease infinite fadecoche;
}
.colorcoche2{color:#fff;background:#03524d; border-radius:45px; padding:3px 8px 3px 8px;animation:25s ease infinite fadecoche;
}
.colorcoche3{color:#fff;background:#03524d; border-radius:45px; padding:3px 8px 3px 8px;animation:35s ease infinite fadecoche;
}
.colorcoche4{color:#fff;background:#03524d; border-radius:45px; padding:3px 8px 3px 8px;animation:45s ease infinite fadecoche;
}

.option-input[type="checkbox"], .option-input{
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  position: relative;
  top: 13.33333px;
  right: 0;
  bottom: 0;
  left: 0;
  height: 40px;
  width: 40px;
  transition: all 0.15s ease-out 0s;
  background: -webkit-linear-gradient(#cbd1d8, #36e3d9);
  border:none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  margin-right: 0.5rem;
  outline: none;
  position: relative;
  z-index: 100;
}
.option-input[type="checkbox"]:hover, .option-input:hover {
  background: #9faab7;
}
.option-input[type="checkbox"]:checked, .option-input:checked {
  background: #03524d;
}
.option-input[type="checkbox"]:checked::before, .option-input:checked::before {
  width: 40px;
  height: 40px;
  display:flex;
  content: '\2714';
  font-size: 25px;
  font-weight:bold;
  position: absolute;
  align-items:center;
  justify-content:center;
  font-family:'Font Awesome 5 Free';
}
.option-input[type="checkbox"]:checked::after, .option-input:checked::after {
  -webkit-animation: click-wave 0.65s;
  -moz-animation: click-wave 0.65s;
  animation: click-wave 0.65s;
  background: #03524d;
  content: '';
  display: block;
  position: relative;
  z-index: 100;
}
.option-input.radio {
  border-radius: 50%;
}
.option-input.radio::after {
  border-radius: 50%;
}
.overlay {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.7); 
  transition: opacity 500ms;
  visibility: hidden;
  opacity: 0;
  z-index:1001;
}
.overlay:target {
  visibility: visible;
  opacity: 1;
  overflow-y : scroll;
}

/* .vertfonce{color:#03524d;}
p{margin: 8px 0 8px 0;}

.divspec{
	border-left:5px solid #36e3d9;
	padding: 0 0 13px 15px;
	margin: 10px 0 18px 25px;
     border-radius:15px;
 }
.divtfin{
  position: relative;
  text-transform: uppercase;
  font-size: 0.7em;
  font-weight:bold;
  letter-spacing: 2px;
  overflow: hidden;
  background: linear-gradient(90deg, #000, #fff, #000);
  background-repeat: no-repeat;
  background-size: 80%;
  animation: animatet 10s linear infinite;
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(255, 255, 255, 0);
}
*/
.color-selector{
    height:auto;
    width:150px;
    padding: 10px;
    background: whitesmoke;
    font-family: poppins;
    font-size: 16px;
    display: flex;
    color: black;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.color-selector li{
  list-style: none;
}
.btrapp{width:240px;margin:100px auto 0 auto;padding:0 5px 0 5px;}


@keyframes click-wave {
  0% {
    height: 40px;
    width: 40px;
    opacity: 0.35;
    position: relative;
  }
  100% {
    height: 200px;
    width: 200px;
    margin-left: -80px;
    margin-top: -80px;
    opacity: 0;
  }
}
 @-webkit-keyframes click-wave {
  0% {
    height: 40px;
    width: 40px;
    opacity: 0.35;
    position: relative;
  }
  100% {
    height: 200px;
    width: 200px;
    margin-left: -80px;
    margin-top: -80px;
    opacity: 0;
  }
}

/*** MEDIA QUERIES ***/
@media all and (max-width: 550px) {
    form{
         display: flex;
         flex-direction: column;
         height: auto;
         width:auto;
         align-items: center;
         position: relative;
    }
            .input-line{
                width: 100%;
                height: auto;
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
            }
            .input-name{
                width: 90%;
                padding:10px 20px;
                margin:14px;
                border-radius: 8px;
                outline: none;
                background: #050505;
                border:none;
                color: whitesmoke;
                font-family: poppins;
                font-size: 16px;
            }
            .form-header{
                font-size: 22px;
                font-family: poppins;
                font-weight: 400;
                color: whitesmoke;
                padding: 20px;
                padding-top: 0px;
            }
            .input-subject{
                width: 90%;
                padding:10px 20px;
                margin:24px;
                border-radius: 8px;
                outline: none;
                background: #050505;
                border:none;
                color: whitesmoke;
                font-family: poppins;
                font-size: 16px;
            }
            .input-textarea{
                width: 90%;
                padding:10px 20px;
                margin:15px;
                height: 140px;
                border-radius: 8px;
                outline: none;
                background: #050505;
                border:none;
                color: whitesmoke;
                font-family: poppins;
                font-size: 16px;
            }
            form button{
                padding:8px 24px;
                font-family: poppins;
                font-size:20px;
                color: whitesmoke;
                opacity: .8;
                margin: 20px;
                cursor: pointer;
                border: none;
                border-radius: 8px;
                transition: all .4s ease;
            }
  form button:hover{
     opacity: 1;
  }
  .formsup{
	width: 100%;
     margin: 10px auto 0 auto;
     justify-content: center; 
     padding: 5px 15px 5px 15px;
  }
  button.next, .next {
    margin-top:25px;
    margin-bottom:40px;
    background: #03524d; 
    opacity:1;
  }
  button.next:hover, .next:hover {
    background: #36e3d9;
    margin-top:25px;
    margin-bottom:40px;
  }
  button.prev{
    margin-top:55px;
    margin-bottom:0px;
    background: #03524d; 
    opacity:1;
  }
  button.prev:hover{
    background: #36e3d9;
    margin-top:55px;
    margin-bottom:0px;
  }

  /*** INFOBULLE ***/
  input[title] {
    position: relative;
  }
  input[title]:hover::after {
    content: attr(title);
    position: absolute;
    top: -35px; /* Position au-dessus de l'input */
    left: 70%;
    transform: translateX(-50%);
    background-color: #036564; 
    color: #fff; 
    padding: 8px 12px;
    border-radius: 5px;
    font-size: 0.9em;
    white-space: nowrap;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    z-index: 10;
    opacity: 0;
    transition: opacity 0.3s ease;
  }
}
@media all and (min-width: 551px) and (max-width: 770px) {
  .formsup{
	width: 85%;
     margin: 3px auto 0 auto;
     justify-content: center; 
     padding: 5px 15px 5px 15px;
}
button.next, .next {
    margin-top:25px;
    margin-bottom:40px;
    background: #03524d; 
    opacity:1;
}
button.next:hover, .next:hover {
    background: #36e3d9;
    margin-top:25px;
    margin-bottom:40px;
}
button.prev{
    margin-top:55px;
    margin-bottom:0px;
    background: #03524d; 
    opacity:1;
}
button.prev:hover{
    background: #36e3d9;
    margin-top:55px;
    margin-bottom:0px;
 }
}
/* for tabs and large phones */

@media all and (max-width: 1025px) and (min-width: 771px){
.formsup{
     width: 80%;
     margin: 185px auto 0 auto;
     justify-content: center; 
}
form{
     display: flex;
     flex-direction: column;
     height: auto;
     width:auto;
     align-items: center;
     position: relative;
 }
 .input-line{
     width: 100%;
     height: auto;
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
  }
  .input-name{
     width: 80%;
     padding:10px 20px;
     margin:14px;
     border-radius: 8px;
     outline: none;
     background: #050505;
     border:none;
     color: whitesmoke;
     font-family: poppins;
     font-size: 16px;
   }
   .form-header{
     font-size: 22px;
     font-family: poppins;
     font-weight: 400;
     color: whitesmoke;
     padding: 20px;
     padding-top: 0px;
    }
    .input-subject{
      width: 80%;
      padding:10px 20px;
      margin:24px;
      border-radius: 8px;
      outline: none;
      background: #050505;
      border:none;
      color: whitesmoke;
      font-family: poppins;
      font-size: 16px;
     }
     .input-textarea{
       width: 80%;
       padding:10px 20px;
       margin:15px;
       height: 140px;
       border-radius: 8px;
       outline: none;
       background: #050505;
       border:none;
       color: whitesmoke;
       font-family: poppins;
       font-size: 16px;
      }
      form button{
        padding:8px 24px;
        font-family: poppins;
        font-size:20px;
        color: whitesmoke;
        opacity: 1;
        margin: 20px;
        cursor: pointer;
        border: none;
        border-radius: 8px;
        transition: all .4s ease;
       }
       form button:hover{
         opacity: 1;
       }
        .hire-me-section{
          display: none;
        }                 
}
@media all and (max-width: 1120px) and (min-width: 1026px){
  .navigation-links a::before{
       font-size: 4em;
   }
  }
@media all and (min-width: 1481px) {
    form{
        display: flex;
        flex-direction: column;
        height: auto;
        width:auto;
        align-items: center;
        position: relative;
    }
    .input-line{
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .input-name{
        width: 60%;
        padding:10px 20px;
        margin:14px;
        border-radius: 8px;
        outline: none;
        background: #050505;
        border:none;
        color: whitesmoke;
        font-family: poppins;
        font-size: 18px;
    }
    .form-header{
        font-size: 24px;
        font-family: poppins;
        font-weight: 400;
        color: whitesmoke;
        padding: 20px;
        padding-top: 0px;
    }
    .input-subject{
        width: 60%;
        padding:10px 20px;
        margin:24px;
        border-radius: 8px;
        outline: none;
        background: #050505;
        border:none;
        color: whitesmoke;
        font-family: poppins;
        font-size: 18px;
    }
    .input-textarea{
        width: 60%;
        padding:10px 20px;
        margin:15px;
        height: 150px;
        border-radius: 8px;
        outline: none;
        background: #050505;
        border:none;
        color: whitesmoke;
        font-family: poppins;
        font-size: 18px;
    }
    form button{
        padding:8px 24px;
        font-family: poppins;
        font-size:20px;
        color: whitesmoke;
        opacity: .8;
        margin: 20px;
        cursor: pointer;
        border: none;
        border-radius: 8px;
        transition: all .4s ease;
    }
}

