*
{
	font-family: "DejaVu Sans", "Verdana", sans, "DejaVu Serif", "Times New Roman", serif;
	/*font-family: "Linux Biolinum", "Verdana", sans, "Linux Libertine", "Times New Roman", serif;*/
	font-size: 15px;
}

html img
{
	border: none;
}

html strong
{
	font-size: 1em;
	font-weight: bold;
}

body
{
	background: #fff;

	color: #000;
}

div#content
{
	width: 85%;

	margin: 30px auto 0;
}

div#titre
{
	width: 80%;
	width: 85%;
	height: 160px;

	margin: 30px auto 70px;

	background: top left url('degrade-h1.png') repeat-y;

	color: #fff;
}

div#titre h1
{
	float: left;

	padding-top: 100px;
	padding-left: 10%;

	font-size: 2.25em;
}

div#titre img
{
	float: right;
}


form
{
	margin: 0 auto;

	width: 100%;
}

div.cadre
{
	clear: both;

	margin: 2% 0px;
	padding: 1%;

	border: solid #1862a0 1px;

	background: #87B9DF;

	color: #000;
}

div.cadre h2
{
	padding: 2px 7px 20px;

	font-size: 1.3em;
	font-weight: bold;

	color: #054B81;
}

div.cadre input[type=text]
{
	padding: 2px 10px;

	border: solid #1862a0 1px;

	background: #fff;

	color: #1862a0;
}

div#infos
{
	position: relative;
}

div#infos div#infos-bulle
{
	display: none;

	z-index: 1;

	opacity: 0;
}

div#infos img#code-fleche
{
	position: absolute;

	width: 50px;
	height: 50px;

	top: -10%;
	right: 25%;

	z-index: 2;

	opacity: 0;
}

div#infos input[type=text]
{
	background-color: #1862a0;

	color: #fff;
}

div#cadre-code
{
	margin-top: 80px;

	border-radius: 0 0 5% 5%;
	-moz-border-radius: 0 0 5% 5%;
	-webkit-border-radius: 0 0 5% 5%;

	background: #1862a0;

	border: none;

	color: #fff;

	z-index: 3;
}

div#cadre-code #code
{
	width: 75px;

	margin: 1% 0px 1% 10%;
}

div#cadre-code h2
{
	padding-left: 10%;

	background: #1862a0;

	color: #fff;
}

div#cadre-code img
{
	float: left;

	position: relative;

	top: -80px;
	left: -70px;
}

div#cadre-code a:link
{
	font-style: italic;

	background: #1862a0;

	color: #fff;
}

div#cadre-code p#code-oubli
{
	margin: 1%;

	padding-left: 10%;

	text-align: left;
}

div#cadre-code p#code-oubli em
{
	font-size: 0.6em;
	font-style: italic;
}

div.cadre .label
{
	position: relative;

	display: block;

	padding-left: 15%;

	width: 85%;
	height: 35px;

	margin: 15px 0;
}

div.cadre .label .input
{
	position: absolute;

	top: 0px;
	right: 10%;

	display: block;

	width: 40%;

/*	margin-right: 10%;*/
}

div.cadre .label.boxes .input
{
	top: 25px;
}

div.cadre .boxes .input > label
{
	display: block;
	margin: 3px 0;
}

div.cadre span.input
{
	padding-right: 22px; /* hack to fit at the left of other fields */
}

/*
div.cadre span.input select
{
	width: 100%;
}
*/

div.cadre .boxes
{
	height: 180px;

	padding: 25px 15%;
	padding-right: 0;

	border-radius: 2%;
	-moz-border-radius: 2%;
	-webkit-border-radius: 2%;

	background: #D8D8D8;

	color: #000000;
}

div.cadre input.box
{
	margin: 0 5px;

	vertical-align: middle;
}

div.cadre #date input
{
	width: 15%
}


div.cadre div.languages div.clear
{
	clear: both;
	/*height: 730px;*/
}


div.cadre div.languages .language
{
	float: left;

	width: 97px;
	height: 97px;

	margin: 5px;
	padding: 15px;

	text-align: center;

	border-radius: 5%;
	-moz-border-radius: 5%;
	-webkit-border-radius: 5%;

	border: solid 2px #FFFFFF;

	background: #d8d8d8;

	color: #000000;
}

div.cadre div.languages .other
{
	width: 237px;
/*	width: calc(97*2px + 15*2px + 2*2px); */
}

div.cadre div.languages .language input
{
	margin: 5px auto;
}

div.cadre div.languages .other .input-text
{
	width: 75%;
}

div#actions label
{
	display: block;

	width: 50%;

	margin: 5px auto;

	text-align: center;
}

div#actions input[type=submit]
{
	width: 30%;
	height: 50px;

	margin: 5px 35%;

	background-color: #1862a0;
	color: #fff;

	border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
}

p#validators
{
	width: 94px;
	height: 31px;

	margin: 20px auto 30px;
}

p#validators a
{
	float: left;

	width: 88px;
	height: 31px;

	margin: 0 3px;
}

p.bonus
{
	margin: 20px;

	text-align: center;
}

#content-alt
{
	text-align: center;
	font-size: 20px;
}

#content-alt h2
{
	margin: 25px auto 5px;

	font-size: 1.1em;
}

#content-alt h4
{
	margin: 25px auto 15px;
}

#content-alt p
{
	margin: 15px auto;
}

#content-alt a
{
	font-weight: bold;
}

#partenaires
{
	margin: 20px auto;
}

#partenaires img
{
	margin: 15px;
}

#partenaires p
{
	width: 50%;

	margin: 50px auto;

	font-size: 0.8em;
}

#partenaires a
{
	font-size: 1em;
}

#partenaires p img
{
	display: block;

	margin: 5px auto;
}
