* {
	box-sizing: border-box;
}

:root {
	font-size: 13px;
}


html, body {
	font-family: var(--font-family);
	font-weight: normal;
	letter-spacing: 0;
	padding: 0;
	margin: 0;
	overflow-x: hidden;
	scroll-behavior: smooth; 
	overscroll-behavior: none; 
	user-select: none;

}
html.lock,
body.lock {
	overflow: hidden;
}


@media(min-width: 768px) {
	:root {
		font-size: 14px;
	}
}

@media(min-width: 992px) {
	:root {
		font-size: 16px;
	}
}


a, a:hover, a:focus,
button, button:hover, button:focus {
	transition: var(--transition);
	text-decoration: none;
	cursor: pointer;
	color: currentColor;
	outline: none;
	box-shadow: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0)

}
ul, ol {
	list-style: none;
	margin: 0;
	padding: 0;
}
*:focus {
	outline: none;
	box-shadow: none;
}
*::placeholder, *::-webkit-placeholder {
	color: currentColor;
}
*:-ms-input-placeholder {
	color: currentColor;
}


/********** HELPER CLASSES **********/

.container {
	position: relative;
	width: 100%;
	padding: 0 20px;
	margin-left: auto;
	margin-right: auto;
	max-width: 1220px;
}

.container-sm{
	max-width: 960px;
}


.row {
	--gap-h: 20px;
	--gap-v: 20px;

	display: flex;
	gap: var(--gap-v) var(--gap-h);
	flex-wrap: wrap;
}

.row + .row {
	margin-top: var(--gap-v);
}

.col, .col-auto, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
.col-lg, .col-lg-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12,
.col-md, .col-md-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12,
.col-sm, .col-sm-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12,
.col-xs, .col-xs-auto, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
	position: relative;
	width: 100%;
}

.col {
	flex-basis: 0;
	flex-grow: 1;
	max-width: 100%
}
.col-auto {
	flex: 1 1 auto;
	width: auto;
	max-width: none
}

.col-1 {
	flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
	max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
}
.col-2 {
	flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
	max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
}
.col-3 {
	flex: 1 1 calc((100% - (var(--gap-h) * 3)) / 4);
	max-width: calc((100% - (var(--gap-h) * 3)) / 4);
}
.col-4 {
	flex: 1 1 calc((100% - (var(--gap-h) * 2)) / 3);
	max-width: calc((100% - (var(--gap-h) * 2)) / 3);
}
.col-5 {
	flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
	max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
}
.col-6 {
	flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
	max-width: calc(50% - (var(--gap-h) * 0.50));
}
.col-7 {
	flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
	max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
}
.col-8 {
	flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
	max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
}
.col-9 {
	flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
	max-width: calc(75% - (var(--gap-h) * 0.75));
}
.col-10 {
	flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
	max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
}
.col-11 {
	flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
	max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
}
.col-12 {
	flex: 1 1 100%;
	max-width: 100%
}

@media (min-width: 300px) {
    .col-xs {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }
    
    .col-xs-auto {
        flex: 1 1 auto;
        width: auto;
        max-width: none;
    }

    .col-xs-1 {
        flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
        max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
    }
    .col-xs-2 {
        flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
        max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
    }
    .col-xs-3 {
        flex: 1 1 calc((100% - (var(--gap-h) * 3)) / 4);
        max-width: calc((100% - (var(--gap-h) * 3)) / 4);
    }
    .col-xs-4 {
        flex: 1 1 calc((100% - (var(--gap-h) * 2)) / 3);
        max-width: calc((100% - (var(--gap-h) * 2)) / 3);
    }
    .col-xs-5 {
        flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
        max-width: calc(41.666667% - (var(--gap-h) * 0.41666667));
    }
    .col-xs-6 {
        flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
        max-width: calc(50% - (var(--gap-h) * 0.50));
    }
    .col-xs-7 {
        flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
        max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
    }
    .col-xs-8 {
        flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
        max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
    }
    .col-xs-9 {
        flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
        max-width: calc(75% - (var(--gap-h) * 0.75));
    }
    .col-xs-10 {
        flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
        max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
    }
    .col-xs-11 {
        flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
        max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
    }
    .col-xs-12 {
        flex: 1 1 100%;
        max-width: 100%;
    }
}


@media (min-width: 576px) {
	.col-sm {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}
	.col-sm-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-sm-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-sm-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-sm-3 {
		flex: 1 1 calc((100% - (var(--gap-h) * 3)) / 4);
		max-width: calc((100% - (var(--gap-h) * 3)) / 4);
	}
	.col-sm-4 {
		flex: 1 1 calc((100% - (var(--gap-h) * 2)) / 3);
		max-width: calc((100% - (var(--gap-h) * 2)) / 3);
	}
	.col-sm-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-sm-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-sm-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-sm-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-sm-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-sm-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-sm-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}
	.col-sm-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}

