html
{
}

body
{
	color: #727272;
	
	font-family: Tahoma, Verdana, Arial, sans-serif;
	font-size: 1em;
}

h1
{
	clear: both; /* due to presence of floating elements into breadcrum trail, and implementation in FF2 */
	color: #fff;
}

h2, h3, h4, h5, h6
{
	color: #000;
}

h1, h2, h3, h4, h5, h6
{
	margin-top: 40px;
	margin-bottom: 20px;
}

#contenu-principal
{
	line-height: 1.5;
}

p
{
}

ul
{
}

ul li
{
	background-image: url(/images/icons/default-unundored-list.png);
	background-position: left center;
	background-repeat: no-repeat;
	
	list-style-type: none;
	
	padding-left: 20px;
}

ol
{
	font-weight: bold;
}

ol li
{
}

ol li *
{
	font-weight: normal;
}

a,
a:link,
a:visited,
a:hover,
a:focus,
a:active
{
	color: #064a86;
}

a.external,
a.external:link,
a.external:visited,
a.external:hover,
a.external:focus,
a.external:active
{
	background-color: #dedede;
	color: #02142d;
	
	padding-left: 5px;
	padding-right: 5px;
}

a img,
a:link img,
a:visited img,
a:hover img,
a:focus img,
a:active img
{
	border-style: none;
}

a span.extendedLink
{
	height: 1px;
	
	position: absolute;
	overflow: hidden;
	
	width: 1px;
	
	top: -900%;
}

blockquote
{
	background-image: url(/images/icons/blockquote-left-quotation-mark.png);
	background-position: left top;
	background-repeat: no-repeat;
}

blockquote div.blockquoteBackground
{
	background-image: url(/images/icons/blockquote-right-quotation-mark.png);
	background-position: right bottom;
	background-repeat: no-repeat;
}

blockquote p
{
	padding-left: 60px;
}

blockquote p cite:before
{
	content: "— ";
}

q:lang(en)
{
	quotes: "“" "”" "‘" "’";
}

q:lang(fr)
{
	quotes: "«" "»" "‘" "’";
}

q
{
}

q cite:before
{
	content: "— ";
}

.screenReadersAdditionnalInformations
{
	height: 1px;
	
	position: absolute;
	overflow: hidden;
	
	width: 1px;
	
	top: -900%;
}

#quickLinkBar a,
#quickLinkBar a:link,
#quickLinkBar a:visited
{
	text-decoration: none;
}

#quickLinkBar a:hover,
#quickLinkBar a:focus,
#quickLinkBar a:active
{
	text-decoration: underline;
}

#mainNavigation li a,
#mainNavigation li a:link,
#mainNavigation li a:visited,
#mainNavigation li a:hover,
#mainNavigation li a:focus,
#mainNavigation li a:active
{
	font-family: Helvetica, Arial, sans-serif;
	font-weight: bold;
	
	text-decoration: none;
}

#backToTop
{
	background-image: url(/images/buttons/backToTop.png);
	background-position: left top; 
	background-repeat: no-repeat;
	
	color: white;
	
	display: block;
	
	font-family: "Trajan Pro", Trajan, Times, serif;
	font-size: 0.50em;
	
	height: 27px;
	line-height: 27px;
	
	margin-top: 20px;
	position: absolute;
	
	right: 40px;
	
	text-align: center;
	vertical-align: middle;
	
	width: 98px;
}

#backToTop:hover,
#backToTop:focus,
#backToTop:active
{
	background-image: url(/images/buttons/backToTop-over.png);
}

#footer
{
	font-family: Helvetica, Arial, sans-serif;
	font-size: 70%;
}

#footer h2
{
	height: 1px;
	
	position: absolute;
	overflow: hidden;
	
	width: 1px;
	
	top: -900%;
}

#footer a,
#footer a:link,
#footer a:visited,
#footer a:hover,
#footer a:focus,
#footer a:active
{
	color: #565656;
	font-family: Helvetica, Arial, sans-serif;
	
	text-decoration: none;
}

