








.site-cabecalho {
	color: var(--cabecalho-color);
	background-color: var(--cabecalho-background-color);
	
	& a {
		color: var(--cabecalho-color);
	}

	&.inicio a {
		color: var(--home-cabecalho-color);
		text-align: -webkit-center;
	}

	& > .cabecalho-corpo {
		width: 100%;
		max-width: 100%;
		height: 100%;
		display: grid;
		grid-template-rows: auto 1fr;
		align-items: center;
		padding: 0;

		&::has(>.barra-topo) {
			grid-template-rows: auto auto 1fr;
		}

		& .barra-topo {
			width: 100%;
			max-width: 100%;
			display: grid;
			justify-items: center;
			color: var(--menu-topo-color);
			background-color: var(--menu-topo-background-color);
            padding: 10px 0;

			& a {
				color: #FFF;
			}

			& > div {
				display: flex;
				justify-content: space-between;
				max-width: 100%;
				padding: 5px 20px;
			}
		}

		&.inicio .barra-topo a {
			color: #FFF;
		}
	}

	& .topo {
		width: 100%;
		max-width: 100%;
		height: 100%;
		display: grid;
		justify-items: center;
		
		& > div {
			display: flex;
			align-items: center;
			justify-content: space-between;
			width: 100%;
			max-width: var(--site-width);
			padding: 0 20px;
		}

		& .corpo {
			display: flex;
			align-items: center;
			gap: 10px;
			grid-area: corpo;
		}

		& .logo {
			padding: 15px 0px;
			grid-area: logo;

			& img {
				max-height: 40px;
			}

			& .slogan {
				font-size: 1.3rem;
				color: var(--cabecalho-color);
				text-align: center;
				font-weight: bold;
				font-style: italic;
				display: none;
			}
		}
	}

	& .busca {
		display: grid;
		align-items: flex-start;
		justify-items: center;
		position: relative;
		width: 100%;
		max-width: 100%;
		background-color: #FFF;

		& > div {
			background-color: #FFF;
			padding: 20px 10px;
		}

		& label {
			font-size: .8rem;
			margin-bottom: 3px;
		}
	}

	&.inicio {
		color: var(--home-cabecalho-color);
		background-color: var(--home-cabecalho-background-color);
		background-image: var(--home-cabecalho-background-image);
		background-position: var(--home-cabecalho-background-position);
		background-repeat: var(--home-cabecalho-background-repeat);
		background-size: var(--home-cabecalho-background-size);
		height: var(--home-cabecalho-height) !important;
		position: relative;

		& .cabecalho-video {
			max-width: 100%;
			width: 100%;
			height: 100%;
			overflow: hidden;
			padding: 0;
			position: relative;

			& video {
				object-fit: cover;
				width: 100%;
				height: 100%;
			}

			& .video-lente {
				width: 100%;
				height: 100%;
				position: absolute;
				top: 0;
				left: 0;
				z-index: 0;
				background-color: var(--home-cabecalho-video-lente-background-color);
				backdrop-filter: var(--home-cabecalho-video-lente-backdrop-filter);
			}
		}

		& .topo > .logo {
			display: flex;
			justify-content: center;
			align-items: center;
			text-align: center;
			padding: 0px 0px;
		}

		& > .cabecalho-corpo {
			position: absolute;
			top: 0;
			
			& > .corpo {
				width: 100%;
				max-width: 100%;
				height: 100%;
				display: grid;
				justify-items: center;
	
				& > div {
					display: flex;
					align-items: center;
					justify-content: center;
					width: 100%;
					max-width: var(--site-width);
					padding: 0 20px;
				}
			}
		}

		& .slogan,
		& .slogan_sub {
			font-size: 1rem;
			font-weight: normal;
			text-wrap: balance;
            text-align: center;
            line-height: 120%;
		}

		& .slogan {
			font-size: 2rem;
			font-weight: bold;
			color: var(--home-slogan-color);
		}

		& .busca {
			background-color: transparent;

			& label {
				color: var(--pesquisa-color);
			}

			& > div {
				background-color: var(--pesquisa-background-color);
				color: var(--pesquisa-color);
				padding: 20px 40px;
				border-radius: 6px;
				-webkit-box-shadow: var(--pesquisa-background-shadow);
				-moz-box-shadow: var(--pesquisa-background-shadow);
				box-shadow: var(--pesquisa-background-shadow);
			}
		}

		& form[name=formBuscaPrincipal] button[type=submit] {
			border: 1px solid #FFF;
		}
	}

	
	@media screen and (max-width: 700px) {
		position: fixed !important;
		top: 0;
		z-index: 3;
		background-color: var(--cabecalho-background-color);
		background-image: var(--cabecalho-background-image);
		background-position: var(--cabecalho-background-position);
		background-repeat: var(--cabecalho-background-repeat);
		background-size: var(--cabecalho-background-size);
		height: auto;
		-webkit-box-shadow: 0px 0px 20px 0 rgba(0,0,0,.3);
		-moz-box-shadow: 0px 0px 20px 0 rgba(0,0,0,.3);
		box-shadow: 0px 0px 20px 0 rgba(0,0,0,.3);

		& > .cabecalho-corpo {
			grid-template-rows: 1fr;

			& > div {
				display: grid;
				grid-template-rows: 1fr;
				height: 100%;
				padding: 0 20px;
				align-items: center;
			}

			& .topo {
				display: grid;
				grid-template-columns: auto 1fr auto;
				grid-template-areas: none;
				grid-template-rows: none;
				align-items: center;
				justify-items: center;

				& > div {
					padding: 0;
					justify-content: center;

					& i {
						font-size: 1.5rem;
					}
				}

				& .logo {
					padding: 10px;
					text-align: center;

					& img {
						height: 30px;
					}
				}
			}
		}
		
		&.inicio {
			position: inherit !important;
			height: 90vh;
			-webkit-box-shadow: none;
			-moz-box-shadow: none;
			box-shadow: none;

			& > .cabecalho-corpo {
				& > div {
					grid-template-rows: auto auto 60px;
				}

				& .topo {
					align-items: flex-start;
					padding-top: 20px;

					& > div:nth-child(2) {
						align-self: center;
					}

					& .logo img {
						height: auto;
						max-height: 80%;
						max-width: 80%;
					}

					& .tp-pesquisa {
						display: none;
						align-self: flex-start;
					}
				}
			}
		}
	}


}




