/* ==========================================================================
HELPERS CLASSES
========================================================================== */

:root {
	--icon-angle: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000000'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
	--bs-gutter-y: 1.5rem;
}

.mark,
mark {
	padding: unset;
	color: unset;
	background-color: unset;
}

.row {
	gap: var(--bs-gutter-x) 0;
	margin-top: unset;
	>* {
		margin-top: unset;
	}
}

figure {
	margin: unset;
}

b,
strong {
	font-weight: 700;
}

body.no-scroll {
	overflow: hidden;
	padding-right: 0px;
}

.overlay {
	background-color: rgba(0, 0, 0, 0.5);
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 999;
	left: 0;
	top: 0;
	display: none;
}

summary {
	list-style: none;
}

summary::-webkit-details-marker {
	display: none;
}

.grecaptcha-badge {
	right: -300px !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
hr {
	margin-block-start: var(--wp--custom--main-size);
	margin-bottom: 0;
	&:first-child {
		margin-block-start: 0;
	}
}

a {
	outline: 0;
	&:hover,
	&:focus,
	&:active {
		outline: 0;
	}
}

.btn-close:focus,
.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn.focus:active,
.btn:active:focus,
.btn:focus {
	outline: 0;
	box-shadow: none;
}

.form-control:focus {
	border-color: none;
	box-shadow: none;
}

img {
	max-width: 100%;
	height: auto;
}

.map {
	line-height: 0;
	iframe {
		width: 100%;
	}
}

.whatsapp-fixed {
	--wfb-space: calc(var(--wp--custom--main-size) / 2);
	position: fixed;
	bottom: var(--wfb-space);
	left: var(--wfb-space);
	z-index: 999;
	a {
		width: 50px;
		height: 50px;
		background-color: #25d366;
		display: block;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		padding: 10px;
		background-size: 60%;
		background-repeat: no-repeat;
		background-position: center;
		background-image: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNTYuNjkzIDU2LjY5MyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1Ni42OTMgNTYuNjkzIj48cGF0aCBkPSJNNDYuMzggMTAuNzE0QzQxLjczIDYuMDU3IDM1LjU0NCAzLjQ5MiAyOC45NTQgMy40ODljLTEzLjU3OSAwLTI0LjYzIDExLjA1LTI0LjYzNiAyNC42MzNhMjQuNTg5IDI0LjU4OSAwIDAgMCAzLjI4OSAxMi4zMTZMNC4xMTIgNTMuMjA0bDEzLjA2LTMuNDI2YTI0LjYxNCAyNC42MTQgMCAwIDAgMTEuNzcyIDIuOTk5aC4wMWMxMy41NzcgMCAyNC42My0xMS4wNTIgMjQuNjM1LTI0LjYzNS4wMDItNi41ODItMi41NTgtMTIuNzcyLTcuMjA5LTE3LjQyOHpNMjguOTU0IDQ4LjYxNmgtLjAwOWEyMC40NDUgMjAuNDQ1IDAgMCAxLTEwLjQyMS0yLjg1NGwtLjc0OC0uNDQ0LTcuNzUgMi4wMzMgMi4wNy03LjU1NS0uNDg4LS43NzVhMjAuNDI3IDIwLjQyNyAwIDAgMS0zLjEzLTEwLjg5N2MuMDA0LTExLjI5IDkuMTktMjAuNDc0IDIwLjQ4NC0yMC40NzRhMjAuMzM2IDIwLjMzNiAwIDAgMSAxNC40NzYgNi4wMDUgMjAuMzUyIDIwLjM1MiAwIDAgMSA1Ljk5MSAxNC40ODVjLS4wMDQgMTEuMjktOS4xOSAyMC40NzYtMjAuNDc1IDIwLjQ3NnoiIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBmaWxsPSIjZmZmZmZmIiBjbGFzcz0iZmlsbC0wMDAwMDAiPjwvcGF0aD48cGF0aCBkPSJNNDAuMTg1IDMzLjI4MWMtLjYxNS0uMzA4LTMuNjQyLTEuNzk3LTQuMjA2LTIuMDAzLS41NjQtLjIwNS0uOTc1LS4zMDgtMS4zODUuMzA4LS40MS42MTctMS41OSAyLjAwMy0xLjk0OSAyLjQxNC0uMzU5LjQxLS43MTguNDYyLTEuMzM0LjE1NC0uNjE1LS4zMDgtMi41OTktLjk1OC00Ljk1LTMuMDU1LTEuODMtMS42MzItMy4wNjUtMy42NDgtMy40MjQtNC4yNjQtLjM2LS42MTctLjAzOC0uOTUuMjctMS4yNTcuMjc3LS4yNzYuNjE1LS43MTkuOTIzLTEuMDc4LjMwOC0uMzYuNDEtLjYxNi42MTYtMS4wMjcuMjA1LS40MS4xMDItLjc3LS4wNTItMS4wNzgtLjE1My0uMzA4LTEuMzg0LTMuMzM4LTEuODk3LTQuNTctLjUtMS4yLTEuMDA4LTEuMDM4LTEuMzg1LTEuMDU3LS4zNTktLjAxOC0uNzctLjAyMi0xLjE4LS4wMjJzLTEuMDc3LjE1NC0xLjY0Mi43N2MtLjU2NC42MTYtMi4xNTQgMi4xMDYtMi4xNTQgNS4xMzUgMCAzLjAzIDIuMjA2IDUuOTU3IDIuNTEzIDYuMzY4LjMwOC40MSA0LjM0MSA2LjYyOCAxMC41MTYgOS4yOTRhMzUuMzQxIDM1LjM0MSAwIDAgMCAzLjUwOSAxLjI5N2MxLjQ3NC40NjkgMi44MTYuNDAyIDMuODc3LjI0NCAxLjE4My0uMTc3IDMuNjQyLTEuNDkgNC4xNTUtMi45MjcuNTEzLTEuNDM4LjUxMy0yLjY3LjM1OS0yLjkyNy0uMTU0LS4yNTctLjU2NC0uNDEtMS4xOC0uNzE5eiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9IiNmZmZmZmYiIGNsYXNzPSJmaWxsLTAwMDAwMCI+PC9wYXRoPjwvc3ZnPg==);
	}
	&.left {
		left: var(--wfb-space);
	}
	&.right {
		left: unset;
		right: var(--wfb-space);
	}
}

