/*!
Theme Name: Suba
Theme URI: https://suba.pt/
Author: Suba the Grouth Agency
Author URI: https://suba.pt/
Description: Suba is a theme created by Suba Creative Agency
Template: betheme
Version: 2.0
*/
:root {	
  --main: #0e0832 ;
  --sec: #89b8eb ;
  --light: #fff ;  
  --container: 1340px ;
}
body { 
    --mfn-column-gap-bottom: 0;
    opacity: 0.1;
    transition: opacity .3s ease-out;
    font-family: 'DM Sans';
}
body.active {
    opacity: 1;
}
p {
    margin: 0;
}
.content_wrapper .button {
    margin: 0;
}
h1, h2, h3, a {
    font-family: 'DM Sans' !important;
}

/******* HEADER *******/ 
div#Top_bar {
    border: 0;
}
#Top_bar .logo {
    float: left;
    margin: 0;
}
#Top_bar #logo img.svg {
    width: 160px;
}
#Top_bar #logo {
    display: block;
    height: auto !important;
    line-height: 1 !important;
}
body.page.mfn-header-scrolled .mfn-header-main,
.mfn-header-scrolled .mfn-header-main {
    opacity: 0 !important;
    display: block !important;
    transition: .3s ease-in-out;    
    pointer-events: none;
    user-select: none;
    background: var(--sec) !important;    
}
body.page.mfn-header-scrolled .mfn-header-main.header-scrolled,
.mfn-header-scrolled .mfn-header-main.header-scrolled {
    display: block !important;        
    pointer-events: all !important;
    user-select: initial !important;
    opacity: 1 !important;
}
body:not(.home) header#Header {
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 2;
}
body:not(.home).header-classic #Top_bar {
    background: transparent !important;
}
body:not(.home).header-classic.mfn-header-scrolled #Top_bar {
    background: var(--main) !important;
}
#Top_bar .menu > li > a:hover {
    color: #F6F6F6;
}
#Top_bar .menu > li.current-menu-item > a {
    color: #F6F6F6;
}
/******* FOOTER *******/ 
ul.footer-menu {
    margin: 0;
    list-style: none !important;
    display: flex;
    gap: 20px;
    justify-content: flex-end;
}
ul.footer-menu li {
    margin: 0;
}
.icon-social .icon_wrapper {
    width: fit-content;
    height: auto;
    border-radius: unset;
    margin: 0 !important;
    padding: 0 !important;
}
.icon-social .icon {
    display: flex;
    align-items: center;
}
.icon-social .icon_box:hover .icon_wrapper i {
    top: unset !important;
}
.icon-social .icon_box {    
    padding: 0;
}
/******* MAIN SLIDER *******/ 
.n2-ss-slider .n2-ss-layers-container.n2-ss-slide-limiter {
    max-width: var(--container) !important;
}
.n2-ss-slider .n2-ss-layer[data-sstype=content] {
    max-width: 100% !important;
}
@media only screen and (min-width: 992px){
    .n2-ss-slide-background {
        width: 60% !important;        
        right: 0;
        left: unset !important;
    }
}
.mfn-main-slider .n2-ss-slider-4.n2-ow {
    background-image: url(/wp-content/uploads/2024/02/SLIDER_OVERLAY_IMAGE-1.svg);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: 0% 100%;
/*    background-color: #0a0627;*/
}
.n2-ss-section-main-content {
    justify-content: stretch;
    height: 100% !important;
}
.n2-ss-layer.n2-ow.n2-ss-layer--block.n2-ss-has-self-align {
    height: 100%;
    margin: 0 !important;
}
.n2-ss-slider .n2-ss-layer[data-sstype=slide] {
    padding: 0 !important;
}
.n2-ss-layer-row-inner > .n2-ss-layer:nth-child(1) {
    align-items: baseline !important;
    flex-direction: row !important;
    padding-top: 120px;
}
.n2-ss-layer-row-inner > .n2-ss-layer:nth-child(1) .n2-ss-layer-col.n2-ss-layer-content {
    flex-direction: row !important;
    flex-wrap: wrap;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 20px !important;
    flex: 1 1 auto;
    height: auto !important;
    max-width: 565px;
}
.n2-ss-layer-row-inner > .n2-ss-layer:nth-child(1) .n2-ss-layer-col.n2-ss-layer-content h3 {
    max-width: 350px;
}
.n2-ss-layer-row-inner > .n2-ss-layer:nth-child(2) {
    width: 50vw !important;
    margin-right: calc(0px - ((100vw - var(--container)) / 2)) !important;
}
.n2-ss-layer-row-inner > .n2-ss-layer:nth-child(2) .n2-ss-layer.n2-ow {
    height: 100%;    
}
.n2-ss-slider .n2-ss-item-image-content {
    height: 100%;
    clip-path: polygon(10% 0%, 100% 0, 100% 100%, 0% 100%);
}
.n2-ss-slider .n2-ss-layer-with-background {
    padding: 0 !important;
    height: 100%;
}
.n2-ss-slider .n2-ss-item-image-content {
    display: flex;
    width: 100% !important;
}
div#n2-ss-1 .n2-ss-slide {
    height: calc(100vh - 80px) !important;
}
.n2-ss-slider .n2-ss-item-image-content {
    overflow: hidden;
    position: relative;
}
.n2-ss-slider .n2-ss-slider-wrapper-inside .n2-ss-slider-controls {
    left: calc((100vw - var(--container)) / 2) !important;
    width: fit-content !important;
    bottom: 25px;
}
div#n2-ss-1 .nextend-bullet-bar .n2-bullet {
    width: 14px;
    height: 14px;
    border-radius: 0;
    padding: 0 !important;
    background: var(--sec);
    opacity: 1;
    border: 1px solid #fff !important;
}
div#n2-ss-1 .nextend-bullet-bar .n2-bullet.n2-active, div#n2-ss-1 .nextend-bullet-bar .n2-bullet:hover {
    background: #fff;
    opacity: 1;
}
div#n2-ss-1 .nextend-arrow {
    background: #fff;
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.n2-ss-slider .n2-ss-button-container a.n2-ow {
    padding: 9px 20px !important;
    color: var(--sec) !important;
    border: 1px solid var(--sec) !important;
    background-color: transparent !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    border-radius: 0 !important;
    letter-spacing: 0px !important;
}
.n2-ss-slider a.n2-ow:hover {
    background-color: var(--sec) !important;
    color: var(--main) !important;
}
.n2-ss-slider h1 {
    font-size: 60px !important;
    line-height: 60px !important;
}
.n2-ss-slider h3 {
    font-size: 32px !important;
    line-height: 40px !important;    
}