.pesquisa-principal {
	display: grid;
	grid-template-columns: 1fr 1fr 2fr 2fr 120px auto;
	gap: 10px;
	align-items: flex-end;
}



.home-banner {
    align-items: center;
}

@media screen and (max-width: 700px) {
	.home-banner > div:nth-child(2) {
		display: none;
	}
}








.scroll-bottom {
	position: absolute !important;
	margin: 0 auto;
	right: 0;
	left: 0;
	bottom: -2px;
	display: flex;
	justify-content: center;
	z-index: 1;

	#scroll-down-animation {
		position: absolute;
		margin: 0 auto;
		bottom: 5px;
		z-index: 1;

		.mouse {
			display: block;
			border-radius: 50px;
			border: 3px solid #7EA54B;
			height: 48px;
			width: 30px;
			position: relative;
			bottom: 0;

			.move {
				position: absolute;
				background-color: #7EA54B;
				height: 12px;
				width: 4px;
				border-radius: 5px;
				left: 50%;
				transform: translateX(-50%);
				-webkit-animation: move 2s linear infinite;
				animation: move 2s linear infinite;
			}
		}
	}
}




@keyframes move {
	0% {
		transform: translate(-50%, 5px);
		opacity: 0;
	}

	50% {
		transform: translate(-50%, 20px);
		opacity: 1;
	}

	100% {
		transform: translate(-50%, 26px);
		opacity: 0;
	}
}





.site-caminho {
	border-bottom: 1px solid #EEE;
    background-color: #EAEAEA;

	.conteudo {
		display: flex;
		padding: 3px 0px 7px 0px;
		justify-content: flex-start;
		align-items: center;
		gap: 5px;
	}

	span {
		font-size: small;
		font-weight: normal;
		color: #999;
		cursor: pointer;

		&::before {
			font-family: Icofont !important;
			content: '\eac7';
			margin-right: 5px;
		}
	}

	.conteudo {
		> span:last-child
		> a:last-child span {
			font-weight: bold;
			font-style: italic;
			color: #333;
		}
	}

	span:hover {
		color: #202020;
	}
}
















.site-conteudo {
	background-color: var(--site-background-color);
	background-image: var(--site-background-image);
	background-position: var(--site-background-position);
	background-repeat: var(--site-background-repeat);
	background-size: var(--site-background-size);
	padding-top: 20px;
    padding-bottom: 50px;
}






