body {
    font-family: AvenirNextLTPro-Regular,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;
    color: #646a6f;
}

.navbar {
    padding-left: 35px
}

.bg-dark {
    background-color: #FFF !important;
    height: 90px;
    max-width: 100%;
}

.head {
    padding-right: 3.65vw;
}

#home {
    margin-top: 20px;
    margin-bottom: 50px;
}

.headlogo {
	position: absolute;
	left: 15px;
	top: 14px;
}

.logo {
    width: 230px;
}


.etape1_titre,.etape2_titre,.etape3_titre {
	color: #000;
	font-family: 'Fira Sans', sans-serif;
	font-weight: 600;
	font-size: 2rem;
}

.coach {
	background-color: #f4fafa;
	padding-top: 20px;
	padding-bottom: 20px;
	border-radius: 10px;
}

.coach:hover {
	box-shadow: 0px 0px 9px -2px rgba(0,0,0,0.5);
}

.coach_description_min {
	cursor: pointer;
}

.coach_description_full {
	cursor: pointer;
}

.coach_gauche {
	width: 20%;
	text-align: center;
	align-self: baseline;
}

@keyframes increase {
    100% {
        width: 440px;
    }
}

@keyframes increase2 {
    100% {
        width: 540px;
    }
}

@keyframes increase3 {
    100% {
        width: 530px;
    }
}

