/****************************************************************************************** GENERAL */

.bg-gris {
	background-color : #F2F2F2;
}

.wrapper {
	padding-left  : 45px;
	padding-right : 45px;
}

#main-title {
	background-color : #333333;
	color            : #FFFFFF;
	border-bottom    : 5px solid #FFFFFF;
}

#main-title h1 {
	font-size   : 24px;
	line-height : 30px;
}

.breadcrumb {
	padding          : 0;
	margin-bottom    : 0px;
	list-style       : none;
	background-color : transparent;
	border-radius    : 0px;
}

.breadcrumb a {
	color : #FFFFFF;
}

.breadcrumb > .active {
	color : #999999;
}

.pagination > li > a, .pagination > li > span {
	color     : #333333;
	font-size : 16px;
}

.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
	background-color : #005794;
	border-color     : #005794;
}


/****************************************************************************************** TOP-BAR */

#top-bar {
	background-color : #F2F2F2;
	color            : #333333;
	padding-top      : 15px;
	padding-bottom   : 15px;
	border-bottom    : 1px solid #DDDDDD;

	font-size        : 14px;
}

#top-bar a {
	color           : #005794;
	text-decoration : none;
	font-weight     : 700;
}

#top-bar a:hover {
	color           : #333333;
	text-decoration : none;
}


/****************************************************************************************** LOGO-BAR */

#logo-bar {
	padding-top    : 40px;
	padding-bottom : 40px;
}

#logo-bar img {
	max-width : 290px;
}

#logo-bar a.btn {
	font-size      : 14px;
	padding-top    : 12px;
	padding-bottom : 12px;
	margin-top     : 5px;
}


/****************************************************************************************** MENU */

#menu {
	border-bottom : 5px solid #FFFFFF;
	display       : flex;
}

#menu .dropdown, #menu a {
	flex               : 1 1 auto;
	align-self         : center;
	color              : #FFFFFF;
	background-color   : #005794;
	text-transform     : uppercase;
	padding-top        : 15px;
	padding-bottom     : 15px;
	border-right       : 1px solid rgba(255, 255, 255, 0.4);
	-moz-transition    : all 0.3s;
	-webkit-transition : all 0.3s;
	transition         : all 0.3s;
	position           : relative;
}

.dropdown-menu {
	width         : 100%;
	min-width     : 250px;
	padding       : 5px 0 0 0;
	margin        : 0;
	font-size     : 14px;
	text-align    : center;
	border        : none;
	border-radius : 0px;
}

#menu .dropdown-menu > li > a {

	white-space : normal;
}

#menu a:hover, #menu a:active {
	background-color : #004271;
	text-decoration  : none;
}

#menu-mobile-bars a {
	font-size  : 46px;
	margin-top : 5px;
	display    : inline-block;
	color      : #333333;
}

#menu-mobile {
	background-color   : #005794;
	position           : fixed;
	top                : 0;
	left               : 0;
	bottom             : 0;
	z-index            : 99999;
	padding            : 30px 30px 30px 10px;
	overflow-y         : auto;
	width              : 280px;
	margin-left        : -280px;
	-webkit-transition : margin-left ease 0.5s;
	-o-transition      : margin-left ease 0.5s;
	transition         : margin-left ease 0.5s;
}

#menu-mobile.open {
	margin-left : 0;
}

#menu-mobile ul.fa-ul li {
	margin-bottom : 15px;
}

#menu-mobile .fa-li {
	color      : rgba(255, 255, 255, 0.4);
	font-size  : 10px;
	margin-top : 4px;
}

#menu-mobile a {
	color          : #FFFFFF;
	font-size      : 14px;
	text-transform : uppercase;
}


/****************************************************************************************** SLIDER-TOP */
#slider-top-new-year{
	background              : url(../../gfx/accueil/happy-new-year.png) center center no-repeat;
	background-size         : auto auto;
	background-color		: #000;
	-webkit-background-size : contain;
	background-size         : contain;
	min-height              : 392px;
	color                   : #FFFFFF;
	border-bottom			:5px solid #fff;
}

