@font-face {
	font-family: c-lato;
	src: url('fonts/Lato-Bold.woff2');
}

.c-lato {
	font-family: 'c-lato';
}

/* -------------------------------------] */
/* -----------------------[ FONTS SIZES ] */
/* -------------------------------------] */

.text-0 {
	font-size: .7em !important;
}

.text-1 {
	font-size: .8em !important;
}

.text-2 {
	font-size: .9em !important;
}

.text-3 {
	font-size: 1em !important;
}

.text-4 {
	font-size: 1.2em !important;
}

.text-4-5 {
	font-size: 1.35em !important;
}

.text-5 {
	font-size: 1.50em !important;
}

.text-6 {
	font-size: 1.80em !important;
}

.text-7 {
	font-size: 2em !important;
}

.text-8 {
	font-size: 2.30em !important;
}

.text-9 {
	font-size: 2.50em !important;
}

.text-10 {
	font-size: 2.75em !important;
}

.text-11 {
	font-size: 3em !important;
}

.text-12 {
	font-size: 3.5em !important;
}

.text-13 {
	font-size: 4em !important;
}

.text-14 {
	font-size: 4.5em !important;
}

.text-15 {
	font-size: 5em !important;
}

.text-16 {
	font-size: 5.33em !important;
}

.text-17 {
	font-size: 5.66em !important;
}

.text-18 {
	font-size: 6em !important;
}

.text-19 {
	font-size: 6.33em !important;
}

.text-20 {
	font-size: 6.66em !important;
}

@media (min-width: 576px) {
	.text-sm-0 {
		font-size: .7em !important;
	}

	.text-sm-1 {
		font-size: .8em !important;
	}

	.text-sm-2 {
		font-size: .9em !important;
	}

	.text-sm-3 {
		font-size: 1em !important;
	}

	.text-sm-4 {
		font-size: 1.2em !important;
	}

	.text-sm-5 {
		font-size: 1.50em !important;
	}

	.text-sm-6 {
		font-size: 1.80em !important;
	}

	.text-sm-7 {
		font-size: 2em !important;
	}

	.text-sm-8 {
		font-size: 2.30em !important;
	}

	.text-sm-9 {
		font-size: 2.50em !important;
	}

	.text-sm-10 {
		font-size: 2.75em !important;
	}

	.text-sm-11 {
		font-size: 3em !important;
	}

	.text-sm-12 {
		font-size: 3.5em !important;
	}

	.text-sm-13 {
		font-size: 4em !important;
	}

	.text-sm-14 {
		font-size: 4.5em !important;
	}

	.text-sm-15 {
		font-size: 5em !important;
	}

	.text-sm-16 {
		font-size: 5.33em !important;
	}

	.text-sm-17 {
		font-size: 5.66em !important;
	}

	.text-sm-18 {
		font-size: 6em !important;
	}

	.text-sm-19 {
		font-size: 6.33em !important;
	}

	.text-sm-20 {
		font-size: 6.66em !important;
	}
}

@media (min-width: 768px) {
	.text-md-0 {
		font-size: .7em !important;
	}

	.text-md-1 {
		font-size: .8em !important;
	}

	.text-md-2 {
		font-size: .9em !important;
	}

	.text-md-3 {
		font-size: 1em !important;
	}

	.text-md-4 {
		font-size: 1.2em !important;
	}

	.text-md-5 {
		font-size: 1.50em !important;
	}

	.text-md-6 {
		font-size: 1.80em !important;
	}

	.text-md-7 {
		font-size: 2em !important;
	}

	.text-md-8 {
		font-size: 2.30em !important;
	}

	.text-md-9 {
		font-size: 2.50em !important;
	}

	.text-md-10 {
		font-size: 2.75em !important;
	}

	.text-md-11 {
		font-size: 3em !important;
	}

	.text-md-12 {
		font-size: 3.5em !important;
	}

	.text-md-13 {
		font-size: 4em !important;
	}

	.text-md-14 {
		font-size: 4.5em !important;
	}

	.text-md-15 {
		font-size: 5em !important;
	}

	.text-md-16 {
		font-size: 5.33em !important;
	}

	.text-md-17 {
		font-size: 5.66em !important;
	}

	.text-md-18 {
		font-size: 6em !important;
	}

	.text-md-19 {
		font-size: 6.33em !important;
	}

	.text-md-20 {
		font-size: 6.66em !important;
	}
}

