/* --------------------------------------- */
/* ---------- MOBILE XS - 300px ---------- */
@media (min-width:1px) {

    /* general */
    body {
        padding-top: 4rem;
    }

    .section-contact {
        background: #ffffff;
    }

    h1 {
        text-align: center;
        text-transform: uppercase;
        font-weight: 600;
        font-size: 42px;
    }

    .sous-titre-h1 {
      color:#697077;
      font-size: 22px;
      font-family: 'Biryani', sans-serif;
      text-align: center;
      margin: 0 auto 2rem auto;
      font-weight: 600;
    }

    /* style formulaire */

    .col-form {
        padding: 3rem 14vw;
        background-color: #fdfdfd;
    }

    .form-box {
        margin-bottom: 1.4rem;
    }

    label {
        display: block;
        margin-bottom: 0.5rem;
        font-size: 18px;
        font-family: 'Kanit', sans-serif;
        font-weight: 500;
    }

    input {
        width: 100%;
        margin: auto;
        height: 2.5rem;
        padding: 0.3rem 0.5rem 0rem 0.5rem;
        border: 1px solid #2c373f;
        border-radius: 3px;
        font-size: 16px;
        font-family: 'Biryani';
        background: #fbfbfb;
    }

    input:hover {
        border: 1px solid #F07E13;
    }

    input:focus, input:focus-visible {
        border: 1px solid #F07E13;
        background: #fff8f1;
        outline: none;
    }

    select {
        width: 100%;
        height: 2.5rem;
        padding: 0.3rem 0.5rem 0rem 0.5rem;
        border: 1px solid #2c373f;
        border-radius: 3px;
        font-size: 16px;
        font-family: 'Biryani';
        background: #fbfbfb;

        margin: 0;      
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-appearance: none;
        -moz-appearance: none;

        background-image:
          linear-gradient(45deg, transparent 50%, #2C373F 50%),
          linear-gradient(135deg, #2C373F 50%, transparent 50%),
          linear-gradient(to right, #2C373F, #2C373F);
        background-position:
          calc(100% - 20px) calc(1em + 2px),
          calc(100% - 15px) calc(1em + 2px),
          calc(100% - 2.5em) 0.5em;
        background-size:
          5px 5px,
          5px 5px,
          0px 0px;
        background-repeat: no-repeat;
      }

      select:hover {
        border-color: #F07E13;
      }
      
      select:focus {
        background-image:
          linear-gradient(45deg, #F07E13 50%, transparent 50%),
          linear-gradient(135deg, transparent 50%, #F07E13 50%),
          linear-gradient(to right, #F07E13, #F07E13);
        background-position:
          calc(100% - 15px) 1em,
          calc(100% - 20px) 1em,
          calc(100% - 2.5em) 0.5em;
        background-size:
          5px 5px,
          5px 5px,
          0px 0px;
        background-repeat: no-repeat;
        border-color: #F07E13;
        outline: 0;
      }

      select:-moz-focusring {
        color: transparent;
        text-shadow: 0 0 0 #000;
      }

      select * {
        font-family: 'Biryani';
      }

      textarea {
        width: 100%;
        margin: auto;
        height: 8rem;
        padding: 0.5rem 0.5rem 0rem 0.5rem;
        border: 1px solid #2c373f;
        border-radius: 3px;
        font-size: 16px;
        font-family: 'Biryani';
        background: #fbfbfb;
      }

      textarea:hover {
        border: 1px solid #F07E13;
    }

    textarea:focus, textarea:focus-visible {
        border: 1px solid #F07E13;
        background: #fff8f1;
        outline: none;
    }

    .opt-input {
      color:#697077;
      font-style: italic;
      font-size: 16px;
    }

    .captcha {
      display: flex;
      justify-content: center;
      margin-bottom: 2rem;
    }

    .btn-contact {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 2rem;
    }

    .btn-contact button {
      font-size: 20px;
    }

    .infobulle-contact {
      position: fixed;
      left: 50%;
      top: 6rem;
      transform: translate(-50%,0%);
    }

    .toast {
      background-color: rgb(255, 255, 255);
      border: none;
      border-radius: .5rem;
    }

    .toast-header {
      background-color: #2c373f;
      color: #ffffffff;
      font-family: 'Kanit', sans-serif;
      font-weight: 300;
      font-size: 18px;
    }

    .btn-close {
      opacity: 90%;
    }

    .btn-close:hover {
      opacity: 100%;
    }

    .toast-body {
      background-color: rgb(255 255 255);
      font-family: 'Biryani', sans-serif;
      font-weight: 500;
      line-height: 1.8rem;
      font-size: 15px;
    }

    .toast-header-success-msg {
      background: #17d752;
    }

    .toast-header-failure-msg {
      background: #d11616;
    }

    .toast-header-alert-msg {
      background: #F07E13;
    }


    /* style arguments */
    .col-arguments {
        padding: 4rem 2rem;
        background: #48525B;
        display: flex;
    }

    .contact-content {
        margin: auto;
    }

    .contact-content .arg-bloc:last-child {
      margin-bottom: 0;
    }

    .arg-bloc {
        display: flex;
        margin-bottom: 3rem;
        justify-content: center;
    }

    .arg-bloc img {
      margin: auto auto 0.75rem auto;
      width: 90px;
      height: auto;
    }

    .arg-bloc p {
      margin:auto;
      text-align: center;
      color:#ffffff;
      font-size: 18px;
      font-family: 'Biryani', sans-serif;
      font-weight: 500;
      padding-top: 0.3rem;
    }

    .g-recaptcha {
      -webkit-transform:scale(0.77);
      transform:scale(0.77);
    }
    
    /* style téléphone */
    .contact-info {
      margin: 2rem auto auto auto;
      border-top: 2px solid #f07e13;
      padding-top: 1.25rem;
    }

    .contact-info-title {
      display: flex;
      flex-wrap: wrap;
    }

    .contact-info-title img {
      width: 40px;
      height: auto;
      margin: auto;
    }

    .contact-info h2 {
      font-family: 'Kanit', sans-serif;
      font-size: 20px;
      text-transform: uppercase;
      color: #f07e13;
      margin: 0.5rem 0 2rem 0;
      text-align: center;
      width: 100%;
      font-weight: 600;
      line-height: 1.2;
    }

    .contact-info h3 {
      color: #242424;
      font-size: 20px;
      font-family: 'Kanit', sans-serif;
      font-weight: 500;
      margin-bottom: .5rem;
      line-height: 1.2;
    }

    .contact-info .sous-titre {
      font-size: 16px;
      font-family: 'Biryani', sans-serif;
      color: #697077;
      font-style: italic;
      font-weight: 600;
      margin-bottom: 0.5rem;
    }

    .contact-info .numero {
      font-size: 18px;
      font-family: 'Biryani', sans-serif;
      font-weight: 700;
      color: #242424;
      margin-bottom: 2rem;
    }

}




/* ----------------------------------------------- */
/* ---------- PETIT TABLETTE SM - 576px ---------- */
@media (min-width:576px) {

  .col-arguments {
    padding: 4rem 4rem;
  }

  .g-recaptcha {
    -webkit-transform:scale(1);
    transform:scale(1);
  }

  .contact-info-title {
    flex-wrap: nowrap;
    margin-bottom: 2rem;
  }

  .contact-info-title img {
    margin: auto 0.75rem auto 0px;
  }

  .contact-info h2 {
    font-size: 18px;
    text-align: left;
    margin: auto 0;
    width: fit-content;
    width: -moz-fit-content;
  }
    
}

/* ----------------------------------------------- */
/* ---------- TABLETTE MD - 768px ---------- */
@media (min-width:768px) {

  .col-form {
    padding: 5rem 14vw;;
  }

  .captcha {
    justify-content: end;
  }

  .btn-contact {
    justify-content: start;
  }
    
}

/* ----------------------------------------------- */
/* ---------- PETIT ECRAN LG - 992px ---------- */
@media (min-width:992px) {

  .captcha {
    justify-content: center;
  }

  .btn-contact {
    justify-content: center;
  }

  .infobulle-contact {
    left: auto;
    top: auto;
    transform: translate(0%,0%);
    bottom: 4rem;
    right: 2rem;
  }

  /* style arguments*/

  .arg-bloc {
    margin-bottom: 5rem;
  }

  .arg-bloc p {
    font-size: 16px;
  }


    
}



/* --------------------------------------------- */
/* ---------- ECRAN MOYEN XL - 1200px ---------- */
@media (min-width:1200px) {

  .col-form {
    padding: 4rem 7rem;
  }

  .captcha {
    justify-content: end;
  }

  .btn-contact {
    justify-content: start;
  }


}



/* ---------------------------------------------- */
/* ---------- ECRAN LARGE XXL - 1400px ---------- */
@media (min-width:1400px) {

  .col-form {
    padding: 6rem 11rem;
  }

  /* style arguments */

  .arg-bloc img {
    width: 100px;
  }

  .arg-bloc p {
    font-size: 18px;
  }

}

/* ---------------------------------------------- */
/* ---------- CAS PARTICULIER - 1900px ---------- */
@media (min-width:1900px) {

  .col-form {
    padding: 4rem 18rem;
  }

}