

:root {

  /**
   * colors
   */

  /* gradient */

  --bg-gradient-onyx: linear-gradient(
    to bottom right, 
    hsl(240, 1%, 25%) 3%, 
    hsl(0, 0%, 19%) 97%
  );
  --bg-gradient-jet: linear-gradient(
    to bottom right, 
    hsla(240, 1%, 18%, 0.251) 0%, 
    hsla(240, 2%, 11%, 0) 100%
  ), hsl(240, 2%, 13%);
  --bg-gradient-yellow-1: linear-gradient(
    to bottom right, 
    hsl(45, 100%, 71%) 0%, 
    hsla(36, 100%, 69%, 0) 50%
  );
  --bg-gradient-yellow-2: linear-gradient(
    135deg, 
    hsla(45, 100%, 71%, 0.251) 0%, 
    hsla(35, 100%, 68%, 0) 59.86%
  ), hsl(240, 2%, 13%);
  --border-gradient-onyx: linear-gradient(
    to bottom right, 
    hsl(0, 0%, 25%) 0%, 
    hsla(0, 0%, 25%, 0) 50%
  );
  --text-gradient-yellow: linear-gradient(
    to right, 
    hsl(45, 100%, 72%), 
    hsl(35, 100%, 68%)
  );

  /* solid */

  --jet: hsl(0, 0%, 22%);
  --onyx: hsl(240, 1%, 17%);
  --eerie-black-1: hsl(240, 2%, 13%);
  --eerie-black-2: hsl(240, 2%, 12%);
  --smoky-black: hsl(0, 0%, 7%);
  --white-1: hsl(0, 0%, 100%);
  --white-2: hsl(0, 0%, 98%);
  --orange-yellow-crayola: hsl(45, 100%, 72%);
  --vegas-gold: hsl(45, 54%, 58%);
  --light-gray: hsl(0, 0%, 84%);
  --light-gray-70: hsla(0, 0%, 84%, 0.7);
  --bittersweet-shimmer: hsl(0, 43%, 51%);

  /**
   * typography
   */

  /* font-family */
  --ff-poppins: 'Poppins', sans-serif;

  /* font-size */
  --fs-1: 24px;
  --fs-2: 18px;
  --fs-3: 17px;
  --fs-4: 16px;
  --fs-5: 15px;
  --fs-6: 14px;
  --fs-7: 13px;
  --fs-8: 11px;

  /* font-weight */
  --fw-300: 300;
  --fw-400: 400;
  --fw-500: 500;
  --fw-600: 600;

  /**
   * shadow
   */
  
  --shadow-1: -4px 8px 24px hsla(0, 0%, 0%, 0.25);
  --shadow-2: 0 16px 30px hsla(0, 0%, 0%, 0.25);
  --shadow-3: 0 16px 40px hsla(0, 0%, 0%, 0.25);
  --shadow-4: 0 25px 50px hsla(0, 0%, 0%, 0.15);
  --shadow-5: 0 24px 80px hsla(0, 0%, 0%, 0.25);

  /**
   * transition
   */

  --transition-1: 0.25s ease;
  --transition-2: 0.5s ease-in-out;

}




html { font-family: var(--ff-poppins); }

body { background: var(--smoky-black); }


.h3,
.h4,
.h5 {
  color: var(--white-2);
  text-transform: capitalize;
}

.h2 { font-size: var(--fs-1); }

.h3 { font-size: var(--fs-2); }



html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.video-container {
  position: relative;
  width: 100%;
  height: 100%;
}

.video-wrapper {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.15;
}


.service-item-title{
  color: var(--orange-yellow-crayola);
}
.service-item-text{
  color: var(--white-2);
}
.h2{
  min-height: 100px;
  max-width: 100%;
  color: var(--white-1);
}
.service-icon-bx{
  position: absolute;
  top: 10px;
  left: 10px;
}
.about{
  position: absolute;
  top: 10px;
  right: 10px;
}
.about-btn{
  position: relative;
  background: var(--border-gradient-onyx);
  background-color: var(--onyx);
  color: var(--white-1);
  gap: 10px;
  padding: 10px 15px;
  border-radius: 14px;
  font-size: var(--fs-4);
  text-transform: capitalize;
  box-shadow: var(--shadow-3)
}

.button-start {
  position:absolute;
  top:0;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 85%;
  width: fit-content; /* Largeur de la div centrée */
  height: fit-content; /* Hauteur de la div centrée */
  margin: auto;
 
  opacity:1;
 
  padding:10px;
  display: flex;
  justify-content: center;
  text-align: center;

  overflow-y: auto;
  

} 


.input-wrapper1 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 25px;
  margin-bottom: 15px;
}


.input-wrapper2 {
  display: inline-block;
  width: 45%;
  margin: 10px 2.5% 10px 2.5%;
  text-align: center;
 
}


.label-form {
  color: var(--white-1);

}
.form-input {
  color: var(--eerie-black-1);
  font-size: var(--fs-6);
  font-weight: var(--fw-400);
  padding: 13px 20px;
  border: 1px solid var(--jet);
  border-radius: 14px;
  outline: none;
}