@media (min-width: 1200px) {
	.whatsapp-fixed {
		--wfb-space: calc(var(--wp--custom--main-size) / 1.5);
		bottom: var(--wfb-space);
		a {
			width: 60px;
			height: 60px;
			padding: 15px;
			transition: background 0.3s ease-out;
			&:hover {
				background-color: #11b04c;
			}
		}
		&.left {
			left: var(--wfb-space);
		}
		&.right {
			right: var(--wfb-space);
		}
	}
}

/* ==========================================================================
LOADERS
========================================================================== */

.loader {
	width: 48px;
	height: 48px;
	border: 5px solid var(--wp--preset--color--primary);
	border-bottom-color: transparent;
	border-radius: 50%;
	display: inline-block;
	box-sizing: border-box;
	animation: loaderRotation 0.8s linear infinite;
}

@keyframes loaderRotation {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

.ajax-load-more-wrap.infinite.skype>.alm-btn-wrap .alm-load-more-btn {
	background-image: url(../images/loading-light.svg) !important;
	background-size: 30px;
}

/* ==========================================================================
FORMS
========================================================================== */

::-webkit-input-placeholder {
	opacity: 0.8;
}

::-moz-placeholder {
	opacity: 0.8;
}

:-ms-input-placeholder {
	opacity: 0.8;
}

:-moz-placeholder {
	opacity: 0.8;
}

label {
	display: block;
}

select,
input[type='text'],
input[type='url'],
input[type='date'],
input[type='file'],
input[type='email'],
input[type='tel'],
input[type='number'],
input[type='password'],
input[type='number'],
input[type='file'],
textarea {
	display: block;
	width: 100%;
	padding: 0.437rem 0.75rem;
	line-height: 1.5;
	background-color: transparent;
	background-clip: padding-box;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
	border: 1px solid var(--wp--preset--color--black);
	border-radius: var(--wp--custom--border--radius);
	color: var(--wp--preset--color--black);
	&:focus {
		outline: none;
		box-shadow: none;
	}
	&[readonly] {
		background-color: #e9ecef;
		opacity: 1;
	}
}

textarea {
	height: 120px;
}

select {
	-moz-padding-start: calc(0.75rem - 3px);
	line-height: 1.5;
	background-repeat: no-repeat;
	background-position: right 0.75rem center;
	background-size: 1.25rem auto;
	background-image: var(--icon-angle);
}

.navigation.post-navigation .nav-links a,
.wp-block-read-more,
.btn,
.wp-block-post-navigation-link a,
.wp-block-post-excerpt__more-link,
.wp-element-button,
.wp-block-button__link,
.wp-block-button.is-style-outline>.wp-block-button__link,
.wp-block-button .wp-block-button__link.is-style-outline,
.woocommerce .button,
input[type='button'],
input[type='submit'] {
	line-height: 1.5;
	padding: 0.5rem 1.5rem;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	border-width: 2px;
	border-style: solid;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, opacity .15s ease-in-out;
	border-radius: var(--wp--custom--border--radius);
	font-size: 1rem;
}

.btn-custom,
.navigation.post-navigation .nav-links a,
.wp-block-read-more,
.wp-block-post-navigation-link a,
.wp-block-post-excerpt__more-link,
.woocommerce .button,
input[type='button'],
input[type='submit'] {
	background-color: var(--wp--preset--color--primary);
	color: #FFF;
	display: inline-block;
	border-color: var(--wp--preset--color--primary);
	&:hover {
		color: #FFF;
		background-color: var(--wp--custom--color-primary-hover);
		border-color: var(--wp--custom--color-primary-hover);
	}
}

.wp-block-button {
	&.is-style-outline {
		.wp-block-button__link {
			&:hover {
				border-color: var(--wp--preset--color--primary);
				background-color: var(--wp--preset--color--primary);
				color: #FFFFFF;
			}
		}
	}
}

.wp-block-button {
	&.is-style-alternative {
		.wp-block-button__link {
			background-color: var(--wp--preset--color--primary);
			border-color: var(--wp--preset--color--primary);
			color: #FFF;
			&:hover {
				background-color: var(--wp--custom--color-primary-hover);
				border-color: var(--wp--custom--color-primary-hover);
			}
		}
	}
}

.light-form {
	::-webkit-input-placeholder {
		opacity: 0.8;
		color: #FFF;
	}
	::-moz-placeholder {
		opacity: 0.8;
		color: #FFF;
	}
	:-ms-input-placeholder {
		opacity: 0.8;
		color: #FFF;
	}
	:-moz-placeholder {
		opacity: 0.8;
		color: #FFF;
	}
	a,
	label {
		color: #FFF;
	}
	select,
	input[type='text'],
	input[type='url'],
	input[type='date'],
	input[type='file'],
	input[type='email'],
	input[type='tel'],
	input[type='number'],
	input[type='password'],
	input[type='number'],
	input[type='file'],
	textarea {
		color: #FFF;
	}
	select {
		background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFF'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
	}
	.intl-tel-input .selected-flag .iti-arrow {
		filter: brightness(0) invert(1);
	}
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	right: 0.75rem;
	height: 100%;
	background-repeat: no-repeat;
	background-size: 1.25rem auto;
	background-position: center;
	background-image: var(--icon-angle);
	b {
		display: none;
	}
}

body .select2-container,
body .ui-widget.ui-datepicker {
	z-index: 5 !important;
}

.select2-container--default {
	.select2-selection--single {
		border: 1px solid #ced4da;
		border-radius: var(--wp--custom--border--radius);
		height: 40px;
		line-height: 40px;
		margin: 0;
		display: flex;
		align-items: center;
		.select2-selection__rendered {
			color: #000;
		}
	}
}

.field-channels {
	label {
		display: flex;
		align-items: flex-start;
		gap: 6px;
		line-height: 1.2;
	}
	input {
		transform: translateY(0.3125rem);
	}
}

/* ==========================================================================
CF7
========================================================================== */

.wpcf7-form {
	font-size: 1rem;
	.wpcf7-form-control-wrap {
		display: block;
	}
	.field-cf7 {
		margin-bottom: calc(var(--wp--custom--main-size) / 2);
		>p {
			margin: 0;
		}
		label {
			margin-bottom: 0.188rem;
		}
	}
	.wpcf7-list-item {
		margin: 0;
		display: block;
	}
	&.submitting {
		.wpcf7-submit {
			background-image: url(../images/loading-light.svg);
			background-repeat: no-repeat;
			background-position: center center;
			background-size: 1.25rem;
			color: transparent;
		}
	}
	.wpcf7-submit {
		width: 100%;
	}
	.wpcf7-spinner {
		display: none !important;
	}
	.wpcf7-not-valid {
		border-color: #f00;
		+.nice-select {
			border-color: #f00;
		}
	}
	div.wpcf7-response-output {
		margin: 0 0 0.75rem 0;
		padding: 0.313rem;
		font-size: 0.875rem;
	}
	&.invalid .wpcf7-response-output {
		color: #8a6d3b;
		background-color: #fcf8e3;
		border: 1px solid #faebcc;
		border-radius: var(--wp--custom--border--radius);
	}
	&.sent .wpcf7-response-output {
		color: #3c763d;
		background-color: #dff0d8;
		border-color: #d6e9c6;
		border-radius: var(--wp--custom--border--radius);
	}
	span.wpcf7-not-valid-tip {
		font-size: 0.875rem;
		padding-top: 5px;
		display: block;
	}
	div.wpcf7-spam-blocked,
	div.wpcf7-mail-sent-ng {
		color: #a94442;
		background-color: #f2dede;
		border-color: #ebccd1;
	}
}

.wpcf7-field-group-remove,
.wpcf7-field-group-add {
	border: none;
	border-radius: 30px;
	background-color: var(--wp--preset--color--primary);
	color: #FFF;
	font-size: 18px;
	padding: 8px 30px;
	display: block;
	&:hover {
		color: #FFFF;
		background-color: #134A8C;
	}
}

.wpcf7-field-group-add {
	max-width: 200px;
	margin: 10px auto 20px auto;
}

.options-inline {
	.wpcf7-radio,
	.wpcf7-checkbox {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem 1.5rem;
		label {
			font-weight: 400;
		}
	}
}

@media (min-width: 768px) {
	.cf7-two-cols {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 0 calc(var(--wp--custom--main-size) / 2);
	}
}

.intl-tel-input .country-list {
	color: var(--wp--preset--color--primary);
	font-size: 12px;
	width: 250px;
	border-radius: .4rem;
}

.intl-tel-input {
	display: block !important;
}

/* ==========================================================================
BLOG
========================================================================== */

.post {
	.image-post {
		a {
			display: block;
		}
		img {
			max-width: none;
			width: 100%;
			aspect-ratio: 3/2;
			object-fit: cover;
			border-radius: var(--wp--custom--border--radius);
		}
	}
	.meta-post {
		font-size: 90%;
		display: flex;
		flex-wrap: wrap;
		span {
			display: block;
			&:not(:last-child):after {
				content: " | ";
				display: inline-block;
				padding: 0 0.75rem;
			}
			&:last-child {
				padding-right: 0;
			}
		}
		.list-terms {
			a {
				&:not(:last-child):after {
					content: ", ";
				}
			}
		}
	}
}

body.search-results,
body.single-post {
	main {
		--wp--style--global--content-size: 960px;
	}
}

.list-posts {
	display: grid;
	gap: var(--wp--custom--main-size);
	grid-template-columns: minmax(0, 1fr);
	.post {
		--wp--custom--main-size: 1rem;
		display: flex;
		align-content: flex-start;
		flex-direction: column;
		height: 100%;
		>* {
			margin-block-start: var(--wp--custom--main-size);
			&:first-child:first-child {
				margin-block-start: 0;
			}
		}
		h3 {
			font-size: 1.375rem;
		}
		.excerpt-post {
			>* {
				margin-block-start: var(--wp--custom--main-size);
				&:first-child:first-child {
					margin-block-start: 0;
				}
			}
		}
		.read-more {
			margin-top: auto;
			padding-top: var(--wp--custom--main-size);
		}
	}
}

@media (min-width: 768px) {
	.list-posts:not(.list-posts-search) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 992px) {
	.list-posts:not(.list-posts-related):not(.list-posts-search) {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 1200px) {
	.list-posts {
		gap: calc(var(--wp--custom--main-size) * 1.5);
	}
}

.wp-block-post-template {
	:where(body .is-layout-flow)>* {
		--wp--custom--main-size: 1rem;
	}
	h3 {
		font-size: 1.375rem;
	}
	.item-post {
		display: flex;
		align-content: flex-start;
		flex-direction: column;
		height: 100%;
		>* {
			width: 100%;
		}
	}
	.wp-block-post-featured-image img {
		border-radius: var(--wp--custom--border--radius);
	}
	.wrap-meta-post {
		font-size: 90%;
		display: block;
		>div {
			display: inline-block;
			&:not(:last-child):after {
				content: " | ";
				padding: 0 0.75rem;
			}
		}
	}
	.read-more {
		margin-top: auto;
		padding-top: var(--wp--custom--main-size);
	}
}

@media (min-width: 1200px) {
	.wp-block-post-template.wp-block-post-template {
		gap: calc(var(--wp--custom--main-size) * 2);
	}
}

.list-posts-search {
	article {
		padding-bottom: calc(var(--wp--custom--main-size) * 1.5);
		&:not(:last-child) {
			border-bottom: 1px solid rgba(0, 0, 0, 0.1);
		}
	}
}

body.search-no-results {
	main {
		--wp--style--global--content-size: 31.25rem;
		text-align: center;
		min-height: 60vh;
	}
}

/* ==========================================================================
NAVIGATION
========================================================================== */

.navigation {
	padding-top: calc(var(--wp--custom--main-size) * 2);
	.screen-reader-text {
		display: none;
	}
	&.pagination {
		.nav-links {
			width: 100%;
			display: flex;
			justify-content: center;
			gap: calc(var(--wp--custom--main-size) / 1.5);
			font-size: 1.375rem;
			line-height: 1;
		}
		a,
		span {
			border: none;
			transition: opacity 0.3s ease-out;
		}
		a:hover,
		span.current {
			opacity: 0.5;
		}
	}
	&.post-navigation {
		padding: var(--wp--custom--main-size);
		padding-top: calc(var(--wp--custom--main-size) * 2);
		.nav-links {
			max-width: var(--wp--style--global--content-size);
			margin: 0 auto;
			display: flex;
			justify-content: space-between;
			.nav-next {
				margin-left: auto;
			}
			a {
				min-width: 130px;
			}
		}
	}
}

.wp-block-query-pagination {
	padding-top: calc(var(--wp--custom--main-size) * 2);
	margin-top: 0;
	line-height: 1;
	.wp-block-query-pagination-numbers {
		display: flex;
		justify-content: center;
		gap: calc(var(--wp--custom--main-size) / 1.5);
		font-size: 1.375rem;
		a,
		span {
			border: none;
			color: var(--wp--preset--color--primary);
			transition: opacity 0.3s ease-out;
		}
		a:hover,
		span.current {
			opacity: 0.5;
		}
	}
	.wp-block-query-pagination-previous-arrow,
	.wp-block-query-pagination-next-arrow {
		margin: 0;
		font-size: 1.375rem;
		line-height: 1;
	}
}

.wp-block-query-pagination>.wp-block-query-pagination-next,
.wp-block-query-pagination>.wp-block-query-pagination-numbers,
.wp-block-query-pagination>.wp-block-query-pagination-previous {
	margin: 0;
}

@media (min-width: 1200px) {
	.wp-block-query-pagination,
	.navigation {
		padding-top: calc(var(--wp--custom--main-size) * 3);
	}
}

/* ==========================================================================
OWL CAROUSEL
========================================================================== */

.owl-carousel:not(.owl-loaded) {
	display: flex !important;
	opacity: 0;
}

.owl-carousel {
	--owl-button-size: 2.813rem;
	position: relative;
	transition: opacity 0.3s ease-out;
	.owl-stage {
		display: flex;
		flex-wrap: wrap;
	}
	.owl-dots {
		margin-top: var(--wp--custom--main-size);
		line-height: 1;
	}
	.owl-nav {
		margin-top: var(--wp--custom--main-size);
		button {
			transition: background 0.3s ease-out;
			margin: 0;
			width: var(--owl-button-size);
			height: var(--owl-button-size);
			overflow: hidden;
			background-repeat: no-repeat !important;
			background-position: center center !important;
			background-size: 1.5rem !important;
			background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23a60303'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
			span {
				display: none;
			}
		}
		button.owl-next {
			background-color: transparent;
			transform: rotate(-90deg);
		}
		button.owl-prev {
			background-color: transparent;
			transform: rotate(90deg);
		}
		[class*="owl-"]:hover {
			background-color: transparent;
		}
	}
}

.owl-theme {
	.owl-dots {
		.owl-dot {
			span {
				width: 1.125rem;
				height: 1.125rem;
				margin: 0.313rem;
				background: none;
				border: 1px solid var(--wp--preset--color--primary);
			}
			&.active,
			&:hover {
				span {
					background-color: var(--wp--custom--color-primary-hover);
					opacity: 1;
				}
			}
		}
	}
}

@media (min-width: 1400px) {
	.is-style-middle-arrows {
		position: relative;
		.owl-carousel {
			.owl-nav {
				margin-top: 0;
				position: absolute;
				top: calc(50% - 1.563rem);
				left: 0;
				width: 100%;
				pointer-events: none;
				button {
					margin: 0;
					pointer-events: auto;
					background-color: #FFF;
					border-radius: 50%;
					&:hover {
						background-color: #FFF;
					}
				}
				button.owl-prev {
					float: left;
					margin-left: .5rem;
				}
				button.owl-next {
					float: right;
					margin-right: .5rem;
				}
			}
		}
	}
}

/* ==========================================================================
404
========================================================================== */

.error404 {
	#top-bar,
	.main-footer,
	.main-header {
		display: none;
	}
	main {
		position: fixed;
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	section {
		h1 {
			font-size: 6.25rem;
			line-height: 1;
		}
		h2 {
			line-height: 1;
		}
	}
}

/* ==========================================================================
SEARCH
========================================================================== */

.search-form {
	.input-group {
		border: 1px solid #ced4da;
	}
	.form-control {
		margin-left: 0 !important;
	}
	.search-field {
		border: none;
	}
	.btn {
		border-radius: 0;
		background-color: #FFFFFF;
		img {
			width: 30px;
		}
	}
}

.wrap-search {
	background-color: #FFFFFF;
	position: fixed;
	width: 100%;
	z-index: 9999;
	left: 0;
	top: 0;
	padding: 24px 0;
	transform: translateY(-100%);
	transition: transform 0.35s ease-out;
	&.open {
		transform: translate(0);
	}
	.dgwt-wcas-sf-wrapp {
		width: calc(100% - 48px);
	}
	.dgwt-wcas-sf-wrapp {
		margin: 0 24px;
	}
	.search-form {
		padding: 0 24px;
		.input-group {
			border: none;
		}
		.form-control {
			margin-left: 0 !important;
			padding: 0;
			font-size: 18px;
		}
		.search-field {
			border: none;
		}
		.btn {
			border-radius: 0;
			background-color: #FFFFFF;
			padding: 0;
			img {
				width: 30px;
			}
		}
	}
}

@media (min-width: 768px) {
	.wrap-search {
		.search-form,
		.dgwt-wcas-sf-wrapp {
			margin: 0 auto;
			max-width: 800px;
		}
	}
}

@media (min-width: 992px) {
	.wrap-search {
		padding: 36px 0;
	}
}

/* ==========================================================================
BOOTSTRAP
========================================================================== */

.accordion {
	background: none;
}

.accordion-item {
	background: none;
	border: none;
	background: none !important;
}

.accordion-header {
	margin: 0;
	border-radius: 0;
	overflow: hidden;
	background: none !important;
	border-bottom: 1px solid var(--wp--preset--color--primary);
}

.accordion-body {
	padding: var(--wp--custom--main-size) 0;
}

.accordion-button:not(.collapsed) {
	color: var(--wp--preset--color--secondary);
	background: none;
	box-shadow: none;
}

.accordion-button {
	background: none;
	color: var(--wp--preset--color--secondary);
	font-size: 1.15rem;
	padding-left: 0;
	padding-right: 0;
}

.accordion-button::after {
	background-image: var(--icon-angle);
}

.accordion-button:not(.collapsed)::after {
	background-image: var(--icon-angle);
	background-position: center;
}

.accordion-item:last-of-type .accordion-button.collapsed,
.accordion-item:first-of-type .accordion-button {
	border-radius: 0;
}

@media (min-width: 1200px) {
	.accordion-button {
		font-size: 1.25rem;
	}
}

/* ==========================================================================
GENERAL
========================================================================== */

a:where(:not(.wp-element-button)) {
	transition: color .3s ease-out;
}

table {
	width: 100%;
	max-width: 100%;
	margin: 25px 0;
	background-color: transparent;
	font-size: 0.9rem;
}

table:not(.variations) td,
table:not(.variations) th {
	padding: .3rem;
}
table:not(.variations) td,
table:not(.variations) th {
	border-top: 1px solid #dee2e6;
}

.container,
.container-xl,
.container-xxl,
.container-fluid {
	padding-inline: var(--wp--style--root--padding-left);
	max-width: 1320px;
}

section.wp-block-group,
.section {
	padding-block: calc(var(--wp--custom--main-size) * 2);
	scroll-margin-block-start: 60px;
}

@media (min-width: 992px) {
	section.wp-block-group,
	.section {
		padding-block: calc(var(--wp--custom--main-size) * 2.5);
	}
}

@media (min-width: 1024px) {
	section.wp-block-group,
	.section {
		scroll-margin-block-start: 80px;
	}
}

@media (min-width: 1200px) {
	section.wp-block-group,
	.section {
		padding-block: calc(var(--wp--custom--main-size) * 5);
		scroll-margin-block-start: 74px;
	}
}

body {
	&.page-no-spaces-up {
		main.section {
			padding-block-start: 0;
		}
	}
	&.page-no-spaces-bottom {
		main.section {
			padding-block-end: 0;
		}
	}
}

/* ==========================================================================
GUTENBERG
========================================================================== */

.is-style-d-none {
	display: none !important;
}

.wp-block-details {
	summary {
		border-bottom: 1px solid currentColor;
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		padding: 0 0 1rem 0;
		line-height: 1.3;
		&:after {
			flex-shrink: 0;
			width: 1.25rem;
			height: 1.25rem;
			margin-left: auto;
			content: "";
			background-repeat: no-repeat;
			background-image: var(--icon-angle);
			transition: transform 0.2s ease-in-out;
		}
	}
	&[open] {
		padding-bottom: var(--wp--custom--main-size);
		summary {
			&:after {
				transform: rotate(-180deg);
			}
		}
	}
	&.has-background {
		border-radius: var(--wp--custom--border--radius);
		summary {
			padding-inline: var(--wp--custom--main-size);
			padding-top: 1rem;
		}
		> :where(:not(summary)) {
			margin-left: var(--wp--custom--main-size);
			margin-right: var(--wp--custom--main-size);
		}
	}
}

hr,
.wp-block-separator {
	opacity: 1;
	border-top: 1px solid currentColor;
	border-bottom: 0;
}

.has-global-padding>.wp-block-group.alignfull.has-background.is-layout-constrained {
	padding-left: var(--wp--custom--main-size);
	padding-right: var(--wp--custom--main-size);
}

.wp-block-social-link {
	transition: opacity 0.3s ease-out;
	&:hover {
		transform: scale(1);
		opacity: 0.8;
	}
}

/* ==========================================================================
HEADER
========================================================================== */

.main-header {
	z-index: 998;
	position: sticky;
	width: 100%;
	top: 0;
	.col-logo {
		a {
			display: block;
			img {
				max-width: 150px;
			}
		}
	}
}

@media (max-width: 1023px) {
	.main-header {
		.col-nav {
			position: absolute;
			left: 0;
			width: 100%;
			top: 0;
			padding: 0;
		}
		.row {
			height: 70px;
			align-items: center;
			.col-right,
			.col-logo {
				z-index: 99;
			}
			.col-right {
				margin-right: 3.4rem;
				position: absolute;
				right: 0;
			}
		}
	}
}

@media (min-width: 1024px) {
	.main-header {
		background-color: #FFF;
		padding-block: calc(var(--wp--custom--main-size) * .75);
		transition: all .15s ease-out;
		.col-logo {
			a {
				img {
					max-width: 180px;
				}
			}
		}
		.row {
			height: auto;
		}
		.wp-block-jupa-bootstrap-row {
			position: relative;
		}
	}
}

/* ==========================================================================
MENU
========================================================================== */

#mega-toggle-block-0 {
	margin-right: 16px !important;
}

@media (max-width: 1023px) {
	#mega-menu-wrap-torre #mega-menu-torre,
	#mega-menu-wrap-primary #mega-menu-primary {
		>li.mega-menu-item {
			>a.mega-menu-link {
				border-bottom: 2px solid rgba(255, 255, 255, 0.1) !important;
				margin: 0 var(--wp--custom--main-size);
				padding: 0;
				&:hover {
					background: none !important;
				}
				span.mega-indicator {
					position: absolute;
					right: 0;
				}
			}
			&:last-child {
				>a.mega-menu-link {
					border: none !important;
				}
			}
		}
		>li.mega-menu-flyout.mega-toggle-on {
			>a.mega-menu-link {
				border: none !important
			}
		}
		>li.mega-menu-flyout ul.mega-sub-menu {
			padding: 0;
			>li.mega-menu-item {
				background-color: rgba(0, 0, 0, 0.1);
				>a.mega-menu-link {
					border-bottom: 2px solid rgba(255, 255, 255, 0.05) !important;
					margin: 0 15px;
					&:hover {
						background: none !important;
					}
				}
			}
		}
	}
}

@media (min-width: 992px) {
	#mega-menu-wrap-torre #mega-menu-torre>li.mega-menu-item:last-child,
	#mega-menu-wrap-primary #mega-menu-primary>li.mega-menu-item:last-child {
		margin-right: 0;
	}
}

