/* ------------------------------------------------------------------------- */
/* ------ Fonts ------------------------------------------------------------ */
/* ------------------------------------------------------------------------- */

body { font-family: 'Raleway', sans-serif; -webkit-font-smoothing: antialiased; color: #575757; }

button, input, textarea, select { font-family: 'Raleway', sans-serif; }

.f14-w400 { font-size: 14px; font-weight: 400; }
.f14-w500 { font-size: 14px; font-weight: 500; }
.f14-w700 { font-size: 14px; font-weight: 700; }


.f16-w400 { font-size: 16px; font-weight: 400; line-height: 22px; }
.f16-w500 { font-size: 16px; font-weight: 500; }
.f16-w700 { font-size: 16px; font-weight: 700; }

.f20-w500 { font-size: 20px; font-weight: 500; }

.f22-w300 { font-size: 22px; font-weight: 300; line-height: 32px; }
.f22-w500 { font-size: 22px; font-weight: 500; }

.f25-w300 { font-size: 25px; font-weight: 300; }
.f25-w700 { font-size: 25px; font-weight: 700; }

.f30-w300 { font-size: 30px; font-weight: 300; }
.f30-w500 { font-size: 30px; font-weight: 500; }
.f32-w300 { font-size: 32px; font-weight: 300; }
.f36-w300 { font-size: 36px; font-weight: 300; }

.f58-w500 { font-size: 58px; font-weight: 500; }

.f65-w100 { font-size: 65px; font-weight: 100; }
.f65-w300 { font-size: 65px; font-weight: 300; }


/* ------------------------------------------------------------------------- */
/* ------ Pre- & Resets ---------------------------------------------------- */
/* ------------------------------------------------------------------------- */
html, body, h1, h2, h3, h4, h5, h6, p, ul, ol, figure { padding: 0; margin: 0; }
html, body { overflow-x: hidden; }
h1, h2, h3, h4, h5, h6, p, div, a, ul, li, section {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
a, a:link, a:visited, a:hover, a:active { text-decoration: none; outline: none; }
ul, ol { list-style: none; }
img { border: none; }

button {
    outline: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    border: none;
    background-image: url('../img/transparent.gif');
    background-color: transparent;
    display: inline-block;
}

p { letter-spacing: 0.05rem; }

.clear:after { content: ''; display: table; clear: both; }

/* ------------------------------------------------------------------------- */
/* ------ Colors ----------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.whittxt { color: #fff; }
.bluetxt { color: #006ab1 !important; }
.greytxt { color: #666666; }

.bluebg { background-color: #006ab1; }

/* ------------------------------------------------------------------------- */
/* ------ General ---------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.wrapper { max-width: 1000px; margin: 0 auto; }
.h-line { height: 1px; background-color: #858585; }
.vis-none { display: none !important; }
.vis-desk { display: block !important; }

::-moz-selection { background: #006ab1; color: #ffffff }
::selection { background: #006ab1; color: #ffffff }

.col, .col-1-2, .col-1-3, .col-1-4, .col-1-5, .col-1-6, .col-2-5, .col-3-5, .col-4-5 {
    float: left;
    min-height: 1px;
    padding: 0 10px;
}

.col-1-2 { width: 50%; }
.col-1-3 { width: 33.3333333%; }
.col-1-4 { width: 25%; }
.col-1-5 { width: 20%; }
.col-1-6 { width: 16.6666666%; }
.col-2-5 { width: 40%; }
.col-3-5 { width: 60%; }
.col-4-5 { width: 80%; }

.button-container { position: relative; z-index: 10; }

.button {
    cursor: pointer;
    text-align: center;
    min-width: 130px;
    padding: 0 20px;
    display: inline-block;
    height: 35px;
    line-height: 35px;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    position: relative; z-index: 10;
}

.button .button-icon {
    background-image: url('../img/button_dl_icon_green.png');
    background-size: contain;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    height: 20px;
    width: 20px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 3px;
    position: relative;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    top: -2px;
}

.button:hover .button-icon { background-image: url('../img/button_dl_icon_white.png'); }

.green-button,
.green-inverted-button:hover {
    border: 1px solid #4eab25;
    background-color: #4eab25;
    color: #fff;
}

.blue-button,
.blue-inverted-button:hover {
    border: 1px solid #006ab1;
    background-image: url('../img/transparent.gif');
    background-color: transparent;
    color: #006ab1;
}

.white-button {
    border: 1px solid #fff;
    background-image: url('../img/transparent.gif');
    background-color: transparent;
    color: #fff;
}

.green-inverted-button {
    border: 1px solid #4eab25;
    background-image: url('../img/transparent.gif');
    background-color: transparent;
    color: #4eab25;
}

.blue-inverted-button {
    border: 1px solid #006ab1;
    background-color: #006ab1;
    color: #fff;
}

.green-button:hover {
    background-image: url('../img/transparent.gif');
    background-color: transparent;
    color: #4eab25;
}

.blue-button:hover {
    border: 1px solid #006ab1;
    background-color: #006ab1;
    color: #fff;
}

.white-button:hover {
    border: 1px solid #fff;
    background-color: #fff;
    color: #006ab1;
}

.home-services h2,
.team-banner h2,
.about-description h2,
.history-container h2,
.team-container h2,
.brands h2,
.tdp-details h2,
.download-block h2 {
    text-transform: uppercase;
    padding: 45px 0;
    text-align: center;
}

.home-services:after,
.about:after,
.product-desc:after,
.brands > div:after,
.tdp .tdp-block:after,
.contact-banner,
.team-banner,
.about .history-banner,
.timeline .timeline-block-content h3:before,
.news-block:after,
.security-day-infos:after,
.security-partners:after,
.contact-form:after {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.round-overlay {
    overflow: hidden;
    border-radius: 50%;
    max-height: 150px;
    width: 100%;
    margin: auto;
}

.round-overlay img { width: 100%; }

.unchangeable * { cursor: default !important; }

.cursor-pointer { cursor: pointer !important; }

.ellipsis.multiline {
    white-space: normal;
}

/* ------------------------------------------------------------------------- */
/* ------ Topbar ----------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.topbar { color: #808080; padding: 0 15px; position: relative; z-index: 10; }

.topbar a {
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.topbar-block {
    float: left;
    height: 40px;
    line-height: 40px;
    padding-right: 6%;
}

.topbar-block.time-sec-block { padding-right: 0; }

.topbar-block.t-viewer {
    float: right;
    padding: 0;
    text-align: right;
}

.topbar-block.t-viewer a { padding: 0; }
.topbar-block img {
    max-height: 14px;
    max-width: 16px;
    vertical-align: middle;
}

.topbar a:hover,
.topbar a:hover span
    { color: #808080 !important; }

.topbar a.security-day-link { padding: 5px 10px; border: 1px solid transparent; }
.topbar a.security-day-link:hover { color: #006ab1 !important; background-color: #fff; border-color: #006ab1; }

/* ------------------------------------------------------------------------- */
/* ------ Menu ------------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.menu { padding: 0 15px; position: relative; z-index: 10; }
.menu .logo { padding: 20px 0; }

.menu .logo img,
.footer .footer-logo img {
    max-width: 130px;
    height: 47px;
    vertical-align: middle;
}

.menu > ul.menu-block { 
	height: 85px; 
	line-height: 85px; 
	padding: 0; 
	margin-right:auto;
	float:right;
	width:auto;
}

.menu > ul.menu-block > li {
    float: left;
    padding-left:10px;
    padding-right:10px;
    position: relative;
    text-align: right;
    z-index: 10;
    background-image: url('../img/transparent.gif');
    background-color: transparent;
}
.menu > ul.menu-block > li:last-child {
	padding-right:0px;
}

.menu.sec-event > ul.menu-block > li { width: 18%; text-align: center; }

.menu > ul.menu-block > li:first-of-type { padding-right: 20px; }

.menu > ul.menu-block > .lg-indicator {
    border-right: 1px solid #858585;
    border-left: 1px solid #858585;
    cursor: pointer;
    width: 10% !important;
}

.menu > ul.menu-block li span.menu-arrow {
    height: 7px;
    width: 12px;
    display: inline-block;
    vertical-align: middle;
    padding-left: 8px;
    background-image: url('../img/menu_arrow.png');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
}

.menu > ul.menu-block li a.bluetxt span.menu-arrow { background-image: url('../img/menu_arrow_blue.png'); }

.menu > ul.menu-block > li:hover ul { display: block; }

.menu > ul.menu-block li a,
.menu > ul.menu-block li span {
    text-transform: uppercase;
    color: #808080;
    height: 100%;
    width: 100%;
    display: block;
}

.menu > ul.menu-block li a.bluetxt { font-weight: 700; }

.menu > ul.menu-block li img { position: relative; top: -2px; max-height: 7px; margin-left: 5px; }

.menu .mlg-switch,
.menu .submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 10;
    min-width: 100%;
    background-color: #fff;
}

.menu .submenu {
    background-color: #fff;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-left: 22px;
    z-index: 10;
}

.menu .submenu li { line-height: 40px; padding: 0 15px; text-align: center;}
.menu .submenu li a { white-space: nowrap; padding: 0 10px; position: relative; z-index: 10; }

.menu > ul.menu-block li:hover > a,
.menu .submenu li:hover a
    { color: #006ab1; }

.menu .submenu li:not(:last-of-type),
.menu .mlg-switch li:not(:last-of-type)
    { border-bottom: 1px solid #858585; }


/* ------------------------------------------------------------------------- */
/* ------ Slider - General ------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.slick-slide { outline: none; }
.slider .slide, .slider-placeholder {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.slider .slide .slide-content {
    height: 100%;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.slider .slide .slide-content .button-container { margin-top: 25px; position: relative; z-index: 10; }
.slider-placeholder { background-image: url('../img/slider_blue_bg.png'); height: 100px; }
.home-news-slider .slider .slick-dots { bottom: -35px; }

/* ------------------------------------------------------------------------- */
/* ------ Tabs ------------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.tabs {
    max-width: 980px;
    margin: 0 auto;
}

.tabs > ul { overflow: hidden; }
.tabs > ul li { text-align: center; }
.tabs > ul li .tab-image {
    display: inline-block;
    cursor: pointer;
}

.tabs > ul li .service-icon {
    height: 48px;
    width: 55px;
    display: block;
    margin: 0 auto 15px auto;
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
}

.tabs > ul li .tab-image * {
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.tabs > ul li .tab-image:hover span { color: #006ab1; }

.tabs > div:not(:first-of-type) { display: none; }
.tab-content { text-align: center; padding: 20px 60px 0 60px; }
.tab-content .button-container { margin-top: 30px; }

.desktop-tabs { display: block; }
.mobile-tabs { display: none; }


/* ------------------------------------------------------------------------- */
/* ------ Homepage --------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.home-services { padding-bottom: 55px; position: relative; }

.home-services:after,
.about:after,
.product-desc:after,
.brands > div:nth-of-type(even):not(:last-of-type):after,
.brands > div:nth-of-type(odd):not(:last-of-type):after,
.tdp .tdp-block:after,
.news-block:after,
.security-day-infos:after,
.security-partners:after,
.contact-form:after {
    content: ' ';
    background-image: url('../img/shadow.png');
    background-repeat: no-repeat;
    height: 50px;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
}

.security-partners:after,
.brands > div:nth-of-type(even):after {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
    bottom: -50px !important;
}

.contact-banner {
    background-image: url('../img/support_man_banner.jpg');
    height: 350px;
}

.contact-banner .wrapper { height: 100%; position: relative; }

.contact-banner .contact-info {
    position: absolute;
    width: 215px;
    right: 100px;
    top: 40%;
}

.contact-banner.hotline { height: 500px; background-position: -400px; }

.contact-banner.hotline .contact-info {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 45%;
    padding-right: 40px;
    font-size: 23px;
    z-index: 10;
}

.contact-banner.hotline .contact-info a {
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.contact-banner.hotline .contact-info a:hover { color: #808080 !important; }

.contact-banner .button-container { margin-top: 15px; }

.team-banner {
    height: 360px;
    background-image: url('../img/team_banner_bg.png');
}

.team-banner .button-container {
    text-align: center;
    margin-top: 40px;
}

.team-banner .team-member { display: table; padding: 0 15px; }

.team-banner .team-member .team-member-image,
.team-banner .team-member .team-member-desc
    { display: table-cell; vertical-align: middle; }

.team-banner .team-member .team-member-desc * { width: 110px; line-height: 22px; }
.team-banner .team-member .team-member-desc h4 { text-transform: uppercase; }
.team-banner .team-member .team-member-desc { width: 100%; padding: 0 15px; }


.team-banner .team-member .round-overlay {
    width: 130px;
    max-height: 130px;
}

/* Home Slider */
.home-slider .slider-container,
.home-slider .slider,
.home-slider .slider .slide {
    position: relative;
    height: 285px;
}

.home-slider .slider .slide .slide-content > * { max-width: 625px; margin: 0 auto; }

.home-slider .slider .slide .slide-content .button-container,
.home-slider .slider .slide .slide-content .overflow-limit {
    position: absolute;
    left: 300px;
}

.home-slider .slider .slide .slide-content .overflow-limit {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.home-slider .slider .slide .slide-content .button-container { bottom: 45px; }

/* Home News Slider */
.home-news-slider { padding: 65px 15px; }
.home-news-slider .slider-container,
.home-news-slider .slider,
.home-news-slider .slider .slide {
    position: relative;
}
.home-news-slider .slider .slide .slide-content .slide-center-content { width: 50%; }
.home-news-slider .slider .slide .slide-content img { max-height: 450px; }
.home-news-slider .slider .slide .slide-content .button-container { margin-top: 45px; }

.overflow-limit {
    height: 150px;
    overflow: hidden;
}

/* ------------------------------------------------------------------------- */
/* ------ Header-Banner ---------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.header-banner {
    display: table;
    width: 100%;
    height: 285px;
    text-align: center;
    position: relative;
}

.header-banner .logo-container { display: table-cell; vertical-align: middle; }
.header-banner img { max-width: 215px; }

.tabs .header-banner ul {
    position: absolute;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    left: 0;
    right: 0;
    bottom: 0;
}

.tabs .header-banner ul li span,
.tabs .header-banner ul li button {
    color: #fff;
    padding: 15px 25px;
    text-transform: uppercase;
    display: inline-block;
    cursor: pointer;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    position: relative;
    z-index: 10;
}

.tabs .header-banner > ul:not(.unchangeable) li span:not(.selected):hover { font-weight: 700; }
.tabs .header-banner > ul:not(.unchangeable) li span:hover,
.tabs .header-banner ul li span.selected {
    color: #006ab1 !important;
    background-color: #fff;
}

/* ------------------------------------------------------------------------- */
/* ------ News ------------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.news-block { padding: 60px 65px; }

.news-block .news-image {
    height: 320px;
    width: 100%;
    background-size: contain;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}

.news-image-grid {
    /*width: 100%;*/
    margin: 0 -10px;
}

.news-image-grid:after {
    content: '';
    display: table;
    clear: both;
}

.news-image-grid .image-holder {
    position: relative;
    float: left;
    padding: 0 10px 20% 10px;
    width: 20%;
    height: auto;
}

.news-image-grid .news-image {
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 10px;
    right: 10px;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    cursor: pointer;
}


/* ------------------------------------------------------------------------- */
/* ------ Time/Security ---------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.header-banner.security-header { height: 350px; }

.menu-block.security-day-link { display: none; }
.time-sec-menu-block { display: none; }

.security-header .security-img {
    width: 85px;
    position: absolute;
    top: -4px;
    left: 50%;
    -webkit-transform: translate3d(-50%, 0, 0);
    -moz-transform: translate3d(-50%, 0, 0);
    -ms-transform: translate3d(-50%, 0, 0);
    -o-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}

.security-header .security-title {
    display: table;
    margin: 85px auto 0 auto;
    text-transform: uppercase;
    letter-spacing: 10px;
    padding: 0 20px 7px 20px;
    border-bottom: 3px dotted #fff;
}

.security-header .security-subtitle {
    text-transform: uppercase;
    letter-spacing: 5px;
    margin-top: 15px;
}

.security-day-infos {
    position: relative;
    text-align: center;
    font-size: 16px;
    font-weight: 400;
}

.security-day-infos .wrapper { max-width: 1035px; padding: 60px 10px 80px 10px; }

.security-day-infos strong,
.security-day-infos h3,
.security-day-infos h4 {
    color: #006ab1;
}

.security-day-infos h3 { text-transform: uppercase; font-size: 25px; font-weight: 700; margin-bottom: 30px; }
.security-day-infos h4 { font-size: 16px; font-weight: 500; margin-bottom: 30px; }
.security-day-infos p { font-size: 16px; font-weight: 400; margin-bottom: 30px; line-height: 22px; }
.security-day-infos p:last-of-type { margin: 30px 0 0 0; }
.security-day-infos strong { text-transform: uppercase; font-size: 16px; font-weight: 400; display: block; }

.security-partners { padding: 60px 10px; position: relative; }
.security-partners .wrapper { max-width: 770px; margin: 0 auto; }

.security-partners .wrapper > h4 { text-transform: uppercase; text-align: center; margin-bottom: 30px; }

/*.security-partners .slick-track { display: table; }*/
.security-partners .slide { text-align: center; /*display: table-cell; vertical-align: middle; float: none; */}
.security-partners .slide .slide-content { display: table-cell; vertical-align: middle; padding: 0 10px; }
.security-partners .slide figure { position: relative; }
.security-partners .slide img {
    max-height: 200px;
    max-width: 800px;
    margin: 0 auto;
}

.security-partners .slide-content h5 { margin: 20px 0; }
.security-partners .slide-content h6 { margin-bottom: 10px; }
.security-partners .slide-content p:last-of-type { margin-bottom: 30px; }
.security-partners .slide-content .form-btn { margin: 0 auto; }

.security-partners .slick-prev:before, .security-partners .slick-next:before {
    content: ' ';
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 50%;
    width: 20px;
    height: 36px;
    display: block;
    opacity: 1;
}

.security-partners .slick-prev, .security-partners .slick-next { top: 65px !important; height: 36px; width: 20px; }

.security-partners .slick-prev:before { background-image: url(../img/previous_sec.png); }
.security-partners .slick-next:before { background-image: url(../img/next_sec.png); }

.sec-map { padding-top: 60px; }

.contact-form label span {
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.contact-form label.focussed .label-txt { bottom: 22px; font-size: 13px; }

input[type="text"], input[type="submit"], button, select {
    outline: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    border: none;
    background-color: transparent;
}

.contact-form { position: relative; }
.contact-form form { max-width: 640px; margin: 0 auto; padding: 60px 10px 100px 10px; }

.contact-form .select select,
.contact-form input[type="text"] {
    border-bottom: 1px solid #575757;
}

input[type="text"].missing { border-color: #ff362f; }

.contact-form label .error {
    position: absolute;
    right: 10px;
    bottom: -15px;
    font-size: 12px;
    color: #ff362f;
}

.contact-form .btn-block,
.contact-form .select,
.contact-form label {
    position: relative;
    height: 55px;
    width: 50%;
    float: left;
    display: block;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.contact-form .btn-block .form-btn,
.contact-form .select select,
.contact-form .label-txt {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 0;
    width: calc(100% - 20px);
    display: block;
}

.contact-form input[type="text"] {
    position: relative;
    top: 50%;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.contact-form .select { overflow: hidden; border-right: 7px solid #FFF; }
.contact-form .select select { width: 110%; right: auto; }
.contact-form .btn-block .form-btn { width: calc(100% - 18px); }

.contact-form h4 { text-transform: uppercase; text-align: center; }

.sec-map > h4 { text-transform: uppercase; text-align: center; margin-bottom: 30px; }
.secu-address { 
    text-align: center;
    font-style: normal;
    text-transform: uppercase; 
    margin-bottom: 40px; 
    line-height: 28px; 
    letter-spacing: 1px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.contact-form .loading {
    position: absolute;
    left: 50%;
    bottom: 2px;
    height: 30px;
    width: 30px;
    z-index: 10;
    margin-left: -15px;
    display: none;
}

.contact-form .loading img { width: 100%; height: auto; }

.contact-form .success-inscription {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 0;
    width: calc(100% - 15px);
    background-color: #4eab25;
    color: #fff;
    text-align: center;
    padding: 0 20px;
    height: 35px;
    line-height: 35px;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;
    margin-top: 10px;
}


/* ------------------------------------------------------------------------- */
/* ------ About ------------------------------------------------------------ */
/* ------------------------------------------------------------------------- */

.about { position: relative; padding-bottom: 45px; }

.about .tabs { max-width: 100%; }
.about .tabs .tab-content { text-align: left; padding: 25px 0 0 0; }

.about .about-description { display: table; padding-bottom: 75px; }

.about .about-description h3 { padding: 15px 0; }

.about .about-description .founded-desc {
    display: table;
    width: 100%;
    padding: 15px 0 5px 0;
    border-top: 1px solid rgba(0, 106, 177, 0.5);
    border-bottom: 1px solid rgba(0, 106, 177, 0.5);
}

.about .about-description .founded-desc > div:nth-of-type(even) { text-align: right; }

.about .about-description .brief-desc { margin-top: 30px; }
.about .about-description .brief-desc p { padding: 15px 0; }

.about .about-description .founded-desc .image-container,
.about .about-description .founded-desc .image-desc {
    display: table-cell;
    vertical-align: middle;
    padding: 0 10px 10px 10px;
}

.about .about-description .founded-desc .round-overlay { width: 150px; }

.about .about-description .founded-desc .image-desc h4 { margin-bottom: 25px; }

.about .about-description .desc-image-container img { max-width: 100%; margin-top: 60px; }

.about .history-banner { height: 600px; }



.bg-arrow-right, .bg-arrow-left {
    background-size: cover;
    background-repeat: no-repeat;
    height: 900px;
    width: 220px;
    position: absolute;
    z-index: -1;
}

.bg-arrow-right { background-image: url('../img/bgarrow_blue_right.png'); right: 0; top: 57%; background-position: -16% 50%; }
.bg-arrow-left { background-image: url('../img/bgarrow_blue_left.png'); left: 0; top: 16%; background-position: 115% 50%; }

.timeline { overflow: hidden; padding: 45px 0; }

.timeline section { width: 100%; overflow: hidden; }
.timeline section:last-of-type .filler {
    padding: 0 !important;
    margin: 0 !important;
    height: 90px !important;
}

.timeline .filler,
.timeline .timeline-block-content
    { width: 50%; min-height: 1px; padding: 0 25px; position: relative; }

.timeline section:first-of-type .timeline-block-content h3::after {
    position: absolute;
    content: ' ';
    top: 0;
    height: 50%;
    width: 100%;
    left: -30px;
    border-left: 5px solid #fff;
}

.timeline section:nth-of-type(odd) .timeline-block-content,
.timeline section:nth-of-type(even) .filler {
    text-align: left;
    float: right;
    border-left: 1px solid #006ab1;
}

.timeline section:nth-of-type(even) .filler {
    padding-bottom: 1000px;
    margin-bottom: -1000px;
}

.timeline section:nth-of-type(even) .timeline-block-content,
.timeline section:nth-of-type(odd) .filler {
    text-align: right;
    float: left;
}

.timeline .timeline-block-content h3 {
    position: relative;
    display: block;
    margin-bottom: 10px;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.timeline .timeline-block-content h3::before {
    position: absolute;
    top: 50%;
    content: ' ';
    height: 11px;
    width: 11px;
    background-image: url('../img/timeline_circle.png');
    z-index: 10;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.timeline .dot .timeline-block-content h3::before {
    background-image: url('../img/timeline_circle_filled.png');
}

.timeline .dot .timeline-block-content h3 { font-weight: 600; }

.timeline section:nth-of-type(odd) .timeline-block-content h3::before { left: -31px; }
.timeline section:nth-of-type(even) .timeline-block-content h3::before { right: -31px; }

.team-container { position: relative; }
.team-container .row { overflow: hidden; width: 100%; }

.team-container .row .col-1-4 { padding-bottom: 1000px; margin-bottom: -1000px; }


.team-container .team-member { min-height: 425px; }
.team-container .team-member figure { padding: 0 15px; text-align: center; }
.team-container .team-member figure img { width: 100%; }
.team-container .team-member figure figcaption { margin: 20px 0 15px 0; }
.team-container .team-member figure figcaption span { text-transform: uppercase; }

.team-container .team-member { text-align: center; padding: 50px 20px; border-bottom: 4px solid #CFE2EF; }
.team-container .team-member:hover { background-color: #CFE2EF; }

/* ------------------------------------------------------------------------- */
/* ------ Products --------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.products .header-banner .logo-container { vertical-align: top; }
.products .header-banner img { max-height: 58px; margin: 55px 0 10px 0; }

.products .tabs { max-width: 100%; }
.products .tabs .tab-content { padding: 0; }
.products .tabs .col { padding: 0; }
.products .product-container .product-desc { padding-bottom: 55px; position: relative; }

.products .product-container .product-desc p { padding: 45px 65px 0 65px; }

.products .product-container .brands .brand-block,
.products .product-container .tdp .tdp-block,
.news-block
    { display: table; position: relative; width: 100%; }

.products .product-container .brands .wrapper { padding: 60px 65px; }

.products .product-container .brands .logo-container,
.products .product-container .brands .brand-desc,
.products .product-container .tdp .logo-container,
.products .product-container .tdp .tdp-desc {
    display: table-cell;
    vertical-align: middle;
    float: none;
    padding: 0 25px;
}
.products .product-container .tdp .tdp-desc h3 { padding-bottom: 15px; }

.products .product-container .tdp .wrapper { padding: 80px 0 55px 0; }

.products .product-container .tdp .tdp-desc h2 { padding-bottom: 0; }

.products .product-container .tdp-highlights { padding: 70px 40px 90px 40px; text-align: left; }
.products .product-container .tdp-highlights h4 { padding-top: 20px; text-transform: uppercase; }

.products .product-container .tdp-details { text-align: left; padding-bottom: 55px; }

.products .product-container .tdp-details .wrapper{
    padding: 0;
    border-bottom:1px solid #ffffff;
}

.products .product-container .tdp-details h2 { padding: 35px 0 20px 0; }
.products .product-container .tdp-details p { text-align: center; padding-bottom: 45px; }

.products .product-container .tdp-details .accordion h3 {
    border-bottom: 0;
    height: 50px;
    line-height: 50px;
    cursor: default;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    position: relative;
    z-index: 10;
    background-image: url('../img/transparent.gif');
}
.products .product-container .tdp-details .accordion h3.cursor-pointer:hover { font-weight: 700; }

.accordion_content {
    display:none;
    padding-top:20px;
    padding-bottom:20px;
    border-top:1px solid rgba(255,255,255,0.5);
}

.accordion_content {
    display: none;
    padding-top: 20px;
}

.products .product-container .tdp-details .accordion h3 img {
    padding-right:5px;
    padding-left:5px;
    max-height: 9px;
    max-width: 9px;
    -webkit-transition: all .25s;
    -moz-transition: all .25s;
    -ms-transition: all .25s;
    -o-transition: all .25s;
    transition: all .25s;;
}

.products .product-container .tdp-details .accordion h3.open img {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: 50% 55%;
}

.products .product-container .tdp-details .accordion ul {
    padding: 15px 0;
    border-bottom: 1px solid #fff;
    display: none;
}

.products .product-container .tdp-details .accordion ul li { line-height: 25px; }

.products .product-container .brands .logo-container img,
.products .product-container .tdp .logo-container img { max-width: 100%; max-height: 200px; }

/*.products .product-container.single-product .brands .logo-container img { max-height: 150px; }*/

.products .product-container .brands > div:nth-of-type(odd) .logo-container,
.products .product-container .brands > div:nth-of-type(even) .brand-desc {
    text-align: right;
}

.products .product-container .brands > div:nth-of-type(even) .logo-container,
.products .product-container .brands > div:nth-of-type(odd) .brand-desc,
.products .product-container .tdp .tdp-desc {
    text-align: left;
}

.products .product-container .brands .brand-desc h3 { padding-bottom: 15px; }
.products .product-container .brands .brand-desc .button-container { margin-top: 20px; }

.brands .brand-desc .limit-desc .hidden-desc { display: none; }

.single-product .brand-block { padding: 60px 0; }
.single-product .brand-block h1 { padding: 0 0 10px 0; }
.products.single-product .product-container .brands .brand-block .brand-desc  .button-container { margin-top: 10px; }

.single-product .other-products .wrapper { text-align: center; }

.single-product .other-products img { max-width: 100%; margin-bottom: 25px; max-height: 175px; }

.single-product .other-products .button-container { padding-top: 55px; }

.products .single-product.product-container .brands .logo-container,
.products .single-product.product-container .brands .tdp-desc
    { padding: 0 70px; }

.products .single-product .team-member-image { height: 200px; }

.download-block { padding-bottom: 50px; display: none; }
.download-block h2 { padding-bottom: 15px; }
.download-block p { padding-bottom: 35px; text-align: center; }
.download-block img { max-height: 100px; text-align: center; }
.download-block .button-container { padding-top: 20px; margin-top: 0; }

/* ------------------------------------------------------------------------- */
/* ------ Footer ----------------------------------------------------------- */
/* ------------------------------------------------------------------------- */

.footer {
    height: 75px;
    color: #808080;
    display: table;
    width: 100%;
    margin: 45px auto;
    text-align: center;
    padding: 0 15px;
}

.footer .footer-logo,
.footer .footer-infos
    { display: table-cell; vertical-align: middle; overflow: hidden; height: 75px; text-align: left; }
.footer .footer-infos { float: right; text-align: left; }
.footer .col {
    padding: 25px 25px 0 25px;
    float: left;
    padding-bottom: 200px;
    margin-bottom: -200px;
    overflow: hidden;
}

.footer .col img { max-height: 18px; max-width: 24px; vertical-align: middle; margin-right: 8px; }
.footer a {
    color: #808080;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
.footer a:hover { color: #006ab1; }

.footer .footer-infos > div:last-of-type { padding-top: 10px; padding-right: 0; }

.footer .footer-infos > div:nth-last-child(2) img {
    margin: -13px 0 0 0;
    max-height: 40px;
    max-width: 100%;
}

.footer .footer-infos > div:nth-of-type(1),
.footer .footer-infos > div:nth-of-type(2),
.footer .footer-infos > div:nth-of-type(3)
    { border-right: 1px solid #006ab1; }

.form-btn, input[type="submit"].form-btn,
.stretch .show,
.stretch .hide {
  display: block;
  border: 1px solid #4eab25;
  background-color: #4eab25;
  color: #fff;
  cursor: pointer;
  text-align: center;
  width: 130px;
  padding: 0 20px;
  height: 35px;
  line-height: 35px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 700;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  -ms-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  position: relative;
  z-index: 10;
  margin-top: 10px;
}

.stretch .show:hover, .stretch .hide:hover, .form-btn:hover, input[type="submit"].form-btn:hover {
  background-color: inherit;
  color: #4eab25;
}

.morecontent>span:first-child {
  display: none;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  -ms-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
}

h2 .news-date {
  float: right;
  font-size: 15px;
  line-height: 36px;
  vertical-align: middle;
  color: #666;
}
