@import url('https://fonts.googleapis.com/css?family=Montserrat|Raleway');

* {
margin:0;
}

html {
    overflow-y: scroll;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

html,body {
    height: 100%;
    line-height: 1;
}

@font-face {
  font-family: 'Klavika';
  src: url('font/Klavika-Regular.eot'); /* IE9 Compat Modes */
  src: url('font/Klavika-Regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('font/Klavika-Regular.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('font/Klavika-Regular.svg#svgFontName') format('svg'); /* Legacy iOS */
}

body, html {
    font-family: "Klavika","Open Sans",sans-serif !important;
}

h1,h2,h3,h4,h5,h6 {
    clear: both;
    font-weight: normal;
}

a img {
    border: none;
}

a,input {
    outline: 0 none;
}

::selection {
    color: #fff;
    background: #f00;
}

::-moz-selection {
    color: #fff;
    background: #f00;
}

.left {
    float: left;
}
.right {
    float: right;
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    min-width: 0;
    display: block;
    clear: both;
}
* html .clearfix {
    height: 1%;
}

.alignleft,img.alignleft {
    display: inline;
    float: left;
    margin-right: 24px;
    margin-top: 4px;
}
.alignright,img.alignright {
    display: inline;
    float: right;
    margin-left: 24px;
    margin-top: 4px;
}
.aligncenter,img.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
img.alignleft,img.alignright,img.aligncenter {
    margin-bottom: 12px;
}

.page-template-page-index-php {
    overflow: hidden;
/*    background: #1e1e1e;*/
      /*background: #5f5f5f;*/
      background: #1c1c1e;
}

#index a {
    position: absolute;
    top: 0;
    bottom: 0;
    /*width: 50.1%;*/
    width: 50%;
    overflow: hidden;
}
#index a img {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
}
#index a .logo-out {
    display: none;
}
#index a span {
    display: none;
    /*background: #EBEBEB;*/
    /*background: #999;*/
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}
#index a:before {
    content: '';
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    -webkit-transition: -webkit-transform 5s ease-out;
    -ms-transition: -ms-transform 5s ease-out;
    transition: transform 5s ease-out;
opacity: 0.7;
}
#index a:after {
    opacity: 0;
    content: '';
    /*background: #EBEBEB url('../images/logohalfscreen.png') center center repeat;*/
    /*background: url('../images/logohalfscreen3.png') center center repeat;*/
    background-size: cover;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    -webkit-transition: -webkit-transform 5s ease-out;
    -ms-transition: -ms-transform 5s ease-out;
    transition: transform 5s ease-out;
}
#index a.over:before {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}
#index a.out:after {
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
}
#index a.out .logo-out {
    display: block;
}
#index a.out .logo-over {
    display: none;
}
#index a.out:after {
    opacity: 1;
}
#index a.out span {
    display: block;
}
#index a.ict {
    left: 0;
}
#index a.ict:before {
    /*background-image: url('../images/bg_ictdk.jpg')*/
	/*background: #333;*/
}
/*
#index .vidmask:after {
    background: #333;
    background-size: cover;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}*/

#repairvid {
opacity: 0.5;
}

#index a.ict img {
    /*margin: -78px 0 0 -84px;*/
    margin: -78px 0 0 -150px;
}
#index a.web {
    right: 0;
}
#index a.web:before {
    /*background-image: url('../images/bg_webdk.jpg')*/
	/*background: #333;*/
}
#webvid {
opacity: 0.5;
}


#index a.web img {
    /*margin: -76px 0 0 -84px;*/
    margin: -76px 0 0 -150px;
}

#index a.out:before {
    background-image: none;
}

canvas {
  display: block;
  vertical-align: bottom;
}

#particles-js{
  width: 100%;
  height: 100%;
  /*background-color: #999;*/
  background-image: url('');
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

/*
#homepagetext {
  display: block;
  position: absolute;
  top: 15%;
  left: 0;
  text-align: center;
}*/
#homepagetext h2 {
display: block;
position: absolute;
color: #fff;
font-size: 60px;
z-index: 9999;
text-transform: uppercase;
left: 41%;
top: 15%;
}

.ictleft, .webright, .centeramp{
text-decoration: none;
text-transform: uppercase;
color: #fff;
font-size: 72px;
}

.centeramp {
position: absolute;
display: block;
width: 10%;
text-align: center;
left: 45.1%;
height: 20%;
top: 40%;
margin: 0;
/*color: #A90407;*/
color: #fff;
/*font-size: 92px;*/
/*font-size: 100px;*/
font-size: 72px;
}

.ictleft {
position: absolute;
top: 1%;
right: 53%;
}

.webright {
position: absolute;
top: 1%;
left: 53%;
}




#header {
/*    background-color: rgba(0, 0, 0, 0.5);
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);*/
    height: 70px;
    left: 0;
    min-width: 850px;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99;
}
#header .logo {
    float: left;
    padding: 0 0 0 50px;
}

