/* IMPORTS */

@import "../files/css/plugins.css";
@import "../files/css/boilerplate.css";

/* ABCD STYLES */

#page {
	width: 100%;
	position: relative;
	font-family: "Lucida Sans Unicode", "Lucida Grande";
	color: #888888;
}

#container {
	width: 980px;
	margin: 0 auto;
}

span.caps {
	text-transform:	small-acaps;
	letter-spacing: 1px;
}

.clear {
	clear: both;
}
a {color:#E3001B;text-decoration:none;}
a:hover {color:#FFF;background-color:#E3001B;}

/* GLOBAL NAVIGATION */
/* that's language, accesskey & stuff */

#nav-general {
	float: left; width: 100%;
}
#nav-lang {
	float: right;
	margin: 0; padding: 5px 5px 5px 10px;
	border: 1px solid #E3001B; border-top: none;
}
#nav-lang li a span {
	height: 11px; width: 16px;
	text-indent: -9999px;
	margin-right: 5px;
	font-size: 11px; line-height: 11px;
}
#nav-lang li span { 
	text-indent: -9999px; display: block; 
	height: 11px; width: 16px; 
	margin-right: 5px;
}
#nav-lang a:hover {
background-color: #FFF;
}
#nav-lang li.en-us span { background: url(../images/gb.png) no-repeat top left; }
#nav-lang li.fr-fr span { background: url(../images/fr.png) no-repeat top left; }
#nav-lang li.es-es span { background: url(../images/es.png) no-repeat top left; }

/* HEADER */

#header {
	width: 170px;
	float: left;
	margin: 50px 70px 50px 0;
	position: relative;
}

/* BRANDING */

#branding {
	float: left;
	height: 170px;
	margin-bottom: 50px;
}
h1#branding-logo a {
	width: 170px; height: 170px;
	display: block;
	text-indent: -9999px;
	background: #FFFFFF url(../images/logo-170.png) no-repeat top left;
}

/* NAVIGATION */

#navigation {
	float: left;
	width: 170px;
}
ul#nav-main, 
ul.nav-main {
	margin: 2px 0 0 0;
	border-top: 1px solid #CCCCCC;
}
ul#nav-main li, 
ul.nav-main li {
	list-style: none;
	text-align: left;
}
ul#nav-main li a, 
ul.nav-main li a {
	display: block;
	color: #666;
	padding: 15px 10px 0; margin: 0;
	line-height: 32px; height: 32px;
	font-family: "Lucida Sans Unicode","Lucida Grande";
	font-size: 12px; letter-spacing: 1px;
	border-bottom: 1px solid #CCCCCC;
	cursor: pointer;
}
ul#nav-main li a:hover, ul#nav-main li.current a,
ul.nav-main li a:hover, ul.nav-main li a.current {
	background-color: #E3001B;
	color: #FFFFFF;
	text-decoration: none;
}
ul#nav-main li.current a,
ul.nav-main li a.current {
	background: #E3001B url() no-repeat center right;
}

/* CONTENT */

#content {
	font-size: 13px;
	width: 740px; float: left;
	margin: 50px 0 0; color: #333;
	padding-top: 170px;
}
#content.home { padding: 0; margin-top: 0;}
#content p { margin-bottom: 20px; }

h1.content-section {
	font-weight: normal;
	margin: 0 0 30px; 
	font-size: 30px; line-height: 50px;
	text-align: right; 
	border-bottom: 1px solid #cccccc;
	padding-bottom: 2px; 
	color: #333;
}

/* SLOGAN */

#slogan { 
	border-top:1px solid #CCCCCC;
	border-bottom:1px solid #CCCCCC;
	margin: 270px 0 50px;
	padding-top:20px;
}
#slogan h2 {
	font-size: 25px; 
	font-weight: normal;
	font-family: Georgia;
        text-align: right;
}

/* FRONT PAGE */

