@charset "utf-8";
/* CSS Document */


* { margin:0; padding:0; border:0; text-decoration: none; }

/* Normalizando */
html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,table { 
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym { border:0;}

* { margin:0; padding:0; border:0; text-decoration: none; }

/* Base   */


html {
    width: 100%;
	height:100%;
}

html, body {
    max-width: 100%;
    position: relative;
}

body {
    width:100%;
	height:100%;
}

a, a:hover, a:visited, a:link {
	display: block;
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6{ font-weight: normal; }

.clear {
	clear: both;
}


input:focus {
    outline: none;
}

/* remove border around all textarea elements */
textarea:focus {
    outline: none;
}

/* remove border around all select elements */
select:focus {
    outline: none;
}

/* remove border around all input,textarea and select elements */
input:focus, textarea:focus, select:focus {
    outline: none;
}

.slicknav_menu {
	display: none;
}

.trans {
	transition: 0.2s ease;
	-webkit-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
}



.tam8 { font-size: 8px; }	
.tam10 { font-size: 10px; }	
.tam12 { font-size: 12px; }	
.tam14 { font-size: 14px; }		
.tam16 { font-size: 16px; }		
.tam18 { font-size: 18px; }		
.tam20 { font-size: 20px; }		
.tam22 { font-size: 22px; }		
.tam25 { font-size: 25px; }		
.tam30 { font-size: 30px; }		
.tam35 { font-size: 35px; }		
.tam40 { font-size: 40px; }			
.tam50 { font-size: 50px; }			
.tam60 { font-size: 60px; }				
.tam65 { font-size: 65px; }
.tam70 { font-size: 70px; }		
.tam100 { font-size: 100px; }			

.font1 { font-family: 'Montserrat', sans-serif; font-weight: 300; font-style: normal;}
.font2 { font-family: 'Montserrat', sans-serif; font-weight: 500; font-style: normal;}
.font3 { font-family: 'Montserrat', sans-serif; font-weight: 700; font-style: normal;}
.font4 { font-family: 'Montserrat', sans-serif; font-weight: 900; font-style: normal;}
.font5 { font-family: 'Montserrat', sans-serif; font-weight: 400; font-style: normal;}
.fontino { font-family: "Ubuntu", sans-serif; font-weight: 400; font-style: normal;}

.branco { color: #FFFFFF; }	
.verde { color: #4CA972; }
.verdeclaro { color: #1CC48C; }
.preto { color: #000000; }

.bx-viewport {
	padding:0;
}
					
.slicknav_menu {
	display:none;
}

.link1 {
	background: #1CC48C;
    padding: 10px 22px;
    border-radius: 10px;
    border: 1px solid #1CC48C;
    display: inline-block;
    width: fit-content;
    margin-top: 20px;
}
	.link1:hover {
		background: #FFF;
		color: #1CC48C !important;
	}
.link2 {
	background: #FFF;
	color: #1CC48C !important;
    padding: 10px 15px !important;
    border-radius: 10px;
    border: 1px solid #1CC48C;
}
	.link2:hover {
		background: #1CC48C;
		color: #FFF !important;
	}

.link3 {
	color: #1CC48C !important;
    padding: 10px 15px !important;
    border-radius: 10px;
    border: 1px solid #1CC48C;
}
	.link3:hover {
		background: #1CC48C;
		color: #FFF !important;
	}

.link4 {
	color: #FFF !important;
    padding: 10px 15px !important;
    border-radius: 10px;
    border: 1px solid #FFF;
}
	.link4:hover {
		background: #FFF;
		color: #1CC48C !important;
	}

.link6 {
	color: #000 !important;
    padding: 10px 15px !important;
    border-radius: 5px;
    border: 1px solid #1CC48C;
}
	.link6:hover {
		color: #FFF !important;
	}

input:focus, textarea:focus, select:focus {
    outline: none;
}

input {
	border:1px solid #AAAAAA;
	padding: 2px 15px;
	margin: 5px 5px;
	height: 38px;
	color: #000;
	font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 400;
	background: none;
	border-radius: 5px;
}
	::-webkit-input-placeholder {
		color: #999;
	    font-family: 'Montserrat', sans-serif;
        font-size: 14px;
        font-weight: 400;
	}
	::placeholder {
		color: #999;
	    font-family: 'Montserrat', sans-serif;
        font-size: 14px;
        font-weight: 400;
	}
	
textarea {
	border:1px solid #AAAAAA;
	padding: 15px 10px;
	color: #000;
	font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
	background: none;
	margin: 5px 5px;
	border-radius: 5px;
}
select {
	border:1px solid #AAAAAA;
	padding: 8px 15px !important;
	height: 44px;
	margin: 5px 5px;
	color: #000;
	font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
	background: none;
    -webkit-border-radius: 0px;
	-webkit-appearance:none;
	border-radius: 5px;
}

	input.error, select.error, textarea.error {
		border:1px solid #FF0000;
	}
	
select::-ms-expand {
    display: none;
}

input.submit {
	border:1px solid #1CC48C;
	color: #1CC48C;
	text-transform: uppercase;
	font-family: "WoodchuckBold", sans-serif;
    font-size: 14px;
    font-weight: 700;
	cursor:pointer;
	border-radius: 5px;
	height: 38px;
    width: 180px !important;
	padding: 10px 0 15px 0 !important;
    background-color:#1CC48C9;
}
	input.submit:hover {
		background-color:#1CC48C;
		color: #FFF;
	}

#alinhar { 
	width: 980px;
	position:relative;
	margin:0 auto;
}


#loading {
	position: fixed;
	width: 100%;
	height: 100%;
	background: #FFF;
	display: none;
	z-index: 99999;
	opacity: 0.95;
}
	#loading span {
		position: absolute;
		height: 20px;
		width: 220px;
		top: 50%;
		left: 50%;
		padding: 90px 0 0 0;
		margin: -60px 0 0 -110px;
		display: block;
		text-align: center;
		background: url('/public/img/layout/default/loading.gif') center top no-repeat;
		background-size: 80px;
	}

#topo {
    display: block;
    position: fixed;
    width: 100%;
	top: 0;
	z-index: 9999;
	
	-webkit-transition: height 0.3s;
    -moz-transition: height 0.3s;
    -ms-transition: height 0.3s;
    -o-transition: height 0.3s;
    transition: height 0.3s;
}
	#topo.mini {
		height: 80px;
		box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.1);
	}
	#topo #traco {
		display: inline-block;
		padding: 10px 0;
		height: 20px;
		background: #26AE85;
		width: 100%;
		
		transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
	}
		#topo #traco .tesq {
			display: inline-block;
			position: relative;
			width: 400px;
			text-align: left;
			vertical-align: top;
			text-transform: none !important;
		}
		#topo #traco .tdir {
			display: inline-block;
			position:relative;
			width: 300px;
			text-align: right;
			float: right;
			padding: 0 40px 0 0;
			vertical-align: top;
			text-transform: none !important;
		}
		#topo #traco #lang {
			display: inline-block;
			position:relative;
			width: 80px;
			text-align: left;
			float: right;
			margin: -2px 0 0 0;
			vertical-align: top;
		}
			#topo #traco #lang a {
				display: inline-block;
				position:relative;
				width: 30px;
				height: 20px;
				text-indent: -9999px;
				text-align: left;
			}
				#topo #traco #lang a#langen {
					background: url('/public/img/layout/default/langen.png') center center no-repeat;
					background-size: 22px;
				}
				#topo #traco #lang a#langes {
					background: url('/public/img/layout/default/langes.png') center center no-repeat;
					background-size: 22px;
				}
				#topo #traco #lang a#langbr {
					background: url('/public/img/layout/default/langbr.png') center center no-repeat;
					background-size: 22px;
				}
		
		#topo.mini #traco {
			display: block !important;
			margin-top: -40px;
		}
	#topo #menu {
		display: inline-block;
		padding: 12px 0;
		background-color: rgba(0, 0, 0, 0.4);
		width: 100%;
		
		transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
	}
		#topo.mini #menu {
			display: inline-block;
			padding: 2px 0;
			background-color: #FFF;
			width: 100%;
		}
		#topo #menu #logo {
			display: inline-block;
			padding: 10px 10px;
			background: url('/public/img/layout/default/logoNOWSOLUTIONS-01.png') center center no-repeat;
			background-size: 220px;
			width: 200px;
			height: 70px;
			text-indent: -9999px;
			vertical-align: top;
		}
			#topo.mini #menu #logo {
				background: url('/public/img/layout/default/logoNOWSOLUTIONS-02.png') center center no-repeat;
				padding: 0 10px 0 10px;
				background-size: 180px;
				width: 180px;
				height: 80px;
			}
		#topo #menu nav {
			display: inline-block;
			padding: 22px 10px;
			width: 640px;
			vertical-align: top;
			z-index: 9999;
		}
			#topo.mini #menu nav {
				display: inline-block;
				padding: 15px 10px;
				width: 640px;
				vertical-align: top;
			}
			#topo #menu nav ul {
				display: inline-block;
				width: 100%;
			}
				#topo #menu nav ul li {
					display: inline-block;
					width: auto;
				}
					#topo #menu nav ul li a {
						display: inline-block;
						width: auto;
						padding: 12px 18px;
					}
						#topo.mini #menu nav ul li a.branco {
							color: #000;
						}
						#topo #menu nav ul li a.active,
						#topo #menu nav ul li a:hover{
							color: #1CC48C !important;
							font-weight: 500 !important;
						}
						#topo #menu nav ul li a.cont {
							border:1px solid #1CC48C;
							border-radius: 10px;
							margin: 0 10px;
						}
							#topo #menu nav ul li a.cont:hover {
								background: #1CC48C;
								color: #FFF !important;
							}

				/* ── Dropdown SERVIÇOS moderno ── */
				#topo #menu nav ul li {
					position: relative;
				}
				#topo #menu nav ul li ul.serv {
					display: flex;
					flex-wrap: wrap;
					position: absolute;
					top: 100%;
					left: 50%;
					transform: translateX(-50%) translateY(6px);
					width: 680px;
					z-index: 99999;
					background: #fff;
					border-top: 3px solid #1CC48C;
					border-radius: 0 0 12px 12px;
					box-shadow: 0 12px 40px rgba(0,0,0,0.13);
					margin-top: 0;
					padding: 0;
					/* oculto via opacity — sem display:none, sem flash */
					opacity: 0;
					visibility: hidden;
					pointer-events: none;
					transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
				}
				#topo #menu nav ul li:hover ul.serv {
					opacity: 1;
					visibility: visible;
					pointer-events: auto;
					transform: translateX(-50%) translateY(0);
				}
					#topo #menu nav ul li ul.serv li {
						display: block;
						width: 50%;
						padding: 24px 22px;
						text-align: left;
						box-sizing: border-box;
						transition: background 0.2s ease;
					}
					/* separador vertical entre as colunas */
					#topo #menu nav ul li ul.serv li:nth-child(odd) {
						border-right: 1px solid #f0f0f0;
					}
					/* separador horizontal entre as linhas */
					#topo #menu nav ul li ul.serv li:nth-child(3),
					#topo #menu nav ul li ul.serv li:nth-child(4) {
						border-top: 1px solid #f0f0f0;
					}
					#topo #menu nav ul li ul.serv li:hover {
						background: #f9fffe;
					}
						#topo #menu nav ul li ul.serv li span {
							width: 100%;
							display: block;
							font-size: 10px;
							font-weight: 700;
							letter-spacing: 0.1em;
							color: #1CC48C;
							text-transform: uppercase !important;
							padding: 0 0 10px 0;
							border-bottom: 1px solid #eee;
							margin-bottom: 8px;
						}
						#topo #menu nav ul li ul.serv li a {
							padding: 5px 0;
							display: block;
							font-size: 11px;
							font-weight: 400;
							color: #333;
							line-height: 1.4;
							transition: color 0.15s ease;
						}
						#topo #menu nav ul li ul.serv li a:hover {
							color: #1CC48C !important;
						}
						#topo #menu nav ul li ul.serv li a.avanca {
							padding-left: 16px;
							background: url('/public/img/layout/default/favico.png') 3px center no-repeat;
							background-size: 7px;
						}
		#topo #menu #redes {
			display: inline-block;
			padding: 10px 10px;
			width: 64px;
			vertical-align: top;
			position: relative;
		}
				#topo.mini #menu #redes {
					padding: 0px 10px;
				}
				#topo #menu #redes li {
					display: inline-block;
					width: auto;
				}
					#topo #menu #redes li a#linkedin {
						display: inline-block;
						margin: 22px 4px;
						width: 20px;
						height: 20px;
						background: url('/public/img/layout/default/i-linkwhite.png') center center no-repeat;
						background-size: 18px;
						text-indent: -9999px;
						vertical-align: top;
					}
						#topo #menu #redes li a#linkedin:hover {
							background: url('/public/img/layout/default/i-linkgreen.png') center center no-repeat;
							background-size: 18px;
						}
					
					#topo.mini #menu #redes li a#linkedin {
						margin: 27px 4px 5px 4px;
						background: url('/public/img/layout/default/i-linkgreen.png') center center no-repeat;
						background-size: 18px;
					}
					#topo #menu #redes li a#instagram {
						display: inline-block;
						margin: 22px 4px;
						width: 20px;
						height: 20px;
						background: url('/public/img/layout/default/i-instawhite.png') center center no-repeat;
						background-size: 18px;
						text-indent: -9999px;
						vertical-align: top;
					}
						#topo #menu #redes li a#instagram:hover {
							background: url('/public/img/layout/default/i-instagreen.png') center center no-repeat;
							background-size: 18px;
						}
					
					#topo.mini #menu #redes li a#instagram {
						margin: 27px 4px 5px 4px;
						background: url('/public/img/layout/default/i-instagreen.png') center center no-repeat;
						background-size: 18px;
					}
 
