.revo-slider-emphasis-text {
	font-size: 64px;
	font-weight: 700;
	letter-spacing: -1px;
	padding: 15px 20px;
	border-top: 2px solid #FFF;
	border-bottom: 2px solid #FFF;
}

.revo-slider-desc-text {
	font-size: 20px;
	width: 650px;
	text-align: center;
	line-height: 1.5;
}

.revo-slider-caps-text {
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 3px;
}

.tp-video-play-button {
	display: none !important;
}

.tp-caption {
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
	background-color: transparent;
}

#header,
#header-wrap,
#header.full-header.dark,
#logo,
.primary-menu .menu-container {
	border-bottom: 0px !important;
	border-bottom-color: transparent !important;
	border-color: transparent !important;
}

.oc-item {
	/*border: 1px !important;
	border-color: #222 !important;
	border-style: solid !important;
	min-height: 300px !important;*/
	background-color: #f4f4f4 !important;
}

.logos-carousel .oc-item {
	background-color: #ffffff !important;
	padding: 14px;
}

.logos-carousel .oc-item a {
	align-items: center;
	background-color: #ffffff;
	display: flex;
	height: 100%;
	justify-content: center;
	width: 100%;
}

#copyrights {
	background-color: transparent !important;
	color: #FFF!important;
}


#footer {
	/* background-image: url(images/home_holding_footer.jpg); */
	background-color: #007a33!important;
}

.widget_links li a, .copyright-links a, h3.nott.ls0, .footer-row {
	color: #fff!important;
}

.owl-stage-outer::before, .owl-stage-outer::after {
	background: none !important;
	left: auto!important;
	right: auto!important;
}

.counter {
	color: #007a33 !important;
}

.portfolio-image img {
	padding: 20px!important;
}

html {
	margin-top: 0!important;
}

.bg-category {
	background-color: #007a33;
}

a.bg-category:hover {
	background-color: #ffffff;
}

.slider-feature {
	position: relative;
	transform: translateY(-20%);
	z-index: 4;
}

.slider-feature a {
	color: #222;
	transition: all .2s ease;
}

.slider-feature a:hover {
	background-color: var(--themecolor, #007a33);
	transform: translateY(-2px);
	z-index: 1;
}

.slider-feature a i {
	position: relative;
	top: 4px;
	font-size: 20px;
	padding-right: 6px;
}

.counter {
    font-size: 90px !important;
}

.counter.cultural {
    font-size: 40px !important;
}

.section .video-wrap { z-index: 0; }


.video-overlay {
	opacity: 1;
	-webkit-transition: opacity .2s ease;
	-o-transition: opacity .2s ease;
	transition: opacity .2s ease;
}

/* Responsive Device more than 992px (.device-md >)
-----------------------------------------------------------------*/
@media (min-width: 992px) {
	.slider-feature { transform: translateY(-50%); }
	.full-width-img { margin-left: calc(10% - 300px); }
}

.full-width-img {
	margin-left: calc(50% - 540px);
	max-width: 950px;
	width: 950px;
}


@media (min-width: 768px) {
	.full-width-img {
		margin-left: calc(50% - 200px);
		max-width: 800px;
		width: 800px;
	}

	.slider-element .container, .slider-element .container-fluid {
		height: 145%;
	}

}

/* Missions Goals
-----------------------------------------------------------------*/
.mission-goals .feature-box {
	box-shadow: 0 0 10px rgba(99, 114, 130, 0.15);
	padding: 25px 20px;
	border-radius: 10px;
}


.bg-color::before {
	content: '';
	position: absolute;
	top: -5px;
	left: -5px;
	width: 100%;
	height: 100%;
	z-index: -1;
	border-radius: 0.6rem;
	opacity: 0.2;
	background-color: #adadad;
}

.bg-color-mapa {
	background-color: #007a33;
}

.d-grid {
	--column: 1;
	display: grid;
	grid-template-columns: repeat(var(--column), 1fr);
	grid-gap: 30px;
}

@media (min-width: 991px) {
	.d-grid {
	   --column: 3;
	}
	.d-grid .grid-w {
	   grid-row: span 2 / auto;
	}
}


.flex-control-nav {
	bottom: 14px!important;
	top: auto!important;
}

.unclickable > a {
	pointer-events: none;
	}

.hot-spot:hover .dica-texto{visibility: visible!important;}

.dica-texto{transform: translate(-20%, -30%) !important; min-width:450px; z-index: 999; position: absolute; visibility: hidden; font-size: 14px; background: rgba(255, 255, 255, 0.9); text-align: left; padding: 5px  0; border-radius: 6px; bottom: 100%; left: -200px; margin-left: 50%; margin-bottom: 5px; box-shadow: 0 10px 80px rgb(0 0 0 / 10%), 0 10px 50px rgb(0 0 0 / 10%);}

@media (max-width: 767.9px) {
	.dica-texto{min-width: 300px !important;}
	.tp-mask-wrap {top: -80px!important;}
	.espaco-caption { top:190px!important;}
	.widget_nav_menu li, .widget_links li, .widget_meta li, .widget_archive li, .widget_recent_comments li, .widget_recent_entries li, .widget_categories li, .widget_pages li, .widget_rss li {
		font-size: 16px;
		margin: 6px;
	}
	p, li {font-size: 18px!important;}
	h5 { font-size: 1.3rem;}

	.slider-caption {
		height: 100%;
	}

	/* SLIDE PÁGINAS INTERNAS */
	.interna-slider-bg {
		background-size: contain!important;
	}

	#slider.interna-slider-bg h2 {
		font-size: 2rem!important;
		line-height: 1.15;
		letter-spacing: 0!important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.dica-texto{min-width: 350px !important;}
}

.btn-color:hover {
    background-color: #6c757d;
}

a.btn-cards:hover, .btn-color {
    background-color: #007a33;
    color: #ffff!important;
}

a.btn-cards:hover h4 {
    color: #ffff!important;
}

a.btn-cards:hover svg path {
    fill: #ffff!important;
}

a.btn-cards:hover img {
    display: none;
}

a.btn-cards img.card-icon-svg {
    transition: filter .2s ease;
}

a.btn-cards:hover img.card-icon-svg {
    display: inline-block;
    filter: brightness(0) invert(1);
}

#cards-modelo a.btn-cards:hover .card-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.card-img, .card-img-top {
    border-top-left-radius: calc(0.6rem - 1px);
    border-top-right-radius: calc(0.6rem - 1px);
}