#header .logo img:first-child {
    padding-top: 10px;
}
.sloganlogo {
    float: left;
}
img {
    border: 0 none;
}
.sloganlogo.texte {
    padding: 30px 0 0 30px;
}
#header .headerContRight {
    float: right;
}
ul {
    list-style-type: none;
    padding: 0;
}
#header .headerContRight > li.first {
    padding: 0;
    width: 104px;
}
#header .headerContRight .first {
    text-align: center;
    text-transform: uppercase;
}
#header .headerContRight > li {
    /*border-left: 1px solid rgba(255, 255, 255, 0.5);*/
    border-left: 1px solid rgba(0, 0, 0, 0.5);
    float: left;
    font-size: 14px;
    height: 100%;
    padding: 0;
    /*line-height: 68px;*/
    line-height: 70px;
}

#header .headerContRight .search {
    text-align: center;
    text-transform: uppercase;
    width: 166px;
}
#header .headerContRight .search > a {
    background: rgba(0, 0, 0, 0) url("../images/ico-recherche.png") no-repeat scroll left center;
    display: inline-block;
    font-size: 13px;
    line-height: 68px;
    padding: 2px 0 0 25px;
}

a:focus, a:visited, a:link {
    color: #ffffff;
    outline: medium none;
    text-decoration: none;
}

.hidden.ict{
position: absolute;
/*left: 10%;*/
/*top:10%;*/
left: 0;
/*top: 71px;*/
bottom: 0;
background: rgba(0, 0, 0, 0.5);
/*background: #1c1c1e;*/
overflow: hidden;
}
.hidden.web{
position: absolute;
/*left: 10%;*/
/*top:10%;*/
right: 0;
/*top: 71px;*/
bottom: 0;
background: rgba(0, 0, 0, 0.5);
/*background: #1c1c1e;*/
overflow: hidden;
}

.services {
padding: 25px;
font-size: 24px;
/*line-height: 34px;*/
/*text-align: center;*/
}

.services ul li {
bottom: 15px;
position: absolute;
display: inline-block;
white-space: nowrap;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 0% 100%;
    -moz-transform-origin: 0% 100%;
    -o-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
}

/*
.hidden.ict {
height: 150px;
width: 0;
border: 0;
       -webkit-transition:height, 0.5s linear;
    -moz-transition: height, 0.5s linear;
    -ms-transition: height, 0.5s linear;
    -o-transition: height, 0.5s linear;
    transition: height, 0.5s linear;
}
    .hidden.ict.open {
	width: 100%;
border-top: 1px solid rgba(255, 255, 255, 0.5);
     -webkit-transition:height, 0.5s linear;
    -moz-transition: height, 0.5s linear;
    -ms-transition: height, 0.5s linear;
    -o-transition: height, 0.5s linear;
    transition: height, 0.5s linear;
    }
*/

.hidden {
    height:0px;
/*height: 150px;*/
width: 100%;
border: 0;
       -webkit-transition:height, 0.5s linear;
    -moz-transition: height, 0.5s linear;
    -ms-transition: height, 0.5s linear;
    -o-transition: height, 0.5s linear;
    transition: height, 0.5s linear;
}
    .hidden.open {
        height:180px;
	/*width: 100%;*/
	/*border: 1px solid #ccc;*/
/*border-bottom: 1px solid rgba(255, 255, 255, 0.5);*/
border-top: 1px solid rgba(255, 255, 255, 0.5);
     -webkit-transition:height, 0.5s linear;
    -moz-transition: height, 0.5s linear;
    -ms-transition: height, 0.5s linear;
    -o-transition: height, 0.5s linear;
    transition: height, 0.5s linear;
    }

a.notransparency::before {
/*opacity: 1 !important;*/
}

/*.mask.webmask {
display: block;
position: absolute;
top: 0;
bottom:0;
background-image: url('../images/bg_webdk.jpg');
width: 100%;
height:100%;
background-size: cover;
opacity: 0.7;
}

.mask.ictmask {
display: block;
position: absolute;
top: 0;
bottom:0;
background-image: url('../images/bg_ictdk.jpg');
width: 100%;
height:100%;
background-size: cover;
opacity: 0.7;
}*/

.mask.lightmask {
    display: block;
    position: absolute;
    top: 0;
    bottom:0;
    background: #fff;
    width: 100%;
    height:100%;
    background-size: cover;
/*    transition: all 0.5 linear;
    -moz-transition: all 0.5 linear;
    -o-transition: all 0.5 linear;
    -webkit-transition: all 0.5 linear;
    -ms-transition: all 0.5 linear;*/
}

.mask.darkmask {
    display: block;
    position: absolute;
    top: 0;
    bottom:0;
    background: #1c1c1e;
    width: 100%;
    height:100%;
    background-size: cover;
/*    transition: all 0.5 linear;
    -moz-transition: all 0.5 linear;
    -o-transition: all 0.5 linear;
    -webkit-transition: all 0.5 linear;
    -ms-transition: all 0.5 linear;*/
}

.mask.hidemask {
display: none !important;
}