.tidbits {
	width: 230px;
	float: left;
	margin-right: 25px;
}
.tidbits ul {
	margin: 0;
}
.tidbits li {
	margin-bottom: 1em;
	list-style-type: none;
}
.tidbits h3 {
	border-bottom: 1px solid #CCC;
	padding-bottom: 15px;
	color:#444444;
	font-size:11px;
	letter-spacing:2px;
	line-height:14px;
	text-transform:uppercase;
	font-weight: normal;
}
.tidbits p {
	text-align: justify;
}
.vcardblock {border-top: 1px solid #CCC;margin-top: 15px;padding-top:15px;}
/* WARNING IE */

#warning-ie {
	background-color: #F0F4F5;
	border: 5px solid #CDCDCD;
	padding: 20px;
	margin-bottom: 1.5em;
}
#warning-ie li#firefox a {
	background-color: #D5FDD5;
	padding: 5px; color: #000;
	border: 1px solid #66CC00;
}
#warning-ie li#ie a {
	color: #000;
	text-decoration: underline;
}
#warning-ie li {
	line-height: 24px;
}
#warning-ie #close {
	float: right; padding-left: 20px;
	background: url(../images/close.gif) no-repeat top left;
	cursor: pointer;
}
#warning-ie #close:hover {
	background: url(../images/closover.gif) no-repeat top left;
}
#warning-ie ul { margin-bottom: 0;}

/* TEAM SECTION */

.member-section { float: left; margin: 0 0 20px; }
.member-section-title {
	text-transform: uppercase;
	letter-spacing: 3px;
	font-size: 12px;
	font-weight: normal; padding-top: 15px; line-height: 32px;
	border-bottom: 1px solid #eeeeee; color: #999;
}
.member-profile { 
	width: 100%; float: left; 
	margin: 10px 0;
	padding-bottom: 20px;
	border-bottom: 1px solid #CCC;
}
.member-page .member-profile {
	border-bottom: 0 none;
}
.member-page .member-role {
	display: inline;
}
.member-page h1.content-section strong {margin-right: 20px;font-weight:normal;}
.member-picture { 
	float: left; width: 110px; height: 110px;
	margin: 0 60px 0 0;
	position: relative; display: block;
}
.member-picture img { 
        border: 5px solid #EEE;
	width: 100px;
}
.member-bio {
	float: left; width: 560px; margin-left: 10px;;
}
h2.member-category {
	text-transform: uppercase;
	font-weight: normal;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 10px 0 5px;
	border-bottom: 1px solid #CCC;
	color: #777;
	float: left; width: 100%;
}
h3.member-name {
	display: inline-block;
	font-weight: normal; font-family: Georgia;
	font-size: 22px; line-height: 30px;
	color: #333; margin-bottom: 0;
        margin-right: 20px;
}
span.member-role {
	display: inline-block;
	color: #666666;
	font-family: "Lucida Sans Unicode", "Lucida Grande";
	font-size: 11px; line-height: 30px;
	letter-spacing: 1px; font-style: italic;
}
.team-cat {
        margin-bottom: 20px;
        float:left;
}
.more-info {
        border-bottom: 1px dotted #EEE;
        border-top: 1px dotted #EEE;
        padding-top: 10px;
}
/* SITE INFO */

