.elementor-kit-199054{--e-global-color-primary:#004D56;--e-global-color-secondary:#F4F3F0;--e-global-color-text:#292929;--e-global-color-accent:#004D56;--e-global-color-5a676c5:#FCFCFA;--e-global-color-e2e099c:#686341;--e-global-color-2abc135:#A18550;--e-global-color-9f8b7bd:#BF5428;--e-global-color-616fab6:#E9E2D6;--e-global-color-b0e72b5:#C8C0B0;--e-global-color-b0b996a:#2C353926;--e-global-color-2335715:#004D56;--e-global-color-7f5dc34:#7A8385;--e-global-color-ff54fda:#292929;--e-global-color-f41314b:#F5EDE0;--e-global-color-8eff146:#848484;--e-global-typography-363027e-font-family:"Lora";--e-global-typography-363027e-font-size:60px;--e-global-typography-363027e-font-weight:500;--e-global-typography-363027e-line-height:1.1em;--e-global-typography-0dddfe7-font-family:"Lora";--e-global-typography-0dddfe7-font-size:40px;--e-global-typography-0dddfe7-font-weight:500;--e-global-typography-0dddfe7-line-height:1.3em;--e-global-typography-39cc623-font-family:"Jost";--e-global-typography-39cc623-font-size:17px;--e-global-typography-39cc623-font-weight:300;--e-global-typography-39cc623-line-height:1.8em;--e-global-typography-ea9ed07-font-family:"Inter";--e-global-typography-ea9ed07-font-size:12px;--e-global-typography-ea9ed07-font-weight:500;--e-global-typography-ea9ed07-text-transform:uppercase;--e-global-typography-ea9ed07-line-height:1.8em;--e-global-typography-ea9ed07-letter-spacing:2px;--e-global-typography-6fe98b5-font-family:"Inter";--e-global-typography-6fe98b5-font-size:14px;--e-global-typography-6fe98b5-font-weight:400;--e-global-typography-6fe98b5-text-transform:uppercase;--e-global-typography-3973106-font-family:"Jost";--e-global-typography-3973106-font-size:20px;--e-global-typography-3973106-font-weight:500;--e-global-typography-3973106-line-height:1.3em;--e-global-typography-42599fa-font-family:"Inter";--e-global-typography-42599fa-font-size:12px;--e-global-typography-42599fa-font-weight:600;--e-global-typography-42599fa-text-transform:uppercase;--e-global-typography-42599fa-letter-spacing:0.18em;--e-global-typography-d19284c-font-family:"Inter";--e-global-typography-d19284c-font-size:14px;background-color:var( --e-global-color-5a676c5 );color:var( --e-global-color-text );font-family:"Jost", Sans-serif;font-size:16px;font-weight:400;line-height:1.8em;}.elementor-kit-199054 e-page-transition{background-color:#FFBC7D;}.elementor-kit-199054 h1{font-family:"Lora", Sans-serif;font-weight:600;}.elementor-kit-199054 h2{font-family:"Lora", Sans-serif;font-weight:600;}.elementor-kit-199054 h3{font-family:"Lora", Sans-serif;font-weight:600;}.elementor-kit-199054 h4{font-family:"Lora", Sans-serif;font-weight:600;}.elementor-kit-199054 h5{font-family:"Lora", Sans-serif;font-weight:600;}.elementor-kit-199054 h6{font-family:"Lora", Sans-serif;font-weight:600;}.elementor-kit-199054 button,.elementor-kit-199054 input[type="button"],.elementor-kit-199054 input[type="submit"],.elementor-kit-199054 .elementor-button{border-style:solid;border-radius:0px 0px 0px 0px;}.elementor-kit-199054 button:hover,.elementor-kit-199054 button:focus,.elementor-kit-199054 input[type="button"]:hover,.elementor-kit-199054 input[type="button"]:focus,.elementor-kit-199054 input[type="submit"]:hover,.elementor-kit-199054 input[type="submit"]:focus,.elementor-kit-199054 .elementor-button:hover,.elementor-kit-199054 .elementor-button:focus{border-style:solid;}.elementor-kit-199054 img{border-radius:0px 0px 0px 0px;}.elementor-kit-199054 input:not([type="button"]):not([type="submit"]),.elementor-kit-199054 textarea,.elementor-kit-199054 .elementor-field-textual{border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1340px;}.e-con{--container-max-width:1340px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-199054{--e-global-typography-accent-line-height:12px;--e-global-typography-363027e-font-size:54px;--e-global-typography-0dddfe7-font-size:40px;--e-global-typography-39cc623-font-size:16px;--e-global-typography-3973106-font-size:22px;--e-global-typography-3973106-line-height:1.3em;font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-199054{--e-global-typography-accent-line-height:12px;--e-global-typography-363027e-font-size:36px;--e-global-typography-0dddfe7-font-size:30px;--e-global-typography-39cc623-font-size:15px;--e-global-typography-ea9ed07-font-size:12px;--e-global-typography-3973106-font-size:20px;font-size:15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.cwp-search-bar .cwp-search-bar__action:hover {
		color:#ffffff !important;
	}
	
	.cwp-collection .cwp-collection__footer .cwp-collection__view-all,
	.cwp-collection .cwp-collection__footer .cwp-collection__view-all:visited {
		color:#ffffff !important;
	}
	
	.cwp-search-bar .cwp-search-bar__clear-date {
		position: absolute !important;
    right: 6px !important;
    top: 50% !important;
		background: rgba(0, 0, 0, 0.2) !important;
    background-color: rgba(0, 0, 0, 0.2) !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    transform: translateY(-50%) !important;
		align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
		border-radius: 50% !important;
		min-height: 0 !important;
    line-height: 1 !important;
    z-index: 2 !important;
		cursor: pointer !important;
		color: #fff !important;
	}
	.cwp-search-bar .cwp-search-bar__clear-date:hover {
		transform: translateY(-50%) !important;
		background: rgba(0, 0, 0, 0.45) !important;
    background-color: rgba(0, 0, 0, 0.45) !important;
	}
	
	.cwp-search-bar .cwp-date-picker__apply {
    padding: 8px 20px !important;
    border: none !important;
    border-radius: 6px !important;
    background: var(--cwp-primary, #1B6B93) !important;
    background-color: var(--cwp-primary, #1B6B93) !important;
    color: #FFFFFF !important;
    font-family: var(--cwp-font-body) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    margin: 0 !important;
    min-height: 0 !important;
    line-height: normal !important;
	}
	.cwp-search-bar .cwp-date-picker__apply:hover, .cwp-search-bar .cwp-date-picker__apply:focus {
    filter: brightness(0.85) !important;
    border: none !important;
    outline: none !important;
	}
	.cwp-search-bar .cwp-date-picker__clear {
		background: none !important;
		background-color: transparent !important;
		border: none !important;
		font-family: var(--cwp-font-body) !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		color: var(--cwp-text, #2c2e33) !important;
		text-decoration: underline !important;
		cursor: pointer !important;
		padding: 0 !important;
		margin: 0 !important;
		min-height: 0 !important;
	}
	.cwp-search-bar .cwp-date-picker__clear:hover, .cwp-search-bar .cwp-date-picker__clear:focus {
    color: var(--cwp-cal-selected, #6C4CE0) !important;
    background: none !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
	}
	
	.cwp-root.cwp-collection {
		background: transparent;
	}
	
	@media (max-width: 767px) {
		.cwp-root.cwp-collection .cwp-card {
			max-width: 100%;
		}

	}

.elementor-element-edit-mode .cwp-filter-sort-dropdown,.elementor-element-edit-mode  .cwp-search-bar__dropdown, .elementor-element-edit-mode .cwp-date-picker{
		    display:none !important;
		}


.cwp-search-bar:hover
 {
    box-shadow: unset !important;
    border-color: unset !important;
}

.cwp-search-bar .cwp-search-bar__action--filter:hover {
    color: unset !important;
}

@media (min-width: 1280px) {
    .cwp-split-view {
        grid-template-columns: 70fr 30fr !important;
    }
    
    .cwp-split-view .cwp-split-view__results .cwp-property-grid:not(.cwp-property-grid--list) {
    grid-template-columns: repeat(3, 1fr) !important;
}
}

@media (max-width: 1024px) {
    .cwp-root .cwp-map-close {
        bottom: calc(88px + max(16px, env(safe-area-inset-bottom)) + 12px) !important;
        z-index: 1102 !important;
        box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2) !important;
    }
}

.cwp-search-bar-wrapper .cwp-search-bar {
    padding-right: 0;
    border: none !important;
}
.cwp-search-bar-wrapper .cwp-search-bar__actions {
    gap: 0 !important;
    height: 100%;
}
.cwp-search-bar-wrapper .cwp-search-bar__actions button {
    height: 100% !important;
    border-radius: 0 !important;
}

.cwp-search-bar-wrapper .cwp-search-bar__actions .cwp-search-bar__action--filter {
    border: 0 !important;
}

.cwp-search-bar-wrapper .cwp-search-bar__actions .cwp-search-bar__action--filter:hover {
    color: inherit !important;
    border-color: transparent !important;
}

.cwp-search-bar-wrapper .cwp-search-bar__actions .cwp-search-bar__action--search {
    padding: 20px !important;
    width: 110px !important;
    margin-right: -6px !important;
    border-top-right-radius: 10px !important;
    border-bottom-right-radius: 10px !important;
    background: var( --e-global-color-9f8b7bd ) !important;
    font-family: var(--e-global-typography-ea9ed07-font-family), Sans-serif !important;
    font-size: var(--e-global-typography-ea9ed07-font-size) !important;
    font-weight: var(--e-global-typography-ea9ed07-font-weight) !important;
    text-transform: var(--e-global-typography-ea9ed07-text-transform) !important;
    line-height: var(--e-global-typography-ea9ed07-line-height) !important;
    letter-spacing: var(--e-global-typography-ea9ed07-letter-spacing) !important;
}
.cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search:hover {
    transform: scale(1) !important;
}
.cwp-search-bar-wrapper .cwp-search-bar__actions .cwp-search-bar__action--search:after {
    content:"Search";
}
.cwp-search-bar-wrapper .cwp-search-bar__actions .cwp-search-bar__action--search svg {
    display: none !important;
}


@media (max-width: 1024px) {
    .cwp-card-grid, .cwp-search-page .cwp-property-grid {
        padding-bottom: 0 !important;
    }
}


.cwp-root  .cwp-pms-widget-mobile-bar__inner{
    background: #fff;
}


/* ===========================================================================
   VOLTA STAYS - CUSTOM CSS
   Consolidated from Code Snippets on 2026-09-09.

   NOTE: two fixes could NOT be moved here because they require JavaScript,
   and remain as Code Snippets:
     #63  Reviews "Load More" button  - the Elfsight widget renders inside a
          shadow root, which page CSS cannot cross; a <style> has to be
          injected into the root with JS.
     #64  Chat bubble + cookie button above the mobile booking bar - needs to
          measure the bar and apply a transform inside the chat widget's
          shadow root.
   =========================================================================== */
/*=== volta-search-fixes ===*/
/* ---------------------------------------------------------------------------
   Volta Stays - Search results tweaks
   1. Map panel = half the split view on desktop
   2. No movement on hover / focus / click for the map buttons
   3. No movement on hover / focus / click for the listing carousel arrows

   Overrides connect plugin: reset.css, connect-public.css, search.css,
   property-card.css.

   SPECIFICITY NOTE - this is why the .elementor-kit-199054s look repetitive.
   reset.css and connect-public.css both carry rules like
     .cwp-root .cwp-card__carousel-nav:hover { transform: ... !important }
   which is (0,3,0) + !important. Matching that specificity only wins on
   source order, which is not reliable here. Repeating the class three times
   lifts these to (0,4,0) so they win outright, and avoids depending on
   .cwp-root being an ancestor at all.
--------------------------------------------------------------------------- */

/* 1. MAP = 50% ------------------------------------------------------------
   Plugin default is 45/55, widening to 42/58 at 1440px and 40/60 at 1536px.
   :not(--map-collapsed) is load-bearing - the collapsed rule is
   `minmax(0,1fr) 0fr !important`, and without the :not() this rule would
   outrank it and the map could never collapse. Desktop only: below 1025px
   the split view is block flow and the map is an overlay. */
@media (min-width: 1025px) {
	.cwp-split-view:not(.cwp-split-view--map-collapsed) {
		grid-template-columns: minmax(0, 50fr) minmax(0, 50fr) !important;
	}
}

/* 2. LISTING IMAGE CAROUSEL ARROWS ---------------------------------------
   translateY(-50%) is the vertical centring and must be kept; only the
   scale(1.05) is dropped. */
.cwp-card__carousel-nav.cwp-card__carousel-nav.cwp-card__carousel-nav:hover,
.cwp-card__carousel-nav.cwp-card__carousel-nav.cwp-card__carousel-nav:focus,
.cwp-card__carousel-nav.cwp-card__carousel-nav.cwp-card__carousel-nav:focus-visible,
.cwp-card__carousel-nav.cwp-card__carousel-nav.cwp-card__carousel-nav:active {
	transform: translateY(-50%) !important;
}

/* 3. MAP BUTTONS - Show map / Show list / Hide map ------------------------
   translateX(-50%) is the horizontal centring and must be kept.
   Note connect-public.css sets `transform: scale(0.97)` on
   .cwp-map-close:active under 767px, which drops the centring entirely and
   makes the button jump left on tap - restoring translateX(-50%) fixes
   that too. */
.cwp-map-fab.cwp-map-fab.cwp-map-fab:hover,
.cwp-map-fab.cwp-map-fab.cwp-map-fab:focus,
.cwp-map-fab.cwp-map-fab.cwp-map-fab:focus-visible,
.cwp-map-fab.cwp-map-fab.cwp-map-fab:active,
.cwp-map-close.cwp-map-close.cwp-map-close:hover,
.cwp-map-close.cwp-map-close.cwp-map-close:focus,
.cwp-map-close.cwp-map-close.cwp-map-close:focus-visible,
.cwp-map-close.cwp-map-close.cwp-map-close:active,
.cwp-map-button-bar__toggle.cwp-map-button-bar__toggle.cwp-map-button-bar__toggle:hover,
.cwp-map-button-bar__toggle.cwp-map-button-bar__toggle.cwp-map-button-bar__toggle:focus,
.cwp-map-button-bar__toggle.cwp-map-button-bar__toggle.cwp-map-button-bar__toggle:focus-visible,
.cwp-map-button-bar__toggle.cwp-map-button-bar__toggle.cwp-map-button-bar__toggle:active {
	transform: translateX(-50%) !important;
}

/* 4. DESKTOP BOUNDARY CHEVRON --------------------------------------------
   No hover transform today, but pinned so a plugin update cannot introduce
   one. translateY(-50%) is its vertical centring. */
.cwp-map-toggle.cwp-map-toggle.cwp-map-toggle:hover,
.cwp-map-toggle.cwp-map-toggle.cwp-map-toggle:focus,
.cwp-map-toggle.cwp-map-toggle.cwp-map-toggle:focus-visible,
.cwp-map-toggle.cwp-map-toggle.cwp-map-toggle:active {
	transform: translateY(-50%) !important;
}


/* 6. "SIMILAR PROPERTIES" CAROUSEL ARROWS --------------------------------
   reset.css: .cwp-root .cwp-carousel-btn:hover
   -> translateY(-50%) scale(1.05) !important
   Base is `position:absolute; top:50%; transform:translateY(-50%)`, so the
   translate is the vertical centring and must stay; only the scale goes.
   Tripled class = (0,4,0), beating the .cwp-root rule's (0,3,0). */
.cwp-carousel-btn.cwp-carousel-btn.cwp-carousel-btn:hover,
.cwp-carousel-btn.cwp-carousel-btn.cwp-carousel-btn:focus,
.cwp-carousel-btn.cwp-carousel-btn.cwp-carousel-btn:focus-visible,
.cwp-carousel-btn.cwp-carousel-btn.cwp-carousel-btn:active {
	transform: translateY(-50%) !important;
}
/*=== volta-header-nav ===*/

/* ---------------------------------------------------------------------------
   Volta Stays - header menu hover / active colour
   Default (teal bar): white.   Scrolled (white bar): brand orange.
--------------------------------------------------------------------------- */

/* --- default: dark teal header --- */
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item:hover,
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item:focus,
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item.elementor-item-active,
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item.highlighted {
	color: #FFFFFF !important;
	fill: #FFFFFF !important;
}
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item::before,
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item::after {
	background-color: #FFFFFF !important;
}

/* --- scrolled: white header --- */
.elementor-location-header.scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item:hover,
.elementor-location-header.scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item:focus,
.elementor-location-header.scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item.elementor-item-active,
.elementor-location-header.scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item.highlighted {
	color: #BF5428 !important;
	fill: #BF5428 !important;
}
.elementor-location-header.scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item::before,
.elementor-location-header.scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item.elementor-item.elementor-item::after {
	background-color: #BF5428 !important;
}

/*=== volta-listview-type ===*/
/* ---------------------------------------------------------------------------
   Volta Stays - property card list view typography
   Brings list view in line with grid view. Measured off the live cards:

                 GRID (target)                 LIST (was)
     title       Lora  20px/24.4 w600 ls-0.4   Poppins 19px/24.7 w600 ls-0.19
     rating      Inter 14px/14                 Inter 13px/13
     location    Inter 16px/25.6               Inter 14px/22.4
     specs       Inter 16px/22.4               same  - left alone
     price       Inter 16px/22.4               same  - left alone

   The serif title (Lora) was the obvious mismatch; list view was falling back
   to Poppins. Only the three properties that actually differ are overridden.

   Class repeated to lift specificity - the connect plugin sets its list-view
   rules with .cwp-root prefixes and !important, which a plain override loses
   to. Applies anywhere the list view is used (Properties and Search Results).
--------------------------------------------------------------------------- */

.cwp-property-grid--list .cwp-card .cwp-card__title.cwp-card__title.cwp-card__title {
	font-family: Lora, sans-serif !important;
	font-size: 20px !important;
	font-weight: 600 !important;
	line-height: 24.4px !important;
	letter-spacing: -0.4px !important;
}

.cwp-property-grid--list .cwp-card .cwp-card__rating.cwp-card__rating.cwp-card__rating {
	font-family: Inter, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 14px !important;
}

.cwp-property-grid--list .cwp-card .cwp-card__location.cwp-card__location.cwp-card__location {
	font-family: Inter, sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 25.6px !important;
}

/* ===========================================================================
   Property video (snippet #67 renders the markup, styles live here)
   Aspect ratio is set inline from the oEmbed response; portrait reels are
   capped in width so a 9:16 video does not dominate the page.
   =========================================================================== */
.cwp-property-video {
	margin: 0 0 8px;
}

.cwp-property-video__frame {
	position: relative;
	width: 100%;
	max-width: 900px;
	margin: 0 auto 0 0;
	overflow: hidden;
	border-radius: 12px;
	background: #000;
}

.cwp-property-video--portrait .cwp-property-video__frame {
	max-width: 380px;
}

.cwp-property-video__frame iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
	display: block;
}/* End custom CSS */