/******* BTNS *******/
.linkedin-btn a{
	font-size: 16px;
    line-height: 16px;
}
.linkedin-btn a:hover{
	background-color: white;
	color: #0e0832;
}

.btn {
    width: fit-content !important;
    padding: 23px 45px !important;
    border-radius: 50px;
    transition: .3s ease-in-out;
}
/*MAIN*/
.btn-main {
    background: var(--main) !important;
    color: var(--light) !important;
}
.btn-main:hover {
    background: var(--sec) !important;
    color: var(--light) !important;
}
/*SEC*/
.btn-sec {
    background: var(--sec) !important;
    color: var(--light) !important;
}
.btn-sec:hover {
    background: var(--main) !important;
    color: var(--light) !important;
}
/*BORDER MAIN*/
.btn-border-main {
    background: transparent; !important;
    border: 1px solid var(--main) !important;
    color: var(--main) !important;
}
.btn-border-main:hover {
    background: var(--main) !important;
    color: var(--light) !important;
}
/*BORDER SEC*/
.btn-border-sec {
	background: transparent; !important;
    border: 1px solid var(--sec) !important;
    color: var(--sec) !important;
}
.btn-border-sec:hover {
    background: var(--sec) !important;
    color: var(--light) !important;
}
.button-default .button .button_icon:after {
    display: none;
}
.button-default .button.has-icon .button_label {
    margin-left: 20px;
}


/**************/
/** HOMEPAGE **/
/**************/


.grid-area-1 .mfn-queryloop-item-wrapper:nth-child(even) {
    background: #89b8eb15;
}
.grid-area-2 .mfn-queryloop-item-wrapper:nth-child(odd) {
    background: #89b8eb15;
}
.grid-area-1 .mfn-queryloop-item-wrapper,
.grid-area-2 .mfn-queryloop-item-wrapper {
    height: 100%;
    align-items: flex-end;
}
.grid-area-1 .column.column_image,
.grid-area-2 .column.column_image {
    align-self: baseline;
}
.grid-area-1 .column.column_heading, .grid-area-2 .column.column_heading {
    height: 65px;
    display: flex;
    align-items: flex-end;
}
.grid-area-1 a.button,
.grid-area-2 a.button {
    text-decoration: underline !important;
}



.slider-projetos .swiper {
    overflow: inherit;
}
.slider-projetos .mask {
    display: none !important;
}
.slider-projetos .image_links {
    display: none !important;
}
.slider-projetos .image_frame:hover img {
    transform: scale(1.05) !important;
}
.slider-projetos .mfn-queryloop-item-wrapper {
    justify-content: space-between;
}
.slider-projetos .image_wrapper a {
    height: 500px;
    display: flex;
}
.slider-projetos .image_wrapper picture {
	display: flex;
	width: 100%;
}
.slider-projetos .image_wrapper img {
    object-fit: cover;
	height: 100% !important;
}


.grid-evolucao .title b {
    display: block;
    color: var(--main);
    font-weight: 400;
}



