/*
Theme Name: The Grove
Theme URI: https://www.imagenmarbella.com
Author: Imagen Marbella
Author URI: https://www.imagenmarbella.com
Description: The Grove
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

The Grove WordPress Theme, (C) 2022 The Grove
This theme has only developed for The Grove site
*/

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

@font-face {
    font-family: "Royale Couture Script";
    font-style: normal;
    font-weight: 400;
    src: url("fonts/RoyaleCouture-Script.woff2") format("woff2"), url("fonts/RoyaleCouture-Script.woff") format("woff"), url("fonts/RoyaleCouture-Script.ttf") format("truetype");
}

@font-face {
    font-family: "Royale Couture Serif";
    font-style: normal;
    font-weight: 400;
    src: url("fonts/RoyaleCouture-Serif.woff2") format("woff2"), url("fonts/RoyaleCouture-Serif.woff") format("woff"), url("fonts/RoyaleCouture-Serif.ttf") format("truetype");
}

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

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

/* fuente Arimo de Google incluida en functions.php línea 6 */
/* @import url('https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap'); */



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

@font-face {
    font-family: "Arimo";
    font-style: bold;
    font-weight: 600;
    src: url("fonts/Arimo-Bold.woff2") format("woff2"), url("fonts/Arimo-Bold.woff") format("woff"), url("fonts/Arimo-Bold.ttf") format("truetype");
} */

/*#endregion */

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

:root {
	--color-black: #000000;
	--color-white: #ffffff;
	--color-green-bg: #CFE0B1;
	--color-gray: #D5D5D5;
	--color-text: #5B533B;
	--color-text-light: #FCF9EC;
	--color-text-green: #C8B98B;
	--color-wrapper-form: #C8B98B;
	/* --font-title: "Royale Couture", sans-serif; */
	--font-title: "BlauerNue-Thin", sans-serif;
	--font-title-strong: "Royale Couture Serif", serif;
	--font-general: "Inter Tight", 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;
} */

.imgl-map .imgl-markers .imgl-marker-offset{
	cursor: pointer !important;
}

.imgl-pin-data{
	animation: ic-latido 2s ease-in-out infinite;
	&:hover{
		animation: none;
	}
}

@keyframes ic-latido {
  0% { transform: scale(1); }
  50% { transform: scale(1.2); }
  100% { transform: scale(1); }
}

.imgl-map .imgl-tooltips .imgl-tooltip .imgl-tt{
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

.imgl-map .imgl-tooltips .imgl-tooltip .imgl-tt,
.imgl-map .imgl-tooltips .imgl-tooltip{
	min-height: 172px !important;
}

.imgl-theme-light .imgl-tooltips .imgl-tooltip-form{
	position: relative;
	padding: 0 !important;
	background-color: #C0DFD9 !important;
	width: 241px !important;
	min-height: 172px !important;
	border-radius: 0 !important;
	transition: .3s all !important;
	transform: translateY(-10px);
	margin-bottom: .5px !important;


	img{
		position: absolute;
		top: 0;
		left: 0;
		width: 241px !important;
		height: 172px !important;
		object-fit: cover;
		opacity: 0;
		transition: .3s all;
	}

	p{
		padding: 10px 20px !important;
	}

	&:hover{
		img{
			opacity: 1;
		}
	}
}

.imgl-theme-light .imgl-tooltips .imgl-tooltip-form .imgl-tooltip p:first-child{
	color: var(--color-text);
	font-family: var(--font-general);
	font-size: 18px;
	font-style: normal;
	/* font-weight: 600; */
	line-height: 26.265px; /* 145.918% */
	letter-spacing: 4.5px;
	text-transform: uppercase;
}

.imgl-theme-light .imgl-tooltips .imgl-tooltip-form .imgl-tooltip p:last-child{
	color: var(--color-text);
	font-family: var(--font-general);
	font-size: 15px;
	font-style: normal;
	/* font-weight: 400; */
	line-height: normal;
	letter-spacing: 0.75px;
	text-transform: uppercase;
}

.imgl-theme-light .imgl-tooltips .imgl-tooltip-wrap.imgl-tooltip-top .imgl-tooltip-arrow{
	border-color: #C0DFD9 transparent transparent !important;
	top: 101% !important;
}

.imgl-pin-data.active {
  background-image: url("images/planoamenities/punto-activo.svg") !important;
}

*:focus {
  outline: none !important;
  box-shadow: none !important;
}

.ic-preloader {

	display: none !important;

	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100dvh;

	display: flex;
	align-items: center;
	justify-content: center;

	opacity: 0;
	z-index: -1;
	pointer-events: none;

	svg {
		z-index: 1;
		transform: scale(1);
	}

	&::before,
	&::after {
		content: '';
		position: absolute;
		top: 0;
		height: 100%;
		width: 50%;
		background-color: var(--color-text-light);
	}

	&::before {
		left: 0;
	}

	&::after {
		right: 0;
	}

	/* 🔥 PRELOADER VISIBLE */
	&.is-active {
		opacity: 1;
		z-index: 1;
		pointer-events: all;
	}

	/* 🔥 ANIMACIÓN DE SALIDA */
	&.is-hide {
		/* transition: opacity 0.8s ease; */

		svg {
			transition: transform 2s ease;
			transform: scale(0);
		}

		&::before,
		&::after {
			transition: width 2s ease;
			width: 0;
		}

		/* opacity: 0; */
	}
}




body{
	font-family: var(--font-general);
	/* font-weight: 200; */
	/* font-optical-sizing: auto; */

	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smooth: always;

	font-style: normal;
	color: var(--color-text);
	font-size: 18px;
	background-color: var(--color-text-light);
	overflow-x: hidden;
}

/* form {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 15px; 
} */

input, textarea {
    width: 100%;
    padding: 6px 0;
    border: 0;
    border-bottom: 1px solid var(--color-text) !important;
    background-color: transparent;
    color: var(--color-text);
    font-family: var(--font-arimo);
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 22.513px; /* 150.087% */
    letter-spacing: 0.6px;
}

.iti{
	width: 100% !important;
}

.iti__selected-flag{
	color: var(--color-text);
    font-family: var(--font-general);
    font-size: 16px;
    font-style: normal;
    /* font-weight: 400; */
    line-height: 22.513px;
    letter-spacing: 0.64px;
}

input[type="checkbox"] {
    width: fit-content;
}

.wpcf7-list-item{
	margin-left: 0;
}

form p{
	margin-bottom: 0;
}

form label,
form a{
    color: var(--color-text);
    font-family: var(--font-arimo);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 22.513px; /* 187.609% */
    letter-spacing: 0.48px;
}

.tempContDiv{
	margin-top: 2rem;
	.termsContainer{
		> div{
			display: flex;
			align-items: center;
			margin-bottom: 1rem;
		}
	}
	+ label + div{
		display: flex;
		align-items: center;
	}
}

input[type=submit],
button[type=submit] {
	display: block;
	padding: calc(.667em + 2px) calc(1.333em + 2px);
	margin: 60px auto;
	max-width: 300px;
    background-color: transparent;
	color: var(--color-text);
	text-align: center;
	font-family: var(--font-general);
	font-size: 15px;
	font-style: normal;
	/* font-weight: 400; */
	line-height: normal;
	letter-spacing: 0.75px;
	text-transform: uppercase;
	position: relative;
	border: 0;

	&::after{
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background-color: var(--color-text);
		transition: .3s all;
	}

	&:hover{
		&::after{
			bottom: .5rem;	
		}
	}
}


form input[type=checkbox] {
	appearance: none;
	width: 16px;
	min-width: 16px;
	height: 16px;
	padding: 0;
	border: 1px solid rgba(46, 40, 43, .5);
	background-color: transparent;
    float: left;
    margin-right: 10px;
}

form input[type=checkbox]:checked {
	background-image: url(images/close-menu.svg);
	background-size: 12px 12px;
	background-repeat: no-repeat;
	background-position: center center;
}

input::placeholder,
textarea::placeholder{
	color: var(--color-text);
}

input:disabled,
textarea:disabled,
input[readonly],]
textarea[readonly],
input:focus-visible,
textarea:focus-visible,
input:focus,
textarea:focus {
	box-shadow: none;
}


