/*!
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 {	
  --container: 1520px ;
}

body { 
	--mfn-column-gap-bottom: 0;
	opacity: 1;	
	font-family: var(--font-family-body);
	font-size: var(--font-size-p);
	font-style: normal;
	font-weight: 300;
	line-height: 140%;
    scroll-behavior: smooth;    
}
body.mobile-side-slide {
    position: relative;
    overflow: hidden;
}
p {
    margin: 0;
}
.content_wrapper .button {
    margin: 0;
}
.mcb-column-inner { 
 	margin-left: 0;
	margin-right: 0;
}
li {
    color: #636363;
}

.grecaptcha-badge {
	display: none;
}

span.adopt-c-cYDLxi {
    display: none;
}
.adopt-c-ihIdWo {
    opacity: .7 !important;
}
.adopt-c-ihIdWo:hover {
    opacity: 1 !important;
}
.adopt-c-ihIdWo svg path {
    fill: #fff !important;
	stroke-opacity: 0;
}
.adopt-c-ihIdWo svg > path {
    fill: #000 !important;
}

.cursor-option {
    margin: 40px 0;
    padding: 20px;
    border: 1px solid #333;
    border-radius: 10px;
    background: #2a2a2a;
}

.hoverable {
    display: inline-block;
    padding: 10px 20px;
    margin: 10px;
    background: #4a4a4a;
    border-radius: 5px;
    text-decoration: none;
    color: white;
    transition: background 0.3s;
}

.hoverable:hover {
    background: #666;
}

/* Smooth Follow Cursor */
.cursor-smooth {
    position: fixed;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 50%;
    pointer-events: none;
    z-index: 1000;
    mix-blend-mode: difference;
}

.cursor-smooth.hover {
    transform: scale(2);
    transition: transform 0.3s ease;
}

@media screen and (min-width: 992px) {
    body.mfn-ui-bebuilder-page .cursor-smooth {
        display: none;
    }
    body:not(.mfn-ui-bebuilder-page) a,
    body:not(.mfn-ui-bebuilder-page) button,
    body:not(.mfn-ui-bebuilder-page) .mfn-toggle .toggle-bar,
    body:not(.mfn-ui-bebuilder-page) .wpforms-field-radio *,
    body:not(.mfn-ui-bebuilder-page) div.wpforms-uploader {
        cursor: none !important;
    }
}

/* ==========================================================================================================================*/
/* ====================================================== VARIAVEIS =========================================================*/
/* ==========================================================================================================================*/

/* ====================================================== */
/* ======================= GERAIS ======================= */
/* ====================================================== */
	:root {
		/* === Drop Shadow - Blur === */
            --drop-shadow-blur-nivel-1: 10px;
            --drop-shadow-blur-nivel-2: 20px;
            --drop-shadow-blur-nivel-3: 30px;
            --drop-shadow-blur-nivel-4: 40px;
		/* === Drop Shadow - Position === */
			--drop-shadow-position-nivel-1: 5px;
			--drop-shadow-position-nivel-2: 10px;
			--drop-shadow-position-nivel-3: 15px;
			--drop-shadow-position-nivel-4: 20px;
		/* === Cores - Tons Preto === */
			--20: #ffffff99;
			--40: #d0d0d1;
			--60: #2B2B2B;
			--80: #636363;
			--00: #F9F9F9;
		/* === Cores - Marca === */
			--principal: #000;
			--secundaria: #fff;
		/* === Cores - Base === */
			--cores-base-branco: #ffffff;
			--cores-base-cinza: #636363;
			--cores-base-preto: #0B3F74;
		/* === FONT FAMILY === */
			--font-family-title: 'Noto Serif';
			--font-family-body: 'Outfit';
	}

/* ====================================================== */
/* ======================= DESKTOP ====================== */
/* ====================================================== */
	:root {	
		/* === Botões===  */
			--botoes-padding-top-bot: 16px;
			--botoes-padding-left-right: 24px;
		/* === Font Size === */
			--font-size-s1: 52px;
			--font-size-s2: 42px;
			--font-size-s3: 32px; 
			--font-size-s4: 26px; 
			--font-size-s5: 14px;
			--font-size-s6: 12px;
			--font-size-p: 20px;
			--font-size-btn: 18px;
		/* === Border Radius === */
			--border-radius-l: 32px;
			--border-radius-m: 22px;
			--border-radius-s: 14px;
			--border-radius-0: 0px;
		/* === Space === */
			--space-xxl: 120px;
			--space-xl: 80px;
			--space-l: 48px;
			--space-m: 32px;
			--space-s: 24px;
			--space-xs: 16px;
			--space-xxs: 8px;
			--space-0: 0px;
	}

/* ====================================================== */
/* ======================= LAPTOP ======================= */
/* ====================================================== */
	@media only screen and (max-width: 1441px) {
		:root {	

		/* === Botões === */
			--botoes-padding-top-bot: 16px;
			--botoes-padding-left-right: 20px;
		/* === Font Size === */
			--font-size-s1: 52px;
			--font-size-s2: 38px;
			--font-size-s3: 28px;
			--font-size-s4: 24px;
			--font-size-s5: 14px;
			--font-size-s6: 12px;
			--font-size-p: 16px;
			--font-size-btn: 16px;
		/* === Border Radius === */
			--border-radius-l: 28px;
			--border-radius-m: 20px;
			--border-radius-s: 12px;
		/* === Space === */
			--space-xxl: 100px;
			--space-xl: 64px;
			--space-l: 40px;
			--space-m: 28px;
			--space-s: 22px;
			--space-xs: 14px;
			--space-xxs: 8px;
		}
	}
/* ====================================================== */
/* ======================= TABLET ======================= */
/* ====================================================== */
	@media only screen and (max-width: 959px) {
		:root {	

			/* === Botões === */
				--botoes-padding-top-bot: 12px;
				--botoes-padding-left-right: 16px;
			/* === Font Size === */
				--font-size-s1: 44px;
				--font-size-s2: 34px;
				--font-size-s3: 24px;
				--font-size-s4: 20px;
				--font-size-s5: 12px;
				--font-size-s6: 10px;
				--font-size-p: 14px;
				--font-size-btn: 14px;
			/* === Border Radius === */
				--border-radius-l: 26px;
				--border-radius-m: 18px;
				--border-radius-s: 10px;
			/* === Space === */
				--space-xxl: 80px;
				--space-xl: 52px;
				--space-l: 36px;
				--space-m: 26px;
				--space-s: 20px;
				--space-xs: 12px;
				--space-xxs: 6px;
		}
	}

/* ====================================================== */
/* ======================= MOBILE ======================= */
/* ====================================================== */
	@media only screen and (max-width: 767px) { 
		:root {	

			/* === Botões === */
				--botoes-padding-top-bot: 10px;
				--botoes-padding-left-right: 14px;
			/* === Font Size === */
				--font-size-s1: 36px;
				--font-size-s2: 30px;
				--font-size-s3: 22px;
				--font-size-s4: 18px;
				--font-size-s5: 12px;
				--font-size-s6: 10px;
				--font-size-p: 14px;
				--font-size-btn: 14px;
			/* === Border Radius === */
				--border-radius-l: 22px;
				--border-radius-m: 16px;
				--border-radius-s: 8px;
			/* === Border Radius === */
				--space-xxl: 80px;
				--space-xl: 48px;
				--space-l: 32px;
				--space-m: 24px;
				--space-s: 16px;
				--space-xs: 8px;
				--space-xxs: 4px;
		}
	}