.cta-trabalhar::before {
    visibility: visible;
    background: var(--sec);
    width: 100%;
    height: 90px;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
}
.cta-trabalhar::after {
    visibility: visible;
    background: #F6F6F6;
    width: 180px;
    height: 91px;
    position: absolute;
    bottom: -1px;
    left: calc(50% - 170px);
    z-index: 2;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
.cta-trabalhar .column.column_image {
    clip-path: polygon(0 0, calc(100% - 400px) 0, 100% 100%, 0% 100%);
}
.wrap-cta-image {
/*    clip-path: polygon(0 0, calc(100% - 410px) 0, 100% 100%, 0% 100%);*/
    clip-path: polygon(calc(100% - 410px) 0%, calc(100% - 80px) calc(100% - 90px), 100% 100%, 0% 100%, 0% 0%);
}


/***************/
/** SOBRE NÓS **/
/***************/

.grid-vantagens .mfn-wrapper-for-wraps {
    display: flex;
    gap: 40px 20px;
    overflow: hidden;
}
.grid-vantagens .mfn-queryloop-item-wrapper {
    width: calc(25% - 15px) !important;
}
.grid-vantagens .mfn-wrapper-for-wraps .mfn-queryloop-item-wrapper:nth-child(-n+5)::before {
    content: '';
    position: absolute;
    left: 0;
    top: calc(100% + 20px);
    width: 120%;
    height: 1px;
    background: var(--sec) !important;
}


.tab-visao .ui-tabs-nav {
    display: flex;
    gap: 40px;
}
.tab-visao .ui-tabs-nav::before,
.tab-visao .ui-tabs-nav::after {
    display: none;    
}
.tab-visao .ui-tabs-panel {
    padding: 40px 0 0 !important;
    max-width: 450px;
}


.grid-evolucao_sobre-nos .title b {
    display: block;
    color: #fff;
    font-weight: 400;
}


.slider-historia .swiper {
    overflow: inherit !important;
}
.slider-historia .swiper-slide {
    height: auto !important;
    background: rgba(137,184,235,0.50);
}
.mfn-builder-content .swiper-pagination-bullet-active {
    transform: unset;
}



.client_wrapper {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}
.clients_slider ul.slick-slider .slick-list.draggable {
    overflow: inherit;
}
.clients_slider ul.slick-slider li img {
    max-height: unset;
    width: 100%;
    height: auto !important;
    padding: 0 35px;
    filter: grayscale(1);
    opacity: .5;
}
.blog_slider_header.clearfix {
    display: none;
}
ul.clients .client_wrapper {
    height: unset;
}
.clients_slider ul.slick-dots button {
    background: rgba(137,184,235,0.30);
    width: 70px !important;
    height: 5px;
    font-size: 0;
    padding: 0 !important;
    margin: 0 !important;
}
.clients_slider ul.slick-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    gap: 10px;
    margin-top: 20px;
}
@media (min-width:1025px) {
    .clients_slider ul.slick-dots { 
        display: none !important;
    }
}
.clients_slider ul.clients li {
    width: fit-content;
}
.clients_slider ul.slick-dots .slick-active button {
    background: var(--sec);
}
.clients_slider::before {
    display: block !important;
    content: '';
    position: absolute;
    right: 100%;
    top: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 1;
}

.vantagens-colaboradores-1 .column.column_heading {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.vantagens-colaboradores-2 .column.column_heading {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.vantagens-colaboradores-1 .mfn-queryloop-item-wrapper:last-child,
.vantagens-colaboradores-2 .mfn-queryloop-item-wrapper:last-child {
    margin-bottom: 0 !important;
}



/*************/
/** PESSOAS **/
/*************/

.grid-evolucao .column_icon_box_2,
.grid-evolucao .mcb-item-icon_box_2-inner,
.grid-evolucao .mfn-icon-box {
    height: 100%;
}
.grid-evolucao .mfn-icon-box .desc-wrapper {
    display: block;
}



/**************/
/** SERVIÇOS **/
/**************/
.grid-especialidades .mfn-queryloop-item-wrapper:nth-child(odd) {

}

.grid-especialidades .mfn-queryloop-item-wrapper:nth-child(even) {
    
}

.main-image .image_wrapper {
    height: 325px;
    display: flex;
}
.main-image .image_wrapper picture {
	display: flex;
	width: 100%;
}
.main-image .image_wrapper img {
    object-fit: cover;
    object-position: center;
}


.grid-especialidades .mfn-queryloop-item-wrapper:nth-child(even) .column.two-fifth {
    flex: 1;
}

.grid-especialidades .mfn-queryloop-item-wrapper:nth-child(even) .column.two-fifth.column_column .mcb-column-inner {
    display: flex;
    align-items: center;
    padding: 40px 60px;
}

.grid-especialidades .mfn-queryloop-item-wrapper:nth-child(odd) .column.two-fifth {
    order: -1;
}
.grid-especialidades .mfn-queryloop-item-wrapper:nth-child(odd) .two-fifth.column_image {
    order: 3;
}
.grid-especialidades .mfn-queryloop-item-wrapper:nth-child(odd) .column.two-fifth.column_column .mcb-column-inner {
    display: flex;
    align-items: center;
    padding: 40px 60px 40px 0;
}
.grid-especialidades .mfn-queryloop-item-wrapper:nth-child(odd) .especialidade-icon .mcb-item-image-inner {
    background: #0e083240 !important;
}

.grid-especialidades .mfn-queryloop-item-wrapper .mcb-item-image-inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}



/*************/
/** PESSOAS **/
/*************/

/*.grid-sustentabilidade .column_icon_box_2,
.grid-sustentabilidade .mcb-item-icon_box_2-inner,
.grid-sustentabilidade .mfn-icon-box {
    height: 100%;
}*/
.grid-sustentabilidade .mfn-icon-box .desc-wrapper {
    display: block;
}



.slider-engivallis .slick-slide {
    margin: 0 20px 0 0;
    clear: none;
}
.slider-engivallis .slick-arrow {
    display: none !important;
}
.slider-engivallis .slick-list {
    overflow: inherit !important;
    max-width: 100%;
}
ul.slick-dots {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    margin-top: 40px;
}
.slick-dots button {
    padding: 0;
    width: 40px;
    height: 6px;
    background: rgba(31,57,171,0.25);
    font-size: 0;
}
.slick-dots .slick-active button {
    background: var(--main);
}
.slick-dots button:hover {
    background: var(--main);
}

@media (min-width: 768px) {
    ul.slick-dots {    
        justify-content: center;
    }
    .slick-dots button {    
        width: 70px;
    }
}

.slider-engivallis h4 {
    color: #fff !important;
}

/*****************/
/** SINGLE VAGA **/
/*****************/
.info-vaga p {
    margin: 10px 0;
}
.hide-input {
    opacity: 0;
    display: none;
}


.dz-filename {
    color: #fff !important;
}
.dz-size {
    color: #fff !important;
}
div.wpforms-container div.wpforms-uploader .dz-preview .dz-progress {
    background-color: #fff !important;
}
div.wpforms-container div.wpforms-uploader .dz-preview .dz-progress .dz-upload {
    background-color: #d3d3d3;
}
div.wpforms-container div.wpforms-uploader .dz-preview .dz-remove {
    color: #fff;
}
div.wpforms-container div.wpforms-uploader .dz-preview .dz-remove:after, div.wpforms-container div.wpforms-uploader .dz-preview .dz-remove:before {
    background: #fff;
}

div.wpforms-container-full .wpforms-confirmation-container-full, div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
    background: var(--sec);
    color: var(--main);
    border: 0;
}




