/*
Theme Name: Birdie Hills Estepona
Theme URI: https://www.imagenmarbella.com
Author: Imagen Marbella
Author URI: https://www.imagenmarbella.com
Description: Theme developed for Birdie Hills Estepona
Requires at least: 5.8
Tested up to: 5.8
Requires PHP: 5.6
Version: 1.0
Tags: white, custom-menu, featured-images, portfolio, real-state
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: wpdomain

Birdie Hills Estepona WordPress Theme, (C) 2022 Birdie Hills Estepona
This theme has only developed for Birdie Hills Estepona site
*/

/**************************/
/******** FONTS ***********/
/**************************/
/*#region */

@font-face {
    font-family: "Work Sans";
    font-style: normal;
    font-weight: 300;
    src: url("fonts/WorkSans-VariableFont_wght.woff2") format("woff2"), url("fonts/WorkSans-VariableFont_wght.woff") format("woff"), url("fonts/WorkSans-VariableFont_wght.ttf") format("truetype");
}
@font-face {
    font-family: "Work Sans";
    font-style: normal;
    font-weight: 500;
    src: url("fonts/WorkSans-VariableFont_wght.woff2") format("woff2"), url("fonts/WorkSans-VariableFont_wght.woff") format("woff"), url("fonts/WorkSans-VariableFont_wght.ttf") format("truetype");
}

@font-face {
    font-family: "Work Sans";
    font-style: italic;
    font-weight: normal;
    src: url("fonts/WorkSans-Italic-VariableFont_wght.woff2") format("woff2"), url("fonts/WorkSans-Italic-VariableFont_wght.woff") format("woff"), url("fonts/WorkSans-Italic-VariableFont_wght.ttf") format("truetype");
}

@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: normal;
    src: url("fonts/Inter-VariableFont_opsz,wght.woff2") format("woff2"), url("fonts/Inter-VariableFont_opsz,wght.woff") format("woff"), url("fonts/Inter-VariableFont_opsz,wght.ttf") format("truetype");
}


@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 300;
    src: url("fonts/Poppins-Light.woff2") format("woff2"), url("fonts/Poppins-Light.woff") format("woff"), url("fonts/Poppins-Light.ttf") format("truetype");
}

@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: normal;
    src: url("fonts/Poppins-Regular.woff2") format("woff2"), url("fonts/Poppins-Regular.woff") format("woff"), url("fonts/Poppins-Regular.ttf") format("truetype");
}

/*#endregion */

/**************************/
/******** BASE ************/
/**************************/
/*#region */

