@charset "utf-8";
:root {
	--swiper-navigation-size: 35px;
	--swiper-theme-color: #ffffffb8 !important;
}
.swiperSlider {
	/*cursor:grab;*/
	overflow:hidden;
	position: relative;
	width: 100%;
	height: 100%;
	font-family:var(--fonte-primaria);
	font-size: 14px;
	font-optical-sizing: auto;
	font-weight:normal;
	font-style: normal;
	aspect-ratio: 1900 / 700; /* largura / altura maxima dos seus banners */
	min-height: 700px;
	max-height: 700px;	
}
.swiperSlider *{
	box-sizing: border-box;	
}
.swiperSlider .swiper-wrapper{
}
.swiperSlider .swiper-slide{
	display: flex;
	align-content: center;
	flex-wrap: wrap;	
	justify-content: center;
	text-align: center;
	font-size: 18px;
	background: #fff;
	height:100%;
	aspect-ratio: 1900 /700;
	min-height: 700px;
	max-height: 700px;
}
.swiperSlider .swiper-slide .swiper-img{
	display: block;
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1900 / 700;
	min-height: 700px;
	max-height: 700px;
}
.swiper-img-left{
	object-position: left;
}
.swiper-img-center{
	object-position: center;
}
.swiper-img-right{
	object-position: right;
}
.swBoxFull{
	position:relative;
	display:flex;
	width:100%;
	height:100%;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: center;
	justify-content: space-around;	
}
/*, .swBoxFullDir::before, .swBoxFullMeio::before, .swBoxFullEsq::before*/
.swBoxFull::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,rgba(28,29,40,.94) 0%,rgba(28,29,40,.82) 35%,rgba(28,29,40,.58) 58%,rgba(28,29,40,.88) 100%);z-index:1;pointer-events:none;}
.swEscuro::before {
	background-color: rgb(0 0 0 / 40%);
}
.swBoxImagem{
	margin:0;
	width: 100%;
	height: auto;
}
/*.swBoxImagem:after{
	content: '';
	position: absolute;
	width:100%;
	height:100%;
	top: 0;
	left: 0;
	background-color: rgb(1 88 142 / 42%);
	pointer-events: none;
}*/
.swBoxes{
	display: flex;
	position: absolute;
	box-sizing: border-box;
	max-width: 1400px;
	padding: 0;
	margin: 0 auto;
	width: 100%;
	height: 100%;
	flex-direction: row;
	justify-content: center;
	align-content: center;
	padding-top: 7%;
}
.swBoxEsq, .swBoxMeio, .swBoxDir{
	display:flex;
	flex-direction: column;
	justify-content: center;
	height: auto;
	margin: 0 auto;
	z-index: 5;
}
.swBoxEsq{
	width:50%;
	max-width: 50%;
	text-align: left;
	align-items: flex-start;
}
.swBoxMeio{
	width:auto;
	max-width: 50%;
}
.swBoxDir{
	width:50%;
	max-width: 50%;
	text-align: right;
	align-items: flex-end;
}
.swSeta {
    position: absolute;
    left: 50% !important;
    width: 40px !important;
    height: 40px !important;
    background: transparent !important;
    border-top: 2px solid #f7c034;
    border-left: 2px solid #f7c034;
    transform: translateX(-50%) rotate(-136deg);
    bottom: 6%;
    z-index: 1;
}
@media only screen and (max-width: 420px) {
	.swSeta {
		width: 30px !important;
		height: 30px !important;
		bottom: 4%;
	}
}
/* ------------------------ FONTE  ------------------- */
.tag {
	display: inline-flex;
	align-items: center;
	border: 1px solid rgba(255, 255, 255, .35);
	background: rgba(255, 255, 255, .14);
	backdrop-filter: blur(8px);
	border-radius: 999px;
	padding: 9px 15px;
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .08em;
	margin: 0 15px 10px;
	color: #fff;
}
.swBoxTitulo, .swBoxSubTitulo, .swBoxBotao{
	font-family:var(--fonte-principal);
	font-weight:normal;
	font-style:normal;
	font-size:clamp(44px,6vw,78px);
	color:#fff;
	margin:5px;
	padding: 5px 10px;
	width: auto;
}
.swBoxTitulo{
	/*background: #d71e26;*/
	font-family: var(--fonte-titulo);
	font-weight: normal;
	font-size: clamp(24px,4vw,42px);
	line-height: 1.2;
	color: #ffffff;
	text-shadow: 0 16px 42px rgba(0, 0, 0, .25);	
	letter-spacing: normal;
}
.swBoxSubTitulo{
	font-family:var(--fonte-subtitulo);
	font-weight:300;
	font-style:italic;
	font-size:24px;
	margin-top: -5px;
	color: #ffffff;
	line-height: normal;
}
.swBoxBotao {
	width:auto;
	font-size:13px;
	text-align:center;
	margin: 15px 5px;
}
.swBoxDir .swBoxBotao {
	text-align:right;
}
.swBoxEsq .swBoxBotao {
	text-align:left;
}
.swBoxBotao a{
	color: #fff;
	font-size:15px;
	text-decoration:none;
	background: #62a08f;	
	font-weight: 600;
	transition: 1s all;
	border: 1px solid transparent;
	color: #fff;
	border-radius: 999px;
	padding: 13px 22px;
	font-weight: 800;	
}
.swBoxBotao a:hover{
	background:#fff;	
	color: #62a08f;
}
.swEntidades p{
	font-size: 12px;
	margin: 6px 12px;
	color: #ffffff;
}
.botao--claro{
	background: #00000026 !important;
	color: var(--color-white) !important;
	border-color: #fff !important;
	box-shadow: none !important;
}
.botao--claro:hover {
	transform: translateY(-2px) !important;
	background: var(--color-green) !important;
}
.swBtnDeslocado{
	width:40%;
}
.swCentralizar{
	width:100%;
	text-align:center;
}
@media only screen and (min-width: 1400px){
	#swSlide1 .swBoxEsq {
		width:60%;
		max-width: 100%;
	}
	#swSlide1 .swBoxDir{
		width:40%;
		max-width: 100%;
	}
}
@media only screen and (max-width: 1200px){
	.swBoxTitulo{
		font-weight: 600;
		font-size:clamp(18px,3vw,28px)
	}
}
/*@media only screen and (max-width: 1100px){
	.swBoxes{
		padding:20px 40px;
		display: flex;
		width: 100%;
		height: 100%;
		flex-direction: column;
		justify-content: center;
		padding-top: 10%;
	}
	.swBoxEsq, .swBoxMeio, .swBoxDir{
		width:100%;
		max-width: 85%;
	}
	.swBoxTitulo{
		font-weight: 600;
		font-size:clamp(24px,4vw,30px);
		line-height: 1.2;
	}
	.tag{
		display:none;
	}
}	*/
@media only screen and (max-width: 900px){
	.swBoxFull::before {
		/*background-color: rgb(255 255 255 / 80%); */
	}
	.swBoxes{
		padding:10px;
		display: flex;
		width: 100%;
		height: 100%;
		flex-direction: column;
		justify-content: center;
	}
	.swBoxEsq, .swBoxMeio, .swBoxDir{
		width:100%;
		max-width: 100%;
		text-align: center;
		align-items: center;
	}
	.swBoxTitulo{
		font-size: 24px;
	}
	.swBoxSubTitulo{
		font-size: 16px;
		line-height: 1.5;
	}
	.swBoxBotao{
		text-align:center !important;
	}
	#swSlide1 .swBoxEsq {
		width:100%;
		max-width: 100%;
	}
	#swSlide2 .swBoxEsq, #swSlide2 .swBoxMeio {
		display:none;
	}	
	#swSlide4 .swBoxEsq, #swSlide4 .swBoxMeio {
		display:none;
	}	
}	
@media only screen and (max-width: 720px){
	.swBoxEsq, .swBoxMeio, .swBoxDir{
		max-width:none;
		align-items: center;
		text-align: center;
		gap: 5px;
		height: auto;
	}
	.swBoxTitulo{
		font-size: 24px;
	}
	.swBoxSubTitulo{
		font-size: 15px;
		line-height: 1.5;
	}
	.swBoxBotao {
		margin:5px;
		display: flex;
		flex-direction: column;
		gap:5px;
	}
	.swBoxBotao a{
		padding: 5px 10px;
	}
}
@media only screen and (max-width: 600px){
	.swBoxSubTitulo{
		font-size: 18px;
		line-height: 1.2;
	}
}
/* ------------------ AUTOPLAY PROGRESS ------------ */
.autoplay-progress {
	position: absolute;	
	right: 16px;
	bottom: 16px;
	z-index: 10;
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	color: var(--swiper-theme-color) !important;
	opacity:0.3;
}
.autoplay-progress svg {
	--progress: 0;
	position: absolute;
	left: 0;
	top: 0px;
	z-index: 10;
	width: 100%;
	height: 100%;
	stroke-width: 1px;
	stroke: var(--swiper-theme-color) !important;
	fill: none;
	stroke-dashoffset: calc(125.6px * (1 - var(--progress)));
	stroke-dasharray: 125.6;
	transform: rotate(-90deg);
}
/* --------- AUTOPLAY PROGRESS ---- */
.swiperSlider .swiper-button-next, #SwiperSlider .swiper-button-prev{
	color:#eee;
	/*top: var(--swiper-navigation-top-offset, 60%);*/
	top:50%;
}
.swiperSlider .swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
	top:90%;
}
.swiperSlider .swiper-pagination-bullet{
	border:2px solid var(--color-white);
	width: 15px;
	height: 15px;
}
/*-------------------------------------- PUBLICACOES -----------------------------------------*/
#sw-publicacoes{
	background-color:#ececec;
}
.sw-publicacoes-box{
	padding: 10px;
}
.swiper-publicacoes {
	width: 100%;
	padding:0px;
	position: relative;
}
.sw-publicacao-item {
	display: flex;
	flex-direction: row;
	gap: 20px;
	align-items: stretch;
	background: #fff;
	padding: 20px 60px;
	border-radius: 8px;
	box-shadow: 0 2px 6px rgba(0,0,0,.1);
	flex-wrap: nowrap;
	cursor: grab
}
.sw-publicacao-item a{
	color:var(--color-green);
	font-family:var(--fonte-principal);
}
.sw-publicacao-item a:hover{
	color:var(--color-gray);
}
.sw-publicacao-item img{
	border-radius:10px;	
}
.sw-publicacao-img{} /*div da imagem*/
.sw-publicacao-img img {
	width: 100%;
	height: auto;	
	max-width: 400px;
	object-fit: cover;
	border-radius: 8px;
	flex-shrink: 0;
	aspect-ratio: 16/9;
}
.sw-publicacao-conteudo { /* div dos textos - titulo e descricao */
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#sw-publicacoes h2{
	font-size: 25px;
	padding: 5px 10px 5px 0;
	color: #474747;
	margin:0;
}
#sw-publicacoes h3 {
	font-size: 18px;
	color:var(--color-green);
	margin:0;
}
#sw-publicacoes a:hover h3 {
	color: #000000;
}
#sw-publicacoes p {
	font-size: 16px;
	color: #474747;
	margin-bottom: auto;
	font-weight: 400;
	padding: 5px 10px 20px 0;
	margin:0;
}
#sw-publicacoes a:hover p {
	color:#000000;
}
#sw-publicacoes h3, 
#sw-publicacoes p, 
#sw-publicacoes .sw-publicacao-info span {
	transition: color 0.3s ease, background 0.3s ease;
}
#sw-publicacoes .sw-publicacao-info {
	display: flex;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 20px
}
#sw-publicacoes .sw-publicacao-info .fa {
	color: #fff;
	margin-right: 5px
}
#sw-publicacoes .sw-publicacao-info span {
	background: #6d6e71;
	color: #fff;
	padding: 5px 10px;
	border-radius: 5px;
	font-size: 13px
}
#sw-publicacoes .sw-publicacao-info span:hover {
	background:var(--color-green);
}
#sw-publicacoes .swiper-pagination {
	position: relative;
	margin-top: 30px;
	text-align: center
}
#sw-publicacoes .swiper-pagination-bullet {
	background: #888;
	opacity: 1;
	margin: 0 4px
}
#sw-publicacoes .swiper-pagination-bullet-active {
	background: var(--color-white);
}
#sw-publicacoes .swiper-button-next, 
#sw-publicacoes .swiper-button-prev {
	color: #888;
	top:var(--swiper-navigation-top-offset, 40%);
}
#sw-publicacoes .swiper-button-next::after, 
#sw-publicacoes .swiper-button-prev::after {
	font-size: 30px;
}
#sw-publicacoes .swiper-button-next:hover, 
#sw-publicacoes .swiper-button-prev:hover {
	color:var(--color-green);
}
@media (max-width: 900px) {
	#sw-publicacoes .swiper-slide-active .swiper-img, 
	#sw-publicacoes .swiperSlider .swiper-slide .swiper-img {
		contain-intrinsic-size:240px auto
	}
	#sw-publicacoes .sw-publicacao-item {
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 20px;
	}
	#sw-publicacoes .sw-publicacao-item img {
		width: 100%;
		max-width: 400px
	}
	#sw-publicacoes .sw-publicacao-conteudo {
		width: 100%
	}
	#sw-publicacoes .sw-publicacao-info {
		justify-content: center
	}
}
/* ------------------------------------*/
.swiper-slide:first-child img {
  animation: fadeZoom 1s ease-in-out;
}