.site-rodape {
	color: var(--rodape-color);
	background-color: var(--rodape-background-color);

	> div {
		display: flex;
		justify-content: space-around;
		align-items: flex-start;
		flex-wrap: wrap;
		gap: 30px;
		padding: 50px 30px !important;
		font-size: medium;

		h4 {
			white-space: nowrap;
			padding: 0px;
			margin: 0px;
			margin-bottom: 10px;

			@media screen and (max-width: 700px) {
				text-align: center;
			}
		}

		.logomarca {
			img {
				max-width: 250px;
			}
		}

		@media screen and (max-width: 700px) {
			display: grid;
			grid-template-columns: 1fr;
			justify-items: center;
		}
	}

	span {
		color: var(--rodape-color);
	}

	.bt-rodape {
		div {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			gap: 10px;

			img {
				padding: 5px 0px;
			}

			span {
				font-weight: bold;
				font-size: medium;
			}
		}
	}
}





ul.menu-horizontal {
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;

	> li {
		list-style: none;

		> div,
		> a > div {
			padding: 20px 10px;
		}
	}
}













.lista-cards {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(330px,1fr));
    grid-gap: 20px;
    justify-content: space-between;
    padding: 10px 0
}




.card-box {
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 300px 1fr;
	width: 100%;
	max-width: 100%;
	height: 100%;
	border-radius: 8px;
	background-color: #fff;
	color: #5c5c5c;
	transition: box-shadow 0.3s ease, transform 0.3s ease;
	border: 1px solid #cfd4dd;
	box-sizing: border-box;

	&.anuncio, 
	&.blog, 
	&.regiao {
		grid-template-rows: 300px 1fr auto;
	}

	&.corretor {
		grid-template-rows: auto 1fr;
        height: auto;
		background: linear-gradient(45deg, #cfebf1 0%, #FFF 50%, #FFF 100%);
		margin-top: 20px;
		margin-bottom: 20px;
		
		&:has(>.imagem) {
			margin-top: 120px;
			padding-top: 40px;
		}

		& .imagem {
			height: 160px;
			width: 160px;
			position: absolute;
			top: -110px;
			left: 50%;
			transform: translateX(-50%);
			& .foto {
				border-radius: 100px;
				box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
			}
		}
		& .conteudo {
        	grid-template-rows: 1fr auto auto;
			gap: inherit;
			text-align: center;
			& .nome {
				font-size: 1.4rem;
				font-weight: bold;
			}
			& .creci {
				font-size: .8rem;
				display: inline-flex;
                align-items: center;
                justify-content: center;
                gap: 7px;
				& i {
					font-size: 1.2rem;
				}
			}
			& .botoes {
				grid-template-columns: 1fr 1fr;
                padding-top: 10px;
				& > button:is(.btn-whatsapp, .btn-ligar, .btn-share) > span {
					display: block;
				}
			}
		}
	}

	&.caracteristicas {
		width: auto;
		padding: 15px;
        grid-template-rows: inherit;

		& .titulo {
			margin-bottom: 10px;
		}
	}

	&:hover {
		box-shadow: 0 0 18px 0 rgba(0, 0, 0, 0.2);
		background: linear-gradient(45deg, #cfebf1 0%, #FFF 50%, #FFF 100%);
	}

	& .titulo {
		color: #000;
		font-size: 0.85rem;
		font-weight: bold;
		text-transform: uppercase;
	}

	& .descricao {
		display: -webkit-box;
		overflow: hidden;
		color: #666;
		font-size: 0.75rem;
		white-space: normal;
		word-break: break-word;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
	}

	& .imagem {
		position: relative;

		.carrocel {
			display: grid;
			width: 100%;
			height: 100%;

			.swiper-pagination {
				bottom: 25px !important;
			}

			> div {
				position: relative;
				z-index: 0;
				width: 100%;
				height: 100%;
				overflow: hidden;
			}
		}

		.foto {
			position: relative;
			width: 100%;
			height: 100%;
			overflow: hidden;
			border-radius: 8px 8px 0 0;

			> div {
				position: relative;
				width: 100%;
				height: 100%;
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				transition: transform 0.5s ease;
			}
		}

		&.grayscale .foto > div {
			filter: grayscale(100%) opacity(50%);
		}

		&:hover .foto > div {
			transform: scale(1.05);
		}

		> button.editar {
			position: absolute;
			top: 10px;
			right: 10px;
		}
		
		.tag-logomarca {
			position: absolute;
			right: 5px;
			bottom: 0px;
			width: 100px;
			height: 70px;
			border-radius: 20px 20px 0 0;
			background-color: #FFF;
			display: flex;
			justify-content: center;
            align-items: center;

			> div {
				width: 80%;
				height: 80%;
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
			}
		}

		:is(.tag-topo, .tag-center, .tag-base) {
			position: absolute;
			left: 0;
			width: 100%;
			display: flex;
			gap: 5px;
		}

		.tag-topo {
			top: 0;
			justify-content: flex-start;
			padding: 10px;
			flex-wrap: wrap;
		}

		.tag-center {
			top: 50%;
			transform: translate(-50%, -50%);
			flex-direction: column;
			width: 70%;
			left: 50%;

			.tag {
				pointer-events: none;
				user-select: none;
				
				&.novo, &.pausado {
					display: block;
					text-align: center;
					border-radius: 0px;
					white-space:normal;
					text-wrap: balance;
				}

				&.novo {
					background-color: color-mix(in srgb, var(--novo-bg) 70%, transparent);
				}

				&.pausado {
					background-color: color-mix(in srgb, var(--pausado-bg) 70%, transparent);
				}
			}
		}

		.tag-base {
			bottom: -10px;
			justify-content: center;
			flex-wrap: wrap;
		}

		:is(.tag-topo, .tag-base) > div {
			margin: 0;
			padding: 5px 15px;
			background-color: #ddd;
			color: #666;
			font-size: 0.8125rem;
			text-align: left;
			white-space: nowrap;
			border-radius: 99px;

			i {
				margin-right: 5px;
			}
		}
	}

	.conteudo {
		display: grid;
		grid-template-rows: auto auto 1fr auto auto auto;
		gap: 10px;
		padding: 15px;

		.tag.pequeno {
			border-radius: 99px;
            padding: 3px 10px !important;
            font-size: .625rem;
		}

		.info {
			color: #888;
			font-size: 0.7rem;
		}

		.acao {
			color: #cc9933;
			font-size: 0.85rem;
			font-weight: bold;

			&.locacao {
				color: var(--locacao-bg);
			}

			&.venda {
				color: var(--venda-bg);
			}
		}

		.caracteristicas {
			gap: 12px;

			> div {
				display: grid;
				grid-template-columns: auto 1fr;
				align-items: center;
				gap: 3px;
				color: #000;

				> svg,
				> img {
					width: 16px;
					height: 16px;
				}

				> img {
					opacity: 1;
				}

				> i {
					font-size: 1.2rem;
				}

				> span {
					font-size: 0.8rem;
				}
			}
		}

		.valor {
			/* color: var(--botao-background-color); */
			color: #000;
			font-size: 1.5rem;
			font-weight: bold;

			span {
				padding-left: 3px;
				color: #666;
				font-size: 0.75rem;
				font-weight: normal;
			}
		}

		.valor_consulta {
			color: #000;
			font-size: 1rem;
			font-weight: bold;
		}

		.valor_p {
			color: #666;
			font-size: 0.75rem;
		}

		.botoes {
			display: grid;
			gap: 5px;
			grid-template-columns: 1fr 1fr 1fr auto;

			& > button {
				display: flex;
				flex-wrap: wrap;
			}
			
			& > button:is(.btn-whatsapp, .btn-ligar, .btn-share) > span {
				display: none;
			}
			
		}
	}

	&.blog {
		& > .conteudo {
			grid-template-rows: auto auto 1fr auto;
			& > .botoes {
				grid-template-columns: 1fr auto;
			}
		}
	}

	&.regiao {
		& > .conteudo {
			grid-template-rows: auto 1fr auto;
			& > .botoes {
				grid-template-columns: 1fr 1fr;
			}
		}
	}

	&.video {
		& > .conteudo {
			grid-template-rows: auto auto 1fr auto;
			& > .descricao {
				font-size: 0.875rem;
				-webkit-line-clamp: 3;
			}
			& > .botoes {
				grid-template-columns: 1fr;
			}
		}
	}
}


.box-caracteristicas {
	padding: 10px 0;
}










.quadro-login {
	background-color: #FFF;
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	border-radius: 8px;
	width: 700px;
	max-width: 95%;
	position: relative;
	-webkit-box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .30);
	-moz-box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .30);
	box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .30);

	> div {
		padding: 40px;
		height: 100%;
		color: #333;
		align-content: center;

		&.login-novo {
			background-color: var(--color-empresa-azul);
			/* background: linear-gradient(0deg,rgba(34, 44, 96, 1) 1%, rgba(66, 101, 135, 1) 100%); */
			/* background: rgba(from var(--color-empresa-azul) r g b / 1); */
			/* background: linear-gradient(0deg,rgba(from var(--color-empresa-azul) r g b / 1) 1%, rgba(from var(--color-empresa-verde) r g b / 1) 100%); */
			background: var(--color-empresa-azul);
			border-radius: 8px 90px 90px 8px;
			color: #FFF;

			.titulo,
			label {
				color: #FFF;
			}

			span {
				color: #FFF !important;
				font-size: .9rem;
			}

			@media only screen and (max-width: 700px) {
				border-radius: 8px 8px 60px 60px;
			}
		}
	}

	.titulo {
		font-size: 1.2rem;
		font-weight: bold;
		color: #000;
		text-align: center;
		margin-bottom: 20px;
	}

	@media only screen and (max-width: 700px) {
		grid-template-columns: 1fr;
		width: 350px;
		max-width: 95%;
	}
}

















