@charset "utf-8";
/* CSS Document */

body{
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
	margin:0;
	text-align:justify;
	background-image:url(img/bg.jpg);
}

img{
	border:0;
}

header{
	height:167px;
	width:100%;
	background-image:url(img/fond-header.jpg);
	background-repeat:repeat-x;
}

.center{
	text-align:center;
}


/* ------ Menu ------ */
.li-rea:hover{ 

	background-color:#65bad9; 
}


nav{
	margin-top:20px;
	position:relative;
	z-index:99;
}
 
nav #menu a {
	display:block;
	color: #fff;
	text-decoration:none;
	font-size:15px;
	font-weight:bold;
}

nav #menu > li{
	position: relative;
	display:inline-block;
	padding: 18px 27px;
	background-image:url(img/fond-onglet.jpg);
	background-repeat:repeat-x;
	height:47px;
}
nav #menu > li li {
	position: relative;
	display:inline-block;
	padding: 13px 27px;
	/*background-image:url(img/fond-onglet.jpg);
	background-repeat:repeat-x;*/
	background-color:#121212;	
	height:47px;
}


nav #menu li a{
	margin-top:-5px;

}

nav #menu > li li { width:270px;  border-bottom:#373737 1px solid;border-top:#000000 1px solid; height:47px;	 }
nav #menu > li li a { color: #FFF; }
nav #menu > li li:hover { background:#CCC; width:270px;color: #444; }
#menu > li:first-child {
	padding-top:10px;
	/*border-right: 1px solid #777;
	border-radius: 8px 0 0 8px;*/
}
nav #menu > li {
	border-left: 1px solid #444444;
	margin-right:-3px;

}

nav #menu > li:last-child {
	/*border-right:0;
	border-left: 1px solid #aaa;
	border-radius: 0 8px 8px 0 ;*/
}
nav #menu > li:hover {
	background-image:url(img/fond-onglet-hover.jpg);
	background-repeat:repeat-x;
	height:47px;
}
/* (presque) fin de la partie positionnement/déco */
/* dans cette déclaration, on fixe le max-height */
nav #menu ul {
	position: absolute;
	top: 47px; left:0;
	max-height:0em;
	margin:0; padding:0;
	overflow:hidden;
	transition: 1.5s max-height 0s;
	width:270px;
	/*border-radius: 0 0 8px 8px;*/
}
/* ici on change la valeur de max-height au :hover */
nav #menu > li:hover ul {
	/* need an adaptation, lower is better, but see it large   */
	max-height:40em;
}


/* barre */
nav ul li:nth-child(1) a{width:34px;} 
nav ul li:nth-child(2) a{width:125px;} 
nav ul li:nth-child(3) a{width:120px;} 
nav ul li:nth-child(4) a{width:40px;} 
nav ul li:nth-child(5) a{width:115px;}

nav ul li a{
	display:inline-block; 
	box-sizing:border-box; 

	color:#51C3FA; 
	text-decoration:none; 
	background-color:transparent; 
	transition:background-color .3s ease;
}

/*ul li a:hover,ul li a:focus{
	color:#c351fa; 
	background-color:rgba(255,255,255,.4); 
	transition:background-color .3s ease .4s; 
} 

ul li a:focus{
	border-bottom:3px solid #c351fa; 
} */

nav ul li:last-child::after{ 
	content:""; 
	position:absolute; 
	margin-left:-566px; 
	bottom:0px; 
	display:block; 
	width:88px; 
	height:5px; 
	background:#65bad9; 
	transition: all .5s ease; 
}

/* ul li:hover ~ li:last-child::after, ul li:lastchild:hover::after{background:#C351FA;} */

nav ul li:nth-child(1):hover ~ li:last-child::after{margin-left:-566px;width:88px;} 
nav ul li:nth-child(2):hover ~ li:last-child::after{margin-left:-478px;width:180px;} 
nav ul li:nth-child(3):hover ~ li:last-child::after{margin-left:-298px;width:174px;}
nav ul li:nth-child(4):hover ~ li:last-child::after{margin-left:-123px;width:94px;}
nav ul li:last-child:hover::after{margin-left:-28px;width:170px;}








