/* FONTS SITE */
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;600;700;800&display=swap');

/* 
font-family: 'Rubik', sans-serif;
color: #000000;
color: #2b2b22;
color: #707371;
color: #cccc;
color: #ffff;
color: #C3002F;
color: #820120;

*/

*{
	font-family: 'Rubik', sans-serif;

}

ol, ul {
	list-style: none;
}

p{
	font-weight: 300;
}

a{
	text-decoration: none;
	color: inherit;
}

a:hover{
	color: inherit;
}

/* FONTES PADRÃO */
.title-banner{
	color: #373235;
	font-size: 48px;
	font-weight: 700;
	margin-bottom: 60px;
	max-width: 540px;
}

.title-section{
	color: #373235;
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    max-width: 400px;
    margin: 0 auto;
}

/* ESPAÇAMENTOS */
.space{
	margin: 50px 0;
}

.space-margin{
	margin: 90px 0;
}

/* BOTÕES */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
	display: none;
}

button{
	outline: 0;
	border: 0;
	background: none;
	text-transform: none!important;
}

.pesquisa{
	margin-bottom: 0;
}

.input-search {
	border: 1px solid #3F3F3FD9;
	border-radius: 20px;
	background: #ffff;
	width: 100%;
/* 	height: 40px; */
	padding: 5px 10px;
	color: #707070;
	outline: none;
}

.input-search::placeholder{
	font-size: 12px;
	color: #cccc;
}

.search-btn {
	position: absolute;
	width: 50px;
/* 	height: 40px; */
	padding: 10px;
	font-size: 20px;
	border-radius: 0px 20px 20px 0px;
	background: transparent;
	color: #3F3F3FD9;
	border: none;
	outline: none;
	margin-left: -50px;
	transition: 0.2s;
}

/* BOTÃO PADRÃO */
.btn-default {
	display: block;
	position: relative;
/* 	margin: auto; */
	width: 100%;
	max-width: 260px;
	height: 55px;
	font-weight: 600;
	font-size: 18px;
	transition-delay: 0.6s;
	overflow: hidden;
	border-radius: 30px;
}

.btn-default span {
	position: absolute;
	z-index: 1;
/* 	padding-top: 15px; */
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	border-radius: 30px;
	text-align: center;
	transition: transform 0.5s ease;

}

.btn-default img {
	height: 23px;
    display: block;
    position: relative;
    object-fit: contain;
    padding-left: 10px;
}

.btn-default span:first-child {
	color: #fff;
	background: #BE4B5B;
	opacity: 0.7;

}

.btn-default span:last-child {
	color: #ffff;
	background: #BE4B5B;

}

.btn-default:hover span:last-child {
	transform: translateX(-240px);

}

#btn-whatsapp{
	background-color: #BE4B5B;
	width: 100%;
	max-width: 260px;
	height: 50px;
	font-weight: 600;
	font-size: 18px;
	transition: 0.6s;
	overflow: hidden;
	border-radius: 30px;
	color: #ffff;
}

#btn-whatsapp:hover{
	background-color: #DFC9CC;
	color: #BE4B5B;
}

#btn-map{
	background-color: #373235;
	width: 100%;
	max-width: 260px;
	height: 50px;
	font-weight: 600;
	font-size: 18px;
	transition: 0.6s;
	overflow: hidden;
	border-radius: 30px;
	color: #ffff;
}

#btn-map:hover{
	background-color: #776E73;
	
}

.back-btn {
	position: relative;
	color: #BE4B5B;	
}

.back-btn:before {
	content: '\f060';
	font-family: "Font Awesome 6 Free";
	font-size: 14px;
	font-weight: 900;
	border-radius: 50%;
	background: #FDF5EC;
	padding: 5px 6px;
	margin-right: 5px;
}

.back-btn:after {
	content: '|';
	position: absolute;
	font-size: 9px;
	font-weight: 900;
	left: 3px;
	top: 4px;
}

@media(max-width: 998px){
	#btn-whatsapp,
	#btn-map{
		font-size: 16px;
	}
}

@media(max-width: 576px){
	.btn-default{
		max-width: 90%;
	}
	.btn-default:hover span:last-child {
		transform: translateX(-88%);

	}

}


/* MENU */
#menu-mobile{
	display: none;
}

.border-mobile{
	display: none;
	width: 100%;
	height: 32px;
	background-color: #DFC9CC;
}

#button-mobile {
	position: relative;
	width: 40px;
	height: 45px;
	display: flex;
	flex-direction: column;
	justify-content: space-evenly;
	z-index: 9999;
	outline: 0;
	border: 0;
	z-index: -1;
}

.line {
	width: 100%;
	height: 5px;
	background-color: #3F3F3FD9;
	transition: transform 0.3s;
	/* position: absolute; */
}

#menu-mobile .navbar-toggler{
	box-shadow: none;
	border: none;
}

#menu-mobile .offcanvas{
	height: min-content;
	width: 100%;
	border-left: 0;
	background-color: #DFC9CC;

}

#menu-mobile .offcanvas-backdrop{
	height: auto;
}

#menu-mobile .offcanvas-header{
	display: initial;
	text-align: right;
	padding: 10px;

}

#menu-mobile .btn-close{
	margin: 10px 20px 0 0;
}

#menu-mobile .offcanvas-body{
	padding: 0px 70px;
	margin-bottom: 50px;
}

#menu-mobile .offcanvas-body .nav-link{
	padding: 0px;
}

.navbar{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
}

.brand img{
	height: 165px;
}

#menu-desktop{
	display: flex;
/* 	justify-content: space-between; */
	align-items: center;
}

#menu li{
	position: relative;
}

#menu li a{
	font-weight: 500;
	transition: 1s ease;
}

#menu li a:hover{
	color: #BE4B5B;

}