/*
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;
}

/* :root :where(.wp-block-cover h1:not(.has-text-color)),
:root :where(.wp-block-cover h2:not(.has-text-color)),
:root :where(.wp-block-cover h3:not(.has-text-color)),
:root :where(.wp-block-cover h4:not(.has-text-color)),
:root :where(.wp-block-cover h5:not(.has-text-color)),
:root :where(.wp-block-cover h6:not(.has-text-color)), */
:root :where(.wp-block-cover p:not(.has-text-color)){
	color: var(--color-text);
}
p {
	color: var(--color-text);
	font-family: var(--font-general);
	font-size: 16px;
	font-style: normal;
	font-weight: 200;
	line-height: 22.513px; /* 140.706% */
	/* letter-spacing: 0.64px; */
}
ol, ul {
	padding-left: 24px;
}
hr {
	margin: 16px 0;
	border: 0;
	opacity: 1;
}
b, strong {
	font-weight: 500 !important;
}
.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;
}
.wp-block-heading{
	color: var(--color-text);
}
@media (max-width: 991px) {
	body {
		background-image: none;
	}
	.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;
	}
}

.ic-wrapper-error{
	padding-top: 160px;
}
/*#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: 1320px;
	}
}
/*#endregion */

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

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

	&.is-hide{
		top: -100%;
		transition: .8s all;
	}

	figure, p {
		margin-bottom: 0;
	}

	.wp-block-buttons{
		.wp-block-button{
			.wp-block-button__link{
				background-color: var(--color-text-light);
				border-radius: 0;
				padding: 10px 30px;

				&::after{
					background-color: var(--color-text-light);
					left: 10%;
					width: 80%;
				}

				&:hover{
					&::after{
						background-color: var(--color-text);
					}	
				}
				
				&.is-active{
					background-color: var(--color-text);
					color: var(--color-text-light);
	
					&::after{
						background-color: var(--color-text);
					}

					&:hover{
						&::after{
							background-color: var(--color-text-light);
						}	
					}
				}
			}

		}
	}

	.header-left{
		display: flex;
		align-items: center;
		margin-left: -180px;

		.menu{
			/* padding-top: .5rem; */
			margin-left: 60px;
		}
	}
	
	.header-right{
		display: flex;
		align-items: center;
		margin-right: -180px;

		.widget-header-right:nth-child(2){
			margin-right: 60px;
		}
	}

	.widget-header-left,
	.widget-header-right{
		margin-top: 0 !important;
		transition: .3s all;
	}

	&.scrolled {
		transition: all 300ms linear;

		.widget-header-left:not(:nth-child(2)):not(:nth-child(3)),
		.widget-header-right:not(:last-child){
			margin-top: -100% !important;
		}

		&.main-header-up{
			.widget-header-left:not(:nth-child(2)):not(:nth-child(3)),
			.widget-header-right:not(:last-child){
				margin-top: 0 !important;
			}
		}
	}

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

		#header-logo{
			margin-bottom: 1rem;
		}

		ul {
			justify-content: center;
			display: flex;
			list-style: none;
			padding: 0;
			margin: 0;
			gap:45px;
			
			li {
				position: relative;
				a {
					color: var(--color-text-light);
					font-family: var(--font-title);
					font-size: 15px;
					font-style: normal;
					font-weight: 100;
					line-height: normal;
					/* letter-spacing: 0.75px; */
					text-transform: uppercase;
					text-decoration: none;
					padding: calc(.667em + 2px) calc(1.333em + 2px);

					&::after{
						content: '';
						position: absolute;
						bottom: -.5rem;
						left: 0;
						width: 100%;
						height: 1px;
						background-color: var(--color-white);
						opacity: 0;
						transition: .3s all;
					}

					&:hover{
						&::after{
							opacity: 1;
							bottom: 0;
						}
					}
				}
				&.current-menu-item{
					a{
						&::after{
							opacity: 1;
							bottom: 0;
						}
					}
				}
			}
		}

		.header-left{
			ul:not([role="menu"]) {
				li{
					&:nth-child(4),
					&:last-child{
						display: none
					}
				}
			}
			ul[role="menu"]{
				display: none;
			}
		}

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

			.wpml-ls {
				margin-left: 45px;
			}
			
		}
	}

	&.main-header-up{
		background-color: var(--color-text-light);

		#header-logo img{
			content: url('/wp-content/uploads/2026/01/logo-thegrove-dark.svg');
		}

		.wp-block-buttons{
			.wp-block-button{
				.wp-block-button__link{
					background-color: var(--color-text-light);
					color: var(--color-text);

					&::after{
						background-color: var(--color-text);
					}
				}
			}
		}

		.container{
			ul{
				li{
					a{
						color: var(--color-text);
						&::after{
							background-color: var(--color-text);
						}
					}
				}
			}
		}

		.header-right{
			.wp-block-buttons{
				.wp-block-button{
					.wp-block-button__link{
						color: var(--color-text);
						&::after{
							background-color: var(--color-text);
						}
					}
				}
			}
		}
	}
}

.home{
	.main-header{
		top: -100%;
		
		&.is-show{
			top: 0;
		}
	}
}

html[lang="es-ES"]{
	.main-header{
		&.scrolled{
			.widget-header-right:nth-last-child(2) {
				margin-top: 0 !important;
			}
		}
	}
}

#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;
	&.is-active{
		span{
			background-color: var(--color-text);
		}
	}
}

#ic-mobile-switcher span {
	display: block;
	position: absolute;
	height: 1px;
	width: 100%;
	background: var(--color-text-light);
	border-radius: 0;
	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: rgba(0, 0, 0, 0.50);
	background-blend-mode: multiply;
	backdrop-filter: blur(3px);
	height: calc(100vh - 100px);
	transition: all 300ms linear;
	display: flex;
	flex-direction: column;
	
	.widget-mobile{
		background-color: var(--color-text-light);
	}
	
	.menu {
		display: flex;
		flex-direction: column;
		text-align: center;
	}
	#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 {
			.header-left{
				.menu{
					margin-left: 1rem;
					gap: 1rem;
				}
			}
			.widget-header-right:nth-child(2){
				margin-right: 0;
			}
			.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-right {
			.widget-header-right:first-child {
				display: none;
			}
			.wpml-ls {
				padding: 0 !important;
				a {
					margin-right: 0 !important;
				}
			}
		}
	}
	#ic-mobile-switcher {
		display: block;
		position: absolute;
		top: 30px;
		right: 30px;
		/* margin-left: auto; */
	}
}

/*#endregion */

/**************************/
/********* FOOTER *********/
/**************************/
/*#region */
#ic-modal-contact {
  display: none;
}

#ic-modal-contact.show {
  display: block;
}

.modal-content{
	background-color: var(--color-wrapper-form);
}

.modal-header{
	border-bottom: 0;
}

.modal-body{
	.ic-page-contact {
		.wp-block-cover {
			padding-top: 1rem;
		}
	}
}

button.modal-close{
	/* color: var(--color-wrapper-form);
	background-color: var(--color-text);
	border-radius: 100%;
	padding: 1rem; */

	width: 32px;
	height: 32px;
	padding: 0;
	background-image: url('images/close-modal.svg');
	background-size: 32px 32px;
	border-radius: 0;

	&::after{
		content: none;
	}
}