.etape1_titre::after {
	bottom: 0;
	content: "";
	display: block;
	height: 4px;
	right: 0;
	position: absolute;
	background: linear-gradient(to right, #fff, #8CCBD8 200%);
	transition: width .5s ease 0s, right .5s ease 0s;
	left: 0px;
	width: 0px;
	animation-name: increase;
	animation-duration: 1s;
	animation-fill-mode: forwards;
}

.etape2_titre::after {
	bottom: 0;
	content: "";
	display: block;
	height: 4px;
	right: 0;
	position: absolute;
	background: linear-gradient(to right, #fff, #8CCBD8 200%);
	transition: width .5s ease 0s, right .5s ease 0s;
	width: 0px;
	animation-name: increase2;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	left: 0px;
}

.etape3_titre::after {
	bottom: 0;
	content: "";
	display: block;
	height: 4px;
	right: 0;
	position: absolute;
	background: linear-gradient(to right, #fff, #8CCBD8 200%);
	transition: width .5s ease 0s, right .5s ease 0s;
	width: 0px;
	left: 0px;
	animation-name: increase3;
	animation-duration: 1s;
	animation-fill-mode: forwards;
}

.trustpilot-head {
	position: relative;
	align-self: center;
	text-align: left;
	margin-right: 130px;
}

.coach_centre {
	width: 60%;
	align-self: center;
}

.coach_centre p {
	color: #000;
	font-family: 'Fira Sans', sans-serif;
	font-weight: 600;
	font-size: 20px;
	width: 250px;
}

.stars {
	width: 125px;
}

.coach_droite {
	width: 20%;
	text-align: center;
	align-self: start;
}

.coach_pic img {
	border-radius: 50%;
	max-width: 120px;
}

.coach_pic2 {
	width:  25%;
	text-align: center;
}
.coach_pic2 img {
	border-radius: 50%;
	max-width: 80px;
}

.coach_pic3 {
	text-align: left;
	margin-right: 25px;
}
.coach_pic3 img {
	border-radius: 50%;
	max-width: 80px;
}

.offre_info {
	text-align: center;
	width: 75%;
	align-self: center;

}

.offre_info_titre {
	font-size: 25px;
	color: #8CCBD8;
	font-family: 'Fira Sans', sans-serif;
	font-weight: 600;
}

.offre_info_semaine {
	font-size: 24px;
	font-family: 'Fira Sans', sans-serif;
	color: #000;
}


.offre_info2 {
	text-align: left;
	width: 75%;
	align-self: center;

}

.offre_info_titre2 {
	font-size: 18px;
	color: #2d2b2b;
	font-family: 'Fira Sans', sans-serif;
	font-weight: 600;
}

.offre_info_titre2 span {
	color: #8CCBD8;
}

.offre_info_semaine2 {
	font-size: 16px;
	font-family: 'Fira Sans', sans-serif;
	color: #2d2b2b;
	font-weight: 500;
}

.offre_description {
	color: #000;
}
.offre_description ul {
	margin-left: -15px;
}

.nodeco {
	text-decoration: none !important;
}

.offre_total {
	color: #000;
	text-align: center;
}

.offre_promo {
	color: #000;
	width: 60%;
	text-align: center;
	font-style: italic;
	font-size: 15px;
}

.btn-custom {
	background-color: rgb(140, 203, 216);
	color: #FFF;
}

.btn-custom:hover,.btn-custom:active,.btn-custom:focus {
	background-color: rgba(140, 203, 216,0.8);
	color: #FFF;
}

.stars img {
	width: 20px;
}

.theme {
	border: 1px solid #b1b4b4;
	border-radius: 10px;
	background-color: #ffffff;
	color: #000;
	font-size: 14px;
	padding: 5px 10px;
	display: inline-block;
	margin-bottom: 10px;
}

.coach_dispo {
	border-radius: 10px;
	background-color: #00b67a;
	color: #FFF;
	display: inline-block;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 13px;
}

.coach_ico_img {
	float: left;
	width: 25px;
}
.coach_ico_img img {
	width: 25px;
}
.coach_ico_txt {
	text-align: left;
	margin-left: 30px;
}

.coach_ico_txt small {
	font-size:  11px;
}

.coach_ico {
	text-transform: uppercase;
	color: #000;
	font-size: 12px;
	line-height: 14px;
	font-family: 'Fira Sans', sans-serif;
	width: 135px;
	text-align: center;
	margin: 0 auto;
}

.offre1 {
	background-color: #f4fafa;
	padding: 30px 30px;
	border-radius: 5px;
}
.offre2 {
	border: 1px solid #81cbce;
	padding: 30px 30px;
	border-radius: 5px;
}

.w-85 {
    width: 85% !important;
}
.w-75 {
    width: 75% !important;
}

.text-garantie {
	color: #000;
}

.text-garantie img {
	height: 45px;
}

.retour a {
	color: #8CCBD8;
	text-decoration: none;
}

.fiche_patient {
	color: #8CCBD8;
	font-family: 'Fira Sans', sans-serif;
	font-size: 25px;
	font-weight: 600;
}

.accroche {
	position: absolute;
	color: #FFF;
	padding: 5px 10px;
	font-size: 12px;
	font-weight: bold;
	background-color: #5d6d8f;
	right: 15px;
	top: 0;
	border-bottom-left-radius: 10px;
}

.reglement {
	background-color: #f4fafa;
	border: 1px solid #a0d8da;
}

.btn-valide {
	font-size: 20px;
}

#progressbar {
    margin-bottom: 30px;
    overflow: hidden;
    color: lightgrey
}

#progressbar .active {
    color: #000000
}

#progressbar li {
    list-style-type: none;
    font-size: 14px;
    width: 25%;
    float: left;
    position: relative;
    text-align: center;
} 

#progressbar #prog1:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f2bd"
}

#progressbar #prog2:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f812"
}

#progressbar #prog3:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f09d"
}

#progressbar #prog4:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f058"
}

#progressbar li:before {
    width: 50px;
    height: 50px;
    line-height: 45px;
    display: block;
    font-size: 18px;
    color: #ffffff;
    background: lightgray;
    border-radius: 50%;
    margin: 0 auto 10px auto;
    padding: 2px;
    text-align: center;
}

#progressbar li:after {
    content: '';
    width: 100%;
    height: 2px;
    background: lightgray;
    position: absolute;
    left: 0;
    top: 26px;
    z-index: -1
}

#progressbar li.active:before,
#progressbar li.active:after {
    background: #8CCBD8
}

.stripe { overflow: visible!important; }


.stripeinput {
    box-shadow: none;
    border: 2px solid #ebeeef;
    padding: 8px 10px;
    outline: none;
    background: #fff;
    -webkit-appearance: none;
    border-radius: 5px;
    width: 100%;
    font-size: .9375rem;
}