.quadro-cadastro {
	background-color: #FFF;
	display: grid;
	grid-template-columns: 300px 1fr;
	align-items: center;
	border-radius: 8px;
	width: 100%;
	max-width: 1000px;
	position: relative;
	-webkit-box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .30);
	-moz-box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .30);
	box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .30);

	> div {
		padding: 40px;
		height: 100%;
		color: #333;

		&.color {
			background-color: var(--color-empresa-azul);
			/* background: linear-gradient(0deg,rgba(34, 44, 96, 1) 1%, rgba(66, 101, 135, 1) 100%); */
			/* background: rgba(from var(--color-empresa-azul) r g b / 1); */
			/* background: linear-gradient(0deg,rgba(from var(--color-empresa-azul) r g b / 1) 1%, rgba(from var(--color-empresa-verde) r g b / 1) 100%); */
			background: var(--color-empresa-azul);
			border-radius: 8px 70px 70px 8px;
			color: #FFF;
			align-content: center;

			@media only screen and (max-width: 700px) {
				border-radius: 8px 8px 60px 60px;
			}
		}
	}

	.titulo {
		font-size: 1.2rem;
		font-weight: bold;
		color: #444;
		margin-bottom: 20px;
	}

	@media only screen and (max-width: 700px) {
		grid-template-columns: 1fr;
		max-width: 100%;
	}
}