/**************/
/** PROJETOS **/
/**************/

.portfolio-item .desc {
    padding: 20px 0 0 !important;
}
.portfolio_group .portfolio-item .desc .title_wrapper {
    padding: 0 !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.portfolio-item .desc .entry-title {
    margin: 0;
}
.portfolio-item a.button {
    font-size: 14px;
    line-height: 14px;
    border-style: solid;
    background-color: rgba(0, 0, 0, 0);
    border-color: var(--main);
    color: var(--main);
    border-width: 1px 1px 1px 1px;
    flex: 0 0 auto;
}
.portfolio-item a.button:hover {
    background: var(--main);
    color: #fff;
}
.portfolio_group.grid .portfolio-item {    
    margin: 0 1% 40px;
}
.portfolio-item .image_links {
    display: none !important;
}
.if-overlay .image_frame:hover .image_wrapper img, .if-overlay .image_frame:focus .image_wrapper img, .if-overlay .image_frame.hover .image_wrapper img {
    top: 0;
    -webkit-transform: scale(1.08);
    -moz-transform: scale(1.08);
    -o-transform: scale(1.08);
    transform: scale(1.08);
}
.style-simple #Filters .filters_wrapper ul li.current-cat a:after {
    display: none;
}
ul.categories {
    border: 0 !important;
}
.style-simple #Filters .filters_wrapper ul li a:hover, .style-simple #Filters .filters_wrapper ul li.current-cat a {
    color: var(--sec) !important;
    text-decoration: underline;
    text-underline-offset: 7px;
    font-weight: 400;
}
.style-simple #Filters .filters_wrapper ul li a {
    color: var(--main);
    font-size: 22px;
    line-height: 26px;
    font-weight: 400;
}
.portfolio-item img.scale-with-grid {
    max-width: 100%;
    height: auto;
    width: 100%;
}

/********************/
/** SINGLE PROJETO **/
/********************/



/*.portfolio-video iframe {
    object-fit: cover;
    background: red !important;
}

.portfolio-video video {
    object-fit: cover;
    background: #fff;
}*/

.projeto-galeria .image_frame {
    margin-bottom: 50px;
}
.fixed-nav.fixed-nav-next,
.fixed-nav.fixed-nav-prev {
    display: none;
}


/***************/
/** CONTACTOS **/
/***************/

.grid-contactos .column_icon_box_2,
.grid-contactos .mcb-item-icon_box_2-inner,
.grid-contactos .mfn-icon-box {
    height: 100%;
}
.grid-contactos .mfn-icon-box .desc-wrapper {
    display: block;
}
.bg-contactos .mcb-background-overlay {
    background-size: 220px auto;
}