/* Fin barre */


/* ------ Fin menu ------ */

section{
	width:330px;
	float:left;
	text-align:justify;
	height:363px;
}

.titre-section{
	color:#60bee6;
	font-size:20px;
	text-align:center;
	font-weight:bold;
}

.texte-section{
	margin: 10px 40px 20px 40px;
	color:#6f6f6f;
	height:80px;
}

.titre-accueil{
	color:#60bee6;
	font-size:20px;
	font-weight:bold;
	margin-left:40px;
	margin-top:40px;
	text-align:left;	
}

.titre-accueil a{
	color:#60bee6;
	font-size:20px;
	font-weight:bold;
	text-decoration:none;
}

.titre-accueil a:hover{
	color:#60bee6;
	font-size:20px;
	font-weight:bold;
	text-decoration:underline;
}

.texte-accueil{
	margin: 10px 40px 0 40px;
	color:#6f6f6f;
	padding-bottom:20px;
}

.texte-page-realisation{
	margin-left:50px;
	margin-right:50px;
	color:#6f6f6f;
}

.page{
	width:990px;
	margin:auto;
	background-color:#FFF;
}

h1{
	color:#313131;
	margin-left:50px;
	padding-top:30px;
}

.fil{
	font-size:10px;	
	color:#6F6F6F;
	margin-left:50px;
	margin-bottom:15px;
}

.fil a{
	color:#6F6F6F;
}

.fil a:active{
	color:#6F6F6F;
}


.texte-page{
	color:#313131;
	padding-left:50px;
	padding-right:50px;
	padding-bottom:20px;
}

.texte-page a{
	color:#60BEE6;
}

.texte-accueil a{
	color:#60BEE6;
}

.pack-decouverte{
	background-image:url(img/fond-pack-decouverte.jpg);
	background-repeat:no-repeat;
	padding-left:300px;
	padding-right:50px;
	height:240px;
	color:#313131;
}

.titre-decouverte{
	color:#60bee6;
	font-size:20px;
	font-weight:bold;
	padding-top:20px;
}

.pack-avance{
	background-image:url(img/fond-pack-avance.jpg);
	background-repeat:no-repeat;
	padding-left:300px;
	padding-right:50px;
	height:297px;
	color:#313131;
}

.titre-avance{
	color:#f2be5e;
	font-size:20px;
	font-weight:bold;
	padding-top:20px;
}

.pack-dynamique{
	background-image:url(img/fond-pack-dynamique.jpg);
	background-repeat:no-repeat;
	padding-left:300px;
	padding-right:50px;
	height:344px;
	color:#313131;
}

.titre-dynamique{
	color:#dc0000;
	font-size:20px;
	font-weight:bold;
	padding-top:20px;
}

.pack-e-commerce{
	background-image:url(img/fond-pack-e-commerce.jpg);
	background-repeat:no-repeat;
	padding-left:300px;
	padding-right:50px;
	height:357px;
	color:#313131;
}

.titre-e-commerce{
	color:#00b300;
	font-size:20px;
	font-weight:bold;
	padding-top:20px;
}

.hebergement{
	background-image:url(img/fond-hebergement.jpg);
	background-repeat:no-repeat;
	padding-left:300px;
	padding-right:50px;
	height:167px;
	color:#313131;
}

.google-analytics{
	background-image:url(img/fond-google-analytics.jpg);
	background-repeat:no-repeat;
	padding-left:300px;
	padding-right:50px;
	height:150px;
	color:#313131;
}

.communication{
	background-image:url(img/fond-communication.jpg);
	background-repeat:no-repeat;
	padding-left:300px;
	padding-right:50px;
	height:175px;
	color:#313131;
}


.titre-service-completementaire{
	color:#313131;
	font-size:20px;
	font-weight:bold;
	padding-top:20px;
}