.passos-legenda {

	> div {
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 10px;
		padding: 5px 0;
		font-size: .8rem;

		> div:first-child {
			display: grid;
			justify-content: center;
			align-items: center;
			width: 20px;
			height: 20px;
			border: 1px solid #FFF;
			border-radius: 99%;

			i {
				font-size: .7rem;
				display: none;
			}
		}

		> div:last-child {
			color: #FFF;

			@media only screen and (max-width: 700px) {
				display: none;
			}
		}

		&.inativo {

			> div:first-child {
				border: 3px solid #FFF;
				opacity: .05;
				background-color: #FFF;
			}

			> div:last-child {
				color: #FFF;
				opacity: .3;
				text-decoration: line-through;
			}
		}

		&.ativo {

			> div:first-child {
				border: 3px solid #09cd8f;
			}

			> div:last-child {
				color: #09cd8f;
			}
		}

		&.concluido {

			> div:first-child {
				border: none;
			}

			> div:first-child i {
				display: block;
				color: #09cd8f;
				font-size: 1.5rem;
			}

			> div:last-child {
				color: #FFF;
			}
		}

	}

	@media only screen and (max-width: 700px) {
		display: flex;
		justify-items: center;
		justify-content: space-evenly;
	}

}





.aba-cadastro {
	display: grid;
	grid-template-rows: 1fr auto;
	min-height: 400px;
}






