body{
	background-repeat: repeat;
/*	background-image: url(../imagens/bk-body.png);*/
	/* text-align: justify; */
}
.redes_sociais{
	background: #02733c;
	padding-top: 5px;
    background-size: contain;
	padding-bottom: 5px;
    margin-bottom: 15px;
}
.redes_sociais ul{
	list-style: none;
    margin: 5px 0;
}
.rightt ul {
    float: right;
}
.leftt  ul {
    float: left;
}
.redes_sociais ul li{
	margin-left: 10px;
	float: left;
}
.redes_sociais ul li a .icon{
	background-color: #d5ac4e;
	border-radius: 6px;
	width: 25px;
	height: 25px;
	display: block;
	text-align: center;
	line-height: 30px;
	color: #016633;
	box-shadow: #d5ac4e 0px 4px 0px;
	float: left;
}
.redes_sociais ul li a .icon:hover{
	background-color: #016633;
	color: #d5ac4e;
	box-shadow: #d5ac4e 0px 4px 0px;
}
.redes_sociais ul li a .txt-redes{
	color: #d5ac4e;
	float: right;
	margin-left: 10px;
	padding-top: 6px;
	margin-right: 13px;
    font-size: 18px;
}
.bemvindo {
    padding: 20px;
    border-radius: 5px;
    background: rgba(255,255,255,0.5);
    margin-top: 80px;
    text-align: left;
}
/* mapa — paleta verde/ouro */
#svg-map polygon,
#svg-map path {
	fill: url(#city-grad-normal);
	transition: fill 0.25s ease;
}
#svg-map text {
	fill: rgba(255,255,255,0.90);
	font: 12px Arial-BoldMT, sans-serif;
	cursor: pointer;
}
#svg-map a:hover text {
	fill: #d4a853;
	font: 12px Arial-BoldMT, sans-serif;
	cursor: pointer;
}
#svg-map a {
	text-decoration: none;
}
#svg-map a:hover {
	cursor: pointer; text-decoration: none;
}
#svg-map a polygon,
#svg-map a path {
	opacity: 0.92;
	stroke: rgba(255,255,255,0.30);
	stroke-width: 0.6;
}
#svg-map a:hover polygon,
#svg-map a:hover path {
	opacity: 1;
	stroke: rgba(255,255,255,0.45);
	stroke-width: 0.9;
}
#svg-map .circle  { fill: rgba(255,255,255,0.15); }
#svg-map .circle2 { fill: rgba(255,255,255,0.10); }
#svg-map a:hover .circle {
	fill: rgba(212,168,83,0.30);
	cursor: pointer;
}
#svg-map polygon#cor-map { fill: #c21100 !important; }
#svg-map a:hover polygon#cor-map { opacity: 0.65; }
.col-md-7.mapaa{
	margin-top: 50px;
}

h2.header-title{
	    font-size: 24px;
    font-family: 'bold';
    color: #01733c;
    text-transform: uppercase;
    margin-bottom: 10px;
}
h2.header-title span{
	font-family: 'regular';
}

h3.header-title{
	font-size: 20px;
	font-family: 'regular';
	color: #01733c;
	padding-top: 23px;
/*	line-height: 37px;*/
/*	text-transform: uppercase;*/
}

/*form header*/
.header_form{
	padding-top: 20px;
}
.busc_map {
    padding-bottom: 30px;
}
.header_form select, .header_form input, .header_form textarea{
	text-align: left;
	margin-bottom: 15px;
	font-size: 14px;
	color: #323232;
	width: 100%;
	position: relative;
	border-radius: 5px;
	border: 0px solid #FFF;
	box-shadow: 0px 4px 0 #FFF;
	background-color: #F0F0F0;
	padding: 13px 12px;
	-moz-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
	cursor: pointer;
}

.header_form select:before, .header_form input:before{
	content: "";
	width: 0;
	display: block;
	height: 0;
	border: 7px solid transparent;
	border-color: #e3e3e3 transparent transparent transparent;
	position: absolute;
	right: 10px;
	top: 10px;
	border-color: transparent transparent #e3e3e3 transparent;
}
#spac30{
	margin-top: 30px;
	width: 100%;
}

h2#redesauto{
	font-size: 30px;
	font-family: 'regular';
	text-transform: uppercase;
	color: #039d54;
    font-weight: bold;
}

.cadastro{
	border-radius: 5px;
/*	padding: 20px;*/
	background-repeat: repeat;
/*	background: #F0F0F0;*/
	margin-top: 0px;
	margin-bottom: 0px;
	position: relative;
}
.pesquisa-principal h2 {
    
}
.cadastro h2{
	text-align: left;
	font-size: 14px;
	color: #d5ac4f;
	width: 100%;
	position: relative;
	border-radius: 5px;
	border: 0px solid #e3e3e3;
	box-shadow: 0px 4px 0 #019d52;
	background-color: #016633;
	padding: 13px 12px;
	-moz-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
/*	margin-top: -42px;*/
	margin-bottom: 20px;
	font-family: 'bold';
	text-transform: uppercase;
}
.cadastro p{
	font-size: 15px;
	color: #026734;
	line-height: 20px;
}

.cadastro a.amarelo{
	color: #d5ac4e;
	border-radius: 5px;
	box-shadow: 0px 4px 0 #01733c;
	background-color: #01733c;
	padding: 13px 12px;
	-moz-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
	margin-top: 13px;
/*	margin-bottom: -34px;*/
	font-family: 'bold';
	text-transform: uppercase;
	display: block;
}

.cadastro a.li{
	margin-bottom: 0px;
}

.busca-rapida input{
	text-align: left;
	font-size: 18px;
	color: #02743d;
	width: 100%;
    text-align: center;
    text-transform: uppercase;
	position: relative;
	border-radius: 5px;
	border: 0px solid #e3e3e3;
/*	box-shadow: 0px 4px 0 #E9E9E9;*/
	background-color: #F0F0F0;
	padding: 20px 12px;
	-moz-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
}

.busca-rapida input::-webkit-input-placeholder  { color:#01733c; }
.busca-rapida input:-moz-placeholder { color:#01733c; }
.busca-rapida input:-moz-placeholder { color:#01733c; }


.busca-rapida p{
	padding-left: 0px;
	margin-bottom: 10px;
}
.busca-rapida button{
	text-align: left;
	font-size: 18px;
	color: #d5ac4f;
    font-weight: 100;
    text-align: center;
	position: relative;
	border-radius: 5px;
	border: 0px solid #e3e3e3;
	box-shadow: 0px 4px 0 #01733c;
	background-color: #01733c;
	padding: 20px 12px 18px;
	-moz-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
	cursor: pointer;
	margin-top: 0px;
/*	margin-bottom: -34px;*/
	font-family: 'bold';
	text-transform: uppercase;
	display: block;
    width: 100%;
}
.busca-rapida button:hover{
	box-shadow: 0px 4px 0 #00BF3F;
}
.clearfloat {
	clear: both;
	height: 0;
	font-size: 1px;
	line-height: 0px;
}
.links-index{
/*	background-color: #F1F1F1;*/
	padding-top: 0px;
	padding-bottom: 20px;
	display: block;
	border-radius: 0 0 5px 5px;
	margin-bottom: 15px;
    margin-top: 0px;
}

ul.links-empresas{
	list-style: none;
	margin-top: 10px;
}

ul.links-empresas li a{
	display: block;
	font-size: 18px;
	line-height: 18px;
	color: #02733d;
	text-align: left;
	padding: 11px 20px;
}

ul.links-empresas div li a{
	background: #fff;
    padding: 10px;
    border: 1px solid #01733c;
    border-radius: 5px;
    margin-bottom: 30px;
    min-height: 112px;
}
ul.links-empresas div li a:hover {

    border: 1px solid #026734;
    display: block;
    color: #d5ac4f;
    background: #026734;
}
ul.links-empresas div:nth-child(2n) li a{
/*	background-color: #f0f0f0;*/
}

a.link-int{
	list-style: none;
	display: block;
	margin-bottom: 20px;
	color: #838383;
}
a.link-int h2{
	font-family: 'bold';
	text-transform: uppercase;
}

a.link-int p{
	display: block;
	padding-top: 20px;
	padding-bottom: 20px;
}

ul.footer-redes{
	list-style: none;
	float: right;
}
ul.footer-redes li{
	margin-left: 10px;
	float: right;
}
ul.footer-redes li a .icon{
	background-color: #d5ac4f;
	border-radius: 6px;
	width: 25px;
	height: 25px;
	display: block;
	text-align: center;
	line-height: 30px;
	color: #016633;
	box-shadow: #016633 0px 4px 0px;
	float: left;
}
ul.footer-redes li a .icon:hover{
	background-color: #016633;
	color: #d5ac4f;
	box-shadow: #016633 0px 4px 0px;
}
ul.footer-redes li a .txt-redes{
	color: #d5ac4f;
	float: right;
	margin-left: 10px;
	padding-top: 6px;
	margin-right: 13px;
}

section.meio h1.title{
	font-size: 36px;
	font-family: 'bold';
	text-transform: uppercase;
	color: #016633;
	margin-bottom: 20px;
	margin-top: 0px;
}
section.meio p{
	line-height: 24px;
	font-size: 16px;
	margin-bottom: 13px;
}

/*tags*/
.tags{
	margin-left: -6px;
	margin-right: -6px;
}
.pesquisa-principal {
/*    padding: 10px;*/
/*    border: 1px solid #01733c;*/
    border-radius: 5px;
    margin-bottom: 30px;
}
.pesquisa-principal h3 {
    font-size: 36px;
}
.tags a{
	border: 1px solid #026734;
	display: block;
    color: #d5ac4f;
    background: #026734;
    border-radius: 10px;
	-webkit-box-shadow: 0 1px 1px 0 rgba(180,180,180,0.1);
	box-shadow: 0 1px 1px 0 rgba(180,180,180,0.1);
	-webkit-transition: all .1s ease-in-out;
	-moz-transition: all .1s ease-in-out;
	-o-transition: all .1s ease-in-out;
	-ms-transition: all .1s ease-in-out;
	transition: all .1s ease-in-out;
	border-radius: 5px;
	margin: 4px 6px;
	padding: 10px 10px;
	font-size: 1.2rem;
	text-decoration: none;
}
.tags a:hover{
	border-color: #026734;
    background: #FFF;
    color: #026734;
}

.error{
	margin: 0 auto;
	text-align: center;
}
.error-code{
	bottom: 60%;
	color: #2d353c;
	font-size: 96px;
	line-height: 100px;
}

/* carousel */
.media-carousel{
	margin-bottom: 0;
	padding: 0 40px 30px 40px;
	margin-top: 30px;
}
.media-carousel .carousel-control.left{
	left: -12px;
	background-image: none;
	background: none repeat scroll 0 0 #222222;
	border: 4px solid #FFFFFF;
	border-radius: 23px 23px 23px 23px;
	height: 40px;
	width : 40px;
	margin-top: 30px
}
.media-carousel .carousel-control.right{
	right: -12px !important;
	background-image: none;
	background: none repeat scroll 0 0 #222222;
	border: 4px solid #FFFFFF;
	border-radius: 23px 23px 23px 23px;
	height: 40px;
	width : 40px;
	margin-top: 30px
}
.media-carousel .carousel-indicators{
	right: 50%;
	top: auto;
	bottom: 0px;
	margin-right: -19px;
}
.media-carousel .carousel-indicators li{
	background: #c0c0c0;
}
.media-carousel .carousel-indicators .active{
	background: #333333;
}
.media-carousel img{
}
/* End carousel */
.empresa_em_destaque{
	text-align: left;
    font-size: 14px;
    color: #d5ac4f;
    width: 100%;
    position: relative;
    border-radius: 5px 5px 0 0;
    border: 0px solid #e3e3e3;
    box-shadow: 0px 4px 0 #019d52;
    background-color: #016633;
    padding: 13px 12px;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    -webkit-transition: all 0.2s ease-in;
    -ms-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
    /* margin-top: -42px; */
    margin-bottom: 10px;
    font-family: 'bold';
    text-transform: uppercase;
}
ul#lis_empre{
	list-style: none;
}
ul#lis_empre li.empresa_em_destaque_link{
	list-style: none;
	text-align: left;
    font-size: 14px;
    color: #016633;
    width: 100%;
    position: relative;
    border-bottom: 0px solid #cccccc;
   /* background-color: #f0f0f0;*/
    padding: 0px;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    -webkit-transition: all 0.2s ease-in;
    -ms-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
    margin-bottom: 3px;
    text-transform: uppercase;
    display: block;
}
ul#lis_empre li.empresa_em_destaque_link a{
	background: transparent;
    padding: 10px 10px !important;
    border: 0px solid #01733c;
    border-radius: 0px;
    margin-bottom: 0px;
    min-height: auto;
    display: block;
    font-size: 14px;
    line-height: 18px;
    color: #02733d;
    text-align: left;
    padding: 0;
}
ul#lis_empre li.empresa_em_destaque_link:nth-child(2n+2) {
    background: #f0f0f0 !important;
}

