html,body{
	margin: 0;
	padding: 0;
}
body{
	font-size: 14px;
	line-height: 1.2;
	font-family: 'Lato',Arial;
	color:#585858;
	background-color: #ffffff;
	width: 100%;
	height: 100%;
	margin-top: 80px;
}
*{
	box-sizing:border-box;
}
a{
	text-decoration: none;
	color: #3498db;
}
ul li{
	list-style-type: none;
}
h2{
	color:#3498db;
	font-size: 22px;
	text-align: center;
	font-weight: 400;
	margin-top: 0;
}
img{
	max-width: 100%;
}
section{
	padding:25px 8px;
}
section:nth-child(even) {
    background-color: #ffffff;
}
section:nth-child(odd) {
    background-color: #f2f4f7;
}
p{
	text-align: justify;
}
/*--------------UTILS------------*/
.btn {
	border: none;
    border-radius: 2px;
    display: inline-block;
    height: 36px;
    line-height: 36px;
    padding: 0 2rem;
    text-transform: uppercase;
    vertical-align: middle;
    -webkit-tap-highlight-color: transparent;
    text-decoration: none;
    color: #fff;
    background-color: #3498db;
    text-align: center;
    letter-spacing: .5px;
    transition: .2s ease-out;
    cursor: pointer;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
}
.btn:focus {
    outline: none;
}
.btn-s{
	padding: 0 8px;
}
.txt-s{
	font-size: 12px;
}
.txt-l{
	font-size: 18px;
}
.align-c{
	text-align: center;
}
.align-l{
	text-align: left;
}
.align-m{
	vertical-align: middle;
}
.marg{
	margin: 0 8px;
}
.marg-top{
	margin: 8px 0;
}
.hide-xs{
	display: none;
}
.show-l{
	display: none;
}
.show-m{
	display: none;
}
.clear{
	clear: both;
}
/*--------------ICONS------------*/

.ico-form {
    background-size: 25px;
    background-repeat: no-repeat;
    background-position: right center;
}
.ico-pen {
    background-image: url(../images/svg/pen.svg);
}
.ico-mail {
    background-image: url(../images/svg/mail.svg);
}
.ico-person {
    background-image: url(../images/svg/person.svg);
}
.ico-text {
    background-image: url(../images/svg/text.svg);
}
/*--------------HEADER-----------*/

header{
	position: fixed;
	top: 0;
	left:0;
	display: block;
	width: 100%;
	z-index: 1000;
	box-shadow: 0 2px 5px 0 rgba(0,0,0,.16), 0 2px 10px 0 rgba(0,0,0,.12);
}
header h1{
	font-size:18px;
	margin: 0;
	padding: 8px 0;
	background-color: #ffffff;
	text-align: center;
	font-weight: 300;
	position: relative;
}
header h1:before{
	content: '';
	display: block;
	width: 40%;
	height: 1px;
	background-color: #3498db;
	position: absolute;
	left: 50%;
	top: 37px;
	transform:translateX(-50%);
	-webkit-transform:translateX(-50%);
}
header h1:after{
	content: '';
    display: block;
    width: 19px;
    height: 28px;
    background: url(../images/cabinet-logo.png) no-repeat center center;
    background-size: cover;
    position: absolute;
    left: 50%;
    top: 24px;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}
header nav{
	background-color: #ffffff;
}
header nav ul{
	margin: 0;
	padding: 10px;
	display: flex;
	justify-content: space-between;
}
header nav li{
	font-size: 16px;
}
header nav li a{
	color:  #3498db;
}
/*-----------top---------------*/
#top{
	text-align: center;
	position: relative;
}
#top .logo-cabinet{
	max-height: 320px;
}
.btn-rdv {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 250px;
}
.btn-rdv-text {
	font-size: 13px;
	flex: 0 0 auto;
}
.btn-rdv-text-desktop,
.btn-rdv-logo {
	display: none;
}
.btn-rdv-logo {
	margin-left: 5px;
}
.btn-rdv--absolute{
	position: absolute;
	bottom: 40px;
	left:50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}