#slider-top {
	background              : url(../../gfx/accueil/slider-img-2.jpg) center center no-repeat;
	background-size         : auto auto;
	-webkit-background-size : cover;
	background-size         : cover;
	min-height              : 392px;
	color                   : #FFFFFF;
}

#slider-top .slider-top-slogan {
	text-align  : center;
	padding-top : 130px;
	text-shadow : 3px 3px 5px #000000;
}

#slider-top .slider-top-slogan h1 {
	font-size      : 36px;
	margin-bottom  : 30px;
	text-transform : uppercase;
	font-weight    : 700;
}

#slider-top .slider-top-slogan .btn {
	text-shadow        : none;
	-moz-box-shadow    : 3px 3px 5px #000000;
	-webkit-box-shadow : 3px 3px 5px #000000;
	box-shadow         : 3px 3px 5px #000000;
}


/****************************************************************************************** FOOTER */

#footer-contact {
	background-color : #005794;
	color            : #FFFFFF;
	padding-top      : 40px;
	padding-bottom   : 40px;
}

#footer-contact .footer-contact-txt {
	font-size   : 22px;
	padding-top : 12px;
}

#footer-references {
	padding-top    : 60px;
	padding-bottom : 60px;
	text-transform : uppercase;
}

#footer-newsletter {
	background-color : #F1F1F1;
	padding-top      : 40px;
	padding-bottom   : 40px;
}


#footer-newsletter label {
	display : none;
}

.footer-newsletter-txt-1 {
	font-size      : 22px;
	display        : inline-block;
	text-transform : uppercase;
	font-weight    : 700;
	padding-top    : 2px;
}

#footer-newsletter input.form-control {
	height                : auto;
	padding               : 12px 20px;
	-webkit-border-radius : 7px;
	-moz-border-radius    : 7px;
	border-radius         : 7px;
}

#footer-menu {
	padding-top      : 40px;
	padding-bottom   : 40px;
	background-color : #333333;
	color            : #A9A9A9;
}

#footer-menu a {
	color : #A9A9A9;
}

#footer-menu li {
	margin-bottom : 10px;
}

#footer-menu li a:hover {
	color           : #FFFFFF;
	text-decoration : none;
}

#footer-menu .fa-ul li {
	color         : #FFFFFF;
	margin-bottom : 15px;
}

#footer-menu .fa-ul li a {
	color : #FFFFFF;
}

#footer-end {
	padding-top    : 40px;
	padding-bottom : 40px;
	color          : #A9A9A9;
}


/****************************************************************************************** ACCEUIL */

.accueil-slogan {
	display : table;
	width   : 100%;
}

.accueil-slogan-left, .accueil-slogan-right {
	display        : table-cell;
	vertical-align : middle;
}

.accueil-slogan-left {
	font-size      : 28px;
	line-height    : 30px;
	width          : 400px;
	text-align     : right;
	text-transform : uppercase;
	padding-right  : 25px;
	border-right   : 3px solid #005794;
}

.accueil-slogan-right {
	padding-left : 25px;
	color        : #777777;
}


/****************************************************************************************** SOLUTION */

.solution-cadre-small {
	display : block;
}

.solution-cadre-small:hover {
	text-decoration : none;
}

.img-hover {
	position                        : relative;
	overflow                        : hidden;
	display                         : block;
	-webkit-border-top-left-radius  : 7px;
	-moz-border-top-left-radius     : 7px;
	border-top-left-radius          : 7px;
	-webkit-border-top-right-radius : 7px;
	-moz-border-top-right-radius    : 7px;
	border-top-right-radius         : 7px;
}

.img-hover img {
	width              : 100%;
	display            : block;
	-moz-transition    : all 0.3s;
	-webkit-transition : all 0.3s;
	transition         : all 0.3s;
}

.img-hover:hover img {
	-moz-transform    : scale(1.1);
	-webkit-transform : scale(1.1);
	transform         : scale(1.1);
}