.boxBotaoFlutuante {
    display: block;
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 9;
    cursor: pointer;

	> .botao {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 10px 20px 10px 50px;
		background-color: #FFF;
		border-radius: 100px;
		-moz-border-radius: 100px;
		-webkit-border-radius: 100px;
		border: 2px solid #25D366;
		color: #000;
		font-weight: bold;
		font-style: italic;
	}

	> .icone {
		position: absolute;
		top: 50%;
		left: -15px;
		transform: translateY(-50%);
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 20px;
		border-radius: 100px;
		-moz-border-radius: 100px;
		-webkit-border-radius: 100px;
		background: #009900;
		background: -moz-linear-gradient(top,#25D366 0%,#1aad50 100%);
		background: linear-gradient(to bottom,#25D366 0%,#1aad50 100%);
		background: -webkit-linear-gradient(top,#25D366 0%,#1aad50 100%);
		filter: progid;
		color: #FFF;
		box-shadow: 0 0 0 0 rgba(9, 165, 19, 0.50);
		animation: alerta 1.5s infinite;
		transition: background, padding 500ms ease-in-out;
	}
}


.btn-topo {
    padding: 8px 20px !important;
    background-color: #7EA54B;
	color: #FFF !important;
}







.galeria-fotos {
    width: 100%;
    height: 500px;
    display: inline-flex;
    gap: 10px;

	& > .foto {
		width: 100%;
		height: 100%;
		border: 1px solid #CCC;
		background-color: #FFF;
		background-repeat: no-repeat;
		background-position: center;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}

	& .swiper-container {
		overflow: hidden;
		position: relative;
	}

	& .swiper-button-prev,
	& .swiper-button-next,
	& .swiper-pagination-bullet {
		color: #022c60;
		fill: #022c60;
		width: 35px;
		height: 35px;
		background-color: #FFF;
		padding: 10px;
		border-radius: 8px;
		&.swiper-button-white {
			color: dodgerblue;
			font-weight: bold
		}
	}

	& .gallery-top {
		height: 400px;
		& .swiper-pagination-bullet {
			background-color: #022c60
		}
		& .swiper-slide {
			text-align: center;
			font-size: 18px;
			display: -webkit-box;
			display: -ms-flexbox;
			display: -webkit-flex;
			display: flex;
			-webkit-box-pack: center;
			-ms-flex-pack: center;
			-webkit-justify-content: center;
			justify-content: center;
			-webkit-box-align: center;
			-ms-flex-align: center;
			-webkit-align-items: center;
			align-items: center;
			background-position: center;
			background-repeat: no-repeat;
			-webkit-background-size: cover;
			-moz-background-size: cover;
			-o-background-size: cover;
			background-size: cover;
			position: relative;
			&::after {
				content: "";
				z-index: 0;
				position: absolute;
				width: 100%;
				height: 100%;
				backdrop-filter: blur(15px);
			}
			& > div {
				width: 100%;
				height: 100%;
				background-position: center;
				background-repeat: no-repeat;
				-webkit-background-size: contain;
				-moz-background-size: contain;
				-o-background-size: contain;
				background-size: contain;
				z-index: 1;
			}
		}
	}

	& .gallery-thumbs {
		width: 100px;
		height: 100%;
		& > .swiper-button-prev:after, 
		& > .swiper-container-rtl .swiper-button-next:after,
		& > .swiper-button-next:after,
		& > .swiper-container-rtl .swiper-button-prev:after {
			transform: rotate(0deg)!important;
			font-size: x-large
		}
		& .swiper-slide {
			width: 100%;
			height: 20%;
			opacity: 1;
			border: 1px solid #CCC;
			background-color: #FFF;
			background-repeat: no-repeat;
			background-position: center;
			-webkit-background-size: cover;
			-moz-background-size: cover;
			-o-background-size: cover;
			background-size: cover;
			cursor: pointer
		}
		& .swiper-slide-active {
			width: 100%;
			opacity: 1;
			border: 2px solid #022c60;
			opacity: 1
		}
	}

	& .swiper-slide img {
		max-width: 100%;
		max-height: 100%
	}

	&.horizontal {
		display: inline-block;
		& .gallery-top {
			width: 100%
		}
		& .gallery-thumbs {
			width: 100%;
			height: 80px;
			margin-top: 20px;
			& .swiper-slide {
				width: 15%;
				height: 100%;
				opacity: .5
			}
			& .swiper-slide-active {
				width: 15%;
				height: 100%;
				opacity: 1
			}
		}
	}

	&.vertical {
		height: 450px;
		& .gallery-top {
			height: 450px;
		}
		& .gallery-thumbs {
			width: 80px;
			height: 100%;
			& .swiper-slide {
				width: 100% !important;
				height: 15% !important;
				opacity: .5
			}
			& .swiper-slide-active {
				opacity: 1
			}
		}
	}
	
	@media only screen and (max-width: 1200px) {
		height:400px;
		& .gallery-top {
			height: 300px
		}
		&.horizontal .gallery-thumbs{
			height:60px;
		}
	}
	
	@media only screen and (max-width: 900px) {
		height:350px;
		&.horizontal .gallery-thumbs{
			height:60px;
		}
	}
	
	@media only screen and (max-width: 600px) {
		&.horizontal .gallery-thumbs {
			width:calc(100% - 40px);
			margin: 10px 20px;
			height: 60px;
			& > .swiper-button-next,
			& > .swiper-button-prev {
				width:20px!important;
				height: 20px!important
			}
			& .swiper-slide,
			& .swiper-slide-active {
				width: 25%;
			}
		}
		& > .foto {
			width:calc(100% + 40px);
			margin: 0px -20px;
		}
	}
}








.anuncio {
	&.grid-topo {
		display: grid;
		grid-template-columns: 740px 1fr;
		gap: 20px;
		& .titulo {
			/* margin: 0; */
		}
		& > div:last-child {
			display: grid;
			gap: 10px;
            align-items: start;
            align-content: start;
		}
		@media only screen and (max-width: 1300px) {
			grid-template-columns:650px 1fr
		}
		@media only screen and (max-width: 1200px) {
			grid-template-columns:600px 1fr
		}
		@media only screen and (max-width: 1050px) {
			grid-template-columns:550px 1fr
		}
		@media only screen and (max-width: 900px) {
			grid-template-columns:400px 1fr
		}
		@media only screen and (max-width: 600px) {
			display: block;
			margin-top: -30px;
			& > div:last-child {
				margin-top: 20px;
			}
		}
	}
	& .preco {
		font-size: 1.8rem;
		font-weight: bold;
		color: var(--botao-background-color);
    	line-height: 100%;
	}
	& .preco-pequeno {
		color: #666;
	}

	& .caracteristica {
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 10px;
        align-items: center;
		font-size: .8rem;
		& > .icone {
			& svg {
				width: 20px;
				height: 20px;
			}
			& i {
				font-size: 1.3rem;
			}
			& img {
				width: 20px;
			}
		}
		& > div:last-child {
			display: grid;
			grid-template-columns: auto 1fr;
			gap: 0px 3px;
			& .qtde {
				font-weight: bold;
			}
			& .info {
				font-size: .7rem;
				grid-column: span 2;
				line-height: 100%;
			}
		}
		&.vertical {
			grid-template-columns: 1fr;
            gap: 0px;
            justify-items: center;
			& > .icone {
				& svg {
					width: 30px;
					height: 30px;
				}
				& i {
					font-size: 2.2rem;
				}
				& img {
					width: 30px;
				}
			}
			& > div:last-child {
				grid-template-columns: 1fr;
				justify-items: center;
				& .qtde {
					font-size: 1rem;
				}
				& .info {
					grid-column: span 1;
				}
			}
		}
		&.grande {
			font-size: 1rem;
            padding: 3px 0;
		}
	}

	& .video {
		display: flex;
		& img {
			width: 100%;
			max-width: 800px;
		}
	}

	& iframe.video {
		width: 800px;
		height: 400px;
		max-width: 100%;
		@media only screen and (max-width: 720px) {
			height: 360px;
		}
		@media only screen and (max-width: 600px) {
			height: 300px;
		}
	}

	& .lista-caracteristicas {
		padding-top: 20px;
		columns: 220px auto;
		& .box-caracteristicas {
			break-inside: avoid;
		}
	}


}




.empreendimento-cabecalho {
	max-width: 100% !important;
	padding: 0!important;
	background-color: #FFF;
	margin-top: -20px;
	position: relative;
}
.empreendimento-cabecalho > .logomarca {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	/* background-color: rgb(from var(--cabecalho-background-color) r g b / .5); */
	background-color: rgb(from #FFF r g b / .3);
	display: grid;
    justify-items: center;
    align-items: center;
}
.empreendimento-cabecalho > .logomarca img {
	width: 60%;
	max-width: 400px;
	max-height: 250px;
	-webkit-filter: drop-shadow(0px 0px 20px #FFF);
	filter: drop-shadow(0px 0px 20px #FFF);
}