@media (min-width: 992px) {
	.text-lg-0 {
		font-size: .7em !important;
	}

	.text-lg-1 {
		font-size: .8em !important;
	}

	.text-lg-2 {
		font-size: .9em !important;
	}

	.text-lg-3 {
		font-size: 1em !important;
	}

	.text-lg-4 {
		font-size: 1.2em !important;
	}

	.text-lg-5 {
		font-size: 1.50em !important;
	}

	.text-lg-6 {
		font-size: 1.80em !important;
	}

	.text-lg-7 {
		font-size: 2em !important;
	}

	.text-lg-8 {
		font-size: 2.30em !important;
	}

	.text-lg-9 {
		font-size: 2.50em !important;
	}

	.text-lg-10 {
		font-size: 2.75em !important;
	}

	.text-lg-11 {
		font-size: 3em !important;
	}

	.text-lg-12 {
		font-size: 3.5em !important;
	}

	.text-lg-13 {
		font-size: 4em !important;
	}

	.text-lg-14 {
		font-size: 4.5em !important;
	}

	.text-lg-15 {
		font-size: 5em !important;
	}

	.text-lg-16 {
		font-size: 5.33em !important;
	}

	.text-lg-17 {
		font-size: 5.66em !important;
	}

	.text-lg-18 {
		font-size: 6em !important;
	}

	.text-lg-19 {
		font-size: 6.33em !important;
	}

	.text-lg-20 {
		font-size: 6.66em !important;
	}
}

@media (min-width: 1200px) {
	.text-xl-0 {
		font-size: .7em !important;
	}

	.text-xl-1 {
		font-size: .8em !important;
	}

	.text-xl-2 {
		font-size: .9em !important;
	}

	.text-xl-3 {
		font-size: 1em !important;
	}

	.text-xl-4 {
		font-size: 1.2em !important;
	}

	.text-xl-5 {
		font-size: 1.50em !important;
	}

	.text-xl-6 {
		font-size: 1.80em !important;
	}

	.text-xl-7 {
		font-size: 2em !important;
	}

	.text-xl-8 {
		font-size: 2.30em !important;
	}

	.text-xl-9 {
		font-size: 2.50em !important;
	}

	.text-xl-10 {
		font-size: 2.75em !important;
	}

	.text-xl-11 {
		font-size: 3em !important;
	}

	.text-xl-12 {
		font-size: 3.5em !important;
	}

	.text-xl-13 {
		font-size: 4em !important;
	}

	.text-xl-14 {
		font-size: 4.5em !important;
	}

	.text-xl-15 {
		font-size: 5em !important;
	}

	.text-xl-16 {
		font-size: 5.33em !important;
	}

	.text-xl-17 {
		font-size: 5.66em !important;
	}

	.text-xl-18 {
		font-size: 6em !important;
	}

	.text-xl-19 {
		font-size: 6.33em !important;
	}

	.text-xl-20 {
		font-size: 6.66em !important;
	}
}

.text-1rem {
	font-size: 16px !important;
	font-size: 1rem !important;
}

/* -----------------------------------] */
/* ---------------------------[ LINKS ] */
/* -----------------------------------] */

.link-hover {
	position: relative !important;
}

.link-hover::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 2px;
	background-color: #000000;
	bottom: -2px;
	left: 0;
	transform-origin: right;
	transform: scaleX(0);
	transition: transform .3s ease-in-out;
}

.link-hover:hover::before,
.nav-item:hover .link-hover::before {
	transform-origin: left;
	transform: scaleX(1);
}

.link-hover.white::before {
	background-color: #ffffff;
}

/* ------------------------------------------] */
/* ---------------------------[ LOADING PAGE ] */
/* ------------------------------------------] */