:root {
	--color-black: #000000;
	--color-white: #ffffff;
	--color-green-bg: #CFE0B1;
	--color-gray: #D5D5D5;
	--color-text: #1A213B;
	--color-text-light: #495A32;
	--font-title: "Poppins",sans-serif;
	--font-general: "Work Sans",sans-serif;
	/* --gutter-x: 0.75rem; */
	--filter-svg-black2white: invert(100%) sepia(100%) saturate(0%) hue-rotate(3deg) brightness(100%) contrast(104%);
	--pseudo-text: "just some text";
	--drag-text: "drag it!";
	--pseudo-pos: 50%;
}
.legal-images {
	font-size: 12px;
	line-height: 1.4em;
	margin-top: 24px !important;
}
html {
	scroll-padding-top: 70px;
}
body{
	font-family: var(--font-general);
	color: var(--color-text);
	font-size: 18px;
	background-color: #FCFCED;
	overflow-x: hidden;
	background-image: url(images/body-bg-image.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center 100vh;
}
h1{
	font-family: var(--font-title);
	font-size: 36px;
	line-height: 32px;
	color: var(--color-text);
}
h2{
	font-family: var(--font-title);
	font-size: 22px;
	line-height: 32px;
	font-weight: 500;
	color: var(--color-text);
}
h3{
	font-family: var(--font-title);
	font-size: 32px;
	line-height: 40px;
	font-weight: 500;
	color: var(--color-text);
}
h4{
	font-family: var(--font-title); 
	font-size: 20px;
	font-weight: 600;
	color: var(--color-text);
}
h5 {
	font-family: var(--font-title); 
	font-size: 20px;
	font-weight: 600;
	color: var(--color-text);
}
h6 {
	font-family: var(--font-title); 
	font-size: 10px;
	font-weight: 600;
	color: var(--color-text);
}
a {
	color: var(--color-text);
	transition: all ease-in-out 300ms;
	text-decoration: underline;
}
a:hover {
	color: var(--color-text);
}
a:not([href]):not([class]),
a:not([href]):not([class]):hover {
	color: inherit;
	text-decoration: none;
}
p {
	font-size: 15px;
	line-height: 140%;
	color: var(--color-text-light);
	margin-top: 0;
	margin-bottom: 16px;
	font-family: var(--font-general); 
	font-weight: 300;
}
ol, ul {
	padding-left: 24px;
}
hr {
	margin: 16px 0;
	border: 0;
	opacity: 1;
}
strong {
	font-weight: 600;
}
.wp-block-columns {
	margin-bottom: 0px !important;
	gap:16px;
}
.link-cover-absolute {
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
}
.ic-show-mobile,
.ic-hide-desktop {
	display: none;
}
.ic-show-desktop {
	display: block;
}
.bg-cover {
	background-position: center center;
	background-size: cover;
}
.ar-169 {
	aspect-ratio: 16 / 9;
}
.ar-43 {
	aspect-ratio: 4 / 3;
}
a.link-absolute {
	position: absolute;
	top:0px;
	left:0px;
	right:0px;
	bottom:9px;
	z-index: 1;
}
.wpcf7-spinner {
	margin-left: auto;
	margin-right: auto;
	display: block;
}
.wpcf7-response-output {
	display: none !important;
}
.cmplz-message p {
	font-size: 16px;
	line-height: normal;
}
*:disabled {
	pointer-events: unset !important;
	opacity: 0.5 !important;
	cursor: not-allowed !important;
}
.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before {
	content:none !important;
}
.widget-header-left:empty {
	display: none !important;
}
.slick-dots {
	padding:0;
	margin:0;
	list-style: none;
	display: flex;
	position: absolute;
	width: 100%;
	left: 0;
	bottom: 0;
	justify-content: center;
    align-items: center;
    gap: 24px;
    font-size: 0;
	margin-bottom: 24px;

	li {
		button {
			background-color: transparent;
			border: solid 1px white;
			border-radius: 200px;
			width: 12px;
			height: 12px;
			display: block;
			padding: 0;
		}
		&.slick-active {
			button {
				background-color: white;
			}
		}
	}
}
@media (max-width: 991px) {
	.ic-hide-mobile,
	.ic-show-desktop {
		display: none;
	}
	.ic-show-mobile,
	.ic-hide-desktop {
		display: block;
	}
	.widget-header-right:has(.ic-hide-mobile) {
		display:none;
	}
}
/*#endregion */

/**************************/
/******** STRUCTURE *******/
/**************************/
/*#region */
.widget-header-right:empty {
	display: none;
}
.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm,
.main-menu .navbar-dark .navbar-nav .nav-link {
	width: 100%;
	padding-right: var(--gutter-x, 0.75rem);
	padding-left: var(--gutter-x, 0.75rem);
	margin-right: auto;
	margin-left: auto;
}
@media (min-width: 576px) {
	.container-sm, .container, .main-menu .navbar-dark .navbar-nav .nav-link {
		max-width: 540px;
	}
}
@media (min-width: 768px) {
	.container-md, .container-sm, .container, .main-menu .navbar-dark .navbar-nav .nav-link {
		max-width: 720px;
	}
}
@media (min-width: 992px) {
	.container-lg, .container-md, .container-sm, .container, .main-menu .navbar-dark .navbar-nav .nav-link {
		max-width: 960px;
	}
}
@media (min-width: 1200px) {
	.container-xl, .container-lg, .container-md, .container-sm, .container, .main-menu .navbar-dark .navbar-nav .nav-link {
		max-width: 1140px;
	}
}
@media (min-width: 1400px) {
	.container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container, .main-menu .navbar-dark .navbar-nav .nav-link {
		max-width: 1300px;
	}
}
/*#endregion */

/**************************/
/********* HEADER *********/
/**************************/
/*#region */

.main-header {
	padding-top: 34px;
	padding-bottom: 16px;
	position: fixed;
	top:0;
	width: 100%;
	z-index: 9;
	transition: all 300ms linear;

	figure, p {
		margin-bottom: 0;
	}
	.logo-header {
		margin-right: 16px;
	}

	&.scrolled {
		background-color: var(--color-text-light);
		transition: all 300ms linear;
	}
	.container {
		display: flex;
		justify-content: space-between;
		align-items: center;

		ul {
			justify-content: center;
			display: flex;
			list-style: none;
			padding: 0;
			margin: 0;
			gap:64px;
			
			li {
				a {
					color: #FCFCED;
					font-family: var(--font-title);
					font-size: 18px;
					font-style: normal;
					font-weight: 500;
					line-height: 132%; /* 23.76px */
					letter-spacing: -0.18px;
					text-decoration: none;
					position: relative;
					transition: all 300ms linear;
					padding-right: 16px;

					&::before {
						transition: all 300ms linear;
						content: '';
						display: block;
						width: 8px;
						height: 8px;
						border-radius: 20px;
						background-color: var(--color-green-bg);
						position: absolute;
						left: 0px;
						top:50%;
						transform: translateY(-50%);
						opacity: 0;
					}

					&:hover {
						text-decoration: none;
						padding-left: 16px;
						padding-right: 0px;
						transition: all 300ms linear;

						&::before {
							transition: all 300ms linear;
							opacity: 1;
						}
					}
				}
			}
		}

		.header-right {
			display: flex;
			justify-content: space-between;
			align-items: center;

			a:hover::before {
				content:none;
			}

			.wpml-ls {
				a {
					background-color: #FCFCED;
					border-radius: 8px;
					padding: 12px 16px;
					color: var(--color-text-light);
					line-height: 18px;
					margin-right: 24px;

					&:hover {
						color: var(--color-text-light);
						background-color: var(--color-green-bg);
					}
				}
			}
			.wp-block-list {
				a {
					display: block;
					background-color: var(--color-green-bg);
					color: var(--color-text-light);
					border-radius: 8px;
					padding: 12px 16px;
					line-height: 18px;
					background-position: 50% 100%;
					position: relative;

					&:hover {
						background-color: var(--color-text-light);
						/* background: radial-gradient(ellipse at center,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); */
						background-image: url(images/contact-bg.svg);
						background-position: 50% 100%;
						background-repeat: no-repeat;
						color: #FCFCED;


					}
				}
			}
		}
	}
}

#ic-mobile-switcher {
	display: none;
	width: 32px;
	height: 24px;
	position: relative;
	margin-left: 0px;
	margin-top: 10px;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
}
#ic-mobile-switcher span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: var(--color-white);
	border-radius: 9px;
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}
#ic-mobile-switcher span:nth-child(1) {
	top: 0px;
}
#ic-mobile-switcher span:nth-child(2),
#ic-mobile-switcher span:nth-child(3) {
	top: 9px;
}
#ic-mobile-switcher span:nth-child(4) {
	top: 18px;
}
#ic-mobile-switcher.open span:nth-child(1) {
	top: 9px;
	width: 0%;
	left: 50%;
}
#ic-mobile-switcher.open span:nth-child(2) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
#ic-mobile-switcher.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#ic-mobile-switcher.open span:nth-child(4) {
	top: 9px;
	width: 0%;
	left: 50%;
}
.mobile-nav-wrapper {
	overflow-y: auto;
	transform: translateX(100%);
	opacity: 0;
	gap:32px;
	position: absolute;
	left: 0;
	top: 100px;
	width: 100vw;
	background-color: var(--color-text-light);
	height: calc(100vh - 100px);
	transition: all 300ms linear;
	display: flex;
	flex-direction: column;
	
	.menu {
		display: flex;
		flex-direction: column;
		text-align: center;
		margin-top: 64px !important;
	}
	#menu-legal-menu-en,
	#menu-legal-menu-es {
		a {
			font-size: 14px;
			padding-right: 0;
		}
	}

	&.active {
		transition: all 300ms linear;
		opacity: 1;
		transform: none;
	}
	.wpml-ls-link {
		background-color: var(--color-green-bg);
        color: var(--color-text-light) !important;
        padding: 10px 16px;
        display: block;
        border-radius: 8px;
	}
}

