@font-face {
  font-family: ff-meta;
  src: url(/fonts/meta-normal.ttf);
}
html,
body {
  height: 100%;
  color: #2c2c2c;
  background: #fafaf9;
}

.container-white {
  background-color: #fff;
  padding: 20px;
}
.container-blue {
  background-color: #006A71;
  padding: 0px;
  color: white;
}
.container-blue .container{
  padding:0 40px;
}

.container-light-grey {
  background-color: #fcfcfc;
  padding: 10px;
}

.container-medium-light-grey {
  background-color: #f3f3f3;
  padding: 20px;
}

#loading {
  width: 100%;
  height: 100%;
  position: fixed;
  opacity: 0.7;
  background-color: #fff;
  z-index: 9999;
  text-align: center;
  display: none;
}

#loading p {
  color: black;
  position: absolute;
  top: 35%;
  left: 40%;
}

#loading b {
  display: block;
}

#loading img {
  width: 100px
}

@media print {
  .nav-menu-vertical,
  .impression {
    display: none!important;
  }
  a[href]:after {
    content: none;
  }
  .collapse {
    display: block !important;
  }
  .print-name{
    display: block !important;
  }
  .page-break{
    page-break-before:always;
    -webkit-region-break-before:always;
    display: block;
    float: none;
  }
}

.centrer {
  text-align: center;
}

.gris {
  color: #616c70;
}

.bold {
  font-weight: bold;
}

label {
  font-weight: normal;
}

span[data-toggle="popover"] {
  cursor: pointer;
}

.red {
  color: #ed0202;
}

.adresse {
  background-color: #f5f5f5;
  padding: 0;
}

.adresse .topAdresse {
  background-color: #ddd;
  text-align: center;
  padding: 20px 20px;
}

.adresse .bodyAdresse {
  text-align: center;
}

.adresse .bodyAdresse p {
  font-size: 0.9em;
}

.adresse .correspondanceAdresse {
  background-color: #ddd;
  border: 3px solid #f5f5f5;
  margin: 0 auto;
  width: 60px;
  height: 60px;
  margin-top: -30px;
  padding: 12px;
}

.vert {
  color: #57a957;
}

.orange {
  color: #f85b06;
}

.jaune {
  color: #f89406;
}

.rouge {
  color: #bd0300;
}

.bleu {
  color: #0480be;
}

.navbar-inverse .navbar-nav > li > a {
  color: #fff;
}

.navbar-inverse .navbar-nav > li > a:hover {
  color: #a1afbe;
}

.navbar-inverse .navbar-nav > li.active > a {
  color: #d8e079;
}

.navbar-inverse.navbar-web .navbar-nav > li.active > a {
  color: #fff;
}

#account-menu {
  cursor: pointer;
  color: #006A71;
}

#account-menu:hover {
  color: #A28800;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item.active {
  background-color: #f5f5f5;
}
.dropzone .dz-preview {
  margin: 5px 16px 46px 16px !important;
}
.dz-remove{
  margin-top:-110px;
}
.liste-demande-attente li {
  list-style-type: circle;
}

.register-blocks h2 {
  display: inline-block;
  text-transform: uppercase;
  margin-bottom: 15px;
  font-size: 20px;
  line-height: 30px;
}
.register-blocks {
  background-color: white;
  margin-left:20px;
}
.ocre-box{
  border-top: 0.31641em solid #a18925;
  background-color:#fff;
  box-shadow: 0 1px 2px rgb(0 0 0 / 25%);
}
.ocre-box h2, .ocre-box h3, .ocre-box a{
  color: #a18925 !important;
}
.blue-box{
  border-top: 0.31641em solid #254c70;
  background-color:#fff;
  box-shadow: 0 1px 2px rgb(0 0 0 / 25%);
}
.turquoise-box{
  border-top: 0.31641em solid #006A71;
  background-color:#fff;
  box-shadow: 0 1px 2px rgb(0 0 0 / 25%);
}
.brown-box{
  border-top: 0.31641em solid #767662;
  background-color:#fff;
  box-shadow: 0 1px 2px rgb(0 0 0 / 25%);
}
.blue-box h2, .blue-box h3{
  color: #254c70;
}