footer{
	height:267px;
	width:100%;
	float:left;
	background-image:url(img/fond-footer.jpg);
	background-repeat:repeat-x;
	color:#FFF;
}

.conteneur-module-footer{
	width:990px; 
	height:212px;
}

input { 
	background-color:#d5ebf5;
	border:none;
	height:30px;
}

textarea { 
	background-color:#d5ebf5;
	border:none;
}

.formulaire-contact{
	color:#313131;
	font-weight:bold;
	font-size:16px;
}

.asterisque{
	color:#66bade;
	font-weight:bold;
	font-size:16px;
}

/* Portfolio */

*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

.container {
	width: 100%;
	position: relative;
}

.container > header {
	width: 90%;
	max-width: 1240px;
	margin: 0 auto;
	position: relative;
	padding: 0 30px 50px 30px;
}

.container > header {
	padding: 60px 30px 50px;
	text-align: center;
}

.container > header h1 {
	font-size: 34px;
	line-height: 38px;
	margin: 0 auto;
	font-weight: 700;
	color: #333;
}

.container > header h1 span {
	display: block;
	font-size: 20px;
	font-weight: 300;
}

.main > p {
	text-align: center;
	padding: 50px 20px;
}

/* Header */
.imaginative-top {
	line-height: 24px;
	font-size: 11px;
	background: #fff;
	background: rgba(255, 255, 255, 0.5);
	text-transform: uppercase;
	z-index: 9999;
	position: relative;
	box-shadow: 1px 0px 2px rgba(0,0,0,0.2);
}

.imaginative-top a {
	padding: 0px 10px;
	letter-spacing: 1px;
	color: #333;
	display: inline-block;
}

.imaginative-top a:hover {
	background: rgba(255,255,255,0.8);
	color: #000;
}

.imaginative-top span.right {
	float: right;
}

.imaginative-top span.right a {
	float: left;
	display: block;
}

.contenu {margin: 0; padding: 0; width:960px; margin:0 auto;}

.og-grid {
	list-style: none;
	padding: 20px 0;
	margin: 0 auto;
	text-align: center;
	width: 100%;
}

.og-grid li {
	display: inline-block;
	margin: 10px 5px 0 5px;
	vertical-align: top;
	height: 250px;
}

.og-grid li > a,
.og-grid li > a img {
	border: none;
	outline: none;
	display: block;
	position: relative;
}

.og-grid li.og-expanded > a::after {
	top: auto;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-bottom-color: #ddd;
	border-width: 15px;
	left: 50%;
	margin: -20px 0 0 -15px;
}

.og-expander {
	position: absolute;
	background: #fff;
	background-image:url(img/fond-descriptif-portfolio.jpg);
	background-repeat:repeat-x;
	background-position:top;
	top: auto;
	left: 0;
	width: 100%;
	margin-top: 10px;
	text-align: left;
	height: 0;
	overflow: hidden;
}

.og-expander-inner {
	padding: 50px 30px;
	height: 100%;
}

.og-close {
	position: absolute;
	width: 40px;
	height: 40px;
	top: 20px;
	right: 20px;
	cursor: pointer;
	background-image:url(img/bouton-ferme.jpg);
	background-repeat:no-repeat;	
}

.og-close::before,
.og-close::after {
	content: '';
	position: absolute;
	width: 100%;
	top: 50%;
/*	height: 1px;
	background: #888;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);*/
}

.og-close::after {
/*	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);*/
}

.og-close:hover::before,
.og-close:hover::after {
	background: #333;
}