#footer a:hover,
#footer a:focus,
#footer a:active
{
	text-decoration: underline;
}

#footerLinks li
{
	background-image: none;
	display: inline;
	
	margin: 0px 0px 0px 10px;
	padding: 0px;
}

/* BEGIN: Homepage styles */
#homepage h1
{
	font-family: Cambria, Georgia, Verdana, serif;
	font-style: italic;
	
	margin: 70px 0px 0px 0px;
	padding: 0px;
}

#homepage h2
{
	color: #172031;
	
	font-family: "Trajan Pro", Trajan, Times, serif;
	font-weight: bold;
}

#homepage #mainArea h2
{
	color: #e6e5e5;
	
	display: block;
	
	margin: 20px 0px 0px 0px;
	padding: 0px;
	
	position: relative;
}

#homepage #mainArea p
{
	margin: 0px;
	padding: 0px;
}

#contactUs
{
	background-image: url(/images/buttons/contactUs.png);
	background-position: left top; 
	background-repeat: no-repeat;
	
	color: #313a49;
	
	display: block;
	
	font-family: "Trajan Pro", Trajan, Times, serif;
	font-weight: bold;
	
	height: 66px;
	
	left: 40px;
	
	margin-top: 80px;
	padding-top: 5px;
	
	position: relative;
		
	text-align: center;
	
	text-decoration: none;
	
	width: 214px;
}

#contactUs:hover,
#contactUs:focus,
#contactUs:active
{
	background-image: url(/images/buttons/contactUs-over.png);
}

#homepage #recentProjects
{
	margin: 0px;
	padding: 0px;
	
	position: relative;
}

#homepage #recentProjects li
{
	background-image: none;
	display: block;
	
	margin: 0px;
	padding: 0px;
	
	position: absolute;
}

#homepage #recentProjects li img,
#homepage #recentProjects li canvas
{
	margin: 0px;
	padding: 0px;
}

#homepage #recentProjects li.carouselItem
{
	display: block;
	
	margin: 0px;
	padding: 0px;
	
	position: absolute;
}

#homepage #recentProjects li.carouselItem img
{
	display: block;
	
	height: inherit;
	
	margin: 0px;
	padding: 0px;
	
	position: relative;
	
	width: inherit;
}

#homepage #recentProjects li.carouselItem canvas
{
	display: block;
	
	margin: 0px;
	padding: 0px;
	
	position: relative;
	
	width: inherit;
}

#homepage #recentProjectsButtonsContainer
{
	margin-top: 305px;
	
	text-align: center;
}

#homepage #recentProjectsButtonsContainer input
{
	margin-right: 20px;
}

/*
#homepage #recentProjects li.backgroundLeft
{
	left: 0px;
	top: 15px;
	width: 150px;
	z-index: 1;
}

#homepage #recentProjects li.backgroundLeft img
{
	height: 150px;
}

#homepage #recentProjects li.backgroundLeft canvas
{
	left: 0px;
	top: 165px;
	
	z-index: 1;
}

#homepage #recentProjects li.front
{
	left: 100px;
	position: relative;
	width: 234px;
	z-index: 5;
}

#homepage #recentProjects li.front canvas
{
	display: block;
}

#homepage #recentProjects li.backgroundRight
{
	right: 20px;
	top: 15px;
	width: 150px;
	z-index: 1;
}

#homepage #recentProjects li.backgroundRight img
{
	height: 150px;
}

#homepage #recentProjects li.backgroundRight canvas
{
	right: 0px;
	top: 165px;
	
	z-index: 1;
}

#homepage #recentProjects li.background
{
	display: none;
}
*/
#servicesContainer #webApplicationDevelopmentTitle
{
	background-image: url(/images/icons/services-developpement-applications-Web.png);
	background-position: left center;
	background-repeat: no-repeat;
	
	min-height: 109px;
	
	padding-left: 120px;
}