.brown-box h2, .brown-box h3, .brown-box a{
  color: #767662;
}
.turquoise-box h2, .turquoise-box h3, .turquoise-box a{
  color: #006A71;
}
.rotate {
  transform: rotate(180deg);
}

.nav-menu-vertical {
  background-color: #fff;
  padding: 0;
  border-top: 0.31641em solid #414042;;
  box-shadow: 0 1px 2px rgb(0 0 0 / 25%);
}

.nav-menu-vertical ul {
  padding: 0;
  margin: 0;
}

.nav-menu-vertical ul li {
  list-style: none;
  border-bottom: 1px solid #ccc;
  cursor: pointer;
}

.nav-menu-vertical ul li a {
  font-weight: normal;
  display: block;
  color: #555;
  padding: 15px 0 15px 0;
}

.nav-menu-vertical ul span.glyphicon {
  font-size: 20px;
  float: left;
  margin: 0 10px 0 10px;
}

.nav-menu-vertical .navbar-collapse {
  padding: 0;
}

.nav-menu-vertical ul.sub-menu li {
  padding-left: 20px;
  padding-right: 20px;
  font-size: 1em;
  font-weight: normal;
  border-bottom: 1px solid #eee;
  background-color: #fff;
}

.nav-menu-vertical ul.sub-menu li.active {
  background-size: 15px;
  text-decoration: underline;
}

.nav-menu-vertical ul.sub-menu li a {
  display: block;
  padding: 15px 0 15px 0;
  text-transform: none;
  color: #777;
}

.nav-menu-vertical ul.sub-menu ul.sub-sub-menu {
  background-color: #fff;
}

.nav-menu-vertical ul.sub-menu ul.sub-sub-menu li {
  padding-left: 40px;
}

.nav-menu-vertical ul.sub-menu span.glyphicon-lock {
  float: none;
  color: #b9b9b9;
  font-size: 0.75em;
}

.nav-menu-vertical .panel-body {
  padding: 0;
}

.listeBureau .col-sm-12 {
  height: 180px;
  background-color: #eee;
  margin-bottom: 20px;
  padding: 15px;
}

.listeBureau .fa-plus {
  color: #ccc;
}

.breadcrumb {
  background-color: initial;
  padding: 0;
  margin-top: 10px;
  margin-bottom: 14px;
}

.nopad {
  padding: 0;
  margin: 0;
}
.formation {
  display: flex;
  flex-wrap: wrap;
}

.catalogue {
  background-color: #fff;
  margin: 10px 0;
  padding: 0;
  flex-basis: 32.6%;
}

.nomarg {
  margin: 0 !important;
}

.noborder {
  border-top: 0px solid #fff !important;
}

.invalid-feedback {
  border: 1px solid #f00;
  margin-top: 5px;
  font-size: 0.9em;
  display: flex;
  align-items: flex-start;
}

.invalid-feedback div {
  padding: 7px;
  display: inline-block;
}

.invalid-feedback::before {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 96%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 70% 100%, 0 100%);
  padding: 4px;
  color: #fff;
  font-style: italic;
  font-weight: bold;
  background-color: #f00;
  content: " ! ";
  padding-right: 10px;
}

.no-activite-subtitle {
  text-align: right;
  padding: 15px;
}

.space {
  clear: both;
  height: 20px;
}

.space30 {
  clear: both;
  height: 20px;
}

.login {
  padding: 30px;
  text-align: center;
  border: 1px solid #ccc;
}

.rows .rapport {
  display: inline-block;
  padding: 5px 0;
}

.rows .title {
  width: 40%;
}

.rows .date {
  width: 20%;
  color: #555;
}

.rows .status {
  width: 15%;
}

.rows .action {
  width: 20%;
}

.form-text {
  margin-top: 7px;
}

