html, body
{
	margin:0;
	border:0;
	padding:0;
	height:100%;
	width:100%;
}

body
{
	font-family:'Open Sans',sans-serif;
	font-weight:400;
	background-color:#eee;
}

p
{
	display:inline-block;
	border:none;
	padding:0;
	margin:0;
	text-align: justify;
}

#menu
{
	position:fixed;
	display:block;
	top:0;
	left:0;
	right:0;
	color:#fff;
	z-index:100;
	/*background-color:#333;
	box-shadow: 0 0 0.3em rgba(0,0,0,0.8);*/
}

#menu_title
{
    display:block;
	padding:0.666em;
	font-size:1.5em;
}

#menu ul
{
    text-align:center;
	list-style-type:none;
	border:none;
	margin:0;
    padding:0;
	display:none;
    background-color:#666;
}

#menu li
{
    vertical-align:top;
	display:inline-block;
}

#menu a
{
	text-decoration:none;
	color:#fff;
}

#menu li a
{
    display:inline-block;
    padding:1em 0;
    width:8em;
}

#menu a:hover
{
	color:#f90;
}

#bottom
{
	position:relative;
	display:table-row;
	height:100%;
}

b
{
	font-weight:700;
}

#viewport
{
	position:relative;
	overflow:auto;
	width:100%;
	height:100%;
}

.title
{
	font-size:2em;
	padding-bottom:3em;
	font-weight:700;
	text-align:center;
	display:block;
}
@media only screen and (max-width: 768px) {
	.title
	{
		padding-bottom:2em;
	}
}
@media only screen and (max-width: 576px) {
	.title
	{
		padding-bottom:1em;
	}
}

#main_title
{
	display:block;
	position:absolute;
	bottom:66%;
	font-size:4em;
	font-weight:700;
	color:#fff;
	width:100%;
	text-align:center;
}

@media only screen and (max-width: 768px) {
	#main_title
	{
		font-size:3em;
	}
}
@media only screen and (max-width: 576px) {
	#main_title
	{
		font-size:2em;
	}
}


.slider
{
	display:block;
	position:relative;
	width:100%;
	height:18em;
}

.button
{
	height:18em;
	width:1.5em;
	position:relative;
}

.button a
{
	position:relative;
	height:100%;
	display:none;
	text-align:center;	
}

.button a img
{
	position:relative;
	top:8em;
	width:1.3em;
	height:2em;	
}

table
{
	border:none;
	border-spacing:0;
	padding:0;
	margin:0;	
}

.competence
{
	/*max-width:16.2em;*/
    width:16.2em;
	margin:1em;
	display:inline-block;
	vertical-align:top;
	text-align:justify;
}

.competence .icon
{
	color:#f90;
	text-align:center;
	font-weight:700;
	vertical-align:middle;
	padding-bottom:1em;
	/*border-bottom:5px solid #f90;*/
}

.competence .icon img
{
	height:3em;
	margin-right:1em;
	vertical-align:middle;
}

input, textarea
{
	font-size:1.2em;
	background-color:#fff;
	color:#000;
	width:100%;
	padding:0.5em;	
	outline:none;
	border:none;
	/*border:1px solid #999;*/
	font-family:'Open Sans',sans-serif;
	font-weight:400;
}

input[type="submit"]
{
	background-color:#f90;
	font-weight:700;
	color:#fff;
}

input:focus, textarea:focus
{
	box-shadow: 0.15em 0.15em 0.3em #000;
	/*border-color:#fff;*/
}

.section
{
	position:relative;
	padding:6em 1em;
}
@media only screen and (max-width: 768px) {
	.section
	{
		padding:4em 1em;
	}
}
@media only screen and (max-width: 576px) {
	.section
	{
		padding:2em 1em;
	}
}


#sec_xp, #sec_comp, #sec_dip, #sec_temoignage, #sec_pub, #sec_cont
{
	display:block;
	position:absolute;
	top:-4em;
}

.publi
{
	display:table-row;
	vertical-align:top;
}
.publi div
{
	display:table-cell;
	text-align:justify;
	padding:0.2em;
}