#servicesContainer #normalisationTitle
{
	background-image: url(/images/icons/services-normalisation.png);
	background-position: left center;
	background-repeat: no-repeat;
	
	min-height: 109px;
	
	padding-left: 120px;
}

#servicesContainer #accessibilityTitle
{
	background-image: url(/images/icons/services-accessibilite.png);
	background-position: left center;
	background-repeat: no-repeat;
	
	min-height: 109px;
	
	padding-left: 120px;
}

#servicesContainer p
{
	font-size: 0.8em;
	padding-left: 109px;
	padding-bottom: 20px;
}

a.moreOnServices,
a.moreOnServices:link,
a.moreOnServices:visited,
a.moreOnServices:hover,
a.moreOnServices:focus,
a.moreOnServices:active
{
	background-image: url(/images/buttons/moreOnServices.png);
	background-position: center center;
	background-repeat: no-repeat;
	
	bottom: 30px;
	
	color: #fff;
	
	display: block;
	
	height: 14px;
	
	font-family: Tahoma, Verdana, Arial, sans-serif;
	/*font-size: 0.7em;*/
	font-weight: normal;
	
	line-height: 14px;
	
	margin: 0px;
	padding: 0px;
	
	position: absolute;
	text-align: center;
	
	text-decoration: none;
	
	width: 47px;
}

a.moreOnServices:hover,
a.moreOnServices:focus,
a.moreOnServices:active
{
	background-image: url(/images/buttons/moreOnServices-over.png);
}

/* END: Homepage styles */

/* Contact form styles */
#coordonnees #contenu-principal #pageContent
{
	color: #fff;
	font-family: "Trajan Pro", Trajan, Times, serif;
	padding-left: 40px;
}

#coordonnees h1,
#coordonnees h2
{
	font-weight: bold;
	
	text-transform: capitalize;
}

#coordonnees h2 a,
#coordonnees h2 a:link,
#coordonnees h2 a:visited,
#coordonnees h2 a:hover,
#coordonnees h2 a:focus,
#coordonnees h2 a:active
{
	color: #afc1d2;
	
	font-weight: normal;
	
	text-decoration: none;
}

#coordonnees #contenu-principal .vcard .tel .type,
#coordonnees #contenu-principal .vcard .adr .type
{
	display: none;
}

#coordonnees #contenu-principal .vcard a.email,
#coordonnees #contenu-principal .vcard a.email:link,
#coordonnees #contenu-principal .vcard a.email:visited,
#coordonnees #contenu-principal .vcard a.email:hover,
#coordonnees #contenu-principal .vcard a.email:focus,
#coordonnees #contenu-principal .vcard a.email:active
{
	color: #fff;
	
	text-decoration: none;
}

#coordonnees #contenu-principal .vcard a.email:hover,
#coordonnees #contenu-principal .vcard a.email:focus,
#coordonnees #contenu-principal .vcard a.email
{
	text-decoration: underline;
}

#coordonnees #contenu-principal .vcard .phone
{
	color: #55bcf4;
	
	font-size: 2em;
	
	font-weight: bold;
}

#coordonnees #contenu-principal .vcard .tel img
{
	display: block;
	
	height: 30px;
	width: 30px;
}

#coordonnees #contenu-principal .vcard .adr
{
	margin-left: 30px;
}

#coordonnees #contenu-principal .vcard .physical
{
	display: none;
}

#coordonnees #contenu-principal .vcard .fax
{
	display: none;
}

#coordonnees #errorMessagesContainer
{
	display: none;
}

#contactForm
{
	margin-left: 50px;
}

#contactForm #fieldsContainer p
{
	color: #0d484c;
	font-size: smaller;
	
	line-height: 10px;
	
	margin: 3px 0px 0px 0px;
	padding: 0px;
}

#contactForm #fieldsContainer p img.mandatoryField
{
	display: inline;
	
	height: 10px;
	
	margin: 0px;
	padding: 0px;
	
	vertical-align: middle;
	
	width: 7px;
}