/*-----------home---------------*/
#home h3{
	font-size: 14px;
	font-weight: 400;
	text-align: center;
}
#home figure{
	width: 100%;
    padding: 10px 0;
    margin: auto;
    text-align: center;
}
#home figure img{
	max-width: 50%;
	border-radius: 50%;
}
#home figure figcaption{
	margin-top: 15px;
	font-size: 22px;
	font-style: italic;
}
/*----------SOINS--------------*/
#soins h3{
	text-align: center;
}
#soins ul{
	margin: 8px 0;
	padding-left: 8px;
}
/*----------PRISE EN CHARGE--------------*/
#prise-charge table{
	width:100%;
}
/*----------REVIEWS--------------*/
.rating + .rating {
	margin-top: 40px;
}
.review{
	text-align: center;
}
.review picture{
	margin: 0 auto 20px;
	display: block;
	width: 100px;
	height: 100px;
}
.review img {
	border-radius: 50%;
	width: 100%;
	height: 100%;
}
.rating .stars span{
	color: orange;
	font-size: 20px;
}
.rating-button {
	margin-top: 40px;
}
/*----------MAP-------------*/
.overlay {
   background:transparent; 
   position:relative; 
   width:100%;
   height:300px; /* your iframe height */
   top:300px;  /* your iframe height */
   margin-top:-300px;  /* your iframe height */
}
/*----------CONTACT--------------*/
fieldset{
	border:none;
	position: relative;
}
input:focus,textarea:focus{
	outline: none;
}
fieldset label{
	position: absolute;
	top: 50%;
	left: 0.75em;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	transition:all ease .3s;
}
fieldset input:focus + label,fieldset input:valid + label,fieldset textarea:focus + label,fieldset textarea:valid + label{
	top:8px;
	font-size: 10px;
}
fieldset input,fieldset textarea{
	width: 100%;
	border:none;
	border-bottom: 2px solid #3498db;
	height: 40px;
	background-color: transparent;
}
fieldset textarea{
	height:80px;
	padding-top: 15px;
}
input.emiel{
	visibility: hidden;
    position: absolute;
    height: 0!important;
    margin: 0!important;
    width: 40px!important;
}
.day{
	width:150px;
	padding:8px 12px;
	display: inline-block;
    margin: .5rem .5rem 1rem .5rem;
    -webkit-transition: -webkit-box-shadow .25s;
    transition: -webkit-box-shadow .25s;
    transition: box-shadow .25s;
    transition: box-shadow .25s, -webkit-box-shadow .25s;
	border-radius: 2px;
	background-color: #ffffff;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
}
.day label{
	text-transform: capitalize;
	text-align: center;
}
.day label span{
	display: block;
}
.day .current-date{
	padding-bottom: 8px;
	margin-bottom: 8px;
	border-bottom: 1px solid #c1c1c1;
	color: #3498db;
	font-weight: bold;
}
.day .rdv-pick{
	cursor: pointer;
	padding: 2px 0;
	position: relative;
}
.day .pick-on:before{
	content: ' ';
	position: absolute;
	display: block;
	width: 16px;
	height: 16px;
	left: 22px;
	top: 5px;
	background:url(../images/svg/done.svg) no-repeat center center;
	background-size: cover;
}
input[type="radio"]:not(:checked), input[type="radio"]:checked {
  position:absolute;
  left:-9999px;
}
/*--------------FOOTER------------*/
footer{
	background-color: #585858;
	color: #ffffff;
	padding: 10px 8px;
	font-size: 12px;
	text-align: center;
	font-style: italic;
}
.show-m{
	display: none;
}
.show-l{
	display: none;
}
/*--------------CARD------------*/