.headerleft, .headerright {
    display: block;
    float: left;
    width: 50%;
    height: 70px;
}
.headerleft {
    background: #1c1c1e;
}
.headerright {
    background: #fff;
}
.headerright a, .headerright a:focus, .headerright a:visited, .headerright a:link {
    color: #1c1c1e;
}
#header {
box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

.nav,
.nav a,
.nav ul,
.nav li,
.nav div,
.nav form,
.nav input {
    margin: 0;
    padding: 0;
    border: none;
    outline: none;
}
 
.nav a { text-decoration: none; }
 
.nav li, .nav li a {
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -o-transition: all .3s ease;
    -ms-transition: all .3s ease;
    transition: all .3s ease;
}

.nav > li:hover { background: #1c1c1e; }
.nav > li:hover > a { color: #fff; }

.nav > li > div {
    position: absolute;
    display: block;
    width: 50%;
    top: 70px;
    left: 50%;
 
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
 
    /*background: #ffffff;*/
    background: #a90407;
    border-radius: 0 0 3px 3px;
 
    -webkit-transition: all .3s ease .15s;
    -moz-transition: all .3s ease .15s;
    -o-transition: all .3s ease .15s;
    -ms-transition: all .3s ease .15s;
    transition: all .3s ease .15s;
}

.nav > li:hover > div {
    opacity: 1;
    visibility: visible;
    overflow: visible;
    padding-left: 2.5%;
}

.nav .nav-column {
    float: left;
    width: 26.66%;
    padding: 2.5%;
    text-align: left;
}
 
.nav .nav-column h3 {
    margin: 20px 0 10px 0;
    line-height: 18px;
    /*font-weight: bold;*/
    font-size: 15px;
    color: #fff;
    font-family: "Montserrat";
}
.nav .nav-column h4 {
    margin: 20px 0 10px 0;
    line-height: 18px;
    /*font-weight: bold;*/
    font-size: 12px;
    color: #fff;
    font-family: "Montserrat";
}


/*.nav .nav-column h3.orange { color: #ff722b; }*/
 
.nav .nav-column li a {
    display: block;
    line-height: 26px;
    text-transform: none;
 
    /*font-family: Helvetica, Arial, sans-serif;*/
    /*font-weight: bold;*/
    font-size: 14px;
    color: #fff;
    font-family: "Raleway";
}

.nav .nav-column li {
    display: block;
    line-height: 18px;
    text-transform: none;
    font-size: 13px;
    color: #fff;
    font-family: "Raleway";
}

.nav .nav-column table {
    display: block;
    line-height: 18px;
    text-transform: none;
    font-size: 13px;
    color: #fff;
    font-family: "Raleway";
}
 
.nav .nav-column li a:hover { color: #d8d8d8; }

.slidingcontainer {
    position: absolute;
    top: 50%;
    z-index: 1;
    text-align: center;
    width: 100%;
}

.slidingcontainer div {
    display: block;
font-family: "Raleway",Arial,Helvetica,sans-serif;
font-size: 12px;
font-weight: 300;
letter-spacing: 8px;
line-height: 12px;
text-transform: uppercase;
padding: 0 0 10px 0;
/*-webkit-transition: all .8s linear;
-moz-transition: all .8s linear;
-ms-transition: all .8s linear;
-o-transition: all .8s linear;
transition: all .8s linear;*/
/*margin: 5px 0;*/
border-bottom: solid 1px #ccc;
}

a.ict div.slidingleft {
display: none;
color: #1c1c1e !important;
opacity: 0.0;
position: relative;
/*margin-left: -120px;*/
width: 100%;
text-align: center;
}
a.web div.slidingright {
display: none;
color: #fff;
opacity: 0.0;
position: relative;
/*margin-left: -120px;*/
width: 100%;
text-align: center;
}


@media screen and (max-width: 1406px) {
 .nav > li > div { 
    width: 100%;
    left: 0;
    }
}

@media screen and (max-width: 850px) {
    #header {
        display: none;
    }
    .headerContRight {
        display: none;
    }
}

@media screen and (max-width: 709px) {
    #index {
        position: absolute;
        width: 100%;
        height: 100%;
    }
    #index a {
        position: relative;
        display: block;
        float: left;
        width: 100%;
        height: 50%;
    }
/*    #index a img {
        width: 50%;
        height: auto;
    }*/
    #index a img {
        position: relative;
        /*margin: 0 !important;*/
    }
}

@media screen and (max-width: 400px) {
    #index a img {
        width: 50%;
        height: auto;
        margin: -58px 0 0 -100px !important;
    }
}
@media screen and (max-width: 380px) {
    #index a img {
        width: 50%;
        height: auto;
        margin: -40px 0 0 -100px !important;
    }
}
@media screen and (max-width: 360px) {
    #index a img {
        width: 50%;
        height: auto;
        margin: -30px 0 0 -100px !important;
    }
}
@media screen and (max-height: 360px) {
    #index a img {
        height: 50%;
        width: auto;
        margin: -45px 0 0 -100px !important;
    }
}
@media screen and (max-height: 280px) {
    #index a img {
        height: 50%;
        width: auto;
        margin: -35px 0 0 -70px !important;
    }
}