.main-footer {
	color: var(--color-text);
	padding-top: 75px;
	padding-bottom: 15px;

	a {
		text-decoration: none;
	}
	ul {
		list-style: none;
		padding: 0;
		margin:0;
	}
	p, figure {
		margin:0;
	}
	.footer-wrapper {
		display: flex;

		.footer-one,
		.footer-two{
			width: 50%;
		}

		.footer-one{
			.wp-block-image{
				img{
					width: 90%;
				}
			}
		}

		.footer-two {

			.widget-footer:nth-child(2){
				.menu{
					display: flex;
					justify-content: space-between;
					margin-top: 60px;
					margin-bottom: 45px;
					li{
						a{
							font-family: var(--font-title);
							font-size: 15px;
							font-style: normal;
							font-weight: 400;
							line-height: normal;
							/* letter-spacing: 0.6px; */
							text-transform: uppercase;
						}
	
						&:nth-last-child(2){
							display: none;
						}
					}
				}
			}
			
			.widget-footer:last-child{
				opacity: .4;

				.wp-block-columns{
					.wp-block-column{
						display: flex;
						justify-content: space-between;
						align-items: center;
					}
				}

				.menu{
					display: flex;
					justify-content: space-between;
					margin-bottom: 0;
					gap: 25px;
					li{
						a{
							color: var(--color-text);
							font-family: var(--font-general);
							font-size: 14px;
							font-style: normal;
							/* font-weight: 400; */
							line-height: 22.513px; /* 160.807% */
							/* letter-spacing: 0.56px; */
						}
					}
				}

				p{
					color: var(--color-text);
					font-family: var(--font-general);
					font-size: 14px;
					font-style: normal;
					/* font-weight: 400; */
					line-height: 0;
					/* letter-spacing: 0.56px; */
					a{
						text-decoration: underline;
					}
				}
			}

			.ic-footer-icons{
				display: flex;
				list-style: none;
				gap: 1rem;
				margin-top: 20px;

				li{
					a{
						font-size: 0;
					}
				}
			}
		}
		
	}
	.bottom-footer {
		margin-top: 25px;

		p {
			opacity: .4;
			color: var(--color-text);
			font-family: var(--font-general);
			font-size: 14px;
			font-style: normal;
			/* font-weight: 400; */
			line-height: 22.513px; /* 160.807% */
			/* letter-spacing: 0.28px; */
		}
	}

}


.bottom-fixed{
	z-index: 1;
	position: fixed;
	bottom: 2rem;
	right: 2rem;
	display: flex;
	flex-direction: column;
	align-items: center;
/* 
	.widget-footer-fixed{
		height: 0;

		&:last-child{
			height: inherit;
		}
	}

	&.ic-visible{
		.widget-footer-fixed{
			height: inherit;
		}
	} */


	figure{
		margin: 0 auto;
		margin-top: 1rem;
		opacity: 0;
		transform: scale(0);
		transition: .3s all;
		pointer-events: none;

		a{
			border-radius: 100%;
			background: #5B533B;
			width: 42px;
			height: 42px;
			display: flex;
			align-content: center;
			justify-content: center;
			position: relative;

			img{
				margin-bottom: 0;
			}

			&::before{
				content: '';
				position: absolute;
				top: -5px;
				left: -5px;
				height: calc(100% + 10px);
				width: calc(100% + 10px);
				border-radius: 100%;
				border: 1px solid #5B533B;
				opacity: 0.91;
				filter: blur(1.25px);
				animation: ic-pulse 1.8s ease-in-out infinite;
			}
		}

		&.ic-figure-visible{
			opacity: 1;
			transform: scale(1);
			pointer-events: all;
		}

		&.ic-isotipo{
			opacity: 1;
			transform: scale(1);
			position: relative;
			z-index: 1;
			pointer-events: all;

			a{
				width: 53px;
				height: 53px;
				opacity: 1;
			}
		}

		&.ic-whats{
			img{
				margin-top: 10px;
			}
		}
	}

}

@keyframes ic-pulse {
	0% {
		transform: scale(1);
		opacity: 0.9;
	}
	50% {
		transform: scale(1.05);
		opacity: 0.4;
	}
	100% {
		transform: scale(1);
		opacity: 0.9;
	}
}

@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 */

.home{
	.carousel3slideCenter{
		margin-top: 120px;

		.slick-list{
			padding: 0;
		}

		.slick-slide{
			margin: 50px 20px;
			transition: .3s all;
			transition-delay: 0.05s;
			position: relative;
			width: 640px !important;
			height: 400px;
			
			img{
				width: 100%;
				height: 300px;
				object-fit: cover;
				transition: .3s all;
			}
			
			.wp-element-caption{
				color: var(--color-text);
				text-align: center;
				font-family: var(--font-general);
				font-size: 18px;
				font-style: normal;
				/* font-weight: 600; */
				line-height: 26.265px; /* 145.918% */
				letter-spacing: 4.5px;
				text-transform: uppercase;
				opacity: 0;
				margin-top: 25px;
			}

			&.slick-current, &.is-active-custom{
				margin-top: 0;
				z-index: 2;
				transition-delay: 0s;

				img{
					height: 400px;
				}
				
				.wp-element-caption{
					opacity: 1;
				}
			}
		}
	}
}

.ic-wrapper-map{
	margin-top: -360px;
	/* margin-left: -500px; */

	#map-container{
		position: relative;
	}

	.ic-marker-info{
		p{
			color: var(--color-text);
			font-family: var(--font-general);
			font-size: 43.077px;
			font-style: normal;
			/* font-weight: 400; */
			/* line-height: 114.872px; 266.667% */
			letter-spacing: 3.877px;
			text-transform: uppercase;

			&:nth-child(2){
				font-size: 16px;
				/* line-height: 22.513px; 140.706% */
				letter-spacing: 0.64px;
				text-transform: uppercase;
			}
		}
	}

	.ic-marker-location{
		/* background-image: url('/wp-content/themes/thegrove/images/map/chincheta-on.svg');
		background-position: bottom right;
		background-repeat: no-repeat;
		background-size: 21px 35px; */

		h4{
			margin-bottom: .5rem;
		}

		h5{
			color: var(--color-text);
			font-family: var(--font-general);
			font-size: 15px;
			font-style: normal;
			/* font-weight: 400; */
			line-height: normal;
			letter-spacing: 0.75px;
			text-transform: uppercase;
		}
	}


	.img-marker{
		width: 100%;
		/* max-width: 620px; */
		height: 325px;
		object-fit: cover;
	}
	
	#info-controls{
		margin-top: -8px;

		button{
			border: 0;
			margin-top: 0;
			background-color: var(--color-text-light);
			transform: scale(.9);

			&#prev{
				transform: rotate(180deg) scale(.9);
			}
			&::after{
				content: none;
			}
		}
	}
	
	#info-box{
		position: absolute;
		bottom: 230px;
		right: 85px;
		padding: 20px;
		width: 100%;
		max-width: 1110px; 
		background: #FCF9EC;
		box-shadow: 3px 4px 4px 0 rgba(0, 0, 0, 0.21);
	}
}


.carousel1slidewide{
	margin-top: 50px;

	.slick-slide{
		position: relative;

		&::after{
			content: '';
			position: absolute;
			bottom: 0;
			left: 0;
			right: 0;
			top: 0;
			background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 69.54%, rgba(0, 0, 0, 0.51) 100%);
		}

		figure{
			margin-bottom: 0;

			.wp-element-caption{
				position: absolute;
				bottom: 2rem;
				left: 80px;
				z-index: 1;
				/* color: var(--color-text-light);
				font-family: var(--font-general);
				font-size: 30px;
				font-style: normal;
				font-weight: 400;
				line-height: 26.265px; 87.551% */
				color: var(--color-text-light);
				font-family: var(--font-general);
				font-size: 16px;
				font-style: normal;
				/* font-weight: 400; */
				line-height: 22.513px; /* 140.706% */
				letter-spacing: 0.64px;
				text-transform: uppercase;
			}
	
			img{
				width: 100%;
				height: 975px;
				max-height: 100vh;
				object-fit: cover;
			}
		}


		p{
			z-index: 1;
			position: absolute;
			bottom: 50px;
			left: 50%;
			transform: translateX(-50%);
			color: var(--color-text-light);
			font-family: var(--font-general);
			font-size: 16px;
			font-style: normal;
			/* font-weight: 400; */
			line-height: 22.513px; /* 140.706% */
			letter-spacing: 0.64px;
			padding-right: 15%;
			margin-bottom: 0;
		}
	}
}

