/* ****************************************
Block style file.
All instructions related to blocks.
**************************************** */




/*
* PAGE - HOME
*************
*/

.block__error {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);
}






/*
* PAGE - HOME
*************
*/

/* Title left | image overlay animation right*/
.block__image-overlay {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
	
	position: relative;
    z-index: 10;
}
.block__image-overlay .image-overlay-container {
    position: absolute;
	right: 0;
	bottom: -100px;
	
	width: 60%;
	height: 460px;
}
.block__image-overlay .image-overlay-container .image-overlay-bg-container {
    background-color: var(--color-gray-light);	
    overflow: hidden;
}
.block__image-overlay .image-overlay-container .image-overlay-bg-container,
.block__image-overlay .image-overlay-container .image-overlay-bg-container .row,
.block__image-overlay .image-overlay-container .image-overlay-bg-container .row .overlay-inner {height:100%;}
.block__image-overlay .image-overlay-container .overlay-inner a {
	height: 100%;

    display: block;
    padding: 20px;

	border-right: 1px solid #fff;

	background-color: rgb(0 0 0 / 40%);
}
.block__image-overlay .image-overlay-container .overlay-inner a p.overlay-title {
	font-size: var(--base-font-size-lg);
}
.block__image-overlay .image-overlay-container .overlay-inner a p.overlay-text {
	font-size: var(--base-font-size);
    opacity: 0;
    transition: opacity 0.2s;

    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 112;
    line-clamp: 12;
    -webkit-box-orient: vertical;
}
.block__image-overlay .image-overlay-container .overlay-inner a img,
.block__image-overlay .image-overlay-container .overlay-inner a svg {
	position: absolute;
    bottom: 20px;
    right: 20px;

    height: 50px;

    opacity: 0;
}
.block__image-overlay .image-overlay-container .overlay-inner a img,
.block__image-overlay .image-overlay-container .overlay-inner a svg image {
    height: 50px;
}

.block__image-overlay .image-overlay-container .overlay-inner:hover {
    transition: box-shadow 0.2s;
    box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, 0.4);
}
.block__image-overlay .image-overlay-container .overlay-inner:hover a p.overlay-title:after {
	content: "";
    display: block;
    border-bottom: 4px solid #fff;
    border-color: inherit;
    padding-bottom: 8px;
    width: 16%;
}
.block__image-overlay .image-overlay-container .overlay-inner:hover a p.overlay-text,
.block__image-overlay .image-overlay-container .overlay-inner:hover a img,
.block__image-overlay .image-overlay-container .overlay-inner:hover a svg{opacity:1;}

.image-overlay-bg-container > .row {display: block;}
.image-overlay-bg-container > .row > div {
    transition: width 0.2s;

    float:left;
    
    width:25%;
    height:100%;
}
.image-overlay-bg-container > .row:hover > div:not(:hover) {width: 0%!important;}
.image-overlay-bg-container > .row > div:hover {
    width: 100%!important;
    z-index:999;
}