#menu li:after{
	content: "";
	width: 2px;
	height: 2px;
	border-radius: 1px;
	background-color: #FCEFDF;
	position: absolute;
	top: 0;
	z-index: -1;
	transition: width 1s, height 1s, border-radius 1s ease;
}

#menu li:hover:after{
	width: 30px;
	height: 30px;
	border-radius: 15px;

}

@media(min-width: 1140px){
/* 	#menu-desktop{
		padding: 0 5%;
	} */
}

@media(max-width: 1140px){
	.navbar-brand img {
		height: 130px;
	}

}

@media(max-width: 998px){
	#menu-desktop{
		display: none;
	}

	#menu-mobile{
		display: block;
	}

	.border-mobile{
		display: block;
		height: 25px;
	}

}

@media(max-width: 576px){
	#menu-desktop .navbar-brand img {
		height: 100px;
	}

	#menu-mobile .navbar-brand img {
		height: 100px;
	}

	.border-mobile{
		height: 25px;
	}

}

/* FOOTER */
footer{
	background-color: #BE4B5B;
	color: #D6CDD2;

}

.description-footer img{
	filter: brightness(10);
}

.wraper-description-footer{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-areas:
		"header header"
		"main main"
		"footer footer";
}

.wraper-description-footer p,
.wraper-description-footer a{
	font-size: 14px;
	padding: 0 0 5px 0;
}

.nav-juridico .nav-link.active,
.nav-footer .nav-link.active{
	color: #ffff!important;
	font-weight: 500;
}

.contato a:hover,
.contato p:hover,
.nav-juridico a:hover,
.nav-footer a:hover{
	color: #ffff;
}

.contato h4{
	color: #ffff;
	font-weight: 500;
}

.contato h5{
	color: #ffff;
	font-weight: 300;
}

.wraper-redes-sociais{
	margin-top: -90px;
	grid-area: main;
}

.redes-sociais{
	display: flex;
}

.redes-sociais p{
	font-size: 12px;
}

#socials-icon {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: #ffff;
	display: flex;
	justify-content: center;
	align-items: center;
}

#socials-icon i {
	color: #BE4B5B;
	font-size: 16px;
}

.location{
	display: flex;
/* 	align-items: center; */
}

.credits{
	grid-area: footer;
	display: flex;
}

.credits img{
	height: 22px;
}

@media(max-width: 576px){
	footer .container{
		padding: 0 10%;
	}

	.wraper-description-footer{
		display: initial

	}

	.nav-footer,
	.nav-juridico,
	.contato{
		margin-top: 20px;

	}

	.contato h4:nth-of-type(2){
		margin-top: 20px;
	}

	.wraper-description-footer p, 
	.wraper-description-footer a {
		font-size: 18px;

	}

	.location p{
		font-size: 13px;
	}

	.wraper-redes-sociais {
		margin-top: 35px;
	}

	#socials-icon{
		width: 50px;
		height: 50px;
	}

	#socials-icon i {
		font-size: 20px;
	}

	.description-footer{
		text-align: center;
	}

	.description-footer p{
		text-align: left;
		margin-top: 20px!important;
	}

	.description-footer img{
		height: 60px;
	}

	.credits {
		flex-wrap: wrap;
		flex-direction: column;
		text-align: center;
	}

}

/* CARDS ARTIGOS */

#articles .card {
	border: none;
	box-shadow: 0px 3px 6px #00000029;
	border-radius: 10px;
}

#articles .card .card-img-top {
	height: 230px;
	object-fit: cover;
	padding: 25px 25px 0;
}

#articles .card .card-body {
	padding: 25px;
}

#articles .card .card-title {
	height: 50px;
	text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

#articles .card .view-details:hover {
	color: #BE4B5B;
}

/* PRELOADER */

.preloader {
	position: fixed;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #FFFFFF;
	z-index: 999;
	transition: 1s;
}

.preloader .circle-1,
.preloader .circle-2,
.preloader .circle-3 {
	position: absolute;
	width: 0;
	height: 0;
	border-radius: 50%;
	background: #DFC9CC;
	transition: 0.2s;
	opacity: 1;
}

.preloader .circle-1 {
	animation: growAndFade linear 3s infinite;
}

.preloader .circle-2 {
	animation: growAndFade -1s linear 3s infinite;
}

.preloader .circle-3 {
	animation: growAndFade -2s linear 3s infinite;
}

@keyframes growAndFade {
	0%   {width: 0; height: 0; background: #DFC9CC;}
	100% {width: 300px; height: 300px; background: transparent;}
}

/* SWIPPER */

.swiper {
	width: 100%;
	height: 100%;
}

.swiper-slide {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 350px;
}

.grabbable {
	cursor: move;
	cursor: grab;
	cursor: -moz-grab;
	cursor: -webkit-grab;
}

.grabbable:active {
	cursor: grabbing;
	cursor: -moz-grabbing;
	cursor: -webkit-grabbing;
}

@media(min-width: 576px) {
	.swiper-wrapper {
		left: calc((100% - 540px + (var(--bs-gutter-x) * .5)) / 2);
	}
}

@media(min-width: 768px) {
	.swiper-wrapper {
		left: calc((100% - 720px + (var(--bs-gutter-x) * .5)) / 2);
	}
}

@media(min-width: 992px) {
	.swiper-wrapper {
		left: calc((100% - 960px + (var(--bs-gutter-x) * .5)) / 2);
	}
}

@media(min-width: 1200px) {
	.swiper-wrapper {
		left: calc((100% - 1140px + (var(--bs-gutter-x) * .5)) / 2);
	}
}

@media(min-width: 1400px) {
	.swiper-wrapper {
		left: calc((100% - 1320px + (var(--bs-gutter-x) * .5)) / 2);
	}
}