/*
 * Copyright © Michel Fortin 2009-2012
 * <https://michelf.com/>
 */

@font-face {
    font-family: 'Inconsolata';
    font-weight: normal;
    font-style: normal;
    src: url('inconsolata/Inconsolata.eot');
    src: local('Inconsolata'),
		local('InconsolataMedium'), 
		url('inconsolata/Inconsolata.eot?#iefix') format('embedded-opentype'),
		url('inconsolata/Inconsolata.woff') format('woff'),
		url('inconsolata/Inconsolata.otf') format('opentype'),
		url('inconsolata/Inconsolata.ttf') format('truetype'),
		url('inconsolata/Inconsolata.svg#InconsolataMedium') format('svg');
}

html {
	min-height: 100%;
}
html, body {
	-webkit-box-flex: 1.0;
	display: -webkit-box;
	-webkit-box-orient: vertical;
}
#content {
	-webkit-box-flex: 1.0;
}
body {
	/* Positionnement. */
	max-width: 52em;
	margin: 0 auto 1.5ex;
	padding: 0 1em;
	background: #f0efec url(vapeurs.jpg);
	color: black;
	
	/* Police. */
	font-family: Palatino, "Palatino Linotype", "URW Palladio L", 
	             "Book Antiqua", Georgia, "Times New Roman", serif;
	line-height: 1.45;
	font-variant-numeric: lining-nums proportional-nums;
}
* html body { margin: 0 7%; }

#tete {
	margin: auto;
	color: #bb9970;
	background: #fafaaa;
	font-family: -apple-system, "Lucida Grande", "Lucida Unicode", sans-serif;
	font-size: 80%;
	text-align: center;
	line-height: normal;
    -webkit-box-shadow: 0px 2px 2px #ddd;
    box-shadow: 0px 2px 2px #ddd;
    -moz-box-shadow: 0px 2px 2px #ddd;
}

#tete {
	height: 34px;
	position: relative;
    border: 1px solid white;
    border-top: none;
    background: white url(mini-tete.gif) repeat-x top center;
    background: 
        -webkit-gradient(linear, left top, left bottom, 
        from(#ffeb90),
        to(#e5ff90),
        color-stop(0.5588, #fffca1),
        color-stop(0.8529, #fdffa9),
        color-stop(0.8529, #e3ff85)
        );
    background: -webkit-linear-gradient(top, #ffeb90 0%, #fffca1 55.88%, #fdffa9 85.29%, #e3ff85 85.29%, #e5ff90 100%);
    background: -moz-linear-gradient(top, #ffeb90 0%, #fffca1 55.88%, #fdffa9 85.29%, #e3ff85 85.29%, #e5ff90 100%);
    background: -ms-linear-gradient(top, #ffeb90 0%, #fffca1 55.88%, #fdffa9 85.29%, #e3ff85 85.29%, #e5ff90 100%);
    background: -o-linear-gradient(top, #ffeb90 0%, #fffca1 55.88%, #fdffa9 85.29%, #e3ff85 85.29%, #e5ff90 100%);
    background: linear-gradient(top, #ffeb90 0%, #fffca1 55.88%, #fdffa9 85.29%, #e3ff85 85.29%, #e5ff90 100%);
	-webkit-border-bottom-right-radius: 0.6em; -webkit-border-bottom-left-radius: 0.6em;
	border-bottom-right-radius: 0.6em; border-bottom-left-radius: 0.6em;
	-moz-border-radius-bottomright: 0.6em; -moz-border-radius-bottomleft: 0.6em;
}

#tete p {
	margin: 0;
}
#tete p a {
	display: block;
	width: 38px;
	margin: auto;
	text-align: center;
	overflow: hidden;
	height: 33px;
}
#tete p .minilogo {
	display: block;
	margin: auto;
	z-index: 10;
	position: relative;
}
#tete p .minilogo::before {
	display: block;
	margin: auto;
	content: "";
	background: transparent url(bateau-projets.gif) no-repeat top center;
	height: 33px; width: 32px;
}
@media screen and (-webkit-min-device-pixel-ratio: 1), screen and (min--moz-device-pixel-ratio: 1) {
	*>#tete p .minilogo::before {
		background-image: none, url(bateau-projets.svg);
	}
}
#tete p a img { height: 33px; width: 32px; }

#tete ul { margin: 0; padding: 0; }
#main-nav li {
	position: absolute;
	list-style: none;
	z-index: 5;
	top: 10px;
	display: block;
	margin: 0;
	text-align: center;
	width: 108px; height: 55px;
}
#main-nav1 {
	right: 56%;
	padding-right: 64px; font-weight: normal;
}
#main-nav2 {
	right: 51%;
	padding-right: 10px;
	z-index: 6 ! important;
}
#main-nav3 {
	left: 51%;
	padding-left: 10px;
	z-index: 6 ! important;
}
#main-nav4 {
	left: 56%;
	padding-left: 64px;
}
#tete ul li a {}