#corpo {
	position: relative;
    display: inline-block;
	width: 100%;
	height: auto;
    margin: 0 auto;
    z-index: 999;
	background-size: cover;
}

	#corpo #construcao {
		position: relative;
		width: 350px;
		margin: 50px auto;
		padding: 20px;
		display: block;
		text-align: center;
	}
		#corpo #construcao a#logo {
			display: inline-block;
			width: 274px;
			height: 85px;
			background: url('/public/img/layout/default/logo01.png') center center no-repeat;
			background-size: 200px auto;
			text-indent: -9999px;
		}

		#corpo #construcao .tx1 {
			display: inline-block;
			width: 100%;
			padding: 20px 0;
		}
		#corpo #construcao .tx2 {
			display: inline-block;
			width: 100%;
			padding: 20px 0;
		}
		
		#corpo #construcao #links {
			display: inline-block;
			width: 100%;
			z-index: 99999;
			text-align: center;
			padding: 10px 0 0 0;
		}
			#corpo #construcao #links span {
				display: inline-block;
				width: 100%;
				padding: 0 0 20px 0;
			}
			#corpo #construcao #links a {
				display: inline-block;
				width: 240px;
				border: 1px solid #4AA872;
				border-radius: 10px;
				margin: 7px 20px;
				text-align: left;
				padding: 17px 15px 17px 60px;
			}
				#corpo #construcao #links a.active, #links a:hover {
					background-color: #4AA872 !important;
					color: #FFF !important;
				}
				#corpo #construcao #links a#whats {
					background: url("/public/img/layout/default/i-whats.png") 20px 14px no-repeat;
					background-size: 25px;
				}
				#corpo #construcao #links a#linkedin {
					background: url("/public/img/layout/default/i-linkedin3.png") 22px 16px no-repeat;
					background-size: 20px;
				}
					#corpo #construcao #links a#linkedin:hover {
						background: url("/public/img/layout/default/i-linkedin3.png") 22px 16px no-repeat;
						background-size: 20px;
					}
				#corpo #construcao #links a#mail {
					background: url("/public/img/layout/default/i-mail.png") 20px 18px no-repeat;
					background-size: 24px;
				}
					#corpo #construcao #links a#mail:hover {
						background: url("/public/img/layout/default/i-mail2.png") 20px 18px no-repeat;
						background-size: 24px;
					}

		#corpo #construcao a#port {
            display: block;
            position: relative;
            width: 350px;
            height: 100px;
            margin: 25px auto 0 auto;
        }
            #corpo #construcao a#port img {
                display: block;
                position: absolute;
                width: 180px;
                height: auto;
                float: left;
                z-index: 999;
            }
            #corpo #construcao a#port span {
                display: block;
                position: relative;
                float: left;
                width: 120px;
                background-color: #4AA872;
                border-radius: 10px;
                margin: 15px 0;
                padding: 15px 25px 15px 200px;
            
            }
		#corpo #construcao #bx1 {
            display: inline-block;
            width: 360px;
            padding: 10px 0 40px 0;
            border-bottom: 2px solid #CCD462;
        }
            #corpo #construcao #bx1 a#logo {
                display: inline-block;
                width: 131px;
                height: 56px;
                background: url("/public/img/layout/default/now-white.png") left center no-repeat;
                background-size: 120px;
                padding: 0 0 0px 0;
                text-indent: -9999px;
                text-align: left;
                vertical-align: top;
            }
            #corpo #construcao #bx1 ul {
                display: inline-block;
                width: 80px;
                vertical-align: top;
                padding: 15px 0 0 0;
            }
                #corpo #construcao #bx1 ul li {
                    display: inline-block;
                    width: 25px;
                    height: 25px;
                    margin: 0 2px;
                }
                #corpo #construcao #bx1 ul li a {
                    display: inline-block;
                    width: 25px;
                    height: 25px;
                    margin: 0 2px;
                }
                    #corpo #construcao #bx1 ul li a#linkedin {
                        background: url("/public/img/layout/default/i-linkedin.png") center center no-repeat;
                        background-size: 20px;
                        text-indent: -9999px;
                    }
                    #corpo #construcao #bx1 ul li a#instagran {
                        background: url("/public/img/layout/default/i-instagram.png") center center no-repeat;
                        background-size: 20px;
                        text-indent: -9999px;
                    }
            
            #corpo #construcao #bx1 span {
                display: inline-block;
                width: auto;
                vertical-align: top;
                padding: 20px 0 0 0;
            }
        #corpo #construcao #bx2 {
            display: inline-block;
            width: auto;
            padding: 40px 0 20px 0;
        }
    

	#corpo #destaque {
		position: relative;
		width: 100%;
		height: 400px; /* Mantido conforme original */
		padding: 180px 0 0 0;
		overflow: hidden; /* Corta o vídeo que sobrar */
		background: #000; /* Fundo preto caso o vídeo demore a carregar */
	}

	/* Novo: Estilo do Vídeo */
	#bgVideo {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
		z-index: 1;
		opacity: 1;
	}

	/* Overlay escuro sobre o vídeo — substitui opacity no elemento */
	#corpo #destaque::after {
		content: '';
		position: absolute;
		top: 0; left: 0;
		width: 100%; height: 100%;
		background: rgba(0, 0, 0, 0.38);
		z-index: 2;
		pointer-events: none;
	}

	/* Garantir que o conteúdo apareça na frente do vídeo e do overlay */
	#corpo #destaque #alinhar {
		position: relative;
		z-index: 3;
	}

	/* Seus estilos originais de texto (mantidos) */
	#corpo #destaque span#txt1 {
		display: inline-block;
		width: 120px;
		padding: 20px 0 15px 60px;
		background: url("/public/img/layout/default/brazil1.png") 10px 20px no-repeat;
		background-size: 45px;
		border-bottom: 1px solid #FFF;
	}
	#corpo #destaque span#txt2 {
		display: inline-block;
		width: 500px;
		padding: 30px 0 20px 0;
		margin: 0 300px 0 0;
	}
	#corpo #destaque span#txt3 {
		display: inline-block;
		width: 500px;
		padding: 10px 0 10px 0;
		line-height: 140%;
	}
	

	#corpo #tpbox  {
		position: relative;
		width: 100%;
		display: inline-block;
		margin: 30px 0;
	}
		#corpo #tpbox #back  {
			position: absolute;
			height: 100px;
			width: 100%;
			color: #FFF;
			opacity: 0.2;
			text-shadow: -1px 0 #1CC48C, 0 1px #1CC48C, 1px 0 #1CC48C, 0 -1px #1CC48C;
			vertical-align: top;
			top: 0;
		}
		#corpo #tpbox #front  {
			position: relative;
			display: inline-block;
			width: auto;
			padding: 45px 10px 0 10px;
			vertical-align: top;
		}
			#corpo #tpbox #front.front2  {
				width: 300px;
				padding: 25px 10px 0 10px;
			}
			#corpo #tpbox #front.front3  {
				width: 320px;
				padding: 25px 10px 0 10px;
			}
		#corpo #tpbox #text  {
			position: relative;
			display: inline-block;
			width: auto;
			max-width: 520px;
			padding: 47px 0px 10px 40px;
			vertical-align: top;
		}
		#corpo #tpbox #text2  {
			position: relative;
			display: inline-block;
			width: auto;
			max-width: 480px;
			padding: 47px 0px 10px 40px;
			vertical-align: top;
		}
		#corpo #tpbox #text3  {
			position: relative;
			display: inline-block;
			width: auto;
			max-width: 300px;
			padding: 47px 0px 10px 40px;
			vertical-align: top;
		}
			#corpo #tpbox.tpbox2 #text  {
				max-width: 600px;
			}
		
		#corpo #tpbox #text4  {
			position: relative;
			display: inline-block;
			width: auto;
			max-width: 520px;
			padding: 47px 0px 10px 20px;
			vertical-align: top;
		}
		#corpo #tpbox a  {
			position: relative;
			display: inline-block;
			width: auto;
			margin: 42px 10px 0 0;
			float: right;
		}
		/* tpbox2: front + row ficam lado a lado */
		#corpo #tpbox.tpbox2 {
			display: flex;
			align-items: center;
			flex-wrap: nowrap;
			gap: 0;
		}
		#corpo #tpbox.tpbox2 #back {
			position: absolute;
		}
		#corpo #tpbox.tpbox2 #front {
			flex-shrink: 0;
			padding: 45px 20px 0 10px;
		}
		/* Wrapper flex para texto + botão na mesma linha */
		#corpo #tpbox .tpbox-row {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 24px;
			flex: 1;
			padding-left: 10px;
		}
		#corpo #tpbox .tpbox-row #text {
			flex: 1;
			padding: 47px 0 10px 30px;
		}
		#corpo #tpbox .tpbox-row a {
			float: none;
			margin: 35px 0 0 0;
			white-space: nowrap;
			flex-shrink: 0;
		}
	#corpo #servicos {
			position: relative;
			width: 100%;
			display: inline-block;
		}

		#corpo #servicos ul {
			position: relative;
			width: 100%;
			display: flex;
			flex-wrap: wrap;
			gap: 20px;
			text-align: left;
			margin: 10px 0 50px 0;
		}
		/* ── Serviço card ── */
		/* Base genérica — aplica em #servicos, #eventos, #ss */
		#corpo .serv-card {
			position: relative;
			width: 290px;
			padding: 10px;
			display: inline-block;
			vertical-align: top;
			border-radius: 10px;
			background: #fff;
			box-sizing: border-box;
			transition: box-shadow 0.3s ease, transform 0.3s ease;
		}

		#corpo .serv-card:hover {
			box-shadow: 2px 2px 12px 2px rgba(0,0,0,0.10);
			transform: translateY(-3px);
		}

		/* Foto com zoom */
		#corpo .serv-img-wrap {
			width: 100%;
			height: 170px;
			overflow: hidden;
			border-radius: 8px;
			margin-bottom: 12px;
		}

			#corpo .serv-img-wrap img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center bottom;
				transition: transform 0.6s ease;
				display: block;
			}

			#corpo .serv-card:hover .serv-img-wrap img {
				transform: scale(1.04);
			}

		/* Título */
		#corpo .serv-titulo {
			display: block;
			padding: 14px 0 12px 0;
			line-height: 1.3;
			transition: color 0.2s;
		}

			#corpo .serv-card:hover .serv-titulo {
				color: #1CC48C !important;
			}

		/* Subtítulo */
		#corpo .serv-sub {
			display: block;
			line-height: 1.5;
			height: 72px;
			overflow: hidden;
			color: #666;
			padding: 0 0 10px 0;
		}

		/* CTA */
		#corpo .serv-cta {
			display: inline-flex;
			align-items: center;
			gap: 6px;
			margin-top: 4px;
			transition: gap 0.25s ease;
		}

			#corpo .serv-card:hover .serv-cta {
				gap: 10px;
				background: #1CC48C !important;
				color: #FFF !important;
			}

		#corpo .serv-arrow {
			display: inline-block;
			transition: transform 0.25s ease;
            height: auto !important;
		}

			#corpo .serv-card:hover .serv-arrow {
				transform: translateX(4px);
			}
	

	#corpo #portfolio {
		position: relative;
		width: 100%;
		display: inline-block;
		background: #D7F4EA;
		padding: 50px 0;
		text-align: center;
	}
		#corpo #portfolio #esq {
			position: relative;
			width: 300px;
			padding: 0 30px 0 0;
			display: inline-block;
			text-align: left;
					vertical-align: top;
		}
			#corpo #portfolio span.font4 {
				position: relative;
				width: 100%;
				padding: 60px 0 20px 0;
				display: inline-block;
				line-height: 100%;
				text-transform: uppercase !important;
			}
			#corpo #portfolio span.font1 {
				position: relative;
				width: 100%;
				padding: 10px 0 0 0;
				display: inline-block;
				line-height: 140%;
			}
		#corpo #portfolio #dir {
			position:relative;
			width: 520px;
			display: inline-block;
			text-align: left;
					vertical-align: top;
		}
			#corpo #portfolio #dir ul {
				position: relative;
				width: 100%;
				height: auto;
				display: flex;
				flex-wrap: wrap;
				gap: 20px;
				text-align: left;
				vertical-align: top;
			}
				/* case-card dentro do #portfolio da home */
			#corpo #portfolio #dir ul li.case-card {
				width: calc(50% - 12px);
				height: auto;
				margin: 0;
				padding: 0;
				display: inline-block;
				vertical-align: top;
				border-radius: 14px;
				overflow: hidden;
			}

				#corpo #portfolio #dir ul li.case-card .case-card-inner {
					height: 430px;
				}

				#corpo #portfolio #dir ul li.case-card:hover {
					margin: 0;
					box-shadow: none;
				}

	#corpo #thenow {
		position: relative;
		width: 100%;
		display: inline-block;
		background: #26AE85;
		padding: 50px 0;
		text-align: center;
	}
		#corpo #thenow #map01 {
			position: absolute;
			width: 50%;
			margin: 0 0 0 -100px;
			left: 0;
			top: -120px;
			height: 750px;
			display: block;
			background: url("/public/img/layout/default/mapa1.webp") right top no-repeat;
			background-size: 700px;
			z-index: 99999;
			transform-style: preserve-3d;
			transform-origin: center center;
			will-change: transform;
			transition: margin 2s ease, top 2s ease;
			filter: drop-shadow(0 24px 48px rgba(0,0,0,0.28));
		}
			#corpo #thenow #map01.active {
				margin: 0 0 0 -80px;
				top: -100px;
			}
			/* SVG overlay — transparente, somente para interatividade */
			#mapa-brasil {
				position: absolute;
				top: 0;
				right: 0;
				width: 700px;
				height: 780px;
				pointer-events: all;
				overflow: visible;
			}
			/* Hit-areas: invisíveis por padrão */
			.br-state {
				fill: transparent;
				stroke: transparent;
				stroke-width: 0;
				cursor: default;
				transition: fill 0.2s ease;
			}
			/* Hover — apenas cursor muda, sem fill/stroke/cor */
			.br-state:hover {
				fill: transparent;
				stroke: none;
			}
			/* Estados ATIVOS */
			.br-state.active {
				cursor: pointer;
			}
			/* Hover em estado ativo — apenas cursor, sem destaque visual */
			.br-state.active:hover {
				fill: transparent;
				stroke: none;
				filter: none;
			}
			/* Tooltip de estado */
		/* Legend/badge do mapa */
		#map-legend {
			position: absolute;
			top: 50%;
			right: 18px;
			transform: translateY(-50%);
			display: flex;
			align-items: center;
			gap: 10px;
			background: #1CC48C;
			backdrop-filter: blur(6px);
			-webkit-backdrop-filter: blur(6px);
			border: 1px solid rgba(255,255,255,0.25);
			border-radius: 40px;
			padding: 8px 18px 8px 12px;
			white-space: nowrap;
			pointer-events: none;
		}
		.map-leg-text strong,
		.map-leg-text span {
			color: #fff !important;
		}
		.map-leg-dot {
			width: 11px;
			height: 11px;
			border-radius: 50%;
			background: #fff;
			box-shadow: 0 0 0 3px rgba(255,255,255,0.35);
			flex-shrink: 0;
			animation: map-leg-pulse 2.2s ease-in-out infinite;
		}
		@keyframes map-leg-pulse {
			0%, 100% { box-shadow: 0 0 0 3px rgba(255,255,255,0.35); }
			50%       { box-shadow: 0 0 0 7px rgba(255,255,255,0.15); }
		}
		.map-leg-text {
			display: flex;
			flex-direction: column;
			gap: 1px;
		}
		.map-leg-text strong {
			font-size: 11px;
			color: #fff;
			letter-spacing: 0.04em;
			text-transform: uppercase;
		}
		.map-leg-text span {
			font-size: 10px;
			color: rgba(255,255,255,0.7);
			letter-spacing: 0.02em;
		}
		/* ── Contador de fotos no card de evento ── */
		.ev-img-wrap { position: relative; }
		.ev-photo-count {
			position: absolute;
			bottom: 8px;
			right: 8px;
			background: rgba(0,0,0,0.62);
			color: #fff;
			font-size: 11px;
			font-family: 'Montserrat', sans-serif;
			font-weight: 600;
			padding: 3px 9px 3px 7px;
			border-radius: 20px;
			letter-spacing: 0.04em;
			pointer-events: none;
			display: flex;
			align-items: center;
			gap: 4px;
		}
		.ev-cam-icon {
		display: inline-block;
		vertical-align: middle;
		margin-top: -2px;
	}

		/* ══════════════════════════════════════════
		   NOW Lightbox
		══════════════════════════════════════════ */
		#now-lightbox {
			display: none;
			position: fixed;
			inset: 0;
			z-index: 99999;
		}
		#now-lightbox.open { display: block; }
		#now-lb-overlay {
			position: absolute;
			inset: 0;
			background: rgba(0,0,0,0.93);
			cursor: pointer;
		}
		#now-lb-wrap {
			position: absolute;
			inset: 0;
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
			padding: 20px 60px;
			box-sizing: border-box;
			pointer-events: none;
		}
		#now-lb-img-wrap {
			position: relative;
			flex: 1 1 auto;
			display: flex;
			align-items: center;
			justify-content: center;
			max-height: calc(100vh - 160px);
			width: 100%;
			pointer-events: auto;
		}
		#now-lb-img {
			max-width: 100%;
			max-height: 100%;
			object-fit: contain;
			border-radius: 6px;
			transition: opacity 0.22s ease;
			display: block;
		}
		#now-lb-img.loading { opacity: 0; }
		#now-lb-loader {
			position: absolute;
			color: rgba(255,255,255,0.4);
			font-size: 22px;
			letter-spacing: 8px;
			display: none;
			animation: lb-dots 1.2s ease-in-out infinite;
		}
		@keyframes lb-dots {
			0%,100% { opacity: 0.2; } 50% { opacity: 1; }
		}
		/* Nav buttons */
		#now-lb-prev, #now-lb-next {
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			background: rgba(255,255,255,0.1);
			border: 1px solid rgba(255,255,255,0.18);
			color: #fff;
			font-size: 20px;
			width: 46px;
			height: 46px;
			border-radius: 50%;
			cursor: pointer;
			z-index: 2;
			pointer-events: auto;
			transition: background 0.2s ease, transform 0.2s ease;
			display: flex;
			align-items: center;
			justify-content: center;
		}
		#now-lb-prev { left: 14px; }
		#now-lb-next { right: 14px; }
		#now-lb-prev:hover, #now-lb-next:hover {
			background: rgba(28,196,140,0.7);
			transform: translateY(-50%) scale(1.08);
		}
		#now-lb-prev.hidden, #now-lb-next.hidden { opacity: 0.2; pointer-events: none; }
		/* Close */
		#now-lb-close {
			position: absolute;
			top: 14px;
			right: 14px;
			background: rgba(255,255,255,0.1);
			border: 1px solid rgba(255,255,255,0.18);
			color: #fff;
			font-size: 18px;
			width: 40px;
			height: 40px;
			border-radius: 50%;
			cursor: pointer;
			z-index: 3;
			pointer-events: auto;
			display: flex;
			align-items: center;
			justify-content: center;
			transition: background 0.2s ease;
		}
		#now-lb-close:hover { background: rgba(200,50,50,0.65); }
		/* Footer info */
		#now-lb-footer {
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
			width: 100%;
			padding: 12px 4px 6px;
			pointer-events: auto;
			gap: 4px;
			text-align: center;
		}
		#now-lb-title {
			color: #fff;
			font-size: 14px;
			letter-spacing: 0.04em;
			text-align: center;
			width: 100%;
		}
		#now-lb-counter {
			color: rgba(255,255,255,0.55);
			font-size: 11px;
			white-space: nowrap;
			text-align: center;
		}
		/* Thumbnails strip */
		#now-lb-thumbs {
			display: flex;
			gap: 6px;
			flex-wrap: nowrap;
			overflow-x: auto;
			padding: 4px 2px 2px;
			pointer-events: auto;
			scrollbar-width: thin;
			scrollbar-color: rgba(255,255,255,0.3) transparent;
			max-width: 100%;
		}
		#now-lb-thumbs::-webkit-scrollbar { height: 4px; }
		#now-lb-thumbs::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.3); border-radius: 4px; }
		.now-lb-thumb {
			flex: 0 0 54px;
			height: 40px;
			object-fit: cover;
			border-radius: 4px;
			cursor: pointer;
			opacity: 0.5;
			border: 2px solid transparent;
			transition: opacity 0.18s, border-color 0.18s;
		}
		.now-lb-thumb.active {
			opacity: 1;
			border-color: #1CC48C;
		}
		.now-lb-thumb:hover { opacity: 0.85; }
		/* Mobile */
		@media screen and (max-width: 768px) {
			#now-lb-wrap { padding: 14px 44px; }
			#now-lb-prev { left: 4px; }
			#now-lb-next { right: 4px; }
			#now-lb-prev, #now-lb-next { width: 38px; height: 38px; font-size: 16px; }
			.now-lb-thumb { flex: 0 0 44px; height: 32px; }
		}

		#corpo #thenow #dir {
			position: relative;
			display: block;
			width: 500px;
			float: right;
			padding: 20px 20px;
			text-align: left;
		}
			#corpo #thenow #dir span.thenow-map-txt {
				padding: 10px 0px 30px 0;
				
			}
			#corpo #thenow #dir span {
				display: inline-block;
				width: 410px;
				padding: 0 0px 10px 0;
				
			}
			#corpo #thenow #dir div#bx {
				display: inline-block;
				width: 90px;
				padding: 2px 40px 10px 90px;
				background: url("/public/img/layout/default/brazil2.png") 2px top no-repeat;
        		background-size: 70px;
				vertical-align: top;
				text-transform: none !important;
			}
				#corpo #thenow #dir div#bx span {
					display: inline-block;
					width: 100px;
				}
			#corpo #thenow #dir div#bx2 {
				display: inline-block;
				width: 170px;
				padding: 2px 10px 10px 90px;
				background: url("/public/img/layout/default/povo1.png") 2px top no-repeat;
        		background-size: 65px;
				vertical-align: top;
				text-transform: none !important;
			}
				#corpo #thenow #dir div#bx2 span {
					display: inline-block;
					width: 120px;
				}
			#corpo #thenow #dir div#bx3 {
				display: inline-block;
				width: 230px;
				padding: 40px 5px 20px 5px;
				vertical-align: top;
				text-transform: none !important;
				text-align: center;
			}
				#corpo #thenow #dir div#bx3 span {
					display: inline-block;
					width: auto;
					padding: 0;
				}
				#corpo #thenow #dir div#bx3 span.tam65 {
					padding: 0 0 0 0;
					text-align: center;
				}

				#corpo #thenow #dir div#bx3 span.tam14 {
					display: inline-block;
					width: 210px;
					padding: 0px 0;
					vertical-align: top;
					text-align: center;
				}

	#corpo #eventos {
		position: relative;
		width: 100%;
		display: inline-block;
		padding: 30px 0;
	}
		#corpo #eventos ul {
			position: relative;
			width: 100%;
			height: auto;
			display: flex;
			flex-wrap: wrap;
			gap: 20px;
			text-align: left;
			margin: 10px 0 30px 0;
		}

		/* Eventos — foto mais alta (portrait), herda tudo de .serv-card */

		#corpo #eventos .ev-img-wrap,
		#corpo #thenow2 .ev-img-wrap {
			height: 280px !important;
		}
		#corpo #eventos .ev-img-wrap img,
		#corpo #thenow2 .ev-img-wrap img {
			width: 100% !important;
			height: 100% !important;
			object-fit: cover !important;
			object-position: center bottom !important;
			display: block !important;
		}

		#corpo #eventos .ev-data {
			display: block;
			padding: 4px 0 2px 0;
		}

	#corpo #faq {
		position: relative;
		width: 100%;
		height: 480px;
		display: inline-block;
		background: #26AE85;
		text-align: center;
	}

		
		#corpo #faq #esq1 {
			position: absolute;
			width: 52%;
			height: 480px;
			text-align: left;
			vertical-align: top;
		}

		#corpo #faq #dir1 {
			position: absolute;
			width: 48%;
			height: 480px;
			right: 0;
			margin-right: 0;
			background: url("/public/img/layout/default/back02.png") center center no-repeat;
        	background-size: cover;
			vertical-align: top;
		}
		#corpo #faq #esq {
			position: relative;
			width: 440px;
			display: inline-block;
			padding: 50px 0px 50px 0px;
			text-align: left;
			vertical-align: top;
		}
			#corpo #faq #esq ul li {
				display: block;
				padding: 10px 0;
			}
				#corpo #faq #esq ul li h5 {
					cursor: pointer;
				}
			#corpo #faq #esq ul li p {
				display: block;
				padding: 10px 0;
			}
		#corpo #faq #dir {
			position: relative;
			width: 380px;
			right: 0;
			margin-right: 0;
			padding: 150px 0px 20px 100px;
			display: inline-block;
			vertical-align: top;
			text-align: left;
		}

		/* ── Animação "Quais suas dúvidas" ── */
		@keyframes faq-shimmer {
			0%   { background-position: -200% center; }
			100% { background-position: 200% center; }
		}
		@keyframes faq-float {
			0%, 100% { transform: translateY(0px); }
			50%       { transform: translateY(-6px); }
		}

		#corpo #faq #dir span {
			display: inline-block;
			background: linear-gradient(
				90deg,
				#ffffff 0%,
				#ffffff 38%,
				#7ee8c4 50%,
				#ffffff 62%,
				#ffffff 100%
			);
			background-size: 200% auto;
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;
			background-clip: text;
			animation: faq-shimmer 5s linear infinite, faq-float 5s ease-in-out infinite;
		}

	#corpo #redes {
		position: relative;
		width: 100%;
		display: inline-block;
		padding: 30px 0;
	}
		#corpo #redes ul {
			position: relative;
			width: 100%;
			display: block;
			text-align: center;
			margin: 20px 0 20px 0;
		}
			#corpo #redes ul li {
				position: relative;
				width: 310px;
				padding: 5px 5px;
				display: inline-block;
				text-align: left;
			}
				#corpo #redes ul li img {
					position: relative;
					width: 310px;
					height: 388px;
					object-fit: cover;
					object-position: center;
					padding: 0 0 0 0;
					display: block;
					border-radius: 10px;
				}

			/* ── Instagram posts overlay ── */
			#corpo #redes ul#insta-posts li {
				overflow: hidden;
			}
			#corpo #redes .insta-post-link {
				position: relative;
				display: block;
				border-radius: 10px;
				overflow: hidden;
			}
			#corpo #redes .insta-post-link .insta-overlay {
				position: absolute;
				inset: 0;
				background: transparent;
				display: flex;
				align-items: center;
				justify-content: center;
				opacity: 0;
				transition: opacity 0.25s ease;
				border-radius: 10px;
			}
			#corpo #redes .insta-post-link .insta-icon {
				font-family: 'Nioicon';
				font-size: 40px;
				color: #fff;
				line-height: 1;
			}
			#corpo #redes .insta-post-link:hover .insta-overlay {
				opacity: 0;
			}
			#corpo #redes .insta-post-link img {
				width: 310px;
				height: 388px;
				object-fit: cover;
				object-position: center;
				display: block;
				border-radius: 10px;
				transition: transform 0.3s ease;
			}
			#corpo #redes .insta-post-link:hover img {
				transform: scale(1.05);
			}
				#corpo #redes a.insta {
					padding-left: 40px;
					background: #1CC48C url("/public/img/layout/default/i-instawhite.png") 10px center no-repeat;
        			background-size: 18px;
				}
				#corpo #redes a.ldin {
					padding-left: 40px;
					background: #1CC48C url("/public/img/layout/default/i-linkwhite.png") 10px center no-repeat;
        			background-size: 18px;
				}
					
					#corpo #redes a.insta:hover {
						padding-left: 40px;
						background: #FFF url("/public/img/layout/default/i-instagreen.png") 10px center no-repeat;
						background-size: 18px;
					}
					#corpo #redes a.ldin:hover {
						padding-left: 40px;
						background: #FFF url("/public/img/layout/default/i-linkgreen.png") 10px center no-repeat;
						background-size: 18px;
					}


	#corpo #clientes {
		position: relative;
		width: 100%;
		height: 120px;
		display: inline-flex;
		background: #26AE85;
		padding: 10px 0;
		overflow: hidden;
		white-space: nowrap;
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
	}
		#corpo #clientes li img {
			opacity: 0.8;
		}

		#corpo #clientes li img:hover {
			opacity: 1;
		}

	#corpo #clientes ul li {
		display: inline-block;
		vertical-align: top;
		width: 170px;
		height: 90px;
		margin: 0 10px;
	}
		#corpo #clientes ul li img {
			width: 160px;
			height: auto;
		}


	#corpo #toppage {
		position: relative;
		width: 100%;
		padding: 180px 0 30px 0;
		background: url('/public/img/layout/default/top01.webp') center center no-repeat;
		background-size: cover;
	}
		#corpo #toppage #tit {
			display: inline-block;
			vertical-align: top;
			width: 40%;
			text-align: left;
		}
			#corpo #toppage #tit.tit2 {
				width: 50%;
			}
		#corpo #toppage #mapsite {
			display: inline-block;
			float: right;
			vertical-align: top;
			width: 55%;
			padding: 15px 0 0 0;
			text-align: right;
		}
			#corpo #toppage #mapsite.map2 {
				width: 45%;
			}
			#corpo #toppage #mapsite a {
				display: inline-block;
				vertical-align: top
			}

	#corpo #then {
		position: relative;
		width: 100%;
		padding: 50px 0 120px 0;
	}
		#corpo #then #esq {
			position: relative;
			display: inline-block;
			vertical-align: top;
			padding: 0 20px 0 10px;
			width: 420px;
		}
			#corpo #then #esq span.tam50 {
				display: block;
				line-height: 100%;
				padding:  0 0 40px 0;
			}
		#corpo #then #dir {
			position: relative;
			display: inline-block;
			vertical-align: top;
			width: 400px;
		}
			#corpo #then #dir img {
				border-radius: 10px;
			}
			#corpo #then #dir #img1 {
				display: block;
				position: absolute;
				top: 20px;
				left: 60px;
				width: 220px;
				height: auto;
			}
			#corpo #then #dir #img2 {
				display: block;
				position: absolute;
				top: 0px;
				left: 230px;
				width: 290px;
				height: auto;
			}
			#corpo #then #dir #img3 {
				display: block;
				position: absolute;
				top: 300px;
				left: 20px;
				width: 320px;
				height: auto;
			}
	#corpo #thenow2 {
		position: relative;
		width: 100%;
		display: inline-block;
		background: #D7F4EA;
		padding: 50px 0;
		text-align: center;
		z-index: 9999;
	}
		#corpo #thenow2 #map01 {
			position: absolute;
			width: 50%;
			margin: 0 0 0 -100px;
			left: 0;
			top: -120px;
			height: 750px;
			display: block;
			background: url("/public/img/layout/default/mapa1.webp") right top no-repeat;
        	background-size: 700px;
			z-index: 99999;
			will-change: transform;
			filter: drop-shadow(0 24px 48px rgba(0,0,0,0.28));
		}
		#corpo #thenow2 #dir {
			position: relative;
			display: block;
			width: 500px;
			float: right;
			padding: 20px 20px;
			text-align: left;
		}
			#corpo #thenow2 #dir span.thenow-map-txt {
				display: block;
				margin: 14px 0 18px;
				padding: 10px 14px;
				border-left: 3px solid #1CC48C;
				background: rgba(28,196,140,0.10);
				border-radius: 0 8px 8px 0;
				line-height: 1.7;
			}
			#corpo #thenow2 #dir .thenow-map-dest {
				font-style: normal;
				display: inline-block;
				margin-top: 6px;
				background: #1CC48C;
				color: #fff !important;
				padding: 2px 10px;
				border-radius: 4px;
				font-size: 12px;
				letter-spacing: 0.3px;
			}
			#corpo #thenow2 #dir div#bx {
				display: inline-block;
				width: 90px;
				padding: 12px 40px 10px 90px;
				background: url("/public/img/layout/default/brazil3.png") 2px center no-repeat;
        		background-size: 70px;
				vertical-align: top;
			}
			#corpo #thenow2 #dir div#bx2 {
				display: inline-block;
				width: 170px;
				padding: 12px 10px 10px 90px;
				background: url("/public/img/layout/default/povo2.png") 2px center no-repeat;
        		background-size: 65px;
				vertical-align: top;
			}
			#corpo #thenow2 #dir div#bx3 {
				display: inline-block;
				width: 200px;
				padding: 40px 20px 20px 20px;
				vertical-align: top;
			}
				#corpo #thenow2 #dir div#bx3 span.tam65 {
					padding: 0 0 0 0;
					text-align: center;
					width: 200px;
				}

				#corpo #thenow2 #dir div#bx3 span.tam14 {
					display: inline-block;
					width: 200px;
					padding: 11px 0 0 0 !important;
					vertical-align: top;
					text-align: left !important;
                    font-size: 12px !important;
				}

			#corpo #thenow2 #dir ul {
				position: relative;
				height: 50px;
				bottom: -20px;
				left: -150px;
				display: block;
				width: 650px;
				padding: 10px 0 50px 0;
				vertical-align: top;
			}
				#corpo #thenow2 #dir ul li {
					display: inline-block;
					width: 134px;
					height: 80px;
					text-align: center;
					padding: 110px 10px 10px 10px;
					margin: 0 2px;
					vertical-align: top;
					background: #FFF;
					border-radius: 10px;
					box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.1);
				}
					#corpo #thenow2 #dir ul li#i01 {
						background:#FFF url("/public/img/layout/default/i-01.png") center 20px no-repeat;
        				background-size: 45%;
					}
					#corpo #thenow2 #dir ul li#i02 {
						background:#FFF url("/public/img/layout/default/i-02.png") center 16px no-repeat;
        				background-size: 42%;
					}
					#corpo #thenow2 #dir ul li#i03 {
						background:#FFF url("/public/img/layout/default/i-03.png") center 20px no-repeat;
        				background-size: 48%;
					}
					#corpo #thenow2 #dir ul li#i04 {
						background:#FFF url("/public/img/layout/default/i-04.png") center 19px no-repeat;
        				background-size: 50%;
					}

	#corpo #inovacao {
		position: relative;
		width: 100%;
		display: inline-block;
		background: #26AE85;
		padding: 100px 0 10px 0;
		text-align: center;
		top: -10px;
	}
		#corpo #inovacao span {
			position: relative;
			width: 300px;
			display: inline-block;
			padding: 30px 0 0 20px;
			text-align: left;
		}
		#corpo #inovacao ul {
			position: relative;
			float: right;
			width: 650px;
			display: inline-block;
			text-align: left;
		}
			#corpo #inovacao ul li {
				display: inline-block;
				width: 180px;
				height: 80px;
				text-align: center;
				padding: 110px 10px 10px 10px;
				margin: 0 2px;
				vertical-align: top;
			}
				#corpo #inovacao ul li#i01 {
					background:url("/public/img/layout/default/i-05.png") center 5px no-repeat;
        			background-size: 45%;
				}
				#corpo #inovacao ul li#i02 {
					background:url("/public/img/layout/default/i-06.png") center 5px no-repeat;
        			background-size: 45%;
				}
				#corpo #inovacao ul li#i03 {
					background:url("/public/img/layout/default/i-07.png") center 5px no-repeat;
        			background-size: 45%;
				}

	/* ══ QUEM SOMOS — animações ══ */

	/* Scroll reveal base */
	.qs-reveal {
		opacity: 0;
		transition: opacity 0.75s ease, transform 0.75s ease;
	}
	.qs-from-left  { transform: translateX(-48px); }
	.qs-from-right { transform: translateX( 48px); }
	.qs-from-bottom{ transform: translateY( 40px); }
	.qs-reveal.qs-visible {
		opacity: 1;
		transform: none;
	}

	/* Hover nos cards de feature (i01-i04 em #thenow2) */
	#corpo #thenow2 #dir ul li.qs-feature-card {
		transition: transform 0.25s ease, box-shadow 0.25s ease;
	}
	#corpo #thenow2 #dir ul li.qs-feature-card:hover {
		transform: translateY(-6px) scale(1.03);
		box-shadow: 0 12px 28px rgba(28,196,140,0.18);
	}

	/* Hover nos cards de número (bx3) */
	#corpo #thenow2 #dir div#bx3.qs-num-card {
		transition: transform 0.25s ease;
		cursor: default;
	}
	#corpo #thenow2 #dir div#bx3.qs-num-card:hover {
		transform: scale(1.06);
	}
	#corpo #thenow2 #dir div#bx3.qs-num-card:hover span.tam65 {
		filter: drop-shadow(0 0 14px rgba(28,196,140,0.55));
	}

	/* Hover nos itens da inovação */
	#corpo #inovacao ul li.qs-inov-item {
		transition: transform 0.25s ease, filter 0.25s ease;
		cursor: default;
	}
	#corpo #inovacao ul li.qs-inov-item:hover {
		transform: translateY(-8px);
		filter: brightness(1.15) drop-shadow(0 6px 12px rgba(0,0,0,0.25));
	}

	#corpo #servico {
		position: relative;
		width: 100%;
		display: block;
		padding: 64px 0 56px 0;
		background: #fff;
	}
		/* ── Layout sem foto: título esq + texto dir ── */
		#corpo #servico .sv-intro {
			display: flex;
			align-items: stretch;
			gap: 48px;
		}
		#corpo #servico .sv-intro-esq {
			flex: 0 0 34%;
			max-width: 34%;
			padding-right: 36px;
			border-right: 2px solid #1CC48C;
			display: flex;
			flex-direction: column;
			justify-content: center;
		}
		#corpo #servico .sv-tag {
			display: inline-block;
			font-size: 10px;
			letter-spacing: 0.18em;
			text-transform: uppercase;
			color: #1CC48C;
			margin-bottom: 14px;
		}
		#corpo #servico .sv-titulo {
			margin: 0;
			padding: 0;
			line-height: 1.15;
			color: #1a1a1a;
		}
		#corpo #servico .sv-intro-dir {
			flex: 1;
			padding-top: 0;
			display: flex;
			flex-direction: column;
			justify-content: center;
			gap: 16px;
		}
		#corpo #servico .sv-sub {
			display: block;
			font-size: 15px;
			line-height: 1.65;
			color: #333;
			font-weight: 600;
			border-bottom: 1px solid #e8e8e8;
			padding-bottom: 14px;
			margin-bottom: 2px;
		}
		#corpo #servico .sv-txt {
			display: block;
			font-size: 13px;
			line-height: 1.75;
			color: #555;
		}
		/* ── Essencial / Realizamos ── */
		#corpo #servico-detalhes {
			width: 100%;
			background: #f7f8fa;
			padding: 56px 0;
		}
		#corpo #servico-detalhes .sv-detalhes-grid {
			display: flex;
			gap: 40px;
		}
		#corpo #servico-detalhes .sv-detalhe-bloco {
			flex: 1;
			background: #fff;
			border-radius: 12px;
			padding: 32px 28px;
			box-shadow: 0 2px 12px rgba(0,0,0,.06);
		}
		#corpo #servico-detalhes .sv-detalhe-icone {
			width: 52px; height: 52px;
			background: #e8faf4;
			border-radius: 12px;
			display: flex; align-items: center; justify-content: center;
			margin-bottom: 16px;
			color: #1CC48C;
		}
		#corpo #servico-detalhes .sv-detalhe-bloco h3 {
			margin: 0 0 12px;
		}
		#corpo #servico-detalhes .sv-detalhe-text {
			line-height: 1.75;
			color: #555;
		}
		@media (max-width: 768px) {
			#corpo #servico-detalhes .sv-detalhes-grid { flex-direction: column; }
		}
		/* legado — manter compatibilidade com outros usos de #esq/#dir */
		#corpo #servico #esq {
			position: relative;
			width: 420px;
			display: inline-block;
			padding: 0 50px 0 0;
			text-align: left;
			vertical-align: top;
		}
		#corpo #servico #dir {
			position: relative;
			width: 420px;
			display: inline-block;
			padding: 0 0 0 50px;
			border-left: 1px solid #D6D6D6;
			text-align: left;
			vertical-align: top;
		}

	#corpo #servicofotos {
		position: relative;
		width: 100%;
		display: inline-block;
		padding: 20px 0 20px 0;
		text-align: left;
		background: #D7F4EA;
	}
		#corpo #servicofotos ul {
			position: relative;
			height: auto;
			padding: 0 0;
			width: 100%;
			text-align: center;
			justify-content: center;
			font-size: 0px;
			letter-spacing: 0px;
			word-spacing: 0px;
		}
			#corpo #servicofotos ul li {
				display: inline-block;
				width: 19.8%;
				height:200px;
				margin: 1px;
			}
				#corpo #servicofotos ul li a img {
					
				}
				#corpo #servicofotos ul li a {
					display: inline-block;
					position: relative;
					width: 100%;
					height: 100%;
					padding-bottom: 25%;
					background: #ccc;
					margin: 0;
					overflow: hidden;
					border:0px solid #FFF;


				}
					#corpo #servicofotos ul li a img {
						position: absolute;
						overflow: hidden;
						margin: 0;
						display: block;
						height: 100%;
						width: 100%;
						object-fit: cover;

						transition: all 0.5s ease;
						-webkit-transition: all 0.5s ease;
						-o-transition: all 0.5s ease;
						-moz-transition: all 0.5s ease;
					}
					#corpo #servicofotos ul li a:hover img {
						height: 105%;
						width: 105%;
						margin: -5px;
						-webkit-filter: contrast(2);
						filter: contrast(2);


					}

	#corpo #cases {
		position: relative;
		width: 100%;
		display: inline-block;
		padding: 50px 0 50px 0;
		text-align: left;
	}
		#corpo #cases #esq {
			position: relative;
			width: 400px;
			display: inline-block;
			padding: 20px 20px;
			text-align: left;
			vertical-align: top;
		}
			#corpo #cases #esq img {
				position: relative;
				width: 400px;
				width: 390px;
				display: block;
				text-align: center;
				vertical-align: top;
				border-radius: 10px;
			}
		#corpo #cases #dir {
			position: relative;
			width: 400px;
			display: inline-block;
			padding: 20px 20px;
			text-align: left;
			vertical-align: top;
		}
			#corpo #cases #dir span.tam25 {
				display: block;
				padding: 0 0 20px 0;
			}
			#corpo #cases #dir span.tam14 {
				display: block;
				line-height: 160%;
			}

	/* ── Case detail page ── */
	#corpo #case-detail {
		position: relative;
		width: 100%;
		display: block;
		padding: 72px 0;
	}
		#corpo #case-detail .cd-layout {
			display: flex;
			flex-direction: row;
			align-items: flex-start;
			gap: 64px;
			width: 100%;
		}
		/* Coluna esquerda: imagens empilhadas */
		#corpo #case-detail .cd-col-imgs {
			flex: 0 0 42%;
			display: flex;
			flex-direction: column;
			gap: 20px;
		}
		#corpo #case-detail .cd-col-imgs .cd-photo {
			width: 100%;
			border-radius: 16px;
			display: block;
			box-shadow: 0 16px 48px rgba(0,0,0,0.12);
		}
		/* Coluna direita: textos */
		#corpo #case-detail .cd-col-text {
			flex: 1;
			display: flex;
			flex-direction: column;
			gap: 24px;
			padding-top: 8px;
			position: sticky;
			top: 100px;
		}
		#corpo #case-detail .cd-titulo {
			line-height: 1.25;
			margin-bottom: 4px;
		}
		#corpo #case-detail .cd-body {
			line-height: 1.8;
		}
		#corpo #case-detail .cd-body-sep {
			padding-top: 20px;
			border-top: 1px solid #eee;
		}

	/* cd-reveal scroll animations */
	.cd-reveal {
		opacity: 0;
		transition: opacity 0.75s ease, transform 0.75s ease;
	}
	.cd-from-left  { transform: translateX(-50px); }
	.cd-from-right { transform: translateX( 50px); }
	.cd-from-bottom{ transform: translateY( 40px); }
	.cd-reveal.cd-visible {
		opacity: 1;
		transform: none;
	}

	#corpo #ajd {
		position: relative;
		width: 100%;
		display: inline-block;
		padding: 20px 0 0 0;
		text-align: center;
		background: #26AE85;
	}
		#corpo #ajd span.tam20 {
			position: relative;
			width: 430px;
			display: inline-block;
			vertical-align: top;
			text-align: left;
			padding: 0 110px 20px 0;
		}
		#corpo #ajd a {
			position: relative;
			width: 140px;
			display: inline-block;
			vertical-align: top;
			text-align: center;
		}
		#corpo #ajd span.tam100 {
			display: block;
			width: 100%;
			color: #1CC48C;
			opacity: 0.2;
			text-shadow: -1px 0 #FFF, 0 1px #FFF, 1px 0 #FFF, 0 -1px #FFF;
			vertical-align: top;
			bottom: -50px;
			margin-bottom: -22px; 
		}

	#corpo #contato {
		position: relative;
		width: 100%;
		display: inline-block;
		padding: 60px 0 0px 0;
		text-align: center;
	}
		#corpo #contato #esq {
			position: relative;
			width: 400px;
			display: inline-block;
			padding: 0 30px;
			text-align: left;
			vertical-align: top;
		}
			#corpo #contato #esq .tam35 {
				display: block;
				padding: 0 0 20px 0;
			}
			#corpo #contato #esq .tam12 {
				display: block;
				padding: 15px 0 15px 0;
				line-height: 160%;
			}
				#corpo #contato #esq a {
					display: inline-block;
					margin: 5px 0;
					width: auto;
					padding-left: 35px !important;
				}
					#corpo #contato #esq a.fone {
						width: 130px;
						background:url("/public/img/layout/default/i-phonegreen.png") 10px center no-repeat;
        				background-size: 15px;
					}
						#corpo #contato #esq a.fone:hover {
							width: 130px;
							background:#1CC48C url("/public/img/layout/default/i-phonewhite.png") 10px center no-repeat;
							background-size: 15px;
						}
					#corpo #contato #esq a.mail {
						width: 210px;
						background:url("/public/img/layout/default/i-mailgreen.png") 10px center no-repeat;
        				background-size: 15px;
					}
						#corpo #contato #esq a.mail:hover {
							width: 210px;
							background:#1CC48C url("/public/img/layout/default/i-mailwhite.png") 10px center no-repeat;
							background-size: 15px;
						}
		#corpo #contato #dir {
			position: relative;
			width: 420px;
			display: inline-block;
			padding: 0 30px;
			text-align: left;
			vertical-align: top;
		}
			#corpo #contato #dir .tam12 {
				display: block;
				padding: 15px 0 15px 0;
				line-height: 160%;
			}
			#corpo #contato #dir form {
				display: block;
				padding: 15px 0 15px 0;
			}
				#corpo #contato #dir form input {
					width: 162px;
				}
				#corpo #contato #dir form input#nome {
					width: 370px;
				}
				#corpo #contato #dir form textarea {
					width: 380px;
					height: 130px;
					resize: none;
				}


		/* Página de serviços — herda .serv-card da home */
		#corpo #ss ul {
			position: relative;
			width: 100%;
			display: flex;
			flex-wrap: wrap;
			gap: 20px;
			text-align: left;
			margin: 10px 0 50px 0;
		}


	#corpo #pg-politicas {
		position: relative;
		width: 100%;
		display: inline-block;
		padding: 60px 0 80px 0;
		text-align: left;
	}

	/* ── Cabeçalho da página ── */
	#corpo .pol-header {
		display: flex;
		flex-direction: column;
		gap: 10px;
		padding: 0 0 50px 0;
		border-bottom: 2px solid #e8f5f0;
		margin-bottom: 5px;
	}

		#corpo .pol-header span.font4 {
			line-height: 1.1;
		}

		#corpo .pol-header span.font5 {
			color: #999;
			font-size: 11px;
		}

		#corpo .pol-header span.font1 {
			line-height: 1.7;
			max-width: 760px;
			margin-top: 6px;
		}

	/* ── Itens / seções ── */
	#corpo .pol-secoes {
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	#corpo .pol-item {
		display: flex;
		gap: 30px;
		padding: 30px 0;
		border-bottom: 1px solid #f0f0f0;
		align-items: flex-start;
	}

	#corpo .pol-num {
		font-size: 36px;
		line-height: 1;
		color: #1CC48C;
		opacity: 0.35;
		flex-shrink: 0;
		width: 50px;
		text-align: right;
		padding-top: 2px;
	}

	#corpo .pol-conteudo {
		flex: 1;
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	#corpo .pol-titulo {
		display: block;
		font-size: 15px;
		padding-bottom: 4px;
	}

	#corpo .pol-conteudo span.font1 {
		line-height: 1.7;
		color: #444;
	}

	#corpo .pol-lista {
		padding-left: 18px;
		list-style: disc;
		display: flex;
		flex-direction: column;
		gap: 5px;
	}

		#corpo .pol-lista li {
			line-height: 1.6;
			color: #444;
		}

	#corpo .pol-contato {
		display: flex;
		flex-direction: column;
		gap: 6px;
		background: #f7fdf9;
		border-left: 3px solid #1CC48C;
		padding: 16px 20px;
		border-radius: 0 8px 8px 0;
		margin-top: 6px;
	}

		#corpo .pol-contato span {
			line-height: 1.6;
		}

		#corpo .pol-contato a.verde {
			color: #1CC48C;
		}

	/* ── Responsivo ── */
	@media screen and (max-width: 768px) {

		#corpo .pol-item {
			flex-direction: column;
			gap: 12px;
			padding: 24px 0;
		}

		#corpo .pol-num {
			width: auto;
			text-align: left;
			font-size: 26px;
		}

	}


