.og-fullimg,
.og-details {
	width: 50%;
	float: left;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.og-details {
	padding: 0 40px 0 20px;
}

.og-fullimg {
	text-align: center;
}

.og-fullimg img {
	display: inline-block;
	max-height: 100%;
	max-width: 100%;
}

.og-details h3 {
	font-weight: 300;
	font-size: 35px;
	padding: 0 0 10px;
	margin-bottom: 10px;
	color:#60bee6;
}

.og-details p {
	font-weight: 400;
	font-size: 12px;
	/*line-height: 22px;*/
	color: #6f6f6f;
}

.og-details a {
	/*font-weight: 700;
	font-size: 16px;
	color: #333;
	text-transform: uppercase;
	letter-spacing: 2px;
	padding: 10px 20px;
	border: 3px solid #333;
	display: inline-block;
	margin: 30px 0 0;
	outline: none;*/
}

.og-details-btn{
	margin-left:290px;
}

.og-details a::before {
	/*content: '\2192';*/
	display: inline-block;
	margin-right: 10px;
}

.og-details a:hover {
	border-color: #999;
	color: #999;
}

.og-loading {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #ddd;
	box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ccc;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -25px 0 0 -25px;
	-webkit-animation: loader 0.5s infinite ease-in-out both;
	-moz-animation: loader 0.5s infinite ease-in-out both;
	animation: loader 0.5s infinite ease-in-out both;
}

@-webkit-keyframes loader {
	0% { background: #ddd; }
	33% { background: #ccc; box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ddd; }
	66% { background: #ccc; box-shadow: 0 0 1px #ccc, 15px 30px 1px #ddd, -15px 30px 1px #ccc; }
}

@-moz-keyframes loader {
	0% { background: #ddd; }
	33% { background: #ccc; box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ddd; }
	66% { background: #ccc; box-shadow: 0 0 1px #ccc, 15px 30px 1px #ddd, -15px 30px 1px #ccc; }
}

@keyframes loader {
	0% { background: #ddd; }
	33% { background: #ccc; box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ddd; }
	66% { background: #ccc; box-shadow: 0 0 1px #ccc, 15px 30px 1px #ddd, -15px 30px 1px #ccc; }
}

@media screen and (max-width: 830px) {

	.og-expander h3 { font-size: 32px; }
	.og-expander p { font-size: 13px; }
	.og-expander a { font-size: 12px; }

}

@media screen and (max-width: 650px) {

	.og-fullimg { display: none; }
	.og-details { float: none; width: 100%; }
	
}

/* Nos réalisations */ 

.nos-realisations-pack{
	margin-top:15px;
	margin-left:100px;
	height:273px;
	width:750px;
	/*background-image:url(images/fond-realisation.jpg);
	background-repeat:no-repeat;
	background-position:bottom;*/
}

.visuel-pack{
	margin-left:40px;
	margin-right:40px;	
}

.btn-voirplus{
	float:right;
	margin-top:15px;
}

.apercu-visuel-site{
	border:2px solid #FFFFFF;
	margin-left:10px;
}

.apercu-module{
	float:left; 
	margin-left:-10px;
}

footer .apercu-module{
	float:left; 
	margin-left:30px;
}

.lien-footer{
	width:495px; 
	float:left;	
	text-align:left; 
	margin-left:40px; 
	margin-top:-5px	
}

.lien-footer-copyright{
	margin-top:15px;
	text-align:left;
}

footer a{
	color:#FFF;	
}

.module-footer{
	width:330px; 
	height:100px;
	float:left; 
	margin-top:10px;
}

.bordure-footer{
	width:250px; 
	height:2px; 
	background-image:url(img/bordure.gif);
	margin-left:40px;
}

.qui-sommes-nous{
	width:900px;
}

.qui-sommes-nous img{
	margin-left:30px;
	margin-right:30px;
}

.texte-module-footer{
	text-align:left;
	margin-left:40px;	
}

.texte-module-footer a{
	text-decoration:none;	
}

.texte-module-footer a:hover{
	text-decoration:underline;
	color:#60BEE6;	
}

.footer-center{
	width:990px;
	margin:auto;
}


.imp{
	color:#60BEE6;
	font-weight:bold;
}

.coordonnees{
    background-color: #EDEDED;
    height: 385px;
    margin-left: 45px;
    margin-top: 20px;
    padding: 16px;
    width: 250px;
}