#tete small {
	margin: 0;
	padding: 0.5ex 2.2em;
	display: block;
}

#tete a, #pied a  {
	text-decoration: none;
	font-weight: bold;
	color: #893;
}

#tete a:visited, #pied a:visited  {
	color: #ab0;
}

#tete a:hover, #pied a:hover {
	text-decoration: underline;
}

#pied {
	clear: both;
	position: relative;
	margin: 1.4ex 3.1em;
}
* html #pied { height: 1ex; }

#pied p {
    clear: left;
    color: #6e6650;
	font: 93% -apple-system, "Lucida Grande", "Lucida Unicode", sans-serif;
	margin: 0;
}

#pied hr, #tete hr {
	display: none;
}

#pied p {
	margin: 0;
    color: #6e6650;
	font: 93% -apple-system, "Lucida Grande", "Lucida Unicode", sans-serif;
	text-align: inherit;
}

#pied small {
	margin: 0;
	display: block;
}


#sitemap hr {
    color: white;
	border: none;
	background: transparent;
	height: 1px;
	clear: both;
	margin: 0;
}

#sitemap {
	clear: both;
	position: relative;
	margin: 2.4ex 0 0 3.1em;
	font: 90% -apple-system, "Lucida Grande", "Lucida Unicode", sans-serif;
}
* html #sitemap { height: 1ex; }


#sitemap a          { text-decoration: none; color: inherit; }
#sitemap a:hover    { text-decoration: underline; }
#sitemap a:visited	{ color: #6e6650; }
#sitemap a:active	{ color: #c84; }

#sitemap p {
    clear: left;
    color: #6e6650;
	margin: 0;
}


#sitemap div.navcolumn {
    float: left;
    padding: 0 2.0em 1em 0;
}
#sitemap div.navcolumn.lastcolumn {
    padding: 0 0 1em 0;
}
#sitemap ul {
    font-size: 93%;
    list-style: none;
    margin-left: 0;
    padding-left: 0;
    min-width: 20%;
    margin-right: 2em;
}
#sitemap ul.continued { float: left; }
#sitemap li { margin: 0.5ex 0; }
#sitemap li ul { margin-left: 1em; }
#sitemap li ul { margin-left: 1em; }

#sitemap .more { font-style: italic; }



#content {
	position: relative;
	padding: 0.4ex 3.1em 5.5ex 3.1em;
    margin: 1ex 0;
    border-top: 1px solid white;
    border-bottom: 1px solid white;
	background: white;
	-webkit-border-radius: 0.6em;
	border-radius: 0.6em;
	-moz-border-radius: 0.6em;
    -webkit-box-shadow: 0px 2px 4px #ddd;
    box-shadow: 0px 2px 4px #ddd;
    -moz-box-shadow: 0px 2px 4px #ddd;
}

#content .bloc-gauche {
	clear: left;
	float: left;
	width: 47%;
}
#content .bloc-droit {
	clear: right;
	float: right;
	width: 47%;
}
#content .bloc-centre {
	text-align: center;
	clear: both;
	width: 63%;
	margin: auto;
}
#content .bloc-plein {
	clear: both;
}

p {
	text-align: justify;
	word-spacing: 0;
	margin: 2.4ex 0;

	hyphens: auto;
	hyphenate-limit-chars: 8;
	-webkit-hyphenate-limit-before: 5;
	-webkit-hyphenate-limit-after: 6;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;

	font-variant-numeric: lining-nums;
}