.ok {
  padding-right: 30px !important;
  border: 1px solid #00ce19 !important;
  /* background-color: #e2ffe4; */
  
}

.notok {
  padding-right: 30px !important;
  border: 1px solid #ff8900 !important;
  background-color: #ffe7cc !important;
}

.notok_select2{
  background-color: #FFE7CC !important;
  border:none !important;
  line-height: 38px !important;
}

.ok_select2{
  border:none !important;
}

.ok_select {
  padding-right: 10px !important;
  border: 1px solid #00ce19 !important;
  /* background-color: #e2ffe4; */
  
}

.notok_select {
  padding-right: 10px !important;
  border: 1px solid #ff8900 !important;
  background-color: #ffe7cc !important;
}


[type="color"], [type="date"], [type="datetime-local"], [type="datetime"], [type="email"], [type="month"], [type="number"], [type="password"], [type="search"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], textarea {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 2.4375rem;
    margin: 0 0 1rem;
    padding: .5rem;
    border: 1px solid #999ea1;
    border-radius: 5px;
    background-color: #fefefe;
    box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    color: #000;
    transition: box-shadow .5s,border-color .25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type="color"], input[type="date"], input[type="datetime-local"], input[type="datetime"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"], textarea {
    box-shadow: none;
    border: 2px solid #ebeeef;
    padding: 8px 10px;
    outline: none;
    background: #fff;
    -webkit-appearance: none;
    border-radius: 5px;
    width: 100%;
    font-size: .9375rem;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
     color:#999ea1
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
     color:#999ea1
}
input::placeholder, textarea::placeholder {
    color: #999ea1;
}


 
@media (max-width: 767px) {

	.headlogo{
		position: absolute;
		margin-left: auto;
		margin-right: auto;
		left: 0;
		right: 0;
		text-align: center;
	}
	#progressbar {
		margin-top: 50px;
		padding: 0px;
		margin-bottom: 0px;
		padding: 0px 10px;
	}
	#progressbar li:before {
	    width: 25px;
	    height: 25px; 
	    line-height: 21px;
	    display: block;
	    font-size: 13px;
	    color: #ffffff;
	    background: lightgray;
	    border-radius: 50%;
	    margin: 0 auto 10px auto;
	    padding: 2px;
	    text-align: center;
	}

	#progressbar li::after {
    top: 14px;
	}

	#progressbar li {
    	font-size: 11px;
	}

	.coach_ico {
		width: auto;
		padding-right: 55px;
	}

	.coach_pic img {
    border-radius: 50%;
    max-width: 75px;
	}

	.coach_droite {
		width: 100%;
		display: flex;
		align-items: end;
	}

	.coach_gauche {
		margin-top: 31px;
		width: 20%;
		float: left;
	}

	.coach_centre {
		margin-top: 45px;
		width: 75%;
		float: right;
	}

	.theme {
	    border: 1px solid #b1b4b4;
	    border-radius: 10px;
	    background-color: #ffffff;
	    color: #000;
	    font-size: 12px;
	    padding: 3px 10px;
	    display: inline-block;
	    margin-bottom: 10px;
	}

	.coach {
		border-radius: 0px;
	    box-shadow: 0px 0px 9px -2px rgba(0,0,0,0.5);
	    padding-top: 0px;
	}

	.stars {
		width: 100px;
	}

	.stars img {
	    width: 15px;
	}

	.coach_pic{
		margin-top: 40px;
	}

	.coach_ico_txt {
		margin-left: 29px;
	}

	.offre1 {
    background-color: #f4fafa;
    padding: 1.8rem 1rem;
    border-radius: 5px;
	}

	.offre2 {
    padding: 1.8rem 1rem;
	}

	.w-85 {
		width: 100% !important;
	}

	.coach_centre p {
		width: 175px;
	}

	.nomx {
		margin-left: 0px !important;
		margin-right: 0px !important;
	}

	.offre_info_titre {
		font-size: 20px;
	}

	.offre_info_semaine{
		font-size: 18px;
	}

	.text-garantie img {
		max-width: 100%;
	}

}