@charset "utf-8";
/*++++++++ STYLES DE FORMULAIRE++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.btn{border-radius:2em;font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;padding:0.85em 2em !important;transition:all 0.6s;}
.btn:hover{transition: all 0.6s;}
.btn-primary{color:#fff;}
.btn-secondary{color:var(--primary);}
.btn-primary:hover{background: var(--secondary) !important;color: var(--primary) !important;border-color:var(--primary) !important;}
.btn-secondary:hover{background: var(--primary) !important;color: var(--secondary) !important;border-color:var(--secondary) !important;}
.btn-success:hover{background: rgba(var(--successRVB),0.5) !important;}
.btn-info:hover{background: rgba(var(--infoRVB),0.5) !important;}
.btn-warning:hover{background: rgba(var(--warningRVB),0.5) !important;}
.btn-danger:hover{background: rgba(var(--dangerRVB),0.5) !important;}
.btn-light-yellow:hover {background: var(--secondary) !important;color: var(--primary) !important;border-color: var(--primary) !important;}
.btn-lg, .btn-group-lg > .btn {padding: 1rem 2vw !important;font-size: 1rem;}
.btn-sm, .btn-group-sm > .btn {
    padding: 0.20rem 0.5rem !important;
    font-size: 0.6rem !important;
    line-height: 1rem;
	border-radius: 0.9rem;}

.form-control:active,
.form-control:focus{background: none;border-color: var(--primary);box-shadow: none;color: inherit;outline: none;webkit-box-shadow: none;}
.form-control{border-radius: 15px;
  color:inherit;
  font-size: 1.1rem;
  height: calc(1.75em + 0.75rem + 2px);
  background: rgba(var(--gray-lightRVB),0.15);
  border-color: transparent;}
.custom-file-label::after{background-color: var(--secondary);border-radius: 0;color: #fff;content: "Parcourir";}
.custom-file-input:lang(fr) ~ .custom-file-label::after{content: "Parcourir";}
.custom-file{display: inline-block;height: calc(1.5em + 0.75rem + 2px);margin-bottom: 0;position: relative;width: 100%;}
.custom-file-input{height: calc(1.5em + 0.75rem + 2px);margin: 0;opacity: 0;position: relative;width: 100%;z-index: 2;}
.custom-file-input:focus ~ .custom-file-label{border-color: var(--primary);box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.05);}
.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label{background-color: var(--light);}
.custom-file-label{background-color: #fff;border: 1px solid var(--gray-light);border-radius: 0.25rem;color: var(--gray);font-weight: 400;height: calc(1.5em + 0.75rem + 2px);left: 0;line-height: 1.5;padding: 0.375rem 0.75rem;position: absolute;right: 0;top: 0;z-index: 1;}
.custom-file-label::after{background-color: var(--primary);border-left: inherit;border-radius: 0;bottom: 0;color: var(--light);content: "Parcourir";display: block;height: calc(1.5em + 0.75rem);line-height: 1.5;padding: 0.375rem 0.75rem;position: absolute;right: 0;top: 0;z-index: 3;}
.form-control::-webkit-input-placeholder{color:var(--gray);opacity:1;}
.form-control::-moz-placeholder{color:var(--gray);opacity:1;}
.form-control:-ms-input-placeholder{color:var(--gray);opacity:1;}
.form-control::-ms-input-placeholder{color:var(--gray);opacity:1;}
.form-control::placeholder{color:var(--gray);opacity:1; font-size: 14px;}
.input-group-text{border-radius : 0;}
.btn-circle {width: 50px !important;height: 50px;padding: 0 !important;}
.btn-circle .fa-sharp {font-size: 1.5em;}
.nav-link.btn.btn-outline-light.btn-circle:hover {
    background: var(--primary);
    border-color: var(--primary);
}
.input-group > .input-group-prepend > .input-group-text{border-top-left-radius:1.5rem;border-bottom-left-radius:1.5rem;background:rgba(var(--gray-lightRVB),0.25);color:inherit;border-color:transparent;}
.input-group > .input-group-append > .input-group-text{border-top-right-radius:1.5rem;border-bottom-right-radius:1.5rem;background:rgba(var(--gray-lightRVB),0.25);color:inherit;border-color:transparent;}
.was-validated .form-control:valid, .form-control.is-valid {
	border-color: var(--primary);color: var(--primary);}
.was-validated .form-control:invalid, .form-control.is-invalid {color: var(--danger);
}

.btn-more::after{content:'\2b';font-family:"font Awesome 6 Pro";padding:0 0 0 0.25rem;margin-left:0;transition:all 0.8s;font-size:0;line-height:inherit;vertical-align: middle;}
.btn-more:hover::after{font-size:inherit;display: inline-block;margin-left:1.5rem;}
.btn-more{line-height:1.5em;z-index: 2;position: relative;}

.small-btns{
	height: 4rem;
  width: 4rem;
  -ms-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  border-radius: 1rem;margin-bottom:1rem;
}
.small-btns span {
  -ms-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  color: #fff;
	flex-direction: column;
font-size: 0.55rem;
  line-height: 1.1em;
}
.btn-search::before {
  content: '';
  height: 4rem;
  width: 4rem;
  -ms-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  border-radius: 1rem;
  display: block;
  background: var(--light);
  position: absolute;
  z-index: -1;
  bottom: 0;
  right: -2.5rem;
}
.btn-search {
  position: relative;
  display: flex;
  height: 4rem;
  align-items: center;color: var(--primary);
  padding-left: 4rem;
}
.formulaire-entree .custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: var(--secondary);
  background-color: var(--secondary);
}
.formulaire-entree .custom-control-label::before {
  position: absolute;
  top: 0.05rem;
  left: -2rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: var(--secondary) solid 1px;
}
.formulaire-entree .custom-control-label::after {
  position: absolute;
  top: -0.45rem;
  left: -2.5rem;
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  content: "";
  background: no-repeat 50% / 50% 50%;
    background-image: none;
}