a:hover .h4.card-title {
	color: #ffff!important;
}

#footer dl, #footer dt, #footer dd, #footer ol, #footer ul, #footer li {
	margin: 2px 0;
	padding: 2px 0;
}

@media (min-width: 992px) {

	#header {
		height: 77.5px;
	}
	.menu-container > .menu-item > .menu-link {
		position: relative;
		margin: 20px 15px;
		padding: 0 3px;
		padding-top: 9px!important;
		padding-bottom: 9px!important;
		letter-spacing: 1px;
	}

	.primary-menu.style-ecommerce .menu-container > .menu-item > .menu-link::after {
		position: absolute;
		content: '';
		top: auto;
		left: 50%;
		bottom: 0;
		width: 0px;
		height: 2px;
		background-color: #007a33;
		-webkit-transition: all .3s ease;
		-o-transition: all .3s ease;
		transition: all .3s ease;
		color: #007a33;
		font-weight: 700;
	}

	.primary-menu.style-ecommerce .menu-container > .menu-item:hover > .menu-link,
	.primary-menu.style-ecommerce .menu-container > .menu-item.current > .menu-link { color: #007a33; }

	.primary-menu.style-ecommerce .menu-container > .menu-item:hover > .menu-link::after,
	.primary-menu.style-ecommerce .menu-container > .menu-item.current > .menu-link::after {
		width: 100%;
		left: 0;
	}

	.sub-menu-container .menu-item > .menu-link {
		font-size: 0.875rem;
	}

	.sub-menu-container .menu-item:hover > .menu-link { background-color: transparent; }

	.primary-menu ul ul li > a {
	    font-weight: 600;
	    text-transform: none;
	    font-size: 14px;
	}

	.primary-menu.style-ecommerce .menu-container > .menu-item.menu-active > .menu-link::after {
		position: absolute;
		content: '';
		top: auto;
		left: 50%;
		bottom: 0;
		width: 100%;
		height: 2px;
		background-color: #007a33;
		transition: all .3s ease;
		left: 0;
	}
	
	/* Mantém a cor do texto verde para o submenu ativo */
	.sub-menu-container .menu-item.submenu-active > .menu-link, .primary-menu.style-ecommerce .menu-container > .menu-item.menu-active > .menu-link {
		color: #007a33;
		font-weight: 700!important;
	}

	#oc-news .entry-title a {
		text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
		background-color: rgba(0, 0, 0, 0.5);
	}

	#posts .entry-title h2 {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2; /* Define o número máximo de linhas */
		line-clamp: 2; /* Define o número máximo de linhas */
		overflow: hidden;
		text-overflow: ellipsis; /* Adiciona "..." no final do texto cortado */
		max-height: 3em; /* Altura máxima baseada no número de linhas */
		line-height: 1.5em; /* Ajuste de altura da linha */
	}
	
	.pagination {
		display: flex;
		justify-content: center;
		gap: 10px;
	}
	
	.pagination a, .pagination span {
		padding: 8px 12px;
		text-decoration: none;
		border: 1px solid #ddd;
		border-radius: 4px;
	}
	
	.pagination .current {
		background-color: #007a33;
		color: white;
		font-weight: bold;
	}

	form {
		margin-bottom: 0px!important;
	}

}