#siteinfo {
	border-top: 1px solid #CCCCCC;
	width: 100%;
	float: left; padding: 10px 0 0;
	position: relative; margin: 50px 0 100px;
}
#siteinfo a { 
	color: #333; 
	text-decoration: none;
}
#siteinfo a:hover {
        background-color: #FFFFFF;
}
#siteinfo-map {
	float: left; margin-top: 5px;
}
#siteinfo-map img {
	border: 5px solid #E3001B;
}
#siteinfo-contact {
	float: left;
	margin: 0 0 0 20px;
}
#siteinfo-contact dt, #siteinfo-contact dd {
	font-weight: normal;
	margin: 0;
}
#siteinfo-contact dt { 
	color: #E3001B; 
	margin: 0;	
}
#siteinfo-sitemap {
	float: right; 
	font-size: 10px; line-height: 18px;
	text-transform: uppercase; letter-spacing: 1px;
}
#siteinfo-sitemap ul.tabs li { margin: 0 0 0 10px; }
#siteinfo-sitemap ul.tabs li a:hover { border-bottom: 3px solid #E3001B; }
#siteinfo-sitemap ul.tabs li a.current { border-bottom: 3px solid #E3001B; }
#siteinfo-legal {
	font-size: 10px; line-height: 10px;
	color: #999999;
	position: absolute;
	bottom: 0; right: 0;
}
/* NOTICE */
.notice {
	border-left: 2px solid #EEEEEE;
	color: #666666;
	padding: 10px;
	margin: 20px 0;
}
.member-page .notice {
	margin: 0 0 20px;
	background-color: #FFF;
	padding: 5px;
}
.notice blockquote {
	font-size: 22px;
	margin: 10px;
	line-height: 1.5em;
	font-style: italic;
}
.member-page .notice blockquote, .member-page .notice blockquote p {
	font-size: 16px;
	font-style: italic;
}
.notice blockquote p {
	display: inline;
	font-family: Georgia,serif;
	font-size: 20px;
	line-height: 1.5em;
}
.notice a {
	float: right;
	color: #E3001B;
	text-decoration: underline;
	padding: 0 2px;
	margin-top: 5px;
	padding: 2px 3px;
}
.notice a:hover {
	background-color: #E3001B;
	color: #FFFFFF;
	text-decoration: none;
}
.clear {
	clear: both;
}

.about-page li {
	margin-bottom: 20px;
}
/* SERVICES */

.services ol li ul {
	margin-top: 10px;
}
.services ol ul li {
	list-style-type: disc;
}
.services ol ul ul li {
	list-style-type: circle;
}

/* REALISATIONS */


div.realisation-list div.refe {

	margin-bottom: 19px;
        clear:both;
        border-bottom: 1px dotted #CCC;
        padding-bottom: 5px;
}
.last {
	margin-right: 0 !important;
}
h3.ref-client {
        width: 230px;
        float: left;
        margin-right: 25px;
}
h3.ref-client a {
        font-weight:normal;
        line-height:24px;
}
h3.ref-client a:hover {
        background-color:rgb(227,0,27);
        color:#FFFFFF;
}
.ref-pays, .ref-desc {float: left; width: 230px;}
.ref-pays {margin-right:25px;}
#content.realisation-page, #content.realisation-list {
	margin-top: 270px;
	padding-top: 20px;
	border-top: 1px solid #CCC;
}
.rea-image {
	float: left;
	width: 300px;
	margin-right: 40px;
}
.rea-image img {
	width: 298px;
	border: 1px solid #EEEEEE;
}
.rea-desc li {
	list-style-position: inside;
	margin-left: 10px;
}
.rea-desc .col {
	display:inline-block;
	font-size:11px;
	letter-spacing:1px;
	margin-right:10px;
	text-transform:uppercase;
	width:135px;
}
#rea-sum {
	border-bottom: 1px solid #CCC;
	padding-bottom: 20px;
	margin-bottom: 30px;
	font-family: Georgia,serif;
	font-size: 22px;
}
#rea-sum a {
	text-transform: lowercase;
}
h2.rea-cat,
.team-cat h2 {
	color:#888;
	font-size:11px;
	font-weight:normal;
	letter-spacing:2px;
	line-height:14px;
	padding-bottom:15px;
	text-transform:uppercase;
	border-bottom: 1px solid #CCC;
	margin-bottom: 15px;
}
.rea-detail {
border-bottom: 1px solid #CCC;
padding-bottom: 15px;
margin-bottom: 15px;
}
li.serv {
margin-bottom: 10px;
border-bottom: 1px dotted #CCC;
padding-bottom: 9px;
}
/* debug */
pre {
	display: block;
	position: absolute;
	z-index: 99;
	background-color: #FFFFF1;
	border-top: 1px solid #EEEEEE;
	border-bottom: 1px solid #EEEEEE;
	top: 0;
	right: 0; left: 0;
	font-family: Courier;
	font-size: 12px;
	color: #555;
	padding: 20px;
}
