/* PERSONALIZAÇÃO DE CORES */
:root{
	--variavel:#123456;
	--toggler-cor: #020303;
	--checkbox-cor1: #000;
	--checkbox-cor2: #fff;
	--voltar-topo-fundo: #8b0000;
	--voltar-topo-sombra: rgba(0,0,0,.5);
	--voltar-topo-left: auto;
	--voltar-topo-right: 10px;
	--voltar-topo-bottom: 13px;
	--whatsapp-bottom: 10px;
	--whatsapp-left: 10px;
	--whatsapp-right: auto;
	--lazy-cor:#8B0000;
	--lazy-borda:#fff;
	--preto: #1B1C1E;
	--preto-transparente: #1b1c1e60;
	--texto-cinza: #9A9FA6;
	--vermelho:#8B0000;
	--vermelho-claro:#CB0000;
	--vermelho-escuro:#6B0000;
	--vermelho-transparente: #6b000060;
	--cinza: #555555;
	--cinza-claro: #EDF0F5;
}
/* DEFINIÇÕES PADRÃO */
*{
	transition:ease-out 0.3s;
}
body{
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
}
img{
	image-rendering: auto;
	image-rendering: crisp-edges;
	image-rendering: pixelated;
	image-rendering: -webkit-optimize-contrast;
}
h1,h2,h3,h4,h5,h6{
	margin-bottom: 0;
	padding: 0;
}
a{
	text-decoration: none;
	display: inline!important;
}
select{
	overflow:hidden;
}
a>svg{
	margin-top: -3px;
}
#home{
	overflow: hidden;
	width: 0;
	height: 0;
}
img[data-lazy]{
	opacity:0;
}
/* TOGGLER ANIMADO */
.navbar-toggler{
	position:relative;
	padding:10px;
	width:42px;
	margin-left:-42px;
	border:none;
	background:0 0!important;
}
.navbar-toggler:focus{
	box-shadow:0 0 .25rem var(--toggler-cor);
}
.navbar-toggler .icon-bar{
	transform: rotate(0) translate(0,0);
	transition: ease all .2s;
	display: block;
	width: 22px;
	height: 2px;
	border-radius: 1px;
	background:var(--toggler-cor);
}
.navbar-toggler .icon-bar+.icon-bar{
	margin-top:4px;
}
.navbar-toggler:hover>.icon-bar,
.navbar-toggler:focus>.icon-bar,
.navbar-toggler:active>.icon-bar{
	width:22px!important;
}
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(1){
	transform: rotate(45deg) translate(5px, 4px);
}
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(2){
	opacity: 0;
}
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(3){
	transform: rotate(-45deg) translate(4px, -4px);
}
/* CORREÇÕES DIVERSAS */
p,ul{
	margin: 0;
	padding: 0;
}
.navbar-brand{
	padding: 0;
}
.modal-100{
	--bs-modal-width: 100%!important;
	/*width: 100%;*/
	/*min-height: 100%;*/
	padding: 3rem!important;
	margin: 0!important;
}
.modal-100 .modal-content,
.modal-100 .modal-body{
	border-radius: 0;
	max-height: 100%;
}
.modal-100 .modal-body{
	padding: 0!important;
}
.animate__fadeOut{
	opacity: 0;
}
/* CHECKBOX ANIMADO */
input[type=checkbox]{
	display:none;
}
input[type=checkbox] + label {
	margin: auto;
	-webkit-user-select: none;
	user-select: none;
	cursor: pointer;
	min-height:24px;
	display:flex;
}
input[type=checkbox] + label > span {
	display: inline-block;
	vertical-align: middle;
	transform: translate3d(0, 0, 0);
}
input[type=checkbox] + label > span:first-child {
	position: relative;
	width: 18px;
	height: 18px;
	min-width:18px;
	border-radius: 3px;
	transform: scale(1);
	vertical-align: middle;
	border:1px solid var(--checkbox-cor2);
	transition: all 0.2s ease;
	margin-top:2px;
}
input[type=checkbox] + label > span:first-child svg {
	position: absolute;
	top: 3px;
	left: 2px;
	fill: none;
	stroke:var(--checkbox-cor1);
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 16px;
	stroke-dashoffset: 16px;
	transition: all 0.3s ease;
	transition-delay: 0.1s;
	transform: translate3d(0, 0, 0);
}
input[type=checkbox] + label > span:first-child:before {
	content: "";
	width: 100%;
	height: 100%;
	background:var(--checkbox-cor2);
	display: block;
	transform: scale(0);
	opacity: 1;
	border-radius: 50%;
}
input[type=checkbox] + label > span:last-child {
	padding-left: 8px;
}
input[type=checkbox] + label:hover > span:first-child {
	border-color:var(--checkbox-cor2);
}
input[type=checkbox]:checked + label > span:first-child {
	background:var(--checkbox-cor2);
	border-color:var(--checkbox-cor2);
	animation: wave 0.4s ease;
}
input[type=checkbox]:checked + label > span:first-child svg {
	stroke-dashoffset: 0;
}
input[type=checkbox]:checked + label > span:first-child:before {
	transform: scale(3.5);
	opacity: 0;
	transition: all 0.6s ease;
}
@keyframes wave {
	50%{transform: scale(0.9);}
}
/* BOTÃO PARA FECHAR O MODAL */
.fechamodal{
	position: absolute;
	right: 0;
	top: 0;
	border-radius: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	transform: translate(40%,-40%);
	width: 30px;
	height: 30px;
	padding: 0;
	margin: 0;
	border-width: 1px 1px 0px 0px;
	border-color: #333;
	z-index: 300;
}
.fechamodal svg{
	width: 30px;
	height: 30px;
}
.fechamodal:active svg,
.fechamodal:focus svg,
.fechamodal:hover svg{
	transform: scale(1.1);
}
/* BOTÃO PARA VOLTAR AO TOPO */
#voltar_topo{
	position: fixed;
	left: var(--voltar-topo-left);
	right: var(--voltar-topo-right);
	bottom: -70px;
	width: 25px;
	text-align: center;
	line-height: 9px;
	font-size: 10px;
	padding: 5px 5px 8px 5px;
	box-shadow: 0 .5rem 1rem var(--voltar-topo-sombra)!important;
	border: none;
	background-color:var(--voltar-topo-fundo);
	color: #fff;
	border-radius: 25px;
	user-select: none;
}
#voltar_topo  i{
	font-size: 15px;
}
#voltar_topo.visivel{
	bottom: var(--voltar-topo-bottom);
}
#voltar_topo:active,
#voltar_topo:focus,
#voltar_topo:hover{
	box-shadow: 0 1rem 3rem rgba(0,0,0,.5)!important;
}
/* LAZY */
.img{
	position:relative;
	display:inline-block;
}
.grande{
	filter: blur(2px);
	-webkit-filter: blur(2px);
	transition: 1s;
}
.bg{
	background-position: center;
	background-size: cover;
}
.trocafoto{
	filter: blur(0);
	-webkit-filter: blur(0);
}
img.grande,
img.trocafoto{
	position: relative;
}
.carregando{
	position: absolute;
	left: 50%;
	top: 50%;
	color: var(--lazy-cor);
	transform: translate(-50%,-50%);
	pointer-events: none;
	filter: drop-shadow(0px 0px 2px var(--lazy-borda)) drop-shadow(0px 0px 2px var(--lazy-borda)) drop-shadow(0px 0px 2px var(--lazy-borda));
}
.img .grande + .carregando{
	filter: blur(2px) drop-shadow(0px 0px 2px var(--lazy-borda)) drop-shadow(0px 0px 2px var(--lazy-borda)) drop-shadow(0px 0px 2px var(--lazy-borda));
	transition: 1s;
}
/* BANNER */
.banner-sombra{
	padding-bottom: 46px;
	min-height: 400px;
}
.banner-sombra >div{
	padding-top: 3rem;
	padding-bottom: 3rem;
}
#banner .swiper-slide{
	background-size: cover;
	background-position: center;
}
@media(min-width: 576px){
	.banner-sombra{
		min-height: 500px;
	}
}
@media(min-width: 768px){
	.banner-sombra{
		min-height: 600px;
	}
}
@media(min-width: 992px){
	.banner-sombra{
		min-height: 700px;
	}
}
/* WHATSAPP FLOAT */
#whatsapp_float{
	border:none;
	background-color:#59ac23;
	color:#fff!important;
	position:fixed;
	bottom:var(--whatsapp-bottom);
	left:var(--whatsapp-left);
	right:var(--whatsapp-right);
	width:46px;
	height:46px;
	border-radius:8px;
	font-size:22px;
	font-weight:400;
	transition:.2s;
	z-index:1030;
	display: flex!important;
	align-items: center;
	justify-content: center;
}
#whatsapp_float:hover,
#whatsapp_float:active,
#whatsapp_float:focus{
	transform:translateY(-2px);
	transition:.2s
}
#whatsapp_float:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:50%;
	height:100%;
	background:rgba(0,0,0,.1);
	border-radius:8px 0 0 8px
}
/* OUTROS */


