#contactForm label
{
	color: #0d484c;
}

#contactForm #txtFullName,
#contactForm #txtEmail,
#contactForm #txtWebsiteURL
{
	background-color: transparent;
	background-repeat: no-repeat;
	
	border-style: none;
	
	font-family: Helvetica, Arial, sans-serif;
	
	height: 19px; /* background-image's height - top padding - bottom padding */
	
	margin: 0px;
	padding: 4px 40px 4px 40px;
	
	width: 266px; /* background-image's width - left padding - right padding */
}

#contactForm #txtFullName:focus,
#contactForm #txtFullName:active,
#contactForm #txtEmail:focus,
#contactForm #txtEmail:active,
#contactForm #txtWebsiteURL:focus,
#contactForm #txtWebsiteURL:active
{	
	height: 17px; /* background-image's height - top padding - bottom padding */
	
	margin: 0px;
	padding: 10px 40px 10px 50px;
	
	width: 267px; /* background-image's width - left padding - right padding */
}

#contactForm #txtFullName
{
	background-image: url(/images/backgrounds/contact-form-fullName.png);
}

#contactForm #txtFullName:focus,
#contactForm #txtFullName:active
{
	background-image: url(/images/backgrounds/contact-form-fullName-over.png);
}

#contactForm #txtEmail
{
	background-image: url(/images/backgrounds/contact-form-email.png);
}

#contactForm #txtEmail:focus,
#contactForm #txtEmail:active
{
	background-image: url(/images/backgrounds/contact-form-email-over.png);
}

#contactForm #txtWebsiteURL
{
	background-image: url(/images/backgrounds/contact-form-website.png);
}

#contactForm #txtWebsiteURL:focus,
#contactForm #txtWebsiteURL:active
{
	background-image: url(/images/backgrounds/contact-form-website-over.png);
}

#contactForm #txtMessage
{
	background-color: transparent;
	background-image: url(/images/backgrounds/contact-form-message.png);
	background-repeat: no-repeat;
	
	border-style: none;
	
	font-family: Helvetica, Arial, sans-serif;
	
	height: 125px; /* background-image's height - top padding - bottom padding */
	
	margin: 0px;
	
	overflow: auto;
	
	padding: 4px 10px 4px 10px;
	
	width: 326px; /* background-image's width - left padding - right padding */
}

#contactForm #txtMessage:focus,
#contactForm #txtMessage:active
{
	background-image: url(/images/backgrounds/contact-form-message-over.png);
	
	height: 126px; /* background-image's height - top padding - bottom padding */
	
	margin: 0px;
	padding: 10px;
	
	width: 337px; /* background-image's width - left padding - right padding */
}

#contactForm .helpLink,
#contactForm .helpLink:link,
#contactForm .helpLink:visited,
#contactForm .helpLink:hover,
#contactForm .helpLink:focus,
#contactForm .helpLink:active
{
	background-image: url(/images/buttons/formHelp.png);
	background-repeat: no-repeat;
	
	color: #065449;
	
	display: inline-block;
	
	font-family: Tahoma, Verdana, Arial, sans-serif;
	
	height: 15px;
	line-height: 15px;
	
	text-align: center;
	text-decoration: none;
	
	width: 38px;
}

#contactForm .helpBoxContainer {
	margin: 0px auto;
	
	position: absolute;
	
	right: 0px;
	
	width: 260px;
}

#contactForm .helpBoxContainer .helpTitle {
	background-image: url(/images/backgrounds/contact-form-helpPopup-borderTopLeft.png);
	background-position: left top;
	background-repeat: no-repeat;
	
	display: inherit;
	
	margin: 0px;
}

#contactForm .helpBoxContainer .helpTitle span {
	background-image: url(/images/backgrounds/contact-form-helpPopup.png);
	background-position: right top;
	background-repeat: no-repeat;
	
	display: inherit;
	
	margin-left: 11px;
	padding: 4px 11px 1px 0px;
}