/* ===============================================================================================================================*/
/* ====================================================== ESTILOS GERAIS =========================================================*/
/* ==============================================================================================================================*/
	/* === ESTILOS PARAGRAFO === */
		h1, .s1{
			font-family: var(--font-family-title);
			font-size: var(--font-size-s1);
			font-style: normal;
			font-weight: 300;
			line-height: 120%;
		}

		h2, .s2, .s2 h1, .s2 h3{
			font-family:  var(--font-family-title);
			font-size: var(--font-size-s2);
			font-style: normal;
			font-weight: 300;
			line-height: 120%;
		}
		h3, .s3, .s3 h2, .s3 p {
			font-family:  var(--font-family-title);
			font-size: var(--font-size-s3);
			font-style: normal;
			font-weight: 300;
			line-height: 120%;
		}
		h4, .s4, .s4 p, .s4 a, .s4 h2, .s4 h3 {
			font-family:  var(--font-family-body);
			font-size: var(--font-size-s4);
			font-style: normal;
			font-weight: 300;
			line-height: 120%;
		}
		h5, .s5, .s5 p, .s5 h3, .s5 h2, .s5 p a{
			font-family: var(--font-family-body);
			font-size: var(--font-size-s5);
			font-style: normal;
			font-weight: 300;
			line-height: 120%;
		}
		h6, .s6, .s6 p{
			font-family: var(--font-family-body);
			font-size: var(--font-size-s6);
			font-style: normal;
			font-weight: 300;
			line-height: 120%;
		}

		.list li, p, .sp{
			font-family: var(--font-family-body);
			font-size: var(--font-size-p);
			font-style: normal;
			font-weight: 300;
			line-height: 140%;
		}

		a, .a{
			font-family: var(--font-family-body);
			font-size: var(--font-size-p);
			font-style: normal;
			font-weight: 300;
			line-height: 140%;
		}


        .button {
            text-transform: inherit;
            font-family: var(--font-family-body);
            font-size: var(--font-size-btn, 18px);
            font-style: normal;
            font-weight: 300;
            line-height: var(--font-line-height-btn, 18px);
            text-transform: uppercase;
            padding: 14px 32px 14px 32px !important;
            border-radius: 0 !important;
        }

        .button {
            background-color: transparent !important;
            border: 1px solid var(--principal) !important;
            color: var(--principal) !important;
        }

        

        .button.button_theme, .action_button {            
			background-color: transparent !important;
            border: 1px solid var(--secundaria) !important;
            color: var(--secundaria) !important;
        }

        .button:hover {
            background-color: var(--principal) !important;
            color: var(--secundaria) !important;
        }

        .button.button_theme:hover,
        .action_button:hover {            
			background-color: var(--secundaria) !important;
            color: var(--principal) !important;
        }

        .button .fa-arrow-right:before {
            content: '';
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='black'/%3E%3Cpath d='M1 1H13V13' stroke='black'/%3E%3C/svg%3E");
            background-size: 14px;
            width: 14px;
            height: 14px;
            display: block;
            transition: .2s ease-in-out;
        }
        .button:hover .fa-arrow-right:before {            
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='white'/%3E%3Cpath d='M1 1H13V13' stroke='white'/%3E%3C/svg%3E");
        }

        .button.button_theme .fa-arrow-right:before, .action_button .fa-arrow-right:before {
			background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='white'/%3E%3Cpath d='M1 1H13V13' stroke='white'/%3E%3C/svg%3E");
        }
        .button.button_theme:hover .fa-arrow-right:before, .action_button:hover .fa-arrow-right:before {
			background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='black'/%3E%3Cpath d='M1 1H13V13' stroke='black'/%3E%3C/svg%3E");
        }

	/* === CLASSES PARAGRAFOS === */
		.s6-a a{
			font-size: var(--font-size-s6, 12px);
			font-style: normal;
			font-weight: 300;
			text-transform: none;
			text-decoration: underline 1px;
			text-underline-offset: 2px;
		}

		.s6-a a:hover{
			color: var(--cores-marca-principal);
			text-decoration: underline 1px;
			text-underline-offset: 2px;
		}
		
		.s6-a h6, .s6-a a{
			color: var(--cores-tons-preto-60);
		}
		
		h1 b, .s1 b{
			font-weight: 300;
			color: var(--sec);
		}

		h2 b, .s2 b, .s2 h3 b{
			font-weight: 300;
			color: var(--sec);
		}
	
		
		h3 b, .s4 b, .s4 h3 b{
			font-weight: 300;
			color: var(--sec);
		}

	/* === BORDER RADIUS === */
		.br-l, .br-l img, .br-l .mcb-wrap-inner{
			border-radius:var(--border-radius-l);
		}
		.br-m, .br-m img, .br-m .mcb-wrap-inner{
			border-radius:var(--border-radius-m);
		}
		.br-s, .br-s img, .br-s .mcb-wrap-inner{
			border-radius:var(--border-radius-s);
		}
		.br-top-s, .br-top-s img {
			border-radius:var(--border-radius-s) var(--border-radius-s) 0px 0px;
		}

		.br-top-l .mcb-wrap-inner, .br-top-l, .br-top-l img {
			border-radius: var(--border-radius-l) var(--border-radius-l) 0px 0px;
		}

		.br-bot-l .mcb-wrap-inner, .br-bot-l, .br-bot-l img {
			border-radius: 0px 0px var(--border-radius-l) var(--border-radius-l);
		}

	/* === GAP === */ 
		.gap-l, .gap-l .mcb-wrap-inner, .gap-m .mfn-queryloop-item-wrapper, .gap-l .section_wrapper{
			row-gap: var(--space-l);
		}
		.gap-m, .gap-m .mcb-wrap-inner,.gap-m .mfn-queryloop-item-wrapper, .gap-m .section_wrapper{
			row-gap: var(--space-m);
		}
		.gap-s, .gap-s .mcb-wrap-inner, .gap-m .mfn-queryloop-item-wrapper, .gap-s .section_wrapper{
			row-gap: var(--space-s);
		}
		.gap-xs, .gap-xs .mcb-wrap-inner, .gap-m .mfn-queryloop-item-wrapper, .gap-xs .section_wrapper{
			row-gap: var(--space-xs);
		}
		.gap-l .section_wrapper::after, .gap-m .section_wrapper::after, .gap-s .section_wrapper::after, .gap-xs .section_wrapper::after{
			display: none;
		}	
		.no-gap, .no-gap .mcb-wrap-inner, .no-gap .mfn-queryloop-item-wrapper, .no-gap .section_wrapper{
			row-gap: 0px;
		}
		.gap-c-l, .gap-c-l .mcb-wrap-inner, .gap-c-m .mfn-queryloop-item-wrapper, .gap-c-l .section_wrapper{
			column-gap: var(--space-l);
		}
		.gap-c-m, .gap-c-m .mcb-wrap-inner,.gap-c-m .mfn-queryloop-item-wrapper, .gap-c-m .section_wrapper{
			column-gap: var(--space-m);
		}
		.gap-c-s, .gap-c-s .mcb-wrap-inner, .gap-c-m .mfn-queryloop-item-wrapper, .gap-c-s .section_wrapper{
			column-gap: var(--space-s);
		}
		.gap-c-xs, .gap-c-xs .mcb-wrap-inner, .gap-c-m .mfn-queryloop-item-wrapper, .gap-c-xs .section_wrapper{
			column-gap: var(--space-xs);
		}
		.gap-c-l .section_wrapper::after, .gap-c-m .section_wrapper::after, .gap-c-s .section_wrapper::after, .gap-c-xs .section_wrapper::after{
			display: none;
		}	
		.no-gap-c, .no-gap-c .mcb-wrap-inner, .no-gap-c .mfn-queryloop-item-wrapper, .no-gap-c .section_wrapper{
			column-gap: 0px;
		}
	/* ======= PADDINGS ========= */
		/* == XXL ==*/
			.pd-top-xxl{
				padding-top: var(--space-xxl);
			}
			.mg-top-xxl{
				margin-top: var(--space-xxl);
			}
			.pd-bot-xxl{
				padding-bottom: var(--space-xxl);
			}
			.mg-bot-xxl{
				margin-bottom: var(--space-xxl);
			}
			.pd-left-xxl{
				padding-left: var(--space-xxl);
			}
			.pd-right-xxl{
				padding-right: var(--space-xxl);
			}
		/* == XL ==*/
			.pd-top-xl{
				padding-top: var(--space-xl);
			}
			.pd-bot-xl{
				padding-bottom: var(--space-xl);
			}
			.pd-left-xl{
				padding-left: var(--space-xl);
			}
			.pd-right-xl{
				padding-right: var(--space-xl);
			}
		/* == L ==*/
			.pd-top-l {
				padding-top: var(--space-l);
			}
			.pd-top-l-child > div {
				padding-top: var(--space-l);
			}
			.pd-bot-l{
				padding-bottom: var(--space-l);
			}
			.pd-left-l{
				padding-left: var(--space-l);
			}
			.pd-right-l{
				padding-right: var(--space-l);
			}
		/* == M ==*/
			.pd-top-m{
				padding-top: var(--space-m);
			}
			.pd-bot-m{
				padding-bottom: var(--space-m);
			}
			.pd-left-m{
				padding-left: var(--space-m);
			}
			.pd-right-m{
				padding-right: var(--space-m);
			}
		/* == S ==*/
			.pd-top-s{
				padding-top: var(--space-s);
			}
			.pd-bot-s{
				padding-bottom: var(--space-s);
			}
			.pd-left-s{
				padding-left: var(--space-s);
			}
			.pd-right-s{
				padding-right: var(--space-s);
			}
		/* == XS ==*/
			.pd-top-xs{
				padding-top: var(--space-xs);
			}
			.pd-bot-xs{
				padding-bottom: var(--space-xs);
			}
			.pd-left-xs{
				padding-left: var(--space-xs);
			}
			.pd-right-xs{
				padding-right: var(--space-xs);
			}
		/* == XXS ==*/
			.pd-top-xxs{
				padding-top: var(--space-xxs);
			}
			.pd-bot-xxs{
				padding-bottom: var(--space-xxs);
			}
			.pd-left-xxs{
				padding-left: var(--space-xxs);
			}
			.pd-right-xxs{
				padding-right: var(--space-xxs);
			}





/******* HEADER *******/ 
.mfn-header-menu > .mfn-menu-li > .mfn-menu-link > .label-wrapper > .menu-label {
    font-family: var(--font-family-body, Outfit);
    font-size: var(--font-desktop-btn, 18px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-btn, 18px);
    text-transform: uppercase;
}
.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;    
}
.mfn-header-scrolled .mfn-header-main.header-scrolled {
    display: block !important;        
    pointer-events: all !important;
    user-select: initial !important;
    opacity: 1 !important;
}

.mfn-header-main .section:first-child .section_wrapper:before {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 0 !important;
    width: var(--container) !important;
    height: 1px;
    background-color: #D0D0D1;
}
body.home .mfn-header-main .section:first-child .section_wrapper:before {    
    background-color: #fff;
}