.solution-txt {
	padding                            : 15px;
	display                            : block;
	text-align                         : center;
	background-color                   : #005794;
	color                              : #FFFFFF;
	font-weight                        : 700;
	cursor                             : pointer;
	-webkit-border-bottom-left-radius  : 7px;
	-moz-border-bottom-left-radius     : 7px;
	border-bottom-left-radius          : 7px;
	-webkit-border-bottom-right-radius : 7px;
	-moz-border-bottom-right-radius    : 7px;
	border-bottom-right-radius         : 7px;
	-webkit-transition                 : all ease 0.3s;
	-moz-transition                    : all ease 0.3s;
	-ms-transition                     : all ease 0.3s;
	-o-transition                      : all ease 0.3s;
	transition                         : all ease 0.3s;
}

.solution-txt-2 {
	padding          : 15px;
	display          : block;
	text-align       : center;
	background-color : #005794;
	color            : #FFFFFF;
	font-weight      : 700;
	cursor           : pointer;
}

.solution-size-2 input {
	color   : #333333;
	padding : 5px;
}

.solution-size {
	padding          : 15px;
	display          : block;
	text-align       : center;
	background-color : #FFFFFF;
	color            : #333333;
	min-height        : 8.5vh !important;
	max-height        : 8.5vh !important;

	
}

.solution-size-2 {
	padding          : 15px;
	display          : block;
	text-align       : center;
	background-color : #333333;
	color            : #FFFFFF;
}

.solution-size-2 span {
	display       : block;
	margin-bottom : 10px;
}


.solution-cadre-small:hover .solution-txt {
	background-color : #333333;
}

.solution-fiche-infos {
	display : table;
	width   : 100%;
}

.solution-fiche-infos-left, .solution-fiche-infos-right {
	display        : table-cell;
	vertical-align : top;
}

.solution-fiche-infos-left {
	background-color : #FFFFFF;
	padding          : 30px;
}

.solution-fiche-infos-right {
	color            : #FFFFFF;
	background-color : #005794;
	width            : 370px;
	padding          : 30px;
	font-size        : 16px;
	line-height      : 20px;
}

.solution-fiche-infos-ref {
	color      : #AAAAAA;
	display    : block;
	margin-top : 20px;
	font-size  : 14px;
}

.solution-fiche-cta {
	background-color : #F2F2F2;
	padding          : 40px;
	text-align       : center;
}

.solution-fiche-cta span {
	font-size   : 24px;
	line-height : 28px;
	display     : block;
}


ul.modal-list-liens {
	margin-bottom : 0;
}

ul.modal-list-liens li {
	padding       : 15px 0;
	border-bottom : 1px dotted #DDDDDD;
}


ul.modal-list-liens li:last-child {
	padding-bottom : 0;
	border-bottom  : none;
}


/****************************************************************************************** REALISATIONS */

#realisation-titre {
	background-color : #005794;
	color            : #FFFFFF;
	padding-bottom   : 50px;
}


/****************************************************************************************** ACTUALITE */

.actualite-cadre {
	border           : 1px solid #E5E5E5;
	background-color : #FFFFFF;
}

.actualite-txt {
	padding : 30px 30px 10px 30px;
}

.actualite-cadre div {
	margin-bottom : 15px;
}

.actualite-date {
	color     : #777777;
	font-size : 12px;
}

.actualite-titre {
	font-size     : 16px;
	height        : 50px;
	max-height    : 50px;
	margin-bottom : 30px;
}

.actualite-cadre a {
	font-weight : 700;
}

#actualite-one img {
	max-width : 100%;
}

.actualite-one-date {
	text-transform   : uppercase;
	color            : #777777;
	background-color : #FFFFFF;
	margin-left      : 0px;
	margin-right     : 0;
	padding-top      : 30px;
	padding-bottom   : 30px;
	border-top       : 3px solid #DDDDDD;
}


/****************************************************************************************** PROMOTIONS */

.promotion-infos-right {

}


/****************************************************************************************** FAQ */

.panel-group .panel {
	margin-bottom : 0;
	border-radius : 0px;
	margin-bottom : 20px;
}

.panel-default > .panel-heading {
	color            : #333333;
	background-color : #FFFFFF;
	border-color     : #DDDDDD;
	padding          : 20px;
	border-radius    : 0px;
}

.panel-heading:hover, .panel-heading:active, .panel-heading:not([class*="collapsed"]) {
	background-color : #005794;
	color            : #FFFFFF;
}