#page-title {
    position: relative;
    padding: 50px 0;
    background-color: #f9f9f9;
    border-bottom: 1px solid #EEE;
}
#page-title .container{
	position: relative;
}
#page-title {
    padding: 50px 0;
}
#page-title h1 {
    padding: 0;
    margin: 0;
    line-height: 1;
    font-family: 'bold';
    color: #016633;
    letter-spacing: 1px;
    font-size: 28px;
    text-transform: uppercase;
}
#page-title span {
    display: block;
    margin-top: 10px;
    font-weight: 300;
    color: #777;
    font-size: 20px;
}
.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: .75rem 1rem;
    margin-bottom: 1rem;
    list-style: none;
    background-color: #e9ecef;
    border-radius: .25rem;
}
.breadcrumb {
    position: absolute !important;
    width: auto !important;
    top: 50% !important;
    left: auto !important;
    right: 35px !important;
    margin: -10px 0 0 0 !important;
    background-color: transparent !important;
    padding: 0 !important;
    font-size: 15px;
}
#page-title span strong{
	 font-weight: 800;
}
.bloco_resut{
	    background: #8080ff;
        border-color: #026634;
    border: 1px solid;
        margin-bottom: 10px;
        border-radius: 12px;
        -webkit-box-shadow: 0 1px 15px 1px rgba(69,65,78,.08);
    -moz-box-shadow: 0 1px 15px 1px rgba(69,65,78,.08);
    box-shadow: 0 1px 15px 1px rgba(69,65,78,.08);
    background-color: #fff;
}
.bloco_resut .tt_result{
	border-color: #026634;
    background-color: #026634;
        height: 4rem;
        border-bottom: 1px solid #ebedf2;
        display: table;
    padding: 0;
    width: 100%;
    padding: 0 2.2rem;
    height: 2.7rem;
        border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.bloco_resut .tt_result h3{
text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
display: table-cell;
    vertical-align: middle;
    font-size: 1.3rem;
    font-weight: bold;
    color: #fff;
}
.bloco_resut .txt_result{
	    min-height: 140px;
    background: #fff;
    color: #575962;
    padding: 1.2rem 2.2rem;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
.bloco_resut .txt_result span{
	width: 100%;
    display: block;
    font-size: 20px;
    margin-bottom: 16px;
}

.bloco_resut .txt_result span strong{
	font-family: 'bold';
}
.bloco_resut .txt_result span strong a{
	line-height: 15px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background-color: #016533;
    -webkit-box-shadow: 1px 1px 2px rgba(0,0,0,.2), inset 0 -2px #009d51;
    box-shadow: 1px 1px 2px rgba(0,0,0,.2), inset 0 -2px #009d51;
    border: solid 1px #009d51;
    display: inline-block;
    padding: 10px 10px;
    font-size: 14px;
    color: #d5ac4e;
    font-family: 'bold', sans-serif, Arial;
    text-transform: uppercase;
    text-align: center;
    position: relative;
}
.info_municipio{
	margin-top: 40px;
	display: block;
}
.mt-40{
	margin-top: 40px;
	width: 100%;
	display: block;
}
.mb-20{
	margin-bottom: 20px;
	width: 100%;
	display: block;
}
.info_municipio .col-md-6{
	margin-bottom: 30px;
}
.info_municipio .col-md-6 span{
	    font-size: 20px;
	    text-transform: uppercase;
	    width: 100%;
	    display: block;
	     color: #6f727d;
}
.info_municipio .col-md-6 strong{
	font-size: 21px;
    font-weight: 600;
    margin-top: 10px;
    display: block;
    color: #6f727d;
}
.info_municipio .col-md-12 h3{
	font-size: 20px;
    font-family: 'regular';
    text-transform: uppercase;
    color: #039d54;
    font-weight: bold;
}
.info_municipio ul.etnia {
	background: #000;
	width: 100%;
	list-style: none;
	min-height: 100px;
}
.info_municipio ul.etnia li{
	width: 20%;
	min-height: 100px;
	display: block;
	float: left;
	list-style: none;
	color: #fff;
}
.info_municipio ul.etnia li#li1{
	background-color: #0000;
}
.info_municipio ul.etnia li#li2{
	background-color: #0003;
}
.info_municipio ul.etnia li#li3{
	background-color: #0000004f;
}
.info_municipio ul.etnia li#li4{
	background-color: #00000070;
}
.info_municipio ul.etnia li#li5{
	background-color: #0000008c;
}
.info_municipio ul.etnia li span{
	    width: 100%;
    display: block;
    padding: 8px;
    font-size: 17px;
}
@media(max-width: 700px){
	.info_municipio ul.etnia li{
		width: 100%;
	}
}

/* ============================================================
   MARQUEE DE CATEGORIAS
   ============================================================ */

.cat-marquee {
	width: 100%;
	overflow: hidden;
	background: linear-gradient(90deg, rgba(6,44,22,0.96) 0%, rgba(2,115,60,0.90) 50%, rgba(6,44,22,0.96) 100%);
	/* border-bottom: 1px solid rgba(255,255,255,0.08); */
	margin-bottom: 56px;
	margin-top: 10px;
	position: relative;
}

/* Fade nas bordas para dissolução elegante */
.cat-marquee::before,
.cat-marquee::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	width: 80px;
	z-index: 2;
	pointer-events: none;
}
.cat-marquee::before {
	left: 0;
	background: linear-gradient(to right, rgba(6,44,22,0.95), transparent);
}
.cat-marquee::after {
	right: 0;
	background: linear-gradient(to left, rgba(6,44,22,0.95), transparent);
}

.cat-marquee-inner {
	display: flex;
	width: max-content;
	animation: cat-scroll 120s linear infinite;
}
.cat-marquee:hover .cat-marquee-inner {
	animation-play-state: paused;
}

@keyframes cat-scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

.cat-marquee-list {
	display: flex;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 0;
}

.cat-marquee-item {
	display: flex;
	align-items: center;
	white-space: nowrap;
}

.cat-marquee-link {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 20px;
	text-decoration: none !important;
	transition: opacity 0.2s;
}
.cat-marquee-link:hover { opacity: 0.75; }

.cat-count {
	font-size: 11px;
	font-weight: 800;
	color: #d4a853;
	letter-spacing: 0.04em;
	line-height: 1;
	background: rgba(212,168,83,0.12);
	padding: 3px 7px;
	border-radius: 4px;
	border: 1px solid rgba(212,168,83,0.25);
	flex-shrink: 0;
}

.cat-name {
	font-size: 11px;
	font-weight: 600;
	color: rgba(255,255,255,0.88);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.cat-sep {
	color: rgba(255,255,255,0.20);
	font-size: 18px;
	line-height: 1;
	flex-shrink: 0;
	padding: 0 4px;
}

.cat-marquee--rpage {
	margin-top: 0;
	margin-bottom: 0;
}

/* ============================================================
   HEADER — Topbar (header-wrapper-top)
   ============================================================ */

.header-wrapper-top {
	background: linear-gradient(90deg, #062c16 0%, #02733c 50%, #062c16 100%) !important;
	/* border-bottom: 1px solid rgba(212,168,83,0.20) !important; */
	padding: 0 !important;
}
.header-wrapper-top .container { position: relative; }
.header-wrapper-top .topbar { min-height: 40px; }

/* Redes sociais */
.topbar-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 4px;
	background: rgba(255,255,255,0.08);
	color: rgba(255,255,255,0.75) !important;
	font-size: 13px;
	transition: background 0.2s, color 0.2s;
	text-decoration: none !important;
}
.topbar-social-link:hover {
	background: rgba(212,168,83,0.18);
	color: #d4a853 !important;
}

/* Centro — bloco de autoridade */
.topbar-authority {
	display: flex;
	align-items: center;
	gap: 12px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}

.topbar-auth-item {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap;
}

.topbar-auth-icon {
	font-size: 10px;
	color: #d4a853;
}

.topbar-auth-highlight {
	font-size: 11px;
	font-weight: 800;
	color: #d4a853;
	letter-spacing: 0.04em;
}

.topbar-auth-label {
	font-size: 10px;
	font-weight: 600;
	color: rgba(255,255,255,0.65);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.topbar-auth-sep {
	color: rgba(255,255,255,0.18);
	font-size: 14px;
}

/* Direita — link Grupo */
.topbar-grupo-link {
	font-size: 10px !important;
	font-weight: 700 !important;
	color: rgba(255,255,255,0.70) !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	transition: color 0.2s;
}
.topbar-grupo-link:hover { color: #d4a853 !important; }

/* Dropdown Grupo 360 */
.header-wrapper-top .dropdown-menu {
	background: #062c16 !important;
	border: 1px solid rgba(212,168,83,0.18) !important;
	border-radius: 6px !important;
	box-shadow: 0 8px 32px rgba(6,44,22,0.50) !important;
	min-width: 180px;
}
.header-wrapper-top .dropdown-menu .dropdown-item {
	font-size: 11px !important;
	font-weight: 600 !important;
	color: rgba(255,255,255,0.72) !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	padding: 9px 18px !important;
	transition: background 0.15s, color 0.15s;
}
.header-wrapper-top .dropdown-menu .dropdown-item:hover {
	background: rgba(212,168,83,0.12) !important;
	color: #d4a853 !important;
}

/* ============================================================
   HEADER — Barra de navegação principal
   ============================================================ */

.main-header .navbar-nav .nav-link {
	padding: 10px 20px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	color: rgba(255,255,255,0.85) !important;
	text-transform: uppercase !important;
	transition: color 0.2s !important;
}
.main-header .navbar-nav .nav-link:hover { color: #d4a853 !important; }

/* Logo branca */
/* .main-header .navbar-brand img { filter: brightness(0) invert(1); } */

/* Botão CTA — gold */
.header-customize-item.button .btn {
	padding: 11px 26px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.10em !important;
	text-transform: uppercase !important;
	border-radius: 4px !important;
	background: #d4a853 !important;
	border-color: #d4a853 !important;
	color: #062c16 !important;
}
.header-customize-item.button .btn:hover {
	background: #c49640 !important;
	border-color: #c49640 !important;
}

/* Dropdown do menu principal — fundo verde escuro */
.main-header .sub-menu,
.main-header .navbar-nav .dropdown-menu {
	background: #062c16 !important;
	border: 1px solid rgba(212,168,83,0.15) !important;
	border-radius: 6px !important;
	box-shadow: 0 12px 40px rgba(6,44,22,0.55) !important;
}
.main-header .sub-menu .nav-link,
.main-header .navbar-nav .dropdown-menu .dropdown-item {
	color: rgba(255,255,255,0.72) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	padding: 10px 20px !important;
	transition: color 0.15s, background 0.15s !important;
}
.main-header .sub-menu .nav-link:hover,
.main-header .navbar-nav .dropdown-menu .dropdown-item:hover {
	color: #d4a853 !important;
	background: rgba(212,168,83,0.08) !important;
}

/* ============================================================
   HEADER — Menu mobile (off-canvas)
   ============================================================ */

@media (max-width: 1199.98px) {
	/* Fundo em gradiente ancorado ao viewport — mesma "fatia" do degradê tanto na barra
	   fechada quanto no painel aberto, sem costura visível entre os dois elementos. */
	.header-wrapper,
	#navbar-main-menu.show {
		background: linear-gradient(160deg, #062c16 0%, #02733c 55%, #062c16 100%) !important;
		background-attachment: fixed !important;
	}

	/* Logo do header mobile: menor e alinhada à esquerda */
	.navbar-brand-mobile {
		order: -1;
		margin-left: 0 !important;
		margin-right: auto !important;
	}
	.navbar-brand-mobile img {
		max-height: 28px;
		width: auto;
	}

	/* Ícone do menu (hamburger) em branco */
	.navbar-toggler.toggle-icon {
		color: #ffffff !important;
	}

	/* Painel do menu aberto: lista de links centralizada, com respiro e separadores sutis */
	#navbar-main-menu.show {
		padding-top: 8px;
		padding-bottom: 28px;
	}
	#navbar-main-menu.show .navbar-nav {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		width: 100%;
		padding: 4px 0 22px;
	}
	#navbar-main-menu.show .navbar-nav .nav-item {
		width: 100%;
		max-width: 320px;
		border-bottom: 1px solid rgba(255,255,255,0.10);
	}
	#navbar-main-menu.show .navbar-nav .nav-item:last-child {
		border-bottom: none;
	}
	#navbar-main-menu.show .navbar-nav .nav-link {
		display: block;
		text-align: center !important;
		padding: 15px 20px !important;
		font-size: 12px !important;
		letter-spacing: 0.10em !important;
	}

	/* Botão "Cadastre-se" centralizado no painel mobile */
	#navbar-main-menu.show .header-customize {
		display: flex !important;
		justify-content: center !important;
		margin-top: 6px;
	}
}