#rodape {
    display: block;
    position: relative;
    width: 100%;
	text-align: center;
	padding: 20px 0 0 0;
}
	#rodape #esq {
		display: inline-block;
		vertical-align: top;
		width: 280px;
		padding: 20px 20px 20px 0;
		text-align: left;
	}
		#rodape #esq #logo {
			display: inline-block;
			padding: 0 10px;
			background: url('/public/img/layout/default/logoNOWSOLUTIONS-02.png') center center no-repeat;
			background-size: 240px;
			width: 220px;
			height: 60px;
			text-indent: -9999px;
			vertical-align: top;
		}
		#rodape #esq span {
			display: inline-block;
			padding: 20px 44px;
			width: auto;
			text-align: center;
		}
		#rodape #esq #phone {
			display: inline-flex;
			align-items: center;
			gap: 7px;
			padding: 5px 5px 5px 0;
            vertical-align: top;
		}
		#rodape #esq #phone::before {
			content: '';
			display: inline-block;
			width: 16px;
			height: 16px;
			flex-shrink: 0;
			background: url('/public/img/layout/default/i-phonegreen.png') center center no-repeat;
			background-size: contain;
            margin: 8px 5px 0 0;
		}
		#rodape #esq #mail {
			display: inline-flex;
			align-items: center;
			gap: 7px;
			padding: 5px 5px 25px 0;
            vertical-align: top;
		}
		#rodape #esq #mail::before {
			content: '';
			display: inline-block;
			width: 16px;
			height: 16px;
			flex-shrink: 0;
			background: url('/public/img/layout/default/i-mailgreen.png') center center no-repeat;
			background-size: contain;
            margin: 5px 5px 0 0;
            padding: 0 0 0 0;
		}


	#rodape #cen {
		display: inline-block;
		vertical-align: top;
		width: 280px;
		padding: 10px 30px 20px 30px;
		text-align: left;
		border-right: 1px solid #DBDBDB;
		border-left: 1px solid #DBDBDB;
	}
		#rodape #cen span {
			display: inline-block;
			padding: 0px 0 20px 0;
			line-height: 140%;
			width: 250px;
		}

	#rodape #dir {
		display: inline-block;
		vertical-align: top;
		width: 280px;
		padding: 0 0 0 20px;
		text-align: left;
	}
		#rodape #dir ul li a {
			display: inline-block;
			width: auto;
			padding: 7px 5px;
		}
			#rodape #dir ul li a.active,
			#rodape #dir ul li a:hover{
				color: #1CC48C;
				font-weight: 500 !important;
			}

    #frase {
		display: inline-block;
		vertical-align: top;
		width: 100%;
		padding: 35px 0;
		text-align: center;
		background: #D7F4EA;
	}
    #copy {
		display: inline-block;
		vertical-align: top;
		width: 100%;
		background: #26AE85;
		padding: 20px 0;
		text-align: center;
	}