@media (min-width: 1400px) {
	#mega-menu-wrap-torre #mega-menu-torre>li.mega-menu-item,
	#mega-menu-wrap-primary #mega-menu-primary>li.mega-menu-item {
		margin-right: 2rem;
	}
	#mega-menu-wrap-torre #mega-menu-torre>li.mega-menu-item>a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary>li.mega-menu-item>a.mega-menu-link {
		font-size: 1.125rem;
	}
}

/* ==========================================================================
FOOTER
========================================================================== */

.main-footer {
	a {
		text-decoration: none;
		&:hover {
			text-decoration: underline;
		}
	}
	.top-footer {
		padding-top: calc(var(--wp--custom--main-size) * 2);
		padding-bottom: calc(var(--wp--custom--main-size) * 2);
	}
	.bottom-footer {
		padding-bottom: calc(var(--wp--custom--main-size) * 3.5) !important;
	}
}

@media (min-width: 768px) {
	.main-footer {
		.bottom-footer {
			padding-bottom: var(--wp--custom--main-size) !important;
		}
	}
}

@media (min-width: 992px) {
	.main-footer {
		.top-footer {
			padding-top: calc(var(--wp--custom--main-size) * 2.5);
			padding-bottom: calc(var(--wp--custom--main-size) * 2.5);
		}
		.bottom-footer {
			gap: calc(var(--wp--custom--main-size) * 3);
			padding-bottom: var(--wp--custom--main-size) !important;
		}
	}
}