/**********************************/
/**  FORM CANDIDATURA ESPONTÂNEA **/
/**********************************/
.wpforms-container{
    margin: 0px !important;
}
.wpforms-field{
    padding: 0px !important;
    padding-bottom: 15px !important;
}
.wpforms-container .wpforms-field-layout .wpforms-field {
    padding-bottom: 0 !important;
}
.wpforms-container .wpforms-field-layout {
    padding-bottom: 15px !important;
}
div.wpforms-container .wpforms-form  input[type=text], 
div.wpforms-container .wpforms-form  input[type=range], 
div.wpforms-container .wpforms-form  input[type=email], 
div.wpforms-container .wpforms-form  input[type=url], 
div.wpforms-container .wpforms-form  input[type=tel], 
div.wpforms-container .wpforms-form  input[type=number], 
div.wpforms-container .wpforms-form  input[type=password], 
div.wpforms-container .wpforms-form  input[type=file], 
div.wpforms-container .wpforms-form  select, 
div.wpforms-container .wpforms-form  textarea, 
div.wpforms-container .wpforms-form  .wpforms-field-row, 
div.wpforms-container .wpforms-form  .choices {
    background-color: transparent !important;
    border-radius: 0px !important;
    color: var(--sec) !important;
    border: 1px solid #89b8eb80 !important;    
    resize: none;
}
div.wpforms-container input[type=text]:focus, div.wpforms-container input[type=tel]:focus, div.wpforms-container input[type=number]:focus,  div.wpforms-container input[type=email]:focus, div.wpforms-container textarea:focus{
    box-shadow: none !important;
    /*border-bottom: 1px solid #DA2A1F !important;*/
}
div.wpforms-container input::placeholder,
div.wpforms-container textarea::placeholder {
    color: var(--sec) !important;
    opacity: .50 !important;
}
div.wpforms-container label {
    color: var(--sec) !important;
    opacity: .5;
    margin-top: 8px !important;
}
span.wpforms-required-label {
    display: none;
}
div.wpforms-container-full button[type=submit] {
    background: var(--sec) !important;
    color: var(--main) !important;
    border: 0px solid var(--sec) !important;
    border-radius: 0px !important;
    width: 100%;
    align-items: center !important;
    justify-content: center;
}
div.wpforms-container-full button[type=submit]:hover{
    background: #ffffff !important;
    color: var(--sec) !important;    
    border-radius: 0px !important;
}
div.wpforms-container-full .wpforms-form em.wpforms-error {
    font-weight: 300 !important;
    font-size: 10px !important;
    line-height: 10px !important;
    margin-top: 5px !important;
    color: var(--wpforms-label-error-color) !important;
    padding: 0 !important;
    position: relative !important;
}
div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox ul li input+label {
    padding-left: 5px !important;
    padding-top: 2px !important;
    font-size: 12px;
    line-height: 12px !important;
    color: var(--sec);
    margin-top: 0 !important;
}
.wpforms-field-label-inline a{
    font-size: 12px;
    line-height: 12px !important;
    color: var(--sec);
    text-decoration: underline;
}
.wpforms-field-label-inline a:hover{
    color: var(--sec);
}
.wpforms-container .wpforms-submit-container {
    margin-top: 0 !important;
}
div.wpforms-container-full input[type=checkbox]:before, div.wpforms-container-full input[type=radio]:before {
    border-color: var(--sec) !important;
    border-width: 0px !important;
    border-style: solid !important;
    background-color: #89b8eb63 !important;
    background-image: none !important;
    border-radius: 0px !important;
    width: 16px !important;
    height: 16px !important;
}
div.wpforms-container-full input[type=checkbox]:checked:before, div.wpforms-container-full input[type=radio]:checked:before {
    margin: 0;
    border-color: unset !important;
    box-shadow: unset !important;
    background-color: var(--sec) !important;
    border: 0px solid var(--sec) !important;
}
div.wpforms-container-full input[type=checkbox]:checked:after {
    border-left: 0px solid var(--sec) !important;
    border-bottom: 0px solid var(--sec) !important;
}
div.wpforms-container-full input[type=checkbox]:focus:before, div.wpforms-container-full input[type=radio]:focus:before {
    border: 0px solid var(--sec) !important;
    box-shadow: unset !important;
}
#politica span, #politica b, #politica p{
    font-size: 16px !important;
    line-height: 24px !important; 
}
div.wpforms-container-full .wpforms-form label.wpforms-error:before, div.wpforms-container-full .wpforms-form em.wpforms-error:before{
    display: none;
}
div.wpforms-container-full .wpforms-confirmation-container-full, div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
    background: var(--sec);
    color: var(--main);
    font-size: 16px;
    line-height: 1.25;
    border: 0;
}
.wpforms-uploader {
    background: transparent !important;
    border: 1px solid #89b8eb80 !important;
    border-radius: 0 !important;
    color: var(--sec) !important;
}
div.wpforms-container-full .wpforms-field-file-upload .wpforms-uploader.wpforms-focus, div.wpforms-container-full .wpforms-field-file-upload .wpforms-uploader:focus-within {
    border: 1px solid var(--sec) !important;
    box-shadow: unset !important;
}
.dz-message svg {
    /* display: none; */
    color: var(--sec) !important;
    opacity: 1 !important;
}
.wpforms-uploader span.modern-title {
    color: var(--sec) !important;
}
div.wpforms-container .wpforms-form select:required:invalid {
  color: #89b8eb80 !important;
}
option[value=""][disabled] {
  display: none;
}
option {
  color: var(--main) !important;
}
.dz-message {
    opacity: .5;
}
div.wpforms-container-full .wpforms-confirmation-container-full, div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
    background: var(--sec) !important;
    border: 0 !important;    
}
div.wpforms-container-full .wpforms-confirmation-container-full  p, div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) p {
    color: var(--main) !important;
    margin: 0 !important;
}