@keyframes fadeZoom {
  from {
    opacity: 0;
    transform: scale(1.3);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
/* ---------------------------- SWIPER PRODUTOS -------------------- */
#swiper-produtos {
	width: 100%;
	min-height: 460px;
	padding:15px 5px;
	cursor: grab;
}
.swiper-wrapper{
	cursor: grab;
	/*justify-content: center;*/
}
@media (max-width: 900px){
	.swiper-wrapper{
		/*justify-content: flex-start;*/
	}
}
.swiper-produtos-container-wrapper{
	position: relative;
	padding: 0 50px; /* Espaco lateral para as setas */
	max-width: 1400px;
	margin: auto;
	width:100%;
}
/*.swiper-produtos .swiper-slide {
	text-align: center;
	font-size: 18px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	width: auto;
	max-width: 100%;
	margin: 0 5px;
	margin-right: 10px !important;
	min-width: 280px;
}*/
.swiper-produtos .swiper-slide {
	text-align: center;
	font-size: 18px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	width: auto;
	max-width: 100%;
	/* REMOVA qualquer margin aqui */
	box-sizing: border-box;
	}
/*
.swiper-produtos .swiper-slide:nth-child(2n) {
	width: 20%;
}
.swiper-produtos .swiper-slide:nth-child(3n) {
	width: 20%;
}
*/
.swiper-produtos .swiper-pagination{
	height:40px;
}
.swiper-produtos .swiper-pagination-bullet {
	background-color: #888;
	opacity: 1;
	padding:8px;
}
.swiper-produtos .swiper-pagination-bullet-active {
	background-color: #62a08f;
}
.swiper-produtos .swiper-button-next, .swiper-produtos .swiper-button-prev {
	color: #333333;
	width: 40px;
	height: 40px;
}
.swiper-buttons{
	position:relative;
}
.swiper-button-prev.swiper-produtos-prev, .swiper-button-next.swiper-produtos-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 45px;
	height: 45px;
	background: #f7f7f7;
	border-radius: 50%;
	/*x-shadow: 0 0 5px rgba(0,0,0,0.2);*/
}
.swiper-button-prev.swiper-produtos-prev {
	left: 10px;
}
.swiper-button-next.swiper-produtos-next {
	right: 10px;
}
.swiper-button-prev.swiper-produtos-prev:after, .swiper-button-next.swiper-produtos-next:after{
	color: #7b7b7b;
	padding: 0;
	font-size: 30px;
}
.swiper-button-prev.swiper-produtos-prev:after{
	padding: 0 3px 0 0;	
}
.swiper-button-next.swiper-produtos-next:after{
	padding: 0 0 0 3px;
}
.swiper-box-produto {
	border: 1px solid #000000;
	display: block;
	background-color: #f9f9f98a;
	text-align: center;
	min-height: 300px;
	margin-bottom: 50px;
	border-radius:30px;
	margin: 10px;
	min-width: 230px;
}
.swiper-box-produto-titulo{	
	font-size: 16px;
	margin: 0;
	line-height: 17px;
	color: #62a08f;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
	align-items: flex-end;
	height: 30px;
}
.swiper-box-produto-img{
	margin:10px;
	
}
.swiper-box-produto-texto{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
	align-items: flex-end;
	height: 50px;
	margin: 20px 10px;
	line-height:20px;
}
@media (max-width: 900px){
	.swiper-box-produto {
		margin: 0px auto;
		text-align: center;	
		margin: 10px 20px;
	}
}	
.swiper-box-produto .fa, .swiper-box-produto .icon {
	color: #fff;
	font-size: 20px;
	max-width: 250px;
	background-color: #62a08f;
	padding: 10px;
	border-radius: 20px;
	top:-10px;
	position:relative;
}
@media (max-width: 900px){
	.infoBlock a.saibamais {
		margin: 5px !important;
	}
}
.swiper-box-produto img {
	max-width: 250px;
	height: auto;
	margin-top: 0px;
	width: 100%;
}
.icone-produto{
	margin-top: -20px !important;
	width: 40px !important;
	height:40px !important;
}
/* ------------------ CARROSSEL SWIPER FANCYBOX ----------------------------------*/
#carrossel-swfb{
	/*margin: 10px 20px;*/
	box-shadow: 2px 2px 4px #dbdbdb;
	border: 1px solid #dbdbdb;
}
.swfb-galeria {
	max-width: 900px;
	margin: 10px 20px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	overflow: hidden;
}
.swfb-galeria-50-d{
	float:right;
	width:50%;
	max-width: 640px;
	margin: 10px 30px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	overflow: hidden;
}
.swfb-galeria-50-e{
	float:left;
	width:50%;
	max-width: 640px;
	margin: 10px 30px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	overflow: hidden;
}
@media only screen and (max-width: 900px){
	.swfb-galeria-50-d, .swfb-galeria-50-e{
		float:none;
		margin: 10px auto;
		width:calc(100% - 40px);
	}
}
#carrossel-swfb .swiper { width: 100%; }
#carrossel-swfb .swiper-slide img { width: 100%; height: auto; display: block; }
#carrossel-swfb .swiper-thumbs .swiper-slide {
	width: 100px;
	height: 68px;
	opacity: 0.5;
	transition: 0.1s;
	cursor: pointer;
	margin: 5px 0 5px 5px !important;
	box-sizing: border-box;
}
.swiper-thumbs .swiper-slide-thumb-active {
	opacity: 1 !important;
	border: 2px solid #62a08f;
}
.swiper-button-next, .swiper-button-prev {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background-color: #00000014;
	color: #ffffff59;
	border: 1px solid #ffffff59;
}
.swiper-button-next:after, .swiper-button-prev:after {
	font-size: 30px;
}
.swiper-button-next:hover, .swiper-button-prev:hover {
	color:#fff;
	border: 1px solid #ffffff;
}
.swfb-timer-bar {
	height: 4px;
	width: 0%;
	background: #62a08f;
	transition: width 0s;
}
.swfb-legenda {
	text-align: center;
	font-size: 13px;
	font-weight: bold;
	color: #ededed8a;
	margin: 10px 0;
	position: absolute;
	bottom: 0;
	width: 100%;
	z-index: 3;
	right: 15px;
	text-align: right;	
}
.fancybox-imagem-link{
	width: calc(100% - 10px);
	max-width: 900px;
	height:auto;
}
.fancybox-thumbs__list a:before{
	border:	4px solid #62a08f;
}