@media (max-width: 1399px) {
	.main-header {
		.container {
			ul {
				gap:32px;
			}
		}
	}
}
@media (max-width: 1199px) {
	.main-header {
		.container {
			.widget-header-middle {
				ul {
					gap:16px;
					
					li:last-child {
						display: none;
					}
				}	
			}
			
		}
	}
}
@media (max-width: 991px) {
	.main-header {
		min-height: 100px;

		.container {
			align-items: flex-start;
			gap:24px;
		}
		.header-middle {
			display: none !important;
		}
		.header-right {
			.widget-header-right:first-child {
				display: none;
			}
			.wpml-ls {
				padding: 0 !important;
				a {
					margin-right: 0 !important;
				}
			}
		}
	}
	#ic-mobile-switcher {
		display: block;
	}
}

/*#endregion */

/**************************/
/********* FOOTER *********/
/**************************/
/*#region */
.main-footer {
	background-color: var(--color-text-light);
	color: white;
	padding-top: 64px;
	padding-bottom: 64px;
	background-image: url(images/bg-img-footer.svg);
	background-position: center 30px;
	background-size: cover;
	background-repeat: no-repeat;

	a {
		color: white;
		text-decoration: none;
	}
	ul {
		list-style: none;
		padding: 0;
		margin:0;
	}
	p, figure {
		margin:0;
		color:white;
	}
	.footer-wrapper {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;

		ul li {
			font-size: 15px;
		}

		.footer-two {
			ul {
				display: flex;
				flex-direction: column;
				gap: 4px;

				li {
					&:last-child {
						margin-top: 10px;

						a {
							text-decoration: underline;
							color: var(--color-green-bg);
						}
					}
				}
			}
		}
		.footer-three {
			ul {
				display: flex;
				flex-direction: column;
				gap: 10px;
			}
		}
	}
	.bottom-footer {
		margin-top: 64px;
		display: flex;
		gap:16px;
		flex-direction: column;

		p {
			font-size: 14px;
			font-family: var(--font-general);
			line-height: normal;
		}
		.widget-footer:last-child p {
			font-size: 12px;
			line-height: normal;
		}
	}
}
@media (max-width: 991px) {
	.main-footer {
		.footer-wrapper {
			flex-direction: column;
			gap: 48px;
			text-align: center;
			align-items: center;

			figure {
				margin-left: auto;
				margin-right: auto;
			}
		}
	}
}

/*#endregion */