.politica-text p {
    font-size: 16px;
    line-height: 22px;
    margin: 5px 0;
}


/*MENU LINGUA*/
li.trp-language-switcher-container a > span {
    padding-right: 0 !important;
}
.menuo-no-borders #Top_bar .menu > li > a span.trp-ls-language-name {
    font-weight: 700 !important;
    /*border: 1px solid var(--sec)!important;
    border-width: 1px !important;
    padding: 5px 6px !important;*/
}

.cky-notice-btn-wrapper .cky-btn {
    justify-content: center;
}
.cky-prefrence-btn-wrapper .cky-btn {
    justify-content: center;
}

.hide-lang {
    display: none;
}
.lang-pt:lang(pt) {
    display: inline-block;
}
.lang-en:lang(en) {
    display: inline-block;
}



/************************/
/****** RESPONSIVE ******/
/************************/

/** LARGE LAPTOP **/
@media only screen and (max-width: 1700px) {

}
@media only screen and (max-width: 1600px) {

}

/** MEDIUM LAPTOP **/
@media only screen and (max-width: 1500px) {
    .n2-ss-layer-row-inner > .n2-ss-layer:nth-child(1) .n2-ss-layer-col.n2-ss-layer-content h3 {
        max-width: 425px;
    }
    .slider-projetos .image_wrapper a {
        height: 460px;    
    }
}
@media only screen and (max-width: 1400px) {
    .cta-trabalhar::before {    
        height: 80px;    
    }
    .cta-trabalhar::after {
        width: 160px;
        height: 81px;
        left: calc(50% - 155px);
    }
    .wrap-cta-image {
        clip-path: polygon(calc(100% - 380px) 0%, calc(100% - 85px) calc(100% - 90px), 100% 100%, 0% 100%, 0% 0%);
    }
    .slider-projetos .image_wrapper a {
        height: 420px;    
    }
}




@media only screen and (min-width: 1024px) and (max-height: 900px){
    .mfn-main-slider .n2-ss-slider-4.n2-ow {    
        background-position: 0% 82%;    
    }
}
@media only screen and (min-width: 1024px) and (max-height: 850px){
    .mfn-main-slider .n2-ss-slider-4.n2-ow {    
        background-position: 0% 67%;    
    }
}
@media only screen and (min-width: 1024px) and (max-height: 800px){
    .mfn-main-slider .n2-ss-slider-4.n2-ow {    
        background-position: 0% 55%;    
    }
}
@media only screen and (min-width: 1024px) and (max-height: 750px){
    .mfn-main-slider .n2-ss-slider-4.n2-ow {    
        background-position: 0% 49%;    
    }
}


/** SMALL LAPTOP **/
@media only screen and (max-width: 1400px) {
    .mfn-main-slider .n2-ss-slider-4.n2-ow {
        background-position-x: -40%;
    }


    .grid-especialidades .mfn-queryloop-item-wrapper:nth-child(even) .column.two-fifth.column_column .mcb-column-inner {    
        padding: 40px 50px;
    }
    .grid-especialidades .mfn-queryloop-item-wrapper:nth-child(odd) .column.two-fifth.column_column .mcb-column-inner {    
        padding: 40px 50px 40px 0;
    }
    .main-image .image_wrapper {
        height: 300px;        
    }
}


@media only screen and (max-width: 1240px) {
    nav#menu {
        display: block !important;
        height: 100vh !important;
        width: 80% !important;
        max-width: 450px;
        right: -100% !important;
        top: 0 !important;
        left: unset !important;
        bottom: unset !important;
        position: fixed !important;    
        z-index: 9999999;
        transition: .3s ease-in-out;
    }
    .responsive-menu-toggle.active + nav#menu {        
        right: 0 !important; 
    }
    nav#menu ul#menu-menu {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: 100%;
        background: var(--main);
        z-index: 99;
        position: relative;
    }
    nav#menu::before {
        content: '';
        position: fixed;
        left: 200vw;
        top: 0;
        width: 100vw;
        height: 100vh;
        background: #00000061;
        z-index: -1;
        transition: .3s ease-in-out;
        pointer-events: none;
    }
    .responsive-menu-toggle.active + nav#menu::before {    
        left: -50vw;   
    }
    #Top_bar .menu > li > a {
        padding: 10px 35px !important;
        font-size: 30px !important;
    }
    #Top_bar a.responsive-menu-toggle.active {
        display: block;
            z-index: 9999;
    }
    .close-menu {
        display: none;
    }
    #Top_bar a.responsive-menu-toggle.active .open-menu {
        display: none;
    }
    #Top_bar a.responsive-menu-toggle.active .close-menu {
        display: block;
    }
}