@media screen and (min-width: 1440px) {
	

}


@media screen and (max-width: 768px) {
	
	body {
		-webkit-text-size-adjust: 100%;
	}
	html, body {
		overflow-x: hidden;
		max-width: 100%;
		position: relative;
	}
    .slicknav_menu {
		display: block;
	}
	
	.tam8 { font-size: 8px; }	
	.tam10 { font-size: 10px; }	
	.tam12 { font-size: 12px; }	
	.tam14 { font-size: 14px; }		
	.tam16 { font-size: 16px; }		
	.tam18 { font-size: 18px; }		
	.tam20 { font-size: 20px; }		
	.tam22 { font-size: 22px; }		
	.tam25 { font-size: 25px; }		
	.tam30 { font-size: 30px; }		
	.tam35 { font-size: 25px; }		
	.tam40 { font-size: 30px; }			
	.tam50 { font-size: 50px; }			
	.tam60 { font-size: 60px; }				
	.tam65 { font-size: 65px; }
	.tam70 { font-size: 70px; }		
	.tam100 { font-size: 50px; }

	#alinhar { 
		width: 100%;
		position:relative;
		margin:0 auto;
	}
	
    #topo {
		display: block;
		position: fixed;
		width: 100%;
		top: 0;
		z-index: 9999;

		transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
	}
		#topo.mini {
			height: 80px;
			box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.1);
		}
		#topo #traco {
			display: inline-block;
			padding: 10px 0;
			height: 20px;
			background: #26AE85;
			width: 100%;

			transition: all 0.3s ease;
			-webkit-transition: all 0.3s ease;
			-o-transition: all 0.3s ease;
			-moz-transition: all 0.3s ease;
		}
			#topo #traco .tesq {
				display: inline-block;
				position: relative;
				width: auto;
				text-align: left;
				float: left;
				padding: 0 0 0 10px;
			}
			#topo #traco .tdir {
				display: none;
				position:absolute;
				width: 300px;
				text-align: right;
				right: 0;
			}
			#topo #traco #lang {
				display: inline-block;
				position:relative;
				width: 70px;
				text-align: left;
				float: right;
				margin: -2px 0 0 0;
				vertical-align: top;
			}
				#topo #traco #lang a {
					display: inline-block;
					position:relative;
					width: 30px;
					height: 20px;
					text-indent: -9999px;
					text-align: left;
				}
					#topo #traco #lang a#langen {
						background: url('/public/img/layout/default/langen.png') center center no-repeat;
						background-size: 22px;
					}
					#topo #traco #lang a#langes {
						background: url('/public/img/layout/default/langes.png') center center no-repeat;
						background-size: 22px;
					}
					#topo #traco #lang a#langbr {
						background: url('/public/img/layout/default/langbr.png') center center no-repeat;
						background-size: 22px;
					}

			#topo.mini #traco {
				display: block !important;
				margin-top: -40px;
			}
		#topo #menu {
			display: inline-block;
			padding: 12px 0;
			background-color: rgba(0, 0, 0, 0.4);
			width: 100%;
            margin-top: -5px;

			transition: all 0.3s ease;
			-webkit-transition: all 0.3s ease;
			-o-transition: all 0.3s ease;
			-moz-transition: all 0.3s ease;
		}
			#topo.mini #menu {
				display: inline-block;
				padding: 2px 0;
				background-color: #FFF;
				width: 100%;
			}
			#topo #menu #logo {
				display: block;
				position: relative;
				margin: 0 auto;
				padding: 0px 10px;
				background: url('/public/img/layout/default/logoNOWSOLUTIONS-01.png') center center no-repeat;
				background-size: 180px;
				width: 160px;
				height: 60px;
				text-indent: -9999px;
				vertical-align: top;

				transition: all 0.3s ease;
				-webkit-transition: all 0.3s ease;
				-o-transition: all 0.3s ease;
				-moz-transition: all 0.3s ease;
			}
				#topo.mini #menu #logo {
					background: url('/public/img/layout/default/logoNOWSOLUTIONS-02.png') center center no-repeat;
					padding: 0 10px 0 10px;
					background-size: 180px;
					width: 160px;
					height: 80px;
				}
			#topo #menu nav {
				display: none;
				padding: 22px 10px;
				width: 640px;
				vertical-align: top;
				z-index: 9999;
			}
				#topo.mini #menu nav {
					display: none;
					padding: 15px 10px;
					width: 640px;
					vertical-align: top;
				}
				#topo #menu nav ul {
					display: inline-block;
					width: 100%;
				}
					#topo #menu nav ul li {
						display: inline-block;
						width: auto;
					}
						#topo #menu nav ul li a {
							display: inline-block;
							width: auto;
							padding: 12px 18px;
						}
							#topo.mini #menu nav ul li a.branco {
								color: #000;
							}
							#topo #menu nav ul li a.active,
							#topo #menu nav ul li a:hover{
								color: #1CC48C !important;
								font-weight: 500 !important;
							}
							#topo #menu nav ul li a.cont {
								border:1px solid #1CC48C;
								border-radius: 10px;
								margin: 0 10px;
							}
								#topo #menu nav ul li a.cont:hover {
									background: #1CC48C;
									color: #FFF !important;
								}

						#topo #menu nav ul li ul {
							display: none;
							position: absolute;
							margin-top: 60px;
							left:80px;
							top:0px;
							padding: 15px 20px;
							width: 800px;
							z-index: 99;
							text-align: center;
							background-color: #FFF;
							box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.1);
						}
							#topo #menu nav ul li ul li {
								display: inline-block;
								width: 350px;
								padding: 6px 15px;
								vertical-align: top;
								text-align: left;
							}
								#topo #menu nav ul li ul li span {
									width: 100%;
									display: block;
									padding: 20px 0 10px 0;
								}
								#topo #menu nav ul li ul li a {
									padding: 5px 0;
									display: block;
								}
								#topo #menu nav ul li ul li a.avanca {
									padding: 5px 0 5px 20px;
									background: url('/public/img/layout/default/favico.png') 5px center no-repeat;
									background-size: 8px;
								}
			#topo #menu #redes {
				display: none;
				padding: 10px 10px;
				width: 64px;
				vertical-align: top;
			}
					#topo.mini #menu #redes {
						padding: 0px 10px;
					}
					#topo #menu #redes li {
						display: inline-block;
						width: auto;
					}
						#topo #menu #redes li a#linkedin {
							display: inline-block;
							margin: 22px 4px;
							width: 20px;
							height: 20px;
							background: url('/public/img/layout/default/i-linkwhite.png') center center no-repeat;
							background-size: 18px;
							text-indent: -9999px;
							vertical-align: top;
						}
							#topo #menu #redes li a#linkedin:hover {
								background: url('/public/img/layout/default/i-linkgreen.png') center center no-repeat;
								background-size: 18px;
							}

						#topo.mini #menu #redes li a#linkedin {
							margin: 27px 4px 5px 4px;
							background: url('/public/img/layout/default/i-linkgreen.png') center center no-repeat;
							background-size: 18px;
						}
						#topo #menu #redes li a#instagram {
							display: inline-block;
							margin: 22px 4px;
							width: 20px;
							height: 20px;
							background: url('/public/img/layout/default/i-instawhite.png') center center no-repeat;
							background-size: 18px;
							text-indent: -9999px;
							vertical-align: top;
						}
							#topo #menu #redes li a#instagram:hover {
								background: url('/public/img/layout/default/i-instagreen.png') center center no-repeat;
								background-size: 18px;
							}

						#topo.mini #menu #redes li a#instagram {
							margin: 27px 4px 5px 4px;
							background: url('/public/img/layout/default/i-instagreen.png') center center no-repeat;
							background-size: 18px;
						}

	#corpo {
		position: relative;
		display: inline-block;
		width: 100%;
		height: auto;
		margin: 0 auto;
		z-index: 999;
	}

		#corpo #construcao {
			position: relative;
			width: 350px;
			margin: 50px auto;
			padding: 20px;
			display: block;
			text-align: center;
		}
			#corpo #construcao a#logo {
				display: inline-block;
				width: 274px;
				height: 85px;
				background: url('/public/img/layout/default/logo01.png') center center no-repeat;
				background-size: 200px auto;
				text-indent: -9999px;
			}

			#corpo #construcao .tx1 {
				display: inline-block;
				width: 100%;
				padding: 20px 0;
			}
			#corpo #construcao .tx2 {
				display: inline-block;
				width: 100%;
				padding: 20px 0;
			}

			#corpo #construcao #links {
				display: inline-block;
				width: 100%;
				z-index: 99999;
				text-align: center;
				padding: 10px 0 0 0;
			}
				#corpo #construcao #links span {
					display: inline-block;
					width: 100%;
					padding: 0 0 20px 0;
				}
				#corpo #construcao #links a {
					display: inline-block;
					width: 240px;
					border: 1px solid #4AA872;
					border-radius: 10px;
					margin: 7px 20px;
					text-align: left;
					padding: 17px 15px 17px 60px;
				}
					#corpo #construcao #links a.active, #links a:hover {
						background-color: #4AA872 !important;
						color: #FFF !important;
					}
					#corpo #construcao #links a#whats {
						background: url("/public/img/layout/default/i-whats.png") 20px 14px no-repeat;
						background-size: 25px;
					}
					#corpo #construcao #links a#linkedin {
						background: url("/public/img/layout/default/i-linkedin3.png") 22px 16px no-repeat;
						background-size: 20px;
					}
						#corpo #construcao #links a#linkedin:hover {
							background: url("/public/img/layout/default/i-linkedin3.png") 22px 16px no-repeat;
							background-size: 20px;
						}
					#corpo #construcao #links a#mail {
						background: url("/public/img/layout/default/i-mail.png") 20px 18px no-repeat;
						background-size: 24px;
					}
						#corpo #construcao #links a#mail:hover {
							background: url("/public/img/layout/default/i-mail2.png") 20px 18px no-repeat;
							background-size: 24px;
						}

			#corpo #construcao a#port {
				display: block;
				position: relative;
				width: 350px;
				height: 100px;
				margin: 25px auto 0 auto;
			}
				#corpo #construcao a#port img {
					display: block;
					position: absolute;
					width: 180px;
					height: auto;
					float: left;
					z-index: 999;
				}
				#corpo #construcao a#port span {
					display: block;
					position: relative;
					float: left;
					width: 120px;
					background-color: #4AA872;
					border-radius: 10px;
					margin: 15px 0;
					padding: 15px 25px 15px 200px;

				}
			#corpo #construcao #bx1 {
				display: inline-block;
				width: 360px;
				padding: 10px 0 40px 0;
				border-bottom: 2px solid #CCD462;
			}
				#corpo #construcao #bx1 a#logo {
					display: inline-block;
					width: 131px;
					height: 56px;
					background: url("/public/img/layout/default/now-white.png") left center no-repeat;
					background-size: 120px;
					padding: 0 0 0px 0;
					text-indent: -9999px;
					text-align: left;
					vertical-align: top;
				}
				#corpo #construcao #bx1 ul {
					display: inline-block;
					width: 80px;
					vertical-align: top;
					padding: 15px 0 0 0;
				}
					#corpo #construcao #bx1 ul li {
						display: inline-block;
						width: 25px;
						height: 25px;
						margin: 0 2px;
					}
					#corpo #construcao #bx1 ul li a {
						display: inline-block;
						width: 25px;
						height: 25px;
						margin: 0 2px;
					}
						#corpo #construcao #bx1 ul li a#linkedin {
							background: url("/public/img/layout/default/i-linkedin.png") center center no-repeat;
							background-size: 20px;
							text-indent: -9999px;
						}
						#corpo #construcao #bx1 ul li a#instagran {
							background: url("/public/img/layout/default/i-instagram.png") center center no-repeat;
							background-size: 20px;
							text-indent: -9999px;
						}

				#corpo #construcao #bx1 span {
					display: inline-block;
					width: auto;
					vertical-align: top;
					padding: 20px 0 0 0;
				}
			#corpo #construcao #bx2 {
				display: inline-block;
				width: auto;
				padding: 40px 0 20px 0;
			}


		#corpo #destaque {
			position: relative;
			width: auto;
			height: 350px;
			padding: 160px 20px 0 20px;
			background: url("/public/img/layout/default/home/dest01.webp") center center no-repeat;
			background-size: cover;
		}
			#corpo #destaque span#txt1 {
				display: inline-block;
				width: 120px;
				padding: 20px 0 15px 60px;
				background: url("/public/img/layout/default/brazil1.png") 10px 20px no-repeat;
				background-size: 45px;
				border-bottom: 1px solid #FFF;
			}
			#corpo #destaque span#txt2 {
				display: inline-block;
				width: 320px;
				padding: 30px 0 20px 0;
				margin: 0 0 0 0;
			}
			#corpo #destaque span#txt3 {
				display: inline-block;
				width: 320px;
				padding: 10px 0 10px 0;
				line-height: 140%;
			}


		#corpo #tpbox  {
			position: relative;
			width: auto;
			display: inline-block;
			margin: 30px 20px;
		}
			#corpo #tpbox #back  {
				position: absolute;
				height: 60px;
				width: 100%;
				color: #FFF;
				opacity: 0.2;
				text-shadow: -1px 0 #1CC48C, 0 1px #1CC48C, 1px 0 #1CC48C, 0 -1px #1CC48C;
				vertical-align: top;
				top: 0;
			}
			#corpo #tpbox #front  {
				position: relative;
				display: inline-block;
				width: auto;
				padding: 15px 10px 0 10px;
				vertical-align: top;
			}
			#corpo #tpbox #text  {
				position: relative;
				display: inline-block;
				width: auto;
				max-width: 350px;
				padding: 20px 0px 10px 0;
				vertical-align: top;
			}
			#corpo #tpbox #text2  {
				position: relative;
				display: inline-block;
				width: auto;
				max-width: 350px;
				padding: 47px 0px 10px 40px;
				vertical-align: top;
			}
			#corpo #tpbox #text3  {
				position: relative;
				display: inline-block;
				width: auto;
				max-width: 350px;
				padding: 20px 0px 10px 0;
				vertical-align: top;
			}
				#corpo #tpbox.tpbox2 #text  {
					max-width: 600px;
				}
			#corpo #tpbox a  {
				position: relative;
				display: inline-block;
				width: auto;
				margin: 20px 10px 0 0;
				float: left;
			}
		#corpo #servicos {
			position: relative;
			width: 100%;
			display: inline-block;
		}
	
	
		/* bxSlider removido — now-carousel controla via JS inline */
		#corpo #servicos ul {
			height: auto !important;
			overflow: visible !important;
		}
		#corpo #servicos ul li {
			width: auto !important;
		}

		/* Container para o Zoom */
		#corpo #servicos .img-container {
			width: 100%;
			height: 170px;
			overflow: hidden;
			border-radius: 10px;
		}

		#corpo #servicos ul li img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			transition: transform 0.6s ease; /* Transição sutil */
		}

		/* Gatilho do Zoom */
		#corpo #servicos ul li:hover img {
			transform: scale(1.15);
		}

		#corpo #servicos ul li a.tam14 {
			padding: 10px 0 10px 0;
			display: block;
		}

		#corpo #servicos ul li a.tam14:hover, #corpo #servicos ul li:hover a.tam14 {
			color: #1CC48C !important;
		}

		#corpo #servicos ul li span {
			padding: 2px 0 2px 0;
			display: block;
			height: 80px;
			line-height: 140%;
		}

		#corpo #servicos ul li a.link2 {
			margin: 10px 0 10px 0;
			display: inline-block;
			width: auto;
		}

		#corpo #portfolio {
			position: relative;
			width: auto;
			display: inline-block;
			background: #D7F4EA;
			padding: 10px 0 150px 0;
			text-align: left;
			z-index: 999;
		}
			#corpo #portfolio #esq {
				position: relative;
				width: auto;
				padding: 0 20px 40px 20px;
				display: inline-block;
				text-align: left;
				vertical-align: top;
			}
				#corpo #portfolio span.font4 {
					position: relative;
					width: 100%;
					padding: 60px 0 20px 0;
					display: inline-block;
					line-height: 100%;
				}
				#corpo #portfolio span.font1 {
					position: relative;
					width: 100%;
					padding: 10px 0 0 0;
					display: inline-block;
					line-height: 140%;
				}
			#corpo #portfolio #dir {
				position:relative;
				width: auto;
				display: inline-block;
				text-align: left;
				vertical-align: top;
			}
	
	#corpo #portfolio .bx-viewport {
		padding: 0 20px 10px 10px;
		width: auto !important
	}
				
				#corpo #portfolio #dir ul {
					position: relative;
					width: 100%;
					display: inline-block;
					text-align: left;
					vertical-align: top;
				}
					#corpo #portfolio #dir ul li {
						position: relative;
						width: 210px !important;
						margin: 4px 8px;
						height: 150px;
						padding: 220px 15px 20px 15px;
						display: inline-block;
						text-align: left;
						vertical-align: top;
						border-radius: 10px;
						float: left;
					}
						#corpo #portfolio #dir ul li:hover {
							margin: 4px 8px;
							box-shadow: none;
						}
						#corpo #portfolio #dir ul li #mask {
							position: absolute;
							display: block;
							width: 100%;
							height: 100%;
							background: #000;
							top: 0;
							left: 0;
							border-radius: 10px;
							opacity: 0.3;
							z-index: 98;
						}
						#corpo #portfolio #dir ul li span.tam8 {
							display: block;
							width: 100%;
							z-index: 99999;
						}
						#corpo #portfolio #dir ul li span.font3 {
							display: block;
							width: 100%;
							padding: 10px 0 0 0;
							z-index: 99999;
						}
						#corpo #portfolio #dir ul li a.link3 {
							margin: 10px 0 10px 0;
							display: inline-block;
							width: auto;
							z-index: 99999;
						}
						#corpo #portfolio #dir ul li #super {
							z-index: 99999;
							position: relative;
						}

		#corpo #thenow {
		position: relative;
		width: 100%;
		display: inline-block;
		background: #26AE85;
		padding: 50px 0;
		z-index: 9999;
		text-align: center;
	}
		#corpo #thenow #map01 {
			position: absolute;
			width: 350px;
			margin: 0 0 0 110px;
			left: 0;
			top: -120px;
			height: 450px;
			display: block;
			background: url("/public/img/layout/default/mapa1.webp") right top no-repeat;
			background-size: 350px;
			z-index: 99999;
			transition: margin 2s ease, top 2s ease;
		}
			#corpo #thenow #map01.active {
				margin: 0 0 0 100px;
				top: -130px;
			}
			#corpo #thenow #map01 #mapa-brasil {
				width: 350px;
				height: 390px;
			}
		#corpo #thenow #dir {
			position: relative;
			display: block;
			width: auto;
			float: inherit;
			margin: 0 auto;
			padding: 220px 20px 20px 20px;
			text-align: left;
		}
			#corpo #thenow #dir span {
				display: inline-block;
				width: 410px;
				padding: 0 0px 10px 0;
				
			}
			#corpo #thenow #dir div#bx {
				display: inline-block;
				width: 200px;
				padding: 20px 10px 10px 100px;
				background: url("/public/img/layout/default/brazil2.png") 2px top no-repeat;
        		background-size: 70px;
				vertical-align: top;
				text-transform: none !important;
			}
				#corpo #thenow #dir div#bx span {
					display: inline-block;
					width: 150px;
				}
			#corpo #thenow #dir div#bx2 {
				display: inline-block;
				width: 250px;
				padding: 20px 10px 10px 100px;
				background: url("/public/img/layout/default/povo1.png") 2px top no-repeat;
        		background-size: 65px;
				vertical-align: top;
				text-transform: none !important;
			}
				#corpo #thenow #dir div#bx2 span {
					display: inline-block;
					width: 250px;
				}
			#corpo #thenow #dir div#bx3 {
				display: inline-block;
				width: 180px;
				padding: 40px 5px 20px 5px;
				vertical-align: top;
				text-transform: none !important;
				text-align: center;
			}
				#corpo #thenow #dir div#bx3 span {
					display: inline-block;
					width: auto;
					padding: 0;
				}
				#corpo #thenow #dir div#bx3 span.tam65 {
					padding: 0 0 0 0;
					text-align: center;
					font-size: 50px;
				}

				#corpo #thenow #dir div#bx3 span.tam14 {
					display: inline-block;
					width: 180px;
					padding: 0px 0;
					vertical-align: top;
					text-align: center;
				}

	
		#corpo #eventos .bx-viewport {
			padding: 0 20px 10px 10px;
			width: auto !important
		}
		#corpo #eventos {
			position: relative;
			width: 100%;
			display: inline-block;
			padding: 30px 0;
		}
			#corpo #eventos ul {
				position: relative;
				width: 100%;
				height: 450px;
				display: block;
				text-align: center;
				margin: 20px 0 20px 0;
			}
				#corpo #eventos ul li {
					position: relative;
					width: 300px !important;
					float: left;
					padding: 10px 10px;
					display: inline-block;
					text-align: left;
					border:0px solid #FFF;
					border-radius: 5px;
					margin: 0 0 0 10px;
				}
					#corpo #eventos ul li:hover {
						padding: 10px 10px;
						border:0px solid #1CC48C;
						box-shadow: none;
					}
					#corpo #eventos ul li img {
						position: relative;
						width: 300px;
						height: 320px;
						padding: 0 0 0 0;
						display: inline-block;
						border-radius: 10px;
					}
					#corpo #eventos ul li a.tam14 {
						padding: 10px 0 10px 0;
						display: block;
						text-transform: uppercase;
					}
						#corpo #eventos ul li a.tam14:hover {
							color: #1CC48C !important;
						}
					#corpo #eventos ul li span {
						padding: 2px 0 2px 0;
						display: block;
						line-height: 140%;
					}
					#corpo #eventos ul li span.verde {
						padding: 10px 0 2px 0;
					}
					#corpo #eventos ul li a.link2 {
						margin: 10px 0 10px 0;
						display: inline-block;
						width: auto;
					}

		#corpo #faq {
			position: relative;
			width: 100%;
			height: auto;
			display: inline-block;
			background: #26AE85;
			text-align: center;
		}


			#corpo #faq #esq1 {
				position: absolute;
				width: auto;
				height: auto;
				text-align: left;
				vertical-align: top;
			}

			#corpo #faq #dir1 {
				position: absolute;
				width: auto;
				height: auto;
				right: 0;
				margin-right: 0;
				background: url("/public/img/layout/default/back02.png") center center no-repeat;
				background-size: cover;
				vertical-align: top;
			}
			#corpo #faq #esq {
				position: relative;
				width: auto;
				display: inline-block;
				padding: 50px 20px 20px 20px;
				text-align: left;
				vertical-align: top;
			}
				#corpo #faq #esq ul li {
					display: block;
					padding: 10px 0;
				}
					#corpo #faq #esq ul li h5 {
						cursor: pointer;
					}
				#corpo #faq #esq ul li p {
					display: block;
					padding: 10px 0;
				}
			#corpo #faq #dir {
				position: relative;
				width: 100%;
				right: 0;
				left: 0;
				margin:0;
				padding: 0;
				display: block;
				vertical-align: top;
				text-align: left;
				background: url("/public/img/layout/default/back02.png") center center no-repeat;
				background-size: cover;
			}
				#corpo #faq #dir.tam40 {
					font-size: 40px;
				}
					#corpo #faq #dir span {
						display: block;
						width: auto;
						padding: 50px 20px;
					}

		#corpo #redes {
			position: relative;
			width: 100%;
			display: inline-block;
			padding: 30px 0;
		}
			#corpo #redes ul {
				position: relative;
				width: 100%;
				display: block;
				text-align: center;
				margin: 20px 0 20px 0;
			}
				#corpo #redes ul li {
					position: relative;
					width: 32%;
					height: auto;
					padding: 0;
					display: inline-block;
					text-align: left;
				}
					#corpo #redes ul li img {
						position: relative;
						width: 100%;
						aspect-ratio: 4 / 5;
						height: auto;
						object-fit: cover;
						object-position: center;
						padding: 0 0 0 0;
						display: block;
						border-radius: 8px;
					}
					#corpo #redes a.insta {
						padding-left: 40px;
						background: #1CC48C url("/public/img/layout/default/i-instawhite.png") 10px center no-repeat;
						background-size: 18px;
					}
					#corpo #redes a.ldin {
						padding-left: 40px;
						background: #1CC48C url("/public/img/layout/default/i-linkwhite.png") 10px center no-repeat;
						background-size: 18px;
					}

						#corpo #redes a.insta:hover {
							padding-left: 40px;
							background: #FFF url("/public/img/layout/default/i-instagreen.png") 10px center no-repeat;
							background-size: 18px;
						}
						#corpo #redes a.ldin:hover {
							padding-left: 40px;
							background: #FFF url("/public/img/layout/default/i-linkgreen.png") 10px center no-repeat;
							background-size: 18px;
						}


		#corpo #clientes {
			position: relative;
			width: 100%;
			height: 120px;
			display: inline-flex;
			background: #1CC48C;
			padding: 10px 0;
			overflow: hidden;
			white-space: nowrap;
			flex-wrap: wrap;
			justify-content: center;
			text-align: center;
		}
			#corpo #clientes li img {
				opacity: 0.8;
			}

			#corpo #clientes li img:hover {
				opacity: 1;
			}

		#corpo #clientes ul li {
			display: inline-block;
			vertical-align: top;
			width: 170px;
			height: 90px;
			margin: 0 10px;
		}
			#corpo #clientes ul li img {
				width: 160px;
				height: auto;
			}


		#corpo #toppage {
			position: relative;
			width: auto;
			padding: 180px 20px 30px 20px;
			background: url('/public/img/layout/default/top01.webp') center center no-repeat;
			background-size: cover;
		}
			#corpo #toppage #tit {
				display: inline-block;
				vertical-align: top;
				width: 100%;
				text-align: center;
			}
			#corpo #toppage #mapsite {
				display: inline-block;
				float: inherit;
				vertical-align: top;
				width: 100%;
				padding: 15px 0 0 0;
				text-align: center;
			}
				#corpo #toppage #mapsite a {
					display: inline-block;
					vertical-align: top
				}

		#corpo #then {
			position: relative;
			width: 100%;
			padding: 50px 0 120px 0;
			height: 850px;
		}
			#corpo #then #esq {
				position: relative;
				display: inline-block;
				vertical-align: top;
				padding: 0 20px 0 20px;
				width: auto;
			}
				#corpo #then #esq span.tam50 {
					display: block;
					line-height: 100%;
					padding:  0 0 40px 0;
				}
			#corpo #then #dir {
				position: relative;
				display: inline-block;
				vertical-align: top;
				width: 100%;
			}
				#corpo #then #dir img {
					border-radius: 10px;
				}
				#corpo #then #dir #img1 {
					display: block;
					position: absolute;
					top: 50px;
					left: 20px;
					width: 200px;
					height: auto;
				}
				#corpo #then #dir #img2 {
					display: block;
					position: absolute;
					top: 20px;
					left: 180px;
					width: 220px;
					height: auto;
				}
				#corpo #then #dir #img3 {
					display: block;
					position: absolute;
					top: 290px;
					left: 50px;
					width: 300px;
					height: auto;
				}
		#corpo #thenow2 {
			position: relative;
			width: 100%;
			display: inline-block;
			background: #D7F4EA;
			padding: 250px 0 50px 0;
			text-align: center;
			z-index: 9999;
		}
			#corpo #thenow2 #map01 {
				position: absolute;
				width: 320px;
				margin: 0 0 0 -160px;
				left: 50%;
				top: -100px;
				height: 380px;
				display: block;
				background: url("/public/img/layout/default/mapa1.webp") right top no-repeat;
				background-size: 320px;
				z-index: 99999;

				transition: 2s ease;
				-webkit-transition: 2s ease;
				-o-transition: 2s ease;
				-moz-transition: 2s ease;
			}
			#corpo #thenow2 #dir {
				position: relative;
				display: block;
				width: auto;
				float:  inherit;
				padding: 20px 20px 0 20px;
				text-align: center;
			}
				#corpo #thenow2 #dir div#bx {
					display: inline-block;
					width: 180px;
					padding: 80px 5px 10px 5px;
					background: url("/public/img/layout/default/brazil3.png") center top no-repeat;
					background-size: 70px;
					vertical-align: top;
					text-align: center;
				}
				#corpo #thenow2 #dir div#bx2 {
					display: inline-block;
					width: 180px;
					padding: 80px 5px 10px 5px;
					background: url("/public/img/layout/default/povo2.png") center top no-repeat;
					background-size: 65px;
					vertical-align: top;
					text-align: center;
				}
				#corpo #thenow2 #dir div#bx3 {
					display: inline-block;
					width: 180px;
					padding: 40px 5px 0px 5px;
					vertical-align: top;
				}
					#corpo #thenow2 #dir div#bx3 span {
						display: inline-block;
						width: auto;
						padding: 0;
					}
					#corpo #thenow2 #dir div#bx3 span.tam65 {
						padding: 0 0 0 0;
						text-align: center;
						width: 170px;
						font-size: 45px !important;
					}

					#corpo #thenow2 #dir div#bx3 span.tam14 {
						display: inline-block;
						width: 170px;
						padding: 0px 0;
						vertical-align: top;
						text-align: center;
					}

				#corpo #thenow2 #dir ul {
					position: relative;
					height: auto;
					bottom: -100px;
					left: 0;
					display: block;
					width: 100%;
					padding: 0px 0 0 0;
					vertical-align: top;
				}
					#corpo #thenow2 #dir ul li {
						display: inline-block;
						width: 134px;
						height: 80px;
						text-align: center;
						padding: 110px 10px 10px 10px;
						margin: 10px 5px;
						vertical-align: top;
						background: #FFF;
						border-radius: 10px;
						box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.1);
					}
						#corpo #thenow2 #dir ul li#i01 {
							background:#FFF url("/public/img/layout/default/i-01.png") center 20px no-repeat;
							background-size: 45%;
						}
						#corpo #thenow2 #dir ul li#i02 {
							background:#FFF url("/public/img/layout/default/i-02.png") center 16px no-repeat;
							background-size: 42%;
						}
						#corpo #thenow2 #dir ul li#i03 {
							background:#FFF url("/public/img/layout/default/i-03.png") center 20px no-repeat;
							background-size: 48%;
						}
						#corpo #thenow2 #dir ul li#i04 {
							background:#FFF url("/public/img/layout/default/i-04.png") center 19px no-repeat;
							background-size: 50%;
						}

		#corpo #inovacao {
			position: relative;
			width: 100%;
			display: inline-block;
			background: #26AE85;
			padding: 100px 0 10px 0;
			text-align: center;
			top: -10px;
		}
			#corpo #inovacao span {
				position: relative;
				width: auto;
				display: inline-block;
				padding: 10px 20px 20px 20px;
				text-align: center;
			}
			#corpo #inovacao ul {
				position: relative;
				float: right;
				width: 100%;
				display: inline-block;
				text-align: center;
			}
				#corpo #inovacao ul li {
					display: inline-block;
					width: 120px;
					height: 80px;
					text-align: center;
					padding: 90px 5px 10px 5px;
					margin: 0 2px;
					vertical-align: top;
				}
					#corpo #inovacao ul li#i01 {
						background:url("/public/img/layout/default/i-05.png") center 15px no-repeat;
						background-size: 39%;
					}
					#corpo #inovacao ul li#i02 {
						background:url("/public/img/layout/default/i-06.png") center 15px no-repeat;
						background-size: 39%;
					}
					#corpo #inovacao ul li#i03 {
						background:url("/public/img/layout/default/i-07.png") center 15px no-repeat;
						background-size: 39%;
					}

		#corpo #servico {
			position: relative;
			width: 100%;
			display: inline-block;
			padding: 60px 0 60px 0;
			text-align: center;
		}
			#corpo #servico #esq {
				position: relative;
				width: auto;
				display: inline-block;
				padding: 0 20px 0 20px;
				text-align: left;
				vertical-align: top;
			}
				#corpo #servico #esq span.tam40 {
					display: block;
					padding: 0 0 30px 0;
				}
				#corpo #servico #esq span.tam14 {
					display: block;
					line-height: 140%;
				}
			#corpo #servico #dir {
				position: relative;
				width: auto;
				display: inline-block;
				padding: 18px 20px 0 20px;
				border-left:1px solid #D6D6D6;
				text-align: left;
				vertical-align: top;
			}
				#corpo #servico #dir span.tam14 {
					display: block;
					line-height: 160%;
				}
				#corpo #servico #dir span strong {
					font-weight: 700;
				}

		#corpo #servicofotos {
			position: relative;
			width: 100%;
			display: inline-block;
			padding: 20px 0 20px 0;
			text-align: left;
			background: #D7F4EA;
		}
			#corpo #servicofotos ul {
				position: relative;
				height: auto;
				padding: 0 0;
				width: 100%;
				text-align: center;
				justify-content: center;
				font-size: 0px;
				letter-spacing: 0px;
				word-spacing: 0px;
			}
				#corpo #servicofotos ul li {
					display: inline-block;
					width: 32.8%;
					height:100px;
					margin: 1px;
				}
					#corpo #servicofotos ul li a img {

					}
					#corpo #servicofotos ul li a {
						display: inline-block;
						position: relative;
						width: 100%;
						height: 100%;
						padding-bottom: 25%;
						background: #ccc;
						margin: 0;
						overflow: hidden;
						border:0px solid #FFF;


					}
						#corpo #servicofotos ul li a img {
							position: absolute;
							overflow: hidden;
							margin: 0;
							display: block;
							height: 100%;
							width: 100%;
							object-fit: cover;

							transition: all 0.5s ease;
							-webkit-transition: all 0.5s ease;
							-o-transition: all 0.5s ease;
							-moz-transition: all 0.5s ease;
						}
						#corpo #servicofotos ul li a:hover img {
							height: 105%;
							width: 105%;
							margin: -5px;
							-webkit-filter: contrast(2);
							filter: contrast(2);


						}
				/* Move a barra de miniaturas para a base */
				.fancybox-thumbs {
					top: auto !important;
					bottom: 0 !important;
					left: 0 !important;
					right: 0 !important;
					width: auto !important;
					height: 95px !important; /* Altura da barra */
				}

				/* Ajusta o container da imagem para não ficar atrás das miniaturas */
				.fancybox-show-thumbs .fancybox-inner {
					right: 0 !important;
					bottom: 95px !important;
				}
				.fancybox-thumbs-y  {
					overflow-x: auto !important;
					overflow-y: hidden !important;
				}

		#corpo #cases {
			position: relative;
			width: 100%;
			display: inline-block;
			padding: 50px 0 50px 0;
			text-align: left;
		}
			#corpo #cases #esq {
				position: relative;
				width: 400px;
				display: inline-block;
				padding: 20px 20px;
				text-align: left;
				vertical-align: top;
			}
				#corpo #cases #esq img {
					position: relative;
					width: 400px;
					width: 390px;
					display: block;
					text-align: center;
					vertical-align: top;
					border-radius: 10px;
				}
			#corpo #cases #dir {
				position: relative;
				width: 400px;
				display: inline-block;
				padding: 20px 20px;
				text-align: left;
				vertical-align: top;
			}
				#corpo #cases #dir span.tam25 {
					display: block;
					padding: 0 0 20px 0;
				}
				#corpo #cases #dir span.tam14 {
					display: block;
					line-height: 160%;
				}

		#corpo #ajd {
			position: relative;
			width: 100%;
			display: inline-block;
			padding: 20px 0 0 0;
			text-align: center;
			background: #26AE85;
		}
			#corpo #ajd span.tam20 {
				position: relative;
				width: 430px;
				display: inline-block;
				vertical-align: top;
				text-align: left;
				padding: 0 110px 20px 0;
			}
			#corpo #ajd a {
				position: relative;
				width: 140px;
				display: inline-block;
				vertical-align: top;
				text-align: center;
			}
			#corpo #ajd span.tam100 {
				display: block;
				width: 100%;
				color: #1CC48C;
				opacity: 0.2;
				text-shadow: -1px 0 #FFF, 0 1px #FFF, 1px 0 #FFF, 0 -1px #FFF;
				vertical-align: top;
				bottom: -50px;
				margin-bottom: -22px; 
			}

		#corpo #contato {
			position: relative;
			width: 100%;
			display: inline-block;
			padding: 60px 0 0px 0;
			text-align: center;
		}
			#corpo #contato #esq {
				position: relative;
				width: 400px;
				display: inline-block;
				padding: 0 30px;
				text-align: left;
				vertical-align: top;
			}
				#corpo #contato #esq .tam35 {
					display: block;
					padding: 0 0 20px 0;
				}
				#corpo #contato #esq .tam12 {
					display: block;
					padding: 15px 0 15px 0;
					line-height: 160%;
				}
					#corpo #contato #esq a {
						display: inline-block;
						margin: 5px 0;
						width: auto;
						padding-left: 35px !important;
					}
						#corpo #contato #esq a.fone {
							width: 130px;
							background:url("/public/img/layout/default/i-phonegreen.png") 10px center no-repeat;
							background-size: 15px;
						}
							#corpo #contato #esq a.fone:hover {
								width: 130px;
								background:#1CC48C url("/public/img/layout/default/i-phonewhite.png") 10px center no-repeat;
								background-size: 15px;
							}
						#corpo #contato #esq a.mail {
							width: 210px;
							background:url("/public/img/layout/default/i-mailgreen.png") 10px center no-repeat;
							background-size: 15px;
						}
							#corpo #contato #esq a.mail:hover {
								width: 210px;
								background:#1CC48C url("/public/img/layout/default/i-mailwhite.png") 10px center no-repeat;
								background-size: 15px;
							}
			#corpo #contato #dir {
				position: relative;
				width: 420px;
				display: inline-block;
				padding: 0 30px;
				text-align: left;
				vertical-align: top;
			}
				#corpo #contato #dir .tam12 {
					display: block;
					padding: 15px 0 15px 0;
					line-height: 160%;
				}
				#corpo #contato #dir form {
					display: block;
					padding: 15px 0 15px 0;
				}
					#corpo #contato #dir form input {
						width: 162px;
					}
					#corpo #contato #dir form input#nome {
						width: 370px;
					}
					#corpo #contato #dir form textarea {
						width: 380px;
						height: 130px;
						resize: none;
					}


			#corpo #ss ul {
				position: relative;
				width: 100%;
				display: block;
				text-align: left;
				margin: 20px 10px 20px 10px;
			}
				#corpo #ss ul li {
					position: relative;
					width: 46%;
					padding: 10px 3px;
					display: inline-block;
					text-align: left;
					vertical-align: top;
				}
					#corpo #ss ul li img {
						position: relative;
						width: 100%;
						height: auto;
						padding: 0 0 0 0;
						display: inline-block;
						border-radius: 10px;
						vertical-align: top;
					}
					#corpo #ss ul li a.tam14 {
						padding: 10px 0 10px 0;
						display: block;
						vertical-align: top;
					}
						#corpo #ss ul li a.tam14:hover {
							color: #1CC48C !important;
						}
					#corpo #ss ul li span {
						padding: 2px 0 2px 0;
						display: block;
						line-height: 140%;
						vertical-align: top;
					}
					#corpo #ss ul li a.link2 {
						margin: 10px 0 10px 0;
						display: inline-block;
						width: auto;
						vertical-align: top;
					}




            #corpo #redes .insta-post-link img {
				width: 140px;
				height: 168px;
				object-fit: cover;
				object-position: center;
				display: block;
				border-radius: 10px;
				transition: transform 0.3s ease;
			}
			#corpo #redes .insta-post-link:hover img {
				transform: scale(1.05);
			}
















	#rodape {
		display: block;
		position: relative;
		width: auto;
		text-align: center;
		padding: 20px 0 0 0;
	}
		#rodape #esq {
			display: inline-block;
			vertical-align: top;
			width: auto;
			padding: 20px 20px 20px 20px;
			text-align: center;
		}
			#rodape #esq #logo {
				display: inline-block;
				padding: 0 10px;
				background: url('/public/img/layout/default/logoNOWSOLUTIONS-02.png') center center no-repeat;
				background-size: 240px;
				width: 220px;
				height: 50px;
				text-indent: -9999px;
				vertical-align: top;
			}
			#rodape #esq span {
				display: inline-block;
				padding: 20px 84px;
				width: auto;
				text-align: center;
			}
			#rodape #esq #phone {
				display: inline-flex;
				align-items: center;
				gap: 7px;
				padding: 5px 5px 5px 0;
				margin: 0 20px;
				background: none;
			}
			#rodape #esq #mail {
				display: inline-flex;
				align-items: center;
				gap: 7px;
				padding: 5px 5px 5px 0;
				margin: 0 20px;
				background: none;
			}


		#rodape #cen {
			display: inline-block;
			vertical-align: top;
			width: auto;
			padding: 20px 20px 20px 20px;
			text-align: center;
			border-top: 1px solid #DBDBDB;
			border-bottom: 1px solid #DBDBDB;
			border-right: none;
			border-left: none;
		}
			#rodape #cen span {
				display: inline-block;
				padding: 0px 40px 20px 40px;
				line-height: 140%;
			}
			#rodape #cen font {
				display: inline-block;
				padding: 0px 40px 20px 40px;
				line-height: 140%;
			}

		#rodape #dir {
			display: inline-block;
			vertical-align: top;
			width: auto;
			padding: 20px 20px 20px 20px;
			text-align: center;
		}
			#rodape #dir ul li a {
				display: inline-block;
				width: auto;
				padding: 7px 5px;
			}
				#rodape #dir ul li a.active,
				#rodape #dir ul li a:hover{
					color: #1CC48C;
					font-weight: 500 !important;
				}

		#frase {
			display: inline-block;
			vertical-align: top;
			width: auto;
			padding: 35px 40px;
			text-align: center;
			background: #D7F4EA;
		}
		#copy {
			display: inline-block;
			vertical-align: top;
			width: auto;
			background: #26AE85;
			padding: 20px 40px;
			text-align: center;
		}
	

}			
@media screen and (max-width: 368px) {			
			
	body {
		-webkit-text-size-adjust: 100%;
	}
	
	

}		
	
			
		
			
			