@media (min-width: 1200px) {
	.main-footer {
		.top-footer {
			padding-top: calc(var(--wp--custom--main-size) * 3);
			padding-bottom: calc(var(--wp--custom--main-size) * 3);
		}
	}
}

/* ==========================================================================
CUSTOM
========================================================================== */

#menta-aptos-tab::-webkit-scrollbar,
#nav-recorridos::-webkit-scrollbar {
	display: none;
}

@media (max-width: 991px) {
	.header-home {
		.wp-block-cover__inner-container {
			z-index: unset;
		}
		.btn-open-form,
		.col-info {
			position: relative;
			z-index: 5;
		}
	}
	.wrap-form {
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		z-index: 99999;
		overflow-y: auto;
		display: none;
		border-radius: 0 !important;
	}
}

.btn-close-form .wp-element-button {
	background-image: url(../images/icon-close.svg);
	background-repeat: no-repeat;
	background-size: 1.5rem;
	background-position: center;
	color: transparent;
	background-color: transparent !important;
	border: none !important;
	padding: 0 !important;
	transform: translate(12px);
}

@media (min-width: 992px) {
	.header-home {
		.wrap-form {
			display: block !important;
		}
	}
}

.list-zc {
	.wp-block-image :where(figcaption) {
		margin-bottom: 0;
		display: block !important;
		font-size: 14px;
	}
	.wp-block-image.aligncenter {
		display: block;
		text-align: center;
		line-height: 1.2;
	}
}