#loading-screen {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: Arial, sans-serif;
	font-size: 24px;
	z-index: 1021;

	i[class*="bounce"] {
		animation: 1.4s ease-in-out 0s normal both infinite bouncedelay;
        border-radius: 100%;
        box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
        display: inline-block;
        height: 18px;
        width: 18px;
        font-size: 18px;
        margin: 0 3px;
	}

	.bounce1 {
		animation-delay: -0.32s !important;
	}

	.bounce2 {
		animation-delay: -0.16s !important;
	}
}

@keyframes bouncedelay {
	0%, 80%, 100% {
		transform: scale(0);
	}

	40% {
		transform: scale(1);
	}
}

/* ------------------------------------------] */
/* ---------------------------[ LOADING AJAX ] */
/* ------------------------------------------] */

.lds-roller {
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 999999999;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #000000a1;
}
.lds-roller:not(.show) {
	display: none;
}
.lds-roller div {
	animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	transform-origin: 40px 40px;
}
.lds-roller div:after {
	content: " ";
	display: block;
	position: absolute;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #fff;
	margin: -4px 0 0 -4px;
}
.lds-roller div:nth-child(1) {
	animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after {
	top: 63px;
	left: 63px;
}
.lds-roller div:nth-child(2) {
	animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after {
	top: 68px;
	left: 56px;
}
.lds-roller div:nth-child(3) {
	animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after {
	top: 71px;
	left: 48px;
}
.lds-roller div:nth-child(4) {
	animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after {
	top: 72px;
	left: 40px;
}
.lds-roller div:nth-child(5) {
	animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after {
	top: 71px;
	left: 32px;
}
.lds-roller div:nth-child(6) {
	animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after {
	top: 68px;
	left: 24px;
}
.lds-roller div:nth-child(7) {
	animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after {
	top: 63px;
	left: 17px;
}
.lds-roller div:nth-child(8) {
	animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after {
	top: 56px;
	left: 12px;
}
@keyframes lds-roller {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* -------------------------------------] */
/* -------------------------------[ AUX ] */
/* -------------------------------------] */

.cursor-pointer {
	cursor: pointer !important;
}

.hr-custom {
	width: 25px; 
	margin: 10px auto; 
	border: 0; 
	border-top: 2px solid #000; 
}

.b-example-divider {
	width: 100%;
	height: 3rem;
	background-color: var(--bs-white);
}

.b-example-divider-dark {
	width: 100%;
	height: 3rem;
	background-color: var(--bs-black);
}

.text-justify {
	text-align: justify !important;
}

.text-responsive {
	line-height: 1;
}

/* -------------------------------------] */
/* ----------------------------[ TYPING ] */
/* -------------------------------------] */

.typing-effect {
	visibility: hidden; 
	position: relative;
}

.typing-effect.typing-active::after {
	content: '';
	display: inline-block;
	width: 2px;
	height: 1em;
	background: black;
	margin-left: 2px;
	vertical-align: bottom;
	animation: blink 1s steps(2, start) infinite;
}

@keyframes blink {
	0%, 100% { opacity: 1; }
	50% { opacity: 0; }
}

/* -------------------------------------] */
/* -----------------------------[ TOAST ] */
/* -------------------------------------] */

.toast-body {
	background-color: var(--bs-body-bg);
	border-bottom-left-radius: var(--bs-border-radius);
	border-bottom-right-radius: var(--bs-border-radius);
}

.toast-header {
	border-bottom: 0px !important;
}

/* --------------------------------------] */
/* ----------------------------[ CAPTCHA ] */
/* --------------------------------------] */

.grecaptcha-badge {
	display: none !important;
}

/* -------------------------------------] */
/* ----------------------------[ COOKIE ] */
/* -------------------------------------] */

#wrapper-cookies {
	position: fixed;
	z-index: 99999;
	width: 100%;
}

.container-cookie {
	display: flex;
	justify-content: center;
	align-items: center;
}

.row-cookie {
	border-radius: 8px;
	box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
	position: fixed;
	bottom: 10px;
	background: var(--color-custom-white);
	justify-content: center;
	align-items: center;
	max-width: 1024px;
	border: 5px solid var(--color-custom-primary);
	z-index: 99999;
}

.row-cookie {
	padding: 20px;
}

.row-cookie.desktop .col-cookie p {
	margin-bottom: 0;
	line-height: 16px;
	color: var(--color-custom-primary);
}

.row-cookie.desktop .col-cookie a {
	color: var(--color-custom-primary);
}

.btn-cookie {
	font-size: 14px;
	border-radius: 8px;
	background-color: var(--color-custom-primary);
	border-color: var(--color-custom-primary);
	color: var(--color-custom-white);
	transition: ease-in-out .3s;
	text-align: center;
	width: 100%;
	padding: 8px;
}

.btn-cookie:hover {
	background-color: var(--color-custom-white);
	border-color: var(--color-custom-primary);
	color: var(--color-custom-primary);
}

@media(max-width: 991px) {
	.row-cookie {
		max-width: 95%;
	}
}

/* -------------------------------------] */
/* ----------------------------[ HEADER ] */
/* -------------------------------------] */

header {
	transition: all 0.3s ease; 
	padding: 1rem 0; 
	background-color: #2d559e;

	.mobile-open {
		transform: scale(1.5);
	}

	.nav-item {
		display: flex;
		align-items: center;
		position: relative;
	}

	a.nav-link {
		color: #ffffff !important;
		transition: all 0.3s ease;
	}

	a.btn-header {
		background-color: #4fa587;
		border: 1px solid #4fa587;
		color: #ffffff;
		border-radius: 100px;
		margin-left: var(--bs-nav-link-padding-x);
		transition: all 0.3s ease;
	}

	a.btn-header:hover {
		background-color: transparent;
		color: #4fa587;
	}
	
	.img-not-scroll {
		display: block;
	}

	.img-scroll {
		display: none;
	}

	.open-menu-mobile {
		width: 45px;
		height: 45px;
		color: #fff;
		border-radius: .4rem;
		font-size: 21px;
	}

	.nav-item:has(.dropdown) {
		padding-right: 10px;
	}

	.nav-item:has(.dropdown):before {
		content: '\F282';
		font-family: bootstrap-icons;
		color: #ffffff;
		position: absolute;
		top: 0;
		right: 0;
		height: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-end;
	}

	.nav-item .dropdown {
		position: absolute;
		top: 150%;
		left: calc(50% - 125px);
		width: 250px;
		padding: 0px !important;
		pointer-events: none;
		opacity: 0;
		z-index: 99;
		transition: opacity .3s, top .3s;
		
		li {
			display: flex;
    		flex-direction: column;
			padding: 5px 15px;
			border-bottom: 1px solid #dcdcdc;
			background: #fff;
			position: relative;

			a {
				text-decoration: none !important;
				color: #2d559e;
			}

			> .dropdown {
				position: absolute;
				top: 0;
				left: 0%;
				pointer-events: none;
				opacity: 0;
				padding-left: 2px !important;
				z-index: -10;
				transition: opacity 0s;
			}
		}

		li:has(.dropdown):before {
			content: '\F285';
			font-family: bootstrap-icons;
			color: #2d559e;
			position: absolute;
			top: 0;
			right: 5px;
			height: 100%;
			display: flex;
			align-items: center;
		}

		li:nth-last-child(1) {
			border-bottom: none;
		}
	}

	.nav-item:hover > .dropdown {
		top: 100%;
		opacity: 1;
		pointer-events: all;

		li:hover > .dropdown {
			left: 100%;
			opacity: 1;
			pointer-events: all;
			transition: opacity .3s, left .3s;
		}
	}

	.nav-item .dropdown li:hover {
		background: #eee;
	}
}

.close-menu-mobile {
	--bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") !important;
	opacity: 1 !important;
}

@media(max-width: 991px) {
	header {
		img {
			width: 201px !important;
			height: 24px !important;
		}
	}
}

header.scroll-active {
	background-color: #2d559e !important;

	a.nav-link {
		color: #ffffff !important;
	}

	.img-not-scroll {
		display: none;
	}

	.img-scroll {
		display: block;
	}
}

header.header-transparent {
	position: fixed;
	width: 100%;
	background-color: transparent;
}

header.header-transparent.scroll-active {
	background-color: #ffffff;
}

.offcanvas.offcanvas-start {
	width: 300px !important;
}

/* -------------------------------------] */
/* ---------------------------[ BANNERS ] */
/* -------------------------------------] */

.section-banner {
	.owl-banner-custom-controls {
		position: absolute;
		max-width: 100%;
		display: flex;
		flex-direction: row;
		align-content: center;
		justify-content: flex-start;
		align-items: center;
		bottom: 0;
		z-index: 9999;
		padding-bottom: calc(var(--bs-gutter-x) * .5);
		padding-left: calc(var(--bs-gutter-x) * .5);
	}

	.owl-banner-custom-dots {
		display: flex;
		gap: 10px;
		margin-left: 25px;
	}

	.owl-banner-custom-dots .dot {
		width: 12px;
		height: 12px;
		background: rgba(255, 255, 255, 0.5);
		border-radius: 50%;
		cursor: pointer;
		transition: background 0.3s ease;
	}

	.owl-banner-custom-dots .dot.active {
		background: #fff; 
	}

	.owl-banner-prev, .owl-banner-next {
		border: 2px solid var(--bs-white);
		background-color: transparent;
		color: var(--bs-white);
		border-radius: 100%;
		width: 40px;
		height: 40px;
		display: inline-flex;
		justify-content: center;
		align-items: center;
	}

	.owl-banner-prev:hover, .owl-banner-next:hover {
		border: 2px solid var(--bs-white);
		background-color: var(--bs-white);
		color: var(--bs-black);
	}

	.owl-banner-custom-texts {
		position: absolute;
		z-index: 9;
		padding: 12rem;
	}

	.owl-text {
		font-size: 2rem;
		line-height: 2.2rem;
	}

	.owl-link {
		text-decoration: none;
		border: 2px solid var(--bs-white);
		background-color: transparent;
		color: var(--bs-white);
		border-radius: 50px;
		font-size: 1.5rem;
		padding: .8rem 1.5rem;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
		line-height: 1;
	}

	.owl-link:hover {
		border: 2px solid var(--bs-white);
		background-color: var(--bs-white);
		color: var(--bs-black);
	}

	.position-1 {
		left: 0;
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}
	
	.position-2 {
		left: 0;
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.position-3 {
		left: 0;
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-end;
	}
	
	.position-4 {
		left: 50%;
		transform: translateX(-50%);
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}
	
	.position-5 {
		left: 50%;
		transform: translateX(-50%);
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	
	.position-6 {
		left: 50%;
		transform: translateX(-50%);
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-end;
	}
	
	.position-7 {
		right: 0;
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}
	
	.position-8 {
		right: 0;
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	
	.position-9 {
		right: 0;
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-end;
	}
}

/* -------------------------------------] */
/* --------------------------[ WHATSAPP ] */
/* -------------------------------------] */

a.btn-whatsapp-one {
	position: fixed;
	right: 5%;
	background-color: #25D366;
	display: inline-block;
	padding: 0px;
	border-radius: 5px;
	box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.3);
	line-height: 21px;
	height: 80px;
	width: 80px;
	color: #fff !important;
	text-transform: uppercase;
	z-index: 9999;
	font-size: 38px;
	bottom: 5%;
	border-radius: 50%;
	animation: pulse 2s infinite;
	display: flex;
	justify-content: center;
	text-decoration: none;
	align-items: center;
}

a.btn-whatsapp-one:hover {
	background-color: #fff;
	color: #25D366 !important;
	border: 2px solid #25D366;
}

a.btn-whatsapp-one svg {
	position: absolute;
	left: 0;
	bottom: 0;
	top: 0;
	right: 0;
	margin: auto;
	padding: 5px;
}

@keyframes pulse {
	0% {
		-moz-box-shadow: 0 0 0 0 #25D366cc;
		box-shadow: 0 0 0 0 #25D366cc;
	}

	70% {
		-moz-box-shadow: 0 0 0 20px #07dbd700;
		box-shadow: 0 0 0 20px #07dbd700;
	}

	100% {
		-moz-box-shadow: 0 0 0 0 #07dbd700;
		box-shadow: 0 0 0 0 #07dbd700;
	}
}

@media(max-width: 991px) {
	a.btn-whatsapp-one {
		height: 60px;
		width: 60px;
		font-size: 30px;
	}
}

/* -----------------------------------*/

.elemento-flutuante {
	position: fixed;
	bottom: 40px;
	right: 40px;
	overflow: hidden !important;
	z-index: 99999 !important;
}

.whats-icon {
	background-color: #4fcc5c !important;
	padding: 12px 15px;
	border-radius: 5px;
}

.elemento-flutuante .container-itens {
	position: relative;
	max-height: 0 !important;
	z-index: 80 !important;
	background-color: #e1e0e0c7;
	border-radius: 5px;
	bottom: -5px;
	transition: all .1s;
}

.elemento-flutuante:hover .container-itens {
	max-height: 700px !important;
	transition: all .5s;
}

.elemento-flutuante .whats-icon {
	z-index: 9999 !important;
	position: relative;
}

.btn-custom-whatsapp {
	background-color: #fff !important;
	color: #5bcf67 !important;
	margin: 10px 10px 0 10px;
	border-radius: 5px;
	transition: all .5s;
}

.input-group.btn-custom-whatsapp {
	width: auto !important;
}

.input-group.btn-custom-whatsapp a{
	color: #5bcf67 !important;
}

.input-group.btn-custom-whatsapp .input-group-append {
	pointer-events: none !important;
}

.btn-custom-whatsapp:nth-last-child(1) {
	margin-bottom: 15px;
}

.btn-custom-whatsapp:hover {
	background-color: #dcdcdc !important;
}

.placeholder-black::-webkit-input-placeholder {
	color: #000 !important;
}

.placeholder-black:-ms-input-placeholder {
	color: #000 !important;
}

.placeholder-black::placeholder {
	color: #000 !important;
}

/* ---------------------------------] */
/* --------------------------[ FORM ] */
/* ---------------------------------] */

.marker-select {
	position: relative;
}

.marker-select:before {
	content: '\F282';
    position: absolute;
    top: 0;
    right: 0;
    width: 45px;
    height: 100%;
    font-family: bootstrap-icons !important;
    font-size: 20px;
    background-color: #0e1e1c;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
	pointer-events: none;
}

.form-control, .form-select {
	border: 1px solid #2d559e;
}

::-webkit-input-placeholder {
    color: #000000 !important;
}
:-moz-placeholder {
   color: #000000 !important;
   opacity: 1 !important;
}
::-moz-placeholder {
   color: #000000 !important;
   opacity: 1 !important;
}
:-ms-input-placeholder {
   color: #000000 !important;
}
::-ms-input-placeholder {
   color: #000000 !important;
}
::placeholder {
   color: #000000 !important;
}

.container-arquivo {
	input {
		width: 0;
		height: 0;
		opacity: 0;
	}

	label {
		width: 100%;
		height: 38px;
		color: #ffffff;
		border: 1px solid #000000;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		position: relative;
	}

	label::before {
		content: 'PROCURAR';
        position: absolute;
		font-family: 'bangla-mn';
        top: 0;
        right: 0;
        width: 140px;
        height: 100%;
        color: #ffffff;
        background: #000000;
        display: flex;
        align-items: center;
        justify-content: center;
	}

	span {
		color: #000;
		position: absolute;
		top: 0;
		left: 0;
		width: calc(100% - 140px);
		height: 100%;
		display: flex;
		align-items: center;
		padding: 0 .75rem;
	}
}

/* ----------------------------------------] */
/* --------------------------[ BACKGROUNDS ] */
/* ----------------------------------------] */

.bg-light-gray {
	background-color: #ebebeb !important;
}

.bg-gray {
	background-color: #dcdcdc !important;
}

.bg-green {
	background-color: #a7c345 !important;
}

.bg-blue {
	background-color: #224179 !important;
}

.bg-dark-blue {
	background-color: #223f6f !important;
}

/* ------------------------------------] */
/* --------------------------[ BUTTONS ] */
/* ------------------------------------] */

a[class*="btn-"]:not(.disable-transition),
button[class*="btn-"]:not(.disable-transition) {
	transition: all .3s;
}

.btn-blue,
.btn-blue:focus {
	background-color: #2d559e !important;
	border: 1px solid #2d559e !important;
	color: #ffffff !important;
}

.btn-blue:hover {
	background-color: transparent !important;
	color: #2d559e !important;
}

.btn-dark-blue,
.btn-dark-blue:focus {
	background-color: #254479 !important;
	border: 1px solid #254479 !important;
	color: #ffffff !important;
}

.btn-dark-blue:hover {
	background-color: transparent !important;
	color: #254479 !important;
}

.btn-green,
.btn-green:focus {
	background-color: #a7c345 !important;
	border: 1px solid #a7c345 !important;
	color: #ffffff !important;
}

.btn-green:hover {
	background-color: transparent !important;
	color: #a7c345 !important;
}

/* ---------------------------------] */
/* --------------------------[ TEXT ] */
/* ---------------------------------] */

.text-color-light-blue {
	color: #325eaf !important;
}

.text-color-blue {
	color: #25447a !important;
}

.text-color-dark-blue {
	color: #23417a !important;
}

/* ------------------------------------] */
/* --------------------------[ GENERAL ] */
/* ------------------------------------] */

.owl-carousel .owl-stage {
	display: flex;
	align-items: stretch;
}

#mapWithSinglePoint {
	height: 450px;
}

.banner-custom {
	background-color: #2D559E;

	& .title-banner {
		font-size: 11em;
		font-family: 'c-lato';
	}

	& .wave {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		z-index: 999;
	}
}

@media(min-width: 991px) {
	.banner-custom.representantes {
		&.title-banner {
			font-size: 9em;
		}

		& .wave {
			bottom: -25px;
		}
	}
}

.banner-custom.agro {
	height: 400px;

	& .title-banner {
		color: #a7c345 !important;
        font-size: 20em;
        position: absolute;
        top: -200px;
        left: 0;
        height: 200px;
	}

	& img {
		position: absolute;
		bottom: 0;
		left: 45%;
		width: auto !important;
		z-index: 99;
	}
}

.banner-custom.bebedouro {
	height: 400px;

	& .title-banner {
		color: #23417a !important;
        font-size: 14em;
        position: absolute;
        top: -130px;
        left: 0;
        height: 200px;
	}

	& .container-text {
		z-index: 9;
	}

	& img {
		position: absolute;
		bottom: 0;
		left: 45%;
		width: auto !important;
		z-index: 99;
	}
}

@media(max-width: 991px) {
	.banner-custom  .title-banner.left {
		transform: translateX(-25%);
	}

	.banner-custom.agro {
		height: auto;

		& .title-banner {
			position: relative;
			font-size: 10em;
			height: auto;
			top: initial;
			left: initial;
			transform: translateY(-20px);
		}

		& .imagem-mobile {
			position: relative;
            height: 300px;
			
			& img {
				width: 280px !important;
                left: calc(50% - 140px);
                bottom: -30px;
			}
		}
	}

	.banner-custom.bebedouro {
		height: auto;

		& .title-banner {
			position: relative;
			font-size: 10em;
			height: auto;
			top: initial;
			left: initial;
			transform: translate(-50%, -120px);
		}

		& .imagem-mobile {
			position: relative;
            height: 300px;
			
			& img {
				width: 280px !important;
                left: calc(50% - 140px);
                bottom: -75px;
			}
		}
	}
}

/* -----------------------------------] */
/* --------------------------[ CUSTOM ] */
/* -----------------------------------] */

/*
* Inicial
*/

.mapa-brasil {
	height: 310px;
	overflow: none;

	img {
		position: absolute;
		top: 0;
		left: 0;
	}
}

@media (max-width: 991px) {
	.texto-mapa-inicial {
		position: relative;
		z-index: 1;
	}
	
	.mapa-brasil img {
		position: absolute;
        top: 0;
		left: initial !important;
        right: -14rem;
        height: 100%;
		max-width: initial !important;
	}
}

/*
* Quem somos
*/

.container-politica-qualidade > div {
	background-color: #dcdcdc;
}

.container-mvv > div:nth-child(1) {
	background-color: #2d559e;
}

.container-mvv > div:nth-child(2) {
	background-color: #274a8b;
}

.container-mvv > div:nth-child(3) {
	background-color: #213e74;
}

/*
* Blog
*/

@media (max-width: 991px) {
	.banner-custom.blog .container-text {
		position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 2em;
	}	
}

.btn-paginacao {
	background-color: transparent;
    color: #2d559e;
    text-decoration: none !important;
	width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
	margin: 5px;
    transition: all .3s;
}

.btn-paginacao:hover,
.btn-paginacao.ativo {
	background-color: #2d559e;
	color: #ffffff;
}

/*
* Produtos
*/

.card-produtos {
	background-color: #eaeaea;
	position: relative;
	transition: all .3s;

	& > div:nth-child(1) {
		height: 380px;
		border-top-left-radius: 1rem;
		border-top-right-radius: 1rem;
	}
	
	& > div:nth-child(2) {
		border-bottom-left-radius: 1rem;
		border-bottom-right-radius: 1rem;
	}
}

.card-produtos:after {
	content: '\F4FE';
	font-family: bootstrap-icons;
	font-size: 31px;
	font-weight: 900;
	background-color: #fff;
	border-radius: 100%;
	width: 50px;
	height: 50px;
	position: absolute;
	bottom: -25px;
	left: calc(50% - 25px);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
	padding-top: 3px;
	transition: all .3s;
}

.card-produtos:hover {
	transform: scale(1.05);
}

.card-produtos:hover:after {
	transform: rotate(180deg);
}

.card-produtos.bebedouro > div:nth-child(2) {
	background-color: #2d559e;
}

.card-produtos.bebedouro:after {
	color: #2d559e;
}

.card-produtos.agro > div:nth-child(2) {
	background-color: #a7c345;
}

.card-produtos.agro:after {
	color: #a7c345;
}

.swiper {
	width: 100%;
	height: 450px;
	margin-left: auto;
	margin-right: auto;
	user-select: none;
}

.swiper-slide {
	background-size: cover;
	background-position: center;
	background-color: #eaeaea;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mySwiper2 {
	width: 100%;
}

.mySwiper {
	height: 20%;
	box-sizing: border-box;
	padding: 10px 0;
}

.mySwiper .swiper-slide {
	width: 25%;
	height: 100%;
	opacity: 0.4;
}

.mySwiper .swiper-slide-thumb-active {
	opacity: 1;
}

.swiper-slide img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	object-fit: cover;
}

/*-----*/

.owl-theme .owl-dots .owl-dot span {
	background: #dadada;
	width: 25px;
	height: 25px;
	transition: all .3s;
}

.owl-theme .owl-dots .owl-dot.active span, 
.owl-theme .owl-dots .owl-dot:hover span {
	background: #2d559e;
}

/*
* Manuais
*/

.card-manuais {
	background-color: #2d559e;
	padding-right: calc(1.5rem + 120px) !important;

	& span {
		background-color: #23417a;
		position: absolute;
		top: 0;
		right: 0;
		height: 100%;
		width: 120px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

/*
* Filtro
*/

.container-filtro {
	& > div:nth-child(2) > div {
		background-color: #ebebeb;
	}

	& select {
		border: 1px solid #254479 !important;
	}
}

.container-select:after {
	content: '\F229';
	font-family: bootstrap-icons;
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: 40px;
	background-color: #254479;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	border-top-right-radius: var(--bs-border-radius-sm);
	border-bottom-right-radius: var(--bs-border-radius-sm);
	pointer-events: none;
	z-index: 9;
}

@media(max-width: 991px) {
	.container-filtro {
		& > div:nth-child(2) > div {
			background-color: transparent;
		}

		& .container-select {
			background-color: #ebebeb;
			padding: 1rem;
			margin-bottom: 1rem;
		}

		& .container-select:after {
			top: 1rem;
			right: 1rem;
			height: calc(100% - 2rem);
		}
	}
}