/* =============================================
   CASES — Intro
   ============================================= */

#corpo #cases-intro {
	position: relative;
	width: 100%;
	padding: 10px 0 20px 0;
	display: inline-block;
}


/* =============================================
   CASES — Grid de cards
   ============================================= */

#corpo #cases-grid-wrap {
	position: relative;
	width: 100%;
	background: #fff;
	padding: 20px 0 90px 0;
	display: inline-block;
}

	#corpo #cases-grid-wrap #alinhar {
		display: block;
	}

	#corpo #cases-grid {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		gap: 20px;
	}

		/* ── Card ── */
		#corpo .case-card {
			width: calc(33.333% - 14px);
			border-radius: 14px;
			overflow: hidden;
			flex-shrink: 0;
			position: relative;
		}

		#corpo .case-card-inner {
			position: relative;
			display: block;
			width: 100%;
			height: 480px;
			border-radius: 14px;
			overflow: hidden;
			text-decoration: none;
		}

		/* Background foto */
		#corpo .case-card-bg {
			position: absolute;
			inset: 0;
			background-size: cover;
			background-position: center;
			transition: transform 0.5s ease;
		}

		#corpo .case-card-inner:hover .case-card-bg {
			transform: scale(1.06);
		}

		/* Overlay gradiente — 3/8 transparente no topo, escuro na base */
		#corpo .case-card-overlay {
			position: absolute;
			inset: 0;
			background: linear-gradient(
				to bottom,
				rgba(0,0,0,0.00)  0%,
				rgba(0,0,0,0.00)  37.5%,
				rgba(0,0,0,0.55)  62%,
				rgba(0,0,0,0.88)  100%
			);
			transition: background 0.35s ease;
		}

		#corpo .case-card-inner:hover .case-card-overlay {
			background: linear-gradient(
				to bottom,
				rgba(0,0,0,0.00) 0%,
				rgba(0,0,0,0.00) 37.5%,
				rgba(0,0,0,0.60) 62%,
				rgba(0,0,0,0.90) 100%
			);
		}

		/* Número decorativo */
		#corpo .case-num {
			position: absolute;
			top: 18px;
			right: 22px;
			font-size: 13px;
			color: rgba(255,255,255,0.45);
			letter-spacing: 2px;
			z-index: 2;
			transition: color 0.3s;
		}

		#corpo .case-card-inner:hover .case-num {
			color: #1CC48C;
		}

		/* Conteúdo na base */
		#corpo .case-card-content {
			position: absolute;
			bottom: 0;
			left: 0;
			right: 0;
			padding: 28px 24px 26px 24px;
			z-index: 2;
			display: flex;
			flex-direction: column;
			gap: 7px;
		}

		#corpo .case-cat {
			font-size: 10px;
			letter-spacing: 2.5px;
			text-transform: uppercase;
			color: #1CC48C;
			display: block;
		}

		#corpo .case-title {
			font-size: 16px;
			color: #fff;
			line-height: 1.3;
			display: block;
		}

		#corpo .case-desc {
			font-size: 11px;
			color: rgba(255,255,255,0.70);
			line-height: 1.5;
			display: block;
			max-height: 0;
			overflow: hidden;
			transition: max-height 0.35s ease, opacity 0.35s ease;
			opacity: 0;
		}

		#corpo .case-card-inner:hover .case-desc {
			max-height: 60px;
			opacity: 1;
		}

		#corpo .case-cta {
			font-size: 11px;
			letter-spacing: 1.5px;
			color: #1CC48C;
			text-transform: uppercase;
			display: flex;
			align-items: center;
			gap: 6px;
			margin-top: 4px;
			transition: gap 0.25s ease;
		}

		#corpo .case-card-inner:hover .case-cta {
			gap: 12px;
		}

		#corpo .case-arrow {
			display: inline-block;
			transition: transform 0.25s ease;
		}

		#corpo .case-card-inner:hover .case-arrow {
			transform: translateX(5px);
		}

	/* Estado vazio */
	#corpo #cases-empty {
		width: 100%;
		text-align: center;
		padding: 80px 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 16px;
	}