@media (min-width: 992px) {
	.section-zc {
		position: relative;
		.wp-block-jupa-bootstrap-row {
			position: relative;
			z-index: 5;
		}
		.images {
			margin-left: -3rem;
			position: relative;
		}
	}
}

@media (min-width: 1200px) {
	section.wp-block-group.section-zc {
		.wrap-zc {
			max-width: 525px;
			margin: 0 auto;
		}
		.is-style-middle-arrows .owl-carousel .owl-nav button.owl-prev {
			margin-left: 2rem;
		}
	}
}

@media (min-width: 2000px) {
	.section-zc {
		.wp-block-jupa-bootstrap-row {
			max-width: 1600px;
			margin: 0 auto;
		}
		.images {
			&:before {
				transform: translate(5%, -100%);
			}
		}
	}
}

@media (min-width: 1200px) {
	.destacado-cuota-inicial {
		margin-top: 0;
		transform: translateY(-50%);
		position: relative;
		z-index: 5;
	}
}

.nav {
	--bs-nav-link-color: #FFF;
	--bs-nav-link-hover-color: #FFF;
	--bs-nav-link-disabled-color: var(--bs-secondary-color);
	--bs-nav-link-padding-x: 1rem;
	--bs-nav-link-padding-y: 1rem;
	gap: var(--wp--custom--main-size);
}