/** SMALL LAPTOP **/
@media only screen and (max-width: 1200px) {

    .wrap-cta-image {
        clip-path: polygon(0 0, calc(100% - 150px) 0, 100% 100%, 0% 100%);
    }
    .wrap-cta-image {
        width: 40% !important;
    }
    .cta-trabalhar .laptop-one-second.mcb-wrap {
        width: 60%;
    }
    .cta-trabalhar::after {
        width: 160px;
        height: 81px;
        left: calc(50% - 195px);
    }
    .mfn-main-slider .n2-ss-slider-4.n2-ow {
        background-position-x: -20vw;
    }
    .slider-projetos .image_wrapper a {
        height: 350px;    
    }

}



/** TABLET **/
@media only screen and (max-width: 992px) {
    h1, .n2-ss-slider h1 {
        font-size: 52px !important;
        line-height: 52px !important;
    }    
    h2 {
        font-size: 45px;
        line-height: 49px;
    }
    h3, .n2-ss-slider h3 {
        font-size: 28px !important;
        line-height: 34px !important;    
    }

    .n2-ss-slider .n2-ss-layer-row-inner {
        flex-direction: column;
    }
    .n2-ss-layer-row-inner > .n2-ss-layer:nth-child(1) {
        width: 100% !important;
        align-items: flex-end !important;
        flex-direction: row !important;
        padding-bottom: 140px;
        height: auto !important;
        padding-top: 50px !important;
    }
    .n2-ss-layer-row-inner > .n2-ss-layer:nth-child(2) {
        width: 100% !important;
        margin-right: 0 !important;
        display: none !important;   
    }    
    .mfn-main-slider .n2-ss-slider-4.n2-ow {
        height: 500px !important;
        margin-top: 400px;
        background-image: url(/wp-content/uploads/2024/04/Intro_Mobile@2x.png);
        background-size: 100% auto;
        background-position: bottom left !important;
    }
    div#n2-ss-1 .n2-ss-slide {
        height: auto !important;
    }
    body .n2-ss-slider .n2-ss-slide-background-image img {
        height: 400px !important;
    }

    .grid-area-1 .mfn-queryloop-item-wrapper, .grid-area-2 .mfn-queryloop-item-wrapper {
        height: auto;        
    }
    .wrap-cta-image {
        height: 350px;
        clip-path: unset;
        width: 100% !important;
    }    
    .cta-trabalhar .laptop-one-second.mcb-wrap {
        width: 100%;
    }
    .cta-trabalhar::after {
        width: 160px;
        height: 160px;
        right: 0;
        left: unset;
        clip-path: polygon(100% 0%, 0% 100%, 100% 100%);
    }
    .slider-projetos .mfn-item-inline.column {
        width: 100% !important;
    }

    ul.footer-menu, .copyright-col > div {
        gap: 10px;
        justify-content: space-between;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .copyright-col > div .mfn-item-inline.column {
        width: 100% !important;
    }
    .grid-area-2 .mfn-queryloop-item-wrapper:nth-child(4) {
        order: 4;
    }
    .grid-area-1 .column.column_heading, .grid-area-2 .column.column_heading {
        height: auto;
    }
    .clients_slider ul.slick-slider li img {    
        padding: 0 10px;    
    }

    .vantagens-colaboradores-1 .mfn-queryloop-item-wrapper {
        flex-direction: row-reverse;
    }
    .vantagens-colaboradores-1 .column.column_heading {    
        justify-content: flex-start;
    }
    .grid-vantagens .mfn-queryloop-item-wrapper {
        width: calc(50% - 10px) !important;
    }
    .grid-vantagens .mfn-wrapper-for-wraps .mfn-queryloop-item-wrapper:nth-child(-n+7)::before {
        content: '';
        position: absolute;
        left: 0;
        top: calc(100% + 20px);
        width: 120%;
        height: 1px;
        background: var(--sec) !important;
    }

    .clients_slider .slick-list {
        overflow: inherit;
    }

    .grid-evolucao .column_icon_box_2, .grid-evolucao .mcb-item-icon_box_2-inner, .grid-evolucao .mfn-icon-box {
        height: auto;
    }
	
	.section-topo {
		min-height: 240px !important;
	}


    .grid-especialidades .mfn-queryloop-item-wrapper:nth-child(even) .column.two-fifth {
        flex: unset;
    }
    .grid-especialidades .mfn-queryloop-item-wrapper:nth-child(odd) .column.two-fifth {
        order: 3;
    }
    .grid-especialidades .mfn-queryloop-item-wrapper .column.two-fifth.column_column .mcb-column-inner {
        padding: 35px 0px 35px 0 !important;
    }
    .main-image .image_wrapper {
        height: 240px;
    }

    .grid-contactos .column_icon_box_2, .grid-contactos .mcb-item-icon_box_2-inner, .grid-contactos .mfn-icon-box {
        height: auto;
    }


    .projeto-galeria .image_frame {
        margin-bottom: 40px;
    }


    .reverse-tablet .section_wrapper {
        flex-direction: column-reverse;
    }
}