.card.card-full-width{
	width:100%;
	padding: 30px 7%;
}
@media screen and (min-width: 479px){
	.hide-m{
		display: none;
	}
	.show-m{
		display: block;
	}
	header nav ul {
	    justify-content: center;
	}
	header nav li {
	    padding: 0 25px;
	}
	section {
	    padding: 20px 50px;
	}
	.webp #top{
		background: url(../images/desk-shade.webp) no-repeat center center;
    	background-size: cover;
	}
	.no-webp #top{
		background: url(../images/desk-shade.jpg) no-repeat center center;
    	background-size: cover;
	}
	#top{
    	min-height: 360px;
    	position: relative;
	}
	#top .heading{
		position: absolute;
		width: 100%;
		padding: 0 20px;
		display: flex;
    	align-items: center;
		top: 50%;
		left:50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
	}
	#top .heading > div{
		width: 50%;
		float: left;
	}
	#top .heading > div:last-child{
		text-align: right;
	}
	#top .logo-cabinet {
	    max-height: 235px;
	}
	#top .top-title{
		font-size: 2rem;
		margin: 0;
	    color: #fff;
	    letter-spacing: .5px;
	    text-shadow: 0 0 7px rgba(0,0,0,.5);
	}
	.btn-rdv {
		width: 300px;
	}
	.btn-rdv-desktop,
	.btn-rdv-logo {
		display: inline-block;
	}
	.bg-sep{
		min-height: 300px;
		background-size: cover;
		background-position: center center;
	}
	.webp .bg-sep.bg-sep-soin{
		background: url(../images/soin.webp) no-repeat center center;
	}
	.no-webp .bg-sep.bg-sep-soin{
		background: url(../images/soin.jpg) no-repeat center center;
	}
	#home figure {
	    width: 50%;
	    float: left;
	}
	#prise-charge table img {
	    max-width: 210px;
	}
	footer{
		padding: 15px 0;
	}
	footer p{
		text-align: center!important;
	}
	.card.card-full-width{
		padding: 30px 15%;
		max-width: inherit;
	}
}
@media screen and (min-width: 767px){
	/*----------REVIEWS--------------*/
	.review{
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}
	.review picture{		
	    margin: 0;
		flex: 0 0 100px;
	}
	.review-text {
		margin-left: 60px;
		flex: 1 1 auto;
		text-align: left;
	} 
	.rating:nth-child(odd) .review {
		flex-direction: row-reverse;
		justify-content: flex-end;
	}
	.rating:nth-child(odd) .review-text {
		margin: 0 60px 0 0;
	}
}
@media	screen and (min-width: 1024px){
	.show-l{
		display: block;
	}
	.container{
		max-width: 900px;
		margin: auto;
	}
	section{
		padding: 50px 0;
	}
	body,#home h3{
		margin-top: 75px;
		font-size:16px;
	}
	#top{
		min-height: 500px;
	}
	#top .heading{
		max-width: 900px;
		padding:0; 
	}
	#soins article,#soins-2 article{
		width: 50%;
		float: left;
	}
	.bg-sep{
		min-height: 600px;
	}
	.webp .bg-sep.bg-sep-soin{
		background: url(../images/soin-hd.webp) no-repeat center center;
	}
	.no-webp .bg-sep.bg-sep-soin{
		background: url(../images/soin-hd.jpg) no-repeat center center;
	}
	.webp .bg-sep.bg-sep-front{
		background: url(../images/cours-cabinet.webp) no-repeat center center;
	}
	.no-webp .bg-sep.bg-sep-front{
		background: url(../images/cours-cabinet.jpg) no-repeat center center;
	}
	#map iframe{
		height: 450px!important;
	}
	#contact article,#contact article p{
		text-align: center!important;
	}
	#contact article p.join-phone{
		display: inline-block;
	}
	#contact form p{
		text-align: center;
	}
	#contact form{
		max-width: 75%;
    	margin: auto;
	}
	.page-template footer{
        position: fixed;
        width: 100%;
        bottom: 0;
    }
}
@media	screen and (min-width: 1600px){
	#top{
		height: 700px;
	}
	#top .top-title{
		font-size: 3rem;
	}
	h2{
		font-size:32px;
	}
}

ul.dashed {
  list-style-type: none;
}
ul.dashed > li {
  text-indent: -8px;
}
ul.dashed > li:before {
  content: "- ";
  text-indent: -5px;
}