form .form-group label.control-label {
  color: #666;
  margin-bottom: 5px;
  margin-top:10px;
}

form .form-group.col-sm-5 {
  margin-right: 2%;
}

form label.col-sm-12 {
  padding: 0;
}

.form-horizontal .control-label {
  text-align: left;
  padding-top: 0;
  padding-right: 0;
}

.td15 {
  width: 15%;
}

.td10 {
  width: 10%;
}

.facture {
  font-family: Times New Roman, serif;
}

.facture .address {
  border-top: 3px solid #000;
  border-bottom: 3px solid #000;
  padding: 15px;
}

.small-calendar {
  width: 30px;
}

.small-calendar .day-of-week {
  border-radius: 3px 3px 0 0;
  background-color: #5092bd;
  width: 30px;
  height: 15px;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-size: 0.65em;
  line-height: 15px;
}

.small-calendar .day-of-month {
  border: 1px solid #eee;
  border-top: none;
  border-bottom-color: #e2e2e2;
  border-radius: 0 0 3px 3px;
  width: 30px;
  height: 16px;
  text-align: center;
  font-weight: bold;
  font-size: 0.85em;
  line-height: 16px;
  background-color: #fff;
}

.small-calendar-today .day-of-week {
  background-color: #9dd869;
}

.month-of-year {
  background-image: -webkit-linear-gradient(-45deg, transparent 40%, rgba(0,0,0,0.1) 40%, rgba(0,0,0,0.1) 60%, transparent 60%);
  background-size: 4px 4px;
  cursor: auto !important;
}

.month-of-year span {
  font-weight: bold;
  font-size: 1.3em;
  color: #808080;
  text-transform: uppercase;
  line-height: 30px;
  padding: 10px 20px 10px 47px;
  text-shadow: 0 1px rgba(255,255,255,0.9);
}

.categorie-formation-en-ligne {
  background-image: -webkit-linear-gradient(-45deg, transparent 40%, rgba(0,0,0,0.1) 40%, rgba(0,0,0,0.1) 60%, transparent 60%);
  background-size: 4px 4px;
  cursor: auto !important;
}

.categorie-formation-en-ligne span {
  font-weight: bold;
  font-size: 1.3em;
  color: #808080;
  text-transform: uppercase;
  line-height: 30px;
  padding: 10px 20px 10px 47px;
  text-shadow: 0 1px rgba(255,255,255,0.9);
}

.formation-en-ligne-titre {
  width: 55%;
}

.formation-en-ligne-duree {
  width: 15%;
}

td.note-cours {
  width: 150px;
}

.img-cours {
  height: 30px;
  width: 30px;
}

.footer {
  margin-top: 80px;
  color: #fff;
  padding: 20px;
  background-color: #343335;
  text-align: center;
  font-family: Trebuchet MS;
}

.footer p {
  padding: 0px 0px 0em;
}

.catalogue .col {
  padding: 10px;
  min-height: 125px;
}

.catalogue .cataloguePrix {
  font-size: 1.3em;
  margin: 0;
}

.catalogue .img hr {
  margin-top: -20px;
}

.catalogue .img img {
  border: 3px solid #fff;
  box-shadow: 2px 2px 10px #ccc;
}

.catalogue .visionnerCours {
  padding: 10px;
  position: absolute;
  bottom: 0;
  width: 100%;
}

@media (min-width: 768px) {
  .catalogue {
    height: 260px;
  }
  .formation-cours {
    height: auto;
    align-items: stretch;
    margin-right:5px;
  }

}

.grisPetit {
  color: #777;
  font-size: 0.9em;
}

.btn-panier {
  color: #fff;
  background-color: #2c2c2c;
  padding: 5px;
  margin-top: -20px;
  margin-right: -20px;
}

.col-sm-6.catalogue {
  width: 49%;
}

.tab-type-affichage {
  border: none;
}

.tab-type-affichage li.active a .bleu {
  color: #000;
}