button.slick-arrow{
	z-index: 1;
	position: absolute;
	top: initial;
	left: initial;
	bottom: 50px;
	right: 80px; 
	background-image: url('images/icons/arrow-right-slider.svg');
	background-size: 43px 43px;
	background-color: transparent;
	width: 43px;
	height: 43px;
	border: 0;
	font-size: 0;

	&::after{
		content: none;
	}

	&.slick-prev{
		right: 145px;
		background-image: url('images/icons/arrow-left-slider.svg');
	}
}

.wp-block-cover.vh-100{
	figure{
		margin-top: -35vh;
	}
}

.ic-wrapper-oasis{
	margin-top: 100px;
	margin-bottom: 200px;

	/* .wp-block-heading{
		margin-bottom: 60px;
	} */

	.wp-block-buttons{
		margin-top: 35px;
		margin-bottom: 60px;
	}
}

.ic-video-thegrove{
	max-height: 600px;
	overflow: hidden;
	video{
		width: 100%;
	}
}

.ic-cover-ferre{
	min-height: 600px;
	margin-bottom: 160px;

	.wp-block-heading{
		color: var(--color-text-light);
		font-family: var(--font-general);
		font-size: 15px !important;
		font-style: normal;
		/* font-weight: 400; */
		line-height: normal;
		letter-spacing: 0.75px;
		text-transform: uppercase;
		margin-bottom: 30px;
	}

	.wp-block-buttons{
		margin-top: 60px;
		.wp-block-button{
			.wp-block-button__link{
				color: var(--color-text-light);
				&::after{
					background-color: var(--color-text-light);
				}
			}
		}
	}

	/* span{
		background-color: transparent !important;
		background: linear-gradient(0deg, rgba(0, 0, 0, 0.33) 0%, rgba(0, 0, 0, 0.33) 100%) !important;
		opacity: 1 !important;
	} */
}

.ic-wrapper-amenities{
	margin-bottom: 130px;

	.wp-block-heading{
		color: var(--color-text);
		font-family: var(--font-general);
		font-size: 18px;
		font-style: normal;
		/* font-weight: 600; */
		line-height: 26.265px; /* 145.918% */
		letter-spacing: 4.5px;
		text-transform: uppercase;
		margin: 30px auto;


		color: var(--color-text);
		font-family: var(--font-title);
		font-size: 30px;
		font-style: normal;
		font-weight: 100;
		letter-spacing: normal;
		text-transform: uppercase;

	}

	h2.wp-block-heading{
		color: var(--color-text-green);
		font-family: var(--font-title-strong);
		font-size: 60px;
		font-style: normal;
		font-weight: 100;
		line-height: 26.265px; /* 43.775% */
		/* letter-spacing: 0.6px; */
		/* text-transform: initial; */

		font-size: 30px;
		font-family: var(--font-title-strong);
        color: var(--color-text-green);
        letter-spacing: 2px;
	}
}

.ic-wrapper-light{
	.wp-block-columns{
		margin-top: 50px;
		margin-bottom: 100px 
	}
}

.ic-wrapper-typologies{
	margin: 140px auto;

	.wp-block-heading{
		color: var(--color-text);
		font-family: var(--font-general);
		font-size: 18px;
		font-style: normal;
		/* font-weight: 600; */
		line-height: 26.265px; /* 145.918% */
		letter-spacing: 4.5px;
		text-transform: uppercase;
		margin-bottom: 55px;
	}

	figure{
		img{
			overflow: hidden;
			transition: .3s all;
			transform: scale(1);
			/* height: 500px;
			max-height: 500px; */
			width: 100%;
			object-fit: cover;
			/* clip-path: inset(0); */
		}
	}
	.wp-element-caption{
		position: relative;
		z-index: 1;
		margin-top: 0;
		padding-top: 25px;
		padding-right: 2rem;
		color: var(--color-text);
		font-family: var(--font-general);
		font-size: 18px;
		font-style: normal;
		/* font-weight: 600; */
		line-height: 26.265px; /* 145.918% */
		letter-spacing: 4.5px;
		text-transform: uppercase;
		background-image: url('/wp-content/uploads/2026/01/Tipologia_Arrow.svg');
		background-repeat: no-repeat;
		background-position: right bottom;
		background-size: auto 50%;
		background-color: var(--color-text-light);
		text-align: end;
	}

	.wp-block-column{
		position: relative;
		overflow: hidden;
		cursor: pointer;

		&:hover{
			figure{
				img{
					transform: scale(1.1) translateY(-23px)
				}
			}
		}

		&.ic-desc-visible{
			p{
				opacity: 1;
			}
			.wp-element-caption{
				background-image: url('/wp-content/uploads/2026/01/Tipologia_Close.svg');
			}
		}
	}

	p{
		opacity: 0;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: calc(100% - 69px);
		background-color: var(--color-wrapper-form);
		padding: 35px 25px;
		color: var(--color-text-light);
		font-family: var(--font-general);
		font-size: 16px;
		font-style: normal;
		/* font-weight: 400; */
		line-height: 22.513px; /* 140.706% */
		letter-spacing: 0.64px;
		text-align: start;
	}
}

.ic-wrapper-location{
	.ic-video-costadelsol{
		video{
			width: 100%;
			object-fit: cover;
		}
	}
	.ic-img-costadelsol{
		overflow: hidden;
		/* max-height: 490px; */
	}
}

.ic-wrapper-lifestyle{
	position: relative;
	z-index: 1;
	margin-top: 150px;
}


.ic-title-big,
.wp-block-heading{
	color: var(--color-text);
	font-family: var(--font-title);
	/* font-size: 45px; */
	font-size: 30px;
	font-style: normal;
	font-weight: 100;
	/* line-height: 80px;  177.778% */
	/* letter-spacing: 11.25px; */
	letter-spacing: normal;
	text-transform: uppercase;

	/* font-size: clamp(2rem, 4vw, 1.875rem); */
	/* line-height: clamp(1.4, 1.8, 1.78); */
	/* margin-bottom: 3rem; */

	b, strong{
		font-family: var(--font-title-strong);
		color: var(--color-text-green);
		letter-spacing: 2px;
	}
}

.ic-title-small{
	color: var(--color-text);
	font-family: var(--font-title);
	font-weight: 100;
	font-size: 18px;
	font-style: normal;
	/* font-weight: 600; */
	line-height: 26.265px;
	letter-spacing: 4.5px;
	text-transform: uppercase;
	margin: 30px auto;
}

.ic-title-royale{
	color: var(--color-text-green);
	font-family: var(--font-title-strong);
	font-size: 60px;
	font-style: normal;
	font-weight: 100;
	line-height: 26.265px;
	letter-spacing: 0.6px;
	text-transform: initial;
}

.wp-block-buttons{
	.wp-block-button{
		.wp-block-button__link{
			background-color: transparent;
			color: var(--color-text);
			text-align: center;
			font-family: var(--font-title);
			font-size: 15px;
			font-style: normal;
			font-weight: 100;
			line-height: normal;
			letter-spacing: 0.75px;
			text-transform: uppercase;
			position: relative;

			&::after{
				content: '';
				position: absolute;
				bottom: 0;
				left: 0;
				width: 100%;
				height: 1px;
				background-color: var(--color-text);
				transition: .3s all;
			}

			&:hover{
				&::after{
					bottom: .5rem;	
				}
			}
		}
	}
}