/* CSS PERSONALIZADO DO SIZE */
html,body{
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 27px;
	color: var(--cinza);
}
.form-control:focus,
.form-select:focus{
	border-color:var(--preto);
	box-shadow: 0px 0px 0px .25rem var(--preto-transparente);
}
a:not(.btn):hover,
a:not(.btn):hover strong{
	color: var(--vermelho-claro)!important;
}
strong{
	font-weight: 500!important;
}
h3.h3{
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 24px;
	color: #858990;
	margin-bottom: 4px;
}
h4.h4{
	font-family: 'Voltaire',sans-serif;
	font-weight: 400;
	font-size: 32px;
	line-height: 38px;
	letter-spacing: -1px;
	text-transform: uppercase;
	color: var(--preto);
	margin-bottom:3rem;
	position: relative;
}
h4.h4:after{
	display: block;
	content:'';
	width: 40px;
	height: 2px;
	background-color: var(--vermelho);
	bottom: -24px;
	position: absolute;
}
.text-center h4.h4:after{
	left: 50%;
	margin-left: -20px;
}
h5.h5{
	font-family: 'Voltaire',sans-serif;
	font-weight: 400;
	font-size: 24px;
	line-height: 25px;
	color: #fff;
	letter-spacing: -1px;
}
.navbar-brand img{
	height:48px;
}
.btn{
	border-radius: 0;
	align-items: center;
	justify-content: center;
}
.btn-primary{
	color: #fff!important;
	background-color: var(--vermelho);
	border-color: var(--vermelho);
	font-size: 15px!important;
	font-weight: 400!important;
	line-height: 30px;
	border: 0;
	display: inline-flex!important;
}
.btn-primary:active,
.btn-primary:hover,
.btn-primary:focus-visible{
	background-color: var(--vermelho-escuro)!important;
	border-color: var(--vermelho-escuro)!important;
}
.btn-primary:focus-visible{
	box-shadow: 0 0 0 0.25rem var(--vermelho-transparente)!important;
}
.btn-primary.disabled,
.btn-primary:disabled,
fieldset:disabled .btn-primary{
	background-color: var(--vermelho)!important;
	border-color: var(--vermelho)!important;
	pointer-events: none;
	opacity:.25;
}
.btn-primary.btn-lg{
	padding:15px 30px!important;
	white-space: nowrap;
}
.form-control,
.form-select,
.form-select option{
	font-family: 'Roboto', sans-serif;
	font-size: 15px;
	line-height: 16px;
	font-weight: 400;
	color: var(--cinza);
	border-radius: 0;
}
.form-label,
.form-check-label,
legend{
	font-weight: 500;
	font-size: 14px;
	line-height: 21px;
}
.form-check-input.is-valid~.form-check-label,
.was-validated .form-check-input:valid~.form-check-label{
    color: #fff;
}
.form-control,
.form-select{
	border-radius: 2px;
	height: 44px;
	padding-left: 24px;
	padding-right: 24px;
}
.form-control[type=date],
.form-control[type=time]{
	padding-right: 12px;
}
.form-control::placeholder,
.form-select::placeholder{
	color: rgba(65, 58, 65, 0.4)!important;
}
#mini_busca .form-control,
#mini_busca .form-select{
	padding-right:20px;
	padding-left: 20px;
	height: 60px;
	border-radius: 0;
	font-weight: 500;
}
.fundo-cinza{
	background-color: var(--cinza-claro);
}
.fundo-escuro{
	background-color: var(--preto);
	color: var(--texto-cinza);
}
.fundo-escuro a,
.fundo-escuro h4.h4,
.fundo-escuro .form-check-label{
	color: #fff;
	font-weight: 400;
}
.fundo-escuro .form-check-input:focus{
	box-shadow: 0 0 0 0.25rem #ffffff60!important;
}
.fundo-escuro .form-check-input:checked{
    background-color: #fff;
    border-color: #fff;
}
.fundo-escuro .form-check-input:checked[type=radio]{
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23000'/%3e%3c/svg%3e");
}
#contato{
	padding-bottom: 80px;
}
#contato + #copyright{
	padding-top:0px;
	padding-bottom:80px;
}
textarea{
	height: 150px !important;
	padding-top: 12px !important;
	padding-bottom: 12px !important;
}
#contato button{
	height: 60px;
}
section{
	padding-top: 100px;
	padding-bottom: 100px;
}
#galeria{
	padding-bottom: 0;
}
#galeria >div:first-of-type{
	padding-bottom: 100px;
}
#menu{
	padding-top: 16px;
	padding-bottom: 16px;
	background: #fff;
	box-shadow: 0px 0px 10px 0px var(--preto-transparente);
}
#menu a{
	line-height: 30px;
	font-weight: 500;
	color: var(--preto);
}
#menu .nav-link{
	margin-right:9px;
}
#menu .btn-primary{
	padding-left:20px!important;
	padding-right: 20px!important;
}
#menu a.active{
	color:var(--vermelho);
}
#menu .btn i{
	margin-right: 10px;
}
#menu .btn-primary{
	padding-top: 10px!important;
	padding-bottom: 10px!important;
}
#topo{
	color: var(--cinza);
	font-size: 14px;
	line-height: 25px;
	margin-top: 24px;
	text-align: center;
	border-top: 1px solid var(--cinza-claro);
}
#topo strong,
#topo a{
	color: var(--preto);
	font-weight: 500;
}
#menu #spy a{
	padding-right: 8px;
	padding-left: 8px;
}
#topo a{
	padding-left: 0;
	padding-right: 0;
}
#topo li i{
	margin-right: 8px;
}
#copyright{
	padding-top: 3rem;
	padding-bottom: 3rem;
	font-size: 14px;
	line-height: 21px;
}
#copyright a{
	color: #fff;
	font-weight: 500;
}
#menu .nav-item{
	margin-top: 1rem;
}
#banner .carregando{
	margin-top: -20px;
}
#banner h2{
	color: #fff;
	font-family: 'Voltaire', sans-serif;
	font-weight: 400;
	font-size: 50px;
	line-height: 60px;
	letter-spacing: -1px;
	text-transform: uppercase;
}
#banner .texto{
	color: #fff;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 28px;
	margin-top: 24px;
}
#mini_busca{
	position: relative;
	z-index: 10;
}
#mini_busca .card{
	border-radius: 0;
	border: 0;
	margin-top: -46px;
}
#mini_busca .card-body{
	box-shadow: 0px 0px 32px rgba(65, 58, 65, 0.08);
	padding: 30px 31px;
}
#mini_busca .btn{
	height: 60px;
	width: 100%;
}
.suite-capa{
	margin-top:3rem;
}
.suite-capa .quadro{
	overflow: hidden;
	background-color: var(--preto);
}
.suite-capa .quadro:after{
	content: '';
	background-color: rgba(0,0,0,0);
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	transition:.3s;
}
.suite-capa .bg{
	width: 100%;
	height: 100%;
}
.suite-capa .nome{
	text-align: center;
	margin: -40px 32px 0 32px;
	background-color: #fff;
	position: relative;
	z-index: 20;
	padding: 24px 28px;
}
.suite-capa .h5{
	font-family: 'Voltaire',sans-serif;
	font-weight: 400;
	font-size: 24px;
	line-height: 25px;
	letter-spacing: -1px;
	text-transform: uppercase;
	color: var(--preto);
}
.suite-capa .nome div{
	font-weight: 500;
	font-size: 16px;
	line-height: 27px;
	color: var(--texto-cinza);
}
.suite-capa a:hover .nome{
	background-color: var(--preto);
}
.suite-capa a:hover .h5{
	color: #fff;
}
.suite-capa a:hover .bg{
	transition:5s;
	transform: scale(1.25) rotate(2deg);
}
.suite-capa a:hover .quadro:after{
	background-color: rgba(0,0,0,0.3);
}
#nav-galerias{
	justify-content: center;
	margin-top: -52px;
	margin-bottom: 40px;
	border: 0;
}
#nav-galerias a{
	font-weight: 500;
	color: var(--preto);
	margin-left: 30px;
	cursor: pointer;
}
#nav-galerias a:first-of-type{
	margin-left: 0;
}
#nav-galerias a.active{
	color: var(--vermelho);
}
#nav-galeriasContent{
	margin-left: -12px;
	margin-right: -12px;
}
.swiper-galeria .swiper-slide{
	width: auto!important;
	background: var(--preto);
}
.swiper-galeria .bg{
	display: inline-block!important;
	width: 250px!important;
	height: 250px!important;
}
.servico{
	text-align: center;
	margin-top: 50px;
}
.servico .img>img{
	margin-bottom:16px;
}
.servico .descricao{
	margin-top: 24px;
	font-size: 15px;
	line-height: 24px;
}
#estrutura{
	padding-top: 0;
	padding-bottom: 0;
}
#estrutura .bg{
	height:400px;
}
#estrutura .dados{
	padding-top: 100px;
	padding-bottom: 50px;
}
.estrutura ul{
	font-size: 14px;
	line-height: 25px;
	padding-left: 15px;
}
.banner_pequeno{
	padding-bottom: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	height: 280px;
}
.banner_pequeno .carregando{
	margin-top: -20px;
}
.banner_pequeno h5{
	font-size: 32px;
	line-height: 38px;
}
.banner_pequeno h3{
	font-family: 'Open Sans',sans-serif;
	font-size: 16px;
	line-height: 28px;
	color: #fff;
}
#banner_suite{
	height: 280px;
}
#banner_reserva{
	height: 200px;
	padding-bottom: 0;
}
#banner_reserva .carregando{
	margin-top: 0;
}
#suite .texto{
	font-size: 16px;
	line-height: 27px;
}
#suite h5{
	font-size: 24px;
	line-height: 25px;
	color: var(--preto);
}
#suite h3{
	font-size: 16px;
	line-height: 27px;
	margin-top: 12px;
	padding-bottom: 35px;
	margin-bottom: 35px;
	color: var(--texto-cinza);
	position: relative;
}
#suite h3:after{
	bottom: 0px;
	display: block;
	content:'';
	width: 40px;
	height: 2px;
	background-color: var(--vermelho);
	bottom: 0px;
	position: absolute;
}
#suite ul{
	padding-left: 15px;
}
#swiper-thumb{
	margin-bottom: 10px;
	margin-top: 50px;
}
#swiper-thumbs .swiper-slide{
	cursor: pointer;
	opacity: .5;
}
#swiper-thumbs .swiper-slide-thumb-active{
	opacity: 1;
}
#reserva .form-control,
#reserva .form-select{
	border: 0;
}
#reserva fieldset{
	border: 1px dashed var(--vermelho);
	border-radius: 2px;
	padding: 1.5rem;
	margin-top: .5rem;
}
#reserva fieldset + fieldset{
	margin-top: 1.25rem;
}
#reserva legend{
	float: none;
	width: auto;
	padding-left: .25rem;
	padding-right: .25rem;
	margin-left: -.5rem;
	margin-bottom: -8px;
}
#mapa{
	height: 250px;
	padding: 0;
}
.iframe iframe{
	width: 100%;
	height: 100%;
}
#img6{
	height:auto;
	width:auto;
	max-width:100%;
}
@media(min-width: 576px){
	.swiper-galeria .swiper-slide,
	.swiper-galeria .bg{
		width: 350px!important;
		height: 350px!important;
	}
	#estrutura .dados{
		width: 516px;
		margin: auto;
	}
	#estrutura .bg{
		height:450px;
	}
}
@media(min-width: 768px){
	#estrutura .dados{
		margin: 0;
		width: 336px;
		padding-top: 50px;
	}
	#estrutura .impar .dados{
		padding-left: 50px;
	}
	#estrutura .par .dados{
		padding-right: 50px;
		margin-left: auto;
	}
	#estrutura .bg{
		height: 100%;
		min-height:500px;
	}
}
@media(min-width: 992px){
	#menu{
		padding-top: 92px;
		padding-bottom: 32px;
	}
	.navbar-brand img{
		height:56px;
	}
	#menu .nav-item{
		margin-top: 0;
	}
	#menu .btn-primary{
		padding-top: 15px!important;
		padding-bottom: 15px!important;
		margin-left: 8px;
	}
	#topo{
		position: absolute;
		left: 0;
		right: 0;
		border-radius: 0;
		top: 0;
		height: 60px;
		display:flex;
		align-items: center;
		margin-top: 0;
		border: 0;
		background-color: var(--cinza-claro);
	}
	#topo .linha_separa{
		display: none;
	}
	#topo .container{
		display: flex;
	}
	#topo li{
		white-space: nowrap;
	}
	#menu.rolou{
		padding-top: 48px!important;
		padding-bottom: 8px;
	}
	#menu.rolou #topo{
		height: 40px;
	}
	#menu.rolou .btn-primary{
		padding-top: 5px!important;
		padding-bottom: 5px!important;
	}
	#estrutura .dados{
		width: 456px;
		padding-top: 80px;
		padding-bottom: 80px;
	}
	#estrutura .impar .dados{
		padding-left: 80px;
	}
	#estrutura .par .dados{
		padding-right: 80px;
	}
	#swiper-thumb{
		margin-top: 0px;
	}
}
@media(min-width: 1200px){
	#menu .nav-link{
		margin-right: 14px;
	}
	#estrutura .dados{
		width: 546px;
	}
}
@media(min-width: 1400px){
	#estrutura .dados{
		width: 636px;
	}
}
