*{margin: 0;padding:0;}

/* ##########
	TYPO
############ */
@font-face{
	src: url('../fonts/baron-neue/Baron Neue.otf');
	font-family: baron;
}
body{
	font-family: baron;
}
p{
	text-align: justify;
}


.alert{
	padding: 1rem 1rem;
	margin-bottom: 1rem;
	border: 1px solid transparent;
	border-top-color: transparent;
	border-right-color: transparent;
	border-bottom-color: transparent;
	border-left-color: transparent;
	border-radius: .25rem;
	font-size: 0.7em;
}
.danger{
	color: #842029;
	background-color: #f8d7da;
	border-color: #f5c2c7;
}
.success{
    color: #0f5132;
    background-color: #d1e7dd;
    border-color: #badbcc;
}

/* ############
	BARRE TOP
############## */

address{
	height: 5vh;
	background: #003F5C;
	display: flex;
	align-items: center;
	font-style: normal;
	font-family: baron;
	color: white;
	font-weight: 400;
	font-size: 0.9em;
	border-bottom: 2px solid #FC5B1F;
}
address a{
	text-decoration: none;
	color: white;
}

address img{
	width: 1em;
	margin-left: 10%;
	padding-right: 1em;
}
address img:nth-child(3){
	margin-left: 40%;
}
/* pour version mobile */
address img#burger,img#block,img#logo{
	display: none;
}

/* ##########
	HEADER 
############ */

header{
	width: 30%;
	/*background: orange;*/
	color: #003F5C;
	float: left;

}
header h2{
	display: flex;
	flex-direction: column;
	text-align: center;
	justify-content: center;
	font-size: 1em;
}
header h2 img{
	width: 60%;
	margin: 5vh auto;
	margin-bottom: 0;
}
header h2 address{
	font-family: 'Avenir Next';
	font-weight: 400;
	font-style: normal;
	display: block;
	background: none;
	color: #3D1507;
	border: none;
}

/* ##########
	NAV 
############## */

nav{
	float: left;
	width: 70%;
	margin-top: 10vh;
	/*background: yellow;*/
	display: flex;
	justify-content: space-around;
}
nav a{
	display: flex;
	align-items: center;
	text-decoration: none;
	color: #003F5C;
	margin: 0;
	padding: 0;

}

/* Effet de hover moustaches */

nav a:hover img{
	animation: vibre;
	animation-duration: 1s;
}
@keyframes vibre{
	0%{transform: rotate(10deg);}
	10%{transform: rotate(-10deg);}
	20%{transform: rotate(10deg);}
	30%{transform: rotate(-10deg);}
	40%{transform: rotate(10deg);}
	50%{transform: rotate(-10deg);}
	60%{transform: rotate(10deg);}
	70%{transform: rotate(-10deg);}
	80%{transform: rotate(10deg);}
	90%{transform: rotate(-10deg);}
	100%{transform: rotate(10deg);}
}


/* espacement moustaches */
nav img{
	width: 2em;
	padding-right: 0.5em;
}

/* #######
	H1 AVOCAT EN DROIT FAMILLE / PENAL 
######### */
h1{
	clear: left;
	margin: 25vh 0 0 40%;
	width: 60%;
	font-size: 1.7em;

}
h1 span{
	width: 100%;
	background: #FF5A00;
	color: #EEEDE4;
	padding: 0.5em 2em;
	position: relative;
	box-sizing: border-box;
	box-shadow: 0px 3px 6px;
	border-radius: 3px;
	transition: 0.3s;
}
h1 span:nth-child(2){
	position: relative;
	left: 30%;
	width: 50%;
	z-index: 10;
	background: #003F5C;
	display: block;
}

/* #######
	HOME
######## */


article h3{
	float: left;
	background: #F5F5EE;
	width: 30%;
	z-index: -10;
	height: 40vh;
	border-radius: 0 5px 5px 0;
}
article h3 img{
	width: 50%;
	margin: 5vh 0 0 35%;
	position: relative;
	transition: 0.3s;
}

article h3 img:hover,
article h3 span:hover,
h1 span:hover,
iframe:hover,
.itineraire:hover
{
	box-shadow: 6px 6px 6px -1px #b0b0b0cc;
}

article h3 span{
	font-family: 'Avenir Next';
	color: #003F5C;
	font-style: italic;
	font-weight: 400;
	padding: 0.4em 1em;
	position: absolute;
	left: 15%;
	top: 75vh;
	font-size: 0.6em;
	background: #f7f7f7;
	box-shadow: 0px 1px 3px black;
	transition: 0.3s;
}
article p.home{
	box-sizing: border-box;
	padding: 3em 5em;
	width: 73%;
	background: #f7f7f7;
	float: left;
	color: #3D1507;
	font-family: 'Avenir Next';
	font-weight: 400;
	margin-left: -3%;
	margin-top: 5vh;
	box-shadow:-6px -6px 6px -5px rgba(112,112,112,0.8);
	z-index: 10000;
	transition: 0.3s;
	border-radius: 3px;
}
article p.home:hover{
	box-shadow:-6px -6px 6px -1px rgba(176, 176, 176, 0.8);
}
article p b{
	font-weight: 500;
}
article p.home a{
	color: #3D1507;
	font-weight: 600;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	transition: 0.8s;
}
article p.home a:hover{
	text-decoration: underline;

}
article p.home a img{
	width: 1em;
	margin-right: 1em;
}