/* ====== FORMULARIO SOBREPOSTO AO FINAL DO BANNER ====== */

/* Desktop */
#rbSliderbanner {
	position: relative;
	z-index: 1;
	overflow: visible;
}

#rbSliderbanner #SwiperSlider.swiper {
	overflow: visible !important;
}

#swSlide1 .swBoxDir {
	position: relative;
	align-self: stretch;
	justify-content: flex-start;
	align-items: flex-end;
	height: 100%;
	margin: 0;
}

#swSlide1 .form-page {
	position: absolute;
	top: 60px;
	right: 0;
	width: 100%;
	max-width: 400px;
	margin: 0;
	z-index: 30;
}

#swSlide1 .quote-card {
	width: 100%;
	margin: 0;
}


/* ==================================================
   BANNER LP - TABLET E CELULAR
================================================== */

@media only screen and (max-width: 900px) {

	/*
		O banner externo permite que todo o conteudo
		fique visivel.
	*/
	#rbSliderbanner {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		overflow: visible !important;
		background-color: #22222b;
	}

	#SwiperSlider {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		aspect-ratio: auto !important;
		overflow: visible !important;
	}

	/*
		Como existe somente um slide, ele funciona
		como um bloco comum no responsivo.
	*/
	#SwiperSlider .swiper-wrapper {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		margin: 0 !important;
		transform: none !important;
		transition: none !important;
		overflow: visible !important;
	}

	#SwiperSlider #swSlide1 {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		margin: 0 !important;
		aspect-ratio: auto !important;
		overflow: visible !important;
	}

	/*
		A swBoxFull recebe sua altura da swBoxes.
		O corte fica aqui, somente para a imagem.
	*/
	#swSlide1 .swBoxFull {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		overflow: hidden !important;
		background-color: #22222b;
	}

	/* Imagem usada como fundo */
	#swSlide1 .swBoxImagem {
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		z-index: 0 !important;

		display: block !important;
		width: 100% !important;
		height: 100% !important;
		margin: 0 !important;
		overflow: hidden !important;
	}

	#swSlide1 .swBoxImagem .swiper-img {
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;

		display: block !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 0 !important;
		max-height: none !important;
		aspect-ratio: auto !important;

		object-fit: cover !important;
		object-position: center center !important;
	}

	/*
		Texto e formulario ficam no fluxo normal.
		Este bloco determina a altura real do banner.
	*/
	#swSlide1 .swBoxes {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		z-index: 2 !important;

		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-start !important;

		width: 100% !important;
		max-width: 760px !important;
		height: auto !important;
		min-height: 0 !important;

		margin: 0 auto !important;
		padding: 45px 25px 55px !important;
		box-sizing: border-box !important;
		gap: 35px !important;
	}

	#swSlide1 .swBoxEsq,
	#swSlide1 .swBoxDir {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;

		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-start !important;

		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;

		margin: 0 !important;
		text-align: center !important;
		transform: none !important;
	}

	#swSlide1 .swBoxTitulo {
		width: 100% !important;
		max-width: 700px !important;
		margin: 0 0 20px !important;
		padding: 0 !important;
		font-size: clamp(27px, 5vw, 38px) !important;
		line-height: 1.15 !important;
		text-align: center !important;
	}

	#swSlide1 .swBoxSubTitulo {
		width: 100% !important;
		max-width: 680px !important;
		margin: 0 0 16px !important;
		padding: 0 !important;
		font-size: 18px !important;
		line-height: 1.45 !important;
		text-align: center !important;
	}

	#swSlide1 .swEntidades {
		width: 100% !important;
		margin-top: 8px !important;
		text-align: center !important;
	}

	#swSlide1 .footer-logos-entidades-reconhecidas {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 22px !important;
		width: 100% !important;
	}

	/* Formulario no fluxo normal */
	#swSlide1 .form-page {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;

		display: block !important;
		width: 100% !important;
		max-width: 520px !important;
		height: auto !important;

		margin: 0 auto !important;
		transform: none !important;
	}

	#swSlide1 .quote-card,
	#swSlide1 .form-orcamento {
		display: block !important;
		width: 100% !important;
		max-width: 520px !important;
		height: auto !important;
		margin: 0 auto !important;
		box-sizing: border-box !important;
	}

	#swSlide1 .form-orcamento {
		padding: 24px !important;
		border-radius: 16px !important;
	}

	/* Controles desnecessarios no responsivo */
	#rbSliderbanner .swiper-button-next,
	#rbSliderbanner .swiper-button-prev,
	#rbSliderbanner .swiper-pagination,
	#rbSliderbanner .autoplay-progress,
	#rbSliderbanner .swSeta,
	#rbSliderbanner .swiper-lazy-preloader {
		display: none !important;
	}

	/* A secao seguinte comeca depois do banner */
	#rbBreadcrumbs2 {
		position: relative !important;
		z-index: 0 !important;
		clear: both;
	}
}


