/*
 * ici Michel Fortin / Projets      Michel Fortin Here / Projects
 * Feuille de style                 Style Sheet
 * 
 * Copyright (c) Michel Fortin 2009
 * <http://www.michelf.com/>
 */

body {
	/* Positionnement. */
	max-width: 52em;
	margin: auto;
	padding: 0 1em;
	background: #f0efec url(vapeurs.png);
	color: black;
	
	/* Police. */
	font-family: Palatino, "Palatino Linotype", "URW Palladio L", 
	             "Book Antiqua", Georgia, serif;
	line-height: 1.45;
	word-spacing: 0.05em;
}
* html body { margin: 0 7%; }

#tete {
	margin: 0;
	color: #bb9970;
	background: #fafaaa;
	font-family: "Lucida Grande", "Lucida Unicode", sans-serif;
	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 {
    border: 1px solid white;
    border-top: none;
    background: white url(mini-tete.gif) repeat-x top center;
	-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;
	padding-top: 29px;
	text-align: inherit;
	background: transparent url(bateau-projets.png) no-repeat top center;
}
* html #tete p { background-image: url(bateau-projets.gif); }

#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 2.7em;
}
* html #pied { height: 1ex; }

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

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

#pied p {
	margin: 0;
    color: #6e6650;
	font: 93% "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 2.7em;
	font: 90% "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 3em 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 2.7em 1.5ex 2.7em;
    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;
}

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

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.alt {
	position: absolute;
	top: 2ex; right: 2em;
	
	font: bold 93% "Lucida Grande", "Lucida Unicode", sans-serif;
	line-height: normal;
	text-decoration: none;
}
* html a.alt {
	/*\*/
	right: 8em;
	/* */
}
a.alt:hover {
	text-decoration: underline;
}

a.money {
	position: absolute;
	top: 6ex; right: 2em;
	
	line-height: normal;
	text-decoration: none;
	font: inherit;
	font-weight: bold;
	color: #8cc70e;
	
	background: white;
	border: 1px solid #8cc70e;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding: 0.5ex 1em 0.2ex 1em;
	margin: 0;
	
	cursor: pointer;
	display: block;
}
* html a.money {
	/*\*/
	right: 8em;
	/* */
}
a.money:hover {
	background: #efffe8;
}
a.money:active {
	color: white;
	background: #8cc70e;
}

#menu-projet {
	margin: -2.2ex -2.7em 3.5ex -2.7em; padding: 0 2.7em 0 2.7em;
	line-height: normal;
    border-bottom: 1px solid #ddd;
    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)
        );
    background: -moz-linear-gradient(90deg, #f7f7f7, #fafafa, #fefefe, #fff);
    height: auto;
}
* html #menu-projet {
    height: 2.2ex;
}
#menu-projet::after {
    display: block;
    content: '';
    clear: both;
}

#menu-projet li {
    font: 93% "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;
}

#menu-projet li.alt a {
	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;
    border-top-width: 0;

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

#menu-projet li strong {
	color: #9c0;
	background-image: url(triangle.png);
	background-position: bottom center;
	background-repeat: no-repeat;
	cursor: default;
}
* 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;
}
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: 120%;
}
code {
	/* Disabled because of font size issues.
	font-family: "Andale Mono", "Lucida Console", Monaco, monospace; */
	line-height: 1.2; /* Only IE Mac can use that. */
	text-transform: none;
	letter-spacing: normal;
	word-spacing: -0.2ex;
	padding: 0 0.3ex;
}
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; }


/* Definition list with icons. */

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

/* -- Notes -- */

.note { clear: left; }
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; }


/* -- Footnotes -- */

a[rel="footnote"]  { 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"] { text-decoration: none; font-size: 90%; }


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


/* Handheld-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-device-width: 480px) {
	html:root { -webkit-text-size-adjust: 220%; max-width: 30em; }
	*>body { margin: 0; padding: 0.3ex; font: 1em sans-serif; background: white; }
	*>#tete, *>#pied, *>#content { -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; }
	*>#content { padding: 0 1em; border: none; background: none; }
	*>h1 { font-family: serif; font-size: 200%; }
	*>h1, *>p, *>ul, *>ol { margin-top: 1.5ex; margin-bottom: 1.5ex; }
	*>dd, *>ul, *>ol { padding: 0; margin-left: 1em; }
	*>dl.icon-list dt { padding-top: 3px; }
	*>dl.icon-list dt img { margin-top: -3px; width: 32px; height: 32px; }
	*>dl.icon-list dd { padding-left: 32px; }
	*>code, *>pre { font: 90% Inconsolata, Courier, "Courier New"; -webkit-text-size-adjust: inherit; }
	*>dl.icon-list dt img { width: 3em; height: 3em; }
    *>#sitemap { margin: 0; padding: 0 1em; width: auto; font-size: inherit; }
    *>#sitemap ul { font-size: inherit; }
    *>#sitemap li { margin-top: 1ex; }
    *>#sitemap li a { text-decoration: underline; }
    *>#sitemap hr { border-top: 1px solid #ddc; padding-bottom: 2ex; }
}

/* Form styling */
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; }

