body #loading_page{
  display:block;
  position:absolute;
  width:100%;
  height:100%;
  top:0;
  bottom:0;
  left:0;
  right:0;
  background:rgba(255, 255, 255, 0.8);
  z-index:9999;
  text-align:center;
  padding-top:250px;
}
body #loading_page h1{
  color:#212331;
  font-weight:bold;
  margin-bottom:50px;
}
body #loading_page i.fa-spinner{
  font-size:92px;
  color:#00bcd5;
}

body #ajax-loader{
  width:100%;
  text-align:center;
  padding:50px 0;
}
body #ajax-loader i.fa-spinner{
  font-size:48px;
  color:#00bcd5;
}

body a{
  color: #00bcd5;
}
body a:hover{
  color: #212331;
}
body h3{
  color: #212331;
}
body h4{
  font-style: normal;
  font-weight: bold;
  margin-left: 0;
  padding-bottom: 0;
  padding-top: 0;
	font-size: 1.2em;
	color: #00bcd5;
}

/*****************************************************************************************************************************
 ** FORM NAVIGATION
 ****************************************************************************************************************************/

.sw-theme-arrows > ul.step-anchor > li.done > a,
.sw-theme-arrows > ul.step-anchor > li.done > a:after{
  color:#212331 !important;
}
.sw-theme-arrows > ul.step-anchor > li.active > a,
.sw-theme-arrows > ul.step-anchor > li.active > a:after{
  color:#FFFFFF !important;
}

.sw-theme-arrows > ul.step-anchor > li.active > a {
  border-color:#00bcd5 !important;
  background:#00bcd5 !important;
}
.sw-theme-arrows > ul.step-anchor > li.active > a:after {
  border-left:30px solid #00bcd5 !important;
}
.sw-theme-arrows > ul.step-anchor > li.done > a {
  border-color: #e6fcff !important;
  background: #e6fcff !important;
}
.sw-theme-arrows > ul.step-anchor > li.done > a:after {
  border-left:30px solid #e6fcff !important;
}

/*****************************************************************************************************************************
 ** FORM MESSAGES
 ****************************************************************************************************************************/

body .alert i{
  float:left;
  margin-right:20px;
  margin-top:5px;
}
body .alert p{
  margin-bottom:0;
}

/*****************************************************************************************************************************
 ** FORM STEPS
 ****************************************************************************************************************************/

body #step-3 .nav-container{
	background:#F8F8F8;
	padding-top:10px;
	padding-left:10px;
	height:100%;
	border-radius:10px 0 0 10px;
	border:1px solid #DDDDDD;
}
body #step-3 .liste-ateliers{
  list-style: none;
  padding: 0;
  margin: 0 0 25px 0;
}
body #step-3 .liste-ateliers li{
  width: 100%;
  border: 1px solid #DDD;
  border-radius: 5px;
  box-shadow: 0 0 10px #DDD;
  padding: 15px;
  display: grid;
  grid-template-areas: 
    "title more"
    "content content";
  grid-template-columns: auto 150px;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
body #step-3 .liste-ateliers li h5{
  margin-bottom: 0;
  font-size: 16px;
  grid-area: title;
}
body #step-3 .liste-ateliers li a{
  grid-area: more;
  justify-self: end;
}
body #step-3 .liste-ateliers li .slide-content{
  display: none;
  opacity: 0;
  transition: all 0.5s ease-in-out;
  grid-area: content;
  padding-top: 15px;
}

/** VERTICAL TABS BULLETIN D'INSCRIPTION **/

.d-flex .nav-container{
	border-right:1px solid #ddd;
	padding-bottom:50px;
}

.nav-tabs--vertical {
	border-bottom:none;
	display:flex;
	flex-flow:column nowrap;
}
.nav-tabs--left {
	margin:15px 0;
}
.nav-tabs--left .nav-item + .nav-item {
	margin-top:0.25rem;
}
.nav-tabs--left .nav-item.tab-error a{
	color:#FF0000;
  font-style:italic;
}
.nav-tabs--left .nav-link {
	transition:border-color 0.125s ease-in;
	white-space:nowrap;
	text-transform:uppercase;
}
.nav-tabs--left .nav-link:hover {
	background-color:#F7F7F7;
	border-color:transparent;
}
.nav-tabs--left .nav-link.active {
	border-bottom-color:#DDDDDD;
	border-right-color:#FFFFFF;
	border-bottom-left-radius:0.25rem;
	border-top-right-radius:0;
	margin-right:-1px;
}
.nav-tabs--left .nav-link.active:hover {
	background-color:#fff;
	border-color:#0275D8 #FFFFFF #0275D8 #0275D8;
}

body .step-content form{
	border:1px solid #EEEEEE;
	margin:0 20px;
	padding:20px;
}

body .step-content #participants tbody{
	border:#DDDDDD 1px solid;
}

body .step-content #participants td,
body .step-content #participants tr{
	border:solid 0px transparent;
}

body .step-content #participants td{
  padding:5px 10px;
}

body .step-content .modal-backdrop {
  background-color: #FFFFFF;
}

body .step-content .btn-file {
  position: relative;
  overflow: hidden;
}

body .step-content .btn-file input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 100%;
  min-height: 100%;
  font-size: 100px;
  text-align: right;
  filter: alpha(opacity=0);
  opacity: 0;
  background: red;
  cursor: inherit;
  display: block;
}

body .step-content input[readonly] {
  background-color: white !important;
  cursor: text !important;
}

body .step-content input, body .step-content textarea{
	text-transform:uppercase;
}

body .step-content #facture thead,
body .step-content #facture tfoot{
	background:#333333;
	color:#FFFFFF;
}

body .step-content #facture .tarif{
	text-align:right;
}

body .step-content #conditions .card-header{
	background:#EDEDED;
	border-bottom:0px solid transparent;
	padding:5px;
}

body .step-content #conditions .card-header button,
body .step-content #conditions .card-header button:hover{
	color:#000000;
	text-transform:uppercase;
	font-weight:bold;
	text-decoration:none;
}