/** MOBILE **/
@media only screen and (max-width: 767px) {
    .mobile-header-mini #Top_bar .logo {    
        margin-left: 0;
    }
    h1, .n2-ss-slider h1 {
        font-size: 40px !important;
        line-height: 40px !important;
    }    
    h2 {
        font-size: 30px;
        line-height: 34px;
    }
    h3, .n2-ss-slider h3 {
        font-size: 26px !important;
        line-height: 32px !important;    
    }
    h4 {
        font-size: 22px !important;
        line-height: 26px !important;    
    }


    .n2-ss-layer-row-inner > .n2-ss-layer:nth-child(1) {    
        padding-bottom: 100px;
        padding-top: 40px !important;
    }
    .mfn-main-slider .n2-ss-slider-4.n2-ow {
        height: 400px !important;
        margin-top: 350px;    
    }
    body .n2-ss-slider .n2-ss-slide-background-image img {
        height: 350px !important;
    }
    .n2-ss-slider .n2-ss-slider-wrapper-inside .n2-ss-slider-controls {    
        bottom: 10px;
    }
    .counter .desc_wrapper .title {
        font-size: 14px !important;
        line-height: 18px !important;
    }

    .wrap-cta-image {
        height: 280px;    
    }
    .cta-trabalhar::before {
        height: 60px;
    }
    .cta-trabalhar::after {
        width: 120px;
        height: 120px;    
    }


    .grid-vantagens .mfn-wrapper-for-wraps {
        flex-direction: column;
        gap: 20px 20px;    
    }
    .grid-vantagens .mfn-queryloop-item-wrapper {
        width: 100% !important;
        align-items: center;
        gap: 15px;
    }
    .grid-vantagens .mfn-queryloop-item-wrapper .column.column_heading {
        width: fit-content;
    }
    .grid-vantagens h4 {
        font-size: 19px !important;
        line-height: 23px !important;
    }
    .clients_slider ul.slick-slider li img {    
        padding: 0 6px;    
    }

    .wpforms-field-layout-columns .wpforms-layout-column:not(:last-child) {
        padding-bottom: 15px !important;
    }

    .grid-especialidades .mfn-queryloop-item-wrapper .column.two-fifth.column_column .mcb-column-inner {
        padding: 25px 0px 25px 0 !important;
    }
    .main-image .image_wrapper, .main-image .image_wrapper img {
        height: 150px;
    }

    .grid-vantagens .mfn-wrapper-for-wraps .mfn-queryloop-item-wrapper:nth-child(-n+7)::before {
        display: none;
    }

	.section-topo {
		min-height: 190px !important;
	}

    .portfolio-item a.button {
        flex: 0 0 100%;
        align-items: center;
        justify-content: center;
        margin-top: 10px;
    }
    .portfolio_group .portfolio-item .desc .title_wrapper {
        flex-wrap: wrap;
    }

    .slider-projetos .image_wrapper a {
        height: 290px;    
    }



    .projeto-galeria .image_frame {
        margin-bottom: 20px;
    }

    .style-simple #Filters .filters_wrapper ul li a {    
        font-size: 18px;
        line-height: 24px;    
    }


    .section.full-width-mobile .section_wrapper {
        max-width: 100% !important;
    }
}



/***********************/
/****** CONTAINER ******/
/***********************/

.no-container-right {
        width: 50vw !important;        
        margin-right: calc(0px - ((100vw - var(--container)) / 2)) !important;
}
@media only screen and (min-width: 1240px) {
    .section_wrapper, .container {
        max-width: var(--container) !important;
    }
}
@media only screen and (max-width: 1400px) {
    :root {       
        --container: 1180px;  
  }
}
@media only screen and (max-width: 1300px) {
    :root {       
        --container: 1120px;  
  }
}
@media only screen and (max-width: 1239px) {
    :root {       
        --container: 920px;  
    }
    .section_wrapper, .container, .content_wrapper .section_wrapper, .container, .four.columns .widget-area {
        max-width: var(--container) !important;
    }
}
@media only screen and (max-width: 960px) {
    :root {       
        --container: 708px;  
    }
    .full-width-tablet {
        width: 100vw !important;
        margin-left: calc(0px - ((100vw - var(--container)) / 2)) !important;
        margin-right: calc(0px - ((100vw - var(--container)) / 2)) !important;
    }
}
@media only screen and (max-width: 767px) {
    :root {       
        --container: 90vw;  
    }
    body.mobile-header-mini header div#Top_bar .container {
        max-width: var(--container) !important;
    }   
    .full-width-mobile_old {
        width: 100vw !important;
        margin-left: calc(0px - ((100vw - var(--container)) / 2)) !important;
        margin-right: calc(0px - ((100vw - var(--container)) / 2)) !important;
    }
    .content_wrapper .section_wrapper, .container, .four.columns .widget-area {
        padding-left: 0!important;
        padding-right: 0!important;
    }
}