.navbar-inverse {
  background-color: #3a6f8f;
  border: none;
}

.navbar {
  border-radius: 0px;
  min-height: 0px;
}

.navbar-web {
  margin-bottom: 0;
  background-color: #2c2c2c;
  min-height: 50px;
}

.btn {
  border-radius: 0;
}

table.table-formation tr {
  cursor: pointer;
}

th {
  font-weight: bold;
}

.pull-right {
  float: right;
}

#ui-datepicker-div {
  z-index: 2000 !important;
}

/* Page avantage sociaux */
#avantages-corporatifs-assurances img,
#avantages-corporatifs-telephonie img {
  padding-bottom: 10px;
}

#avantages-corporatifs-assurances li,
#avantages-corporatifs-telephonie li {
  -webkit-font-smoothing: antialiased;
}

/* page MCPA */
#mcpa h5 a,
#mcpa h6 a {
  color: #2c2c2c;
  font-weight: 500;
}

#mcpa h5 a i,
#mcpa h6 a i {
  margin-right: 10px;
}

#mcpa ul {
  list-style: none;
}

#mcpa #volumes {
  padding-left: 0;
}

#mcpa #table-matiere {
  padding-left: 20px;
}

#mcpa #table-matiere ul {
  padding-left: 20px;
}

#mcpa .collapsing {
  transition: height 0.6s;
}

/* Page inspection  - Document en attente */
#documents-inspection-en-attente tr.document-row td {
  vertical-align: middle;
}

#documents-inspection-en-attente td.document-name {
  width: 20%;
}

#documents-inspection-en-attente .documents-generaux td.document-name {
  width: 25%;
}

#documents-inspection-en-attente td.file {
  width: 300px;
}

#documents-inspection-en-attente textarea {
  resize: none;
}

#documents-inspection-en-attente .errors {
  margin-top: 30px;
}

#documents-inspection-en-attente #btn-submit {
  margin-top: 20px;
}

#documents-inspection-en-attente .document-file {
  margin-bottom: 2px;
  margin-top: 2px;
  border: none;
  outline: 0;
  padding: 5px 15px;
  webkit-box-shadow: none;
  box-shadow: none;
  width: 90%;
  display: inline-block;
  font-size: 12px;
  height: 25px;
}

#documents-inspection-en-attente tr p {
  font-size: 12px;
}

/* Page inspection  - Recensement de la pratique */
li.question {
  font-weight: bold;
  margin-bottom: 10px;
}

#recensement-pratique .form-check-input {
  width: 5%
}

#recensement-pratique .form-check-label {
  width: 95%;
  display: inline-block;
  vertical-align: top;
}

#recensement-pratique-rapport .form-check-input {
  width: 5%
}

#recensement-pratique-rapport .form-check-label {
  width: 95%;
  display: inline-block;
}

#recensement-pratique-rapport .recommandations {
  background-color: #def2e899;
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid #def2e8;
  border-radius: 4px;
}

/* Page accueil */
.welcome_services .welcome-icon svg {
  height: 100%;
}
.welcome_services h3 {
  color:#A28800;
}

.count-item-text {
  margin-top: 2px;
  color: #d27e04;
}

.count-item:hover .count-item-text {
  margin-top: 2px;
  color: white;
}

/* Page rapport de stage */
.comment-ordre-rapport-stage label {
  width: 100%;
  padding-left: 10px;
  background-color: rgba(210,126,4,0.129);
}

.comment-ordre-rapport-stage div {
  padding-left: 10px;
  background-color: rgba(210,126,4,0.129);
}

/* Publicités */
.ads {
  margin-bottom: 20px;
  text-align: center;
}

#sas_71881 {
  display: inline-block;
}

.ads #sas_13386 img {
  display: block;
  margin: auto;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.espace-a-completer{
  border: floralwhite 1px groove;
  height: 150px;
  margin-bottom:10px;
}

.bold {
  font-weight: bold;
}