/* =============================================
   CASES — Responsivo
   ============================================= */

@media screen and (max-width: 1024px) {
	#corpo .case-card {
		width: calc(50% - 10px);
	}
}

@media screen and (max-width: 810px) {

	#corpo #cases-grid {
		flex-wrap: nowrap;
		overflow: visible;
	}

	#corpo .case-card {
		width: auto;
		flex-shrink: 0;
	}

	/* Dots carrossel mobile */
	.cases-mob-dots {
		display: flex;
		justify-content: center;
		gap: 7px;
		margin-top: 18px;
	}

	.cases-mob-dot {
		width: 8px;
		height: 8px;
		border-radius: 50%;
		background: #ccc;
		cursor: pointer;
		transition: background 0.25s, transform 0.25s;
	}

	.cases-mob-dot.active {
		background: #1CC48C;
		transform: scale(1.3);
	}

}


/* =============================================
   TOPO MINI — ativação instantânea via html.topo-mini
   aplicada antes do JS carregar (script inline no body)
   ============================================= */
html.topo-mini #topo {
	height: 70px;
	box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.1);
}
html.topo-mini #topo #traco {
	display: none;
}
html.topo-mini .slicknav_menu {
	background: #fff !important;
}


/* #copy sem flex (dev-by agora é bloco separado) */
#copy {
    display: block !important;
}