.mfn-header-main i.icon-menu-fine {
    background-image: url("data:image/svg+xml,%0A%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 0.5V1.5H0V0.5H18Z' fill='black'/%3E%3Cpath d='M18 6.5L18 7.5L5 7.5L5 6.5L18 6.5Z' fill='black'/%3E%3Cpath d='M18 12.5V13.5H0V12.5H18Z' fill='black'/%3E%3C/svg%3E%0A");
    font-size: 0 !important;
    width: 38px;
    height: 38px;
    background-size: 20px;
    background-position: center;
    background-repeat: no-repeat;
    border: 1px solid #000;
    border-radius: 50px;
}
.home .mfn-header-main i.icon-menu-fine {
    background-image: url("data:image/svg+xml,%0A%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 0.5V1.5H0V0.5H18Z' fill='white'/%3E%3Cpath d='M18 6.5L18 7.5L5 7.5L5 6.5L18 6.5Z' fill='white'/%3E%3Cpath d='M18 12.5V13.5H0V12.5H18Z' fill='white'/%3E%3C/svg%3E%0A");
    border: 1px solid #fff;    
}
.mfn-header-scrolled .mfn-header-main i.icon-menu-fine {
    background-image: url("data:image/svg+xml,%0A%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 0.5V1.5H0V0.5H18Z' fill='white'/%3E%3Cpath d='M18 6.5L18 7.5L5 7.5L5 6.5L18 6.5Z' fill='white'/%3E%3Cpath d='M18 12.5V13.5H0V12.5H18Z' fill='white'/%3E%3C/svg%3E%0A");    
    border: 1px solid #fff;    
}

span.mfn-close-icon span.icon {
    background-image: url("data:image/svg+xml,%0A%3Csvg width='14' height='15' viewBox='0 0 14 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.7211 13.0119L13.0139 13.719L0.286027 0.991058L0.993134 0.283951L13.7211 13.0119Z' fill='white'/%3E%3Cpath d='M13.0069 0.646445L13.714 1.35355L0.986068 14.0815L0.278961 13.3744L13.0069 0.646445Z' fill='white'/%3E%3C/svg%3E%0A");
    font-size: 0 !important;
    width: 38px;
    height: 38px;
    background-size: 20px;
    background-position: center;
    background-repeat: no-repeat;
    border: 1px solid #ffff;
    border-radius: 50px;
}
.mfn-header-tmpl-menu-sidebar-right .mfn-close-icon {
    right: 47px;
    top: 15px;
}


/******* HOME *******/ 
.mfn-menu-animation-text-toggle-line-bottom > .mfn-menu-li > .mfn-menu-link .label-wrapper:before {
    background-color: var(--principal);
    height: 1px;
    top: 110%;
}
.home .mfn-menu-animation-text-toggle-line-bottom > .mfn-menu-li > .mfn-menu-link .label-wrapper:before {
    background-color: var(--secundaria);    
}




/* .home .mfn-header-tmpl-absolute {
    opacity: 0;
    transition: .3s ease-in-out;
}
.home .video-content {
    opacity: 0;
    transition: .3s ease-in-out;
} */

.mouse-icon {
    border: 2px solid #FFF;
    border-radius: 16px;
    height: 40px;
    width: 24px;
    display: block;
    z-index: 10;
    opacity: 1;
    position: absolute;
    left: 50%;
    bottom: 10%;
    transform: translateX(-50%);
}
.mouse-icon .wheel {
  -webkit-animation-name: drop;
  -webkit-animation-duration: 1s;
  -webkit-animation-timing-function: linear;
  -webkit-animation-delay: 0s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-play-state: running;
  -webkit-animation-name: drop;
          animation-name: drop;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.mouse-icon .wheel {
  position: relative;
  border-radius: 10px;
  background: #fff;
  width: 2px;
  height: 6px;
  top: 4px;
  margin-left: auto;
  margin-right: auto;
}
@-webkit-keyframes drop {
  0% {
    top: 5px;
    opacity: 0;
  }
  30% {
    top: 10px;
    opacity: 1;
  }
  100% {
    top: 25px;
    opacity: 0;
  }
}
@keyframes drop {
  0% {
    top: 5px;
    opacity: 0;
  }
  30% {
    top: 10px;
    opacity: 1;
  }
  100% {
    top: 25px;
    opacity: 0;
  }
}


.page-section-top .mcb-background-overlay-wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
}
.page-section-top {
	margin-top: 78px;
}
.page-section-top.mg-top-xxl {
    margin-top: calc(var(--space-xxl) + 78px);
}

body:not(.logged-in) .full-back,
body:not(.logged-in) .back-img-left,
body:not(.logged-in) .back-img-right {
	overflow: hidden;
}

.full-back .mcb-background-overlay-wrapper {
    height: 100%;
}
.full-back .mcb-background-overlay {
    top: 0;
    bottom: 0;
}

.full-back .mcb-background-overlay,
.back-img-left .mcb-background-overlay,
.back-img-right .mcb-background-overlay,
.back-img-left>.mcb-background-overlay-wrapper,
.back-img-right>.mcb-background-overlay-wrapper,
.has-video>.mcb-background-overlay-wrapper,
.mcb-wrap-background-overlay {
    position: absolute !important;
    height: 100%;
    width: 100%;
    overflow: hidden;
}


.back-img-right>.mcb-background-overlay-wrapper {
    width: 50%;	
    right: 0;
    left: unset;
	top: 0;
    bottom: 0;
}

.back-img-40>.mcb-background-overlay-wrapper {
    width: calc(50% - var(--space-xxl));
}

.back-img-left>.mcb-background-overlay-wrapper,
.back-img-left>div>.mcb-wrap-background-overlay {
    width: 50% !important;
    left: 0 !important;
}
.back-img-left .mcb-background-overlay,
.back-img-right .mcb-wrap-background-overlay {
	animation-delay: 300ms;
}
.mcb-background-overlay {    
    transform: scale(1);
    transition: transform 0.2s ease-out;
    will-change: transform;
    width: 100%;
    height: 100%;	    
}
.zoom-img .mfn-wrapper-for-wraps,
.zoom-img img {    
    transform: scale(1);
    transition: transform 0.2s ease-out !important;
    will-change: transform !important;
}

.back-img-left .section_video {
    width: 50% !important;
    min-width: unset !important;
}
.back-img-right .section_video {
    width: 50% !important;
    min-width: unset !important;
	left: unset !important;
	right: 0;
}

.img-solucoes {
    position: absolute;
    bottom: 0;
    left: calc(0px - (100vw - var(--container)) / 2);    
    width: calc(50vw - var(--space-xl)) !important;	
	overflow: hidden;
}


.grid-servicos .mfn-queryloop-item-wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: hidden;
    position: relative;
	padding-top: var(--space-m);
	padding-bottom: var(--space-m);
	border-top: 1px solid var(--40);
	opacity: .5;
}

.grid-servicos .mfn-queryloop-item-wrapper.is-active {
	opacity: 1;
}

.grid-servicos .mfn-queryloop-item-wrapper:last-child {    
	border-bottom: 1px solid var(--40);
}

.grid-servicos-icon {
    max-width: 40px;
    flex-shrink: 0;
}

.grid-servicos-img {    
    width: calc(42% - 40px) !important;
    height: 100%;
    transform: translateX(100%);
    /* transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); */
    will-change: transform;
    position: absolute;
    right: 0;
    top: 0;
    opacity: 0;
    transition: 
        transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.31s,
        opacity 0.3s ease;
}

.grid-servicos .mfn-queryloop-item-wrapper.is-active .grid-servicos-img {
	transform: translateX(0%);
	opacity: 1;
}

.grid-servicos .mfn-queryloop-item-wrapper .grid-servicos-img * {
    height: 100%;
}

.grid-servicos .mfn-queryloop-item-wrapper .grid-servicos-img img {
    object-fit: cover;
    object-position: center;
}

/* Espaçador invisível para manter o layout */
.grid-servicos .mfn-queryloop-item-wrapper::after {
    content: '';
    width: calc(50% - 60px);
    height: 0;
    flex-shrink: 0;
}

.grid-servicos-content {
    max-width: 58%;
    flex-shrink: 0;
}

.grid-servicos-content p {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(10px);
    transition: 
        max-height 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),
        opacity 0.4s ease-out 0.1s,
        transform 0.4s ease-out 0.1s;
    will-change: max-height, opacity, transform;
}

.grid-servicos .mfn-queryloop-item-wrapper.is-active .grid-servicos-content p {
	max-height: 200px;
	opacity: 1;
	transform: translateY(0);
}

/* Opcional: Adicionar uma transição mais suave no hover do container */
.grid-servicos .mfn-queryloop-item-wrapper {
    transition: all 0.3s ease;    
}

.grid-servicos .mfn-queryloop-item-wrapper.is-active {
    transform: translateY(-2px);    
}

.grid-servicos .full-link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}
.grid-servicos .full-link * {
	height: 100%;
	width: 100%;
	display: block;
}



.column_counter .mcb-item-counter-inner {
    background: transparent !important;
	height: 100%;
}
.column_counter .counter .desc_wrapper .number-wrapper {
    font-size: 70px;
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-s1, 62px);
    text-transform: uppercase;
    font-family: var(--font-family-title, "Noto Serif");
    color: var(--80);
}
.column_counter .counter .desc_wrapper .number-wrapper .label {
    font-size: 100%;
}
.column_counter .counter .desc_wrapper {
    opacity: .5;
}
.column_counter .counter:hover .desc_wrapper {
    opacity: 1;
}


