* { margin:0; padding:0;}

input, select, textarea { font-family:Arial, Helvetica, sans-serif; font-size:1em;}

.fleft { float:left;}
.fright { float:right;}
.clear { clear:both;}

.alignright { text-align:right;}
.aligncenter { text-align:center;}

.wrapper { width:100%; overflow:hidden;}
.container { width:100%;}

p { margin-bottom:16px;}
p.first {font-weight:bold;}

.tail-middle { background:url(../images/tail-middle.gif) left top repeat-x #232323;}


/*==================forms====================*/
input, select { vertical-align:middle; font-weight:normal;}
img {border:0; vertical-align:top; text-align:left;}

#contacts-form label { display:block; padding-bottom: 0.5em;} 

span.required {
    color: #F00;
    font-size: 2em;
    margin-left: 0.2em;
    line-height: 0.5em;
    vertical-align: middle;
}

#contacts-form {
	position: relative;
	z-index: 0;
}
#contacts-form input,
#contacts-form textarea,
#contacts-form select {
    color: #FFF;
    background-color: #312D2D;
    border: 1px solid #777;
    width: 100%;
    max-width: 600px;
    margin-right: 1em;
    margin-bottom: 1em;
    padding: 0.5em;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box; 
    box-sizing: border-box;    
}
#contacts-form textarea {
    height: 7em;
}

#contacts-form .formButton {
    color: #FFF;
    background-color: #312D2D;
    border: 1px solid #777;
    padding: 0.5em;
    width: auto;
}	

#contacts-form .warningMsg {
    color: red;
    margin: 2em 0;
}

#contacts-form ul { list-style: disc; margin-left: 2em;}

.agency-infos {
	background-color: #333;
	border-radius: 4px;
	padding: 1em;
	margin: 1em 0; 
}
.agency-phone  {
    font-size: 1.8em;
    line-height: normal;
    text-align: center;
    padding-top: 20px;
    color: #FFF;
}

/*==================list====================*/
ul { list-style:none;}