.ic-wrapper-form{
	background-color: var(--color-wrapper-form);
	min-height: 500px;

	p{
		color: var(--color-text);
	}

	.ic-royale{
		font-family: var(--font-title);
		color: var(--color-text-light);
		text-align: center;
		font-size: 60px;
		font-style: normal;
		font-weight: 100;
		line-height: 26.265px; /* 43.775% */
		letter-spacing: 0.6px;
		text-transform: initial;
	}

	.wp-block-buttons{
		margin-top: 55px;
	}

	.wp-block-heading:not(.ic-royale){
		font-family: var(--font-general);
		/* font-size: 45px; */
		font-style: normal;
		/* font-weight: 400; */
		/* line-height: 80px; 177.778% */
		letter-spacing: 11.25px;
		text-transform: uppercase;
		margin: 40px 0;

		font-size: clamp(2rem, 4vw, 2.75rem);
		/* line-height: clamp(1.4, 1.8, 1.78); */

	}
}


/*#endregion */

/**************************/
/********* PROJECT *********/
/**************************/
/*#region */

body:not(.home){
	.page-main-wrapper{
		.ic-main-cover{
			min-height: 730px;
			max-height: 100vh;
		}
	}
}

.ic-page-project{

	.ic-wrapper-interiores{
		padding-top: 150px;

		.wp-block-columns{
			margin-top: 75px
		}

		.pin-section{
			margin-top: 1rem;
			figure{
				height: 795px;
				max-height: 100vh;

				img{
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}
		}
	}

	.ic-wrapper-benefits{
		padding-top: 150px;
		padding-bottom: 150px;

		.slider-benefits{
			margin-top: 70px;

			.slick-list{
				overflow: visible;
			}

			.slick-dots{
				max-width: 300px;
				position: absolute;
				top: -100px;
				right: 0;
			}

			.slick-slide{
				width: 425px !important;
				margin: 0 1rem;
				/* opacity: 1; */
			}

			.wp-element-caption{
				color: var(--color-text);
				font-family: var(--font-general);
				font-size: 16px;
				font-style: normal;
				/* font-weight: 400; */
				line-height: 22.513px; /* 140.706% */
				letter-spacing: 0.64px;
				text-transform: uppercase;
				margin-top: 25px;
			}
		}
	}

	.ic-cover-ferre{
		margin-bottom: 0;
		padding-top: 145px;
		padding-bottom: 145px;

		.carousel1slide{
			max-width: 660px !important;
	
			.slick-track{
				display: flex;
				align-items: center;
			}
	
			.ic-logo-ferre{
				margin-bottom: 80px;
			}
	
			.wp-block-heading,
			p{
				color: var(--color-text);
				text-align: center;

				&.has-text-align-right{
					text-align: end;
				}
			}
		}
	}


	.ic-wrapper-oasis{
		margin-bottom: 120px;
	}

	/* .ic-wrapper-typologies{
		background-image: url('images/bg-typologies.jpg');
		background-size: cover;
		padding-top: 100px;
		padding-bottom: 100px;
		margin: 0;
	} */
}

.slick-dots{
	display: flex;
	justify-content: space-between;
	list-style: none;
	padding: 0;
	margin: 0;
	gap: 0;
	width: 50%;
	margin: 0 auto;
	
	button{
		width: 100%;
		border: 0;
		font-size: 0;
		margin-top: 0;
		background-color: #C0DFD9;
		max-width: initial;
		&:after{
			content: none;
		}
	}

	li{
		width: 100%;

		button{
			height: 1px !important;
		}

		&:focus-visible,
		&.slick-active{
			button{
				background-color: var(--color-text);
			}
		}
	}
}

.ic-cover-huete{
	margin-bottom: 120px;
	.wp-block-column{
		.wp-block-group__inner-container{
			min-height: 875px;
			justify-content: space-around;
		}
	}
}

.ic-columns-resort{
	margin-top: 80px;

	.wp-block-column:first-child{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		z-index: 2;
	}
	
	.wp-block-column:last-child{
		.wp-block-group:not(:first-child){
			display: none;
		}
	}

	.wp-block-list{
		list-style: none;
		padding-left: 0;

		li{
			margin: 25px 0;
			border-bottom: 1px solid rgba(91, 83, 59, 0.26);
			a{
				color: rgba(91, 83, 59, 0.26);
				font-family: var(--font-general);
				font-size: 25px;
				font-style: normal;
				/* font-weight: 600; */
				line-height: 49px; /* 196% */
				letter-spacing: 6.25px;
				text-transform: uppercase;
				text-decoration: none;

				&:hover{
					color: var(--color-text)
				}
			}

			&.ic-active{
				a{
					color: var(--color-text)
				}
			}
		}
	}
}

.ic-wrapper-cta{
	margin-bottom: 120px;

	.wp-block-columns.ic-columns-cta{
		margin-top: 80px;
		
		.wp-block-column{
			position: relative;
	
			.wp-block-buttons{
				position: absolute;
				bottom: 50px;
				right: 60px;
				.wp-block-button{
					.wp-block-button__link{
						color: var(--color-text-light);
						&::after{
							background-color: var(--color-text-light);
						}
					}
				}
			}
		}
	}

	figure{
		position: relative;
		.wp-element-caption{
			position: absolute;
			top: 66px;
			left: 46px;
			color: var(--color-white);
			font-family: var(--font-general);
			font-size: 23.462px;
			font-style: normal;
			/* font-weight: 600; */
			line-height: 39.103px; /* 166.667% */
			line-height: 29.103px; /* 166.667% */
			letter-spacing: 5.866px;
			text-transform: uppercase;

			i,em{
				font-family: var(--font-title);
				font-size: 68px;
				font-style: normal;
				font-weight: 100;
				/* line-height: 39.103px; */
				letter-spacing: 0.68px;
				text-transform: initial;
			}
		}
	}

	

}


/*#endregion */

/**************************/
/********* AMENITIES *********/
/**************************/
/*#region */

.slider-location,
.slider-amenities{
	&::before{
		content: '';
		background-color: var(--color-text-light);
		z-index: 1;
		position: absolute;
		top: 0;
		left: -50vw;
		width: 50vw;
		height: 100%;
	}

	.slick-list{
		overflow: visible;
	}

	.slick-slide{
		width: 425px !important;
		margin: 0 1rem;
		/* opacity: 1; */

		img{
			height: 500px;
			width: 100%;
			object-fit: cover;
		}
	}

	.wp-element-caption{
		color: var(--color-text);
		font-family: var(--font-general);
		font-size: 16px;
		font-style: normal;
		/* font-weight: 400; */
		line-height: 22.513px; /* 140.706% */
		letter-spacing: 0.64px;
		text-transform: uppercase;
	}

	button.slick-arrow{
		margin-top: 0;
		bottom: inherit;
		top: 50%;
		right: inherit;
		left: -4rem;
		background-image: url('images/icons/arrow-left-slider-dark.svg');

		&.slick-prev{
			display: none;
		}

		/* &.slick-prev{
			left: inherit;
			right: 0;
			background-image: url('images/icons/arrow-right-slider-dark.svg');
		}

		&.slick-disabled{
			opacity: 0;
		} */
	}
}

.ic-wrapper-paisajismo{
	margin-top: 150px;
	margin-bottom: 225px;

	.wp-block-heading{
		margin-top: 70px;
	}

	p{
		padding-right: 100px;
	}
}

.ic-img-marbella{
	width: 100vw;
	margin-top: 60px;
	margin-bottom: 90px;
	img{
		width: 100%;
	}
}

.ic-wrapper-proyeccion{
	.wp-block-heading{
		margin-top: 250px;
		margin-bottom: 110px;
	}
}

.ic-wrapper-grafica{
	position: relative;

	.wp-block-columns{
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		top: 0;
		/* width: 100%; */

		.wp-block-column{
			p{
				color: rgba(91, 83, 59, 0.64);
				font-family: var(--font-general);
				font-size: 15px;
				font-style: normal;
				/* font-weight: 400; */
				line-height: 22.513px; /* 150.087% */
				letter-spacing: 0.6px;
			}

			.ic-year{
				color: var(--color-text);
				font-family: var(--font-general);
				font-size: 16px;
				font-style: normal;
				/* font-weight: 400; */
				line-height: 22.513px; /* 140.706% */
				letter-spacing: 0.64px;

				width: max-content;
				position: relative;
				&::after{
					content: '';
					position: absolute;
					bottom: -2rem;
					left: calc(50% - 6px);
					background-color: var(--color-text);
					border-radius: 100%;
					width: 12px;
					height: 12px;
				}
			}

			&:last-child,
			&:first-child{
				position: relative;
				p{
					&:last-child{
						position: absolute;
						bottom: -6rem;
					}
				}
			}

			
			&:nth-child(2){

				.ic-year{
					&::before{
						content: '';
						position: absolute;
						top: calc(-35vh - 1rem);
						left: calc(50% - .5px);
						height: 35vh;
						width: 1px;
						background-color: var(--color-text);
					}
				}

				.wp-block-group__inner-container{
					display: flex;
					margin-bottom: 35vh;
					p{
						color: var(--color-text);
						font-family: var(--font-general);
						font-size: 15px;
						font-style: normal;
						/* font-weight: 400; */
						line-height: 20px; /* 133.333% */
						letter-spacing: 1.5px;
						text-transform: uppercase;

						strong{
							font-size: 45px;
							font-weight: 400 !important;
							line-height: 26.265px; /* 58.367% */
							margin-right: 1rem;
							display: block;
							margin-top: 8px;

							&::before{
								content: '+';
							}
							&::after{
								content: ' % *';
							}
						}
					}
				}
			}
		}
	}
	.ic-img-grafica{
		width: 100vw;
		margin-top: 60px;
		margin-bottom: 165px;
		img{
			width: 100%;
			object-fit: contain;
		}
	}
}

/*#endregion */

/**************************/
/********* LOCATION *********/
/**************************/
/*#region */

.ic-wrapper-feat{
	margin-top: 75px;
	.wp-block-group{
		margin-bottom: 1rem;
		position: relative;

		.wp-block-group{
			position: absolute;
			left: 0;
			top: 0;
			margin-bottom: 0;
		}

		.wp-block-group__inner-container{
			display: flex;
			align-items: center;

			figure{
				margin: 0 .5rem;
				margin-bottom: 0;
			}
			p{
				padding-left: 84px;
				color: var(--color-text);
				font-family: var(--font-general);
				font-size: 15px;
				font-style: normal;
				/* font-weight: 400; */
				line-height: 22.513px; /* 150.087% */
				margin-bottom: 0;
				text-transform: uppercase;
			}
		}
	}
}

.ic-wrapper-vida{
	.slider-location{
		position: relative;
		.slick-dots{
			z-index: 1;
			position: absolute;
			left: -650px;
			bottom: 0;
		}
		/* z-index: 1;
		button.slick-arrow{
			top: inherit;
			bottom: 0;
			left: -600px;
			background-image: url('images/icons/arrow-right-slider-dark.svg');
			
			&.slick-prev{
				left: -650px;
				display: block;
				background-image: url('images/icons/arrow-left-slider-dark.svg');
			}
		} */
	}
}

.ic-page-location{
	.ic-wrapper-oasis{
		margin-bottom: 80px;
	}
	.slider-benefits{
		.slick-dots{
			max-width: 635px;
			margin-top: 70px;
			margin-bottom: 130px;
		}

		.slick-slide{
			margin: 0 1rem;
			max-width: 424px !important;
			height: 500px;
		}
	}
}


/*#endregion */

/**************************/
/********* CONTACT *********/
/**************************/
/*#region */

.page-id-1046,
.page-id-65{
	.link-modal{
		display: none;
	}
}

.ic-page-contact{

	.wp-block-cover{
		padding-top: 160px;
	}
	.wp-block-list{
		padding-left: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		list-style: none;
		gap: 50px;
		/* margin-top: 75px;
		margin-bottom: 60px; */
		margin-top: 30px;
		margin-bottom: 30px;
		li{
			a{
				text-decoration: none;
				img{
					margin-right: 1rem;
				}
			}
		}
	}
	.wp-block-columns{
		form{
			> br{
				height: 0;
				display: none;
			}
		}
		
	}
}

/*#endregion */


/**************************/
/********* THANK YOU *********/
/**************************/
/*#region */

.ic-page-thankyou{
	.wp-block-list{
		padding-left: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		list-style: none;
		gap: 50px;
		margin-top: 75px;
		margin-bottom: 60px;
		li{
			a{
				text-decoration: none;
				img{
					margin-right: 1rem;
				}
			}
		}
	}
	.wp-block-cover{
		padding-top: 160px;

		p{
			color: var(--color-text);
			text-align: center;
			font-family: var(--font-general);
			font-size: 18px;
			font-style: normal;
			/* font-weight: 600; */
			line-height: 26.265px; /* 145.918% */
			letter-spacing: 4.5px;
			text-transform: uppercase;
		}
	}
}


/*#endregion */

/**************************/
/********* LEGAL *********/
/**************************/
/*#region */

/* body:not(.home){
/* .privacy-policy,
.page-id-69,
.page-id-71{ *
	.main-header{
		position: fixed;
		
		.container{
			ul{
				li{
					a{
						color: var(--color-text);

						&::after{
							background-color: var(--color-text);
						}
					}
				}
			}
		}

		.header-left{
			figure{
				img{
					content: url('/wp-content/uploads/2026/01/logo-thegrove-dark.svg');
				}
			}
		}

		.wp-block-buttons{
			.wp-block-button{
				.wp-block-button__link{
					color: var(--color-text);
					&::after{
						background-color: var(--color-text);
					}
				}
			}
		}
	}
} */

.ic-page-legal{
	padding-top: 160px;

	.wp-block-post-title{
		color: var(--color-text);
		text-align: center;
		font-family: var(--font-general);
		/* font-size: 45px; */
		font-style: normal;
		/* font-weight: 400; */
		/* line-height: 80px;  177.778% */
		letter-spacing: 11.25px;
		text-transform: uppercase;

		font-size: clamp(2rem, 4vw, 2.75rem);
		line-height: clamp(1.4, 1.8, 1.78);
	}

	.wp-block-heading{
		margin-top: 45px;
		color: var(--color-text);
		font-family: var(--font-general);
		font-size: 18px;
		font-style: normal;
		/* font-weight: 600; */
		line-height: 26.265px; /* 145.918% */
		letter-spacing: 4.5px;
		text-transform: uppercase;
	}

	li,
	p{
		color: var(--color-text);
		font-family: var(--font-general);
		font-size: 16px;
		font-style: normal;
		/* font-weight: 400; */
		line-height: 22.513px;
		letter-spacing: 0.64px;
	}
}


/*#endregion */


/**************************/
/********* RESPONSIVE *********/
/**************************/

/* MacBook Pro o pantallas grandes (menos de 1441px) */
@media (max-width: 1600.98px) {
	.main-header{
		.container{
			.header-left{
				margin-left: 0;
			}
			.header-right{
				margin-right: 0;
			}
		}
	}

	.ic-wrapper-oasis{
		margin-top: 100px;
		margin-bottom: 60px;
	}

	.ic-page-project{
		.ic-wrapper-oasis{
			margin-top: 100px;
			margin-bottom: 60px;
		}
	}

	.ic-columns-resort{
		margin-top: 80px;
	}

	.ic-wrapper-map{
		margin-top: -260px;
		#info-box{
			max-width: 50vw;
			bottom: 150px;
		}
		.ic-marker-info{
			p{
				font-size: 24px;
				line-height: normal;
			}
		}
		.img-marker{
			height: 230px;
		}
		.ic-title-small{
			line-height: normal;
		}
	}

	.carousel1slidewide{
		margin-top: 50px;

		.slick-slide{
			p{
				left: 51%;
			}
			figure{
				.wp-element-caption{
					/* bottom: 100px;
					left: 130px; */
					left: 1rem;
				}
			}
		}
	}

	.ic-wrapper-map {
		#info-controls {
			display: flex;
			margin-top: 0;
			margin-left: -10px;

			button{
				transform: scale(.8);
				&#prev{
					transform: rotate(180deg) scale(.8);
				}
			}
		}
	}

	.ic-wrapper-form{
		min-height: 500px;
	}

}