/* #####################
	Droit famille/pénal
######################## */
section:first-of-type{
	clear: left;
	margin-left: 5%;
}
section{
	font-family: 'Avenir Next';
	margin-top: 20vh;
	width: 45%;
	float: left;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 15vh;
}
section h3{
	width: 100%;
	text-align: center;
	color: #003F5C;
	margin-bottom: 5vh;
}
section ul{
	list-style-position: inside;
	list-style-type: none;
	width: 50%;
	line-height: 2em;
}
section ul:last-child{
	text-indent: 1em;
}


/* #################
	LE CABINET / INFOS ACCES / CONTACT
################*/
.modal-background{
	position: fixed;
	top: 0;
	width: 100%;
	left: 0;
	top: 0;
	height: 100%;
	z-index: 999;
	background-color: #00000099;
	display: none;
}
.modal{
	position: fixed;
	width: 70%;
	height: 90%;
	left: 15%;
	top: 5%;
	background-color: white;
	z-index: 99999;
	opacity: 1;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	display: none;
	border-radius: 1vh;
}

.modal img#close{
	position: absolute;
    top: -1em;
    left: -1em;
    background: black;
    border-radius: 1em;
    padding: 1vh;
    cursor: pointer;
}
.modal figure{
	width: 80%;
	margin: 5vh auto;
}
.modal figure img.big{
	margin: 1em;
	border-radius: 1em;
	width: 70%;
	height: 100%;
}
.modal p.titre{
	width: 80%;
	margin: auto;
}

figure:first-of-type img:hover{
	cursor: pointer;
}

figure{
	display: flex;
	justify-content: center;
}
figure img.big{
	width: 70%;
	height: 100%;
	border-radius: 1vh;
	margin: 1em;
}
figure .left{
	transform: rotate(180deg);
}
.titre{
	text-align: center;
}

.slider{
	display: flex;
	width: 65%;
	margin: 5vh auto;
	flex-wrap: wrap;
	justify-content: space-between;
}
.slider div{
	width: 28%;
	height: 9vh;
	margin: 1vh;
	overflow: hidden;
	border-radius: 1vh;
	cursor: pointer;
}
.slider img{
	width: 100%;
	height: 100%;
	display: block;
}


.itineraire{
	width: 30%;
	display: flex !important;
	align-items: center;
	justify-content: space-evenly;
	background-color: #f7f7f7;
	color: #003F5C !important;
	margin: 5vh auto;
	text-align: center;
	border-radius: 1vh;
	height: 6vh;
	transition: 0.3s;
}

.itineraire img{
	width: 1em;
}
.line{
	width: 60%;
	margin: 5vh auto;
	display: flex;
	justify-content: space-around;
}
.mode{
	width: 40px;
	height: 40px;
	background-color: #003F5C;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	border-radius: 40px;
	transition: 0.3s;
}
.mode:hover{
	box-shadow: 6px 6px 6px -1px #b0b0b0cc;
}
.mode img{
	display: block;
	width: 60%;
}

/* CONTENEUR POUR LE STRETCH */
div.content{
	display: flex;
	justify-content: stretch;
	flex-wrap: wrap;
}
/* ## LES BLOCS BEIGE DE GAUCHE ## */
article.beige{
	font-family: 'Avenir Next';
	margin: 0;
	margin-top: 10vh;
	width: 40%;
	float: left;
	background: #EEEDE4;
	color: #003F5C;
	padding-bottom: 1em;
}
article.beige p{
	padding: 0 3em;
}
article.beige p:first-of-type{
	padding-top: 1em;
}
h4{
	font-family: baron;
	margin-top: 5vh;
	padding-bottom: 1em;
	font-size: 1em;
	padding-left: 3em;
	color: #003F5C;
}

/* ## ARTICLE DE DROITE FOND BLANC ## */

article.beige:nth-child(even){
	background: none;
	width: 60%;
	color: #3D1507;
}
article.beige:last-of-type p img{
	display: block;
	width: 5em;
	opacity: 0.7;
	margin: 2em auto;
}
article strong{
	display: block;
	margin-bottom: 1em;
}

iframe{
	width: 80%;
	height: 40vh;
	margin-top: 5vh;
	padding-left: 3em;
	border-radius: 2em;
	transition: 0.3s;
}
article.beige a{
	text-decoration: none;
	color: #3D1507;
	padding: 0 3em;
	display: block;
	font-weight: 600;
}

/* ##################
FORMULAIRE DE CONTACT
 ############### */

form{
 	width: 65%;
 	margin: 5vh auto;
}
input,textarea{
 	width: 100%;
 	border-radius: 1vh;
 	border: 1px solid #3D1507;
 	padding: 1em;
	margin-bottom: 1em;
	font-family: 'Avenir Next';
}

input[type="submit"]{
	font-family: baron;
	background: #EEEDE4;
	color: #003F5C;
	font-weight: bold;
	border: none;
	display: block;
	width: 30%;
	margin: 3vh auto;
}


/* ############
	FOOTER 
############# */

footer{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 1em 0;
	clear: left;
	background: #003F5C;
	color: white;
	font-weight: 300;

}
footer a{
	text-decoration: none;
	color: white;
}
footer span{
	color: #FF5A00;
}
footer img{
	width: 3em;
	margin-left: 0.5em;
}

p.clear{
	clear: both;
}

