/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Oct 10 2026 | 14:01:29 */
/* Golden Lotus – visual pass (Oct 2026). Loaded via Simple Custom CSS & JS. Remove that entry to undo everything here. */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Manrope:wght@400;500;600&display=swap');

:root {
	--gl-gold: #9b7113;
	--gl-gold-deep: #7c5a10;
	--gl-ink: #1c1a16;
	--gl-muted: #6f685a;
	--gl-line: #e6e0d4;
	--gl-serif: "Cormorant Garamond", Georgia, serif;
	--gl-sans: "Manrope", system-ui, -apple-system, sans-serif;
}

/* ---------- Type ---------- */
h1, h2, h3, h4,
.elementor-widget-heading .elementor-heading-title {
	font-family: var(--gl-serif) !important;
	font-weight: 500 !important;
	line-height: 1.08 !important;
}
h1.elementor-heading-title {
	text-transform: none !important;
	letter-spacing: 0 !important;
}
h2.elementor-heading-title {
	letter-spacing: 0.05em !important;
}
.single-product h1.elementor-heading-title {
	text-transform: uppercase !important; /* source text is "The AURA villa" */
	letter-spacing: 0.04em !important;
}
.home h1.elementor-heading-title {
	font-size: clamp(42px, 6.2vw, 78px) !important;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.25);
}

body,
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-widget-text-editor li,
.elementor-icon-list-text,
.elementor-widget-container p,
.menu a,
.guesty-widget__container,
.guesty-widget__container * {
	font-family: var(--gl-sans) !important;
}
.elementor-widget-text-editor p {
	font-weight: 400 !important;
	line-height: 1.65 !important;
	font-size: max(15px, 1em) !important;
}
.header-top-bar .menu a {
	font-size: 12px !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
}

/* ---------- Buttons ---------- */
.elementor-button,
.cta-ui,
.guesty-search-submit-btn,
.gla-btn {
	font-family: var(--gl-sans) !important;
	font-weight: 600 !important;
	font-size: 13px !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	border-radius: 2px !important;
	transition: background-color 0.2s, color 0.2s, border-color 0.2s !important;
}
.elementor-button:hover,
.cta-ui:hover,
.guesty-search-submit-btn:hover {
	background-color: var(--gl-gold-deep) !important;
	border-color: var(--gl-gold-deep) !important;
	color: #fff !important;
}

/* ---------- Hero ---------- */
.gl-hero-note {
	margin: 16px auto 0;
	font: 500 11px/1.6 var(--gl-sans);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-align: center;
	color: var(--gl-muted); /* on white pages such as /villas/ */
}
[data-id="05c1c8a"] .gl-hero-note {
	color: #fff; /* on the photo hero */
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.45);
}

/* ---------- Villa cards (loop item) ---------- */
a[data-id="28e3000"] .elementor-element-5954c66,
a[data-id="28e3000"] .elementor-element-5954c66 * {
	font-family: var(--gl-sans) !important;
	font-size: 11px !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	color: var(--gl-muted) !important;
}
a[data-id="28e3000"] h2.elementor-heading-title {
	font-size: 24px !important;
	letter-spacing: 0.04em !important;
}
.gl-price {
	margin-top: 8px;
	font: 400 14px/1.4 var(--gl-sans);
	color: var(--gl-ink);
}
.gl-price b {
	font-weight: 600;
	color: var(--gl-gold);
}
.gl-price span {
	color: var(--gl-muted);
}
.single-product .gl-price {
	font-size: 16px;
	margin: 10px 0 18px;
}

/* ---------- Villa page: calendar column gets the room it needs (two months on desktop) ---------- */
.single-product .gl-cal-col {
	width: 100% !important;
	max-width: 100% !important;
}
@media (min-width: 1025px) {
	.single-product .gl-cal-outer {
		flex: 0 0 62% !important;
		width: 62% !important;
		max-width: 62% !important;
	}
	.single-product .gl-cal-outer + .e-con {
		flex: 1 1 0 !important;
		width: auto !important;
		max-width: none !important;
	}
}

/* ---------- Villa page: offer-request form folded behind a link ---------- */
.single-product .gl-ask-wrap:not(.is-open) {
	display: none !important;
}
.gl-ask {
	display: inline-block;
	margin: 14px 0 0;
	font: 500 13px/1.4 var(--gl-sans);
	color: var(--gl-muted) !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
}
.gl-ask:hover {
	color: var(--gl-gold) !important;
}

/* ---------- Mobile sticky booking button ---------- */
.gl-sticky {
	display: none;
}
@media (max-width: 767px) {
	.gl-sticky {
		position: fixed;
		left: 16px;
		right: 16px;
		bottom: 16px;
		z-index: 9000;
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 52px;
		background: var(--gl-gold);
		color: #fff !important;
		font: 600 13px/1 var(--gl-sans);
		letter-spacing: 0.14em;
		text-transform: uppercase;
		border-radius: 2px;
		box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28);
		text-decoration: none !important;
		transform: translateY(140%);
		transition: transform 0.3s, bottom 0.2s;
	}
	.gl-sticky.is-on {
		transform: none;
	}
	body.gl-has-sticky {
		padding-bottom: 84px;
	}
}

/* ---------- Old ICS calendar: booked bars stay, "Airbnb (Not available)" text goes ---------- */
.ics-calendar .title,
.ics-calendar .title_in_hover_block,
.ics-calendar .ics-calendar-past-events-toggle {
	font-size: 0 !important;
	color: transparent !important;
	line-height: 0 !important;
}
.ics-calendar .hover_block,
.ics-calendar .descloc,
.ics-calendar .ics-calendar-color-key {
	display: none !important;
}
.ics-calendar .event,
.ics-calendar .multiday_event {
	min-height: 18px !important;
	background: #d9d4ca !important;
	border-color: #d9d4ca !important;
	cursor: default !important;
}

/* ---------- Cookie bar: one slim line ---------- */
#moove_gdpr_cookie_info_bar {
	box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) !important;
}
#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {
	padding: 10px 20px !important;
}
#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-content {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	text-align: left !important;
}
#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice {
	flex: 1 1 auto !important;
	margin: 0 !important;
}
#moove_gdpr_cookie_info_bar .moove-gdpr-button-holder {
	display: flex !important;
	flex: 0 0 auto !important;
	text-align: right !important;
}
#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p {
	margin: 0 !important;
	font: 400 12px/1.4 var(--gl-sans) !important;
	letter-spacing: 0 !important;
}
#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p + p {
	display: none !important;
}
#moove_gdpr_cookie_info_bar .moove-gdpr-button-holder {
	margin: 0 0 0 12px !important;
}
#moove_gdpr_cookie_info_bar .mgbutton {
	margin: 0 0 0 8px !important;
	padding: 9px 16px !important;
	min-width: 0 !important;
	font: 600 11px/1 var(--gl-sans) !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	border-radius: 2px !important;
}
@media (max-width: 767px) {
	#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {
		padding: 8px 14px !important;
	}
	/* One short line on phones; the full text stays available under Settings. */
	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p {
		display: none !important;
	}
	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice::before {
		content: "We use cookies to improve your visit.";
		display: block;
		font: 400 11px/1.35 var(--gl-sans);
		color: inherit;
	}
	#moove_gdpr_cookie_info_bar .mgbutton {
		padding: 8px 12px !important;
		font-size: 10px !important;
	}
}