/* ============================================================
   HERO — Estrutura e fundo
   ============================================================ */

.home-main-intro {
	padding-top: 150px !important;
	padding-bottom: 0px !important;
	overflow: hidden;
}

/* Overlay escuro verde sobre a imagem de fundo */
.home-main-intro::before {
	background: linear-gradient(
		105deg,
		rgba(6,44,22,0.97)  0%,
		rgba(6,44,22,0.92)  35%,
		rgba(6,44,22,0.72)  65%,
		rgba(6,44,22,0.35) 100%
	) !important;
}

.home-main-intro::after { display: none !important; }

.home-main-intro .container > .row {
	align-items: center !important;
	min-height: 520px;
}

/* ============================================================
   HERO — Coluna esquerda / Conteúdo
   ============================================================ */

.banner_top2 {
	padding-bottom: 0;
	border-bottom: none;
	margin-bottom: 0;
}

/* Neutraliza regra conflitante do portal/style.css linha 22097 */
.home-main-intro .heading h1 {
	font-size: unset !important;
	line-height: unset !important;
	color: unset !important;
	letter-spacing: unset !important;
	margin-bottom: 0 !important;
}

.home-main-intro .heading {
	max-width: 520px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

/* Eyebrow — badge dourado */
.hero-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: rgba(212,168,83,0.12);
	color: #d4a853;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.10em;
	text-transform: uppercase;
	padding: 6px 14px;
	border-radius: 4px;
	border: 1px solid rgba(212,168,83,0.28);
	margin-bottom: 32px !important;
	width: fit-content;
}
.hero-eyebrow i { font-size: 11px; color: #d4a853; }

/* Headline — nível 1: branco forte */
.home-main-intro .heading h1 > span:first-child {
	font-size: 44px !important;
	line-height: 1.08 !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	letter-spacing: -0.03em !important;
	display: block !important;
	margin-bottom: 0 !important;
}

/* Subtítulo — nível 2: dourado */
.home-main-intro .heading h1 > span:last-child {
	font-size: 18px !important;
	line-height: 1.5 !important;
	font-weight: 400 !important;
	color: #d4a853 !important;
	letter-spacing: 0 !important;
	margin-top: 20px !important;
	display: block !important;
}

/* Descrição — nível 3: branco suave */
.home-main-intro .banner_top2 .heading p {
	font-size: 14px !important;
	color: rgba(255,255,255,0.68) !important;
	margin-top: 24px !important;
	margin-bottom: 0 !important;
	line-height: 1.8 !important;
	font-weight: 400 !important;
	max-width: 420px;
}

/* Stats — prova social */
.hero-stats {
	display: flex;
	align-items: center;
	gap: 0;
	margin-top: 44px !important;
	padding-top: 28px !important;
	border-top: 1px solid rgba(255,255,255,0.12);
	width: 100%;
}

.hero-stat {
	display: flex;
	flex-direction: column;
	padding: 0 32px 0 0;
}
.hero-stat:first-child { padding-left: 0; }

/* Número em dourado */
.hero-stat strong {
	font-size: 28px;
	font-weight: 800;
	color: #d4a853;
	line-height: 1;
	letter-spacing: -0.03em;
}

/* Label em branco 50% */
.hero-stat span {
	font-size: 11px;
	font-weight: 600;
	color: rgba(255,255,255,0.50);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-top: 6px;
}

.hero-stat-div {
	width: 1px;
	height: 32px;
	background: rgba(255,255,255,0.15);
	margin: 0 32px 0 0;
	flex-shrink: 0;
}

/* ============================================================
   HERO — Coluna direita / Mapa
   ============================================================ */

.col-lg-6 .mapaa {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 0 !important;
	position: relative;
}

/* Halo dourado atrás do mapa — harmoniza com paleta gold */
.col-lg-6 .mapaa::before {
	content: '';
	position: absolute;
	width: 80%;
	height: 80%;
	background: radial-gradient(ellipse, rgba(212,168,83,0.10) 0%, rgba(2,115,60,0.06) 50%, transparent 70%);
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	pointer-events: none;
	z-index: 0;
}

.mapaa #svg-map {
	width: 100%;
	max-width: 580px;
	height: auto;
	display: block;
	position: relative;
	z-index: 1;
	filter: drop-shadow(0 24px 64px rgba(212,168,83,0.18)) drop-shadow(0 4px 20px rgba(6,44,22,0.40));
}

/* ============================================================
   SEARCH PILL — Flutuante
   ============================================================ */

.searchpill-wrap {
	position: relative;
	z-index: 20;
	margin-top: 48px;
	padding: 0 0 0px;
	width: 100%;
	background: #FFF;
}