.panel-title {
	font-size : 18px;
}

.panel-body {
	padding : 20px;
}


/****************************************************************************************** REFERENCES */


.cadre-temoignage {
	padding-left  : 100px;
	padding-right : 100px;
}

.cadre-temoignage span {
	font-size : 18px;
}

.carousel-control.left, .carousel-control.right {
	background-image : none;
}

.carousel-control {
	font-size   : 20px;
	color       : #333333;
	text-align  : center;
	text-shadow : none;
}

.carousel-control:hover, .carousel-control:active {
	color : #333333;
}

.carousel-control .fa-chevron-left, .carousel-control .fa-chevron-right, .carousel-control .icon-next, .carousel-control .icon-prev {
	position   : absolute;
	top        : 50%;
	z-index    : 5;
	display    : inline-block;
	margin-top : -16px;
	font-size  : 32px;
}


/****************************************************************************************** ESPACE CLIENT */

ul.cadre-espace-client {
	border-left  : 1px solid #DDDDDD;
	border-right : 1px solid #DDDDDD;
}

ul.cadre-espace-client > li.titre {
	background-color : #FFFFFF;
	font-family      : 'oswald';
	text-transform   : uppercase;
	font-size        : 20px;
	line-height      : 22px;
	font-weight      : 300;
	border-bottom    : 1px solid #DDDDDD;
	border-top       : 1px solid #DDDDDD;
}

ul.cadre-espace-client > li {
	background-color : #FFFFFF;
	padding          : 25px 20px;
	border-bottom    : 1px solid #DDDDDD;
}

.list-group-item:first-child, .list-group-item:last-child {
	border-radius : 0 !important;
}


.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
	background-color : #005794;
	border-color     : #005794;
}

.cadre-espace-client-liens > li {
	margin-top : 20px;
}

.cadre-espace-client-liens > li > a {
	padding         : 5px 10px;
	text-decoration : none;
}


.table-telechargements td {
	background-color : #FFFFFF;
	padding          : 20px !important;
}

.table-telechargements th {
	background-color : #005794;
	color            : #FFFFFF;
	padding          : 20px !important;
}


/****************************************************************************************** DEVIS */