/* ── Dev-by bloco separado abaixo do copy ─────────── */
#dev-by {
    display: block;
    width: 100%;
    background: #1e9470;
    padding: 10px 0;
    text-align: center;
}
#dev-by a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    opacity: 0.5;
    text-decoration: none;
    transition: opacity 0.3s ease;
}
#dev-by a:hover {
    opacity: 1;
}
#dev-by a span {
    font-size: 9px;
    letter-spacing: 0.1em;
    color: #fff;
    white-space: nowrap;
    font-family: 'Montserrat', sans-serif;
}
#dev-by a img {
    height: 20px;
    width: auto;
    display: inline-block;
    vertical-align: middle;
}


/* slicknav desativado — usar drawer customizado */
.slicknav_menu { display: none !important; }


/* =============================================
   FALE CONOSCO — responsivo mobile
   ============================================= */

@media screen and (max-width: 810px) {

    #corpo #contato {
        padding: 40px 0 30px 0;
    }

    /* Colunas empilhadas */
    #corpo #contato #esq,
    #corpo #contato #dir {
        width: 100% !important;
        display: block !important;
        padding: 0 20px !important;
        box-sizing: border-box;
    }

    #corpo #contato #esq {
        margin-bottom: 36px;
    }

    /* Título menor */
    #corpo #contato #esq .tam35 {
        font-size: 22px !important;
        line-height: 130%;
        padding: 0 0 16px 0;
    }

    /* Links de telefone e email ocupam largura total */
    #corpo #contato #esq a.fone,
    #corpo #contato #esq a.mail {
        width: 100% !important;
        box-sizing: border-box;
        display: block !important;
    }

    /* Formulário: todos os campos full width */
    #corpo #contato #dir form {
        padding: 10px 0;
    }

    #corpo #contato #dir form input,
    #corpo #contato #dir form input#nome,
    #corpo #contato #dir form textarea {
        width: 100% !important;
        box-sizing: border-box !important;
        display: block;
        margin-bottom: 10px;
    }

    #corpo #contato #dir form textarea {
        height: 120px;
        resize: none;
    }

    #corpo #contato #dir form input.submit {
        width: 100% !important;
        text-align: center;
    }
}

@media screen and (max-width: 480px) {

    #corpo #contato #esq .tam35 {
        font-size: 20px !important;
    }

}


/* =============================================
   NOW CAROUSEL — overrides mobile por seção
   Especificidade alta para superar CSS existente
   ============================================= */
@media screen and (max-width: 810px) {

    /* ── wrap geral ── */
    .now-carousel-wrap {
        position: relative;
        width: 100%;
        overflow: hidden;
    }

    /* ── SERVIÇOS (home) — full-bleed, sem margem lateral ── */
    #corpo #servicos {
        width: 100vw !important;
        margin-left: calc(-50vw + 50%) !important;
        overflow: visible !important;
    }
    #corpo #servicos #alinhar {
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow: visible !important;
    }
    /* wrap gerado pelo nowCarousel também sem padding */
    #corpo #servicos .now-carousel-wrap {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    #corpo #servicos ul {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 0 !important;
        text-align: left !important;
    }
    #corpo #servicos ul li.serv-card {
        flex: 0 0 82% !important;
        width: 82% !important;
        max-width: 82% !important;
        min-width: 0 !important;
        height: auto !important;
        padding: 10px !important;
        margin: 0 !important;
        display: block !important;
        box-sizing: border-box;
        transform: none !important;
    }
    #corpo #servicos .serv-img-wrap {
        height: 170px !important;
    }
    #corpo #servicos .serv-img-wrap img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center bottom !important;
        display: block !important;
    }

    /* ── SERVIÇOS (página /servicos) ── */
    #corpo #ss {
        width: 100vw !important;
        margin-left: calc(-50vw + 50%) !important;
        overflow: visible !important;
    }
    #corpo #ss #alinhar {
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow: visible !important;
    }
    #corpo #ss .now-carousel-wrap {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    #corpo #ss ul {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 0 !important;
    }
    #corpo #ss ul li.serv-card {
        flex: 0 0 82% !important;
        width: 82% !important;
        max-width: 82% !important;
        min-width: 0 !important;
        height: auto !important;
        padding: 10px !important;
        margin: 0 !important;
        display: block !important;
        box-sizing: border-box !important;
        transform: none !important;
    }

    /* ── PORTFÓLIO ── */
    #corpo #portfolio #dir .now-carousel-wrap ul,
    #corpo #portfolio #dir ul {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 0 !important;
    }
    #corpo #portfolio #dir ul li.case-card {
        flex: 0 0 82% !important;
        width: 82% !important;
        max-width: 82% !important;
        min-width: 0 !important;
        height: auto !important;
        padding: 0 !important;
        margin: 0 12px 0 0 !important;
        display: block !important;
        box-sizing: border-box;
        border-radius: 14px;
        overflow: hidden;
    }

    /* ── EVENTOS ── */
    #corpo #eventos {
        width: 100vw !important;
        margin-left: calc(-50vw + 50%) !important;
        overflow: visible !important;
    }
    #corpo #eventos .now-carousel-wrap ul,
    #corpo #eventos ul {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 0 !important;
        text-align: left !important;
    }
    #corpo #eventos ul li.serv-card {
        flex: 0 0 82% !important;
        width: 82% !important;
        max-width: 82% !important;
        min-width: 0 !important;
        height: auto !important;
        padding: 10px !important;
        margin: 0 12px 0 0 !important;
        display: block !important;
        box-sizing: border-box;
        transform: none !important;
    }
    #corpo #eventos .ev-img-wrap,
    #corpo #thenow2 .ev-img-wrap {
        height: 220px !important;
    }
    #corpo #eventos .ev-img-wrap img,
    #corpo #thenow2 .ev-img-wrap img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center bottom !important;
        display: block !important;
    }

    /* dots */
    .now-carousel-dots {
        display: flex;
        justify-content: center;
        gap: 7px;
        padding: 14px 0 4px;
        width: 100%;
    }
    .now-carousel-dots button {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        border: none;
        background: #ccc;
        padding: 0;
        cursor: pointer;
        transition: background 0.25s ease, transform 0.25s ease;
    }
    .now-carousel-dots button.active {
        background: #1CC48C;
        transform: scale(1.3);
    }

    /* ul deslizante */
    .now-carousel-wrap ul {
        transition: transform 0.38s cubic-bezier(0.4, 0, 0.2, 1);
        will-change: transform;
        cursor: grab;
    }
    .now-carousel-wrap ul.grabbing {
        cursor: grabbing;
        transition: none !important;
    }
}


/* =============================================================
   RESPONSIVO MOBILE — cobertura completa ≤ 810px
   ============================================================= */