.searchpill-inner {
	max-width: 1370px;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

.searchpill {
	display: flex;
	align-items: stretch;
	background: #fff;
	border-radius: 0px;
	/* box-shadow: 0 20px 72px rgba(0,0,0,0.22), 0 4px 16px rgba(0,0,0,0.10); */
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
	border: 0px solid rgba(212,168,83,0.30);
}

.searchpill-field {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 22px 32px;
	cursor: pointer;
	border-radius: 16px;
	transition: background 0.15s;
	position: relative;
	user-select: none;
}
.searchpill-field:hover { background: #f9fafb; }

.sp-label {
	font-size: 10px !important;
	font-weight: 800 !important;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: #0f1623 !important;
	margin-bottom: 5px !important;
	line-height: 1;
	display: block;
}

.sp-input-wrap {
	display: flex;
	align-items: center;
	gap: 8px;
}

.sp-input {
	font-size: 14px !important;
	font-weight: 400 !important;
	color: #374151 !important;
	padding: 0 !important;
	height: auto !important;
	line-height: 1.4;
	box-shadow: none !important;
	cursor: pointer;
	flex: 1;
	min-width: 0;
}
.sp-input::placeholder { color: #9ca3af !important; }

.sp-arrow { color: #9ca3af; font-size: 11px; flex-shrink: 0; cursor: pointer; }

/* Campo de texto — maior peso visual por ser o campo principal */
#sp-texto { flex: 1.5; }
.sp-search-icon { color: #9ca3af; font-size: 14px; flex-shrink: 0; }

.sp-divider { width: 1px; background: #e5e7eb; margin: 14px 0; flex-shrink: 0; }

.sp-btn {
	flex-shrink: 0;
	background: #02733c;
	color: #fff;
	border: none;
	border-radius: 12px;
	margin: 10px;
	padding: 0 44px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.10em;
	text-transform: uppercase;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 10px;
	transition: background 0.2s, box-shadow 0.2s, transform 0.15s;
	white-space: nowrap;
	min-height: 52px;
}
.sp-btn:hover {
	background: #015c2f;
	box-shadow: 0 6px 20px rgba(2,115,60,0.30);
	transform: translateY(-1px);
}
.sp-btn i { font-size: 14px; }

.searchpill .dropdown-menu {
	border-radius: 12px !important;
	box-shadow: 0 8px 32px rgba(0,0,0,0.12) !important;
	border: 1px solid rgba(0,0,0,0.06) !important;
	margin-top: 8px !important;
	min-width: 260px;
}

/* ============================================================
   CATEGORIAS — Seção abaixo da pill
   ============================================================ */

.home-main-how-it-work h5 {
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	color: #9ca3af !important;
}

/* ============================================================
   DIRETÓRIO — Seção de cards de empresas
   ============================================================ */

.dir-section {
	padding: 80px 0 96px;
	background: #f7f8f6;
}

/* Cabeçalho da seção */
.dir-heading {
	margin-bottom: 56px;
}

.dir-heading-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #d4a853;
	margin-bottom: 16px;
}

.dir-eyebrow-dot {
	display: inline-block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #d4a853;
	flex-shrink: 0;
}

.dir-heading-title {
	font-size: 32px !important;
	font-weight: 300 !important;
	color: #062c16 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.02em !important;
	margin: 0 !important;
}

.dir-heading-title span {
	font-weight: 700 !important;
	color: #062c16 !important;
}

.dir-heading-sub {
	font-size: 14px;
	color: #6b7280;
	margin-top: 12px !important;
	margin-bottom: 0 !important;
	font-weight: 400;
	line-height: 1.6;
}

/* Grid — 6 colunas desktop, 3 tablet, 2 mobile */
.dir-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 24px;
}

/* Card */
.dir-card {
	background: #ffffff;
	border-radius: 12px;
	border: 1px solid #e8ede8;
	box-shadow: 0 2px 12px rgba(6,44,22,0.06);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: transform 0.2s, box-shadow 0.2s;
}

.dir-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 32px rgba(6,44,22,0.12);
}

/* Imagem */
.dir-card-img-wrap {
	display: block;
	position: relative;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #f0f4f0;
	margin: 14px 14px 0;
	border-radius: 8px;
}

.dir-card-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.35s ease;
}

.dir-card:hover .dir-card-img {
	transform: scale(1.04);
}

/* Badge de segmento */
.dir-card-badge {
	position: absolute;
	top: 8px;
	left: 8px;
	background: #062c16;
	color: #d4a853;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	padding: 3px 8px;
	border-radius: 4px;
	max-width: calc(100% - 16px);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* Corpo */
.dir-card-body {
	padding: 14px 16px 10px;
	flex: 1;
}

.dir-card-name {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: #062c16 !important;
	text-decoration: none !important;
	line-height: 1.3;
	margin-bottom: 6px;
	transition: color 0.2s;
}
.dir-card-name:hover { color: #02733c !important; }

.dir-card-location {
	font-size: 12px;
	color: #7a8a7a;
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	gap: 4px;
}
.dir-card-location i { color: #02733c; font-size: 11px; }

.dir-card-reviews {
	display: flex;
	align-items: center;
	gap: 6px;
}

.dir-card-reviews-score {
	background: #02733c;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	padding: 2px 8px;
	border-radius: 4px;
	line-height: 1.4;
}

.dir-card-reviews-count {
	font-size: 11px;
	color: #9aaa9a;
}

/* CTA */
.dir-card-cta {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0 14px 14px;
	padding: 10px;
	background: #f0f8f4;
	color: #02733c !important;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: 8px;
	text-decoration: none !important;
	transition: background 0.2s, color 0.2s;
}

.dir-card:hover .dir-card-cta {
	background: #d4a853;
	color: #062c16 !important;
}

/* ============================================================
   BENEFÍCIOS
   ============================================================ */

.benefits-section {
	padding: 96px 0;
	background: #ffffff;
}

.benefits-header {
	margin-bottom: 64px;
}

.benefits-title {
	font-size: 32px !important;
	font-weight: 300 !important;
	color: #062c16 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.02em !important;
	margin: 0 !important;
}
.benefits-title span {
	font-weight: 700 !important;
}

.benefits-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
}

.benefit-card {
	background: #f7f8f6;
	border: 1px solid rgba(6,44,22,0.07);
	border-radius: 12px;
	padding: 40px 36px 36px;
	position: relative;
	overflow: hidden;
	transition: box-shadow 0.22s, border-color 0.22s, transform 0.22s;
}
.benefit-card:hover {
	box-shadow: 0 16px 48px rgba(6,44,22,0.10);
	border-color: rgba(212,168,83,0.30);
	transform: translateY(-3px);
}

/* Acento verde escuro no topo */
.benefit-card::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 3px;
	background: linear-gradient(90deg, #062c16, #02733c);
	border-radius: 12px 12px 0 0;
}

.benefit-num {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.14em;
	color: #d4a853;
	margin-bottom: 24px;
}

.benefit-icon-wrap {
	width: 48px;
	height: 48px;
	background: rgba(6,44,22,0.06);
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 24px;
}
.benefit-icon-wrap i {
	font-size: 20px;
	color: #02733c;
}

.benefit-title {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #062c16 !important;
	margin-bottom: 12px !important;
	line-height: 1.3 !important;
}

.benefit-desc {
	font-size: 13px !important;
	color: #6b7280 !important;
	line-height: 1.75 !important;
	margin: 0 !important;
}

/* ============================================================
   BANNER CTA
   ============================================================ */

.cta-banner {
	padding: 0 0 0;
	background: #ffffff;
}

.cta-banner-inner {
	background: linear-gradient(105deg, #062c16 0%, #02733c 60%, #035c2e 100%);
	border-radius: 16px;
	padding: 64px 72px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 48px;
	position: relative;
	overflow: hidden;
}

/* Detalhe decorativo */
.cta-banner-inner::after {
	content: '';
	position: absolute;
	right: -80px;
	top: -80px;
	width: 320px;
	height: 320px;
	border-radius: 50%;
	background: rgba(212,168,83,0.06);
	pointer-events: none;
}

.cta-banner-eyebrow {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #d4a853;
	margin-bottom: 16px;
}
.cta-banner-eyebrow i { margin-right: 4px; }

.cta-banner-title {
	font-size: 28px !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	line-height: 1.25 !important;
	margin: 0 0 12px !important;
	letter-spacing: -0.02em !important;
}

.cta-banner-sub {
	font-size: 13px !important;
	color: rgba(255,255,255,0.60) !important;
	margin: 0 !important;
	line-height: 1.6 !important;
}

.cta-banner-btn {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	background: #d4a853;
	color: #062c16 !important;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.10em;
	text-transform: uppercase;
	text-decoration: none !important;
	padding: 18px 36px;
	border-radius: 8px;
	transition: background 0.2s, transform 0.18s, box-shadow 0.2s;
	white-space: nowrap;
}
.cta-banner-btn:hover {
	background: #c49640;
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(212,168,83,0.35);
}
.cta-banner-btn i { font-size: 14px; }

/* ============================================================
   COBERTURA — CIDADES
   ============================================================ */

.coverage-section {
	padding: 96px 0;
	background: #f7f8f6;
}

.coverage-header {
	margin-bottom: 56px;
}

.coverage-title {
	font-size: 32px !important;
	font-weight: 300 !important;
	color: #062c16 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.02em !important;
	margin: 0 !important;
}
.coverage-title span { font-weight: 700 !important; }

.coverage-sub {
	font-size: 13px;
	color: #9ca3af;
	margin-top: 10px !important;
	margin-bottom: 0 !important;
}

.coverage-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 6px 16px;
}

.coverage-city {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 500;
	color: #374151;
	text-decoration: none !important;
	padding: 6px 0;
	border-bottom: 1px solid rgba(6,44,22,0.05);
	transition: color 0.15s;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.coverage-city i {
	font-size: 9px;
	color: #02733c;
	flex-shrink: 0;
}
.coverage-city:hover { color: #02733c; }

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 1199px) {
	.dir-grid { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 991px) {
	.home-main-intro .heading h1 > span:first-child { font-size: 36px !important; }
	.home-main-intro .heading h1 > span:last-child  { font-size: 16px !important; }
	.home-main-intro { padding-top: 60px !important; padding-bottom: 0px !important; }

	/* O marquee de categorias da home ficava atrás do header fixo no mobile
	   (padding-top do hero é menor aqui do que no desktop). Empurra só o
	   marquee para baixo do header, sem mexer no espaçamento das outras páginas. */
	.home-main-intro-container .cat-marquee {
		margin-top: 70px;
	}
	.hero-stats { gap: 0; }
	.hero-stat strong { font-size: 22px; }
	.dir-grid { grid-template-columns: repeat(3, 1fr); }
	.topbar-authority { display: none; }
	.benefits-grid { grid-template-columns: 1fr; gap: 20px; }
	.coverage-grid { grid-template-columns: repeat(3, 1fr); }
	.cta-banner-inner { flex-direction: column; padding: 48px 36px; text-align: center; }
}

@media (max-width: 767px) {
	.searchpill { flex-direction: column; border-radius: 16px; }
	.sp-divider { width: auto; height: 1px; margin: 0 16px; }
	.sp-btn { margin: 8px; padding: 16px; border-radius: 10px; justify-content: center; }
	.searchpill-wrap { margin-top: -16px; }
	.dir-grid { grid-template-columns: repeat(2, 1fr); }
	.dir-section { padding: 48px 0 64px; }
	.coverage-grid { grid-template-columns: repeat(2, 1fr); }
	.benefits-section, .coverage-section { padding: 64px 0; }
}

/* =============================================
   FOOTER — Site Footer
   ============================================= */

.site-footer {
   background: linear-gradient(160deg, #062c16 0%, #02733c 55%, #062c16 100%);
   color: rgba(255,255,255,0.80);
   font-size: 14px;
   position: relative;
}

.site-footer::before {
   content: '';
   position: absolute;
   top: 0; left: 0; right: 0;
   height: 0px;
   background: linear-gradient(90deg, transparent, #d4a853, transparent);
}

/* Grid principal */
.footer-body {
   padding: 72px 0 56px;
}

.footer-grid {
   display: grid;
   grid-template-columns: 2fr 1fr 1fr 1.4fr;
   gap: 48px;
   align-items: start;
}

/* Coluna Marca */
.footer-logo img {
   height: 44px;
   /* filter: brightness(0) invert(1); */
   display: block;
   margin-bottom: 20px;
}

.footer-tagline {
   color: rgba(255,255,255,0.72);
   line-height: 1.65;
   margin-bottom: 24px;
   max-width: 320px;
}

.footer-cta {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: #d4a853;
   color: #062c16 !important;
   font-weight: 700;
   font-size: 13px;
   letter-spacing: 0.4px;
   text-transform: uppercase;
   padding: 11px 22px;
   border-radius: 8px;
   text-decoration: none !important;
   transition: background 0.2s, transform 0.2s;
   margin-bottom: 28px;
}
.footer-cta:hover {
   background: #e8be6a;
   transform: translateY(-1px);
}

/* Stats no rodapé */
.footer-stats {
   display: flex;
   align-items: center;
   gap: 20px;
   padding-top: 20px;
   border-top: 1px solid rgba(212,168,83,0.20);
}
.footer-stat {
   display: flex;
   flex-direction: column;
   gap: 2px;
}
.footer-stat strong {
   color: #d4a853;
   font-size: 18px;
   font-weight: 800;
   line-height: 1;
}
.footer-stat span {
   color: rgba(255,255,255,0.55);
   font-size: 11px;
   text-transform: uppercase;
   letter-spacing: 0.5px;
}
.footer-stat-sep {
   width: 1px;
   height: 32px;
   background: rgba(212,168,83,0.25);
}

/* Títulos das colunas */
.footer-col-title {
   color: #ffffff;
   font-size: 12px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 1.2px;
   margin-bottom: 20px;
   padding-bottom: 10px;
   border-bottom: 1px solid rgba(212,168,83,0.25);
}

/* Navegação */
.footer-nav {
   list-style: none;
   margin: 0;
   padding: 0;
   display: flex;
   flex-direction: column;
   gap: 10px;
}
.footer-nav a {
   color: rgba(255,255,255,0.68);
   text-decoration: none !important;
   transition: color 0.2s, padding-left 0.2s;
   display: flex;
   align-items: center;
   gap: 8px;
   font-size: 13.5px;
}
.footer-nav a i {
   font-size: 10px;
   color: rgba(212,168,83,0.60);
   transition: color 0.2s;
}
.footer-nav a:hover {
   color: #d4a853;
}
.footer-nav a:hover i {
   color: #d4a853;
}

/* Badges / parceiros */
.footer-badges {
   display: flex;
   flex-direction: column;
   gap: 16px;
   margin-bottom: 28px;
}
.footer-badge {
   background: rgba(255,255,255,0.07);
   border: 1px solid rgba(255,255,255,0.12);
   border-radius: 8px;
   padding: 14px 18px;
   display: inline-block;
}
.footer-badge img {
   height: 28px;
   filter: brightness(0) invert(1);
   opacity: 0.80;
   display: block;
}

/* Redes sociais no rodapé */
.footer-social-label {
   color: rgba(255,255,255,0.50);
   font-size: 11px;
   text-transform: uppercase;
   letter-spacing: 0.8px;
   margin-bottom: 10px;
}
.footer-social {
   display: flex;
   gap: 8px;
}
.footer-social-link {
   width: 36px;
   height: 36px;
   border-radius: 8px;
   background: rgba(255,255,255,0.08);
   border: 1px solid rgba(212,168,83,0.20);
   display: flex;
   align-items: center;
   justify-content: center;
   color: rgba(255,255,255,0.75) !important;
   font-size: 14px;
   text-decoration: none !important;
   transition: background 0.2s, border-color 0.2s, color 0.2s;
}
.footer-social-link:hover {
   background: #d4a853;
   border-color: #d4a853;
   color: #062c16 !important;
}

/* Barra inferior */
.footer-bottom {
   border-top: 1px solid rgba(255,255,255,0.08);
   padding: 20px 0;
}
.footer-bottom-inner {
   display: flex;
   align-items: center;
   gap: 12px;
   justify-content: center;
   flex-wrap: wrap;
}
.footer-copy {
   color: rgba(255,255,255,0.45);
   font-size: 13px;
}
.footer-copy a {
   color: rgba(255,255,255,0.65);
   text-decoration: none !important;
   transition: color 0.2s;
}
.footer-copy a:hover { color: #d4a853; }
.footer-bottom-sep {
   color: rgba(255,255,255,0.20);
   font-size: 13px;
}
.footer-bottom-note {
   color: rgba(255,255,255,0.35);
   font-size: 12px;
   letter-spacing: 0.4px;
}

/* Responsividade do rodapé */
@media (max-width: 1199px) {
   .footer-grid { grid-template-columns: 1.6fr 1fr 1fr; gap: 36px; }
   .footer-col:last-child { grid-column: 1 / -1; display: flex; gap: 40px; align-items: flex-start; }
   .footer-col:last-child .footer-badges { flex-direction: row; }
}
@media (max-width: 767px) {
   .footer-grid { grid-template-columns: 1fr; gap: 32px; }
   .footer-col:last-child { flex-direction: column; gap: 24px; }
   .footer-col:last-child .footer-badges { flex-direction: row; }
   .footer-body { padding: 48px 0 40px; }
   .footer-stats { gap: 14px; }
   .footer-tagline { max-width: 100%; }
}


/* =============================================
   MARQUEE NO RODAPÉ — variante invertida
   ============================================= */

.footer-marquee-wrap {
   background: #062c16;
   border-bottom: 0px solid rgba(212,168,83,0.18);
   overflow: hidden;
}
.footer-marquee-wrap .cat-marquee {
   margin-bottom: 0;
   margin-top: 0;
}

/* Sentido contrário ao do topo: translateX(0→+50%) via keyframe invertido */
.cat-marquee--footer .cat-marquee-inner--reverse {
   animation-name: cat-scroll-reverse;
   animation-duration: 100s;
   animation-timing-function: linear;
   animation-iteration-count: infinite;
}

@keyframes cat-scroll-reverse {
   from { transform: translateX(-50%); }
   to   { transform: translateX(0); }
}
/* =============================================
   MAPA — cores individuais por cidade (hover)
   ============================================= */

#mapaSvg01:hover polygon, #mapaSvg01:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg02:hover polygon, #mapaSvg02:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg03:hover polygon, #mapaSvg03:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg04:hover polygon, #mapaSvg04:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg05:hover polygon, #mapaSvg05:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg06:hover polygon, #mapaSvg06:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg07:hover polygon, #mapaSvg07:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg08:hover polygon, #mapaSvg08:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg09:hover polygon, #mapaSvg09:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg010:hover polygon, #mapaSvg010:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg011:hover polygon, #mapaSvg011:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg012:hover polygon, #mapaSvg012:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg013:hover polygon, #mapaSvg013:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg014:hover polygon, #mapaSvg014:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg015:hover polygon, #mapaSvg015:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg016:hover polygon, #mapaSvg016:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg017:hover polygon, #mapaSvg017:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg018:hover polygon, #mapaSvg018:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg019:hover polygon, #mapaSvg019:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg020:hover polygon, #mapaSvg020:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg021:hover polygon, #mapaSvg021:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg022:hover polygon, #mapaSvg022:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg023:hover polygon, #mapaSvg023:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg024:hover polygon, #mapaSvg024:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg025:hover polygon, #mapaSvg025:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg026:hover polygon, #mapaSvg026:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg027:hover polygon, #mapaSvg027:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg028:hover polygon, #mapaSvg028:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg029:hover polygon, #mapaSvg029:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg030:hover polygon, #mapaSvg030:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg031:hover polygon, #mapaSvg031:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg032:hover polygon, #mapaSvg032:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg033:hover polygon, #mapaSvg033:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg034:hover polygon, #mapaSvg034:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg035:hover polygon, #mapaSvg035:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg036:hover polygon, #mapaSvg036:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg037:hover polygon, #mapaSvg037:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg038:hover polygon, #mapaSvg038:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg039:hover polygon, #mapaSvg039:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg040:hover polygon, #mapaSvg040:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg041:hover polygon, #mapaSvg041:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg042:hover polygon, #mapaSvg042:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg043:hover polygon, #mapaSvg043:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg044:hover polygon, #mapaSvg044:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg045:hover polygon, #mapaSvg045:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg046:hover polygon, #mapaSvg046:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg047:hover polygon, #mapaSvg047:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg048:hover polygon, #mapaSvg048:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg049:hover polygon, #mapaSvg049:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg050:hover polygon, #mapaSvg050:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg051:hover polygon, #mapaSvg051:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg052:hover polygon, #mapaSvg052:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg053:hover polygon, #mapaSvg053:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg054:hover polygon, #mapaSvg054:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg055:hover polygon, #mapaSvg055:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg056:hover polygon, #mapaSvg056:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg057:hover polygon, #mapaSvg057:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg058:hover polygon, #mapaSvg058:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg059:hover polygon, #mapaSvg059:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg060:hover polygon, #mapaSvg060:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg061:hover polygon, #mapaSvg061:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg062:hover polygon, #mapaSvg062:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg063:hover polygon, #mapaSvg063:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg064:hover polygon, #mapaSvg064:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg065:hover polygon, #mapaSvg065:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg066:hover polygon, #mapaSvg066:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg067:hover polygon, #mapaSvg067:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg068:hover polygon, #mapaSvg068:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg069:hover polygon, #mapaSvg069:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg070:hover polygon, #mapaSvg070:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg071:hover polygon, #mapaSvg071:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg072:hover polygon, #mapaSvg072:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg073:hover polygon, #mapaSvg073:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg074:hover polygon, #mapaSvg074:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg075:hover polygon, #mapaSvg075:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg076:hover polygon, #mapaSvg076:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg077:hover polygon, #mapaSvg077:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg078:hover polygon, #mapaSvg078:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg079:hover polygon, #mapaSvg079:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg080:hover polygon, #mapaSvg080:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg081:hover polygon, #mapaSvg081:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg082:hover polygon, #mapaSvg082:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg083:hover polygon, #mapaSvg083:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg084:hover polygon, #mapaSvg084:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg085:hover polygon, #mapaSvg085:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg086:hover polygon, #mapaSvg086:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg087:hover polygon, #mapaSvg087:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg088:hover polygon, #mapaSvg088:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg089:hover polygon, #mapaSvg089:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg090:hover polygon, #mapaSvg090:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg091:hover polygon, #mapaSvg091:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg092:hover polygon, #mapaSvg092:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg093:hover polygon, #mapaSvg093:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg094:hover polygon, #mapaSvg094:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg095:hover polygon, #mapaSvg095:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg096:hover polygon, #mapaSvg096:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg097:hover polygon, #mapaSvg097:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg098:hover polygon, #mapaSvg098:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg099:hover polygon, #mapaSvg099:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg0100:hover polygon, #mapaSvg0100:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg0101:hover polygon, #mapaSvg0101:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg0102:hover polygon, #mapaSvg0102:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg0103:hover polygon, #mapaSvg0103:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg0104:hover polygon, #mapaSvg0104:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg0105:hover polygon, #mapaSvg0105:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg0106:hover polygon, #mapaSvg0106:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg0107:hover polygon, #mapaSvg0107:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg0108:hover polygon, #mapaSvg0108:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg0109:hover polygon, #mapaSvg0109:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg0110:hover polygon, #mapaSvg0110:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg0111:hover polygon, #mapaSvg0111:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg0112:hover polygon, #mapaSvg0112:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg0113:hover polygon, #mapaSvg0113:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg0114:hover polygon, #mapaSvg0114:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg0115:hover polygon, #mapaSvg0115:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg0116:hover polygon, #mapaSvg0116:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg0117:hover polygon, #mapaSvg0117:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg0118:hover polygon, #mapaSvg0118:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg0119:hover polygon, #mapaSvg0119:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg0120:hover polygon, #mapaSvg0120:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg0121:hover polygon, #mapaSvg0121:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg0122:hover polygon, #mapaSvg0122:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg0123:hover polygon, #mapaSvg0123:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg0124:hover polygon, #mapaSvg0124:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg0125:hover polygon, #mapaSvg0125:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}
#mapaSvg0126:hover polygon, #mapaSvg0126:hover path {
   fill: #00b87a !important;
   filter: drop-shadow(0 0 5px #00b87a99);
}
#mapaSvg0127:hover polygon, #mapaSvg0127:hover path {
   fill: #d4a853 !important;
   filter: drop-shadow(0 0 5px #d4a85399);
}
#mapaSvg0128:hover polygon, #mapaSvg0128:hover path {
   fill: #05b86a !important;
   filter: drop-shadow(0 0 5px #05b86a99);
}
#mapaSvg0129:hover polygon, #mapaSvg0129:hover path {
   fill: #f0cc5a !important;
   filter: drop-shadow(0 0 5px #f0cc5a99);
}
#mapaSvg0130:hover polygon, #mapaSvg0130:hover path {
   fill: #00cc88 !important;
   filter: drop-shadow(0 0 5px #00cc8899);
}
#mapaSvg0131:hover polygon, #mapaSvg0131:hover path {
   fill: #e8a030 !important;
   filter: drop-shadow(0 0 5px #e8a03099);
}
#mapaSvg0132:hover polygon, #mapaSvg0132:hover path {
   fill: #7bc070 !important;
   filter: drop-shadow(0 0 5px #7bc07099);
}
#mapaSvg0133:hover polygon, #mapaSvg0133:hover path {
   fill: #c49340 !important;
   filter: drop-shadow(0 0 5px #c4934099);
}
#mapaSvg0134:hover polygon, #mapaSvg0134:hover path {
   fill: #80c454 !important;
   filter: drop-shadow(0 0 5px #80c45499);
}
#mapaSvg0135:hover polygon, #mapaSvg0135:hover path {
   fill: #f5c842 !important;
   filter: drop-shadow(0 0 5px #f5c84299);
}
#mapaSvg0136:hover polygon, #mapaSvg0136:hover path {
   fill: #60a878 !important;
   filter: drop-shadow(0 0 5px #60a87899);
}
#mapaSvg0137:hover polygon, #mapaSvg0137:hover path {
   fill: #e8b060 !important;
   filter: drop-shadow(0 0 5px #e8b06099);
}
#mapaSvg0138:hover polygon, #mapaSvg0138:hover path {
   fill: #03a05a !important;
   filter: drop-shadow(0 0 5px #03a05a99);
}
#mapaSvg0139:hover polygon, #mapaSvg0139:hover path {
   fill: #d4b870 !important;
   filter: drop-shadow(0 0 5px #d4b87099);
}


/* =============================================
   PÁGINA INTERNA — Hero banner slim
   ============================================= */

#section-01.home-main-intro.banner {
   padding-top: 190px !important;
   padding-bottom: 0px !important;
   min-height: unset !important;
   background-color: #062c16 !important;
}

#section-01.home-main-intro.banner .container > .row {
   min-height: unset !important;
   align-items: flex-start !important;
}

#section-01.home-main-intro.banner h1 {
   font-size: 28px !important;
   font-weight: 700 !important;
   color: #ffffff !important;
   text-align: center;
   line-height: 1.3 !important;
   letter-spacing: 0.2px !important;
   margin-bottom: 12px !important;
}

#section-01.home-main-intro.banner .breadcrumb {
   background: transparent !important;
   justify-content: left !important;
   padding: 0 !important;
   margin: 0 !important;
}

#section-01.home-main-intro.banner .breadcrumb-item,
#section-01.home-main-intro.banner .breadcrumb-item a,
#section-01.home-main-intro.banner .breadcrumb-item span {
   color: rgba(255,255,255,0.60) !important;
   font-size: 13px !important;
}

#section-01.home-main-intro.banner .breadcrumb-item a:hover {
   color: #d4a853 !important;
}

#section-01.home-main-intro.banner .breadcrumb-item + .breadcrumb-item::before {
   color: rgba(255,255,255,0.30) !important;
}

/* =============================================
   PÁGINA INTERNA — Bloco de conteúdo
   ============================================= */

/* "Palco branco" — cobre o fundo do hero e cria contraste para o conteúdo */
.home-main-intro.banner #content-wrapper {
   position: relative;
   z-index: 2;
   /* background: #f2f5f2; */
}

.home-main-intro.banner .home-main-how-it-work {
   background: #f2f5f2 !important;
   margin-top: 50px !important;
   margin-bottom: 0px !important;
   padding-top: 56px !important;
   padding-bottom: 72px !important;
   border-top: 0px solid #d4a853;
    z-index: 999;
    position: relative;
}

/* Card central de conteúdo em todas as páginas internas */
.home-main-intro.banner .home-main-how-it-work > .container {
   /* background: #ffffff; */
   border-radius: 16px;
   /* box-shadow: 0 8px 40px rgba(6,44,22,0.10); */
   /* padding: 40px 48px; */
   /* border: 1px solid rgba(212,168,83,0.15); */
}

/* =============================================
   EMPRESA — Cabeçalho
   ============================================= */

.empresa-logo-wrap {
   flex-shrink: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   width: 160px;
   height: 160px;
   padding: 16px;
   box-sizing: border-box;
   border-radius: 18px;
   background: #ffffff;
   border: 1px solid rgba(6,44,22,0.08);
   box-shadow: 0 1px 2px rgba(6,44,22,0.04), 0 12px 28px -8px rgba(6,44,22,0.18);
   transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.empresa-logo-wrap:hover {
   box-shadow: 0 1px 2px rgba(6,44,22,0.05), 0 18px 36px -8px rgba(6,44,22,0.24);
   transform: translateY(-2px);
}

@media (max-width: 575.98px) {
   .empresa-logo-wrap {
      width: 100px;
      height: 100px;
      padding: 10px;
      border-radius: 14px;
   }
}

.empresa-logo-wrap .empresa-logo {
   max-width: 100%;
   max-height: 100%;
   width: auto;
   height: auto;
   object-fit: contain;
   display: block;
   border-radius: 10px;
}

.explore-details-top .store h3 {
   font-size: 22px !important;
   font-weight: 700 !important;
   color: #062c16 !important;
}

.explore-details-top .store .check {
   color: #02733c !important;
   font-size: 24px;
   font-weight: 600;
   margin-top: -7px;
}

.explore-details-top .store-meta .badge-success {
   background: #02733c !important;
   color: #fff !important;
   font-size: 13px;
   font-weight: 700;
   padding: 4px 10px;
   border-radius: 20px;
}

.explore-details-top .store-meta .separate {
   display: inline-block;
   width: 1px;
   height: 14px;
   background: #d0d5d0;
   margin: 0 4px;
   vertical-align: middle;
}

/* =============================================
   EMPRESA — Seções de conteúdo
   ============================================= */

.typography-block h3.font-size-lg,
.typography-block h5.font-size-lg {
   font-size: 11px !important;
   font-weight: 700 !important;
   letter-spacing: 1.4px !important;
   text-transform: uppercase !important;
   color: #02733c !important;
   border-bottom: 2px solid #d4a853 !important;
   padding-bottom: 10px !important;
   margin-bottom: 20px !important;
}

.typography-block .mb-7 p,
.typography-block .mb-7 {
   color: #3a3a3a;
   font-size: 15px;
   line-height: 1.75;
}

/* =============================================
   EMPRESA — Reviews
   ============================================= */

.block-review .border-top {
   border-top: 1px solid #e8ece8 !important;
}

.reviews .author-image img {
   width: 44px;
   height: 44px;
   object-fit: cover;
   border-radius: 50%;
   border: 2px solid #e0ece4;
}

.reviews .h5 {
   font-size: 15px !important;
   font-weight: 700 !important;
   color: #062c16 !important;
   margin-bottom: 2px !important;
}

.reviews .list-inline .list-inline-item span {
   font-size: 12px;
   color: #7a8a7a;
}

.reviews .badge-success {
   background: #02733c !important;
   font-size: 14px !important;
   font-weight: 800 !important;
   padding: 5px 12px !important;
   border-radius: 8px !important;
   line-height: 1 !important;
}

.reviews .media-body p {
   font-size: 14px;
   color: #444;
   line-height: 1.65;
   margin-top: 8px;
}

.reviews .btn-outline-primary {
   border-color: #e0e0e0 !important;
   color: #aaa !important;
   font-size: 11px !important;
   padding: 4px 12px !important;
   border-radius: 6px !important;
   margin-top: 10px !important;
}

/* =============================================
   EMPRESA — Formulário de avaliação
   ============================================= */

.block-form-review {
   background: #ffffff !important;
   border: 1px solid #e0ece4 !important;
   border-radius: 12px !important;
   padding: 28px !important;
   margin-top: 32px !important;
}

.block-form-review h6 {
   font-size: 11px !important;
   letter-spacing: 1.2px !important;
   text-transform: uppercase !important;
   color: #02733c !important;
   font-weight: 700 !important;
   border-bottom: 2px solid #d4a853 !important;
   padding-bottom: 10px !important;
   margin-bottom: 20px !important;
   padding-top: 0 !important;
}

.block-form-review .form-control {
   border: 1px solid #d5e0d5 !important;
   border-radius: 8px !important;
   font-size: 14px !important;
   padding: 10px 14px !important;
   color: #333 !important;
   background: #fafcfa !important;
}

.block-form-review .form-control:focus {
   border-color: #02733c !important;
   box-shadow: 0 0 0 3px rgba(2,115,60,0.10) !important;
   outline: none !important;
}

.block-form-review textarea.form-control {
   min-height: 110px;
}

.block-form-review .btn-primary {
   background: #02733c !important;
   border-color: #02733c !important;
   border-radius: 8px !important;
   padding: 12px 36px !important;
   font-size: 14px !important;
   font-weight: 700 !important;
   letter-spacing: 0.3px !important;
   transition: background 0.2s !important;
}

.block-form-review .btn-primary:hover {
   background: #d4a853 !important;
   border-color: #d4a853 !important;
   color: #062c16 !important;
}

/* =============================================
   EMPRESA — Sidebar
   ============================================= */

.sidebar .card.infomation {
   border-radius: 12px !important;
   overflow: hidden;
   box-shadow: 0 4px 24px rgba(6,44,22,0.08) !important;
   border: 1px solid #e0ece4 !important;
   background: #ffffff !important;
}

.sidebar .card-header {
   background: transparent !important;
   border: none !important;
   padding: 20px 20px 0 !important;
}

.sidebar .card-title {
   font-size: 11px !important;
   font-weight: 700 !important;
   letter-spacing: 1.2px !important;
   text-transform: uppercase !important;
   color: #02733c !important;
}

.sidebar .card-header hr {
   border-color: #d4a853 !important;
   border-width: 2px !important;
   margin-top: 10px !important;
}

.sidebar .card-body {
   padding: 0 20px 20px !important;
   background: #ffffff !important;
}

.sidebar .list-group-item {
   border: none !important;
   background: transparent !important;
   padding: 10px 0 !important;
   border-bottom: 1px solid #f0f4f0 !important;
   font-size: 14px !important;
   color: #2a2a2a !important;
}

.sidebar .list-group-item:last-child {
   border-bottom: none !important;
}

.sidebar .item-icon {
   color: #02733c;
   font-size: 15px;
   margin-top: 2px;
   flex-shrink: 0;
}

.sidebar .item-icon svg {
   width: 16px;
   height: 16px;
   fill: #02733c;
}

.sidebar .card-text a {
   color: #02733c !important;
   word-break: break-all;
}

.sidebar .card-text a:hover {
   color: #d4a853 !important;
}

.sidebar .social-icon .list-inline {
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
   padding: 0;
   margin: 0;
}

.sidebar .social-icon .list-inline-item {
   margin: 0 !important;
}

.sidebar .social-icon .list-inline-item a {
   width: 36px;
   height: 36px;
   border-radius: 8px;
   background: #f0f4f0;
   border: 1px solid #d5e0d5;
   display: flex !important;
   align-items: center;
   justify-content: center;
   color: #02733c !important;
   font-size: 14px;
   text-decoration: none !important;
   transition: background 0.2s, color 0.2s;
}

.sidebar .social-icon .list-inline-item a:hover {
   background: #d4a853 !important;
   border-color: #d4a853 !important;
   color: #02733c !important;
}
.sidebar .social-icon .list-inline-item a:hover .social-icon ul, .sidebar .social-icon .list-inline-item a:hover .social-icon li, .sidebar .social-icon .list-inline-item a:hover .social-icon a, .sidebar .social-icon .list-inline-item a:hover .social-icon i, .sidebar .social-icon .list-inline-item a:hover .social-icon span {
	color: #02733c !important
}

.sidebar .social-icon .list-inline-item a span {
   display: none !important;
}

/* Hero banner interno — alinhamento e remoção de altura forçada */
#section-01.home-main-intro.banner .container .h-100 {
   padding-top: 0 !important;
   padding-bottom: 0 !important;
   text-align: left;
}

/* Tira mb-8 que cria espaço branco desnecessário após a section */
#section-01.home-main-intro.banner {
   margin-bottom: 0 !important;
}