.nav-pills {
	--bs-nav-pills-link-active-color: #fff;
	--bs-nav-pills-link-active-bg: var(--wp--preset--color--secondary);
}

.nav-link {
	background-color: var(--wp--preset--color--primary);
	&:hover {
		background-color: var(--wp--preset--color--secondary);
	}
}

#menta-aptos-tabContent {
	.tab-pane>.wp-block-jupa-bootstrap-row {
		border: 1px solid var(--wp--preset--color--secondary);
		border-radius: var(--wp--custom--border--radius);
		overflow: hidden;
		font-size: 14px;
	}
	.wp-block-image :where(figcaption) {
		margin: 0;
		font-size: 0.7rem;
		line-height: 1.2;
		padding: .8rem;
		text-align: center;
		background-color: #f4f9ec;
		opacity: 0.8;
	}
}

@media (max-width: 991px) {
	#menta-aptos-tab {
		gap: 6px;
	}
}

@media (min-width: 768px) {
	#menta-aptos-tabContent {
		.wp-block-image :where(figcaption) {
			background: none;
			font-size: .9rem;
			padding: 1rem 1rem 0 1rem;
		}
	}
}

@media (min-width: 1200px) {
	#menta-aptos-tabContent {
		font-size: 1rem;
		.apto-plano {
			padding-inline: calc(var(--wp--custom--main-size) * 2);
			a {
				display: block;
				position: relative;
				&:after {
					content: '';
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
					background-color: rgba(0, 0, 0, .1);
					opacity: 0;
					transition: opacity .3s ease;
					background-image: url(../images/zoom-in.svg);
					background-repeat: no-repeat;
					background-position: center;
					background-size: 35px;
				}
				&:hover {
					&:after {
						opacity: 1;
					}
				}
			}
		}
	}
}