.slider-vantagens .swiper {
    overflow: inherit;
}
.slider-vantagens .column_icon_box,
.slider-vantagens .mcb-item-icon_box-inner {
    height: 100%;
}
.slider-vantagens .icon_box {
    border: 1px solid #D0D0D1;
    padding: var(--space-s);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.slider-vantagens .swiper-slide:not(:first-child):not(:last-child)  .icon_box {
	border-left: 0;
}
.slider-vantagens .icon_box .image_wrapper {
    text-align: left;
}
.slider-vantagens .icon_box .title {
    max-width: 200px;
}
.slider-vantagens .icon_box .desc_wrapper {
    text-align: left;
}
.slider-vantagens .icon_box:hover {
	background-color: var(--principal);
}
.slider-vantagens .icon_box:hover .title {
	color: var(--secundaria);
}
.slider-vantagens .icon_box:hover .desc {
	color: var(--40);
}



.slider-parceiros .swiper {
    /* overflow: inherit; */
}
.slider-parceiros .swiper-wrapper {
    align-items: stretch;
}
.slider-parceiros .column_image {
    display: flex;
    align-items: center;
    justify-content: center;
}
.slider-parceiros .mfn-queryloop-item-wrapper img {
    max-height: 120px;
    width: 100%;    
    mix-blend-mode: multiply;
	filter: grayscale(1);
    opacity: .5;
	transition: .3s ease-in-out;
}
.slider-parceiros .mfn-queryloop-item-wrapper:hover img {
	filter: grayscale(0);
    opacity: 1;
}



.slider-portfolio .swiper {
    overflow: inherit;
}
.slider-portfolio .swiper-slide {
	opacity: 1;
	transition: .3s ease-in-out;
}
.slider-portfolio .swiper-slide:not(.swiper-slide-fully-visible) {
	opacity: .5;
}
.slider-portfolio .swiper-slide .portfolio-image ~ .column {
	transition: .6s ease-in-out;
}
.slider-portfolio .swiper-slide:not(.swiper-slide-fully-visible) .portfolio-image ~ .column {
    opacity: 0;
    transform: translateY(-90px);
}
.slider-portfolio .mfn-queryloop-item-wrapper {
    display: flex;
    align-items: center;    
    overflow: hidden;
}
.slider-portfolio .mfn-queryloop-item-wrapper .full-link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}
.slider-portfolio .mfn-queryloop-item-wrapper .full-link * {
	height: 100%;
	width: 100%;
	display: block;
}
.portfolio-image:before {
    content: 'Ver Detalhes';
    color: var(--secundaria);
    font-family: var(--font-family-body, Outfit);
    font-size: var(--font-desktop-btn, 18px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-btn, 18px); /* 100% */
    text-transform: uppercase;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    text-decoration: underline;
    text-underline-offset: 5px;
	opacity: 0;
	transition: .3s ease-in-out;
	pointer-events: none;
}
body:lang(en) .portfolio-image:before {
    content: 'View Details';
}
.portfolio-image:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #00000080;
	opacity: 0;
	transition: .3s ease-in-out;
}
.slider-portfolio .swiper-slide.swiper-slide-fully-visible .mfn-queryloop-item-wrapper:hover .portfolio-image:before {
	opacity: 1;
}
.slider-portfolio .swiper-slide.swiper-slide-fully-visible .mfn-queryloop-item-wrapper:hover .portfolio-image:after {
	opacity: 1;
}
.slider-portfolio .swiper-slide:not(.swiper-slide-fully-visible) .mfn-queryloop-item-wrapper {
	pointer-events: none;
}
.slider-portfolio .mfn-swiper-arrow {
    transform: translateY(-50%);
}
.slider-portfolio .mfn-swiper-arrow i {
	font-size: 0 !important;
    background-size: 22px;
    width: 22px;
    height: 22px;
    background-position: center;
    background-repeat: no-repeat;
}
.slider-portfolio i.fas.fa-arrow-left {    
    background-image: url("data:image/svg+xml,%0A%3Csvg width='21' height='17' viewBox='0 0 21 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.372071 8.26074L8.63281 -1.03635e-06L8.98633 0.354491L9.33985 0.708007L2.28711 7.76172L20.4873 7.76172L20.4873 8.76172L2.28711 8.76172L9.33984 15.8145L8.63281 16.5215L0.372071 8.26074Z' fill='%23000000'/%3E%3C/svg%3E%0A");
}
.slider-portfolio .swiper-button-prev:hover i.fas.fa-arrow-left {    
    background-image: url("data:image/svg+xml,%0A%3Csvg width='21' height='17' viewBox='0 0 21 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.372071 8.26074L8.63281 -1.03635e-06L8.98633 0.354491L9.33985 0.708007L2.28711 7.76172L20.4873 7.76172L20.4873 8.76172L2.28711 8.76172L9.33984 15.8145L8.63281 16.5215L0.372071 8.26074Z' fill='%23ffffff'/%3E%3C/svg%3E%0A");
}
.slider-portfolio i.fas.fa-arrow-right {    
    background-image: url("data:image/svg+xml,%3Csvg width='21' height='18' viewBox='0 0 21 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.4873 9.0957L12.2266 17.3564L11.873 17.002L11.5195 16.6484L18.5723 9.59473H0.37207V8.59473H18.5723L11.5195 1.54199L12.2266 0.834961L20.4873 9.0957Z' fill='%23000000'/%3E%3C/svg%3E%0A");
}
.slider-portfolio .swiper-button-next:hover i.fas.fa-arrow-right {    
    background-image: url("data:image/svg+xml,%3Csvg width='21' height='18' viewBox='0 0 21 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.4873 9.0957L12.2266 17.3564L11.873 17.002L11.5195 16.6484L18.5723 9.59473H0.37207V8.59473H18.5723L11.5195 1.54199L12.2266 0.834961L20.4873 9.0957Z' fill='%23ffffff'/%3E%3C/svg%3E%0A");
}
.portfolio-cat p {
    display: flex;
    justify-content: flex-end;
    gap: 48px;
    font-family: var(--font-family-body, Outfit);
    font-size: var(--font-desktop-s5, 14px);
}
.portfolio-cat p span {
    position: relative;
}
.portfolio-cat p span:not(:last-child):before {
    content: '';
    width: 1px;
    height: 90%;
    background: var(--80);
    position: absolute;
    top: 5%;
    right: -24px;
}
img.mfp-img {
    max-height: 85vh !important;
}


.home-toggle .mfn-toggle .toggle-bar {
    padding-top: var(--space-s);
    padding-bottom: var(--space-s);
}
.home-toggle .mfn-toggle-item:not(:first-child) {
    border-top: 0 !important;
}
.home-toggle .toggle-content {
    padding-left: 43px;
    font-size: var(--font-size-p, 20px);
    font-style: normal;
    font-weight: 300;    
    margin-bottom: var(--space-s);
}

.logo-apoios {
    background: #f2f2f2;
}
.logo-apoios img {
    filter: grayscale(1);    
    mix-blend-mode: multiply;
}

.mfn-footer .desc, 
.mfn-footer .desc a, 
.mfn-footer p,
.mfn-footer a {
    font-family: var(--font-family-body, Outfit);
    font-size: var(--font-desktop-s5, 14px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-s5, 18px);
}

.mfn-footer-menu li a {
    width: fit-content;
}


/* SOBRE NÓS */
.slider-equipa .swiper {
    overflow: inherit;
}
.slider-equipa .mfn-queryloop-item-wrapper {
    justify-content: space-between;
}
.slider-equipa h5 {
	color: var(--80);
}

.click-toggle .mfn-toggle .toggle-bar {
    padding-top: var(--space-s);
    padding-bottom: var(--space-s);
}
.click-toggle .mfn-toggle-item:not(:first-child) {
    border-top: 0 !important;
}
.click-toggle .toggle-content {
    padding-left: 0px;
    font-size: var(--font-size-p, 20px);
    font-style: normal;
    font-weight: 300;    
    margin-bottom: var(--space-s);
}
.click-toggle .mfn-toggle-item.active {
    pointer-events: none;
}
.click-toggle .toggle-bar-icon {
    display: none !important;
}
.fa-chevron-up:before {
    font-size: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='39' height='15' viewBox='0 0 39 15' fill='none'%3E%3Cpath d='M1 1L19.5 14L38 1' stroke='%238D8D8D'/%3E%3C/svg%3E");
    width: 20px;
    height: 20px;
    background-size: 20px;
    background-repeat: no-repeat;
    display: block;
}

.fa-chevron-down:before {
    font-size: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='39' height='15' viewBox='0 0 39 15' fill='none'%3E%3Cpath d='M38 14L19.5 0.999998L1 14' stroke='black'/%3E%3C/svg%3E");    
    width: 20px;
    height: 20px;
    background-size: 20px;
    background-repeat: no-repeat;
    display: block;
}

.no-content-toggle .toggle-content {
    display: none !important;
}
.no-content-toggle span.toggle-icon {
    display: none !important;
}
.no-content-toggle .mfn-toggle-item .toggle-heading {
    transition: .2s ease-in-out;
}
.no-content-toggle .mfn-toggle-item.active .toggle-heading {
    padding-left: 20px;
}