/* MacBook Pro o pantallas grandes (menos de 1441px) */
@media (max-width: 1440.98px) {
	.ic-wrapper-map{
		#info-box{
			bottom: 100px;
		}
	}

	.ic-wrapper-grafica {
		& .wp-block-columns {
			& .wp-block-column {
				&:nth-child(2) {
					margin-left: -10%;
				}
			}
		}
	}
}

/* Bootstrap XXL: menos de 1400px */
@media (max-width: 1399.98px) {
	
	
	
	
	.main-footer {
		.footer-wrapper {
			.footer-two {
				.widget-footer:nth-child(2) {
					.menu{
						margin: 30px auto
					}
				}
			}
		}
	}

	/* Project */
	.ic-wrapper-vida{
		.slider-location{
			.slick-dots{
				left: -560px;
			}
		}
	}
	.ic-page-project{
		.ic-cover-ferre{
			.carousel1slide{
				max-width: 500px !important;
			}
		}
	}
}

/* Bootstrap XL: menos de 1200px */
@media (max-width: 1199.98px) {
	.ic-wrapper-map{
		#info-box{
			bottom: 100px;
		}
	}

	.ic-wrapper-grafica {
		& .wp-block-columns {
			& .wp-block-column {
				&:nth-child(2) {
					margin-left: auto;
				}
			}
		}
	}
	.main-footer{
		.footer-wrapper{
			.footer-two{
				.widget-footer:last-child{
					.wp-block-columns{
						.wp-block-column{
							flex-direction: column;
							gap: 1rem;
							align-items: start;
						}
					}
				}
			}
		}
	}
	.carousel1slidewide {
        .slick-slide {
            figure {
                .wp-element-caption {
					/* bottom: 120px; */
                    left: 45px;
                }
            }
        }
    }
	.ic-wrapper-location{
		.ic-img-costadelsol{
			/* max-height: 350px; */
		}
	}
	.ic-wrapper-map{
		margin-top: -175px;
		#info-box{
			max-width: 65vw;
			bottom: 20px;
		}
	}
	.main-footer{
		.footer-wrapper{
			.footer-one{
				padding-right: 3rem;
			}
		}
	}

	.ic-wrapper-vida {
        .slider-location {
            .slick-dots {
				bottom: -50px;
                left: 0;
            }
        }
    }

	.ic-wrapper-grafica {
		.wp-block-columns {
			.wp-block-column {
				&:last-child{
					p{
						transform: translateX(-25%);
					}
				}
				&:nth-child(2) {
					.wp-block-group__inner-container {
						margin-bottom: 10vh;
						p{
							strong{
								font-size: 36px;
							}
						}
					}
					.ic-year{
						&::before{
							top: calc(-10vh - 1rem);
							height: 10vh;
						}
					}
				}
			}
		}
	}
}