.owl-apto-modelo {
	.item {
		padding-inline: var(--wp--custom--main-size);
	}
}

@media (min-width: 768px) {
	.owl-apto-modelo {
		width: 120vw;
		.item {
			padding-right: 6px;
		}
		.owl-nav {
			text-align: left;
			padding-left: var(--wp--custom--main-size);
			margin-top: 6px;
		}
	}
}

@media (min-width: 1200px) {
	.owl-apto-modelo {
		.owl-nav,
		.item {
			padding-left: 3vw;
		}
	}
}

#nav-recorridos {
	.wp-block-button {
		flex: 1 1 auto;
		&.active {
			.wp-element-button {
				background-color: var(--wp--preset--color--secondary);
				border-color: var(--wp--preset--color--secondary);
			}
		}
	}
	.wp-element-button {
		display: block;
		&:before {
			content: '';
			display: block;
			height: 24px;
			background-image: url(../images/icon-unity.svg);
			background-repeat: no-repeat;
			background-position: center;
			margin-bottom: .5rem;
		}
	}
}

.items-recorridos {
	aspect-ratio: 16/9;
	.item:not(:first-child) {
		display: none;
	}
}

@media (max-width: 767px) {
	#nav-recorridos {
		width: 100vw;
		margin-left: -1.5rem !important;
		padding-inline: 1.5rem;
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		-ms-overflow-style: -ms-autohiding-scrollbar;
		.wp-element-button,
		button {
			text-wrap: nowrap;
		}
	}
}