/**************************/
/********* HOME *********/
/**************************/
/*#region */
.hero-header {
	position: relative;

	.wp-block-cover {
		width: 100vw;
		height: 100vh;
		align-items: flex-start;
		/* padding-top: 200px; */
		padding-top: 25vh;

		.wp-block-cover__inner-container {
			position: absolute;
			display: flex;
			gap: 48px;
			flex-direction: column;

			p {
				font-size: 32px;
				color: white;
				text-transform: uppercase;
				font-weight: 600;
				font-family: var(--font-title);
				letter-spacing: 12px;
				text-shadow: 0 0 1.5px #00000066;
			}
		}
	}
}
.intro {
	padding-top: 80px;

	.wp-block-heading {
		color: var(--color-text);
		text-align: center;
		font-family: var(--font-title);
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 72px;
	}
	.wp-block-columns {
		gap:8%;
		p {
			color: var(--color-text-light);
		}
	}
	.wp-block-cover {
		border-radius: 20px;
		margin-bottom: 72px;
	}
}
.button-slider-wrapper {
	margin-top: 64px;
	.wp-block-buttons {
		display: flex;
		justify-content: flex-end;
		.wp-block-button {
			a {
				background-color: var(--color-green-bg);
				color: var(--color-text-light);
				font-size: 15px;
				font-weight: 500;
				display: block;
				padding: 12px 16px;
				line-height: 15px;
				border-radius: 8px;
			}
		}
	}
	&.amenities {
		margin-top: 32px;
	}
}
.slick-slider {
	.slick-arrow {
		font-size: 0;
		border:none;
		background-color: var(--color-text-light);
		display: block;
		width: 50px;
		height: 50px;
		border-radius: 200px;
		position: absolute;
		top: calc(50% - 25px);
		z-index: 2;
	}
	.slick-prev {
		left: 24px;
		background-image: url(images/icons/CaretLeft.svg);
		background-repeat: no-repeat;
		background-position: center center;
	}
	.slick-next {
		right: 24px;
		background-image: url(images/icons/CaretRight.svg);
		background-repeat: no-repeat;
		background-position: center center;
	}
}
.carousel3slide {
	margin-top: 80px;

	.slick-prev {
		top:-124px;
		left:0;
	}
	.slick-next {
		top:-124px;
		right: unset;
		left: 66px;
	}
	.slick-list {
		.wp-block-image {
			padding-left: 10px;
			padding-right: 10px;
			border-radius: 16px;
			overflow: hidden;
			width: 100%;
			height: auto;
			aspect-ratio: 539 / 316;
			img {
				border-radius: 16px;
				transition: all 300ms linear;
			}
			figcaption {
				position: absolute !important;
				height: 100%;
				width: 100%;
				display: flex;
				justify-content: center;
				align-items: center;
				background: none !important;
				font-size: 16px !important;
				max-width: 320px;
				margin: 0 auto !important;
				padding: 0 !important;
				opacity: 0;
				transition: all 300ms linear;
				flex-direction: column;
				gap: 16px;
				/* text-shadow: none !important; */

				&::before {
					content: '';
					background-color: var(--color-green-bg);
					width: 15px;
					height: 15px;
					border-radius: 50px;
					display: block;
				}
			}
			&:hover {
				img {
					transition: all 300ms linear;
					filter: blur(1.6522198915481567px) brightness(85%);
				}
				figcaption {
					opacity: 1;
				}
			}
		}
	}
}
.carousel3slidesizes {
	margin-top: 96px;
	margin-bottom: 196px;
	display: block !important;

	.slick-prev {
		top:-124px;
		left:0;
	}
	.slick-next {
		top:-124px;
		right: unset;
		left: 66px;
	}
	.slick-list {
		overflow: visible;
	}
	.wp-block-image {
		padding-left: 20px;
		padding-right: 20px;
		padding-top:50px;
		width: 410px !important;
		height: 350px !important;
		display: block !important;

		figcaption {
			text-align: left !important;
			background: none !important;
			text-shadow: none !important;
			color: var(--color-text) !important;
			font-family: var(--font-general);
			font-size: 15px !important;
			font-style: normal;
			font-weight: 300;
			transform: translateY(100%);

			strong {
				display: flex;
				justify-content: space-between;
				width: 100%;
				color: #1A213B;
				font-family: var(--font-title);
				font-size: 20px;
				font-style: normal;
				font-weight: 400;
				line-height: 140%; /* 28px */

				em {
					font-style: normal;
				}
			}
		}

		img {
			border-radius: 20px;
		}
		&:nth-child(2),
		&:nth-child(4),
		&:nth-child(6),
		&:nth-child(8),
		&:nth-child(10) {
			padding-top: 80px;
			width: 500px !important;
			height: 400px !important;
		}
		&:nth-child(3),
		&:nth-child(7) {
			padding-top: 0;
			width: 670px !important;
			height: 460px !important;
		}
		&:nth-child(5),
		&:nth-child(9) {
			padding-top:50px;
			width: 410px !important;
			height: 350px !important;
		}
	}
}
.bienestar {
	margin-top: 120px;

	.wp-block-group__inner-container {
		max-width: 760px;
		margin:0 auto;
	}
	.wp-block-heading {
		color: var(--color-text);
		text-align: center;
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 48px;
	}
}
.slider-center_off {
	display: flex;
}
.lugar-unico {
	padding-top: 180px;
	padding-bottom: 180px;
	background-color: var(--color-green-bg);

	.wp-block-columns {
		gap: 8.33333333%;
	}

	.wp-block-heading {
		color: var(--color-text);
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 80px;
		margin-top: -0.8em;

		img {
			vertical-align: bottom;
		}
	}

	.wp-block-video {
		border-radius: 16px;
		overflow: hidden;
	}
}
.imagemap {
	padding-top: 120px;

	.wp-block-buttons {
		margin-top: 72px;
		display: flex;
	}
}
.wp-block-button {
	a {
		background-color: var(--color-green-bg);
		color: var(--color-text-light);
		font-size: 15px;
		font-weight: 500;
		display: block;
		padding: 12px 16px;
		line-height: 15px;
		border-radius: 8px;
	}
}
#icimagemap {
	max-width: 100%;
	width: 100%;
	height: auto;
}
.zonas-destacadas {
	margin-top: 56px;

	.list3slide {
		.slick-list {
			margin-right: 120px;

			.slick-slide {
				padding-right: 120px;
				color: var(--color-text);
				font-size: 14px;
				font-style: normal;
				font-weight: 300;
				line-height: 140%; /* 19.6px */
				letter-spacing: -0.28px;
				text-transform: uppercase;

				strong {
					margin-bottom: 24px;
					display: flex;
					width: 41px;
					height: 41px;
					border-radius: 200px;
					background-color: var(--color-green-bg);
					justify-content: center;
					align-items: center;
				}
			}
		}
		.slick-prev {
			left:unset;
			right: 66px;
		}
		.slick-next {
			right: 0;
		}
	}
}
.contact-wrapper {
	padding-top: 96px;
	padding-bottom: 96px;
	background-color: var(--color-green-bg);

	.wp-block-columns {
		margin-bottom: 72px !important;

		.wp-block-column:first-child {
			padding-right: 12%;
		}
	}
	.wp-block-heading {
		color: var(--color-text);
		font-size: 40px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 48px */
		letter-spacing: -0.8px;
		margin-bottom: 32px;
	}
	.wp-block-list {
		list-style: none;
		padding: 0;
		margin: 0;
		display: flex;
		gap: 32px;

		li {
			a {
				color: var(--color-text-light);
				font-size: 16px;
				font-style: normal;
				font-weight: 500;
				line-height: 140%; /* 22.4px */
				text-decoration: none;
			}
		}
	}
	.legal-info {
		color: var(--color-text-light);
		text-align: center;
		font-size: 13px;
		font-style: normal;
		font-weight: 300;
		line-height: 140%; /* 18.2px */
	}
}
.wpcf7-form {
	p {
		margin:0;
	}
	.form-control {
		margin-bottom: 16px;
	}
	input[type=checkbox] {
		width: 25px;
		height: 25px;
		background-color: white;
		border-radius: 50%;
		vertical-align: middle;
		border: 2px solid #ddd;
		appearance: none;
		-webkit-appearance: none;
		outline: none;
		cursor: pointer;
		flex-shrink: 0;

		&:checked::after {
			border-color: var(--color-text-light);
			border-style: solid;
			border-width: 0 0.25em 0.25em 0;
			box-sizing: border-box;
			content: '';
			aspect-ratio: 1 / 1.8;
			rotate: 40deg;
			width: 7px;
			display: block;
			margin-left: 7px;
			margin-top: 3px;
		}
		
	}
	label,
	input[type=text],
	input[type=tel],
	select,
	input[type=email] {
		width: 100%;
		border-radius: 10px;
		color: var(--color-text-light);
		font-size: 15px;
		font-style: normal;
		font-weight: 300;

		&::placeholder {
			color: var(--color-text-light);
			font-size: 15px;
			font-style: normal;
			font-weight: 300;
		}
	}
	.intl-tel-input input[type=text] {
		padding-top: 7px;
		padding-bottom: 7px;
		border: none;
		border-radius: 10px;
	}
	.wpcf7-list-item {
		margin:0;

		label {
			display: flex;
			gap:12px;
			font-size: 12px;
		}
	}
	input[type=submit],
	input[type=submit]:hover {
		background-color: var(--color-text-light);
		display: flex;
		width: 100%;
		max-width: 325px;
		height: 50px;
		color: #FCFCED;
		text-align: center;
		font-size: 15px;
		font-style: normal;
		font-weight: 500;
		line-height: 140%; /* 21px */
	}
}
.bird-map {
	max-width: 1920px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;

	.imgl-ico-lbl {
		color: #FCFCED;
		text-align: right;
		font-family: var(--font-title);
		font-size: 21px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 25.2px */
		letter-spacing: -0.42px;
	}

	.imgl-tooltip-arrow {
		display: none !important;
	}
	.imgl-theme-light .imgl-tooltips .imgl-tooltip-form {
		background-color: transparent;
		box-shadow: none;

		p {
			margin-bottom: 4px;

			strong {
				font-weight: 300;
				color: var(--color-text);
				text-align: center;
				font-size: 13;
				font-style: normal;
				letter-spacing: -0.263px;
				display: inline-block;
				border-radius: 6.5px;
				background: #FCFCED;
				width: fit-content;
				padding: 4px 16px;
			}
			&:last-child {
				margin-bottom: 0;
			}
		}
	}
}

