// CSS RESET
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}
body{line-height:1}
body,p,h1,h2,h3{padding:0;margin:0}
article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section{display:block}
ul, nav ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:none}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}
ins{background-color:#ff9;color:#000;text-decoration:none}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}
del{text-decoration:line-through}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}
table{border-collapse:collapse;border-spacing:0}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}
input,select{vertical-align:middle}
html,body{min-height:100%}
img{vertical-align:-65%;}

body {
	background-color: #95C2E4;
	font-family: 'Roboto', sans-serif;
}
#background-viewport {
	position: fixed;
	z-index: -999;
	overflow: hidden;
	height: 120%;
	width: 100%;
}

#background {
	background-image: url('img/background.svg');
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 120%;
	min-width: 120%;
}

header {
	margin: 0px;
	padding: 4px 10px;
	background: #FFFFFF;
	border-bottom: 1px solid #CCCCCC;
	height: 20px;
	line-height:20px;
	color: #999999;
	box-shadow: 0 2px 10px 0 #000000;
}

header a {
	display: inline-block;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 75%;
	height: 20px;
}

a {
	color: inherit;
	text-decoration: none;
}

header a.vcard {
	float:right;
}

header a.vcard:before {
	content: '\E722';
	font-family: 'entypo';
	padding-right: 5px;
}

header a:hover {
	color: #666666;
}

div.middle {
	height:230px;
	margin: auto;
	position: absolute;
	top: 0; left: 0; bottom: 0; right: 0; // vertical center
}

div.middle.cv, div.middle.more {
	height: 80%;
}

main, section {
	position: relative;
	background-color: rgb(210,240,255);
	background-color: rgba(255,255,255,0.2);
	border-radius: 5px;
	max-width:90%;
	width: 600px;
	height: auto;
	padding: 10px;
	margin: 0px auto 10px;
}

main h1, section h1 {
	margin-bottom: 4px;
}

main h2, section h2 {
	font-weight: normal;
	font-style: italic;
	font-size: 1.2em;
	padding-left: 10px;
}

main h3, section h3 {
	font-weight: normal;
	font-size: 1.1em;
	padding-left: 10px;
}

main h4, section h4 {
	font-weight: normal;
	font-size: 1em;
	padding-left: 10px;
	margin-bottom: 5px;
}

.cv main p, section p {
	padding-left: 20px;
	font-size: 0.9em;
}

main nav ul {
	padding: 0px;
	margin-bottom: 5px;
}

main nav ul li {
	display: inline-block;
	padding: 0px 8px;
	height: 30px;
}

main nav ul li.cv a:before {
	content: '\1F4F0';
	font-family: 'entypo';
	padding-right: 5px;
}

main nav ul li.twitter a:before {
	content: '\F309';
	font-family: 'entypo';
	padding-right: 5px;
}

main nav ul li.facebook a:before {
	content: '\F30C';
	font-family: 'entypo';
	padding-right: 5px;
}

main nav ul li.linkedin a:before {
	content: '\F318';
	font-family: 'entypo';
	padding-right: 5px;
}

main nav ul li.github a:before {
	content: '\F300';
	font-family: 'entypo';
	padding-right: 5px;
}

main nav.big ul {
	text-align: center;
}
main nav.big ul li {
	width: 30%;
	height: auto;
	margin-bottom: 20px;
}
main nav.big ul li a {
	display: inline-block;
	background-color: rgb(255,255,255);
	background-color: rgba(255,255,255,0.2);
	width: 100%;
	text-align: center;
	padding: 30px 0px;
	transition: all 0.5s ease-in-out;
	position: relative;
	overflow: hidden;
}
main nav.big ul li.disabled a {
	color: #AAAAAA;
	background-color: rgba(225,225,225,0.3);
	cursor: not-allowed;
}
main nav.big ul li.disabled a:before {
	content: 'Bientôt';
	position: absolute;
	background: orange;
	color: #666666;
	padding: 2px 100px;
		-ms-transform: rotate(30deg);
		-webkit-transform: rotate(30deg);
	transform: rotate(30deg);
	top: 15px; right: -88px;
	opacity: 0.3;
	transition: all 1s ease-in-out;
}

main nav.big ul li a:hover {
	background: rgba(255,255,255,0.8);
	transition: all 1s ease-in-out;
}
main nav.big ul li.disabled a:hover {
	background: rgba(200,200,200,0.4);
}
main nav.big ul li.disabled a:hover:before {
	opacity: 0.8;
	transition: all 1s ease-in-out;
}