.demande-en-attente {
  background-color: #f2dede4d;
  padding: 0 10px;
  margin-bottom: 20px;
  border: 1px solid #ebccd1;
  border-radius: 4px;
}

.demande-en-attente .fa-clock {
  color: #ec1407a3;
}

.demande-en-attente .adresses {
  margin-left: 40px;
}

.demande-en-attente .adresses-content {
  margin-left: 15px;
}

.formation-objectifs {
  word-wrap: break-word;
}

.inscription-double {
  font-size: 12px;
}

#inscription-exac hr {
  margin-top: 0px;
}

#inscription-exac  label {
  color: black;
}

#inscription-exac .input-group {
  margin-left: 20px;
}

#inscription-exac .input-group select {
  border: 1px solid rgb(218, 218, 218);
}

#inscription-exac input[type=file] {
  border: 1px solid rgb(218, 218, 218);
}

#inscription-exac .input-group .datepicker {
  border: 1px solid rgb(218, 218, 218);
}

#inscription-exac input[type=checkbox] {
  margin-right: 5px;
}

#inscription-exac input[type=radio] {
  margin-right: 5px;
}

#inscription-exac .section {
  margin-top: 40px;
}

.tooltip-section-reussi {
  margin-left: 5px;
}

#inscription-exac .tooltip-inner {
  min-width: 200px;
  text-align: left;
}

.connexion-visiteur, .connexion-membre {
  display: inline-block;
  margin-top: 15px;
  border: 1px solid #a18925;
  font-size: 14px;
  color: #a18925;
}

.connexion-visiteur:hover, .connexion-membre:hover {
  color: #FFF;
  background-color: #a18925;
  border-color: #a18925;
}

.menu-acces {
  padding-right: 5px;
}

.menu-acces h2 {
  display: inline-block;
}

form.dropzone#dropzoneDessin{
  background:url("../img/fond-dessin-prix-excellence.png");
  background-size:cover;
  height:300px;
}
form.dropzone#dropzoneIdentification, form.dropzone#dropzoneTexte, form.dropzone#dropzoneResume, form.dropzone#dropzoneAutorisationClient, form.dropzone#dropzoneAutorisationPhotographe, form.dropzone#dropzoneCertificat, form.dropzone#dropzoneAutreCertification{
  background:url("../img/fond-document-prix-excellence.png") no-repeat;
  background-size:contain;
  height:186px;
  width:165px;
}

form.dropzone#dropzonePhoto{
  background:url("../img/fond-photo-prix-excellence.png");
  background-size:cover;
  height:600px;
  width:785px;
}
.navigation-prix-excellence{
  position:fixed;
  right:0;
  text-align:right;
  text-transform:uppercase;
  font-size:0.9em;
  text-transform: uppercase;
  font-size: 0.9em;
  margin-top:50px;
  z-index:30;
  width: 12% !important;
  padding-left: 0;
  overflow: hidden;
}
.navigation-prix-excellence .step{
  color:#656565;
  margin-bottom:20px;
}
.navigation-prix-excellence .step.active .cercle{
  color:#fff !important;
  font-weight:bold;
  background-color:#64cd85;
}
.navigation-prix-excellence .step .cercle{
  padding:3px;
  margin-left:4px;
  margin-bottom:-6px;
  text-align: center;
  display: inline-block;
  width: 25px;
  height: 25px;
  border: 2px solid #64cd85;
  border-radius: 50%;
  color:#64cd85;
  box-shadow: 2px 1px 6px #ccc;
}
.navigation-prix-excellence .step a{
  color:#656565;
}
.navigation-prix-excellence .step a:hover{
  color:#000;
}

@media (max-width: 890px) {
  .navigation-prix-excellence{
    display:none;
  }

}