@media (min-width: 1700px) {
	.carousel3slide {
		margin-left: -15%;
		margin-right: -15%;

		.slick-prev {
			top:-124px;
			left:calc(15% - 50px);
		}
		.slick-next {
			top:-124px;
			right: unset;
			left: calc(15% + 16px);
		}
	}
	.carousel3slidesizes {
		margin-left: -15%;

		.slick-prev {
			top:-124px;
			left:calc(15% - 50px);
		}
		.slick-next {
			top:-124px;
			right: unset;
			left: calc(15% + 16px);
		}
	}
	.lugar-unico {
		.wp-block-video {
			margin-right: -30%;
		}
	}
}
@media (max-width: 991px) {
	.slick-slider {
		.slick-arrow {
			width: 35px;
			height: 35px;
			background-size: 60%;
		}
	}
	.intro {
		padding-top: 32px;

		.wp-block-heading {
			margin-bottom: 32px;
		}
	}
	.button-slider-wrapper {
		margin-top: 48px;
	}
	.carousel3slide {
		margin-top: 32px;

		.slick-prev,
		.slick-next {
			top:-69px;
		}
		.slick-next {
			left:48px;
		}
		.slick-list {
			.wp-block-image {
				padding-left: 0px;
				padding-right: 0px;
				img {
					/* filter: none !important; */
				}
				figcaption {
					opacity: 1;
					height: fit-content;
					padding-bottom: 16px !important;
					width: 100%;
					margin-left: 0 !important;
					margin-right: 0 !important;
					max-width: unset;
					background: linear-gradient(0deg, #0006, #0000) !important;
				}
			}
		}
	}
	.bienestar {
		margin-top: 48px;
		.wp-block-heading {
			margin-bottom: 32px;
		}
	}
	.carousel3slidesizes {
		margin-top: 32px;

		.slick-prev,
		.slick-next {
			top:-72px;
		}
		.slick-next {
			left:48px;
		}
		.wp-block-image {
			width: 340px !important;
			height: 340px !important;

			&:nth-child(2),
			&:nth-child(3),
			&:nth-child(4),
			&:nth-child(5),
			&:nth-child(6),
			&:nth-child(7),
			&:nth-child(8),
			&:nth-child(9),
			&:nth-child(10) {
				width: 340px !important;
				height: 340px !important;
			}
		}
	}
	.lugar-unico {
		padding-top: 48px;
		padding-bottom: 32px;

		.wp-block-heading {
			margin-bottom: 32px;
		}
	}
	.imagemap {
		padding-top: 32px;

		.wp-block-buttons {
			margin-top: 32px;
		}
	}
	.zonas-destacadas {
		.list3slide {
			.slick-prev {
				left: unset;
				right: 48px;
			}
			.slick-list {
				margin-right: 96px;
				.slick-slide {
					padding-right: 16px;
				}
			}
		}
	}
	.bird-map {
		position: relative;

		.imgl-map .imgl-image {
			width: 1040px !important;
		}
		.imgl-map {
			overflow-x: auto;
			overflow-y: hidden;
		}



		&::after {
			content:'';
			position: absolute;
			right: 12px;
			bottom: 12px;
			background: url("images/icons/swipe.svg");
			background-size: contain;
			background-repeat: no-repeat;
			display: block;
			width: 50px;
			height: 50px;
			filter: var(--filter-svg-black2white);
		}
	}
	.contact-wrapper {
		padding-top: 48px;
		padding-bottom: 48px;

		.wp-block-list {
			flex-direction: column;
			gap: 16px;
		}
		.row {
			.intl-tel-input {
				margin-bottom: 16px;
			}
		}
	}
	.wpcf7-form {
		input[type=submit],
		input[type=submit]:hover {
			margin-left: auto;
			margin-right: auto;
		}
	}
}
/*#endregion */

/**************************/
/********* PROJECT *********/
/**************************/
/*#region */
.luz-natural {
	margin-top: 96px;

	.wp-block-heading {
		color: var(--color-text);
		text-align: center;
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 48px;
	}
	.wp-block-cover {
		min-height: 540px;
		width: 100%;
		height: 100%;
		aspect-ratio: 87 / 54;
		border-radius: 20px;
	}
	.tab-content,
	.tab-pane {
		height: 100%;
	}
	.infobuttons {
		display: flex;
		flex-direction: column;
		gap: 16px;
		height: 100%;
		width: 100%;
		justify-content: space-between;

		.nav-link {
			height: 33%;
			background-color: var(--color-green-bg);
			border-radius: 20px;
			padding: 32px 42px;
			text-align: left;

			p {
				color: var(--color-text);
				margin: 0;
				color: var(--color-text);
				font-size: 14px;
				font-style: normal;
				font-weight: 300;
				line-height: 140%; /* 19.6px */
				letter-spacing: -0.28px;
				text-transform: uppercase;
			}
			figure {
				background-color: var(--color-text-light);
				border-radius: 200px;
				overflow: hidden;
				aspect-ratio: 1;
				padding: 8px;
				width: 41px;
				height: 41px;
				display: flex;
				justify-content: center;
				align-items: center;
				flex-shrink: 0;

				img {
					filter: var(--filter-svg-black2white);
				}
			}

			&.active {
				background-color: var(--color-text-light);
				p {
					color: #FCFCED;
				}
				figure {
					flex-shrink: 0;
					background-color: var(--color-green-bg);
					img {
						filter: none;
					}
				}
			}
		}
	}
}
.alma-mediterranea {
	margin-top: 96px;

	.wp-block-heading {
		color: var(--color-text);
		text-align: center;
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 48px;
	}
	.wp-block-cover {
		min-height: 540px;
		width: 100%;
		height: 100%;
		aspect-ratio: 87 / 54;
		border-radius: 20px;
	}
	.tab-content,
	.tab-pane {
		height: 100%;
		.slick-list {
			max-height: 540px;
		}
	}
	.infobuttons {
		display: flex;
		flex-direction: column;
		gap: 16px;
		height: 100%;
		width: 100%;
		justify-content: flex-start;

		

		.nav-link {
			height: auto;
			background-color: transparent;
			border-radius: 20px;
			padding: 0px 32px;
			text-align: left;

			.wp-block-heading {
				text-align: left;
				margin-bottom: 12px;
				color: var(--color-text-light);
				font-size: 20px;
				font-style: normal;
				font-weight: 500;
				line-height: 140%; /* 28px */
				text-decoration-line: underline;
				text-decoration-style: solid;
				text-decoration-skip-ink: none;
				text-decoration-thickness: 9%; /* 1.8px */
				text-underline-offset: 25%; /* 5px */
				text-underline-position: from-font;
				opacity: 0.15;
			}

			p {
				color: var(--color-text);
				margin: 0;
				color: var(--color-text);
				font-size: 15px;
				font-style: normal;
				font-weight: 300;
				line-height: 140%; /* 19.6px */
				letter-spacing: -0.28px;
				display: none;
				
			}

			&.active {
				padding: 24px 32px;
				background-color: var(--color-green-bg);

				.wp-block-heading {
					text-align: left;
					margin-bottom: 12px;
					color: var(--color-text-light);
					font-size: 20px;
					font-style: normal;
					font-weight: 500;
					line-height: 140%; /* 28px */
					text-decoration-line: underline;
					text-decoration-style: solid;
					text-decoration-skip-ink: none;
					text-decoration-thickness: 9%; /* 1.8px */
					text-underline-offset: 25%; /* 5px */
					text-underline-position: from-font;
					opacity: 1;

					&::before {
						content: '';
						width: 15px;
						height: 15px;
						border-radius: 50px;
						aspect-ratio: 1;
						background-color: #FCFCED;
						display: block;
						margin-bottom: 16px;
					}
				}
				p {
					color: var(--color-text-light);
					display: block;
				}
			}
		}
	}
}
.wideimage {
	margin-top: 180px;
	margin-bottom: 120px;
	max-width: 1920px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	aspect-ratio: 19 / 7;

	.wp-block-cover__inner-container {
		position: absolute;
		width: 100%;
		left: 0;
		top: 120px;

		p {
			font-size: 32px;
			color: white;
			text-transform: uppercase;
			font-weight: 600;
			font-family: var(--font-title);
			letter-spacing: 12px;
		}
	}
}
.text-img-cols {
	margin-top: 196px;
	margin-bottom: 96px;

	.wp-block-columns {
		align-items: center !important;

		.wp-block-column:first-child {
			padding-right: 9%;
		}
	}

	.wp-block-heading {
		color: var(--color-text);
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 32px;

		&::before {
			content: '';
			width: 20px;
			height: 20px;
			border-radius: 50px;
			aspect-ratio: 1;
			background-color: var(--color-green-bg);
			display: block;
			margin-bottom: 16px;
		}
	}
	.wp-block-image {
		aspect-ratio: 1;
		width: 100%;
		height: auto;
		border-radius: 20px;
		overflow: hidden;

		img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}
	.wp-block-buttons {
		margin-top: 32px;
	}
}
.floating-bg {
	width: 100%;
	height: 250px;
	position: relative;
	margin: 0;

	img {
		width: 465px;
		height: auto;
		position: absolute;
		right: 0;
		bottom: 0;
	}
}
@media (max-width: 991px) {
	.intro {
		.wp-block-cover {
			margin-bottom: 32px;
		}
	}
	.luz-natural {
		margin-top: 32px;

		.wp-block-heading {
			margin-bottom: 32px;
		}
		.infobuttons {
			.nav-link {
				padding: 12px;
				display: flex;
				gap: 12px;
				align-items: center;

				.wp-block-image {
					margin-bottom: 0;
				}
			}
		}
		.wp-block-cover {
			min-height: unset;
			aspect-ratio: 1;
			width: 100%;
		}
	}
	.wideimage {
		margin-top: 32px;
		margin-bottom: 32px;
		min-height: unset;
	}
	.alma-mediterranea {
		margin-top: 32px;

		.wp-block-heading {
			margin-bottom: 32px;
		}
		.wp-block-cover {
			min-height: unset;
			aspect-ratio: 16 / 9;
			width: 100%;
		}
		.infobuttons {
			.nav-link {
				padding: 0 24px;
				&.active {
					padding:24px;
					.wp-block-heading {
						position: relative;
						&::before {
							position: absolute;
							margin: 0;
							top:0;
							left:0;
							transform: translate3d(-100% , -100% , 0);
						}
					}
				}
			}
		}
	}
	.text-img-cols {
		margin-top: 32px;
		margin-bottom: 32px;
	}
	.floating-bg {
		height: 125px;
		img {
			width: 50%;
		}
	}
}

/*#endregion */

/**************************/
/********* AMENITIES *********/
/**************************/
/*#region */
.enums {
	margin-top: 64px;

	figure {
		width: 60px;
		height: 60px;
		background-color: var(--color-green-bg);
		border-radius: 200px;
		display: flex !important;
		align-items: center;
		justify-content: center;
		margin-bottom: 32px;
	}
	p {
		color: var(--color-text-light);
		text-align: center;
		font-size: 14px;
		font-style: normal;
		font-weight: 300;
		line-height: 140%; /* 19.6px */
		letter-spacing: -0.28px;
		text-transform: uppercase;
		position: relative;

		/* &::after {
			content: '';
			width: 1px;
			height: 32px;
			background-color: #DDD39F;
			display: block;
			position: absolute;
			right: 0;
			top:calc(50% - 16px);
		} */
	}
	.wp-block-columns {
		gap: 0px !important;
		.wp-block-column:last-child {
			p::after{
				content: none;
			}
		}
	}
}
.cielo-golf {
	margin-top: 120px;

	.wp-block-heading {
		color: var(--color-text);
		text-align: center;
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 48px;
	}
	.wp-block-cover {
		border-radius: 20px;
		aspect-ratio: 13 / 6;
		min-height: unset;
		width: 100%;
		height: auto;
		position: relative;

		.wp-block-cover__inner-container {
			position: absolute;
			width: 50%;
			left: 32px;
			top: 32px;
			background-color: var(--color-text-light);
			color: #FCFCED;
			padding: 24px 32px;
			border-radius: 20px;

			.wp-block-heading {
				color: #FCFCED;
				font-size: 20px;
				font-style: normal;
				font-weight: 400;
				line-height: 140%; /* 28px */
				margin-bottom: 8px;
				text-align: left;
			}

			p {
				color: #FCFCED;
				margin: 0;
			}
		}
	}
}
@media (max-width: 991px) {
	.enums {
		margin-top: 32px;
		figure {
			margin-bottom: 8px;
		}
		p {
			&::after {
				content: none;
			}
		}
	}
	.cielo-golf {
		margin-top: 32px;
		.wp-block-heading {
			margin-bottom: 32px;
		}
		.wp-block-cover {
			.wp-block-cover__inner-container {
				left:0px;
				top:0px;
				padding: 8px 24px;
				width: 100%;

				.wp-block-heading {
					margin: 0;
				}
				
				p {
					display: none;
				}
			}
		}
	}
	.wideimage {
		.wp-block-cover__inner-container {
			top:50%;
			transform: translateY(-50%);
		}
	}
}

/*#endregion */

/**************************/
/********* SECTION *********/
/**************************/
/*#region */
.location-intro {
	.wp-block-gallery {
		margin-bottom: 64px;
	}
}
.golf-18-hoyos {
	margin-top: 120px;
	padding-top: 120px;
	padding-bottom: 120px;
	background-color: var(--color-green-bg);

	.wp-block-heading {
		color: var(--color-text);
		text-align: center;
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 32px;
	}
	p {
		max-width: 875px;
		margin-left: auto;
		margin-right: auto;
	}
	.wp-block-cover {
		border-radius: 20px;
		min-height: 450px;

		&.textbox{
			.wp-block-cover__inner-container {
				position: absolute;
				left: 30px;
				top:30px;
				width: 50%;
				border-radius: 20px;
				background-color: var(--color-text-light);
				padding: 30px;
				
				p {
					color: white;

					&:first-child {
						font-size: 20px;
						font-weight: 400;
					}
					&:last-child {
						margin-bottom: 0;
					}
				}
			}
		}

	}
	.img-cols {
		margin-top: 42px;
	}
	.img-text-cols {
		margin-top: 16px;

		.wp-block-column {
			display: flex;
			flex-direction: column;
			gap: 16px;
			justify-content: space-between;
		}
		.wp-block-cover {
			min-height: unset;
			width: 100%;
			aspect-ratio: 64 / 25;
		}
		.wp-block-group {
			border-radius: 20px;
			overflow: hidden;
			width: 100%;
			background-color: #FCFCED;
			padding:48px;

			.wp-block-heading {
				margin-bottom: 5px;
				color: var(--color-text);
				font-size: 35px;
				font-style: normal;
				font-weight: 300;
				line-height: 120%; /* 42px */
				letter-spacing: -0.7px;
				text-align: left;
			}
			
			p {
				font-size: 15px;
				margin-bottom: 0;
			}
			p:nth-child(2) {
				display: block;
				color: #1A213B;
				font-family: var(--font-title);
				font-size: 20px;
				font-style: normal;
				font-weight: 400;
				line-height: 140%; /* 28px */
				margin-bottom: 12px;

				strong {
					font-weight: 300;
				}
			}
		}
		.wp-block-column:last-child {
			.wp-block-group {
				background-color: var(--color-text-light);
				
				.wp-block-heading,
				p {
					color:white;
				}
			}
		}
	}
}
.planes-cada-dia {
	margin-top: 96px;

	.slick-prev {
		left: 0px;
		bottom: 60px;
		top: unset;
	}
	.slick-next {
		left: 66px;
		bottom: 60px;
		top: unset;
		right: unset;
	}

	.wp-block-image {
		aspect-ratio: 32 / 40;
		width: 100%;
		height: auto;

		img {
			border-radius: 20px;
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
		figcaption {
			margin-top: 12px;
			color: #22282B;
			font-size: 15px;
			font-style: normal;
			font-weight: 300;
			line-height: 120%; /* 18px */
		}
	}
	.wp-block-group {
		.wp-block-columns{
			.wp-block-column {
				p {
					color: #1A213B;
					font-family: var(--font-title);
					font-size: 20px;
					font-style: normal;
					font-weight: 400;
					line-height: 120%; /* 24px */
					margin-bottom: 0;
				}
				.wp-block-heading {
					color: #22282B;
					font-family: var(--font-title);
					font-size: 35px;
					font-style: normal;
					font-weight: 300;
					line-height: 120%;
					letter-spacing: -2px;
					margin-bottom: 24px;
				}
				&:last-child {
					display: flex;
					align-items: center;
				}
			}
		}
	}
	.wp-block-columns {
		margin-top: 48px;
	}
}
.conectado {
	margin-top: 96px;
	background-color: #EAE5C8;
	padding-top: 80px;
	padding-bottom: 80px;

	.wp-block-columns {
		align-items: center !important;

		.wp-block-column:first-child {
			padding-right: 9%;
			position: relative;
			z-index: 2;
		}
	}
	.wp-block-heading {
		color: var(--color-text);
		font-size: 35px;
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 42px */
		letter-spacing: -0.7px;
		margin-bottom: 32px;
	}
	p {
		color: #1A213B;
	}
}
.slide2slider {
	.slick-list {
		overflow: visible;

		&::after {
			content: '';
			position: absolute;
			left: 0;
			top: 0;
			height: 100%;
			width: 51vw;
			transform: translateX(-100%);
			background-color: #EAE5C8;
		}
	}
	.slick-prev {
		left: calc(-100% - 16px);
		bottom:0px;
		top:unset;
	}
	.slick-next {
		right: unset;
		left: calc(-100% + 48px);
		bottom:0px;
		top:unset;
	}
	.wp-block-image {
		aspect-ratio: 32 / 54;
		padding-left: 7px;
		padding-right: 7px;
		padding-bottom: 32px;

		
		img {
			border-radius: 20px;
			width: 100%;
			height: auto;
			object-fit: cover;
		}
		figcaption {
			background: none !important;
			color: #1A213B !important;
			font-family: var(--font-title);
			font-size: 20px !important;
			font-style: normal;
			font-weight: 300;
			line-height: 120%; /* 24px */
			letter-spacing: -0.4px;
			text-shadow: none !important;
			padding:0 !important;
			text-align: left !important;
			scrollbar-color: #0000 #0000 !important;
			padding-left: 7px !important;
		}
	}
}
@media (max-width: 991px) {
	.location-intro {
		.wp-block-gallery {
			margin-bottom: 64px;
			margin-top: 96px;
		}
	}
	.golf-18-hoyos {
		margin-top: 32px;
		padding-top: 32px;
		padding-bottom: 32px;

		.wp-block-cover {
			&.textbox {
				.wp-block-cover__inner-container {
					display: none;
				}
			}
		}
		.green-box {
			border-radius: 20px;
			overflow: hidden;
			width: 100%;
			background-color: var(--color-text-light);
			padding: 20px;
			margin-top: 16px;

			.wp-block-heading, p {
				color:white;
				text-align: left;
			}
		}
		.img-text-cols {
			.wp-block-group {
				padding: 20px;
			}
			.wp-block-column:last-child {
				flex-direction:column-reverse;
			}
		}
	}
	.conectado {
		margin-top: 0px;
		padding-top: 32px;
		padding-bottom: 32px;

		.wp-block-heading {
			br {
				display: none;
			}
		}
	}
}

/*#endregion */

/**************************/
/********* CONTACT *********/
/**************************/
/*#region */
body:has(.thank-you) {
	.main-header {
		background-color: var(--color-text-light);
	}
}
.contact-hero-header {
	.wp-block-cover {
		min-height: 450px;
		width: 100%;
		height: auto;
		aspect-ratio: 24 / 7.7;
		max-height: 770px;
	}
}
.thank-you {
	margin-top: 100px;
	padding-top: 32px;
	padding-bottom: 32px;

	.wp-block-image {
		border-radius: 20px;
		overflow: hidden;
	}
	.wp-block-columns {
		align-items: center !important;
		margin-bottom: 0 !important;

		.wp-block-column:first-child {
			padding-right: 0;
			flex-shrink: 0;
		}
		.wp-block-column:last-child {
			padding-left: 9%;
		}
	}
}
@media (max-width: 991px) {
}

/*#endregion */

/**************************/
/********* LEGAL *********/
/**************************/
/*#region */
.legal-page {
	margin-top: 96px;
	margin-bottom: 96px;

	.wp-block-heading {
		margin-bottom: 32px;
		margin-top: 32px;
	}
	p {
		color: var(--color-text);
	}
	.wp-block-list {

		li {
			font-weight: 300;
		}
	}
}
@media (max-width: 991px) {
}

/*#endregion */


/**************************/
/********* SECTION *********/
/**************************/
/*#region */

@media (max-width: 991px) {
}

/*#endregion */