.pd-xl-wrap>div {
    padding: calc(var(--space-xl)*0.85);
}


.grid-servicos-page .mfn-queryloop-item-wrapper {
    justify-content: flex-end;
    padding-left: 30%;
}
.grid-servicos .mfn-queryloop-item-wrapper:after {
    display: none;
}
.grid-servicos-page .grid-servicos-img {
    left: 0;
    right: unset;
    transform: translateX(-100%);
    width: calc(30% - 60px) !important;
}
.grid-servicos-page .grid-servicos-content {
    padding-right: 0;
    max-width: 70%;
    /* width: 100%; */
}
.grid-servicos-page .grid-servicos-content p {
    max-width: 350px;
}
.grid-servicos-page .column_button {
    white-space: nowrap;
}
.grid-servicos-page .mfn-queryloop-item-wrapper.is-active {
    background: var(--00);
}
.grid-servicos-page .mfn-queryloop-item-wrapper.is-active .button {
	background-color: var(--principal) !important;
    color: var(--secundaria) !important;
}
.grid-servicos-page .mfn-queryloop-item-wrapper.is-active .fa-arrow-right:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='white'/%3E%3Cpath d='M1 1H13V13' stroke='white'/%3E%3C/svg%3E");
}


/* PORTFOLIO */
.portfolio-filters-wrapper {
    overflow: hidden; /* remover scroll daqui */
	margin-bottom: var(--space-l);
	position: relative;
}
#portfolio-filters {
    display: flex;
    gap: var(--space-l);
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    padding-top: var(--space-s);
    padding-bottom: var(--space-s);
    border-top: 1px solid var(--40);
    border-bottom: 1px solid var(--40);    
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
	padding-left: 48px;
	padding-right: 48px;
}
div#portfolio-filters::before {
	content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 120px;
    height: 100%;
    z-index: 4;
    background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.12) 50%, rgba(255, 255, 255, 0) 100%);
    pointer-events: none;
}
div#portfolio-filters::after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 120px;
    height: 100%;
    z-index: 4;
    background: linear-gradient(270deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.12) 50%, rgba(255, 255, 255, 0) 100%);
    pointer-events: none;
}
button.filtro-btn {
    font-family: var(--font-family-body, Outfit);
    font-size: var(--font-desktop-btn, 18px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-btn, 18px);
    text-transform: uppercase;
    padding: 0;
    color: #8D8D8D;
    overflow: inherit;
    background: transparent !important;
    white-space: nowrap;
    overflow: initial;
}
button.filtro-btn.active, button.filtro-btn:hover {
    color: var(--principal);
    text-decoration: underline;
    text-underline-offset: 5px;
}

.grid-portfolio .mcb-wrap-inner {
    gap: 80px 48px;
}
.grid-portfolio .mfn-queryloop-item-wrapper {
    width: calc(50% - 24px) !important;
    margin: 0 !important;
}
.grid-portfolio .mfn-queryloop-item-wrapper.em-destaque {
    width: 100% !important;
}
.grid-portfolio .mfn-queryloop-item-wrapper:hover .portfolio-image:before {
    opacity: 1;
}
.grid-portfolio .mfn-queryloop-item-wrapper:hover .portfolio-image:after {
    opacity: 1;
}

.portfolio-servicos p {
    display: flex;
    gap: var(--space-xs);
}
.portfolio-servicos p span {
    font-family: var(--font-family-body, Outfit);
    font-size: var(--font-desktop-s5, 14px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-s5, 18px);
    background: #EBEBEB;
    color: var(--principal);
    padding: 3px 6px;
}

.portfolio-item strong {
    font-weight: 300;
    color: var(--principal);
}

.portfolio-galeria .mcb-wrap-inner {
    display: block;
    /* grid-template-columns: 1fr 1fr; */
    column-gap: 24px;
    columns: 2;
}




/* SERVIÇO */
ul.breadcrumb {
    display: flex;
    list-style: none;
    padding: 0 !important;
    margin: 0;
    gap: 12px;
}
ul.breadcrumb li, ul.breadcrumb li a {
    font-family: var(--font-family-body, Outfit);
    font-size: var(--font-desktop-s5, 14px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-s5, 18px); /* 128.571% */
    color: var(--principal);
}
ul.breadcrumb li a {
    opacity: .5;
    text-decoration: none !important;
}
ul.breadcrumb li a:hover {
    opacity: 1;
}
ul.breadcrumb li:not(:last-child):after {
    content: '/';
    margin-left: 12px;
    opacity: .5;
}


a.fixed-nav {
    display: none !important;
}


/* CONTACTOS */
.section-top-contactos .mcb-background-overlay {
    background-size: 50% auto !important;
    background-position: bottom right !important;
}