@media (max-width: 576px) {
    .block__image-overlay {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: 160px;
    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__image-overlay .image-overlay-container {
        bottom: -55px;

        width: 94%;
        height: 160px;

        z-index: 99;
    }
    .block__image-overlay .image-overlay-container .overlay-inner{background-size:cover!important;}
    .block__image-overlay .image-overlay-container .overlay-inner a p.overlay-title:after {
        content: "";
        display: block;
        border-bottom: 4px solid #fff;
        border-color: inherit;
        padding-bottom: 8px;
        width: 16%;
    }
    .block__image-overlay .image-overlay-container .overlay-inner a p.overlay-text {
        opacity: 1;
        
        -webkit-line-clamp: 3;
        line-clamp: 3;
    }
    
    .block__image-overlay .slick-list,
    .block__image-overlay .slick-track {height: 100%;}
    .block__image-overlay .slick-slide {padding: 0;}
    .block__image-overlay .slick-nav {
        float: left;
        display: block!important;
        padding: 6px 8px;
        width: auto;
        min-width: auto;
    }
    .image-overlay-bg-container > .row > div {width: 100%;}
    .block__image-overlay .prev,
    .block__image-overlay .next {
        font-size: 20px;
        font-weight: bold;
        margin-bottom: 30px;
        display: block;
        float: none;
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__image-overlay {
        padding-bottom: 100px;
    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__image-overlay .image-overlay-container {
        bottom: -80px;
	
        width: 60%;
        height: 270px;

        z-index: 99;
    }
    .block__image-overlay .image-overlay-container .overlay-inner{background-size:cover!important;}
    .block__image-overlay .image-overlay-container .overlay-inner a p.overlay-title:after {
        content: "";
        display: block;
        border-bottom: 4px solid #fff;
        border-color: inherit;
        padding-bottom: 8px;
        width: 16%;
    }
    .block__image-overlay .image-overlay-container .overlay-inner a p.overlay-text {
        opacity: 1;
        
        -webkit-line-clamp: 8;
        line-clamp: 8;
    }
    
    .block__image-overlay .slick-list,
    .block__image-overlay .slick-track {height: 100%;}
    .block__image-overlay .slick-slide {padding: 0;}
    .block__image-overlay .slick-nav {
        float: left;
        display: block!important;
        padding: 6px 8px;
        width: auto;
        min-width: auto;
    }
    .image-overlay-bg-container > .row > div {width: 100%;}
    .block__image-overlay .prev,
    .block__image-overlay .next {
        font-size: 20px;
        font-weight: bold;
        margin: 30px 0;
        display: block;
        float: none;
    }
}




/* 2 rows content section | (1) Title with content left | (1) Floating image right | (2) 3 Columns content */
.block__home-expertise {    
    padding-top: calc(var(--desktop-responsive-gap-top) * 2);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);
	
	position:relative;
}
.block__home-expertise .block__home-expertise-inner {z-index: 15;}
.block__home-expertise .block__home-expertise-inner .content {
    margin-bottom: 0!important;
    min-height: 200px;
}
.block__home-expertise .block__home-expertise-inner .custom-btn img,
.block__home-expertise .block__home-expertise-inner .custom-btn svg image {width: 48px;}
.block__home-expertise .img-right {
    position: absolute;
    right: 0;
    
    z-index: 5;

    width: 28%;
    max-width: 500px;
}
.block__home-expertise .img-bg {
    position: absolute;
    right: 8%;
    top: var(--desktop-responsive-gap-top);

    z-index: 10;

    width: 45%;
    max-width: 800px;
}
.block__home-expertise .img-right img,
.block__home-expertise .img-bg img {width: 100%;}
.block__home-expertise-inner,
.block__home-expertise-inner .row {position:relative;}
.block__home-expertise .list-elements {
    margin-top: 6vw;
    margin-bottom: 100px;
}
.block__home-expertise .list-elements > div {
    display: flex;
    flex-direction: column;
}
.block__home-expertise .list-elements .block-title h5 {
    font-size: var(--base-font-size-lg);
    font-weight: bold;
}
.block__home-expertise .list-elements .custom-btn {margin-top: auto;}
.block__home-expertise .list-elements p {margin: 20px 0;}
.block__home-expertise .list-elements a svg {
    width: 100%;
    overflow: visible;
}

@media (max-width: 576px) {
    .block__home-expertise {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    
        padding-left: 0;
        padding-right: 0;
    }
    .block__home-expertise .img-right {
        right: -5px;
        bottom: auto;
        top: 100px;
        
        width: 35%;
    }
    .block__home-expertise .img-bg {
        right: 20px;
        bottom: auto;
        top: 40px;

        width: 50%;
    }
    .block__home-expertise .list-elements {
        margin-top: 80px;
        margin-bottom: 48px;

        z-index: 99;
    }
    .block__home-expertise .list-elements .block-title {width: 50%;}
    .block__home-expertise .list-elements .content {width: 80%;}
    .block__home-expertise .block__home-expertise-inner .content{
        margin-top: 20px;
        min-height: auto;
    }
    .block__home-expertise .slick-nav {
        display: block!important;
        margin-bottom: 2em;
    }
    .block__home-expertise .slick-slide {
        display: flex!important;
        flex-direction: column;
    }
    .block__home-expertise .with-sideway-title > .row {width: 100%!important;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__home-expertise {    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__home-expertise .img-right {
        right: 0;
        bottom: auto;
        
        width: 30%;
    }
    .block__home-expertise .img-bg {
        right: 40px;
        top: 140px;
    }
    .block__home-expertise .list-elements {
        margin-top: 40px;
        margin-bottom: 48px;

        z-index: 99;
    }
    .block__home-expertise .slick-nav {
        display: block!important;
        margin-bottom: 2em;
    }
    .block__home-expertise .slick-slide {
        display: flex!important;
        flex-direction: column;
    }
}




/* Floating image right | Title with content and buttons  */
.block__home-careers {
	position: relative;

    min-height: 740px;

    overflow-x: hidden;
}
.block__home-careers .content {margin-bottom: 20px;}
.block__home-careers > .row {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
}
.block__home-careers > img {
    position:absolute;
    left:0;
    bottom:0;

    width: 38%;
}

@media (max-width: 576px) {
    .block__home-careers {background-size: contain;}
    .block__home-careers > .row {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: 24em;

        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__home-careers > img {width: 80%;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__home-careers {background-size: contain;}
    .block__home-careers > .row {     
        padding-bottom: 450px;

        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__home-careers > img {width: 50%;}
}
@media (min-width: 2000px) {
    .block__home-careers > img {width: 30%;}
}




/* Latest news */
.block__news:not(#block__news-page) > .row {justify-content: space-between;}








/*
* PAGE - NEWS
*************
*/

/* Adapt news block for full page */
#block__news-page > .row {
    /*padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);*/

    margin-left: -38px;
    margin-right: -38px;
}
#block__news-page > .row > .col-4 {
    padding-left: 38px;
    padding-right: 38px;
}
#block__news-page .news-image {background-color: #efefef;}








/*
* PAGE - CAREERS
****************
*/

/* 3 columns content | (1) Titles | (2) Content | (3) image */
.block__culture {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);
	
	position:relative;

    overflow: hidden;
}
.block__culture .block__culture-inner {
    padding-left: var(--desktop-gap-container);
    padding-right: var(--desktop-gap-container);
}
.block__culture .block__culture-title.block-title {padding-bottom: 4em;}
/*.block__culture .block__culture-inner .block-title.fixed-height {height: 235px}*/
.block__culture .block__culture-inner .block-title h5 {
    cursor: pointer;
}
.block__culture .block__culture-inner .block-title h5:hover,
.block__culture .block__culture-inner .block-title h5.active {
    transition: font-size 0.2s;
    font-size: 2.6em;
}

.vertical-tab:not(.active) {display: none;}
.vertical-tab:not(:first-of-type) .content {    
    opacity: 1!important;
    animation: none;
}


@media (max-width: 576px) {
    .block__culture {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
    .block__culture .block-title {margin-bottom: calc(var(--mobile-responsive-gap-bottom) / 2);}
    .block__culture .block__culture-inner {
        padding-left: 0;
        padding-right: 0;
    }
    .block__culture .block__culture-inner .block-title h5.active {font-size: 2em;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__culture .block__culture-inner .block-title h5.active {font-size: 2em;}
}
@media (min-width: 768px) and (max-width: 1024px) {
    .block__culture .block__culture-inner {
        padding-right: 0;
    }
}




/* Title and content left | Floating images right*/
.block__about {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);
	
    min-height: 700px;

	position:relative;

    background-color: var(--base-color);
}

.block__about h1,
.block__about p,
.block__about .sideway-title hr {}
.block__about > .img-right {
    position: absolute;
    right: 0;
    bottom: 0;

    z-index: 5;

    width: 18%;
}.block__about .sideway-title hr {background-color: var(--color-gray);}
.block__about > .img-bg {
    position: absolute;
    right: 8%;
    top: -60px;

    z-index: 10;
    
    width: 30%;
}
@media (max-width: 576px) {
    .block__about {
        min-height: auto;
        
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
    .block__about > .img-right,
    .block__about > .img-bg {display: none;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__about {
        min-height: auto;

        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
    .block__about > .img-right {display: none;}
}




/* Title and filter left | Job table right */
.block__job {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);
	
	position:relative;
}
.block__job .block__job-inner .table-container > table {
    width: 100%;
}

.block__job .block__job-inner .table-container > table > td {padding: 28px 0;}
.block__job .block__job-inner .table-container table td {padding:12px 0;}
.block__job .block__job-inner .table-container table td.job-title {
    width: 30%;

    font-weight: bold;
    text-transform: uppercase;
}
.block__job .block__job-inner .table-container table td.job-division,
.block__job .block__job-inner .table-container table td.job-department,
.block__job .block__job-inner .table-container table td.job-shift,
.block__job .block__job-inner .table-container table td.job-location {
    width: 15%;
    text-align: center;
}
.block__job .block__job-inner .table-container table td.job-action {width: 10%;}
.block__job .block__job-inner .table-container table td.job-action img {
    height: 30px;

    float: right;
}
.block__job .block__job-inner .btn-block {
    margin-top: 40px;

    text-align: center;
}
.reset-filter {
    font-size: var(--base-font-size-md);
}

@media (max-width: 576px) {
    .block__job .block__job-inner .table-container {
        padding-top: 60px;
        padding-left: var(--mobile-gap-container-large)!important;
    }
    .block__job .block__job-inner .table-container table tbody .job-row {
        display: flex;
        flex-direction: column;
        align-items: stretch;

        padding: 12px 0;

        border-bottom: 1px solid rgb(255,255,255);
    }
    .block__job .block__job-inner .table-container .job-row > td {
        width: 100%!important;
        text-align: left!important;

        padding: 5px 0;
    }
    .block__job .block__job-inner .table-container .job-action{text-align: right!important;}

    .block__job .block__job-inner .table-container table td.job-division,
    .block__job .block__job-inner .table-container table td.job-department,
    .block__job .block__job-inner .table-container table td.job-shift,
    .block__job .block__job-inner .table-container table td.job-location {
        text-align: left;
    }
    .block__job .block__job-inner .table-container table td.job-division,
    .block__job .block__job-inner .table-container table td.job-department {padding-bottom: 14px;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__job .block__job-inner .table-container {
        padding-top: 60px;
        padding-left: var(--mobile-gap-container-large)!important;
    }
}








/*
* PAGE - PRODUCTS
*****************
*/

/* Scope section | Title and content left | Floating content right */
.block__scope {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
	
	position: relative;
    z-index: 15;

    background-color: var(--color-gray);
}
.block__scope .block-title.border-left {margin-bottom: 30px;}
.block__scope .block-title.border-left h5 {
    font-size: 16px;
    text-transform: uppercase;
}
.block__scope p {color: #fff;}
.block__scope .content-overlay-container {
    position: absolute;
    top: 26%;
    right: 0;

    padding: 8%;

    width: 44%;

    /*background: url(../img/bg_scope.jpg);*/
    background-size: cover!important;
    background-repeat: no-repeat;
    /*box-shadow: inset 0 0 0 2000px rgb(0 0 0 / 40%);*/
}
.block__scope .content .block-title-icon {margin: 30px 0;}
.block__scope .content .block-title-icon p {text-transform: uppercase;}

@media (max-width: 576px) {
    .block__scope {padding-bottom: 58vw;}
    .block__scope .content-overlay-container {
        top: auto;

        width: 92%;
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__scope {padding-bottom: 48vw;}
    .block__scope .content-overlay-container {
        top: auto;
        
        width: 92%;
    }
}




/* Solution section | 2 rows content | (1) 2 columns content | (2) Floating content right */
.block__solution {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
	
	position: relative;
    z-index: 10;

    background-color: var(--color-gray-light);
}
.block__solution p {color: var(--color-gray);}
.block__solution .content{margin-bottom: 25%;}
.block__solution .content .counter{font-weight: bold;}
.block__solution .key-features {    
    position: relative;

    margin-bottom: -265px;

    width: -webkit-fill-available;
    
    padding: var(--desktop-gap-container);

    background-color: var(--color-blue);
}
.block__solution .key-features p,
.block__solution .key-features li {
    color: #fff;

    padding-bottom: 8px;
}
.block__solution .tab-title button {
    display: none;

    background: none;
    border: none;
    outline: none;

    font-size: 28px;
    font-weight: bold;
}

@media (max-width: 576px) {
    .block__solution {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
    .block__solution .content {margin-bottom: 10%;}
    .block__solution > .row > [class*="col-"]:last-of-type .content {margin-bottom: 30%;}
    .block__solution .tab-title {
        display: flex;
        align-items: center;
        justify-content: space-between;

        margin-bottom: 20px;
    }
    .block__solution .tab-title .counter {
        width: 10%;
        margin: 0;

        font-size: 1.4em;
    }
    .block__solution .tab-title .content-title {width: 80%;}
    .block__solution .tab-title .tab-action {width: 10%;}
    .block__solution .tab-title button {display: initial;}

    .block__solution .key-features { 
        /*position: absolute;
        right: calc(var(--desktop-gap-container-xlarge) * -1);*/

        width: calc(var(--desktop-gap-container-xlarge) + 100%);

        padding: var(--mobile-gap-container-large);
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__solution {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
    .block__solution .content{margin-bottom: 10%;}
    .block__solution > .row > [class*="col-"]:last-of-type .content {margin-bottom: 30%;}
    .block__solution .tab-title {
        display: flex;
        align-items: center;
        justify-content: space-between;

        margin-bottom: 20px;
    }
    .block__solution .tab-title .counter {
        margin: 0;

        font-size: 1.4em;
    }
    .block__solution .tab-title button {display: initial;}
    .block__solution .key-features { 
        position: absolute;
    }
}




/* 3 columns content with icon title left padding */
.block__parts {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
}
.block__parts h3 {color: var(--color-gray);}
.block__parts h6,
.block__parts h4,
.block__parts p {
    color: var(--color-gray);

    font-weight: normal;
}
.block__parts > .row {padding-left: 12vw;}
.block__parts > .row > [class*="col-"]:first-of-type {padding-left: 0;}
.block__parts .block__parts-inner, .block__parts .block__parts-inner a {display: flex;}
.block__parts .block__parts-inner .part-image {    
    width: 60%;

    margin-right: 28px;
}
.block__parts .block__parts-inner .part-image img {width: 100%;}
.block__parts .block__parts-inner h6:after, 
.block__parts .block__parts-inner h4:after, 
.block__parts .block__parts-inner p:after {border-color: inherit!important;}

@media (max-width: 576px) {
    .block__parts {padding-top: var(--mobile-responsive-gap-top);}
    .block__parts > .row {padding-left: 0}
    .block__parts .block__parts-inner {margin-bottom: 28px;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__parts {padding-top: var(--mobile-responsive-gap-top);}
    .block__parts > .row {padding-left: 0}
    .block__parts .block__parts-inner {margin-bottom: 28px;}
}
@media (min-width: 1400px) {
    .block__parts > .row {padding-left: 8vw;}
}




/* Floating image right | Title and content left */
.block__services {
    position: relative;

    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);

    min-height: 600px;
}
.block__services h5,
.block__services p {color: #fff;}
.block__services .content {margin-bottom: 40px;}
.block__services > img {
    position: absolute;
    left: 0;
    bottom: 0;

    width: 38%;
    max-width: 640px;
}
.block__services .flex-container {align-items: flex-start;}
.block__services .flex-container > img {padding-right: 28px;}

@media (max-width: 576px) {
    .block__services {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__services {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
}





/**/
.block__cta-2rows {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);

    background-color: var(--color-blue);
}
.block__cta-2rows > .row {align-items: center;}
.block__cta-2rows > .row button,
.block__cta-2rows > .row a {
    float: none;

    margin-top: 20px;
}

@media (max-width: 576px) {
    .block__cta-2rows {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}
@media (min-width: 576px) and (max-width: 768px) {
}





/* CTA section that overlays prev and next div */
.block__cta-overlay {
    /*margin-top: 4rem;
    margin-bottom: 4rem;*/

    position: relative;
}
.block__cta-overlay .block__cta-overlay-container {
    margin-left: var(--desktop-gap-container-large);
    margin-right: var(--desktop-gap-container-large);

    padding: 20px 60px;

    width: -webkit-fill-available;
    
    position: absolute;
    top: -5rem;
    z-index: 2;

    background-color: var(--color-blue);
}
.block__cta-overlay  .block__cta-overlay-container .block__cta-overlay-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 30px 0 30px 15px;
}
.block__cta-overlay  .block__cta-overlay-container .block__cta-overlay-inner h6 {
    width: 60%;
    padding: 0;
}
.block__cta-overlay  .block__cta-overlay-container .row > div:first-of-type .block__cta-overlay-inner h6 {width: 80%;}
.block__cta-overlay  .block__cta-overlay-container .row > div:first-of-type .block__cta-overlay-inner {
    border-right: 3px solid #fff;

    padding-right: 60px;
    padding-left: 0;
}

@media (max-width: 576px) {
    .block__cta-overlay {margin-top: 0rem;}
    .block__cta-overlay  .block__cta-overlay-container .block__cta-overlay-inner {
        padding-left: 0!important;
        padding-right: 0!important;
    }
    .block__cta-overlay  .block__cta-overlay-container .block__cta-overlay-inner h6 {font-size: 1.5em;}
    .block__cta-overlay  .block__cta-overlay-container .row > div:first-of-type .block__cta-overlay-inner {
        border-right: none;
        border-bottom: 3px solid #fff;
    }
    .block__cta-overlay .block__cta-overlay-container {top: -7rem;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__cta-overlay {margin-top: 0rem;}
    .block__cta-overlay  .block__cta-overlay-container .block__cta-overlay-inner {
        padding-left: 0!important;
        padding-right: 0!important;
    }
    .block__cta-overlay  .block__cta-overlay-container .block__cta-overlay-inner h6 {font-size: 1.5em;}
    .block__cta-overlay  .block__cta-overlay-container .row > div:first-of-type .block__cta-overlay-inner {
        border-right: none;
        border-bottom: 3px solid #fff;
    }
}



/* Related product section */
#block__related-product {
    padding-top: var(--desktop-responsive-gap-top);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
}
#block__related-product > .row {padding:0}
#block__related-product .slick-slide {height: auto;}
#block__related-product .slick-nav {display: none;}

@media (max-width: 576px) {
    #block__related-product {
        padding-top: var(--mobile-responsive-gap-top);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    #block__related-product .slick-nav {
        display: flex;
        justify-content: space-evenly;
        align-items: center;
    }
    #block__related-product .slick-nav .slick-arrow {
        font-size: 28px;
        font-weight: bold;
        color: var(--color-font-blue);
    }
    #block__related-product .slick-nav .counter {
        color: var(--color-gray);
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    #block__related-product {padding-top: var(--mobile-responsive-gap-top);}
    #block__related-product .slick-nav {
        display: flex;
        justify-content: space-evenly;
    }
}








/*
* PAGE - JOB OFFER
******************
*/

/**/
.block__job-offer {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
	
	position:relative;

    background-color: var(--base-color);
}
.block__job-offer h5,
.block__job-offer p,
.block__job-offer ul,
.block__job-offer ul li {color: var(--color-gray);}

.block__job-offer .block__form {
    padding-left: 0;
    padding-right: 0;
}

@media (max-width: 576px) {
    .block__job-offer {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}


/*
* PAGE - SHOW DEFAULT EDITOR
******************
*/

/**/
.block__default-content {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
	
	position:relative;
}
.block__default-content p,
.block__default-content ul,
.block__default-content ul li {color: var(--color-gray);}

@media (max-width: 576px) {
    .block__default-content {    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__default-content {    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}





/*
* PAGE - CONTACT
****************
*/
#block__form-contact.block__form .submit {margin-top: 36px;}








/*
* MULTI PAGES BLOCK
*******************
*/

/*
* Large slider carousel
* Pages: home, careers
*/
.block__carrousel-header {
    position: relative;
    z-index: 99;

    min-height: 100vh;

    background-color:  var(--color-gray);
    overflow: hidden;
}
.block__carrousel-header .block__carrousel-header-container {
    position: relative;

    padding-top: 9em;
    padding-bottom: 9em;
    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);
    
    background-repeat: no-repeat;
    background-size: cover;

    min-height: 100vh;
}
.block__carrousel-header .carousel-slick-nav {
    position: absolute;
    left: 40%;
    top: -25px;
}
.block__carrousel-header .block__carrousel-header-container .division-content {margin-bottom: 2vw;}
/*
.block__carrousel-header .block__carrousel-header-container .breadcrumb {margin-bottom: 30px;}
.block__carrousel-header .block__carrousel-header-container .breadcrumb span {font-size: 20px;}
.block__carrousel-header .block__carrousel-header-container .breadcrumb span:before {
    content: "<";

    padding-right: 20px;
}
*/
.block__carrousel-header .slick-track {display: flex!important;} 
.block__carrousel-header .slick-slide {height: inherit!important;} 
.block__carrousel-header .slick-slide .with-sideway-title {height: 100%;} 
.block__carrousel-header .block__carrousel-header-container .content {margin-bottom: 20px;}
.block__carrousel-header .block__carrousel-header-container:not(.product-carrousel) {box-shadow: inset 0 0 0 2000px rgb(0 0 0 / 40%);}
.block__carrousel-header .down-arrow {
    position: absolute;
    bottom: 70px;
    left: 30px;

    cursor: pointer;

    transition: bottom 0.2s;
}
.block__carrousel-header .down-arrow:hover {bottom: 60px;}
.block__carrousel-header .divisions {
    display: flex;
    flex-wrap: wrap;
}
.block__carrousel-header .divisions img {
    height: 3em;

    padding-right: 14px;
}
.block__carrousel-header .product-cat {
    margin: 12px 0 10px 0;
    text-transform: uppercase;
    font-weight: bold;
}
.block__carrousel-header.header-product .content p {font-weight: bold;}
.block__carrousel-header .block__carrousel-header-container.image-right > img {
    position: absolute;
    bottom: 0;
    right: 0;

    /*width: 40%;*/
    height: 80%;
    opacity: 1;
}
.block__carrousel-header .block__carrousel-header-container.image-right .rounded-img-holder {
    position: absolute;
    bottom: 0;
    right: 0;

    opacity: 1;

    background-color: #fff;

    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: flex-start;

    border-radius: 100%;
    width: 44vw;
    height: 44vw;
}
.block__carrousel-header .block__carrousel-header-container.image-right .rounded-img-holder img {width: 100%;}
.block__carrousel-header .block__carrousel-header-container.image-right:not(.on-screen) > img {right: -8%; opacity: 0;}
.block__carrousel-header .block__carrousel-header-container.image-right:not(.on-screen) .rounded-img-holder {
    right: -8%; 
    bottom: -10%; 

    opacity: 0;
}
.block__carrousel-header .slick-nav .prev,
.block__carrousel-header .slick-nav .next {font-size: 20px;}
.block__carrousel-header .slick-nav .prev {padding-right: 14px;}
.block__carrousel-header .slick-nav .next {padding-left: 14px;}
.block__carrousel-header .slick-nav {min-width: 70px;}
.block__carrousel-header .carousel-counter,
.block__carrousel-header .slick-nav {padding-top: 2vw; padding-bottom: 0;}
.block__carrousel-header .carousel-counter {
    display: flex;
    margin-left: 30px;
}
.block__carrousel-header .carousel-counter hr {
    width: 50px;
    height: 2px;
    border: none;
    background-color: #fff;
    margin-left: 20px;
    margin-right: 20px;
}

.block__carrousel-header .slick-track,
.block__carrousel-header .slick-slide {min-height: 100vh;} 

@media (max-width: 576px) {
    .block__carrousel-header .block__carrousel-header-container {
        position: relative;
        
        padding-top: 7em;
        padding-bottom: 22em;
    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__carrousel-header .block__carrousel-header-container.image-right .rounded-img-holder {
        bottom: 4%!important;

        width: 72vw;
        height: 72vw;
    }
    .block__carrousel-header .down-arrow {
        left: 8px;
        bottom: 12px;
    }
    .block__carrousel-header .carousel-slick-nav {
        left: auto;
        width: 100%;
    }

    .block__carrousel-header.header-product .with-sideway-title {padding-left: 0!important;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__carrousel-header .block__carrousel-header-container {
        position: relative;

        padding-bottom: 8em;
    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__carrousel-header .block__carrousel-header-container.image-right > img {
        width: 60%;

        right: -5%
    }
    .block__carrousel-header .down-arrow {
        left: 8px;
    }
}




#block__carrousel-header-product .block__carrousel-header-container {
    background: none;
    background-color: var(--color-blue);
}
#block__carrousel-header-product .block__carrousel-header-container.image-right > img {
    width: 50%;
}

@media (max-width: 576px) {
    #block__carrousel-header-product .with-sideway-title {padding-left: 0;}
}
@media (min-width: 576px) and (max-width: 768px) {
    #block__carrousel-header-product .with-sideway-title {padding-left: 0;}
}




/*
* Small banner
* Pages: *
*/
.block__banner-header {
    position: relative;
}
.block__banner-header .block__banner-header-container {
    position: relative;

    padding-top: 180px;
    padding-bottom: 180px;

    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);

    background-repeat: no-repeat;
    background-size: cover;
}
.block__banner-header .block__banner-header-container .flex-container {
    align-items: center;

    margin-bottom: 2em;
}
.block__banner-header .block__banner-header-container .flex-container > div {padding-right: 1.6em;}
.block__banner-header .block__banner-header-container .flex-container .square-box {float: left;}
.block__banner-header .block__banner-header-container .flex-container img {
    height: 2.4em;

    padding-right: 16px;
}
.block__banner-header .block__banner-header-container.slick-slide {height: auto!important;}
.block__banner-header .block__banner-header-container .content {
    margin-bottom: 20px;
}

.block__banner-header .block__banner-divisions {padding-top: 80px;}
.block__banner-header .block__banner-divisions .division-title {
    font-weight: bold;
    text-transform: uppercase;

    margin: 0;
}
.block__banner-header .job-back-button {
    display:block;

    padding: 10px 0 20px 0;
}
.block__banner-header .apply-now {
    margin-top: 60px;
}

@media (max-width: 576px) {
    .block__banner-header .block__banner-header-container {
        position: relative;
    
        padding-top: 120px;
        padding-bottom: 80px;
    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__banner-header:not(:first-of-type) .block__banner-header-container {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
    .block__banner-header .block__banner-divisions h5,
    .block__banner-header .block__banner-divisions > .row > [class*="col-"] {margin-bottom: 18px;}
    .block__banner-header .block__banner-header-container .flex-container {display: block;}
    .block__banner-header .block__banner-header-container .flex-container .division-logo {margin-top: 12px;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__banner-header .block__banner-header-container {
        position: relative;
    
        padding-top: 120px;
        padding-bottom: 80px;
    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__banner-header .block__banner-divisions h5,
    .block__banner-header .block__banner-divisions > .row > [class*="col-"] {margin-bottom: 18px;}
}




/* 
* 1 news block
* Pages: home, news
*/
.block__news {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
}
.block__news .btn-center {
    padding-top: var(--desktop-responsive-gap-top);

    text-align: center;
}
.block__news .block__news-inner {
    padding-bottom: 60px;

    display: flex!important;
    flex-direction: column;

    height: 100%;
}
.block__news .block__news-inner .news-category {margin-bottom: 36px;}
.block__news .block__news-inner .news-image img {width: 100%}
.block__news .block__news-inner .square-box {float: right;}
.block__news .block__news-inner .news-info {
    min-height: 110px; 

    padding-top: 20px;
    padding-bottom: 10px;

    margin: 0!important;

    justify-content: space-between;
}
.block__news .block__news-inner .news-info .company-logo {
    width: 60%;
    
    overflow: hidden;

    position: relative;
}
#block__news-page .block__news-inner .news-info .company-logo {width: 50%;} /* Adjust width for 3 col content */
#block__news-page .row > article {margin-bottom: var(--desktop-responsive-gap-bottom);}
#block__news-page .row .block__news-inner {margin-bottom: 0;}
#block__news-page .row .block__news-inner .custom-btn {margin-top: auto;}
.block__news .block__news-inner .news-info .company-logo .infite-logo {
    /*width: 1000px;
    animation: scroll 40s linear infinite;*/
    display: flex;
}
.block__news .block__news-inner .news-info .company-logo img {
    /*max-width: 100%;*/
    height: 2em;
}
.block__news .block__news-inner .news-info .company-logo .the-logo {
    float: left;
    padding-right: 8px;
}
.block__news .block__news-inner .news-info .company-logo span {
    float: left;
    padding: 6px;
    display: block;
}
.block__news .block__news-inner .news-info .company-logo .the-logo:first-of-type {padding-left: 0;}
.block__news .block__news-inner .news-info .company-logo .the-logo:last-of-type {padding-right: 0;}
.block__news .block__news-inner .news-title {
    margin-bottom:20px;
}
.block__news .block__news-inner .content {
    margin-bottom:20px;
}
.block__news .button-container {margin-top: auto;}

@media (max-width: 576px) {
    .block__news {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);

        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__news .button-container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .block__news .slick-nav {
        display: block!important;
        padding-top: 20px;
    }
    .block__news .prev,
    .block__news .next {
        font-size: 20px;
        font-weight: bold;
    }
    .block__news .prev{padding-right: 8px;}
    .block__news .next{padding-left: 8px;}
    
    .block__news .btn-center {padding-top: var(--mobile-responsive-gap-top);}

    #block__news-page .row > article:not(:last-of-type) {margin-bottom: var(--mobile-responsive-gap-bottom);}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__news {      
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);

        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__news .slick-slide {height: auto;}
    .block__news .slick-nav {
        display: block!important;
        padding-top: 32px;
    }
    .block__news .prev,
    .block__news .next {
        font-size: 20px;
        font-weight: bold;
    }
    .block__news .prev{padding-right: 8px;}
    .block__news .next{padding-left: 8px;}
    
    .block__news .btn-center {padding-top: var(--mobile-responsive-gap-top);}

    #block__news-page .row > article:not(:last-of-type) {margin-bottom: var(--mobile-responsive-gap-bottom);}
}

/* Section with title left and image overlay right */
.block__news-pager {
    margin-top: 60px;

    text-align: center;
}





/* 
* 1 product block
* Pages: solutions, products
*/
.block__product {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);

    background-color: var(--color-gray-light);
}
.block__product .filter-row > div {
    padding-right: 38px;
    padding-left: 38px;
}
.block__product .filter-row > div .btn {
    float:right;
    margin-top: -10vh;
}
.block__product .block__product-inner {
    margin-bottom: 60px;

    display: flex;
    flex-direction: column;
}
.block__product .block__product-inner .product-status {position: relative;}
.block__product .block__product-inner .product-status > p {
    position: absolute;
    top: -12px;
    left: 0;

    padding: 8px 20px;

    background-color: #000;

    font-size: 0.6em;
    font-weight: bold;
    color: #fff;
}
.block__product .block__product-inner .product-image {background-color: #fff;}
.block__product .block__product-inner .product-image a {
    text-align: center;
    overflow: hidden;
    max-height: 200px;
    display: block;
}
.block__product .block__product-inner .product-image a img {
    max-width: 100%;
    max-height: 200px;
}
.block__product .block__product-inner .custom-btn {margin-top: auto;}
.block__product .block__product-inner .product-name,
.block__product .block__product-inner .product-cat,
.block__product .block__product-inner .custom-btn span {
    color: var(--color-gray);
    font-weight: bold;
}
.block__product .block__product-inner .custom-btn span {text-align: right;}
.block__product .block__product-inner .product-name {
    font-size: 1.5em;
    font-weight: bold;

    margin: 0;

    padding-top: 20px;
}
.block__product .block__product-inner .product-cat {
    font-size: 0.8em;
    font-weight: bold;
    text-transform: uppercase;
}
.block__product .block__product-inner .content {
    margin-bottom:20px;
}

.block__product > .row {
    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);

    margin-left: -38px;
    margin-right: -38px;
}
.block__product > .row > .col-4 {
    padding-left: 38px;
    padding-right: 38px;
}

@media (max-width: 576px) {
    .block__product {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__product > .row > .col-4 {
        padding-left: 0;
        padding-right: 0;
    }

    
    .block__product .filter-row > div {
        padding-right: 0;
        padding-left: 0;
    }
    .block__product .filter-row > div .btn {
        float: none;
        margin-top: -8vh;
        width: 100%;
        justify-content: center;
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__product {      
        padding-top: var(--desktop-responsive-gap-top);
        padding-bottom: var(--desktop-responsive-gap-bottom);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}

/* Section with title left and image overlay right */
.block__product-pager {
    margin-top: 60px;

    text-align: center;
}

@media (max-width: 576px) {
    .block__product-pager {
        margin-top: 0;
        margin-bottom: 20px;
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__product-pager {     
        margin-top: 0;
        margin-bottom: 20px;
    }
}




/* 
* GM7 brands 
* Pages: home, careers
*/
.block__brands {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);

    background-image: url(../img/bg-brand-carousel.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}
.block__brands .block__brands-container {
    justify-content: space-between;
    flex-wrap: nowrap;
}
.block__brands .brand-item {
    padding-top: 20px;
    padding-bottom: 20px;

    text-align: center;
}
.block__brands .brand-item img {
    height: 3.5em;
    width: auto;
}
.block__brands .brand-item:hover img {
    transition: transform 0.2s;
    transform: scale(1.1);
}

@media (max-width: 576px) {
    .block__brands {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);

        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__brands .block__brands-container {flex-wrap: wrap;}
    .block__brands .block-title {text-align: center;}
    .block__brands .block-title h5 {font-size: var(--base-font-size)!important;}    
    .block__brands .block-title h5 hr {
        height: 4px!important;
        
        float: none!important;

        margin: auto;

        transform: rotate(270deg);
        -webkit-transform: rotate(270deg);
        -moz-transform: rotate(270deg);
        -ms-transform: rotate(270deg);
        -o-transform: rotate(270deg);
        filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
    }
    .block__brands .block-title h5 span{
        margin-top: 50px;
        display: block;
    }
    .block__brands .brand-item {
        width: 100%;
        text-align: center;
        
        padding-top: 8px;
        padding-bottom: 0px;
    }
    .block__brands .brand-item img {
        height: 4em;
        width: auto;
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__brands {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__brands .block__brands-container {flex-wrap: wrap;}
    .block__brands .block-title {text-align: center;}
    .block__brands .block-title h5 {font-size: var(--base-font-size)!important;}    
    .block__brands .block-title h5 hr {
        height: 4px!important;
        
        float: none!important;

        margin: auto;

        transform: rotate(270deg);
        -webkit-transform: rotate(270deg);
        -moz-transform: rotate(270deg);
        -ms-transform: rotate(270deg);
        -o-transform: rotate(270deg);
        filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
    }
    .block__brands .block-title h5 span{
        margin-top: 50px;
        display: block;
    }
    .block__brands .brand-item {
        width: 100%;
        text-align: center;

        padding-top: 8px;
        padding-bottom: 0px;
    }
    .block__brands .brand-item img {
        height: 4em;
        width: auto;
    }
}




/* 
* Filter row
* Pages: news, solutions 
*/
.block__filters {
    padding: 20px initial;
    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);

    background: #fff;
}
.block__filters .block__filters-inner {
    display: flex;

    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);
}
.block__filters .block__filters-inner p,
.block__filters .block__filters-inner a,
.block__filters .block__filters-inner select {
    padding: 16px;

    color: #000;
}
.block__filters .block__filters-inner > div:first-child {max-width: 8%;}
.block__filters .block__filters-inner > div:first-child p {padding-left: 0!important;}
.block__filters .block__filters-inner > div {flex: 1 1 0;}
.block__filters .custom-select-wrapper {max-width: 20%;}
.block__filters .custom-select-wrapper .select-dropdown {border:none;}

@media (max-width: 576px) {
    .block__filters .block__filters-inner > div:first-child {
        position: relative;

        max-width: 100%;
        width: 100%;
    }
    .block__filters .block__filters-inner > div:first-child p {
        padding-left: 20px!important;
    }
    .block__filters .block__filters-inner > div:first-child:after {
        content: "";
        position: absolute;
        background: url(../img/icon-filter.JPG) no-repeat;
        top: 0;
        right: 0;
        display: block;
        height: 100%;
        width: 100%;
        background-position: right;
        background-size: 8%;
    }
    
    .block__filters .block__filters-inner {
        flex-direction: column;
        padding: 0!important;
    }
    .block__filters .block__filters-inner .custom-select-wrapper {
        display: none;
        width: 100%;
        max-width: 100%;
    }
    .block__filters .block__filters-inner .custom-select-wrapper select {
        border: 1px solid var(--color-gray);
        border-left: none;
        border-right: none;
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__filters, .block__filters .block__filters-inner {    
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__filters .select-wrapper {display: none;}
    .block__filters .block__filters-inner > div:first-child {
        position: relative;

        max-width: 100%;
        width: 100%;
    }
    .block__filters .block__filters-inner > div:first-child:after {content: "";}
}




/* 
* Carousel - Content left and image right
* Pages: products 
*/
.block__carousel-content {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);
    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
}
.block__carousel-content span,
.block__carousel-content b,
.block__carousel-content p {color: var(--color-gray);}
.block__carousel-content .block__carousel-content-container img {width: 98%;}
.block__carousel-content .slick-slide {height: auto;}

@media (max-width: 576px) {
    .block__carousel-content {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__carousel-content .slick-nav {
        text-align: center;
        width: 45%;

        margin: auto;
        margin-top: 28px;
    }
    .block__carousel-content .slick-nav .prev {float: left;}
    .block__carousel-content .slick-nav .next {float: right;}
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__carousel-content {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
}




/* 
* Social share row
* Pages: job offer, news single
*/
.block__social-share {
    padding-top: 2rem;
    padding-bottom: 1.8rem;

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
	
	position:relative;

    background-color: var(--color-gray-light);
}
.block__social-share-inner {
    display: flex;    
    align-items: center;
}
.block__social-share p {padding-bottom: 4px;}
.block__social-share p,
.block__social-share a,
.block__social-share svg {color: var(--color-gray);}
.block__social-share svg {fill: var(--color-gray);}
.block__social-share a {padding-left: 28px;}

@media (max-width: 576px) {
    .block__social-share {
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}

@media (min-width: 576px) and (max-width: 768px) {
    .block__social-share {
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}





/* 
* Forms
* Pages: job offer form, contact
*/
.block__form {
    padding-left: var(--desktop-gap-container-large);
    padding-right: var(--desktop-gap-container-large);
	
	position:relative;

    background-color: var(--base-color);
}
.block__form .block__form-section-title {
    font-weight: bold;
    text-transform: uppercase;

    margin-bottom: 10px!important;
}
.block__form h5,
.block__form p,
.block__form label {
    color: var(--color-gray);
}
.block__form .form-group {margin-bottom: 48px;}

.block__form select, .block__job-offer select,
.block__form input, .block__job-offer input,
.block__form textarea, .block__job-offer textarea {
    display: block;

    width: 100%!important;
    padding: 8px 16px!important;
}
.block__form select,
.block__job-offer select {
    padding-top: 12px!important;
    padding-bottom: 12px!important;
}
.block__form textarea,
.block__job-offer textarea {
    height: 220px;

    resize: none;
}

/* for all forms */
.block__form-title{
    font-weight: bold;
    font-size: 1.6em;

    margin-bottom: 48px!important;
}
.block__form-file-input input[type=file] {display: none;}
.block__form-file-input-inner .file-name {
    width: 50%!important;

    float: left;
}
.block__form-file-input-inner .btn {
    margin-left:20px;

    float: left;
}
/* Fix Gravity Form */
form legend,
form .gfield_html {
    color: var(--color-gray);
}
.gform_wrapper.gravity-theme .ginput_container_address span {flex: 0 0 100%!important;}
#field_submit {
    display: inline-block!important;
    position: relative;
}
#field_submit button {
    position: absolute;
    bottom: 0;
    right: 0;
}
.gform_footer {
    flex-direction: row-reverse;
    align-items: center;
}

.gform_wrapper #gform_ajax_spinner_2 {display: none;}
.ginput_container_consent {padding: 20px 0;}
.ginput_container_consent input[type=checkbox] {
    float: left;
    width: auto!important;
    margin-top: 4px!important;
}
.ginput_container_consent label {
    padding-left: 20px;
    display: inline;
}
.gfield {position: relative;}
/* .gfield > .gfield_description {
    position: absolute;
    top: 90px;
    padding: 0!important;
} */

.gform_ajax_spinner {
    width: 40px !important;
    margin-right: 2rem;
}







.gfield .gfield_consent_description {
    position: inherit;
    top: 0;
    padding: 20px!important;
}

@media (max-width: 576px) {
    .block__form-file-input-inner .file-name {
        width: 100%!important;
        float: none;
    }
    .block__form-file-input-inner .btn {
        float: right;
        margin-top: 20px;
    }
    #field_submit button {
        position: relative;
    }
}

@media (min-width: 576px) and (max-width: 768px) {}




/* 
* Full width content
* Pages: * 
*/
.block__content-full {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
    
    background-size: cover;
    background-repeat: no-repeat;
}
.block__content-full .btn {margin-top: 20px;}


/* Specific for news page */
#block__content-news {
    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
}
/***********/

@media (max-width: 576px) {
    .block__content-full {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);

        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}
@media (min-width: 576px) and (max-width: 768px) {
    .block__content-full {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}




/* 
* 2 columns content
* Pages: * 
*/
.block__content-img-2col,
.block__content-img-2colz {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
    
    background-size: cover;
    background-repeat: no-repeat;
}
.block__content-img-2col * {color: var(--color-gray);}


@media (max-width: 576px) {
    .block__content-img-2col,
    .block__content-img-2colz{
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .block__content-img-2col.image-right img,
    .block__content-img-2colz.image-right img {padding-top: var(--mobile-responsive-gap-top);} 
}
@media (min-width: 576px) and (max-width: 768px) {
}




/*
*   Infinite Carousel
*   Pages: *
*/
.block__infinite-carousel {
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);
    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);

    height: fit-content;

    overflow-x: hidden;
}
.block__infinite-carousel .slick-list {overflow: visible;}
.block__infinite-carousel .slick-nav {padding: 24px 0;}
.block__infinite-carousel .slick-nav * {color: var(--color-font-blue);}
.block__infinite-carousel .infinite-slide {}
.block__infinite-carousel .infinite-slide a {
    height:300px;
    overflow: hidden;
}
.block__infinite-carousel .infinite-slide a img {
    height: 100%;

    margin: auto;
}

@media (max-width: 576px) {
    .block__infinite-carousel {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}
@media (min-width: 576px) and (max-width: 768px) {
}




/* 
* Tab content
* Pages: * 
*/
.block__tabs {overflow-x: hidden;}
.block__tabs .block__tabs-title {  
    padding-top: var(--desktop-responsive-gap-top);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
}
.block__tabs .block__tabs-link {
    display: flex;

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);

    overflow-x: auto;
}
.block__tabs .block__tabs-link a {
    padding: 16px;

    font-weight: bold;
}
.block__tabs .block__tabs-link a:first-of-type {padding-left: 0;}
.block__tabs .block__tabs-link a:last-of-type {padding-right: 0;}
.block__tabs .block__tabs-link a.active,
.block__tabs .block__tabs-link a:hover {text-decoration: underline;}

.block__tabs .block__tabs-link a {color: var(--color-gray);}
.block__tabs .block__tabs-content .tab-content:not(.active) {display: none;}
.block__tabs .block__tabs-content {    
    padding-top: calc(var(--desktop-responsive-gap-top) / 2);
    padding-bottom: var(--desktop-responsive-gap-bottom);

    padding-left: var(--desktop-gap-container-xlarge);
    padding-right: var(--desktop-gap-container-xlarge);
}

@media (max-width: 576px) {
    .block__tabs .block__tabs-link {
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
}

@media (min-width: 576px) and (max-width: 768px) {}



/* Tabs vertical */
.tabs-vertical .block__tabs-title {
    padding-bottom: 0;
}
.tabs-vertical .tabs-holder > div:first-of-type {padding-right: 0;}
.tabs-vertical .tabs-holder > div:last-of-type {padding-left: 0;}
.tabs-vertical .block__tabs-link {
    margin-top: 4em;
    margin-bottom: 4em;    

    padding-right: var(--desktop-gap-container-large);

    flex-direction: column;
}
.tabs-vertical .block__tabs-link a { 
    display: block;

    width: 100%;

    font-weight: 100;

    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
}
.tabs-vertical .block__tabs-link a.active { 
    text-decoration: none;

    font-size: 150%;
}
.tabs-vertical .block__tabs-content {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: var(--desktop-gap-container-large);

    margin-top: 4em;
    margin-bottom: 4em; 

    border-left: 1px solid var(--color-gray-light);
}
.tabs-vertical .slick-nav {        
    display: none;
}

@media (max-width: 576px) {
    .tabs-vertical {
        padding-top: var(--mobile-responsive-gap-top);
        padding-bottom: var(--mobile-responsive-gap-bottom);
    }
    .tabs-vertical .block__tabs-title {
        padding-top: 0;        
        padding-left: var(--mobile-gap-container-large);
        padding-right: var(--mobile-gap-container-large);
    }
    .tabs-vertical .tabs-holder > div:first-of-type {padding-right: 15px;}
    .tabs-vertical .tabs-holder > div:last-of-type {padding-left: 15px;}
    .tabs-vertical .block__tabs-link {
        margin-top: 1em;
        margin-bottom: 1em;
        margin-left: var(--mobile-gap-container-large);
        margin-right: var(--mobile-gap-container-large);
        
        padding-right: 0;
        padding-left: 0;

        flex-direction: row;

        border-bottom: 2px solid #fff;
    }
    .tabs-vertical .block__tabs-link a,
    .tabs-vertical .block__tabs-link a.active { 
        text-decoration: none;
    
        font-size: 100%;
        font-weight: bold;

        padding-bottom: 0.6em;
    }
    .tabs-vertical .block__tabs-content {
        margin-top: 0;
        margin-bottom: 2em;

        border:none;

        padding-left: var(--mobile-gap-container-large);
    }
    .tabs-vertical .block__tabs-content .tab-content {display: block!important;}
    .tabs-vertical .block__tabs-content .tab-content h1 {
        font-size: 1.2em;
        margin-bottom: 1em;
    }
    .tabs-vertical .slick-nav {        
        display: block;

        padding-right: var(--mobile-gap-container-large);
        padding-left: var(--mobile-gap-container-large);
    }
}

@media (min-width: 576px) and (max-width: 768px) {}