@media (min-width: 768px) {
	.col-md {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}
	.col-md-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-md-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-md-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-md-3 {
		flex: 1 1 calc((100% - (var(--gap-h) * 3)) / 4);
		max-width: calc((100% - (var(--gap-h) * 3)) / 4);
	}
	.col-md-4 {
		flex: 1 1 calc((100% - (var(--gap-h) * 2)) / 3);
		max-width: calc((100% - (var(--gap-h) * 2)) / 3);
	}
	.col-md-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-md-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-md-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-md-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-md-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-md-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-md-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}
	.col-md-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}

@media (min-width: 992px) {
	.col-lg {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}
	.col-lg-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-lg-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-lg-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-lg-3 {
		flex: 1 1 calc((100% - (var(--gap-h) * 3)) / 4);
		max-width: calc((100% - (var(--gap-h) * 3)) / 4);
	}
	.col-lg-4 {
		flex: 1 1 calc((100% - (var(--gap-h) * 2)) / 3);
		max-width: calc((100% - (var(--gap-h) * 2)) / 3);
	}
	.col-lg-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-lg-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-lg-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-lg-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-lg-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-lg-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-lg-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}
	.col-lg-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}

@media (min-width:1200px) {
	.col-xl {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}

	.col-xl-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-xl-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-xl-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-xl-3 {
		flex: 1 1 calc((100% - (var(--gap-h) * 3)) / 4);
		max-width: calc((100% - (var(--gap-h) * 3)) / 4);
	}
	.col-xl-4 {
		flex: 1 1 calc((100% - (var(--gap-h) * 2)) / 3);
		max-width: calc((100% - (var(--gap-h) * 2)) / 3);
	}
	.col-xl-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-xl-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-xl-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-xl-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-xl-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-xl-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-xl-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}

	.col-xl-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}


@media (min-width:1800px) {
	.col-xxl {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}

	.col-xxl-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-xxl-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-xxl-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-xxl-3 {
		flex: 1 1 calc((100% - (var(--gap-h) * 3)) / 4);
		max-width: calc((100% - (var(--gap-h) * 3)) / 4);
	}
	.col-xxl-4 {
		flex: 1 1 calc(33.333333% - var(--gap-h));
		max-width: calc(33.333333% - var(--gap-h));
	}
	.col-xxl-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-xxl-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-xxl-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-xxl-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-xxl-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-xxl-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-xxl-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}

	.col-xxl-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}


.w-100 {
	width: 100% !important
}


.d-none {
	display: none !important
}
.d-inline {
	display: inline !important
}
.d-inline-block {
	display: inline-block !important
}
.d-block {
	display: block !important
}
.d-flex {
	display: flex !important
}
.d-inline-flex {
	display: inline-flex !important
}


@media (min-width:576px) {
	.d-sm-none {
		display: none !important
	}

	.d-sm-inline {
		display: inline !important
	}

	.d-sm-inline-block {
		display: inline-block !important
	}

	.d-sm-block {
		display: block !important
	}

	.d-sm-flex {
		display: flex !important
	}

	.d-sm-inline-flex {
		display: inline-flex !important
	}
}

@media (min-width:768px) {
	.d-md-none {
		display: none !important
	}

	.d-md-inline {
		display: inline !important
	}

	.d-md-inline-block {
		display: inline-block !important
	}

	.d-md-block {
		display: block !important
	}

	.d-md-flex {
		display: flex !important
	}

	.d-md-inline-flex {
		display: inline-flex !important
	}
}

@media (min-width:992px) {
	.d-lg-none {
		display: none !important
	}

	.d-lg-inline {
		display: inline !important
	}

	.d-lg-inline-block {
		display: inline-block !important
	}

	.d-lg-block {
		display: block !important
	}

	.d-lg-flex {
		display: flex !important
	}

	.d-lg-inline-flex {
		display: inline-flex !important
	}
}

@media (min-width:1200px) {
	.d-xl-none {
		display: none !important
	}

	.d-xl-inline {
		display: inline !important
	}

	.d-xl-inline-block {
		display: inline-block !important
	}

	.d-xl-block {
		display: block !important
	}

	.d-xl-flex {
		display: flex !important
	}

	.d-xl-inline-flex {
		display: inline-flex !important;
	}
}


.text-left {
	text-align: left !important;
	width: 100%;
}
.text-right {
	text-align: right !important;
	width: 100%;
}
.text-center {
	text-align: center !important;
	width: 100%;
}

.listing input, 
.listing textarea, 
.listing select,
.form input, 
.form textarea, 
.form select {
	appearance: none;
	-webkit-appearance: none;
	border: 0;
	display: block;
	resize: none;
}


input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px white inset; /* Altere "white" para a cor de fundo do seu input */
    box-shadow: 0 0 0 1000px white inset;
    color: inherit; /* Mantém a cor do texto como a definida */
}

img {
	width: 100%;
	height: 100%;
	display: block;
}