#contactForm .helpBoxContainer .helpContentContainer {
	background-image: url(/images/backgrounds/contact-form-helpPopup-borderBottomLeft.png);
	background-position: left bottom;
	background-repeat: no-repeat;
	
	display: inherit;
	
	margin: 0px;
	padding: 0px;
}

#contactForm .helpBoxContainer .helpContentContainer .helpContent {
	background-image: url(/images/backgrounds/contact-form-helpPopup.png);
	background-position: right bottom;
	background-repeat: no-repeat;
	
	display: inherit;
	
	margin: 0px;
	padding: 0px;
	
	margin-left: 11px;
	padding: 1px 11px 12px 0px;
}

#contactForm #submitButton
{
	background-color: transparent;
	background-image: url(/images/buttons/formSubmit.png);
	background-repeat: no-repeat;
	
	border-style: none;
	
	color: #0e6d60;
	
	display: block;
	
	height: 22px;
	
	margin-top: 5px;
	
	right: 30px;
	
	position: absolute;
	
	width: 65px;
}

#coordonnees h2.error
{
	color: #c41c1c;
	display: block;
	
	margin: 0px;
	padding: 0px;
	
	font-size: inherit;
}

#coordonnees img.mandatoryField
{
	display: block;
	
	height: 21px;
	
	width: 15px;
}

#coordonnees label img.mandatoryField
{
	float: left;
	
	margin: 25px 0px 0px -21px;
} 

/* end contactForm styles */


/* services styles */
.serviceDescription
{
	padding-left: 125px;
}

#services #developpement-applications-internet
{
	background-image: url(/images/icons/services-developpement-applications-Web.png);
	background-position: left top;
	background-repeat: no-repeat;
	
	line-height: 125px;
	
	margin-left: -125px;
	padding-left: 130px;
}

#services #normalisation
{
	background-image: url(/images/icons/services-normalisation.png);
	background-position: left top;
	background-repeat: no-repeat;
	
	line-height: 125px;
	
	margin-left: -125px;
	padding-left: 130px;
}

#services #accessibilite
{
	background-image: url(/images/icons/services-accessibilite.png);
	background-position: left top;
	background-repeat: no-repeat;
	
	line-height: 125px;
	
	margin-left: -125px;
	padding-left: 130px;
}

#webApplicationDevelopment h1
{
	background-image: url(/images/icons/services-developpement-applications-Web.png);
	background-position: left center;
	background-repeat: no-repeat;
	
	padding-left: 120px;
}

#normalisation h1
{
	background-image: url(/images/icons/services-normalisation.png);
	background-position: left top;
	background-repeat: no-repeat;
	
	line-height: 109px;
	
	padding-left: 120px;
}
/* end services styles */

/* clients and projects styles */
#realisations .client
{
	background-image: url(/images/backgrounds/realisation-container.jpg);
	background-position: center bottom;
	background-repeat: no-repeat;
	
	font-family: Helvetica, Arial, sans-serif;
	
	padding-bottom: 30px;
	
	position: relative;
	
	width: 100%;
}

#realisations .client .clientLogo
{
	clear: right;
	float: left;
	
	width: 150px;
}

#realisations .client h2,
#realisations .client h3
{
	color: #464545;
	padding-left: 180px;
}

#realisations .client .name
{
}

#realisations .client .projectType
{
	color: #397bab;
}

#realisations .client .description
{
	color: #8a8a8a;
	padding-left: 180px;
}
/* end clients and projects styles */

/* 404 styles */
#error404 #mainArea h1
{
	font-family: Cambria, Georgia, Verdana, serif;
	font-style: italic;
	
	margin: 70px 0px 0px 0px;
	padding: 0px;
}

#error404 #mainArea h2
{
	/*color: #172031;*/
	color: #e6e5e5;
	
	font-family: "Trajan Pro", Trajan, Times, serif;
	font-weight: bold;
}

