/**
 * Carolyna Beauty 
 * Celine AUZIAS 2016
 * c DOT line AT ymail DOT com */
*, *::after, *::before {
	box-sizing:border-box;
	-o-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
body{
	background-color:#fff;
	font-family: 'Raleway', Trebuchet, Arial, sans-serif;
	font-size:1.05rem;
	line-height:1.4rem;
	font-weight:300;
	color:#555;
	padding-top:0px;
	margin:0px;		
}
.autocenter { margin:auto; }
.max1024 { width:100%; max-width:1024px; }
.max960  { width:auto; max-width:960px; overflow:hidden; padding:0 1em; }
.max644  { width:auto; max-width: 644px; margin:0 auto; padding:0 1em; }
.pullRight { float:right; }
.pullLeft { float:left; }
.aleft { text-align:left; }
.aRight { text-align:right;}
.centrer { text-align: center; }
.table { display:table; width: 100%; }
.td { display:table-cell; vertical-align: middle;}
.uppercase { text-transform:uppercase; }
.lowercase { text-transform:none; }
small { text-align:left; display:inline-block;}
.big {font-size:1.3rem;} 
sup { text-transform:none;}
.green { color:#40ad98;}
.greentag { background-color:#40ad98;color:#fff; font-weight:800; display:inline-block;padding: 3px;
	transform: rotate(-2deg);
    text-transform: uppercase;
    font-size: 12px;
    margin:0 3px 7px 3px;}
.clear { clear:both; margin:0em; padding:0;height:auto;}
p{
	margin:0.5em auto 0 auto;
	line-height:1.5em;
	text-align:center;
	max-width:644px;
}
h1 {
	color:#fff;
	font-size:4em;
	line-height:0.85em;
	margin:0em 0 0 0;
	display:inline-block;	
	text-transform:uppercase;
	font-weight:200;
	width:auto;
}
h2{
	color:#fff;
	font-size:1.0em;
	line-height:2.8rem;
	margin:0.8em 0 0.8em 0;
	font-weight:200;
	text-transform:none;
	text-align:center;
	font-family: 'Amatic SC', cursive;
	letter-spacing:2px;
	text-shadow:1px 1px 6px #000;
}
h3{
	margin:0.5em auto 1rem;
	font-size:1.7em;
	color:#333;
	text-transform:none;
	line-height:1.5rem;
}
h4{
	color:#40ad98;
	font-size:1.9em;
	line-height:2rem;
	margin:0.25em 0 0.8em 0;
	font-weight:200;
	text-transform:none;
	text-align:center;
	font-family: 'Amatic SC', cursive;
	letter-spacing:2px;
}
h4.ar::before {
	content:'';
	width:108px;
	height:24px;
	display: inline-block;
	background: transparent url('../img/right-arrow.png') no-repeat center center; 
	margin:0 1rem 0 0;
}
h4.al::after {
	content:'';
	width:108px;
	height:24px;
	display: inline-block;
	background: transparent url('../img/left-arrow.png') no-repeat center center; 
	margin:0 0 0 1rem ;
}
@media screen and (max-width: 532px) { 
	h4.al::after { display:none;}
}
@media screen and (max-width: 320px) { 
	h4.ar::before { display:none;}
}

h5, h6{
	font-size:1.4em;
	margin-bottom:0.2em;
	margin-top:0.5em;
	font-weight:600;
	color:#40ad98;
}
h6{
	font-size:1.2em;
	font-weight:400;
}
hr {
	border:0;
	border-bottom:1px solid #4bc3dc;
	margin-bottom:1.5em;
}
a, a:link, a:visited, a:active { color:#40ad98; }   
a.no_u, a.no_u:link, a.no_u:visited, a.no_u:active { text-decoration:none; }   
a:hover{ color:#000; }
a img { border:0; }
a.bouton, a.bouton:link, a.bouton:visited {
	display:inline-block;
	background-color:rgba(255,255,255,0.1);
	color:#fff;
	padding:1em;
	margin-top:1em;
	text-decoration:none;

	transition: all 0.1s;
	-o-transition: all 0.1s;
	-moz-transition: all 0.1s;
	-webkit-transition: all 0.1s;		
}
a.bouton:hover{
	border:2px solid #8AD8C9;
	transform:rotate(-5deg);
}
a.bouton img { vertical-align:middle;}
.form { display:inline-block;}
input, textarea {
	font-size:1rem;
	border-radius:2px;
	margin-top:1rem;
	padding:0.5rem;
	border:2px solid #40ad98;	
	font-family:'Raleway', Trebuchet, Arial, sans-serif;
}
input::placeholder, textarea::placeholder { font-style:italic; color:gray;}
input[type="submit"]{
	cursor:pointer;
	color:#fff;
	font-weight:800;
	padding:1em;
	margin-top:1em;
	text-decoration:none;	
	border-radius:0px;	
	border:0px;
	-webkit-appearance : none;
	-moz-appearance : none;
	-ms-appearance : none;
	-o-appearance : none;	
	background-color:#40ad98;	
}
input[type="submit"]:hover{ background-color:#8AD8C9; }
input.error { border-color: #CC1212; background-color: #FFFFF0;}
span.error { color:#CC1212; display:inline-block; margin-top:0.5rem;}
#statusError { color:#CC1212; }
#statusSuccess { color:#40ad98; }
.img-round { border-radius:200px;}
.separation {
	clear:both;
	height:14px;
	width:100%;	
	background: transparent url('../img/separation.png') no-repeat center center; 
	margin-top:2rem;
}

.fb { background-color: #40ad98; color:#fff; display:inline-block;font-size:1.2rem; border-radius:4px; padding:0.35rem 0.35rem 0.35rem 1.12rem;}
/* ---------------- Nav ---------------- */
.nav {
	position:fixed;
	top:0px;
	left:0;
	margin-top:0;
	width:100%;
	background-color:#fff;
	z-index:2;
	text-align:center;
	height:175px;
	z-index:3;
	padding:0;
}
.nav * {
	transition: all 0.5s;
	-o-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-webkit-transition: all 0.5s;
}
@media screen and (max-width: 400px) { 
	.nav { padding:0.2em 0 0 0;}
}
.nav a{
	font-weight:400;
	text-decoration: none;
	font-size:16px;
	padding:0.5rem 1em;
	margin:5.0rem 0;
	line-height:3em;
	display:inline-block;
	vertical-align:top;
	color:#333;
	outline:0;	
}
.nav a.nav-logo { line-height: 1rem; padding:0; margin:0;}
.nav a:hover, .nav a:focus { color:#40ad98;font-weight: 600;}
.nav a:focus { outline:0.1rem solid #40ad98;}
.nav a.nav-logo:focus { outline:0px; }
.nav a.active { color:#40ad98;font-weight: 600;}

@media screen and (max-width: 680px) { 
	.nav { height:auto; }
	.nav a { 
		line-height:2rem;
		float:right;
		clear:right;
		display:block;
		margin:0.25rem 0.5rem 0 0;
		padding:0 1rem;
	}
	.nav a.nav-logo {
		float:left;
		clear:none;
		margin:0;
		padding-right:0;
	}
	.nav a.nav-logo h1{
		height:128px;
		overflow: hidden;
		margin-top: -1.85rem;
	}	
}
@media screen and (max-width: 380px) { 
	.nav a.nav-logo h1 img { height:100%; width:auto;}
}


/* ---------------- Pages ---------------- */
.page {
	overflow: hidden;
	text-align:center;
	padding-top:3rem;
	padding-bottom:3rem;
	z-index:2;
	position:relative;
	background-color:#fff;
	color:#777;
}
@media screen and (max-width: 500px) { 
	.page {
		padding-top:2rem;
		padding-bottom:1rem;
	}	
}
.halfblocks {
	position:relative;
	clear:both;
	margin-bottom:1rem;
}
.halfblocks .halfblock{
	width:49.4%;
	display:inline-block;
	vertical-align:middle;
}
.halfblocks .halfblock.media.pullRight img{ margin-top:3rem;}
@media screen and (max-width: 800px) { 
	.halfblocks .halfblock.text{ width:69%;}
	.halfblocks .halfblock.media{ width:29%;}
}
@media screen and (max-width: 500px) { 
	.halfblocks .halfblock, .halfblocks .halfblock.text, .halfblocks .halfblock.media{ width:100%;}
	.halfblocks .halfblock.media img { max-width:50%!important;}
	.halfblocks .halfblock.media.pullRight img{ margin-top:1rem;}
}
.halfblocks .halfblock p{
	text-align:left;
}
.halfblocks .halfblock table{
	text-align:left;
	width:100%;
}
.halfblocks .halfblock table tr td { border-bottom: 1px dotted #D0D0D0; padding:0.35rem 0;}
.halfblocks .halfblock table tr td.nobd { border-bottom: 0px; }
.halfblocks .halfblock table tr td:last-child{ text-align:right;}
.halfblocks .halfblock table tr td:first-child{ text-align:left; }
.halfblocks .halfblock.text{ padding:0rem 2rem; }
.halfblocks .halfblock.text h3{ text-align:left; }
.halfblocks .halfblock.media img{
	width:auto;
	max-width:100%;
}
.boxe {
	text-align:center;
	width:30%;
	padding:0em 1.5em;
	display:inline-block;
	vertical-align:top;
	margin:1em 0;
}
.boxe img { max-width:100%;}
@media screen and (max-width: 768px) { .boxe { width:48%; } }
@media screen and (max-width: 768px) { .boxe-3 { width:30%; padding:0 0.5rem;} }
@media screen and (max-width: 560px) { .boxe-3 { width:90%; } }
@media screen and (max-width: 460px) { .boxe { width:90%; } }

.page.home {
	background: #aaa;
	padding-bottom:0;
	color:#fff;
	margin-top:200px;
	background:#aaa url('../img/slideshow/image1.jpg') no-repeat center center;
	background-size:cover;
	padding-top:0;
}
.page.home .slider { min-height: 450px; background:#aaa url('../img/slideshow/image1.jpg') no-repeat center center; background-size:cover;
	transition: background-image 0.5s;
	-o-transition: background-image 0.5s;
	-moz-transition: background-image 0.5s;
	-webkit-transition: background-image 0.5s;	
	}
@media screen and (max-width: 680px) { 
	.page.home { margin-top:140px; }
}
.page.home header { padding:6.5rem 2.5rem 2.5rem 2.5rem; font-family: 'Amatic SC', cursive;font-size:3rem;}
@media screen and (max-width: 1280px) { 
	.page.home .slider { min-height: 350px; } 
}
@media screen and (max-width: 768px) { 
	.page.home .slider { min-height: 280px; } 
	.page.home header { padding:5rem 2.5rem 2.5rem 2.5rem; }
}
@media screen and (max-width: 480px) { 
	.page.home .slider { min-height: 200px; } 
	.page.home header { padding:2rem 2.0rem 2.0rem 2.0rem; }
}
@media screen and (max-width: 400px) { 
	.page.home .slider { min-height: 100px; } 
	.page.home header { padding:1rem 1rem 1rem 1rem; }
	h2 { font-size:0.75em; line-height:2rem;}
}

.page .nav2 {
    padding: 0.5rem 0;
    margin: 1rem 0;
}
.page .nav2 a {
    margin: 0 1rem;
    display:inline-block;
    text-transform: uppercase;
    font-size: 15px;
    text-decoration: none;
    padding: 0.5rem;
    border-bottom:2px solid #fff;
}
.page .nav2 a:hover,  .page .nav2 a:focus, .page .nav2 a.active{
	border-bottom:2px solid #40ad98;
}
.page.contact .contactform { text-align:left;}
.page.contact .contactform input,
.page.contact .contactform textarea { width:100%; }
.page.contact .contactform input[type="text"]{ width:49%; }
.page.contact .contactform input[type="text"]:first-child{ margin-right:1%; }
@media screen and (max-width: 500px) { 
	.page.contact .contactform input[type="text"]{ width:100%;margin-right:0; }
}	
/* ---------------- Footer ---------------- */
.footer {
	background-color:#fff;
	color:#888;
	font-size:0.8rem;
	padding-top:0;
}