/* ==================================================
   CELULAR
================================================== */

@media only screen and (max-width: 600px) {

	#swSlide1 .swBoxes {
		padding: 35px 16px 42px !important;
		gap: 28px !important;
	}

	#swSlide1 .swBoxTitulo {
		font-size: 27px !important;
		line-height: 1.18 !important;
	}

	#swSlide1 .swBoxTitulo br {
		display: none !important;
	}

	#swSlide1 .swBoxSubTitulo {
		font-size: 16px !important;
		line-height: 1.45 !important;
	}

	#swSlide1 .form-page,
	#swSlide1 .form-orcamento {
		max-width: 100% !important;
	}

	#swSlide1 .form-orcamento {
		padding: 20px 16px !important;
		border-radius: 14px !important;
	}

	#swSlide1 .quote-intro {
		font-size: 15px !important;
	}

	#swSlide1 .campo {
		height: 62px !important;
		margin: 10px 0 !important;
		padding: 10px 12px !important;
	}

	#swSlide1 .campo-mensagem {
		height: 115px !important;
		margin: 10px 0 !important;
		padding: 10px 12px !important;
	}

	#swSlide1 .campo label,
	#swSlide1 .campo-mensagem label {
		font-size: 11px !important;
	}

	#swSlide1 .campo input,
	#swSlide1 .campo-mensagem input,
	#swSlide1 .form-orcamento .iti input#numero-telefone {
		font-size: 15px !important;
	}

	#swSlide1 .form-orcamento button[type=submit] {
		height: 54px !important;
		font-size: 16px !important;
	}
}
/* ==================================================
   ALTURA REAL DO BANNER NO RESPONSIVO
================================================== */