.form-input-select {
  color: var(--smoky-black);
  font-size: var(--fs-6);
  font-weight: var(--fw-400);
  padding: 5px 15px;
  border: 1px solid var(--jet);
  border-radius: 14px;
  outline: none;
}

.form-input::placeholder { font-weight: var(--fw-500); }

.form-input:focus { border-color: var(--orange-yellow-crayola); }

.form-input-code {
  color: var(--eerie-black-1);
  width: 100px;
  font-size: var(--fs-6);
  font-weight: var(--fw-400);
  padding: 13px 20px;
  margin-left: 30px;
  border: 1px solid var(--jet);
  border-radius: 14px;
  outline: none;
}

.form-input-code-select {
  color: var(--smoky-black);
  font-size: var(--fs-6);
  font-weight: var(--fw-400);
  padding: 5px 15px;
  border: 1px solid var(--jet);
  border-radius: 14px;
  outline: none;
}

.form-input-code::placeholder { font-weight: var(--fw-500); }

.form-input-code:focus { border-color: var(--orange-yellow-crayola); }






.form-btn {
  position: relative;
  width: 70%;
  background: var(--border-gradient-onyx);
  color: var(--white-1);


  gap: 10px;
  padding: 10px 15px;
  border-radius: 14px;
  font-size: var(--fs-4);
  text-transform: capitalize;
  box-shadow: var(--shadow-3);

}



.input-wrapper-question{
  display: block;
  width: 120%;
 
  text-align: center;
}




 
/**
 * #testimonials-modal
 */

.modal-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: auto;
  overscroll-behavior: contain;
  z-index: 20;
  pointer-events: none;
  visibility: hidden;
}

.modal-container-long {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow-y: auto;
  overscroll-behavior: contain;
  z-index: 40;
  pointer-events: none;
  visibility: hidden;
}

.modal-container-large {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  overflow-y: auto;
  overscroll-behavior: contain;
  z-index: 40;
  pointer-events: none;
  visibility: hidden;
}

.modal-container::-webkit-scrollbar { display: none; }

.modal-container-long::-webkit-scrollbar { display: none; }

.modal-container-large::-webkit-scrollbar { display: none; }

.modal-container.active {
  pointer-events: all;
  visibility: visible;
}
.modal-container-long.active {
  pointer-events: all;
  visibility: visible;
}
.modal-container-large.active {
  pointer-events: all;
  visibility: visible;
}

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: hsl(0, 0%, 5%);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 1;
  transition: var(--transition-1);
}

.overlay.active {
  opacity: 0.8;
  visibility: visible;
  pointer-events: all;
}

.testimonials-modal {
  background: var(--eerie-black-2);
  position: relative;
  padding: 15px;
  margin: 15px 12px;
  border: 1px solid var(--jet);
  border-radius: 14px;
  box-shadow: var(--shadow-5);
  transform: scale(1.2);
  opacity: 0;
  transition: var(--transition-1);
  z-index: 2;
}

.modal-container.active .testimonials-modal {
  transform: scale(1);
  opacity: 1;
}

.modal-container-long.active .testimonials-modal {
  transform: scale(1);
  opacity: 1;
}

.modal-container-large.active .testimonials-modal {
  transform: scale(1);
  opacity: 1;
}


.modal-close-btn {
  position: absolute;
  top: 15px;
  right: 15px;
  background: var(--onyx);
  border-radius: 8px;
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--white-2);
  font-size: 18px;
  opacity: 0.7;
}

.modal-close-btn:hover,
.modal-close-btn:focus { opacity: 1; }

.modal-close-btn ion-icon { --ionicon-stroke-width: 50px; }

.modal-avatar-box {
  background: var(--bg-gradient-onyx);
  width: max-content;
  border-radius: 14px;
  margin-bottom: 15px;
  box-shadow: var(--shadow-2);
}

.modal-img-wrapper > img { display: none; }

.modal-title { margin-bottom: 4px; }

.modal-content time {
  font-size: var(--fs-6);
  color: var(--light-gray-70);
  font-weight: var(--fw-300);
  margin-bottom: 10px;
}

.modal-content p {
  color: var(--light-gray);
  font-size: var(--fs-6);
  font-weight: var(--fw-300);
  line-height: 1.6;
}



/* rotation */

.image-container{
  animation: rotate 3s infinite linear;
}

@keyframes rotate{
  from{
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
  


.title-edit {
  position: relative;
  width: max-content;
  height: max-content;
  background: var(--border-gradient-onyx);
  color: var(--orange-yellow-crayola);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 10px 20px;
  border-radius: 14px;
  font-size: var(--fs-6);
  text-transform: capitalize;
  box-shadow: var(--shadow-3);
  z-index: 1;
  transition: var(--transition-1);
  margin:auto;
  margin-right: 20px; 
  margin-top: 3px;
}

.title-edit::before {
  content: "";
  position: absolute;
  inset: 1px;
  background: var(--bg-gradient-jet);
  border-radius: inherit;
  z-index: -1;
  transition: var(--transition-1);
}

.title-edit ion-icon { font-size: 16px; }

.title-edit:hover { background: var(--bg-gradient-yellow-1); }

.title-edit:hover::before { background: var(--bg-gradient-yellow-2); }

.title-edit:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