.widget h3.wp-block-heading, .widget p.wp-block-heading.h3 {
	font-size: 1.2rem;
}

.widget p.wp-block-heading.h3 {
    line-height: 1.5rem;
}



/* AJUSTES PARA endurecimento da Content‑Security‑Policy (CSP) */

/* FRONT PAGE */
.max-height-60 {
	max-height: 60px!important;
}
.max-width-1000 {
	max-width:1000px!important;
}
.font-weight-500 {
	font-weight: 500!important;
}
.font-size-16 {
	font-size:16px;
}
.top-120 {
	top: 120px!important;
}
.max-width-700 {
	max-width: 700px!important;
}
.card-border-max-width-250 {
	border: 2px solid #007A33!important;
	max-width: 250px!important;
}
.video-position-top-margin-font {
	position: relative!important;
	top: 1px!important;
	margin-right: 5px!important;
	font-size:6rem!important;
}
.background-max-width-700 {
	background-color: #FFF!important;
	max-width: 800px!important;
}
.iframe-border-0 {
	border:0px!important;
}
.padding-background-min-height-400 {
	padding: 100px 0!important;
	background-color: #ECF4F1!important;
	min-height: 400px!important;
}
.width-300-height-auto {
	width:300px!important;
	height:auto!important;
}
#oc-news .entry {
  height: 300px!important;
}
.swiper-slide-bg.slider-home,
.promo.fundo-video,
#oc-news .entry,
.position-absolute.fundo-rodape {
  background-repeat: no-repeat;
}


/* FOOTER | PROJETOS */
.font-size-15 {
	font-size: 15px!important;
}

/* PROJETOS */
.width-200 {
	width: 200px!important;
}
.width-200-background {
	width: 200px!important;
	background-color:#FF8300!important;
}

/* SLIDE PÁGINAS INTERNAS */
.interna-slider-bg {
  /*background-color: #007a33;*/
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  height: 50%;
}

.interna-slider-panorama {
  --interna-slider-ratio: 1620 / 478;
}

.infraestrutura-slider-bg {
  --interna-slider-ratio: 1920 / 478;
}

.quem-somos-slider-bg,
.servicos-slider-bg {
  --interna-slider-ratio: 1620 / 477;
}

@media (max-width: 767.9px) {
  #slider.interna-slider-panorama {
    aspect-ratio: var(--interna-slider-ratio);
    height: auto !important;
    min-height: 0 !important;
  }
}

#slider.interna-slider-bg h2 {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: break-word;
  hyphens: auto;
}

/* BLOG/NOTÍCIAS */
.min-height-361 {
	min-height: 361px!important;
}
.opacity-1 {
	opacity: 1 !important;
}

/* Overlay escuro para slider */
.slider-element.dark::before, .fundo-rodape::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	pointer-events: none;
}

.fundo-rodape::before, .promo-full::before, .fundo-video::before {
	background: linear-gradient(135deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.3) 100%);
}

.slider-element.dark > * {
	position: relative;
	z-index: 2;
}

.bg-with-gradient.noticias {
  background-repeat: no-repeat;
  background-image:
    radial-gradient(rgba(0,0,0,.3), rgba(0,0,0,.6));
}

.fundo-rodape::before, .fundo-video::before {
	background: linear-gradient(135deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.3) 100%)!important;
}

/* QUEM SOMOS */
.oc-item-transparent {
	background-color: transparent!important;
}
.quem-somos-bg {
  height: 220px!important;
}
.right-bottom-font-weight-700 {
	right: 20px!important; bottom: 10px!important; font-weight: 700!important;
}
.color-font-weight-300 {
	color: #000000!important; font-weight: 300!important;
}
.background-color-b7b6be {
	background-color:#B7C6BE!important;
}
.font-size-weight-line-height {
	font-size: 3.5rem!important; font-weight: 700!important; line-height: 1.2!important;
}

/* COMPLIANCE */
.top-4 {
	top: 4px!important;
}

/* NEGOCIOS */
.negocios-card-bg {
	height: 350px!important;
}
.left-bottom-font-weight-600 {
	left: 10px!important; bottom: 10px!important; font-weight: 600!important;
}
.line-height-text-shadow-225 {
	line-height: 1.2!important; text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3)!important;
}
.width-height-margin-right-10 {
	width: 100%!important; max-width: 210.4px!important; height: 350px!important; margin-right: 10px!important;
}