@media screen and (max-width: 810px) {

    /* ── TOPO mini — altura mobile ── */
    html.topo-mini #topo {
        height: 60px !important;
    }
    html.topo-mini #topo #menu {
        height: 70px !important;
        line-height: 70px !important;
    }

    /* ── TOPO — #traco (barra verde superior) ── */
    #topo #traco {
        height: auto !important;
        padding: 7px 0 !important;
    }
    #topo #traco #alinhar {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 14px !important;
    }
    #topo #traco .tesq {
        float: none !important;
        display: block !important;
        padding: 0 !important;
        text-align: left !important;
    }
    #topo #traco .tesq .topo-phone,
    #topo #traco .tesq .topo-sep {
        display: none !important;
    }
    #topo #traco .tesq .topo-email {
        display: inline !important;
    }
    #topo #traco #lang {
        float: none !important;
        display: flex !important;
        align-items: center !important;
        width: auto !important;
        margin: 0 0 0 auto !important;
        flex-shrink: 0 !important;
    }
    #topo #traco .tdir {
        display: none !important;
    }

    /* ── Utilitários gerais ── */
    /* html/body já bloqueia scroll horizontal — #corpo não precisa duplicar */
    html, body { overflow-x: hidden !important; }
    #corpo { box-sizing: border-box !important; }
    #alinhar { padding: 0 16px !important; box-sizing: border-box; }

    /* ── Segurança de texto: nenhum texto cola na borda direita ── */
    #corpo #esq,
    #corpo #dir,
    #corpo #cen,
    #corpo .cd-col-text,
    #corpo .cd-col-imgs,
    #corpo #thenow #dir,
    #corpo #thenow2 #dir,
    #corpo #then #esq,
    #corpo #inovacao,
    #corpo #ajd #esq,
    #corpo #portfolio #esq,
    #corpo #cases #esq,
    #corpo #cases #dir,
    #corpo #servico .sv-intro-dir,
    #corpo #servico .sv-intro-esq {
        box-sizing: border-box !important;
        max-width: 100% !important;
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    /* ── Sem highlight/shadow ao tocar em cards no mobile ── */
    #corpo .serv-card:hover,
    #corpo .serv-card:active,
    #corpo .case-card:hover,
    #corpo .case-card:active {
        box-shadow: none !important;
        transform: none !important;
        -webkit-tap-highlight-color: transparent !important;
    }
    #corpo .serv-card *,
    #corpo .case-card * {
        -webkit-tap-highlight-color: transparent !important;
    }

    /* ── Botões — nunca esticar para largura total ── */
    .link1, .link2, .link3, .link4 {
        display: inline-block !important;
        width: fit-content !important;
        box-sizing: border-box;
    }
    #corpo .serv-cta,
    #corpo #servicos .serv-cta,
    #corpo #eventos .serv-cta {
        display: inline-flex !important;
        align-items: center !important;
        width: auto !important;
        padding: 7px 14px !important;
        border-radius: 8px !important;
        font-size: 11px !important;
        white-space: nowrap !important;
        border: 1px solid #1CC48C !important;
        box-sizing: border-box !important;
    }
    /* card de serviço dentro do carousel: display block */
    #corpo #servicos .serv-card {
        display: block !important;
        width: 100% !important;
    }
    /* botão deve ter largura apenas do seu conteúdo */
    #corpo #servicos .serv-cta,
    #corpo #eventos .serv-cta {
        display: inline-flex !important;
        width: max-content !important;
        max-width: 100% !important;
        flex-shrink: 0 !important;
    }

    /* título e subtítulo dos eventos à esquerda */
    #corpo #eventos .serv-titulo,
    #corpo #eventos .serv-sub,
    #corpo #eventos .serv-cta {
        text-align: left !important;
    }

    /* título EVENTOS E FEIRAS à esquerda */
    #corpo #eventos #tpbox,
    #corpo #eventos #tpbox #front,
    #corpo #eventos #tpbox #text {
        text-align: left !important;
    }

    /* ── #toppage (banner topo interno) ── */
    #corpo #toppage {
        padding: 130px 16px 28px !important;
    }
    #corpo #toppage #tit {
        font-size: 26px !important;
        width: 100% !important;
        display: block !important;
        text-align: left !important;
    }
    #corpo #toppage #mapsite {
        display: block !important;
        float: none !important;
        text-align: left !important;
        width: 100% !important;
        margin-top: 6px !important;
        font-size: 11px !important;
    }

    /* ── HOME — #destaque (hero video) ── */
    #corpo #destaque {
        height: 290px !important;
        padding: 120px 16px 40px !important;
    }
    #corpo #destaque span#txt2 {
        width: 100% !important;
        font-size: 24px !important;
        line-height: 130%;
    }
    #corpo #destaque span#txt3 {
        width: 100% !important;
    }

    /* ── HOME — #tpbox (serviços / FAQ títulos) ── */
    #corpo #tpbox {
        margin: 24px 16px !important;
        width: auto !important;
    }
    #corpo #tpbox #back {
        font-size: 40px !important;
        height: 40px !important;
    }
    #corpo #tpbox #front {
        font-size: 22px !important;
        padding: 10px 0 0 0 !important;
    }
    #corpo #tpbox #text,
    #corpo #tpbox #text2,
    #corpo #tpbox #text3 {
        max-width: 100% !important;
        width: 100% !important;
        padding: 14px 0 10px 0 !important;
        display: block !important;
    }
    #corpo #tpbox.tpbox2 {
        flex-direction: column !important;
    }
    #corpo #tpbox .tpbox-row {
        flex-direction: column !important;
        gap: 14px !important;
    }
    #corpo #tpbox .tpbox-row a {
        float: none !important;
        margin: 0 !important;
        display: inline-block !important;
    }

    /* ── HOME — #thenow (mapa verde) ── */
    #corpo #thenow {
        padding: 380px 16px 80px !important;
        box-sizing: border-box;
    }
    #corpo #thenow #map01 {
        width: 100% !important;
        margin: 0 !important;
        left: 0 !important;
        top: -80px !important;
        height: 340px !important;
        background-size: contain !important;
        background-position: center top !important;
    }
    #corpo #thenow #map01 #mapa-brasil {
        width: 100% !important;
        height: 320px !important;
    }
    #corpo #thenow #dir {
        width: 100% !important;
        float: none !important;
        padding: 0 16px 20px !important;
        text-align: left !important;
    }
    #corpo #thenow #dir > span {
        width: 100% !important;
    }
    #corpo #thenow #dir div#bx,
    #corpo #thenow #dir div#bx2 {
        width: 46% !important;
    }
    #corpo #thenow #dir div#bx3 {
        width: 46% !important;
    }
    span.thenow-map-txt {
        margin: 10px 0 14px !important;
    }

    /* ── HOME — #thenow2 (quem somos / mapa verde claro) ── */
    #corpo #thenow2 {
        padding: 320px 16px 60px !important;
        box-sizing: border-box;
    }
    #corpo #thenow2 #map01 {
        width: 100% !important;
        margin: 0 !important;
        left: 0 !important;
        top: -60px !important;
        height: 330px !important;
        background-size: contain !important;
        background-position: center top !important;
        filter: none !important;
    }
    #corpo #thenow2 #map01 #mapa-brasil {
        width: 100% !important;
        height: 310px !important;
    }
    #corpo #thenow2 #dir {
        width: 100% !important;
        float: none !important;
        padding: 0 16px 20px !important;
        text-align: left !important;
    }
    #corpo #thenow2 #dir div#bx,
    #corpo #thenow2 #dir div#bx2 {
        width: 46% !important;
        text-align: center !important;
    }
    #corpo #thenow2 #dir div#bx3 {
        width: 100% !important;
        text-align: center !important;
    }
    #corpo #thenow2 #dir ul {
        bottom: 0 !important;
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        padding: 20px 0 0 0 !important;
    }
    #corpo #thenow2 #dir ul li {
        width: auto !important;
        margin: 0 !important;
    }

    /* ── QUEM SOMOS — #then ── */
    #corpo #then {
        height: auto !important;
        padding: 50px 16px 40px !important;
        box-sizing: border-box;
    }
    #corpo #then #esq {
        width: 100% !important;
        padding: 0 16px 30px !important;
    }
    #corpo #then #esq span.tam50 {
        font-size: 30px !important;
        padding: 0 0 24px 0 !important;
    }
    #corpo #then #dir {
        position: relative !important;
        width: 100% !important;
        height: 360px !important;
    }
    #corpo #then #dir #img1 {
        width: 200px !important;
        left: 10px !important;
        top: 20px !important;
    }
    #corpo #then #dir #img2 {
        width: 220px !important;
        left: 170px !important;
        top: 10px !important;
    }
    #corpo #then #dir #img3 {
        width: 290px !important;
        left: 40px !important;
        top: 250px !important;
    }

    /* ── QUEM SOMOS — #inovacao ── */
    @keyframes inov-scroll {
        0%   { transform: translateX(0); }
        100% { transform: translateX(-50%); }
    }
    #corpo #inovacao {
        padding: 40px 0 28px !important;
        top: 0 !important;
        box-sizing: border-box;
        overflow: hidden !important;
    }
    #corpo #inovacao #alinhar {
        padding: 0 !important;
        overflow: hidden !important;
    }
    #corpo #inovacao span.tam40 {
        font-size: 26px !important;
        text-align: center !important;
        width: 100% !important;
        display: block !important;
        margin: 0 auto 24px !important;
        padding: 0 16px !important;
        box-sizing: border-box !important;
    }
    #corpo #inovacao ul {
        float: none !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        width: max-content !important;
        animation: inov-scroll 14s linear infinite !important;
        padding: 0 !important;
        margin: 0 !important;
        list-style: none !important;
    }
    #corpo #inovacao ul li {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        width: auto !important;
        min-width: 190px !important;
        height: auto !important;
        padding: 80px 20px 16px !important;
        margin-right: 20px !important;
        background-position: center top !important;
        background-size: 60px !important;
        background-repeat: no-repeat !important;
        flex-shrink: 0 !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }

    /* ── Eventos/Feiras — título alinhado à esquerda ── */
    #corpo #eventos #tpbox #front {
        text-align: left !important;
        padding-left: 0 !important;
        display: block;
        float: left;
        width: 100%;
    }

    /* ── SERVIÇO individual — sv-intro ── */
    #corpo #servico .sv-intro {
        flex-direction: column !important;
    }
    #corpo #servico .sv-intro-esq {
        width: 100% !important;
        border-right: none !important;
        border-bottom: 2px solid #1CC48C !important;
        padding: 0 0 20px 0 !important;
    }
    #corpo #servico .sv-intro-dir {
        width: 100% !important;
        padding: 0px 0 0 0 !important;
    }
    #corpo #servico .sv-titulo {
        font-size: 22px !important;
    }
    /* tpbox-row na página de serviço */
    #corpo #tpbox.tpbox2 #text {
        max-width: 100% !important;
    }

    /* ── SERVIÇO — fotos grid ── */
    #corpo #servicofotos .serv-foto-grid {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 4px !important;
        padding: 0 16px !important;
    }
    #corpo #servicofotos .serv-foto-item {
        flex: 0 0 calc(50% - 2px) !important;
        width: calc(50% - 2px) !important;
        height: 140px !important;
    }
    #corpo #servicofotos .serv-foto-main {
        flex: 0 0 100% !important;
        width: 100% !important;
        height: 200px !important;
    }

    /* ── CASES listing — #cases ── */
    #corpo #cases {
        padding: 30px 0 !important;
    }
    #corpo #cases #esq,
    #corpo #cases #dir {
        width: 100% !important;
        display: block !important;
        padding: 0 16px 20px !important;
        box-sizing: border-box;
    }
    #corpo #cases #esq img {
        width: 100% !important;
    }

    /* ── CASE individual — #case-detail ── */
    #corpo #case-detail {
        padding: 32px 0 !important;
    }
    #corpo #case-detail #alinhar {
        padding: 0 16px !important;
        box-sizing: border-box;
    }
    #corpo #case-detail .cd-layout {
        flex-direction: column !important;
        gap: 24px !important;
    }
    #corpo #case-detail .cd-col-imgs {
        flex: none !important;
        width: 100% !important;
        gap: 14px !important;
    }
    #corpo #case-detail .cd-col-text {
        position: static !important;
        width: 100% !important;
        gap: 16px !important;
        padding-top: 0 !important;
    }
    #corpo #case-detail .cd-titulo {
        font-size: 22px !important;
        line-height: 1.3 !important;
    }
    #corpo #case-detail .cd-body {
        font-size: 14px !important;
        line-height: 1.7 !important;
    }
    #corpo #case-detail .cd-body-sep {
        padding-top: 16px !important;
    }

    /* ── CTA — #ajd ── */
    #corpo #ajd #esq {
        width: 100% !important;
        display: block !important;
        padding: 20px 16px 0 !important;
        text-align: left !important;
    }
    #corpo #ajd span.tam20 {
        width: 100% !important;
        padding: 0 0 16px 0 !important;
    }
    #corpo #ajd a {
        display: inline-block !important;
        width: fit-content !important;
        margin: 0 0 16px 0 !important;
    }
    #corpo #ajd span.tam100 {
        font-size: 30px !important;
        margin-bottom: 0 !important;
    }

    /* ── PORTFÓLIO — #portfolio ── */
    #corpo #portfolio {
        padding: 30px 0 60px !important;
    }
    #corpo #portfolio #alinhar {
        display: block !important;
    }
    #corpo #portfolio #esq {
        width: 100% !important;
        display: block !important;
        padding: 0 16px 24px !important;
        box-sizing: border-box;
    }
    #corpo #portfolio span.font4 {
        font-size: 28px !important;
        padding: 30px 0 16px !important;
        width: 100% !important;
    }
    #corpo #portfolio span.font1 {
        display: block !important;
        width: 100% !important;
        padding: 0 0 8px 0 !important;
    }
    #corpo #portfolio #dir {
        width: 100% !important;
        display: block !important;
        padding: 0 !important;
    }
    /* o carousel JS controla ul e li com inline styles — não sobrescrever com !important */
    #corpo #portfolio #dir ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    /* ── FAQ ── */
    #corpo #faq {
        height: auto !important;
        overflow: hidden !important;
        padding-bottom: 0 !important;
    }
    /* Oculta as duas imagens decorativas do FAQ no mobile */
    #corpo #faq #dir1,
    #corpo #faq #esq1 {
        display: none !important;
    }
    #corpo #faq #alinhar {
        padding: 0 !important;
    }
    #corpo #faq #esq {
        width: 100% !important;
        padding: 40px 16px 20px !important;
        display: block !important;
        box-sizing: border-box;
    }
    #corpo #faq #dir {
        width: 100% !important;
        display: block !important;
        text-align: center !important;
        padding: 24px 16px 36px !important;
        box-sizing: border-box;
    }
    #corpo #faq #dir span {
        font-size: 26px !important;
        text-align: center !important;
        display: block !important;
    }

    /* ── RODAPÉ ── */
    #rodape #esq,
    #rodape #cen,
    #rodape #dir {
        display: block !important;
        width: 100% !important;
        padding: 20px 16px !important;
        box-sizing: border-box;
        border: none !important;
        text-align: center !important;
    }
    #rodape #cen {
        border-top: 1px solid #DBDBDB !important;
        border-bottom: 1px solid #DBDBDB !important;
    }
    /* Títulos das cidades */
    #rodape #cen font {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        padding: 12px 0 4px !important;
    }
    /* Textos de endereço */
    #rodape #cen span {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        padding: 0 0 12px 0 !important;
        line-height: 1.7 !important;
    }
    #rodape #esq span {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        padding: 10px 0 !important;
    }
    #rodape #esq a,
    #rodape #dir ul li a {
        display: block !important;
        text-align: center !important;
        padding: 6px 0 !important;
    }
    #rodape #dir ul {
        padding: 0 !important;
        list-style: none !important;
    }
    #frase {
        width: 100% !important;
        padding: 24px 16px !important;
        box-sizing: border-box;
    }
    #copy {
        width: 100% !important;
        padding: 16px !important;
        box-sizing: border-box;
    }

    /* ── Drawer mobile — garante visibilidade ── */
    #mob-drawer {
        z-index: 99999 !important;
    }

    /* ── Now Lightbox ── */
    #now-lightbox,
    #now-lightbox-sv {
        z-index: 999999 !important;
    }
    #now-lb-wrap,
    #now-lbsv-wrap {
        width: 96vw !important;
        max-height: 90vh !important;
    }
    #now-lb-thumbs,
    #now-lbsv-thumbs {
        max-height: 70px !important;
    }

    /* ── Números quem somos ── */
    #corpo #thenow2 #dir div#bx3 span.tam65 {
        font-size: 40px !important;
    }

    /* ── Botão serv-cta dentro de #ss ── */
    #corpo #ss .serv-cta {
        display: inline-flex !important;
        align-items: center !important;
        width: max-content !important;
        max-width: 100% !important;
        padding: 7px 14px !important;
        border-radius: 8px !important;
        font-size: 11px !important;
        white-space: nowrap !important;
        border: 1px solid #1CC48C !important;
        box-sizing: border-box !important;
        flex-shrink: 0 !important;
    }
    
    #corpo #tpbox.tpbox2 #front {
        flex-shrink: 0;
        width: 100%;
        text-align: left;
        padding: 45px 20px 0 10px;
    }
}



		

/* =============================================================
   RESPONSIVO MOBILE — ≤ 480px (telas pequenas)
   ============================================================= */
@media screen and (max-width: 480px) {

    #corpo #destaque span#txt2 {
        font-size: 20px !important;
    }
    #corpo #then #dir {
        height: 360px !important;
    }
    #corpo #then #dir #img1 { width: 160px !important; left: 8px !important; top: 16px !important; }
    #corpo #then #dir #img2 { width: 175px !important; left: 145px !important; top: 10px !important; }
    #corpo #then #dir #img3 { width: 240px !important; left: 30px !important; top: 210px !important; }

    #corpo #thenow {
        padding: 240px 0 40px 0 !important;
    }
    #corpo #thenow2 {
        padding: 260px 0 50px 0 !important;
    }

    #corpo #servicofotos .serv-foto-item {
        flex: 0 0 100% !important;
        width: 100% !important;
        height: 180px !important;
    }

    #corpo #servico .sv-titulo {
        font-size: 20px !important;
    }

    #rodape #esq #logo {
        width: 180px !important;
        background-size: 180px !important;
        display: block !important;
        margin: 0 auto 12px !important;
    }
}

/* ── reCAPTCHA badge — fixo canto inferior direito (global) ── */
.grecaptcha-badge {
    position: fixed !important;
    bottom: 5px !important;
    right: -90px !important;
    z-index: 9 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
    border-radius: 4px !important;
    width: 70px !important;
    overflow: hidden !important;
    transition: width .3s ease !important;
}
.grecaptcha-badge:hover {
    width: 256px !important;
}