#error404 #mainArea p
{
	margin: 0px;
	padding: 0px;
}
/* end of 404 styles */

#glossary #letterSelector
{
	background-image: url(/images/backgrounds/glossary-letterSelector.png);
	background-repeat: no-repeat;
	
	display: block;
	
	height: 532px;
	
	left: 40px;
	
	list-style: none;
	list-style-image: none;
	
	margin: 10px 0px 0px 0px;
	padding: 0px;
	
	position: absolute;
	
	text-align: center;
	
	width: 40px;
	
	z-index: 900;
}

#glossary #letterSelector li
{
	background-image: none;
	
	display: block;
	
	height: 1.2em;
	
	margin: 0px;
	padding: 0px;
	
	text-transform: uppercase;
}

#glossary #letterSelector li a
{
	color: #fff;
	
	display: block;
	
	font-family: Helvetica, Arial, sans-serif;
	font-size: 1em;
	font-weight: bold;
	
	height: 1.2em;
	
	margin: 0px;
	padding: 0px;
	
	width: 40px;
	
	text-decoration: none;
	text-transform: uppercase;
}

#glossary #letterSelector li a:hover,
#glossary #letterSelector li a:focus,
#glossary #letterSelector li a:active
{
	text-decoration: underline;
}

#glossary #glossaryContainer h2
{
	display: block;
	
	float: left;
	
	font-family: Cambria, Georgia, Verdana, serif;
	font-size: 3em;
	
	margin-top: 0px;
	
	text-align: left;
	text-transform: uppercase;
}

#glossary #glossaryContainer dl
{
	margin: 0px 0px 60px 60px;
}

#glossary #glossaryContainer dl dt
{
	color: #000;
	font-family: Helvetica, Arial, sans-serif;
	font-weight: bold;
}

#glossary #glossaryContainer dl dd
{
	border-bottom-color: #9f9797;
	border-bottom-style: dashed;
	border-bottom-width: 1px;
	
	color: #171717;
	
	margin-bottom: 2em;
}

#externalLinks p
{
	color: #000;
}

#externalLinks #letterSelector
{
	background-image: url(/images/backgrounds/glossary-letterSelector.png);
	background-repeat: no-repeat;
	
	display: block;
	
	height: 532px;
	
	left: 40px;
	
	list-style: none;
	list-style-image: none;
	
	margin: 10px 0px 0px 0px;
	padding: 0px;
	
	position: absolute;
	
	text-align: center;
	
	width: 40px;
	
	z-index: 900;
}

#externalLinks #letterSelector li
{
	background-image: none;
	
	display: block;
	
	height: 1.2em;
	
	margin: 0px;
	padding: 0px;
	
	text-transform: uppercase;
}

#externalLinks #letterSelector li a
{
	color: #fff;
	
	display: block;
	
	font-family: Helvetica, Arial, sans-serif;
	font-size: 1em;
	font-weight: bold;
	
	height: 1.2em;
	
	margin: 0px;
	padding: 0px;
	
	width: 40px;
	
	text-decoration: none;
	text-transform: uppercase;
}

#externalLinks #letterSelector li a:hover,
#externalLinks #letterSelector li a:focus,
#externalLinks #letterSelector li a:active
{
	text-decoration: underline;
}

#externalLinks #linkContainer h2
{
	display: block;
	
	float: left;
	
	font-family: Cambria, Georgia, Verdana, serif;
	font-size: 3em;
	
	margin-top: 0px;
	
	text-align: left;
	text-transform: uppercase;
}

#externalLinks #linkContainer dl
{
	margin: 0px 0px 60px 60px;
}

#externalLinks #linkContainer dl dt
{
	color: #000;
	font-family: Helvetica, Arial, sans-serif;
	font-weight: bold;
}

#externalLinks #linkContainer dl dd
{
	border-bottom-color: #9f9797;
	border-bottom-style: dashed;
	border-bottom-width: 1px;
	
	color: #171717;
	
	margin-bottom: 2em;
}