/* Bootstrap LG: menos de 992px */
@media (max-width: 1024px) {
	.carousel1slidewide{
		.slick-slide{
			figure{
				.wp-element-caption{
					bottom: 120px;
				}
			}
		}
	}
}

	/* Bootstrap LG: menos de 992px */
@media (max-width: 991.98px) {

	form input[type="checkbox"]{
		+ label{
			display: inline;
		}
	}

	.tempContDiv{
		.termsContainer{
			margin-bottom: 1rem;
			> div{
				align-items: start;
				input{
					margin-top: 5px;
				}
			}
		}
		+ label + div{
			align-items: start;
			input{
				margin-top: 5px;
			}
		}
	}

	.termsContainer{
	}

	.ic-wrapper-form{
		min-height: 600px;
	}

	body:not(.home) {
		.page-main-wrapper {
			.ic-main-cover {
				min-height: 100vh;
				max-height: 100vh;

				.wp-block-image{
					margin-top: 130px
				}
			}
		}
	}

	.ic-page-location{
		.slider-benefits{
			.slick-slide{
				margin: 0 20px 0 0 ;
				width: 370px !important;
				max-width: 88vw !important;
				height: inherit;
			}
		}
	}

	.imgl-map{
		overflow: auto;
		.imgl-image	{
			width: 1920px !important;
		}
	}



	.ic-wrapper-form .wp-block-heading:not(.ic-royale),
	.ic-title-big,
	.wp-block-heading:not(.ic-title-small, .ic-title-royale, .ic-royale){
		font-size: 32px;
		font-style: normal;
		font-weight: 400;
		line-height: 45px; /* 140.625% */
		letter-spacing: 6.4px;
	}

	.ic-title-small{
		font-size: 18px;
		font-style: normal;
		font-weight: 600;
		line-height: 26.265px; /* 145.918% */
		letter-spacing: 4.5px;
	}

	.main-header{
		padding-top: 1rem;

		.container{
			.header-left,
			.header-right{
				display: none;
			}

			ul{
				li{
					&:nth-last-child(2){
						display: none;
					}
					a{
						color: var(--color-text);
						font-size: 20px;
						font-style: normal;
						font-weight: 400;
						line-height: normal;
						letter-spacing: 1px;
					}
				}
			}
		}

		&.main-header-up{
			.container{
				.header-left{
					display: block;
					margin: 0 auto;
					.widget-header-left{
						&:last-child{
							display: none;
						}
					}
					ul[role="menu"]{
						display: block;
						width: 75px;
						position: absolute;
						top: 25px;
						left: 0;
						overflow: hidden;
					}
				}

				#header-logo{
					img{
						/* min-width: 162px; */
						height: 34px;
					}
				}
			}
		}
		
		&.main-header-up{
			.container{
				ul{
					width: fit-content;
					margin: 75px auto;
					gap: 50px;
				}
				#ic-mobile-switcher{
					span{
						background-color: var(--color-text)
					}
				}
			}
		}
	}

	html[lang="en-US"]{
		.main-header{
			&.main-header-up{
				.container{
					.header-left{
						ul[role="menu"]{
							width: 70px;
						}
					}
				}
			}
		}
	}

	.main-footer{
		.footer-wrapper{
			gap: 0;

			.footer-one,
			.footer-two{
				width: 100%;
				.wp-block-column{
					flex-basis: 100% !important;
				}
			}

			.footer-one{
				padding-right: inherit;
			}

			.footer-two{
				display: flex;
				flex-direction: column;

				.widget-footer:first-child{
					order: 2;
					margin-bottom: 40px;

					.wp-block-column{
						display: flex;
						flex-direction: column;
						align-items: center;
						gap: 40px;

						> ul{
							order: 1
						}

						> p{
							order: 2;
						}
						
						> div{
							order: 3;
						}
					}
				}

				.widget-footer:nth-child(2){
					order: 1;
					margin-top: 40px;
					.menu{
						margin: 0;
						margin-bottom: 0;
						display: block;
						columns: 2;
						li{
							margin-bottom: 35px;
						}
					}
				}

				/* .widget-footer:last-child{
					order: 3;
					.wp-block-columns{
						.wp-block-column{
							align-items: center;
							.widget{
								width: 100%;
							}
						}
					}
					.menu{
						justify-content: center;
					}
				} */

				.widget-footer:last-child {
					order: 3;
					.wp-block-columns {
						.wp-block-column {
							flex-direction: column;
							align-items: center;
							.menu{
								flex-direction: column;
								gap: 0;
								margin-bottom: 1rem;
							}
						}
					}
				}
			}
		}
	}

	.ic-page-thankyou,
	.ic-page-contact{
		.wp-block-list{
			flex-wrap: wrap;
			gap: 1rem;
		}
	}
	
	.ic-page-contact{
		.wp-block-list{
			margin-bottom: 0;
		}
	}

	.ic-wrapper-oasis{
		margin-top: 45px;
		margin-bottom: 45px;
	}

	.ic-cover-ferre{
		margin-bottom: 80px;
	}
	
	.ic-wrapper-amenities{
		text-align: center;
		margin-bottom: 0;

		.wp-block-columns{
			flex-direction: column-reverse;
			gap: 3rem
		}
	}

	.home{
		.carousel3slideCenter{
			margin-top: 60px;
			.slick-slide{
				width: 100vw !important;
			}
			.slick-dots{
				position: relative;
				bottom: 50px;
			}
		}
	}

	.ic-wrapper-light{
		.wp-block-columns{
			margin-top: 25px;
			margin-bottom: 0 
		}
	}
	
	.slick-dots{
		width: calc(100% - 2rem);
		margin: 0 auto;
		position:  relative !important;
		margin-top: 1rem !important;
		margin-bottom: 1rem !important;
	}

	.carousel1slidewide {
		margin-top: 25px;

        .slick-slide {
			position: relative;
            figure {
				img{
					height: 450px;
				}
                .wp-element-caption {
					font-size: 20px;
                    left: 1rem;
                    bottom: 0;
                }
            }
			p{
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				padding: 1rem;
				transform: inherit;
				opacity: 0;
				background-color: var(--color-wrapper-form);
				transition: .3s all;
				max-width: inherit;

				&.is-active{
					opacity: 1;
				}
			}
        }
    }

	button.slick-arrow{
		bottom: 1rem;
		right: 1rem;

		&.slick-prev{
			right: 75px;
		}
	}

	.ic-wrapper-typologies{
		margin: 70px auto;
		text-align: center;

		.wp-block-heading {
			color: var(--color-text);
			font-family: var(--font-general);
			font-size: 18px;
			font-style: normal;
			/* font-weight: 600; */
			line-height: 26.265px;
			letter-spacing: 4.5px;
			text-transform: uppercase;
			margin-bottom: 55px;
		}

		.wp-element-caption{
			text-align: start;
		}
	}

	.ic-wrapper-location{
		text-align: center;
	}

	.ic-wrapper-lifestyle{
		text-align: center;
		margin-top: 30px;
	}

	.ic-wrapper-map{
		margin-top: 0;
		overflow: auto;
		/* transform: translateY(-350px); */
		
		#map-container{
			margin-left: -25%;
		}

		.marker{
			.marker-img{
				transform: scale(.8);
			}
		}

		#info-box{
			position: relative;
			bottom: inherit;
			right: inherit;
			max-width: inherit;
			width: 90vw;
            margin: 0 auto;
            margin-top: -5rem;
            margin-bottom: 1rem;
		}
	}

	.ic-wrapper-error{
		text-align: center;
	}

	.ic-columns-resort{
		margin-top: 0;
		.wp-block-list{
			li{
				a{
					font-size: 18px;
					font-style: normal;
					font-weight: 600;
					line-height: 35.379px; /* 196.549% */
					letter-spacing: 4.5px;
					text-transform: uppercase;
				}
			}
		}
	}

	.ic-page-project {
		
		.ic-wrapper-typologies {
			.wp-block-heading {
				color: var(--color-text);
				font-family: var(--font-general);
				font-size: 18px;
				font-style: normal;
				/* font-weight: 600; */
				line-height: 26.265px;
				letter-spacing: 4.5px;
				text-transform: uppercase;
				margin-bottom: 55px;
			}
		}
		.ic-wrapper-oasis {
			margin-bottom: 0;
		}
		.ic-wrapper-interiores {
			padding-top: 75px;
			text-align: center;
			.pin-section{
				figure{
					height: 390px;
				}
			}
			> div{
				.wp-block-group.container{
					padding-left: 0;
					padding-right: 0;
				}
			}
		}

		.ic-wrapper-benefits{
			padding-top: 60px;
			padding-bottom: 0;
			text-align: center;
			.slider-benefits{
				/* .slick-list{
					overflow: hidden;
				} */
				.slick-dots{
					top: inherit;
					bottom: 0;
					max-width: inherit;
				}
				.slick-slide{
					/* margin: 0; */
					margin: 0 20px 0 0 ;
					width: 370px !important;
					max-width: 88vw;

					.wp-element-caption{
						text-align: start;
					}
				}
			}
		}

		.ic-cover-ferre{
			padding-top: 70px;
			padding-bottom: 70px;
			margin-top: 45px;
			.carousel1slide {
				p {
					&.has-text-align-right {
						margin-top: 1rem;
					}
				}
			}
		}
	}

	.ic-cover-huete{
		margin-bottom: 60px;
		.wp-block-cover__image-background{
			display: none;
		}
		.wp-block-column{
			.wp-block-group__inner-container{
				min-height: inherit;
			}
		}
		.ic-img-costadelsol{
			margin-top: 65px;
			max-width: 138px;

			+ figure{
				margin-top: -100px;
				position: relative;
				z-index: -1;
			}
		}
	}

	.ic-wrapper-cta {
		margin-bottom: 50px;
		.wp-block-columns.ic-columns-cta {
			margin-top: 40px;
			padding-left: 0;
			padding-right: 0;

			.wp-block-column{
				.wp-block-buttons{
					bottom: 20px; 
					right: 20px;
				}

				figure{
					margin-bottom: 0;

					.wp-element-caption{
						top: 20px;
						left: 20px;
						font-size: 20px;
						font-style: normal;
						font-weight: 600;
						letter-spacing: 4px;

						em,i{
							font-size: 60px;
							font-style: normal;
							font-weight: 400;
							letter-spacing: 0.6px;
						}
					}

					img{
						aspect-ratio: 16 / 9 !important;
						height: 189px;
					}
				}
			}
		}
	}

	.ic-img-marbella{
		margin-top: 30px;
		margin-bottom: 45px;
		height: 510px;
		img{
			height: 100%;
			object-fit: cover;
		}
	}

	.ic-wrapper-vida{
		text-align: center;
	}

	.slider-location,
	.slider-amenities{
		.slick-list{
			overflow: hidden;
		}
		.slick-slide{
			width: 100vw !important;
		}
	}

	.ic-wrapper-proyeccion {
		text-align: center;
		p{
			text-align: center !important;
		}
		.wp-block-heading {
			margin-top: 125px;
			margin-bottom: 55px;
		}
	}

	.ic-wrapper-grafica {
		.wp-block-columns{
			top: inherit;
			bottom: 100px;

			.wp-block-column{
				flex-basis: 50% !important;
				&:first-child{
					flex-basis: 20% !important;
				}
				&:nth-child(2){
					.ic-year{
						&::before{
							top: calc(-35vh - 1rem);
							height: 35vh;
						}
					}
					.wp-block-group__inner-container{
						flex-direction: column;
						margin-bottom: 35vh;
					}
				}
				&:last-child{
					flex-basis: 30% !important;
				}
			}
		}
		.ic-img-grafica {
			height: 660px;
			margin-bottom: 0;
			overflow: hidden;
		}
	}

	.ic-wrapper-paisajismo{
		margin-top: 15px;
		margin-bottom: 110px;
		text-align: center;

		figure{
			margin-top: 45px;
			margin-bottom: 45px;
		}

		p{
			padding-right: 0;
		}
	}

	.ic-wrapper-location {
        .ic-img-costadelsol{
            /* max-height: 225px; */
        }
    }

	.imgl-map-2 {
		overflow: auto;
		.imgl-image{
			width: 1422px !important;
			height: 800px !important;
		}
	}

	.ic-wrapper-feat{
		gap: 0;
		figure{
			min-width: 24px;
		}
	}

	.ic-leyenda{
		padding: 0 1rem;
		margin-bottom: 3rem;
		color: rgba(91, 83, 59, 0.64);
		font-family: var(--font-general);
		font-size: 15px;
		font-style: normal;
		/* font-weight: 400; */
		line-height: 22.513px; /* 150.087% */
		letter-spacing: 0.6px;
	}

}

/* Bootstrap MD: menos de 768px */
@media (max-width: 767.98px) { }

/* Bootstrap SM: menos de 576px */
@media (max-width: 575.98px) { }