.row-contacto {
    padding-bottom: var(--space-s);
    padding-top: var(--space-s);
    border-top: 1px solid #D0D0D1;
}
.row-contacto:last-child {    
    border-bottom: 1px solid #D0D0D1;
}
.contacto-info {
    width: 45% !important;
    flex: 0 0 45% !important;
}
.contacto-phone {
    width: 24% !important;
    flex: 0 0 24% !important;
}
.contacto-email {
    width: 31% !important;
    flex: 0 0 31% !important;
}
.contacto-info .column_attr {
    display: flex;
    align-items: center;
    gap: 16px;
}
.contacto-info .column_attr:before, .contacto-info .column_attr:after {
    display: none;
}
.contacto-info h4 {
    color: #636363;
}
.row-contacto a,
.contacto-phone a,
.contacto-email a {
    font-family: var(--font-family-body);
    font-size: var(--font-size-s4);
    font-style: normal;
    font-weight: 300;
}
.localidades .column_attr {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.localidades .column_attr:before {
    display: none;
}
.localidades p {
    width: fit-content;
    display: flex;
    align-items: center;
    gap: 10px;
}
.localidades p:not(:last-child):after {
    content: '';
    width: 3px;
    height: 3px;
    background: #000;
    border-radius: 50%;
}



.trp-ls-shortcode-current-language {
    width: fit-content!important;
    background: unset!important;
    border: 0!important;
    color: #fff!important;
    padding: 0px!important
}
.trp-language-switcher>div>a {
    color: #000!important;
    font-family: var(--font-family-body, Outfit);
    font-size: var(--font-desktop-btn, 18px);
    font-style: normal;
    font-weight: 300;
    opacity: .85;
    padding: 10px 12px!important;
    border: 1px solid #000;
    border-radius: 0;
}
.mfn-header-scrolled .trp-language-switcher>div>a,
.home .trp-language-switcher>div>a {
    color: #fff!important;
    border: 1px solid #fff;
}
.home:not(.mfn-header-scrolled) .trp-language-switcher .trp-ls-shortcode-language a:hover {
    color: #fff !important;
    background: #000 !important;
}
.home:not(.mfn-header-scrolled) .trp-language-switcher .trp-ls-shortcode-language a,
.mfn-header-scrolled .trp-language-switcher .trp-ls-shortcode-language a {
    background: #fff !important;
    color: #000 !important;
    border: 1px solid #000;
}
.trp-language-switcher {
    width: fit-content;
    height: auto;
    margin-left: 5px
}
.trp-ls-shortcode-language {
    width: fit-content!important;
    background: transparent!important;
    border: 0!important;
    padding: 0!important
}
a.trp-ls-shortcode-disabled-language.trp-ls-disabled-language {
    background: transparent!important
}
.trp-ls-shortcode-language a {
    background: var(--sec);
    padding: 12px 12px!important;
    border-radius: 0!important
}
.home:not(.mfn-header-scrolled)  .trp-ls-shortcode-language a:not(:first-child):hover,
.trp-ls-shortcode-language a:not(:first-child):hover {
    background: #000!important;    
}
.trp-language-switcher .trp-ls-shortcode-language a {
    background: #fff !important;
    color: #000 !important;
    opacity: 1 !important;
}
.trp-language-switcher .trp-ls-shortcode-language a:hover {
    color: #fff !important;
    background: #000 !important;
}


.text-politica h4 {
    margin-top: 24px;
    margin-bottom: 16px;
}
.text-politica p:not(:last-child) {    
    margin-bottom: 12px;
}


/* FORM WHITE */

.form-white .wpforms-field{
    padding-top: 0px;
    padding-bottom: 25px;
}
.form-white .wpforms-container{
    margin-top: 0px;
    margin-bottom: 0px;
}
.form-white .wpforms-field-layout{
    padding-top: 0px;
    padding-bottom: 0px;
}
.form-white .wpforms-container-full input[type=date], .form-white .wpforms-container-full input[type=datetime], .form-white .wpforms-container-full input[type=datetime-local], .form-white .wpforms-container-full input[type=email], .form-white .wpforms-container-full input[type=month], .form-white .wpforms-container-full input[type=number], .form-white .wpforms-container-full input[type=password], .form-white .wpforms-container-full input[type=range], .form-white .wpforms-container-full input[type=search], .form-white .wpforms-container-full input[type=tel], .form-white .wpforms-container-full input[type=text], .form-white .wpforms-container-full input[type=time], .form-white .wpforms-container-full input[type=url], .form-white .wpforms-container-full input[type=week], .form-white .wpforms-container-full textarea {
    background-color: transparent !important;
    border-radius: 0px !important; 
    color: #ffffff !important;
    border: 0px solid #ffffff80 !important;
    border-bottom: 1px solid #ffffff80 !important;
    font-weight: 300;
}
.form-white .wpforms-container-full input[type=date]:focus, .form-white .wpforms-container-full input[type=datetime]:focus, .form-white .wpforms-container-full input[type=datetime-local]:focus, .form-white .wpforms-container-full input[type=email]:focus, .form-white .wpforms-container-full input[type=month]:focus, .form-white .wpforms-container-full input[type=number]:focus, .form-white .wpforms-container-full input[type=password]:focus, .form-white .wpforms-container-full input[type=range]:focus, .form-white .wpforms-container-full input[type=search]:focus, .form-white .wpforms-container-full input[type=tel]:focus,.form-white .wpforms-container-full input[type=text]:focus, .form-white .wpforms-container-full input[type=time]:focus, .form-white .wpforms-container-full input[type=url]:focus, .form-white .wpforms-container-full input[type=week]:focus, .form-white .wpforms-container-full select:focus, .form-white .wpforms-container-full textarea:focus {
    border: 0px solid #fff !important;
    border-bottom: 1px solid #fff !important;
    box-shadow: unset !important; 
    outline: none !important;
    color: #fff !important;
}
.form-white .wpforms-container-full input::placeholder, .form-white .wpforms-container-full textarea::placeholder {
    color: #fff !important;
    font-weight: 300;
}
.form-white select {
    background-image: linear-gradient(45deg, transparent 50%, #ffffff80 50%),linear-gradient(135deg, #ffffff80 50%, transparent 50%);
}
div.wpforms-container-full input[type=checkbox]+label, div.wpforms-container-full input[type=radio]+label {
    font-size: 12px !important;
}
div.wpforms-container-full input[type=checkbox]:before, div.wpforms-container-full input[type=checkbox]:after, div.wpforms-container-full input[type=radio]:before, div.wpforms-container-full input[type=radio]:after {
    width: 12px !important;
    height: 12px !important;
}
div.wpforms-container-full input[type=checkbox]:before, div.wpforms-container-full input[type=radio]:before {
    border-radius: 0px !important;
}
.form-white .wpforms-container-full input[type=checkbox]:focus:before, .form-white .wpforms-container-full input[type=radio]:focus:before {
    border: 0.6px solid #fff !important;
    box-shadow: unset !important;
}
.form-white .wpforms-container-full input[type=checkbox]:checked:before, .form-white .wpforms-container-full input[type=radio]:checked:before {
    border-color: #fff !important;
    box-shadow: unset !important;
}
.form-white .wpforms-container-full input[type=checkbox]:checked:after {
    height: calc(var(--wpforms-field-size-checkbox-size)* 0.6);
    border-left: 2px solid #fFF !important;
    border-bottom: 2px solid #ffF !important;
    transform: translate(0px, -1px) scale(0.5) rotate(-45deg) !important;
}
.form-white .wpforms-container-full input[type=checkbox]:before, .form-white .wpforms-container-full input[type=radio]:before {
    border-color: #ffffff80 !important;
    background-color: transparent !important;
}
div.wpforms-container-full .wpforms-field.wpforms-field-checkbox ul li input+label, div.wpforms-container-full .wpforms-field.wpforms-field-radio ul li input+label, div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox ul li input+label, div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple ul li input+label, div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox ul li input+label {
    top: 1px !important;
    padding-left: 5px !important;
}
body div.wpforms-container-full {
    margin-top: var(--space-xs) !important;
}
body .form-white div.wpforms-container-full button {
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    height: auto !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: unset;
    color: #fff !important;
    border: 1px solid #fff !important;
    font-family: var(--font-family-body);
    font-size: var(--font-size-btn, 18px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-btn, 18px);
    padding: 14px 32px 14px 22px !important;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    position: relative;
    text-decoration: none;
    text-transform: uppercase !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='white'/%3E%3Cpath d='M1 1H13V13' stroke='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: calc(50% + 150px) center;
    background-size: 14px 14px;
}
body .form-white div.wpforms-container-full button:hover{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='black'/%3E%3Cpath d='M1 1H13V13' stroke='black'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: calc(50% + 150px) center !important;
    background-size: 14px 14px !important;
    background-color: #fff !important;
    color: #000  !important;
    opacity: 1 !important;
}
div.wpforms-container-full input[type=submit]:hover, div.wpforms-container-full input[type=submit]:active, div.wpforms-container-full button[type=submit]:hover, div.wpforms-container-full button[type=submit]:active, div.wpforms-container-full .wpforms-page-button:hover, div.wpforms-container-full .wpforms-page-button:active {
    background: unset !important;
}
.form-white .wpforms-field-gdpr-checkbox label{
    color: #ffffff80 !important;
}
.form-white .wpforms-field-gdpr-checkbox a{
    color: #ffffff80 !important;
}
.form-white .wpforms-field-gdpr-checkbox a:hover{
    color: #ffffff !important;
}

div.wpforms-container-full select{
	line-height: 100% !important;
}

div.wpforms-container-full .wpforms-form label.wpforms-error, div.wpforms-container-full .wpforms-form em.wpforms-error{
    color: #ffffff !important;
}

div.wpforms-container-full .wpforms-form label.wpforms-error:before, div.wpforms-container-full .wpforms-form em.wpforms-error:before{
	 background-color: #ffffff !important;
}

div.wpforms-container-full .wpforms-form textarea {
    line-height: 1.3 !important;
}
div.wpforms-container-full .wpforms-form textarea.wpforms-field-small{
    height: calc(var(--wpforms-field-size-input-height) * 1.3) !important;
}
.wpforms-container .wpforms-required-label {
    color: #ffffff80 !important;
}
.wpforms-container .wpforms-submit-container{
	padding-top: 0px !important;	
}
.form-white .wpforms-confirmation-container-full {
    background: var(--secundaria) !important;
    border: 0 !important;
}
.form-white .wpforms-confirmation-container-full p {
    color: var(--principal) !important;
}
.form-white .wpforms-container-full select {
    background-color: transparent !important;
    border-radius: 0px !important;
    color: #ffffff;
    border: 0px solid #ffffff80 !important;
    border-bottom: 1px solid #ffffff80 !important;
    font-weight: 300;
    line-height: 120% !important;
}

/* FORM DARK */
.form-dark .wpforms-field{
    padding-top: 0px;
    padding-bottom: 25px;
}
.form-dark .wpforms-container{
    margin-top: 0px;
    margin-bottom: 0px;
}
.form-dark .wpforms-field-layout{
    padding-top: 0px;
    padding-bottom: 0px;
}
.form-dark .wpforms-container-full input[type=date], .form-dark .wpforms-container-full input[type=datetime], .form-dark .wpforms-container-full input[type=datetime-local], .form-dark .wpforms-container-full input[type=email], .form-dark .wpforms-container-full input[type=month], .form-dark .wpforms-container-full input[type=number], .form-dark .wpforms-container-full input[type=password], .form-dark .wpforms-container-full input[type=range], .form-dark .wpforms-container-full input[type=search], .form-dark .wpforms-container-full input[type=tel], .form-dark .wpforms-container-full input[type=text], .form-dark .wpforms-container-full input[type=time], .form-dark .wpforms-container-full input[type=url], .form-dark .wpforms-container-full input[type=week], .form-dark .wpforms-container-full select, .form-dark .wpforms-container-full textarea {
    background-color: transparent !important;
    border-radius: 0px !important; 
    color: #000000 !important;
    border: 0px solid #00000080 !important;
    border-bottom: 1px solid #00000080 !important;
	outline: unset !important;
	box-shadow: unset !important;
    font-weight: 300;
}
.form-dark .wpforms-container-full input[type=date]:focus, .form-dark .wpforms-container-full input[type=datetime]:focus, .form-dark .wpforms-container-full input[type=datetime-local]:focus, .form-dark .wpforms-container-full input[type=email]:focus, .form-dark .wpforms-container-full input[type=month]:focus, .form-dark .wpforms-container-full input[type=number]:focus, .form-dark .wpforms-container-full input[type=password]:focus, .form-dark .wpforms-container-full input[type=range]:focus, .form-dark .wpforms-container-full input[type=search]:focus, .form-dark .wpforms-container-full input[type=tel]:focus,.form-dark .wpforms-container-full input[type=text]:focus, .form-dark .wpforms-container-full input[type=time]:focus, .form-dark .wpforms-container-full input[type=url]:focus, .form-dark .wpforms-container-full input[type=week]:focus, .form-dark .wpforms-container-full select:focus, .form-dark .wpforms-container-full textarea:focus {
    border: 0px solid #000000 !important;
    border-bottom: 1px solid #000000 !important;
    box-shadow: unset !important; 
    outline: none !important;
    color: #000000 !important;
}
.form-dark .wpforms-container-full input::placeholder, .form-dark .wpforms-container-full textarea::placeholder {
    color: #000000 !important;
    font-weight: 300;
}
.form-dark select {
    background-image: linear-gradient(45deg, transparent 50%, #00000080 50%),linear-gradient(135deg, #00000080 50%, transparent 50%);
}
.form-dark .wpforms-container-full input[type=checkbox]:focus:before, .form-dark .wpforms-container-full input[type=radio]:focus:before {
    border: 0.6px solid #000000 !important;
    box-shadow: unset !important;
}
.form-dark .wpforms-container-full input[type=checkbox]:checked:before, .form-dark .wpforms-container-full input[type=radio]:checked:before {
    border-color: #000000 !important;
    box-shadow: unset !important;
}
.form-dark .wpforms-container-full input[type=checkbox]:checked:after {
    height: calc(var(--wpforms-field-size-checkbox-size)* 0.6);
    border-left: 2px solid #000000 !important;
    border-bottom: 2px solid #000000 !important;
    transform: translate(0px, -1px) scale(0.5) rotate(-45deg) !important;
}
.form-dark .wpforms-container-full input[type=checkbox]:before, .form-dark .wpforms-container-full input[type=radio]:before {
    border-color: #00000080 !important;
    background-color: transparent !important;
}
body .form-dark div.wpforms-container-full button{
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    height: auto !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: unset;
    color: #000000 !important;
    border: 1px solid #000000 !important;
    font-family: var(--font-family-body);
    font-size: var(--font-size-btn, 18px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-btn, 18px);    
    padding: 14px 32px !important;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    position: relative;
    text-decoration: none;
    text-transform: uppercase !important;	
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='black'/%3E%3Cpath d='M1 1H13V13' stroke='black'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: calc(50% + 103px) center;
    background-size: 14px 14px;
}
body .form-dark div.wpforms-container-full button:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='white'/%3E%3Cpath d='M1 1H13V13' stroke='white'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: calc(50% + 103px) center !important;
    background-size: 14px 14px !important;
}
body .form-dark div.wpforms-container-full button:hover{
    background-color: #000000 !important;
    color: #ffffff  !important;
    opacity: 1 !important;
}
.form-dark .wpforms-field-gdpr-checkbox label{
    color: #00000080 !important;
}
.form-dark .wpforms-field-gdpr-checkbox a{
    color: #00000080 !important;
}
.form-dark .wpforms-field-gdpr-checkbox a:hover{
    color: #000000 !important;
}
.form-dark div.wpforms-container-full .wpforms-form label.wpforms-error, 
.form-dark div.wpforms-container-full .wpforms-form em.wpforms-error {
    color: #000000 !important;
}
.form-dark .wpforms-confirmation-container-full {
    background: var(--principal) !important;
    border: 0 !important;
}
.form-dark .wpforms-confirmation-container-full p {
    color: var(--secundaria) !important;
}


.form-denuncias .wpforms-field-radio ul {
    display: flex !important;
    flex-wrap: wrap;
}
div.form-denuncias label, div.form-denuncias legend {
    font-size: calc(var(--font-size-btn) * 0.96) !important;
}
div.form-denuncias .wpforms-field-radio ul li label {
    font-size: calc(var(--font-size-btn) * 0.88) !important;
}
.form-denuncias input[type=radio]:before {
    top: 0 !important;
}
.form-denuncias input[type=radio]:checked:after {    
    background-color: #000000 !important;    
    top: 0 !important;
}
.form-denuncias h4 {
    margin-bottom: var(--space-xxs) !important;
}



/* Toggle Switch Styles */

.toggle-switch {
    position: relative !important;
}

.toggle-switch ul {
 
}

.toggle-switch fieldset {
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.toggle-switch legend {
    margin-bottom: 15px !important;    
}

.toggle-switch ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    background-color: #e9ecef  !important;
    border-radius: 25px !important;
    overflow: hidden !important;
    position: relative !important;
    gap: 0 !important;
    width: 140px !important;
}

.toggle-switch li {
    flex: 1 !important;
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    overflow: hidden !important;
}

.toggle-switch input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

.toggle-switch li.wpforms-selected {
    overflow: hidden !important;
}

div.wpforms-container-full .wpforms-field.wpforms-field-radio.toggle-switch ul li input+label {
    display: block !important;
    padding: 8px 12px !important;
    text-align: center !important;
    cursor: pointer;
    transition: all 0.3s ease !important;        
    color: #000000;
    position: relative !important;
    z-index: 3 !important;
}

.toggle-switch input[type="radio"]:checked + label {
    color: white !important;
}

/* Sliding background */
.toggle-switch ul::before {
    content: '';
    position: absolute !important;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: linear-gradient(135deg, #000000, #000000);
    border-radius: 25px;
    transition: transform 0.3s ease;
    z-index: 1;
}

/* When second option is selected */
.toggle-switch .choice-2 input[type="radio"]:checked ~ ::before,
.toggle-switch.choice-2-selected ul::before {
    transform: translateX(100%);
}

/* For browsers that support :has() */
.toggle-switch ul:has(.choice-2 input:checked)::before {
    transform: translateX(100%);
}

/* Focus states */
.toggle-switch input[type="radio"]:focus + label {
    outline: 2px solid #007cba;
    outline-offset: 2px;
}

/* Hover effects */
.toggle-switch label:hover {
    color: #495057;
}

.toggle-switch input[type="radio"]:checked + label:hover {
    color: white;
}

/* Additional styles for better appearance */
.toggle-switch .wpforms-selected input[type="radio"] + label {
    color: white;
}


div.wpforms-container-full.form-denuncias h3 {
    color: #fff !important;
    margin-top: 0 !important;
}
div.wpforms-container-full.form-denuncias .wpforms-confirmation-container-full {
    padding: 24px !important;
}

.consulta-denuncia { max-width: 600px; margin: 0 auto; }
.consulta-form {
    background: #f9f9f9;
    padding: 20px;
    border-radius: 0;
    margin-bottom: 20px;
}
.consulta-form input { width: 100%; padding: 10px; margin: 10px 0; border: 1px solid #ddd; border-radius: 3px; }
.consulta-form button { 
    text-transform: inherit;
    font-family: var(--font-family-body);
    font-size: var(--font-size-btn, 18px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--font-line-height-btn, 18px);
    text-transform: uppercase;
    padding: 14px 32px 14px 32px !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    border: 1px solid var(--principal) !important;
    color: var(--principal) !important;
 }
.consulta-form button:hover {
    background: #000000 !important;
    color: #ffffff !important;
}
.resultado-consulta {
    background: #fff;
    padding: 20px;
    border-radius: 0;
    border: 1px solid #000;
}
.estado-badge { padding: 5px 10px; border-radius: 3px; color: white; font-weight: bold; }
.estado-recebida { background: #17a2b8; }
.estado-em-análise { background: #ffc107; color: #212529; }
.estado-resolvida { background: #28a745; }
.estado-rejeitada { background: #dc3545; }
.estado-arquivada { background: #6c757d; }
.resultado-consulta h3 {
    padding-bottom: var(--space-s);
}
.resultado-consulta h4 {
    margin-top: 0 !important;
}
form.consulta-form h3 {
    padding-bottom: var(--space-s);
}

li.trp-language-switcher-container {
    display: none !important;
}


.show-mobile {
	display: none !important;
}

@media only screen and (max-width: 1441px) {
    body .form-white div.wpforms-container-full button {    
        background-position: calc(50% + 135px) center;    
    }    
    body .form-white div.wpforms-container-full button:hover {            
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='black'/%3E%3Cpath d='M1 1H13V13' stroke='black'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: calc(50% + 135px) center !important;
        background-size: 14px 14px !important;
    }
    body .form-dark div.wpforms-container-full button {
        background-position: calc(50% + 95px) center;
    }
    body .form-dark div.wpforms-container-full button:hover {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='white'/%3E%3Cpath d='M1 1H13V13' stroke='white'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: calc(50% + 95px) center !important;
        background-size: 14px 14px !important;
    }

    .grid-servicos-page .grid-servicos-content {    
        max-width: calc(70% + 115px);
    }


    .grid-portfolio .mfn-queryloop-item-wrapper:not(.em-destaque) .column_column.portfolio-cat {
        width: 100%;
        padding-top: var(--space-xs) !important;
    }
    .grid-portfolio .mfn-queryloop-item-wrapper:not(.em-destaque) .portfolio-cat p {
        justify-content: flex-start;
    }

    .counter .desc_wrapper h4.title {
        font-size: 22px;    
    }

}

/**************/
/*** TABLET ***/
/**************/
@media only screen and (max-width: 959px) {
	
	.show-mobile {
		display: block !important;
	}

	.mfn-header-menu .mfn-menu-link .label-wrapper {
		font-family: var(--font-family-title, "Noto Serif");
		font-size: var(--font-desktop-s3, 32px);
		font-style: normal;
		font-weight: 300;
		line-height: var(--font-line-height-s3, 36px);
	}
	.mfn-header-menu > .mfn-menu-li > .mfn-menu-link {    
		padding: 16px 0;    
	}


    li.trp-language-switcher-container {
        width: fit-content !important;
        display: block !important;
    }
    .mfn-header-tmpl-menu-sidebar .mfn-header-menu {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0 20px;
    }
    .mfn-header-tmpl-menu-sidebar .mfn-header-menu > .mfn-menu-li {
        width: 100%;
    }
    .current-language-menu-item a.mfn-menu-link span {
        font-weight: 700 !important;
    }


	.page-section-top .mcb-background-overlay {
		position: relative!important;
		height: 450px!important;
		width: 100%;
		background-size: cover !important;
		background-position: center top !important;
	}	
	.page-section-top .mcb-background-overlay-wrapper {
		width: 100% !important;
		left: 0 !important;
		position: relative !important;
	}
    .page-section-top.no-back .mcb-background-overlay-wrapper {
        display: none;
    }
	.page-section-top {
		display: flex;
		flex-direction: column-reverse;
	}


	.back-img-left,.back-img-right {
        display: flex;
        flex-direction: column-reverse;
    }

	.back-img-left>.mcb-background-overlay-wrapper, .back-img-left>div>.mcb-wrap-background-overlay,
	.back-img-right>.mcb-background-overlay-wrapper, .back-img-right>div>.mcb-wrap-background-overlay {
		width: 100% !important;
		left: 0 !important;
		position: relative !important;
	}
    
    .back-img-left>div>.mcb-background-overlay,.back-img-right>div>.mcb-background-overlay {
        position: relative!important;
        height: 400px!important;
        width: 100%;
    }
	
	.back-img-left>div>.mcb-wrap-background-overlay,
	.back-img-right>div>.mcb-wrap-background-overlay {
        position: relative!important;
        height: 280px!important;
        width: 100%;
    }

	.back-img-left .section_video,
	.back-img-right .section_video {
		position: relative !important;
		width: 100% !important;
		height: 400px !important;
		left: 0 !important;    
	}

	.section.back-img-left .section_video + .mcb-background-overlay-wrapper,
	.section.back-img-right .section_video + .mcb-background-overlay-wrapper {
		display: none !important;
	}

    .mcb-section.wrap-reverse>.mcb-section-inner,.mcb-wrap.column-reverse>.mcb-wrap-inner {
        flex-direction: column-reverse;
    }

    .counter .desc_wrapper h4.title {        
        font-size: var(--font-size-s4);
    }


	.slider-parceiros .mfn-queryloop-item-wrapper img {
    	max-height: 80px;    
	}


	.portfolio-info .mcb-background-overlay-wrapper {
		left: calc(0px + ((100vw - var(--container)) / 2)) !important;
		width: calc( 100vw - (calc(0px + ((100vw - var(--container)) / 2))) ) !important;
	}

	.mcb-section .mcb-wrap-kqie5tjl .mcb-wrap-inner-kqie5tjl > .mcb-wrap-background-overlay {    
    	transform-origin: top center !important;
	}

    .grid-servicos-page .mfn-queryloop-item-wrapper {        
        padding-left: 20%;
    }
    .grid-servicos-page .grid-servicos-img {    
        width: calc(20% - 16px) !important;
    }
    .grid-servicos-page .grid-servicos-content {    
        max-width: 60%;    
    }


    .grid-portfolio .mfn-queryloop-item-wrapper {
        width: 100% !important;
        margin: 0 !important;
    }


    .contacto-info .column_attr {
        flex-direction: column;
        align-items: baseline;
        gap: 6px;
    }
    .contacto-info, .contacto-phone, .contacto-email {
        width: 100% !important;
        flex: 0 0 100% !important;
    }

    body .form-white div.wpforms-container-full button {    
        background-position: calc(50% + 120px) center;
        background-size: 11px 11px;
    }
    body .form-white div.wpforms-container-full button:hover {            
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='black'/%3E%3Cpath d='M1 1H13V13' stroke='black'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: calc(50% + 120px) center !important;
        background-size: 11px 11px !important;
    }
    body .form-dark div.wpforms-container-full button {
        background-position: calc(50% + 80px) center;
        background-size: 11px 11px;
    }
    body .form-dark div.wpforms-container-full button:hover {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M1 13L13 1' stroke='white'/%3E%3Cpath d='M1 1H13V13' stroke='white'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: calc(50% + 80px) center !important;
        background-size: 11px 11px !important;
    }


	.no-pd-right-t {
		padding-right: 0 !important;
	}
	.no-pd-left-t {
		padding-left: 0 !important;
	}
	.no-pd-top-t {
		padding-top: 0 !important;
	}
	.no-pd-bot-t {
		padding-bottom: 0 !important;
	}
	.no-mg-bot-t {
		margin-bottom: 0 !important;
	}
}


/**************/
/*** MOBILE ***/
/**************/
@media only screen and (max-width: 767px) {

	.mfn-header-tmpl-menu-sidebar-right .mfn-close-icon {
    	right: 23px;
	}

	.page-section-top .mcb-background-overlay {		
		height: 350px!important;		
	}

    .button {
        padding: 7px 18px 7px 18px !important;
        gap: 10px;
    }
    .button .fa-arrow-right:before {    
        background-size: 11px;
        width: 11px;
        height: 11px;    
    }


	.back-img-left>.mcb-background-overlay,.back-img-right>.mcb-background-overlay {    
        height: 320px!important;        
    }

    .back-img-left>div>.mcb-background-overlay, .back-img-right>div>.mcb-background-overlay {    
        height: 320px!important;        
    }

	.back-img-left>div>.mcb-wrap-background-overlay,
	.back-img-right>div>.mcb-wrap-background-overlay {        
        height: 200px!important;        
    }

	.back-img-left .section_video,
	.back-img-right .section_video {				
		height: 200px !important;		
	}

    .grid-portfolio .mcb-wrap-inner {
        gap: 48px 0px;
    }
	.portfolio-cat p {
        justify-content: flex-start;
        align-items: baseline;
        flex-direction: column;
        gap: 3px;
    }
    .portfolio-cat p span:not(:last-child):before {
        display: none;
    }


	.grid-servicos-content {
    	max-width: 100%;    	
	}
	.grid-servicos .mfn-queryloop-item-wrapper.is-active {
		padding-bottom: 184px;
	}
	.grid-servicos-img {
		height: 160px;
		width: 100% !important;
		bottom: 0 !important;
		top: unset;
	}

    .grid-servicos-page .mfn-queryloop-item-wrapper {
        padding-left: 0%;
        flex-wrap: wrap;
    }
    .grid-servicos-page .grid-servicos-img {
        width: 100% !important;
    }
    .grid-servicos-page .grid-servicos-content {
        max-width: 100%;
        align-items: baseline;
        padding-right: 0;
    }
    .grid-servicos-page .column_button {
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        transform: translateY(10px);
        transition: max-height 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.4s ease-out 0.1s, transform 0.4s ease-out 0.1s;
        will-change: max-height, opacity, transform;
    }
    .grid-servicos-page .mfn-queryloop-item-wrapper.is-active .column_button {
        max-height: 200px;
        opacity: 1;
        transform: translateY(0);
    }
    .grid-servicos-page .mfn-queryloop-item-wrapper.is-active {
        background: transparent;
        margin-bottom: 48px;
        padding-top: 48px;
    }
    .grid-servicos-page .grid-servicos-content:after {
        content: '';
        font-size: 0;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='39' height='15' viewBox='0 0 39 15' fill='none'%3E%3Cpath d='M1 1L19.5 14L38 1' stroke='black'/%3E%3C/svg%3E");        
        width: 20px;
        height: 20px;
        background-size: 20px;
        background-repeat: no-repeat;
        /* display: block; */
        display: none;
    }
    .grid-servicos-page .clicked .grid-servicos-content:after {        
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='39' height='15' viewBox='0 0 39 15' fill='none'%3E%3Cpath d='M38 14L19.5 0.999998L1 14' stroke='black'/%3E%3C/svg%3E");
    }

    .portfolio-galeria .mcb-wrap-inner {        
        column-gap: 16px;
        columns: 1;
    }

    .pd-xl-wrap>div {
        padding: calc(var(--space-xl)*0.7);
    }

}



/*******************************/
/*******************************/
/*******************************/





@media only screen and (min-width: 959px) {
	.section_wrapper, .container {
    	max-width: var(--container) !important;
	}	
}
@media only screen and (max-width: 1700px) {
    :root {       
        --container: 1460px;  
    }    
}
@media only screen and (max-width: 1600px) {
    :root {       
        --container: 1360px;  
    }    
}
@media only screen and (max-width: 1500px) {
    :root {       
        --container: 1240px;  
    }    
}
@media only screen and (max-width: 1400px) {
    :root {       
        --container: 1160px;  
    }    
}
@media only screen and (max-width: 1300px) {
    :root {       
        --container: 1120px;  
    }    
}
@media only screen and (max-width: 1239px) {
    :root {       
        --container: 1010px;  
    }    
}
@media only screen and (max-width: 1179px) {
    :root {       
        --container: 915px;  
    }    
}
@media only screen and (max-width: 1024px) {
    
    
}
@media only screen and (max-width: 960px) {
    :root {       
        --container: 670px;  
    }
    .section_wrapper, .container, .with_aside .content_wrapper {
        max-width: var(--container);
    }
    .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;  
    }   
    
    .content_wrapper .section_wrapper, .container, .four.columns .widget-area, 
    .layout-full-width.header-fw #Action_bar .container, .layout-full-width.header-fw #Top_bar .container {
        padding-left: 18px !important;
        padding-right: 18px !important;
        max-width: 100% !important;
    }
    .full-width-mobile {
        width: 100vw !important;
        margin-left: calc(0px - ((100vw - var(--container)) / 2)) !important;
        margin-right: calc(0px - ((100vw - var(--container)) / 2)) !important;
    }
    .full-width-ex-mobile > .section_wrapper {
        max-width: 100% !important;
    }      
  
}