a			{ color: #df7000; }
a:visited	{ color: #861; }
a:active	{ color: #e90; }
a img		{ border: none; }

h1 {
	font-weight: normal;
	xfont-style: italic;
	font-size: 260%;
	text-shadow: 0px 2px 2px #ddd;
	line-height: normal;
}
* html h1 small { font-variant: normal; }

h1 small {
	font-variant: small-caps;
	text-transform: lowercase;
	font-size: 100%;
	line-height: normal;
}
* html h1 small { text-transform: none; font-size: 85%; }

a.money {
	position: absolute;
	top: 4.9ex; right: 3.1em;
	
	line-height: normal;
	text-decoration: none;
	font: inherit;
	font-weight: bold;
	color: #8cc70e;

	background: url(donate.svg) white no-repeat right center;
	border: 1px solid #8cc70e;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding: 0.5ex 74px 0.2ex 1em;
	margin: 0;
	/****************/
	background: white;
	padding: 0.5ex 1em 0.2ex 1em;
	
	cursor: pointer;
	display: block;
}
* html a.money {
	/*\*/
	right: 8em;
	/* */
}
a.money:hover {
	background-color: #efffe8;
}
a.money:active {
	color: white;
	background-color: #8cc70e;
}

#menu-projet {
	margin: -2.2ex -3.1em 3.5ex -3.1em; padding: 0 3.1em 0 3.1em;
	line-height: normal;
    border-bottom: 1px solid #ddd;
	background: url(ombre-haut.png) repeat-x center bottom;
    background: -moz-linear-gradient(bottom, #f7f7f7, #fafafa, #fefefe, #fff);
	background: -o-linear-gradient(bottom, #f7f7f7, #fafafa, #fefefe, #fff);
	background: -ms-linear-gradient(bottom, #f7f7f7, #fafafa, #fefefe, #fff);
	background: linear-gradient(bottom, #f7f7f7, #fafafa, #fefefe, #fff);
    background: 
        -webkit-gradient(linear, left bottom, 0.5% 10%, 
        from(#f1f1f1),
        to(rgba(255,255,255,0))
        ),
        -webkit-gradient(linear, right bottom, 99.8% 10%, 
        from(#f1f1f1),
        to(rgba(255,255,255,0))
        ),
        -webkit-gradient(linear, left bottom, left top, 
        from(#f7f7f7),
        to(#fff),
        color-stop(0.15, #f9f9f9),
        color-stop(0.8, #fdfdfd)
        );
    height: auto;
}
* html #menu-projet {
    height: 2.2ex;
}
#menu-projet::after {
    display: block;
    content: '';
    clear: both;
}
#menu-projet:after {
    display: block;
    content: '';
    clear: both;
}
#menu-projet.tight {
	margin-top: -3.5ex;
}

#menu-projet li {
    font: 93% -apple-system, "Lucida Grande", "Lucida Unicode", sans-serif;
	list-style: none;
	display: inline;
}
#menu-projet li a, #menu-projet li strong {
	float: left;
	margin-right: 1em;
	
	font-weight: bold;
	text-decoration: none;
	display: block;
	padding-bottom: 1ex;
    border-bottom: 0;
}

#menu-projet li a.courant {
	background-image: url(triangle.png);
	background-position: bottom center;
	background-repeat: no-repeat;
}
@media screen and (-webkit-min-device-pixel-ratio: 1), screen and (min--moz-device-pixel-ratio: 1) {
	*>#menu-projet li a.courant {
		background-image: none,url(triangle.svg);
	}
}
* html #menu-projet li a.courant {
	background-image: url(triangle.gif);
}

#menu-projet li.alt a {
	float: right;
	border-left: 1px solid #ddd;
    -webkit-border-image: -webkit-gradient(linear, left bottom, left top, 
        from(#ddd),
        to(#fff),
        color-stop(0.8, #eee)
        ) 0 0 0 100% stretch stretch;
    -webkit-border-image: -webkit-linear-gradient(bottom, #ddd 0%, #eee 80%, #fff 100%) 0 0 0 100% stretch stretch;
    -moz-border-image: -moz-linear-gradient(bottom, #ddd 0%, #eee 80%, #fff 100%) 0 0 0 100% stretch stretch;
    -ms-border-image: -ms-linear-gradient(bottom, #ddd 0%, #eee 80%, #fff 100%) 0 0 0 100% stretch stretch;
    -o-border-image: -o-linear-gradient(bottom, #ddd 0%, #eee 80%, #fff 100%) 0 0 0 100% stretch stretch;
    border-image: linear-gradient(bottom, #ddd 0%, #eee 80%, #fff 100%) 0 0 0 100% stretch stretch;
    border-top-width: 0;

    padding-left: 1.5em;
    margin-left: 0.5em;
	margin-right: 0;
}

#menu-projet li strong {
	color: #9c0;
	background-image: url(triangle.png);
	background-position: bottom center;
	background-repeat: no-repeat;
	cursor: default;
}
@media screen and (-webkit-min-device-pixel-ratio: 1), screen and (min--moz-device-pixel-ratio: 1) {
	*>#menu-projet li strong {
		background-image: none,url(triangle.svg);
	}
}
* html #menu-projet li strong {
	background-image: url(triangle.gif);
}

#menu-projet li a:hover {
	text-decoration: underline;
}

#menu-projet + * {
	clear: both;
}

h2 {
	font-size: 125%;
	margin-top: 3.5ex;
	letter-spacing: 0.0em;
	font: 110% "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: bold;
}

h3 {
	font: 90% "Helvetica Neue", Helvetica, Arial, sans-serif;
	margin-top: 3.5ex;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.07em;
}

table {
	border-collapse: collapse;
	margin: 1ex 1em;
	font-variant-numeric: tabular-nums;
}
th {
	font: 80% "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	padding-bottom: 0.5ex;
	border-bottom: 3px double #ed8;
	text-align: left;
}
td {
	padding-top: 0.7ex;
}
td, th {
	padding-right: 3ex;
}

blockquote {
	border-top:		2px solid #ca9;
	border-bottom:	2px solid #ca9;
	margin: 1ex 2em;
}
blockquote p, blockquote p + ol, blockquote p + ul {
	margin: 0.9ex 0;
}
blockquote em {
	font-style: normal;
}

pre {
	background: #fcfaec;
	border: 1px solid #feeab8;
	padding: 0.9ex 0.9em;
	margin: 1ex 0;
	line-height: inherit;
	font-family: Inconsolata, Consolas, Courier, monospace; 
	font-size: 96%;
	font-size-adjust: 0.45;
}
code {
	font-family: Bitstream Vera Sans Mono, Inconsolata, Consolas, Courier, monospace; 
	font-size: 100%;
	font-size-adjust: 0.45;
	line-height: 1.2; /* Only IE Mac can use that. */
	text-transform: none;
	letter-spacing: normal;
	word-spacing: -0.2ex;
	padding: 0 0.3ex;
	
	hyphens: manual;
	-webkit-hyphens: manual;
	-moz-hyphens: manual;
	-ms-hyphens: manual;
}
pre code {
	padding: 0;
	word-spacing: normal;
}

hr {
	margin: 2ex 0;
	height: 1px;
	background: #dcb url(barre-v.gif);
	color: #dcb;
	border: none;
}


/* -- Definition lists -- */

dl dt {
	font: 100% "Helvetica Neue", Helvetica, sans-serif;
	margin: 2ex 0 1ex 0;
}
dl dt a:first-child, dl dt img:first-child + a { margin-right: 0.5em; }
dl dd { margin: 1ex 0 1ex 1.5em; }

.flat-dd dd {
	margin-left: 0;
}


/* Definition list with icons. */

dl.icon-list dt, .icon-list dl dt {
	clear: left;
	padding-top: 5px;
}
dl.icon-list dt img, .icon-list dl dt img {
	float: left;
	margin: -5px 1.5em 2.3ex 0;
	width: 64px;
	height: 64px;
	position: relative;
}
* html dl.icon-list td img, * html .icon-list dl td img {
	position: relative;
}
dl.icon-list dd, .icon-list dl dd { padding-left: 64px; }

/* -- Notes -- */

.note { clear: left; }
span.note { font-style: italic; }
p.note, .note p { font-style: italic; margin: 2.2ex 0; }

/* -- Sample HTML output box -- */

div.html {
	font: 100% serif;
	border: 1px dashed #ca9;
	padding: 1px 0.9em;
	margin: 1ex 0;
	line-height: normal;
	word-spacing: 0;
}
div.html h1, div.html h2, div.html h3, 
div.html h4, div.html h5, div.html h6 {
	font: bold 100% serif; 
	font-variant: normal;
	text-shadow: none;
	text-transform: none;
	margin: 1ex 0;
}
div.html h1 { font-size: 160%; }
div.html h2 { font-size: 145%; }
div.html h3 { font-size: 135%; }
div.html h4 { font-size: 120%; }
div.html h5 { font-size: 110%; }
div.html h6 { font-size: 100%; }
div.html p { text-align: inherit; }
div.html blockquote { border: none; }
div.html code { 
	word-spacing: inherit;
	margin: 0;
}
div.html pre {
	background: transparent; border: none; 
	padding: 0; margin: 2.2ex 0;
}
div.html hr { color: #dcb; background: #dcb; }
div.html dt, div.html th {
	font: inherit;
	text-transform: inherit;
	letter-spacing: inherit;
	font-weight: bold;
}
div.html table { margin: 1.5ex 0; }
div.html td, div.html th {
	padding: 0.5ex 0.5em;
	border: 1px solid #dcb;
}
div.html table {
	border-collapse: collapse;
	border: 1px solid #dcb;
}
div.html th[align="right"]	{ text-align: right; }
div.html th[align="center"]	{ text-align: center; }
div.html th[align="left"]	{ text-align: left; }
div.html th[align="justify"]{ text-align: justify; }

/* Multi-Safari */

div.multi-safari-downloads li {
	min-height: 38px;
	list-style: none;
	padding-top: 8px;
	font: 100% "Helvetica Neue", Helvetica, sans-serif;
}
div.multi-safari-downloads li img {
	float: left;
	margin-top: -8px;
	margin-right: 10px;
}

/* -- Footnotes -- */

body a[rel="footnote"], body a.footnote-ref  { padding: 0.3ex; }
div.footnotes      { font-size: 92%; margin: 1.5em 0 2.5em 0; }
div.footnotes > hr { width: 40%; }
div.footnotes p    { margin: 1ex 0; }
div.footnotes a[rev="footnote"], div.footnotes a.footnote-backref { text-decoration: none; font-size: 90%; }


div.promo {
	margin: 2ex -1.5em 0 2ex;
	float: right;
}
div.promo img {
	border: none;
}


/* Size-specific rules */
/* Note: Using this "*>" trick prevent IE 5 and 5.5 from interpreting
   rules in the handheld section. */
@media handheld, only screen and (max-width: 52em) {
	*>body { margin: 0 auto; padding: 0 0; }
	*>#tete {
		margin-left: 0; margin-right: 0; width: auto; 
		border-right: 0;
		border-left: 0;
		-webkit-border-radius: 0;
		border-radius: 0;
		-moz-border-radius: 0;
	}
	*>#tete #alt-nav { margin-right: 4%; }
    *>#content {
		padding: 1px 4% 3ex;
        -webkit-border-radius: 0;
        border-radius: 0;
        -moz-border-radius: 0;
    }
	*>#menu-projet {
		margin-left: -4.25%; margin-right: -4.25%;
		padding: 0 4.25% 0 4.25%;
	}
	*>a.money { right: 4.25%; }
    *>#sitemap { margin: 0 0 0 4%; padding: 3ex 0 0; 0; width: auto; }
}
@media handheld, only screen and (max-width: 40em) {
	*>#tete #main-nav li { width: 66px; }
	*>#main-nav1 {
		right: 62%;
		padding-right: 52px;
	}
	*>#main-nav2 {
		right: 53%;
		padding-right: 16px;
	}
	*>#main-nav3 {
		left: 53%;
		padding-left: 16px;
	}
	*>#main-nav4 {
		left: 62%;
		padding-left: 52px;
	}

	*>#pied { margin: 2ex -1em 0 -1em; padding: 0.5ex 1em; width: auto; }
    *>#sitemap li { margin-top: 1ex; }
    *>#sitemap li a { text-decoration: underline; }
	*>#intro img { width: 42%; margin-right: 1em; float: left; }
	*>div.secondary, *>div.main { 
		float: none ! important; width: auto ! important;
		border: none ! important; padding: 0 ! important;
	}
	*>dd, *>ul, *>ol { padding: 0; margin-left: 1em; }
	*>p { text-align: inherit; }
	*>blockquote, *>dl.commentaires dd { padding: 0; margin-left: 1em; }
	*>a.money { display: none; }
}
@media handheld, only screen and (max-device-width: 400px) {
    *>#sitemap li { margin-top: 1ex; }
    *>#sitemap li a { text-decoration: underline; }
}

/* Form styling */
fieldset {
	background: rgb(252, 250, 236);
	border: 1px solid rgb(238, 238, 170);
	font: 95% 'Helvetica Neue', Helvetica, Arial, sans-serif;
	clear: both;
}
div.form-zone { display: table; margin: auto; }
div.form-zone p { text-align: left; }
p.side-note { font-size: 85%; float: right; width: 22%; padding: 0 2em; text-align: left }
div.form-zone p.inner-note { text-align: center; font-size: 85%; margin-top: 1ex; margin-bottom: 2ex; max-width: 27em; }
p.field-line { padding-left: 10em; text-indent: -10em; }
p.field-line.compact { margin: 0.5ex 0; }
p.field-line input { width: 90% }
p.field-line span.label-text { display: inline-block; min-width: 10.9em; text-align: right; margin-right: 1em; text-transform: uppercase; font-size: 85%; letter-spacing: 0.17ex; }
@media handheld, only screen and (max-device-width: 480px) {
	p.side-note { float: none; width: auto; padding: 0; }
}
.zone-boutons { text-align: center; }
