:root {
  --gr-primary: #04acbf;
  --gr-heading: #111827;
  --gr-text: #374151;
  --gr-muted: #6b7280;
  --gr-border: #e5e7eb;
  --gr-surface: #ffffff;
  --gr-surface-soft: #f9fafb;
  --gr-radius-card: 30px;
  --gr-radius-image: 30px;
  --gr-radius-gallery: 20px;
  --gr-radius-button: 55px;
  --gr-content-width: 1520px;
  --gr-content-narrow: 1200px;
  --gr-content-wide: 1520px;
  --gr-gutter: clamp(20px, 2vw, 56px);
  --gr-page-gutter: clamp(20px, 2vw, 56px);
  --gr-header-height: 72px;
  --gr-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--gr-surface);color:var(--gr-text);font-family:var(--gr-font);font-size:16px;font-weight:400;line-height:1.55;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img,svg,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.15em}
button,input,select,textarea{font:inherit}
button{cursor:pointer}

.screen-reader-text,.gr-skip-link{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.gr-skip-link:focus{clip:auto!important;width:auto;height:auto;top:8px;left:8px;z-index:99999;padding:10px 14px;background:#fff;color:var(--gr-heading);border:1px solid var(--gr-border);border-radius:10px}

.gr-container{width:min(calc(100% - (var(--gr-gutter) * 2)),var(--gr-content-width));margin-inline:auto}
.gr-main{min-height:50vh}
.gr-content-area{padding-block:36px 64px}
.gr-entry-title,h1{margin:0 0 18px;color:var(--gr-heading);font-size:26px;font-weight:500;line-height:1.25}
h2{color:var(--gr-heading);font-size:25px;font-weight:500;line-height:1.3}
p{margin-block:0 1em}

.gr-site-header{position:relative;z-index:100;background:#fff;border-bottom:1px solid var(--gr-border)}
.gr-header-inner{position:relative;min-height:var(--gr-header-height);display:flex;align-items:center;gap:14px}
.gr-branding{display:flex;align-items:center;min-width:0;flex:0 0 auto}
.custom-logo-link{display:inline-flex;align-items:center}
.custom-logo{width:auto;max-width:154px;max-height:40px;object-fit:contain}
.gr-site-title{color:var(--gr-heading);font-size:20px;font-weight:600;text-decoration:none}
.gr-primary-nav--desktop{display:none}
.gr-header-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
.gr-header-search,.gr-header-host{display:inline-flex;align-items:center;justify-content:center;color:var(--gr-heading)}
.gr-header-search{width:42px;height:42px;padding:0;background:transparent;border:0;border-radius:50%}
.gr-header-search svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.gr-header-host{display:none;min-height:42px;padding:8px 4px;background:transparent;font-size:14px;font-weight:600;white-space:nowrap;text-decoration:none}
.gr-menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;background:#fff;color:var(--gr-heading);border:1px solid var(--gr-border);border-radius:50%}
.gr-menu-toggle:hover,.gr-menu-toggle:focus-visible,.gr-header-search:hover,.gr-header-search:focus-visible{border-color:#cbd5e1;background:var(--gr-surface-soft)}
.gr-menu-toggle:focus-visible,.gr-header-search:focus-visible,.gr-header-host:focus-visible,.gr-menu a:focus-visible{outline:2px solid var(--gr-primary);outline-offset:2px}
.gr-header-host:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.gr-header-search.is-active{background:var(--gr-surface-soft)}
.gr-menu-toggle__icon{display:grid;gap:4px;width:18px}
.gr-menu-toggle__icon span{display:block;height:1.5px;background:currentColor;border-radius:2px}
.gr-menu{list-style:none;margin:0;padding:0}
.gr-menu a{display:block;padding:10px 0;color:var(--gr-heading);font-size:15px;font-weight:500;text-decoration:none}
.gr-header-drawer{position:absolute;top:calc(100% - 2px);right:0;width:min(320px,calc(100vw - (var(--gr-gutter) * 2)));padding:12px 20px 16px;background:#fff;border:1px solid var(--gr-border);border-radius:16px;box-shadow:0 18px 45px rgba(17,24,39,.14)}
.gr-header-drawer[hidden]{display:none!important}
.gr-header-drawer .gr-menu li+li{border-top:1px solid #f1f5f9}
.gr-drawer-utility:not(:first-child){margin-top:6px;padding-top:6px;border-top:1px solid var(--gr-border)}
.gr-header-booking{display:none}
.gr-header-search-panel{position:absolute;z-index:5;inset:0 50px 0 0;display:flex;align-items:center;padding:0;background:#fff}
.gr-header-search-panel[hidden]{display:none!important}
.gr-header-search-field{display:flex;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 9px 0 14px;border:1px solid #cfd5dc;border-radius:999px;background:#fff}
.gr-header-search-field:focus-within{border-color:var(--gr-primary);box-shadow:0 0 0 2px rgba(4,172,191,.12)}
.gr-header-search-field svg{flex:0 0 auto;width:20px;height:20px;fill:none;stroke:var(--gr-muted);stroke-width:1.8;stroke-linecap:round}
.gr-header-search-field input{min-width:0;flex:1;padding:12px 0;border:0;outline:0;background:transparent;color:var(--gr-heading);font-size:16px}
.gr-header-search-field input::-webkit-search-cancel-button{display:none}
.gr-header-search-close{width:34px;height:34px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--gr-muted);font-size:24px;line-height:1}
.gr-header-search-close:hover{background:var(--gr-surface-soft);color:var(--gr-heading)}
.gr-header-search-suggestions{position:absolute;top:calc(100% + 7px);left:0;right:0;padding:10px 14px 12px;background:#fff;border:1px solid var(--gr-border);border-radius:16px;box-shadow:0 18px 45px rgba(17,24,39,.14)}
.gr-header-search-suggestions[hidden]{display:none!important}
.gr-header-search-status{margin:3px 5px 5px;color:var(--gr-muted);font-size:13px}
.gr-header-search-status:empty{display:none}
.gr-header-search-results{list-style:none;margin:4px 0 0;padding:0;max-height:min(360px,55vh);overflow-y:auto}
.gr-header-search-results li+li{border-top:1px solid #f1f5f9}
.gr-header-search-results a{display:block;padding:12px 8px;border-radius:10px;color:var(--gr-heading);font-size:15px;font-weight:500;text-decoration:none}
.gr-header-search-results a:hover,.gr-header-search-results a:focus-visible{outline:0;background:#f3fafb;color:#087f8c}
.gr-header-search-open .gr-header-search{visibility:hidden}


.gr-copyright{margin:0;color:var(--gr-muted);font-size:14px}

.gr-button,.wp-element-button,input[type="submit"],button[type="submit"]{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 22px;border:0;border-radius:var(--gr-radius-button);background:var(--gr-primary);color:#fff;font-family:var(--gr-font);font-size:16px;font-weight:500;line-height:1.2;text-decoration:none}

.gr-entry-content>:first-child{margin-top:0}
.gr-entry-content>:last-child{margin-bottom:0}
.gr-empty-state{padding-block:80px;text-align:center}

/* Elementor: let Elementor own the canvas while the theme owns global tokens. */
.gr-entry--elementor{width:100%;margin:0;padding:0}
.elementor-button{font-family:var(--gr-font)}


.mphb_sc_search-form input,.mphb_sc_search-form select,.mphb-booking-form input,.mphb-booking-form select{font-family:var(--gr-font)}

@media (min-width: 768px){
  :root{--gr-header-height:78px}
  .gr-entry-title,h1{font-size:27px}
  h2{font-size:22px}
  .gr-primary-nav--desktop{display:block;margin-left:auto}
  .gr-primary-nav--desktop .gr-menu{display:flex;align-items:center;gap:clamp(20px,2.2vw,36px)}
  .gr-primary-nav--desktop .gr-menu a{padding:9px 0;font-size:14px}
  .gr-primary-nav--desktop + .gr-header-actions{margin-left:0}
  .gr-header-host{display:inline-flex}
  .gr-drawer-primary{display:none}
  .gr-header-drawer{top:calc(100% - 6px)}
  .gr-header-search-panel{left:auto;right:250px;width:min(340px,calc(100vw - 470px))}
}

@media (min-width:1025px){
  .gr-is-property .gr-site-header{position:sticky;top:0}
  .gr-is-property .gr-header-booking-visible .gr-primary-nav--desktop,
  .gr-is-property .gr-header-booking-visible .gr-header-host{display:none}
  .gr-is-property .gr-header-booking-visible .gr-header-booking{display:flex;align-items:center;gap:22px;margin-left:auto}
  .gr-is-property .gr-header-booking-visible .gr-header-actions{margin-left:0}
  .gr-header-booking__details{display:flex;flex-direction:column;align-items:flex-end;min-width:180px;line-height:1.2}
  .gr-header-booking__details strong{color:var(--gr-heading);font-size:18px;font-weight:600}
  .gr-header-booking__details span{margin-top:4px;color:var(--gr-muted);font-size:12px;white-space:nowrap}
  .gr-header-booking__button{display:inline-flex;align-items:center;justify-content:center;min-width:132px;min-height:44px;padding:10px 24px;border:0;border-radius:999px;background:var(--gr-primary);color:#fff;font-size:15px;font-weight:600;line-height:1}
  .gr-header-booking__button:focus-visible{outline:2px solid var(--gr-heading);outline-offset:2px}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}


/* ==========================================================
   Guate.Rentals native footer
   ========================================================== */
.gr-site-footer{
	margin-top:48px;
	background:#fff;
	border-top:1px solid #e5e7eb;
	color:#374151;
}

.gr-footer-main{
	display:grid;
	grid-template-columns:minmax(250px,.95fr) minmax(0,2.05fr);
	gap:56px;
	padding-top:42px;
	padding-bottom:34px;
}

.gr-footer-brand{
	min-width:0;
}

.gr-footer-logo{
	margin-bottom:18px;
}

.gr-footer-logo .custom-logo-link{
	display:inline-flex;
	align-items:center;
}

.gr-footer-logo .custom-logo{
	display:block;
	width:auto;
	max-width:170px;
	max-height:42px;
	object-fit:contain;
}

.gr-footer-wordmark{
	color:#111827;
	font-size:21px;
	font-weight:600;
	line-height:1.2;
	text-decoration:none;
}

.gr-footer-tagline{
	margin:0 0 6px;
	color:#111827;
	font-size:16px;
	font-weight:500;
	line-height:1.4;
}

.gr-footer-description{
	max-width:360px;
	margin:0;
	color:#6b7280;
	font-size:14px;
	font-weight:400;
	line-height:1.6;
}

.gr-footer-contact{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:7px;
	margin-top:18px;
	color:#6b7280;
	font-size:14px;
	font-style:normal;
	line-height:1.5;
}

.gr-footer-contact a{
	color:#374151;
	text-decoration:none;
	transition:color .18s ease;
}

.gr-footer-contact a:hover,
.gr-footer-contact a:focus-visible{
	color:#04acbf;
}

.gr-footer-columns{
	display:grid;
	grid-template-columns:repeat(3,minmax(150px,1fr));
	gap:34px;
}

.gr-footer-column{
	min-width:0;
}

.gr-footer-heading{
	margin:0 0 13px;
	color:#111827;
	font-size:14px;
	font-weight:600;
	line-height:1.4;
	letter-spacing:0;
}

.gr-footer-links,
.gr-footer-bottom-links{
	list-style:none;
	margin:0;
	padding:0;
}

.gr-footer-links{
	display:grid;
	gap:9px;
}

.gr-footer-links a{
	display:inline-block;
	color:#4b5563;
	font-size:14px;
	font-weight:400;
	line-height:1.5;
	text-decoration:none;
	transition:color .18s ease;
}

.gr-footer-links a:hover,
.gr-footer-links a:focus-visible,
.gr-footer-bottom-links a:hover,
.gr-footer-bottom-links a:focus-visible{
	color:#04acbf;
}

.gr-footer-bottom{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:24px;
	min-height:60px;
	padding-top:20px;
	padding-bottom:20px;
	border-top:1px solid #e5e7eb;
}

.gr-copyright{
	margin:0;
	color:#6b7280;
	font-size:13px;
	font-weight:400;
	line-height:1.5;
}

.gr-footer-bottom-links{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	gap:10px 22px;
}

.gr-footer-bottom-links a{
	color:#6b7280;
	font-size:13px;
	font-weight:400;
	line-height:1.5;
	text-decoration:none;
	transition:color .18s ease;
}

@media (max-width:900px){
	.gr-site-footer{
		margin-top:48px;
	}

	.gr-footer-main{
		grid-template-columns:1fr;
		gap:40px;
		padding-top:44px;
		padding-bottom:38px;
	}

	.gr-footer-columns{
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:28px;
	}
}

@media (max-width:640px){
	.gr-site-footer{
		margin-top:40px;
	}

	.gr-footer-main{
		gap:34px;
		padding-top:38px;
		padding-bottom:32px;
	}

	.gr-footer-logo{
		margin-bottom:18px;
	}

	.gr-footer-logo .custom-logo{
		max-width:160px;
		max-height:38px;
	}

	.gr-footer-tagline{
		font-size:16px;
	}

	.gr-footer-description{
		font-size:14px;
	}

	.gr-footer-contact{
		display:grid;
		gap:5px;
		margin-top:18px;
	}

	.gr-footer-contact > span{
		display:none;
	}

	.gr-footer-columns{
		grid-template-columns:1fr;
		gap:30px;
	}

	.gr-footer-heading{
		margin-bottom:12px;
		font-size:14px;
	}

	.gr-footer-links{
		gap:9px;
	}

	.gr-footer-links a{
		font-size:14px;
	}

	.gr-footer-bottom{
		display:grid;
		justify-items:start;
		gap:12px;
		min-height:0;
		padding-top:22px;
		padding-bottom:28px;
	}

	.gr-footer-bottom-links{
		justify-content:flex-start;
		gap:8px 18px;
	}
}


@media (min-width:901px){
	.gr-footer-columns{
		align-items:start;
	}
	.gr-footer-column{
		padding-top:5px;
	}
}

@media (max-width:900px){
	.gr-footer-main{
		padding-top:38px;
		padding-bottom:30px;
	}
}

@media (max-width:640px){
	.gr-site-footer{
		margin-top:32px;
	}
	.gr-footer-main{
		gap:28px;
		padding-top:32px;
		padding-bottom:28px;
	}
	.gr-footer-columns{
		gap:24px;
	}
	.gr-footer-bottom{
		padding-bottom:24px;
	}
}


/* Normal editorial text should not become excessively wide even when
   its surrounding layout gets more room. */
.gr-entry:not(.gr-entry--property) .gr-entry-content > p,
.gr-entry:not(.gr-entry--property) .gr-entry-content > ul,
.gr-entry:not(.gr-entry--property) .gr-entry-content > ol{
	max-width:78ch;
}

/* Header and footer use the wider container but retain their visual scale. */
@media (min-width:1180px){
	.gr-header-inner{
		gap:clamp(28px,3vw,58px);
	}

	.gr-footer-main{
		grid-template-columns:minmax(270px,.9fr) minmax(0,2.1fr);
		gap:clamp(48px,4vw,84px);
	}
}

/* Desktop: make better use of 1440–1719px screens. */
@media (min-width:1440px){
	:root{
		--gr-page-gutter: clamp(28px,2.25vw,48px);
	}

	.gr-header-inner{
		min-height:82px;
	}

	.gr-footer-main{
		padding-top:46px;
		padding-bottom:38px;
	}
}

/* Large monitor: wider canvas, same typography. */
@media (min-width:1720px){
	:root{
		--gr-page-gutter: clamp(36px,2.5vw,56px);
	}

	.gr-header-inner{
		min-height:84px;
	}

	.gr-menu{
		gap:clamp(28px,2vw,42px);
	}

	.gr-footer-columns{
		gap:clamp(38px,3vw,64px);
	}
}

/* Very large displays stop growing before layouts become stretched. */
@media (min-width:1920px){
	:root{
		--gr-content-wide: 1520px;
	}
}


:root{
	--gr-content-wide:1520px;
	--gr-page-gutter:20px;
}

.gr-container{
	width:min(
		calc(100% - (var(--gr-page-gutter) * 2)),
		var(--gr-content-wide)
	);
	margin-inline:auto;
}

@media (min-width:768px){
	:root{
		--gr-page-gutter:32px;
	}
}

@media (min-width:1180px){
	:root{
		--gr-page-gutter:36px;
	}
}

@media (min-width:1440px){
	:root{
		--gr-page-gutter:44px;
	}
}

@media (min-width:1720px){
	:root{
		--gr-page-gutter:56px;
	}
}

@media (min-width:1920px){
	:root{
		--gr-page-gutter:64px;
	}
}