.list1 li { background:url(../images/arrow1.gif) no-repeat left 7px; padding:0 0 0 25px; margin-bottom:3px; vertical-align:top;}
.list1 li a { display:block; border-bottom:1px dashed #242424; color:#BBB; font-weight:normal; padding:0 0 5px 0;}
.list1 li a:hover { color:#fff; text-decoration:none;}
.list1 li.last a { border:none;}
.list1 .current, .list1 .last-opened { font-weight: bold;}

.list2 li { background:url(../images/arrow1.gif) no-repeat left 7px; padding:0 0 10px 16px; vertical-align:top; color:#BBB;}


.header-lang { padding:15px 0 4px 0; text-align: right;}



.footer-menu {padding-left: 17px;}


/* Liste ŕ deux colonnes */
.list-2cols ul {width: 50%;}

/* Liste ŕ trois colonnes */
.list-3cols ul {width: 33%;}

/* Liste ŕ quatre colonnes */
.list-4cols ul {width: 25%;}

/* Style communs aux listes ŕ colonnes */
.list-1col, .list-2cols, .list-3cols, .list-4cols { width: 100%; padding-bottom:25px; float:left; text-align:left; clear: both;}
.list-1col {float:none; clear: none;}
.list-1col li, .list-2cols li, .list-3cols li, .list-4cols li  { 
background:transparent url(../images/list-disc.png) no-repeat scroll 20px 7px;
margin-bottom: 3px;
padding:0 10px 0 35px;
vertical-align:top;
}
.list-2cols ul , .list-3cols ul , .list-4cols ul  {float:left;}


/*================== tables ====================*/

table {
 border-collapse:collapse;
 width:100%;
 margin-bottom: 25px;
 }
 
td, th {
    padding:8px;	
    text-align:left;
    vertical-align:top;	
	border:1px solid #333; 	
}
  
tr.odd {background-color: #333;}

th{
    font-weight:normal;
    padding-bottom: 10px;
	border-bottom:2px solid #666;    
    color: orange;
}

#last-translations .c1 {width: 30%;}
#last-translations .c2 {width: 30%;}
#last-translations .c3 {width: 40%;}

#tarifs .c1 {width: 23%;}
#tarifs .c2 {width: 25%;}
#tarifs .c3 {width: 20%;}
#tarifs .c4 {width: 16%;}
#tarifs .c5 {width: 16%;}


/*================== tables RWD ====================*/

@media (max-width: 0px) {
    thead, th{
        display:none;
    }
    tr{ border-bottom: 2px solid #666; }
    tr:last-child{ border: none; }    
    td:before  {
        content: attr(data-th);
        color: orange;
        padding-right: 1em;
        width: 30%;
        display: inline-block;
        text-wrap: no-wrap;
    }
    td {
        display: block;
        border: none;
    }
}

/*==================flags====================*/
div.flags {margin-top:20px;}
.flags li {background: none; margin-bottom: 10px;}
.flags a {
    background-position:0 0;
    background-repeat:no-repeat;
    display: inline-block;
    min-height: 40px;
    color:#BBB;
    padding:5px 20px 0 40px;    
    font-weight:normal;
}
.flags a:hover { text-decoration:underline;}

.footer-lang a.fr { background-image:url(../images/flags/fr_20.png);}
.flags a.fr { background-image:url(../images/flags/fr_30.png);}

.footer-lang a.de { background-image:url(../images/flags/de_20.png);}
.flags a.de { background-image:url(../images/flags/de_30.png);}

.footer-lang a.ar { background-image:url(../images/flags/ae_20.png);}
.flags a.ar { background-image:url(../images/flags/ae_30.png);}

.footer-lang a.it { background-image:url(../images/flags/it_20.png);}
.flags a.it { background-image:url(../images/flags/it_30.png);}

.footer-lang a.en-AU { background-image:url(../images/flags/en-AU_20.png);}
.flags a.en-AU { background-image:url(../images/flags/en-AU_30.png);}

.footer-lang a.en-GB { background-image:url(../images/flags/en-GB_20.png);}
.flags a.en-GB { background-image:url(../images/flags/en-GB_30.png);}

.footer-lang a.en-US { background-image:url(../images/flags/en-US_20.png);}
.flags a.en-US { background-image:url(../images/flags/en-US_30.png);}

.footer-lang a.nl { background-image:url(../images/flags/nl_20.png);}
.flags a.nl { background-image:url(../images/flags/nl_30.png);}

.footer-lang a.jp { background-image:url(../images/flags/jp_20.png);}
.flags a.jp { background-image:url(../images/flags/jp_30.png);}

.footer-lang a.he { background-image:url(../images/flags/il_20.png);}
.flags a.he { background-image:url(../images/flags/il_30.png);}

.footer-lang a.es { background-image:url(../images/flags/es_20.png);}
.flags a.es { background-image:url(../images/flags/es_30.png);}

.footer-lang a.pr { background-image:url(../images/flags/pt_20.png);}
.flags a.pr { background-image:url(../images/flags/pt_30.png);}

.footer-lang a.zh-Hans { background-image:url(../images/flags/cn_20.png);}
.flags a.zh-Hans { background-image:url(../images/flags/cn_30.png);}

.footer-lang a.fr-CA { background-image:url(../images/flags/fr-CA_20.png);}
.flags a.fr-CA { background-image:url(../images/flags/fr-CA_30.png);}

.footer-lang a.en-CA { background-image:url(../images/flags/en-CA_20.png);}
.flags a.en-CA { background-image:url(../images/flags/en-CA_30.png);}

.footer-lang a.fr-BE { background-image:url(../images/flags/fr-BE_20.png);}
.flags a.fr-BE { background-image:url(../images/flags/fr-BE_30.png);}

/*==================other====================*/
.img-indent { margin:0 20px 0 0; float:left;}
.img-box { width:100%; overflow:hidden; padding-bottom:19px;}
.img-box img { float:left; margin:3px 20px 0 0;}

.extra-wrap { overflow:hidden; }

.p1 { margin-bottom:16px;}
.p2 { margin-bottom:29px;}

/*================== estimateForm ====================*/
.col-1 h3 {color: orange;}

/*==================txt, links, lines, titles====================*/
a {color:#2e97ad; font-weight:bold; text-decoration: none;}
a:hover{color:#2e97ad; text-decoration:underline;}
a.new-window {
    background-image:url(../images/new_window.png);
    background-position:right top;
    background-repeat:no-repeat;
    padding-right:15px;
}

h1 {margin-bottom:20px; margin-top:10px;}

h2 { font-size:25px; color:#fff; line-height:1em; padding:14px 0 0 0; margin-bottom:14px;}
h3 { font-size:18px; color:#d6dbe0; border-bottom:1px solid #323232; font-weight:normal; line-height:1.2em; padding:0 0 4px 0; margin-bottom:17px;}
h4 { font-size:1em; margin-bottom:9px; font-style: italic; }
h4.alt { font-size:.91em;}
h5 { font-size:1em; background:url(../images/arrow2.gif) no-repeat left 5px; padding:0 0 0 19px; margin-bottom:9px;}
h5 a { color:#ff5013;}
h6 { font-size:1em; color:#2e97ad; }

.txt1 { color:#2e97ad;}

.rss { display:block; background:url(../images/rss.jpg) no-repeat right top; padding:10px 70px 12px 0; color:#BBB; text-decoration:none;}
.rss:hover { color:#fff; text-decoration:underline;}


.line-hor { background:#323232; height:1px; overflow:hidden; font-size:0; line-height:0; margin:16px 0 11px 0;}
.line-hor1 { background:#323232; height:1px; overflow:hidden; font-size:0; line-height:0; margin:2px 0 11px 0;}
.line-hor2 { background:#323232; height:1px; overflow:hidden; font-size:0; line-height:0; margin:9px 0 11px 0;}
.line-ver { background-image:url(../images/line-ver.gif); background-repeat:repeat-y; width:100%;}

/*==================boxes====================*/
.sign-box { background:url(../images/signature.gif) no-repeat right top; text-align:left; padding:20px 0 0 300px;}

.cont-box { padding:0 20px 0 0; margin:0;}
.cont-box span { float:right;}

/*header*/



#header a:hover { text-decoration: none;}

#header a.email {
    display: inline-block;
    padding: .6em 0;
}

.menu { margin:0 0 0 -35px;}
.menu ul { margin-left: 35px; background:url(../images/menuBg.png); text-align: center;}
.menu li { display: inline-block; font-weight: bold; text-align: center; background-color: #333; background:url(../images/menuBg.png) repeat-x 0 0;}
.menu li a { border-left: 1px solid black; display: block; color: #FFF; font-weight: normal; padding: 1.35em 1.5em}
.menu li:first-child a { border: none;}



.top-header {
    position: relative;
}
.top-header .contact {
   float: right;
   padding-top: 1.5em;
   text-align: right;
}
.top-header .title {
   color: #FFF;
   position: absolute;
   padding-top: 1.3em;
   width: 600px;
   text-align: center;
   margin: 0 0 0 150px;
   text-transform: uppercase;
   font-weight: normal;
}

 
/*content*/
#content .row-1 .indent {padding:31px 0 39px 2px;}
#content .row-2 .indent {padding:22px 0 32px 7px; }

/*footer*/
#footer strong { color:#afb1b3;}
#footer a { color:#BBB; text-decoration:none; font-weight:normal;}
#footer a:hover { text-decoration:underline;}
#footer .legal {clear:both; font-size: 0.85em; text-align: center; padding-top: 25px; padding-bottom: 25px;}

/*================== 5 seconds estimate ====================*/

.instant-quote {
    background-color: #121212;
    border: 1px solid grey;
    border-radius: 5px;
    padding: 10px;
    float: right; 
    margin: 5px 0 20px 20px;    
}

.instant-quote  h3 {
    color: #FFA500;
    font-size: 1.5em;
}

/*================== Instant quote form (fake form !) ====================*/

.instant-quote-form {
    position: relative;
    margin: 1em 1em 0 0;
}
.instant-quote-form label {
    font-weight: normal;
}
.instant-quote-form .form-grp {
    margin-bottom: 0.5em;
}
.instant-quote-form .form-grp::after {
    display: block;
    content: "";
    clear: both;
}
.instant-quote-form .form-grp select,
.instant-quote-form .form-grp input {
    float: right;
    background-color: #333333;
    border: 1px solid #777777;
    border-radius: 2px;
    color: #979797;
}
.instant-quote-form .form-grp input.email {
    width: 100%;
}
.instant-quote-form .form-grp button {
    background-color: #CE7B00;
    color: white;
    border: 0;
    padding: 0.1em 0.3em;
    border-radius: 5px;
    font-size: 1.2em;
    font-weight: normal;
}
.instant-quote-form .instant-quote-link {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
}

/*================== TimeTable ====================*/

#timeTable  {margin: 20px 0 25px 0; width: 100%; border: 1px solid #333; float: left; clear: both;}
#timeTable li  {width: 12.5%; float: left; white-space:nowrap; text-align: center;}
#timeTable li .city {color: orange; padding: 0.7em 0; border-right: 1px solid #333; }
#timeTable li .time {font-size: 0.9em; border-top: 2px solid #666; background-color: #333; color: #CCC; clear: both; padding: 0.7em 0; }


/*================== Contact Box ====================*/

.contactbox {
    margin-bottom: 10px;
    background-color: #4d4d4d;
    border-radius: 5px;
}
.contactbox .top {font-size:1.5em; color:white; padding: 8px;}
.contactbox .content {padding-left: 10px; padding-right:10px; padding-bottom:10px;}
.contactbox .content .leftcol {float:left; width:40%;  border-right: 1px solid gray; text-align:left;}
.contactbox .content .rightcol {float:left; width:50%; padding-left: 20px;}
.contactbox .appointment { font-style: italic; color: #FFF;}

  
/*================== Agency ====================*/
.agency .col-1 .bloc { margin-top: 30px;}

.agency .click2call input.skin {
    background:transparent url(../images/inputBg.png) no-repeat scroll 0 0;
    border:0 none;
    width: 167px;
    height:18px;
    padding:4px 5px;
    width:166px;
}

.agency  .main-content .phone {
    font-size: 2em;
    line-height: normal;
    text-align:center;
    padding-top: 20px;
    color: #FFF;
}

.agency  .quote {
    border: 1px solid grey;
    border-radius: 5px;
    padding: 10px;
    float: right; 
    margin: 5px 0 20px 20px;    
}

.agency  .quote  h3 {
    color: #FFA500;
    font-size: 1.5em;
}

.agency  .mail {
    font-weight: bold;
    text-align: center;
}
.agency  .mail a {
    color:  #BBB;
}
.agency  .mail img {
    vertical-align: middle;
    height: 25px;
    width: 25px;
    border: none;
}

.agency  .contactbox {margin-bottom: 10px; margin-top: 20px; background: #4D4D4D; border-radius: 5px; }
.agency  .contactbox .top {font-size:1.5em; color:white; padding: 10px; background: none;}
.agency  .contactbox .content {padding-left: 10px; padding-right:10px; padding-bottom:10px;background: none;}
.agency  .contactbox .content .leftcol {float:left; width:40%;  border-right: 1px solid gray; text-align:left;}
.agency  .contactbox .content .rightcol {float:left; width:50%; padding-left: 20px;}



/* Effect 1: Brackets */

.cl-effect-1 a::before,
.cl-effect-1 a::after {
	display: inline-block;
	opacity: 0;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.2s;
	-moz-transition: -moz-transform 0.3s, opacity 0.2s;
	transition: transform 0.3s, opacity 0.2s;
}

.cl-effect-1 a::before {
	margin-right: 5px;
	content: '[';
	-webkit-transform: translateX(20px);
	-moz-transform: translateX(20px);
	transform: translateX(20px);
}

.cl-effect-1 a::after {
	margin-left: 10px;
	content: ']';
	-webkit-transform: translateX(-20px);
	-moz-transform: translateX(-20px);
	transform: translateX(-20px);
}

.cl-effect-1 a:hover::before,
.cl-effect-1 a:hover::after,
.cl-effect-1 a:focus::before,
.cl-effect-1 a:focus::after {
	opacity: 1;
	-webkit-transform: translateX(0px);
	-moz-transform: translateX(0px);
	transform: translateX(0px);
}




.wrapper + .wrapper {
display: none;
}









/* Bootstrap tricks */

.no-gutter > [class*='col-'] {
    padding-right:0;
    padding-left:0;
}

/* Global */

 body { 
	background:#121212;
	font-size: 12px;
	color:#BBB;
	margin-bottom: 60px;
} 
.page-wrapper {
	max-width: 960px;
	margin: 0 auto;	
}

/*================== Blockquote ====================*/

blockquote {
	border: none;
	font-size: 1em;
	background: transparent url(../images/quote_start.png) no-repeat scroll 0 0;
	margin-left:0;
	padding-left:40px;
	padding-top:10px;
	padding-bottom:30px;	
}

blockquote .author {
	background: transparent url(../images/quote_end.png) no-repeat scroll right center;
	height: 26px;
	text-align: right;
	padding-top: 10px;
	padding-right: 50px;
}



/* Header */

/*==================logo====================*/
#logo {
    cursor:pointer;
    height: 70px; 
    width: 142px; 
    background:url(../images/logo.jpg) no-repeat; 
    margin-bottom: 1em;
}

#logo.de {background-image:url(../images/logo_de.jpg);}
#logo.en-AU {background-image:url(../images/logo_en-AU.jpg);}
#logo.en-CA {background-image:url(../images/logo_en-CA.jpg);}
#logo.en-GB {background-image:url(../images/logo_en-GB.png);}
#logo.en-US {background-image:url(../images/logo_en-US.png);}
#logo.es {background-image:url(../images/logo_es.jpg);}
#logo.fr {background-image:url(../images/logo_fr.jpg);}
#logo.fr-CA {background-image:url(../images/logo_fr-CA.jpg);}
#logo.it {background-image:url(../images/logo_it.jpg);}
#logo.zh-Hans {background-image:url(../images/logo_zh-Hans.jpg);}

.header {
	background-color: #121212;
}

.header .title {
   color: #FFF;
   text-transform: uppercase;
   font-size: 1.5em;
   background-color: #222;
   border-radius: 5px;
   padding: 0.3em 0.5em;
   display: inline-block;
   margin-top: 5px;
}

.header .phone {
   font-size: 1.7em;
   font-weight: normal;
   color: orange;
   background-color: #363736;
   border-radius: 5px;
   padding: 0.3em 0.5em;
}

/* Navbar */

.navbar-inverse {
	background: linear-gradient(to bottom, #383938, #1D1C1D);
}
.navbar-inverse li {
	border-right: 1px solid black;
}

.navbar-nav > li > a {
	text-transform: uppercase;
}
.navbar-inverse .navbar-nav > li > a {
	color: #FFF;
}

.warning-zone {
	background-color: #d42323;
	padding: 1em;
	color: #ffffff;
	font-weight: bold;
}
.warning-zone a {
    color: #FFFFFF;
    display: block;
    font-size: 1.2em;
    text-align: center;
}

/* Banners */

.carousel-legend {
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    left: 0;
    bottom: 0;
    color: #fff;
	width: 100%;
}
.carousel-legend a {
	color: #fff;
    text-shadow: 2px 1px 0 #000,4px 4px 0 rgba(0, 0, 0, 0.15);
    text-align: center;
	display: block;
    font-size: 3em;
}
.slide .item:nth-child(1) .carousel-legend  {
    background: rgba(127, 34, 0, 0.8);
}
.slide .item:nth-child(2) .carousel-legend  {
	background: rgba(255, 143, 49, 0.8);
}
.slide .item:nth-child(3) .carousel-legend  {
	background: rgba(32, 93, 111, 0.8);
}
.slide .item:nth-child(4) .carousel-legend  {
	background: rgba(136,136,6, 0.8);
}

.carousel-indicators {display: none;}



.banner {
	height: 285px;
	
	background-color: red;
}
.banner-1 { background: url(../images/banner1.jpg) no-repeat scroll 50% 50% transparent; background-size:100% auto }
.banner-2 { background: url(../images/banner2.jpg) no-repeat scroll 50% 50% transparent; background-size:100% auto }
.banner-3 { background: url(../images/banner3.jpg) no-repeat scroll 50% 50% transparent; background-size:100% auto}
.banner-4 { background: url(../images/banner4.jpg) no-repeat scroll 50% 50% transparent; background-size:100% auto}
.banner a {
	display: block;
	width: 100%;
	padding: 1.5em 0;
	position: absolute;
	bottom: 0;
	text-transform: uppercase;
	white-space: nowrap;
	color: #FFF;
	font-weight: bold;
	text-align: center;	
}
.banner-1 a {
	background-color: #681B00;
	background: linear-gradient(to bottom, #AF3300, #681B00);
}
.banner-2 a {
	background-color: #FE8F1B;
	background: linear-gradient(to bottom, #FFB264, #FE8F1B);
}
.banner-3 a {
	background-color: #174350;
	background: linear-gradient(to bottom, #2B7990, #174350);
}
.banner-4 a {
	background-color: #626202;
	background: linear-gradient(to bottom, #ABAC08, #626202);
}


.main-content {
	margin: 1em 0;
	padding-top: 2em;
	padding-bottom: 2em;
	background: url(../images/tail-middle.gif) left top repeat-x #232323;
}


.breadcrumb {
	background-color: #333;
}

.side-menu {
	margin-bottom: 4em;
}

#console {
	display: none;
}


.footer-nav { padding:2em 0;}
.footer-nav li { display:inline-block; color:#2d2d2d; padding: 15px 0; }
.footer-nav li+li::before {
	content: '|';
	 padding: 0 10px; 
}
.footer-nav li a {color:#BBB; text-decoration:none;}
.footer-nav li a:hover {text-decoration:underline;}


.footer-lang { padding: 2em 0; text-align: center;}
.footer-lang a {
    background-position: left bottom;
    background-repeat:no-repeat;
    display: inline-block;
    color:#BBB;
    padding: 15px 0px 0 30px;    
    text-decoration:none;
	float: right;
}

.mdi svg, .fa-fax svg {
    height: 1em;
}


@media screen and (max-width: 440px){
	.banner {
		height: 200px;
	}
	.carousel-legend a {
		font-size: 2em;
	}
}

@media screen and (max-width: 768px){
                .flex {                
                  display: -webkit-box;
                  display: -webkit-flex;
                  display: -moz-box;
                  display: -ms-flexbox;
                  display: flex;
                  -webkit-box-orient: vertical;
                 -webkit-box-direction: normal;
                  -webkit-flex-direction: column;
                  -moz-box-orient: vertical;
                  -moz-box-direction: normal;
                  -ms-flex-direction: column;
                  flex-direction: column;
                } 
                .flex-up {
                    padding-right: 0;
                    width: 100%;
                    -webkit-box-ordinal-group: 10;   /* OLD - iOS 6-, Safari 3.1-6 */
                    -moz-box-ordinal-group: 10;      /* OLD - Firefox 19- */
                    -ms-flex-order: 10;              /* TWEENER - IE 10 */
                    -webkit-order: 10;               /* NEW - Chrome */
                    order: 10;                       /* NEW, Spec - Opera 12.1, Firefox 20+ */
                }
                .flex-down {
                    position: relative; /* Requis pour le flex */
                    margin: 0;
                    padding-bottom: 0;
                    width: 100%;
                    -webkit-box-ordinal-group: 20;   /* OLD - iOS 6-, Safari 3.1-6 */
                    -moz-box-ordinal-group: 20;      /* OLD - Firefox 19- */
                    -ms-flex-order: 20;              /* TWEENER - IE 10 */
                    -webkit-order: 20;               /* NEW - Chrome */
                    order: 20;                       /* NEW, Spec - Opera 12.1, Firefox 20+ */
                }	
	
	.topbar {
		position: fixed;
		width: 100%;
		z-index: 1;
		top: 0;
	}
	.topbar-placeholder {
		height: 140px;
	}
	
	.header {
		font-size: 0.8em;
	}
	
	.sign-box {
		padding: 0;
	}
	
	.footer-nav {
		text-align: center;
	}
	.footer-lang a {
		float: none;
	}
}