.bs-wizard {border-bottom : solid 1px #E0E0E0; padding : 0 0 10px 0;}

.bs-wizard > .bs-wizard-step {padding : 0; position : relative;}

.bs-wizard > .bs-wizard-step + .bs-wizard-step {}

.bs-wizard > .bs-wizard-step .bs-wizard-stepnum {color : #595959; font-size : 16px; margin-bottom : 5px;}

.bs-wizard > .bs-wizard-step .bs-wizard-info {color : #999999; font-size : 14px;}

.bs-wizard > .bs-wizard-step > .bs-wizard-dot {position : absolute; width : 30px; height : 30px; display : block; background : #005794; top : 45px; left : 50%; margin-top : -15px; margin-left : -15px; border-radius : 50%;}

.bs-wizard > .bs-wizard-step > .bs-wizard-dot:after {content : ' '; width : 14px; height : 14px; background : #FFFFFF; border-radius : 50px; position : absolute; top : 8px; left : 8px; }

.bs-wizard > .bs-wizard-step > .progress {position : relative; border-radius : 0px; height : 8px; box-shadow : none; margin : 20px 0;}

.bs-wizard > .bs-wizard-step > .progress > .progress-bar {width : 0px; box-shadow : none; background : #005794;}

.bs-wizard > .bs-wizard-step.complete > .progress > .progress-bar {width : 100%;}

.bs-wizard > .bs-wizard-step.active > .progress > .progress-bar {width : 50%;}

.bs-wizard > .bs-wizard-step:first-child.active > .progress > .progress-bar {width : 0%;}

.bs-wizard > .bs-wizard-step:last-child.active > .progress > .progress-bar {width : 100%;}

.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot {background-color : #F5F5F5;}

.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot:after {opacity : 0;}

.bs-wizard > .bs-wizard-step:first-child > .progress {left : 50%; width : 50%;}

.bs-wizard > .bs-wizard-step:last-child > .progress {width : 50%;}

.bs-wizard > .bs-wizard-step.disabled a.bs-wizard-dot { pointer-events : none; }

.devis-stepper-span-titre {
	font-size     : 24px;
	margin-bottom : 30px;
	display       : block;
	font-weight   : 700;
}

.devis-stepper .radio-inline {
	background-color : #005794;
	color            : #FFFFFF;
	margin-bottom    : 20px;
	padding          : 20px 20px 20px 40px;
}

.devis-stepper .checkbox-inline {
	background-color : #005794;
	color            : #FFFFFF;
	margin-bottom    : 20px;
	padding          : 20px;
	margin-left      : 0;
}

.devis-stepper .checkbox-inline {
	width : 48%;
}

.devis-stepper .checkbox-inline label {
	font-weight : normal;
}

.devis-stepper .radio-inline span, .devis-stepper .checkbox-inline span {
	font-size : 18px;
}

#transport-yes, #transport-no {
	font-weight : normal;
}

label.utilisation-checkbox {
	color            : #333333;
	text-align       : center;
	padding          : 30px;
	width            : 100%;
	display          : block;
	margin-bottom    : 0;
	background-color : #FFFFFF;
	cursor           : pointer;
	font-size        : 12px;
}

label.utilisation-checkbox i {
	display : none;
}

label.utilisation-checkbox.focused {
	background-color   : #DFF0D8 !important;
	-moz-box-shadow    : 0 0 10px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow : 0 0 10px rgba(0, 0, 0, 0.3);
	box-shadow         : 0 0 10px rgba(0, 0, 0, 0.3);
}

label.utilisation-checkbox.focused i {
	display : inline-block;
}

label.utilisation-checkbox input[type="checkbox"] {
	display : none;
}

label.utilisation-checkbox img {
	max-width : 100px;
}

#cookie_disclaimer {
	top              : 0;
	background-color : #005794;
	color            : #FFFFFF;
	width            : 100%;
	text-align       : center;
	padding          : 15px 0;
	font-size        : 12px;
}

#cookie_stop {
	background-color : green;
	padding          : 5px;
	font-size        : 12px;
	cursor           : pointer;
}

.tooltip {
	font-family : inherit;
	font-size   : 15px;
}

.tooltip-inner {
	max-width        : 300px;
	color            : #FFFFFF;
	background-color : #EA432F;
}


#contact-box {
	position                  : fixed;
	z-index                   : 5;
	right                     : -1px;
	top                       : calc(50% - 85px);
	background-color          : #0DAD4A;
	color                     : #FFFFFF;
	width                     : 160px;
	text-align                : center;
	padding                   : 10px 0;
	padding-bottom            : 0;
	font-size                 : 12px;
	border-bottom-left-radius : 7px;
	border-top-left-radius    : 7px;
	font-weight               : 700;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
}

#contact-box .inner-box {
	background-color : #FFFFFF;
	color            : #333333;
	border           : 1px solid #DDDDDD;
	border-bottom-left-radius : 7px;

	padding          : 10px;
	font-weight      : 700;
}

#contact-box .inner-box .btn.btn-mod {
	font-size : 10px !important;
	padding   : 7px 5px 5px 5px;
	width     : 100%;

}


.contact-box-mobile {
	position                  : fixed;
	z-index                   : 5;
	bottom : 0;
	width: 100%;
}

.contact-box-mobile a {
	-webkit-border-radius : 0;-moz-border-radius : 0;border-radius : 0;
	-webkit-box-shadow: 0px -4px 10px rgba(50, 50, 50, 0.50);
	-moz-box-shadow: 0px -4px 10px rgba(50, 50, 50, 0.50);
	box-shadow: 0px -4px 10px rgba(50, 50, 50, 0.50);
}

.row-flex {
  display: flex !important;
  flex-wrap: wrap  !important;
  margin-right: -15px  !important;
  margin-left: -15px  !important;
}

.module {
  padding-right: 15px  !important;
  padding-left: 15px  !important;
}

/* Extra small devices (phones, less than 768px) */
.col-xs-12 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
  .col-sm-6 {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
  .col-md-3 {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }
}

.clearfix {
  width: 100%;
}