/* O palco do container já envolve tudo — remove double-card na empresa */
.home-main-intro.banner .typography-block.bg-white {
   background: transparent !important;
   box-shadow: none !important;
   border: none !important;
   padding: 0 !important;
   border-radius: 0 !important;
}

/* =============================================
   CONTATO — Form e inputs
   ============================================= */

/* Neutraliza bg-transparent e text-dark dos inputs legados */
#form-contato .form-control,
#form-contato textarea.form-control {
   background: #fafcfa !important;
   color: #1a1a1a !important;
   border: 1px solid #ccd8cc !important;
   border-radius: 8px !important;
   padding: 11px 14px !important;
   font-size: 14px !important;
   transition: border-color 0.2s, box-shadow 0.2s !important;
}

#form-contato .form-control:focus,
#form-contato textarea.form-control:focus {
   border-color: #02733c !important;
   box-shadow: 0 0 0 3px rgba(2,115,60,0.10) !important;
   outline: none !important;
   background: #ffffff !important;
}

#form-contato .field-entry label {
   font-size: 11px !important;
   font-weight: 700 !important;
   text-transform: uppercase !important;
   letter-spacing: 0.8px !important;
   color: #02733c !important;
   margin-bottom: 6px !important;
   display: block;
}

#form-contato textarea.form-control {
   min-height: 130px;
   resize: vertical;
}