@media only screen and (max-width: 900px) {

	#rbSliderbanner {
		position: relative !important;
		overflow: hidden !important;
	}

	#SwiperSlider,
	#SwiperSlider .swiper-wrapper,
	#SwiperSlider #swSlide1,
	#swSlide1 .swBoxFull {
		min-height: 0 !important;
		max-height: none !important;
		aspect-ratio: auto !important;
	}

	#swSlide1 .swBoxes {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		height: auto !important;
	}

	#rbBreadcrumbs2,
	#main-lp {
		position: relative !important;
		z-index: 0 !important;
		clear: both;
	}
}
/* ==================================================
   FORMULARIO SOBRE A PROXIMA SECAO - MOBILE
================================================== */

@media only screen and (max-width: 700px) {

	/*
		Permite que o formulario ultrapasse
		o limite inferior do banner.
	*/
	#rbSliderbanner,
	#SwiperSlider,
	#SwiperSlider .swiper-wrapper,
	#SwiperSlider #swSlide1,
	#swSlide1 .swBoxFull {
		overflow: visible !important;
	}

	/*
		A imagem continua limitada ao banner.
	*/
	#swSlide1 .swBoxImagem {
		overflow: hidden !important;
	}

	/*
		Desce o formulario visualmente.
		Ele continua participando da altura do banner.
	*/
	#swSlide1 .form-page {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;

		/*transform: translateY(80px) !important;*/
		z-index: 20 !important;
	}

	/*
		A secao pontilhada fica atras do formulario.
	*/
	#rbBreadcrumbs2 {
		position: relative !important;
		z-index: 0 !important;
	}

	/*
		Reserva espaco para os contadores nao ficarem
		escondidos atras do formulario.
	*/
	#rbBreadcrumbs2 .rbBreadcrumbs2-flex {
		padding-top: 40px !important;
	}

}

/* Desktop */
#swSlide1 .form-page-lp {
	position: absolute;
	top: -60px;
	right: 0;
	width: 100%;
	max-width: 400px;
	margin: 0;
	z-index: 30;
}


/* Tablet e celular */
@media only screen and (max-width: 900px) {

	#swSlide1 .form-page-lp {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;

		display: block !important;
		width: 100% !important;
		max-width: 520px !important;
		height: auto !important;

		margin: 0 auto !important;
		transform: none !important;
	}
}


/* Celular */
@media only screen and (max-width: 600px) {

	#swSlide1 .form-page-lp {
		max-width: 100% !important;
	}
}


/* Formulario sobre a próxima seção */
@media only screen and (max-width: 700px) {

	#swSlide1 .form-page-lp {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;

		transform: translateY(80px) !important;
		z-index: 20 !important;
	}
}