main ul.contact {
	padding: 0px;
	margin-bottom: 5px;
}

main ul.contact li {
	display: inline-block;
	padding: 0px 8px;
	height: 30px;
}

main ul.contact li.mail a:before {
	content: '\2709';
	font-family: 'entypo';
	padding-right: 5px;
}

main ul.contact li.phone a:before {
	content: '\1F4F1';
	font-family: 'entypo';
	padding-right: 5px;
}

ul.links {
	font-size: 0.9em;
}

ul.links li {
	padding: 2px 0px;
}

main ul.download {
	font-size: 0.9em;
	position: absolute;
	top: 0px;
	right: 12px;
	text-align: right;
}

main ul.download li {
	
}

main ul.download li a:before, a.download:before {
	content: '\E778';
	font-family: 'entypo';
	padding-right: 5px;
}

main a, section a {
	color: #0C79C0;
}
main a:hover, section a:hover {
	color: #366C8F;
}

main p, section p {
	line-height: 20px;
	margin-bottom: 10px;
}

main p strong, section p strong {
	font-weight:normal;
	color: #366C8F;
}

section span.date {
	color: #444444;
}

ul.lang {
	float:right;
	margin-top: -95px;
}

ul.lang li {
	width: 32px;
	cursor: help;
}

ul.lang li span {
	z-index:1;
	overflow: hidden;
	text-align: right;
	display: block;
}

ul.lang li span img {
	z-index: 256;
	position:relative;
}

ul.lang li:before {
	content: ' ';
	height: 32px;
	width: 32px;
	opacity: 0.2;
	display: block;
	position: absolute;
	margin-top: -0.5px;
	z-index: 255;
}

ul.lang li.lang-en:before {
	background: url('img/en.png');
}

ul.lang li.lang-en span {
	width: 24px;
}

ul.lang li.lang-de:before {
	background: url('img/de.png');
}

ul.lang li.lang-de span {
	width: 8px;
}

ul.lang li span:before {
	content : ' ';
	position:absolute;
	overflow: hidden;
	transition: all 0.5s ease-in-out;
	text-align: left;
	z-index: 254;
	margin-left: -90px;
	border-radius: 5px;
	text-align:right;
	padding-right: 32px;
	line-height: 28px;
	margin-top: 2px;
	padding: 0px 42px 0px 0px;
	background-color: rgb(255,255,255);
	background-color: rgba(255,255,255,0.8);
	width: 85px;
	opacity: 0;
}


ul.lang li.lang-fr span:before {
	content: 'Maternelle';
}
ul.lang li.lang-en span:before {
	content: 'Courant';
}
ul.lang li.lang-de span:before {
	content: 'Scolaire';
}

ul.lang li span:before {

}

ul.lang li:hover span:before {
	opacity: 1;
	transition: all 0.5s ease-in-out;
}

footer {
	position: relative;
	max-width:90%;
	width: 600px;
	padding: 10px;
	margin: 0px auto 10px;
	text-align: center;
	color: rgb(255,255,255);
	color: rgba(255,255,255,0.8);
	font-size: 0.8em;
}

footer a:hover {
	color: rgba(255,255,255,1);
}

#cookies {
	margin: 0px;
	padding: 10px 5px 10px 10px;
	background: #FFFFFF;
	border: 1px solid #CCCCCC;
	color: #999999;
	box-shadow: 0 2px 10px 0 #000000;
	max-width: 555px;
	position: fixed;
	right: 0;
	bottom: -8px;
	font-size: 0.8em;
	text-align: right;
}
#cookies p {
	display: inline-block;
	margin-bottom: 8px;
}
#cookies .buttons {
	margin-left: 8px;
}
#cookies a {
	border: 1px solid #999999;
	padding: 2px;
	margin-left: 2px;
}
#cookies a:hover {
	color: #0C79C0;
}

.update-time {
	font-size: 0.6em;
	color: #666666;
	text-align: right;
}



@media only screen 
and (max-device-width : 480px) {
	body {

	}
	main ul.download {
		position: relative;
		text-align: left;
		padding: 0px 0px 0px 12px;
		margin: 6px;
	}
	div.middle, div.middle.cv {
		height:80%;
	}
	main nav.big ul li {
		width: 90%;
	}
}

@media only screen 
and (min-device-width : 480px) 
and (max-device-width : 600px) {
	div.middle, div.middle.cv {
		height:75%;
	}
	main nav.big ul li {
		width: 45%;
	}
}