/* Botão enviar */
#enviar-contato {
   background: #02733c !important;
   border-color: #02733c !important;
   color: #ffffff !important;
   border-radius: 8px !important;
   font-size: 14px !important;
   font-weight: 700 !important;
   letter-spacing: 0.4px !important;
   padding: 13px 32px !important;
   transition: background 0.2s !important;
}

#enviar-contato:hover {
   background: #d4a853 !important;
   border-color: #d4a853 !important;
   color: #062c16 !important;
}

/* Texto introdutório do contato */
.home-main-how-it-work .wow.fadeInRight p:first-of-type {
   font-size: 15px;
   color: #444;
   line-height: 1.75;
   margin-bottom: 0;
}

/* Empresa: container mais largo (tem sidebar) — ajusta padding lateral */
.home-main-intro.banner .home-main-how-it-work > .container.empresa-container {
   padding: 32px 32px !important;
}

/* Páginas sem sidebar: padding generoso centralizado */
.home-main-intro.banner .home-main-how-it-work > .container:not(.empresa-container) {
   max-width: 860px;
}

/* Largura máxima global do site: 1370px */
#section-01.home-main-intro.banner > .container,
.home-main-intro .container,
.home-main-intro.banner .home-main-how-it-work > .container,
.site-footer .container,
.footer-marquee-wrap .container,
.footer-body .container,
.footer-bottom .container {
   /* max-width: 1370px !important; */
   width: 100% !important;
}


/* =============================================
   RESULTADOS — Página de cidade
   ============================================= */

/* Layout principal: main (esquerda larga) + sidebar (direita) */
.res-page-container {
   max-width: 1370px !important;
}