.nav-plan-developpement.nav-tabs > li.active > a,
.nav-plan-developpement.nav-tabs > li.active > a:hover,
.nav-plan-developpement.nav-tabs > li.active > a:focus {
  border: 1px solid transparent;
}
.nav-plan-developpement.nav-tabs {
  border: 0px solid #fff;
  margin: auto;
}
.btn-submit-plan-developpement {
  padding: 0;
}
.nav-plan-developpement.nav-tabs .img-circle {
  width: 70px;
  height: 70px;
  padding: 15px;
  color: #fff;
  text-align: center;
  font-size: 1.6em;
  margin: 0 auto;
  font-family: aleo, Times New roman, serif;
}
.nav-plan-developpement.nav-tabs > li > a{
  border-width:0;
}
.nav-plan-developpement.nav-tabs > li > a:hover,
.nav-plan-developpement.nav-tabs > li > a:active,
.nav-plan-developpement.nav-tabs > li > a:focus
{
  border:0;
  font-weight:bold;
  border-width:0;
  transition:none;
  background-color:transparent;
}
li.step-success .img-circle {
  background-color: #93cf5d;
}
.nav-plan-developpement.nav-tabs li.step-success:after,
.nav-plan-developpement.nav-tabs li.step-success:before {
  background-color: #93cf5d;
}
li.step-todo .img-circle {
  background-color: #428bca;
}
.nav-plan-developpement.nav-tabs li.step-todo:after,
.nav-plan-developpement.nav-tabs li.step-todo:before {
  background-color: #428bca;
}
li.step-block .img-circle {
  background-color: #ccc;
}
.nav-plan-developpement.nav-tabs li.step-block:after,
.nav-plan-developpement.nav-tabs li.step-block:before {
  background-color: #ccc;
}
.nav-plan-developpement.nav-tabs li:after {
  position: absolute;
  background-color: #eaeaea;
  top: 36%;
  width: 35%;
  height: 10px;
  margin-left: 14%;
  content: '';
}
.nav-plan-developpement.nav-tabs li:before {
  position: absolute;
  background-color: #eaeaea;
  top: 36%;
  width: 35%;
  height: 10px;
  left: 0%;
  content: '';
}
.nav-plan-developpement.nav-tabs > li {
  text-align: center;
  width: 260px;
  height:125px;
  padding: 10px;
}
.nav-plan-developpement.nav-tabs > li .text-left {
  font-size: 0.9em;
  text-align:center;
}
.nav-plan-developpement.nav-tabs > li > a {
  font-size: 1.2em;
  padding: 0;
}
.nav-plan-developpement.nav-tabs > li.active > a {
  background-color: initial;
}
.nav-disabled > li > a {
  cursor: default;
  color: #333;
}

@media (max-width: 1200px) {
  .nav-plan-developpement.nav-tabs > li{
    width: 210px !important;
  }

}
@media (max-width: 990px) {
  .nav-plan-developpement.nav-tabs > li{
    width: 155px !important;
  }

}

.card-header{
  padding:10px;
  background-color: #eee;
  margin-bottom:4px;
  cursor:pointer;
}

.slidecontainer {
  width: 100%;
}

.slider {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 25px;
  background: #d3d3d3;
  outline: none;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
}

.slider:hover {
  opacity: 1;
}

input.slider[type="range"] {
    display: inline-block !important;
    width: 100% !important;
    padding:0;
}
.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  background: #4CAF50;
  cursor: pointer;
}

.slider::-moz-range-thumb {
  width: 25px;
  height: 25px;
  background: #4CAF50;
  cursor: pointer;
}

.left-bound, .right-bound{
  padding:2% 3%;
  width:10%;
}
.echelle{
  padding:8.5px;
  font-size:0.8em;
}

.legende-mauvais{
  font-size:0.8em;
}

.legende-excelent{
  font-size:0.8em;
}


/**************** file input bootstrap 4 ********************/
.input-group {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 100%;
}

.input-group.searchicon{
  display: table;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}

.input-group > .form-control:not(:last-child),
.input-group > .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: -ms-flexbox;
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}
.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}
.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  opacity: 0;
}
.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}
.custom-file-input:lang(fr) ~ .custom-file-label::after {
  content: "Choisir";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.cotisation label, input {
  cursor: pointer;
}