.section-recorridos {
	.items-recorridos {
		.item {
			iframe {
				border-radius: var(--wp--custom--border--radius);
				overflow: hidden;
			}
		}
	}
}

@media (min-width: 992px) {
	.section-recorridos {
		overflow: hidden;
		position: relative;
		>.wp-block-group {
			position: relative;
			z-index: 5;
		}
		&::after {
			content: '';
			position: absolute;
			top: 0;
			right: 0;
			width: 33.333%;
			height: 100%;
			background-color: rgba(0, 0, 0, .2);
		}
		.wp-block-jupa-bootstrap-row {
			position: relative;
			z-index: 5;
		}
		.items-recorridos {
			margin-right: -3rem;
			position: relative;
			.item {
				height: 100%;
				iframe {
					height: 100%;
				}
			}
		}
	}
}

@media (min-width: 2000px) {
	.section-recorridos {
		.wp-block-jupa-bootstrap-row {
			max-width: 1600px;
			margin: 0 auto;
		}
	}
}

@media (min-width: 1200px) {
	body {
		font-size: 1.125rem;
	}
}

.page-id-246 {
	.wp-block-heading {
		text-align: center;
	}
}

.selector-torres {
	.wp-block-image {
		position: relative;
		img {
			border-radius: var(--wp--custom--border--radius) var(--wp--custom--border--radius) 0 0;
		}
		.wp-element-caption {
			text-align: center;
			background-color: var(--wp--preset--color--primary);
			margin: 0;
			color: #FFF;
			padding: .75rem .5rem;
			border-radius: 0 0 var(--wp--custom--border--radius) var(--wp--custom--border--radius);
			position: relative;
			z-index: 10;
		}
		a:after {
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			z-index: 1;
			content: "";
			z-index: 15;
		}
	}
	@media (min-width: 1200px) {
		.wp-block-image {
			overflow: hidden;
			img {
				transition: transform .5s ease;
			}
			&:hover {
				img {
					transform: scale(1.1);
				}
			}
		}
	}
}