.res-layout {
   display: grid;
   grid-template-columns: 1fr 320px;
   gap: 32px;
   align-items: start;
   padding-top: 8px;
}

/* =============================================
   RESULTADOS — Cabeçalho da coluna principal
   ============================================= */

.res-section-label {
   font-size: 11px !important;
   font-weight: 700 !important;
   letter-spacing: 1.4px !important;
   text-transform: uppercase !important;
   color: #02733c !important;
   margin-bottom: 4px !important;
}

.res-main-header {
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   margin-bottom: 24px;
   padding-bottom: 16px;
   border-bottom: 2px solid #d4a853;
}

.res-main-title {
   font-size: 22px !important;
   font-weight: 400 !important;
   color: #062c16 !important;
   margin: 0 !important;
   line-height: 1.2;
}

.res-main-title strong {
   font-weight: 800;
}

.res-count-badge {
   background: #f0f8f4;
   border: 1px solid #c0ddc8;
   color: #02733c;
   font-size: 12px;
   font-weight: 700;
   padding: 5px 14px;
   border-radius: 20px;
   white-space: nowrap;
   flex-shrink: 0;
   margin-left: 16px;
}

/* =============================================
   RESULTADOS — Grid de cards
   ============================================= */

.res-cards-grid {
   display: grid;
   grid-template-columns: repeat(6, 1fr);
   gap: 20px;
   margin-bottom: 32px;
}

/* =============================================
   RESULTADOS — Card de empresa
   ============================================= */

.res-card {
   background: #ffffff;
   border-radius: 12px;
   border: 1px solid #e8ede8;
   box-shadow: 0 2px 12px rgba(6,44,22,0.06);
   display: flex;
   flex-direction: column;
   overflow: hidden;
   transition: transform 0.2s, box-shadow 0.2s;
}

.res-card:hover {
   transform: translateY(-4px);
   box-shadow: 0 12px 32px rgba(6,44,22,0.12);
}

.res-card-img-wrap {
   position: relative;
   display: block;
   aspect-ratio: 16 / 9;
   overflow: hidden;
   background: #f0f4f0;
   margin: 14px 14px 0;
   border-radius: 8px;
}

.res-card-img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   transition: transform 0.35s ease;
}

.res-card:hover .res-card-img {
   transform: scale(1.04);
}

.res-card-badge {
   position: absolute;
   top: 8px;
   left: 8px;
   background: #062c16;
   color: #d4a853;
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 0.5px;
   text-transform: uppercase;
   padding: 3px 8px;
   border-radius: 4px;
   max-width: calc(100% - 16px);
   overflow: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
}

.res-card-body {
   padding: 14px 16px 10px;
   flex: 1;
}

.res-card-name {
   display: block;
   font-size: 14px;
   font-weight: 700;
   color: #062c16 !important;
   text-decoration: none !important;
   line-height: 1.3;
   margin-bottom: 6px;
   transition: color 0.2s;
}