/* FALE CONOSCO */
.border-0 {
	border:0!important;
}
.padding-50-0 {
	padding: 50px 0!important;
}
.background-color-height-400 {
	background-color:rgb(208, 247, 202)!important;
	max-height: 400px!important;
}
.line-height-1 {
	line-height: 1!important;
}

/* PAGE CARDS */
.padding-background-ecf4f1 {
	padding: 100px 0!important;
	background-color: #ECF4F1!important;
}
.width-height-356 {
	width: 356px!important; height: 356px!important;
}
.border-2-solid-007a33 {
	border: 2px solid #007A33!important;
}
.width-200-height-auto {
	width: 200px!important; height: auto!important;
}
.padding-left-right-70 {
	padding-left: 70px!important; padding-right: 70px!important;
}
.height-281 {
	height: 281px!important;
}
.min-height-280 {
	min-height: 280px!important;
}


/* SOCIO CULTURAIS */
.video-bg-lg {
  height: 300px!important;
}
.video-bg-gradient {
  background-image: linear-gradient(rgba(0,0,0,.05), rgba(0,0,0,.01));
}
.video-bg-sm {
  height: 140px!important;
}
.section-bg {
  padding: 80px 0!important;
}
.footer-banner-bg {
  padding: 50px 0!important;
  min-height: 60vh!important;
}
.footer-banner-gradient {
  background-image: radial-gradient(
    rgba(0,45,64,.5),
    rgba(0,45,64,.1),
    rgba(0,45,64,.5)
  );
}

/* CYMI PADRÃO */
.quem-somos-card-350 {
  height: 350px!important;
}
.card-sem-link {
  border: 0!important;
}
.card-com-link {
  border: 2px solid #007A33!important;
}
.width-150-height-auto {
	width: 150px!important; height: auto!important;
}
.width-100-max-width-360-height-350 {
	width: 100%!important; max-width: 360px!important; height: 350px!important;
}

/* SEARCH */
.transform-transition-width-1547 {
	transform: translate3d(0px, 0px, 0px)!important; transition: all 0s ease 0s!important; width: 1547px!important;
}
.width-366-margin-right-20 {
	width: 366.667px!important; margin-right: 20px!important;
}

/* TAXONOMIA */
.text-transform-none {
	text-transform: none!important;
}
.width-40-height-auto {
	width: 40px!important; height: auto!important;
}

.certificado {
	width: 300px;
}

.quem-somos {
	width: 600px;
}
/* FIM DE AJUSTES Content‑Security‑Policy (CSP) */

#content .banner p {
    line-height: 1;
}

.clientes-promo-title {
	min-width: 0;
}

.team-image {
	text-align: -webkit-center;
}

.team-image img {
	max-width: 50%;
}

@media (min-width: 992px) {
	.clientes-promo-row {
		flex-wrap: nowrap;
		justify-content: center;
	}

	.clientes-promo-title {
		flex: 0 1 auto;
		width: auto;
	}

	.clientes-promo-action {
		flex: 0 0 auto;
		margin-left: 3rem;
	}
}

.home-hero-caption {
	position: absolute;
	right: clamp(1.5rem, 4vw, 4rem);
	bottom: clamp(1.5rem, 5vw, 4rem);
	left: clamp(1.5rem, 4vw, 4rem);
	z-index: 2;
	pointer-events: none;
}

.home-hero-slider {
	height: auto!important;
	min-height: 0!important;
	max-height: calc(100vh - 78px);
}

.home-hero-media {
	position: relative;
	overflow: hidden;
	width: 100%;
}

.home-hero-media img {
	display: block;
	width: 100%;
	height: auto;
}

.home-hero-caption p {
	margin: 0;
	color: #fff;
	font-size: clamp(2rem, 4vw, 4rem)!important;
	font-weight: 400;
	letter-spacing: 2px;
	line-height: 1.08;
	text-transform: uppercase;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.35);
}

.font-20 {
	font-size: 20px!important;
}

@media (max-width: 991.98px) {
	.home-hero-slider {
		max-height: none;
	}
}

@media (max-width: 767.98px) {
	.home-hero-media {
		height: clamp(260px, 70vw, 360px);
	}

	.home-hero-media img {
		height: 100%;
		object-fit: cover;
		object-position: center center;
	}

	.home-hero-caption {
		right: 1.25rem;
		bottom: clamp(1.25rem, 5vh, 2.5rem);
		left: 1.25rem;
	}

	.home-hero-caption p {
		font-size: clamp(1.65rem, 8vw, 2.5rem)!important;
		letter-spacing: 1px;
	}
}