.res-card-name:hover { color: #02733c !important; }

.res-card-location {
   font-size: 12px;
   color: #7a8a7a;
   margin-bottom: 8px;
   display: flex;
   align-items: center;
   gap: 4px;
}

.res-card-location i { color: #02733c; font-size: 11px; }

.res-card-meta {
   display: flex;
   align-items: center;
   gap: 6px;
}

.res-card-score {
   background: #02733c;
   color: #fff;
   font-size: 11px;
   font-weight: 800;
   padding: 2px 8px;
   border-radius: 4px;
   line-height: 1.4;
}

.res-card-reviews {
   font-size: 11px;
   color: #9aaa9a;
}

.res-card-cta {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   margin: 0 14px 14px;
   padding: 10px;
   background: #f0f8f4;
   color: #02733c !important;
   font-size: 12px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.5px;
   border-radius: 8px;
   text-decoration: none !important;
   transition: background 0.2s, color 0.2s;
}

.res-card:hover .res-card-cta {
   background: #d4a853;
   color: #062c16 !important;
}

/* =============================================
   RESULTADOS — Botão carregar mais
   ============================================= */

.res-load-more {
   width: 100%;
   background: transparent;
   border: 2px solid #02733c;
   color: #02733c;
   border-radius: 10px;
   padding: 14px 32px;
   font-size: 13px;
   font-weight: 700;
   letter-spacing: 0.5px;
   text-transform: uppercase;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   transition: background 0.2s, color 0.2s, border-color 0.2s;
   margin-bottom: 40px;
}

.res-load-more:hover {
   background: #02733c;
   color: #ffffff;
}

/* =============================================
   RESULTADOS — Sidebar card
   ============================================= */

.res-sidebar-card {
   background: #ffffff;
   border-radius: 12px;
   border: 1px solid #e0ece4;
   box-shadow: 0 4px 24px rgba(6,44,22,0.07);
   overflow: hidden;
   position: sticky;
   top: 100px;
}

/* Tabs */
.res-tabs {
   display: flex;
   background: #f8faf8;
   border-bottom: 2px solid #e0ece4;
   padding: 0 !important;
   margin: 0 !important;
}

.res-tab-link {
   flex: 1;
   text-align: center;
   padding: 12px 8px !important;
   font-size: 11px !important;
   font-weight: 700 !important;
   color: #6a7a6a !important;
   text-transform: uppercase;
   letter-spacing: 0.5px;
   border-bottom: 2px solid transparent !important;
   margin-bottom: -2px;
   text-decoration: none !important;
   transition: color 0.2s, border-color 0.2s;
   display: flex !important;
   align-items: center;
   justify-content: center;
   gap: 5px;
}

.res-tab-link i { font-size: 13px; }

.res-tab-link.active,
.res-tab-link:hover {
   color: #02733c !important;
   border-bottom-color: #d4a853 !important;
}

/* Tab content */
.res-tab-content {
   padding: 20px;
}

/* Dados da cidade */
.res-data-group-title {
   font-size: 10px !important;
   font-weight: 700 !important;
   letter-spacing: 1.2px !important;
   text-transform: uppercase !important;
   color: #02733c !important;
   margin-bottom: 10px !important;
   padding-bottom: 6px !important;
   border-bottom: 1px solid #d4a853 !important;
}

.res-data-list {
   list-style: none;
   margin: 0 0 8px;
   padding: 0;
}

.res-data-list li {
   display: flex;
   align-items: center;
   gap: 8px;
   padding: 8px 0;
   border-bottom: 1px solid #f0f4f0;
   font-size: 13px;
}

.res-data-list li:last-child { border-bottom: none; }

.res-data-icon { flex-shrink: 0; opacity: 0.75; }

.res-data-label {
   color: #444;
   flex: 1;
   font-weight: 500;
}

.res-data-value {
   color: #062c16;
   font-weight: 700;
   text-align: right;
   font-size: 12px;
}

.res-data-source {
   font-size: 11px;
   color: #aaa;
   font-style: italic;
   margin: 8px 0 0;
}

/* Mapa dentro da sidebar */
.res-map-wrap {
   margin: -4px;
}

.res-map-wrap #svg-map {
   max-height: 300px;
}

/* Notícias */
.res-news-wrap { font-size: 13px; }

/* =============================================
   RESULTADOS — Órgãos públicos
   ============================================= */

.res-orgaos-wrap { padding-top: 8px; }

.res-orgao-card { padding: 6px; }

.res-orgao-inner {
   display: flex;
   align-items: center;
   gap: 12px;
   padding: 12px 16px;
   background: #ffffff;
   border: 1px solid #e0ece4;
   border-radius: 10px;
   text-decoration: none !important;
   transition: border-color 0.2s, box-shadow 0.2s;
}

.res-orgao-inner:hover {
   border-color: #d4a853;
   box-shadow: 0 4px 16px rgba(212,168,83,0.15);
}

.res-orgao-inner img {
   height: 48px;
   width: auto;
   object-fit: contain;
   flex-shrink: 0;
}

.res-orgao-inner span {
   font-size: 13px;
   font-weight: 600;
   color: #062c16;
   line-height: 1.3;
}

/* =============================================
   RESULTADOS — Responsivo
   ============================================= */

@media (max-width: 1100px) {
   .res-layout { grid-template-columns: 1fr 280px; gap: 24px; }
   .res-cards-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
   .res-layout { grid-template-columns: 1fr; }
   .res-cards-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
   .res-sidebar-card { position: static; }
}

@media (max-width: 480px) {
   .res-cards-grid { grid-template-columns: 1fr; }
}


/* =============================================
   TAG PAGE — Hero eyebrow
   ============================================= */

.tag-hero-eyebrow {
   font-size: 11px !important;
   font-weight: 700 !important;
   letter-spacing: 2px !important;
   text-transform: uppercase !important;
   color: #d4a853 !important;
   margin-bottom: 8px !important;
}

/* =============================================
   TAG PAGE — Container e cabeçalho
   ============================================= */

.tag-page-container {
   max-width: 1370px !important;
   width: 100% !important;
}

.home-main-intro.banner .home-main-how-it-work > .container.tag-page-container {
   max-width: 1370px !important;
}

.tag-clear-filter {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   font-size: 12px;
   font-weight: 700;
   color: #7a8a7a !important;
   text-decoration: none !important;
   border: 1px solid #dde4dd;
   border-radius: 20px;
   padding: 6px 14px;
   transition: color 0.2s, border-color 0.2s;
   white-space: nowrap;
   flex-shrink: 0;
   margin-left: 16px;
}

.tag-clear-filter:hover {
   color: #c0392b !important;
   border-color: #c0392b;
}

/* =============================================
   TAG PAGE — Outros segmentos
   ============================================= */

.tag-related-wrap {
   padding-top: 40px;
   margin-top: 8px;
   border-top: 1px solid #e8ede8;
}

.tag-related-title {
   font-size: 11px !important;
   font-weight: 700 !important;
   letter-spacing: 1.2px !important;
   text-transform: uppercase !important;
   color: #02733c !important;
   margin-bottom: 16px !important;
   display: flex;
   align-items: center;
   gap: 8px;
}

.tag-related-list {
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
   padding-bottom: 40px;
}

.tag-related-item {
   display: inline-block;
   padding: 6px 14px;
   background: #f0f8f4;
   border: 1px solid #c8ddd0;
   border-radius: 20px;
   font-size: 12px;
   font-weight: 600;
   color: #02733c !important;
   text-decoration: none !important;
   transition: background 0.18s, border-color 0.18s, color 0.18s;
}

.tag-related-item:hover,
.tag-related-item.active {
   background: #02733c;
   border-color: #02733c;
   color: #ffffff !important;
}

/* =============================================
   TAG PAGE — Página de todas as categorias
   ============================================= */

.tag-all-header {
   text-align: center;
   margin-bottom: 40px;
}

.tag-all-title {
   font-size: 28px !important;
   font-weight: 700 !important;
   color: #062c16 !important;
   margin: 4px 0 12px !important;
}

.tag-all-sub {
   font-size: 15px;
   color: #5a6a5a;
   max-width: 560px;
   margin: 0 auto;
   line-height: 1.65;
}

.tag-all-grid {
   display: grid;
   grid-template-columns: repeat(6, 1fr);
   gap: 12px;
   padding-bottom: 48px;
}

.tag-all-item {
   display: flex;
   align-items: center;
   gap: 10px;
   padding: 14px 16px;
   background: #ffffff;
   border: 1px solid #e0ece4;
   border-radius: 10px;
   text-decoration: none !important;
   transition: background 0.18s, border-color 0.18s, box-shadow 0.18s, transform 0.18s;
}

.tag-all-item:hover {
   background: #f0f8f4;
   border-color: #d4a853;
   box-shadow: 0 4px 16px rgba(6,44,22,0.08);
   transform: translateY(-2px);
}

.tag-all-icon {
   font-size: 15px;
   color: #02733c;
   flex-shrink: 0;
}

.tag-all-name {
   font-size: 13px;
   font-weight: 600;
   color: #062c16;
   flex: 1;
   line-height: 1.3;
}

.tag-all-arrow {
   font-size: 11px;
   color: #aabcaa;
   transition: color 0.18s, transform 0.18s;
}

.tag-all-item:hover .tag-all-arrow {
   color: #d4a853;
   transform: translateX(3px);
}

/* Responsivo */
@media (max-width: 1199px) {
   .tag-all-grid { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 991px) {
   .tag-all-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 640px) {
   .tag-all-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 400px) {
   .tag-all-grid { grid-template-columns: 1fr; }
}


/* ═══════════════════════════════════════════════════════════════════
   PÁGINA RESULTADOS GERAL  /resultados  (rpage-*)
   ═══════════════════════════════════════════════════════════════════ */

/* ── Hero ── */
#section-rpage.home-main-intro.banner {
   min-height: unset;
   padding-top: 0;
}

.rpage-hero-row {
   padding-top: 100px;
   padding-bottom: 60px;
   min-height: 560px;
}

.rpage-hero-text {
   padding: 100px 0 60px;
   text-align: left;
   max-width: 700px;
}

.rpage-clear-search {
   display: inline-flex;
   align-items: center;
   gap: 5px;
   margin-left: 12px;
   color: rgba(255,255,255,0.55);
   font-size: 0.82rem;
   text-decoration: none;
   border-bottom: 1px solid rgba(255,255,255,0.25);
   transition: color 0.2s;
}

.rpage-clear-search:hover {
   color: #d4a853;
   border-color: #d4a853;
   text-decoration: none;
}

.rpage-eyebrow {
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 3px;
   text-transform: uppercase;
   color: #d4a853;
   margin-bottom: 16px;
}

.rpage-h1 {
   font-size: clamp(2rem, 3.5vw, 2.8rem);
   font-weight: 800;
   color: #ffffff;
   line-height: 1.12;
   margin-bottom: 14px;
}

.rpage-h1-gold {
   color: #d4a853;
}

.rpage-sub {
   font-size: 1rem;
   color: rgba(255,255,255,0.68);
   margin-bottom: 32px;
   max-width: 430px;
   line-height: 1.65;
}

/* Formulário glass */
.rpage-form {
   background: rgba(255,255,255,0.08);
   border: 1px solid rgba(255,255,255,0.15);
   border-radius: 16px;
   padding: 24px;
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   max-width: 520px;
}

.rpage-form-grid {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 14px;
   margin-bottom: 14px;
}

.rpage-form-label {
   display: block;
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 1.5px;
   text-transform: uppercase;
   color: rgba(255,255,255,0.5);
   margin-bottom: 6px;
}

.rpage-form-label i {
   color: #d4a853;
   margin-right: 3px;
}

.rpage-dropdown {
   position: relative;
   background: rgba(255,255,255,0.1);
   border: 1px solid rgba(255,255,255,0.18);
   border-radius: 8px;
   display: flex !important;
   align-items: center;
   padding: 0 12px;
   transition: border-color 0.2s, background 0.2s;
   flex-wrap: nowrap;
}

.rpage-dropdown:focus-within {
   border-color: #d4a853;
   background: rgba(255,255,255,0.14);
}

.rpage-input {
   background: transparent !important;
   border: none !important;
   box-shadow: none !important;
   color: #fff !important;
   padding: 10px 0 !important;
   font-size: 0.88rem;
   flex: 1;
   min-width: 0;
}

.rpage-input::placeholder {
   color: rgba(255,255,255,0.45) !important;
}

.rpage-input-icon {
   color: rgba(255,255,255,0.5);
   cursor: pointer;
   font-size: 0.78rem;
   padding: 4px 0 4px 8px;
   text-decoration: none;
   flex-shrink: 0;
}

.rpage-submit {
   width: 100%;
   background: linear-gradient(135deg, #d4a853 0%, #b8892e 100%);
   border: none;
   border-radius: 10px;
   color: #062c16;
   font-weight: 700;
   font-size: 0.92rem;
   padding: 13px 24px;
   cursor: pointer;
   transition: all 0.25s;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   letter-spacing: 0.4px;
}

.rpage-submit:hover {
   background: linear-gradient(135deg, #e0b86a 0%, #c4973a 100%);
   transform: translateY(-1px);
   box-shadow: 0 4px 18px rgba(212,168,83,0.38);
}

/* ── Mapa ── */
.rpage-right .mapaa {
   padding-top: 30px;
   padding-left: 20px;
}

/* ── Corpo (abaixo do hero) ── */
.rpage-body {
   background: #f2f5f2;
}

.rpage-container {
   max-width: 1370px !important;
}

/* ── Seção de resultados ── */
.rpage-results-section {
   padding: 56px 0 80px;
}

.rpage-results-header {
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   gap: 16px;
   flex-wrap: wrap;
   margin-bottom: 32px;
}

.rpage-results-title {
   font-size: 1.45rem;
   font-weight: 700;
   color: #062c16;
   margin: 4px 0 0;
   line-height: 1.2;
}

.rpage-results-count {
   display: inline-flex;
   align-items: center;
   gap: 7px;
   background: #062c16;
   color: #d4a853;
   font-size: 0.83rem;
   font-weight: 600;
   padding: 8px 18px;
   border-radius: 100px;
   white-space: nowrap;
   flex-shrink: 0;
}

/* ── Responsivo ── */
@media (max-width: 991px) {
   .rpage-hero-row {
      padding-top: 80px;
      padding-bottom: 40px;
      min-height: unset;
   }
   .rpage-sub { max-width: 100%; }
   .rpage-form { max-width: 100%; }
   .rpage-right .mapaa { padding-left: 0; padding-top: 32px; }
}

@media (max-width: 576px) {
   .rpage-form-grid { grid-template-columns: 1fr; }
   .rpage-h1 { font-size: 1.75rem; }
   .rpage-results-header { align-items: flex-start; }
}


/* ═══════════════════════════════════════════════════════════════════
   RPAGE — layout sidebar + cards
   ═══════════════════════════════════════════════════════════════════ */

.rpage-body {
   padding: 48px 0 80px;
}

.rpage-layout {
   display: grid;
   grid-template-columns: 240px 1fr;
   gap: 40px;
   align-items: start;
}

/* ── Sidebar ── */
.rpage-sidebar-inner {
   position: sticky;
   top: 100px;
   background: #ffffff;
   border: 1px solid #e0ece4;
   border-radius: 14px;
   overflow: hidden;
}

.rpage-sidebar-label {
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 2px;
   text-transform: uppercase;
   color: #8aaa8a;
   padding: 18px 18px 10px;
   margin: 0;
   border-bottom: 1px solid #eef3ee;
}

.rpage-cat-nav {
   display: flex;
   flex-direction: column;
   padding: 8px 0;
}

.rpage-cat-nav-item {
   display: flex;
   align-items: center;
   gap: 10px;
   padding: 9px 18px;
   color: #2d4a2d;
   font-size: 0.83rem;
   font-weight: 500;
   text-decoration: none;
   transition: background 0.15s, color 0.15s;
   line-height: 1.2;
}

.rpage-cat-nav-item i {
   color: #8aaa8a;
   font-size: 0.78rem;
   flex-shrink: 0;
   width: 14px;
   text-align: center;
   transition: color 0.15s;
}

.rpage-cat-nav-item span {
   flex: 1;
   min-width: 0;
}

.rpage-cat-nav-item:hover {
   background: #f2f5f2;
   color: #062c16;
   text-decoration: none;
}

.rpage-cat-nav-item:hover i {
   color: #03a05a;
}

.rpage-cat-nav-item.active {
   background: #062c16;
   color: #ffffff;
}

.rpage-cat-nav-item.active i {
   color: #d4a853;
}

.rpage-cat-nav-count {
   font-style: normal;
   font-size: 0.7rem;
   font-weight: 700;
   color: #8aaa8a;
   background: #f2f5f2;
   border-radius: 100px;
   padding: 1px 7px;
   flex-shrink: 0;
}

.rpage-cat-nav-item.active .rpage-cat-nav-count {
   background: rgba(255,255,255,0.15);
   color: rgba(255,255,255,0.7);
}

/* ── Main / results ── */
.rpage-main {
   min-width: 0;
}

/* ── Responsivo ── */
@media (max-width: 1100px) {
   .rpage-layout { grid-template-columns: 210px 1fr; gap: 28px; }
}

@media (max-width: 768px) {
   .rpage-layout { grid-template-columns: 1fr; }
   .rpage-sidebar-inner { position: static; }
   .rpage-cat-nav { flex-direction: row; flex-wrap: wrap; padding: 10px; gap: 6px; }
   .rpage-cat-nav-item { border-radius: 100px; border: 1.5px solid #d0dbd0; padding: 6px 14px; }
   .rpage-cat-nav-item.active { border-color: #062c16; }
}

/* rpage: 5 colunas de cards */
.rpage-main .res-cards-grid {
   grid-template-columns: repeat(5, 1fr);
}

@media (max-width: 1300px) {
   .rpage-main .res-cards-grid { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 1100px) {
   .rpage-main .res-cards-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
   .rpage-main .res-cards-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
   .rpage-main .res-cards-grid { grid-template-columns: 1fr; }
}

/* ── Barra de busca entre hero e corpo ── */
.rpage-search-bar {
   background: #ffffff;
   border-bottom: 1px solid #e0ece4;
   padding: 20px 0;
}

.rpage-search-form {
   display: flex;
   align-items: flex-end;
   gap: 16px;
   flex-wrap: wrap;
}

.rpage-search-field {
   flex: 1;
   min-width: 180px;
}

.rpage-search-label {
   display: block;
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 1.5px;
   text-transform: uppercase;
   color: #8aaa8a;
   margin-bottom: 6px;
}

.rpage-search-label i {
   color: #d4a853;
   margin-right: 3px;
}

.rpage-search-dropdown {
   background: #f2f5f2;
   border: 1.5px solid #d0dbd0;
   border-radius: 8px;
   display: flex !important;
   align-items: center;
   padding: 0 12px;
   transition: border-color 0.2s;
   flex-wrap: nowrap;
}

.rpage-search-dropdown:focus-within {
   border-color: #062c16;
   background: #fff;
}

.rpage-search-input {
   background: transparent !important;
   border: none !important;
   box-shadow: none !important;
   color: #1a1a1a !important;
   padding: 10px 0 !important;
   font-size: 0.88rem;
   flex: 1;
   min-width: 0;
}

.rpage-search-input::placeholder {
   color: #8aaa8a !important;
}

.rpage-search-icon {
   color: #8aaa8a;
   cursor: pointer;
   font-size: 0.78rem;
   padding: 4px 0 4px 8px;
   text-decoration: none;
   flex-shrink: 0;
}

.rpage-search-btn {
   background: #062c16;
   border: none;
   border-radius: 8px;
   color: #ffffff;
   font-weight: 600;
   font-size: 0.88rem;
   padding: 11px 24px;
   cursor: pointer;
   display: flex;
   align-items: center;
   gap: 7px;
   white-space: nowrap;
   transition: background 0.2s, box-shadow 0.2s;
   flex-shrink: 0;
}

.rpage-search-btn:hover {
   background: #0a4a25;
   box-shadow: 0 3px 12px rgba(6,44,22,0.25);
}

@media (max-width: 576px) {
   .rpage-search-form { flex-direction: column; }
   .rpage-search-field { min-width: 100%; }
   .rpage-search-btn { width: 100%; justify-content: center; }
}

/* cidade results: 5 colunas */
.res-main .res-cards-grid {
   grid-template-columns: repeat(5, 1fr);
}

@media (max-width: 1300px) {
   .res-main .res-cards-grid { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 1100px) {
   .res-main .res-cards-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
   .res-main .res-cards-grid { grid-template-columns: repeat(2, 1fr); }
}
