.elementor-kit-4630{--e-global-color-primary:#323130;--e-global-color-secondary:#323130;--e-global-color-text:#191919;--e-global-color-accent:#8CB467;--e-global-color-a62a506:#7EA25D;--e-global-color-e738d20:#A3A3A3;--e-global-color-97591ba:#FFFFFF;--e-global-color-cff0b97:#709052;--e-global-color-2864d87:#8CB467;--e-global-color-616fab6:#FDFDFD;--e-global-color-07ce9be:#F8F6EF;--e-global-color-1cfcf47:#709052;--e-global-color-5a676c5:#FFFFFF;--e-global-color-dc82850:#000000;--e-global-typography-text-font-family:"Open Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.75em;--e-global-typography-accent-font-family:"Open Sans";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.75em;--e-global-typography-363027e-font-family:"EB Garamond";--e-global-typography-363027e-font-size:41.05px;--e-global-typography-363027e-font-weight:400;--e-global-typography-363027e-text-transform:uppercase;--e-global-typography-363027e-line-height:1.3em;--e-global-typography-0dddfe7-font-family:"EB Garamond";--e-global-typography-0dddfe7-font-size:36.49px;--e-global-typography-0dddfe7-font-weight:600;--e-global-typography-0dddfe7-text-transform:capitalize;--e-global-typography-0dddfe7-line-height:1.1em;--e-global-typography-39cc623-font-family:"EB Garamond";--e-global-typography-39cc623-font-size:14px;--e-global-typography-39cc623-font-weight:800;--e-global-typography-39cc623-text-transform:uppercase;--e-global-typography-39cc623-line-height:1.3em;--e-global-typography-39cc623-letter-spacing:2px;--e-global-typography-3973106-font-family:"EB Garamond";--e-global-typography-3973106-font-size:25.63px;--e-global-typography-3973106-font-weight:600;--e-global-typography-3973106-text-transform:capitalize;--e-global-typography-3973106-line-height:1.1em;--e-global-typography-3973106-letter-spacing:1px;--e-global-typography-ea9ed07-font-family:"Open Sans";--e-global-typography-ea9ed07-font-size:14px;--e-global-typography-ea9ed07-font-weight:600;--e-global-typography-ea9ed07-text-transform:uppercase;--e-global-typography-6fe98b5-font-family:"Open Sans";--e-global-typography-6fe98b5-font-size:14px;--e-global-typography-6fe98b5-font-weight:600;--e-global-typography-6fe98b5-text-transform:uppercase;--e-global-typography-36b6836-font-family:"Bilbo Swash Caps";--e-global-typography-36b6836-font-size:22px;--e-global-typography-36b6836-font-weight:600;--e-global-typography-36b6836-text-transform:capitalize;--e-global-typography-36b6836-line-height:1.3em;--e-global-typography-36b6836-letter-spacing:2.4px;--e-global-typography-9fcd4e3-font-family:"DM Serif Display";--e-global-typography-9fcd4e3-font-size:70px;--e-global-typography-9fcd4e3-font-weight:400;--e-global-typography-9fcd4e3-line-height:77px;background-color:#FDFDFD;color:#191919;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-4630 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4630 p{margin-block-end:20px;}.elementor-kit-4630 a{color:#709052;font-family:"Open Sans", Sans-serif;}.elementor-kit-4630 a:hover{color:#7EA25D;}.elementor-kit-4630 h1{font-family:"EB Garamond", Sans-serif;font-size:28px;font-weight:700;text-transform:none;line-height:38px;}.elementor-kit-4630 h2{font-family:"EB Garamond", Sans-serif;font-size:20px;font-weight:700;text-transform:none;line-height:30px;}.elementor-kit-4630 h3{font-family:"EB Garamond", Sans-serif;font-size:18px;font-weight:700;text-transform:none;line-height:30px;}.elementor-kit-4630 h4{font-family:"EB Garamond", Sans-serif;font-size:16px;font-weight:700;text-transform:none;line-height:24px;}.elementor-kit-4630 h5{font-family:"EB Garamond", Sans-serif;font-size:14px;font-weight:700;text-transform:none;line-height:22px;}.elementor-kit-4630 h6{font-family:"EB Garamond", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-4630{--e-global-typography-363027e-font-size:36.49px;--e-global-typography-0dddfe7-font-size:32.44px;--e-global-typography-3973106-font-size:22.78px;--e-global-typography-36b6836-font-size:20px;--e-global-typography-9fcd4e3-font-size:60px;--e-global-typography-9fcd4e3-line-height:66px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-4630{--e-global-typography-363027e-font-size:32.44px;--e-global-typography-0dddfe7-font-size:28.83px;--e-global-typography-9fcd4e3-font-size:38px;--e-global-typography-9fcd4e3-line-height:42px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-4630 p{margin-block-end:10px;}.elementor-kit-4630 h1{font-size:22px;line-height:30px;}.elementor-kit-4630 h2{font-size:16px;line-height:24px;}.elementor-kit-4630 h3{font-size:14px;line-height:22px;}.elementor-kit-4630 h4{font-size:12px;line-height:20px;}.elementor-kit-4630 h5{font-size:12px;line-height:20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==========================================================================
   Connect (property platform) styling: reusable on any Elementor + Connect site.
   No page or element IDs: everything hooks onto Connect's own classes/IDs
   (.cwp-*, #cwp-search-map, #cwp-property-map) and Elementor's widget-type class
   .elementor-widget-connect_search_bar (present on every Connect search bar widget).
   Colours/fonts follow the site automatically:
     Accent colour  = Elementor system global  var(--e-global-color-accent)
     Body font      = Elementor "Text" typography, else Connect body font   (--cwp-font-body)
     Heading font   = Elementor "Primary" typography, else Connect display font (--cwp-font-display)
     Button text    = body font, 14px / 600 / uppercase / 1px
   Section 1 "layout tweaks" adjust the Elementor column/section around the search bar;
   remove them if a site's layout doesn't need them.
   ========================================================================== */

/* --- 1. Connect search bar widget (Elementor): classic single-row design + responsive --- */
@media (min-width: 768px) {
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper { padding: 0 !important; position: relative !important; top: auto !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar { height: 56px !important; padding: 0 !important; background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; gap: 0 !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-root.cwp-search-bar, .elementor-widget.elementor-widget-connect_search_bar .cwp-root.cwp-search-bar:hover, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar:hover, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar.cwp-search-bar--active, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field:hover, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search:hover { box-shadow: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field { height: 56px !important; display: grid !important; grid-template-columns: 18px minmax(0, 1fr) !important; column-gap: 10px !important; row-gap: 3px !important; align-content: center !important; padding: 0 18px !important; border: 1px solid #e9e9e9 !important; border-right-width: 0 !important; border-radius: 0 !important; background: #fff !important; font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)), sans-serif !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field::before, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__actions::before { content: none !important; display: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__where { grid-template-columns: minmax(0, 1fr) !important; flex: 1 1 30% !important; border-radius: 30px 0 0 30px !important; padding-left: 21px !important; padding-right: 40px !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkin, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkout { flex: 1 1 17.5% !important; width: auto !important; min-width: 0 !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__guests { flex: 1 1 18% !important; margin-left: 10px !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__label { grid-column: -2 / -1; display: flex !important; align-items: center !important; gap: 4px !important; margin: 0 !important; font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)), sans-serif !important; font-size: 12px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; line-height: 1.2 !important; color: #2c2e33 !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__label-icon { display: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__value { grid-column: -2 / -1; display: block !important; font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)), sans-serif !important; font-size: 15px !important; font-weight: 400 !important; line-height: 1.3 !important; color: #6a6a6a !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__value--filled { font-weight: 500 !important; color: #222 !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkin::after, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkout::after, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__guests::after { content: ''; grid-column: 1; grid-row: 1 / span 2; align-self: center; width: 18px; height: 18px; background: #2b2b2b; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3Cpath d='M7 13.5h1M11.5 13.5h1M16 13.5h1M7 17h1M11.5 17h1M16 17h1' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3Cpath d='M7 13.5h1M11.5 13.5h1M16 13.5h1M7 17h1M11.5 17h1M16 17h1' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__guests::after { width: 18px; height: 18px; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7.5' cy='4.5' r='2.1'/%3E%3Ccircle cx='16.5' cy='4.5' r='2.1'/%3E%3Cpath d='M5 21.5v-6.8H3.8V10.6A3.3 3.3 0 0 1 7.1 7.3h.8a3.3 3.3 0 0 1 3.3 3.3v4.1H10v6.8M14 21.5v-6.8h-1.2V10.6a3.3 3.3 0 0 1 3.3-3.3h.8a3.3 3.3 0 0 1 3.3 3.3v4.1H19v6.8'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7.5' cy='4.5' r='2.1'/%3E%3Ccircle cx='16.5' cy='4.5' r='2.1'/%3E%3Cpath d='M5 21.5v-6.8H3.8V10.6A3.3 3.3 0 0 1 7.1 7.3h.8a3.3 3.3 0 0 1 3.3 3.3v4.1H10v6.8M14 21.5v-6.8h-1.2V10.6a3.3 3.3 0 0 1 3.3-3.3h.8a3.3 3.3 0 0 1 3.3 3.3v4.1H19v6.8'/%3E%3C/svg%3E"); }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__where::after { content: ''; position: absolute; right: 18px; top: 50%; width: 9px; height: 5px; margin-top: -3px; background: #111; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23000'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23000'/%3E%3C/svg%3E") center / contain no-repeat; pointer-events: none; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__where:has(.cwp-search-bar__value--filled)::after { display: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--filter, .elementor-widget.elementor-widget-connect_search_bar .cwp-filter-chips { display: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__actions { padding: 0 !important; gap: 0 !important; height: 56px !important; flex: 0 0 auto !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search { width: auto !important; min-width: 143px !important; max-width: none !important; height: 56px !important; padding: 5px 32px !important; border: 1px solid #2b2b2b !important; border-radius: 0 30px 30px 0 !important; background: var(--e-global-color-accent) !important; color: #fff !important; box-shadow: none !important; transform: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search svg { display: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search::after { content: 'Search'; font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)), sans-serif; font-size: 14px; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; line-height: 1; color: #fff; }
}
/* No grey overlay when a picker is open: Connect's click-outside backdrop stays (transparent), and an ancestor backdrop-filter (e.g. a blurred column) no longer traps that fixed backdrop. */
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-backdrop, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-backdrop--active { background: transparent !important; }
.elementor-widget-wrap:has(> .elementor-widget-connect_search_bar), .e-con:has(> .elementor-widget-connect_search_bar) { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
/* From the supplied Connect search-bar CSS (search bar parts only), scoped to this widget. */
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar .cwp-search-bar__action:hover { color: #fff !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar:hover { box-shadow: unset !important; border-color: unset !important; }
.elementor-widget.elementor-widget-connect_search_bar .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; }
.elementor-widget.elementor-widget-connect_search_bar .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; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar .cwp-date-picker__apply { padding: 8px 20px !important; border: none !important; border-radius: 6px !important; background: var(--e-global-color-accent) !important; background-color: var(--e-global-color-accent) !important; color: #fff !important; font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)),sans-serif !important; font-size: 13px !important; font-weight: 600 !important; cursor: pointer !important; margin: 0 !important; min-height: 0 !important; line-height: normal !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar .cwp-date-picker__apply:hover, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar .cwp-date-picker__apply:focus { filter: brightness(0.85) !important; border: none !important; outline: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar .cwp-date-picker__clear { background: none !important; background-color: transparent !important; border: none !important; font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)),sans-serif !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; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar .cwp-date-picker__clear:hover, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar .cwp-date-picker__clear:focus { color: var(--e-global-color-accent) !important; background: none !important; background-color: transparent !important; border: none !important; outline: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search:hover { transform: scale(1) !important; }
.elementor-element-edit-mode.elementor-widget-connect_search_bar .cwp-filter-sort-dropdown, .elementor-element-edit-mode.elementor-widget-connect_search_bar .cwp-search-bar__dropdown, .elementor-element-edit-mode.elementor-widget-connect_search_bar .cwp-date-picker { display: none !important; }
/* Desktop (>= 1025): keep the two-line text labels (Connect hides them below 1280px). */
@media (min-width: 1025px) {
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__label .cwp-search-bar__label-text { display: inline !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__label .cwp-search-bar__label-icon { display: none !important; }
}
/* Tablet (768-1024): same pattern as the reference site (cottagecabinllc.com) - one compact row using
   Connect's own tablet style: small icon above each value, no label text, 110px SEARCH. */
@media (min-width: 768px) and (max-width: 1024px) {
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__actions { height: 50px !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field { grid-template-columns: minmax(0, 1fr) !important; row-gap: 2px !important; padding: 0 12px !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__where { padding-left: 18px !important; padding-right: 28px !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkin, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkout { flex: 1 1 14% !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__guests { margin-left: 6px !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkin::after, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkout::after, .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__guests::after { content: none !important; display: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__where::after { right: 12px !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__label .cwp-search-bar__label-text { display: none !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__label .cwp-search-bar__label-icon { display: block !important; width: 14px !important; height: 14px !important; opacity: .6 !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__value { font-size: 13px !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search { min-width: 110px !important; width: 110px !important; height: 50px !important; padding: 0 !important; }
/* layout tweak (tablet): 20px side padding on the top-level section holding the search bar, and an even 10px inside its column/container */
.elementor-section.elementor-top-section:has(.elementor-widget-connect_search_bar), .e-con.e-parent:has(.elementor-widget-connect_search_bar) { padding-left: 20px !important; padding-right: 20px !important; }
.elementor-widget-wrap:has(> .elementor-widget-connect_search_bar), .e-con:has(> .elementor-widget-connect_search_bar) { padding: 10px !important; }
}
/* Phone (< 768): Connect's own "Where to?" button + full-screen search, sized like the reference site. */
@media (max-width: 767px) {
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-trigger { width: 100% !important; height: 52px !important; padding: 0 16px !important; background: #fff !important; border: 0 !important; border-radius: 30px !important; box-shadow: 0 1px 4px rgba(0, 0, 0, .06) !important; font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)), sans-serif !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-trigger__title { font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)), sans-serif !important; font-size: 13px !important; font-weight: 600 !important; color: #2c2e33 !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-trigger__subtitle { font-family: var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)), sans-serif !important; font-size: 11px !important; color: #9a9b9d !important; }
.elementor-widget.elementor-widget-connect_search_bar .cwp-search-trigger__icon { width: 28px !important; height: 28px !important; border-radius: 50% !important; background: var(--e-global-color-accent) !important; color: #fff !important; }
/* layout tweak: even 10px around the phone button inside the search bar's column/container */
.elementor-widget-wrap:has(> .elementor-widget-connect_search_bar), .e-con:has(> .elementor-widget-connect_search_bar) { padding-bottom: 10px !important; }
}

/* --- 2. Connect headings in the site heading font/weight --- */
/* Search results heading ("5 properties") uses the display font (Connect sets it to the body font) */
.cwp-root .cwp-results-header__title,.cwp-root .cwp-results-header__title strong{font-family:var(--e-global-typography-primary-font-family, var(--cwp-font-display, serif)),serif!important;font-weight:600!important;}
/* Property title weight = site H1 weight (600); beats Connect's 500 !important */
body .cwp-root .cwp-property-header__heading .cwp-property-title{font-family:var(--e-global-typography-primary-font-family, var(--cwp-font-display, serif)),serif!important;font-weight:600!important;}

/* --- 3. Map approximate-location circles, Google Maps style (search page + property page) --- */
#cwp-search-map .leaflet-overlay-pane path,#cwp-property-map .leaflet-overlay-pane path{stroke:#4285F4!important;fill:#4285F4!important;stroke-dasharray:none!important;stroke-width:1px!important;stroke-opacity:.6!important;fill-opacity:.12!important;}

/* --- 4. Property page: "Bedroom arrangement" cards (rendered by snippet #53) + full-width floor plans --- */
.cg-bedrooms{margin:32px 0 8px}
.cg-bedrooms__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.cg-bedrooms__card{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid var(--cwp-border,#e5e5e5);border-radius:var(--cwp-radius-md,12px);background:var(--cwp-surface,#fff);font-family:var(--e-global-typography-text-font-family, var(--cwp-font-body, sans-serif)),sans-serif}
.cg-bedrooms__icon{color:var(--cwp-text,#2c2e33);opacity:.8;margin-bottom:4px}
.cg-bedrooms__name{font-weight:600;font-size:15px;color:var(--cwp-text,#2c2e33)}
.cg-bedrooms__beds{font-size:14px;color:var(--cwp-text-secondary,#6a6a6a)}
.cwp-floor-plans .cwp-floor-plans__grid{grid-template-columns:1fr !important}
.cwp-floor-plans .cwp-floor-plans__item,.cwp-floor-plans .cwp-floor-plans__item img{width:100% !important;max-width:100% !important}




/* ==========================================================================
   MIGRATION-BRANDING (Sage Vacations). Connect containers only. 2026-11-06.
   Replaces the block made for AVF Cala d'Or. Tokens measured on the homepage (site-profile.md):
     headings EB Garamond 600 #323130; labels EB Garamond 800 uppercase 2px;
     body Open Sans 400 #191919; accent #8CB467; AA text links #4F6B38;
     primary button = header "Book Now": Open Sans 600 14px uppercase, #191919 on transparent,
     1.6px #8CB467 border, radius 5px, 52px high; hero SEARCH keeps the old solid #8CB467 with white text.
   ========================================================================== */

/* --- Headings: property title, results title, sidebar price --- */
html body .cwp-root .cwp-property-header__heading .cwp-property-title,
html body .cwp-root .cwp-property-title,
html body .cwp-root .cwp-results-header__title,
html body .cwp-root .cwp-results-header__title strong,
html body .cwp-root .cwp-sidebar__price,
html body .cwp-root .cwp-sidebar__amount {
	font-family: "EB Garamond", serif !important;
	font-weight: 600 !important;
	letter-spacing: normal !important;
	color: #323130 !important;
}

/* --- Section titles. The similar-properties rule beats connect-public.css (!important there). --- */
html body .cwp-root .cwp-section-title,
html body .cwp-root .cwp-description > h2,
html body .cwp-root .cwp-location > h2,
html body .cwp-root .cwp-things-to-know__heading,
html body .cwp-root.cwp-property-page .cwp-similar-properties > h2:not(.cwp-card__title),
html body .bly-checkout .bly-checkout__section-title {
	font-family: "EB Garamond", serif !important;
	font-weight: 600 !important;
	text-transform: capitalize !important;
	letter-spacing: normal !important;
	color: #323130 !important;
}
html body .cwp-root .cwp-property-address { font-family: "Open Sans", sans-serif !important; }

/* --- Single property page background = homepage main background --- */
body.single-bly_property,
body.single-bly_property .cwp-root.cwp-property-page {
	background-color: #FFFFFF !important;
}

/* --- Booking area: white card with the brand border --- */
html body .cwp-root .cwp-property-layout__sidebar .cwp-pms-widget-wrapper,
html body .cwp-root .cwp-sidebar {
	background: #FFFFFF !important;
	border: 1px solid #8CB467 !important;
	border-radius: 5px !important;
	padding: 16px !important;
}
html body .cwp-root .cwp-sidebar__label {
	font-family: "EB Garamond", serif !important;
	font-weight: 800 !important;
	font-size: 13px !important;
	text-transform: uppercase !important;
	letter-spacing: 2px !important;
	color: #4F5962 !important;
}

/* --- Body text --- */
html body .cwp-root .cwp-description,
html body .cwp-root .cwp-description p,
html body .cwp-root .cwp-description li,
html body .cwp-root .cwp-description__summary,
html body .cwp-root .cwp-description__text {
	font-family: "Open Sans", sans-serif !important;
	font-weight: 400 !important;
	color: #191919 !important;
}

/* --- Helper greys at AA on white (#5F6165 = 6.3:1, #4F5962 = 7.4:1); disabled days stay light (exempt) --- */
html body .cwp-root,
html body .bly-checkout {
	--cwp-text-secondary: #5F6165;
	--cwp-text-muted: #4F5962;
}
html body .cwp-root .cwp-cal__day.cwp-cal__day--disabled { color: #B5B6B8 !important; }

/* --- Text links: darkened brand green (#4F6B38 = 6.0:1; the kit #709052 is 3.6:1) --- */
html body .cwp-root .cwp-things-to-know__link,
html body .cwp-root .cwp-location__directions,
html body .cwp-root .gm-style a,
html body .cwp-root .leaflet-control-attribution a,
html body .cwp-root .maplibregl-ctrl-attrib a,
html body .cwp-root #cwp-property-map .leaflet-control-attribution a,
html body .cwp-root #cwp-search-map .leaflet-control-attribution a {
	color: #4F6B38 !important;
}

/* --- Buttons = the header "Book Now" button --- */
html body .cwp-root .cwp-btn--primary,
html body .bly-checkout .cwp-btn--primary,
html body .cwp-root .cwp-sidebar__cta,
html body .cwp-root .cwp-sticky-nav__cta {
	background: transparent !important;
	color: #191919 !important;
	border: 1.6px solid #8CB467 !important;
	border-radius: 5px !important;
	font-family: "Open Sans", sans-serif !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	text-transform: uppercase !important;
	min-height: 52px !important;
}
html body .cwp-root .cwp-btn--primary:hover,
html body .bly-checkout .cwp-btn--primary:hover,
html body .cwp-root .cwp-sidebar__cta:hover,
html body .cwp-root .cwp-sticky-nav__cta:hover {
	background: #8CB467 !important;
	color: #191919 !important;
}

/* --- Card titles: the link is what visitors see --- */
html body .cwp-root .cwp-card .cwp-card__title,
html body .cwp-root .cwp-card .cwp-card__title a {
	font-family: "EB Garamond", serif !important;
	font-weight: 600 !important;
	font-size: 22px !important;
	color: #323130 !important;
}

/* --- Hidden prices (booking-widget-only). Connect renders these regardless of its price setting. --- */
html body .cwp-root .cwp-card .cwp-card__price.cwp-card__price,
html body .cwp-root .cwp-sticky-nav .cwp-sticky-nav__price.cwp-sticky-nav__price,
html body .cwp-root .cwp-cal__day .cwp-cal__day-price.cwp-cal__day-price,
html body .cwp-root .cwp-calendar__day-price.cwp-calendar__day-price,
html body .cwp-map-popup .cwp-map-popup__price.cwp-map-popup__price {
	display: none !important;
}

/* --- Homepage loop grid + Connect card: equal heights; the loop container draws the one shadow --- */
html body .e-loop-item .elementor-widget-connect-property-card { flex-grow: 1 !important; height: 100% !important; }
html body .e-loop-item .elementor-widget-connect-property-card > .elementor-widget-container,
html body .e-loop-item .elementor-widget-connect-property-card .cwp-root { height: 100% !important; }
html body .e-loop-item .cwp-root .cwp-card,
html body .e-loop-item .cwp-root .cwp-card:hover {
	height: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	box-shadow: none !important;
	transform: none !important;
}
html body .e-loop-item .cwp-root .cwp-card .cwp-card__body { flex: 1 1 auto !important; }

/* --- Search page split 50/50 on desktop --- */
@media (min-width: 1280px) {
	html body .cwp-root.cwp-search-page .cwp-split-view:not(.cwp-split-view--map-collapsed) {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
	}
}

/* --- Bedroom cards on phones: 2-column grid instead of the fixed 180px side-scroll --- */
@media (max-width: 767px) {
	html body .cwp-root .cwp-bedrooms__track {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
		overflow: visible !important;
	}
	html body .cwp-root .cwp-bedrooms__track > * { width: auto !important; min-width: 0 !important; flex: none !important; }
	html body .cwp-root .cwp-bedrooms__track > *:last-child:nth-child(odd) { grid-column: 1 / -1 !important; }
}
@media (max-width: 359px) {
	html body .cwp-root .cwp-bedrooms__track { grid-template-columns: minmax(0, 1fr) !important; }
}

/* --- Homepage search bar: joined fields on one white bar, Filters kept, SEARCH = old hero button --- */
@media (min-width: 768px) {
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar {
		height: auto !important;
		min-height: 64px !important;
		padding: 6px !important;
		background: #FFFFFF !important;
		border: 0 !important;
		border-radius: 5px !important;
		align-items: center !important;
		box-sizing: border-box !important;
		outline: 0 !important;
	}
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field {
		height: 52px !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		margin-left: 0 !important;
	}
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__label { display: none !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__value {
		grid-row: 1 / span 2 !important;
		align-self: center !important;
	}
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkin:not(:has(.cwp-search-bar__value--filled)) .cwp-search-bar__label,
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkout:not(:has(.cwp-search-bar__value--filled)) .cwp-search-bar__label {
		display: flex !important;
		grid-row: 1 / span 2 !important;
		align-self: center !important;
	}
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkin:not(:has(.cwp-search-bar__value--filled)) .cwp-search-bar__value,
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkout:not(:has(.cwp-search-bar__value--filled)) .cwp-search-bar__value { display: none !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__value,
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__field .cwp-search-bar__label .cwp-search-bar__label-text {
		display: inline;
		font-family: "Open Sans", sans-serif !important;
		font-size: 15px !important;
		font-weight: 500 !important;
		text-transform: none !important;
		letter-spacing: normal !important;
		color: #191919 !important;
	}
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__where .cwp-search-bar__value:not(.cwp-search-bar__value--filled) { color: #4F5962 !important; }
	/* Filters: shown (the generic kit rule hides it) */
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--filter {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 52px !important;
		min-width: 52px !important;
		height: 52px !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
		color: #323130 !important;
		border: 0 !important;
		border-radius: 5px !important;
		box-shadow: none !important;
	}
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--filter:hover { background: #F8F6EF !important; color: #323130 !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--filter svg { width: 18px !important; height: 18px !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__actions { height: 52px !important; align-items: center !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search {
		width: 120px !important;
		min-width: 120px !important;
		height: 52px !important;
		padding: 5px 20px !important;
		background: #8CB467 !important;
		border: 0 !important;
		border-radius: 5px !important;
	}
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search:hover { background: #7EA25D !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__action--search::after {
		font-family: "Open Sans", sans-serif !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		text-transform: uppercase !important;
		color: #FFFFFF !important;
	}
}
@media (min-width: 1025px) {
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__where { flex: 1 1 300px !important; padding-left: 20px !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkin { flex: 0 0 145px !important; padding-left: 20px !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__checkout { flex: 0 0 140px !important; padding-left: 20px !important; }
	html body .elementor-widget.elementor-widget-connect_search_bar .cwp-search-bar-wrapper .cwp-search-bar .cwp-search-bar__guests { flex: 1 1 160px !important; padding-left: 20px !important; }
}
/* --- Search map sticks while results scroll. Homey prints html, body { overflow-x: hidden }, which makes
       body a scroll container on pages that load Homey's CSS and defeats Connect's position: sticky.
       clip stops sideways scroll without creating a scroll container. Map offset = 100px fixed header. --- */
html:has(.cwp-root.cwp-search-page),
html body:has(.cwp-root.cwp-search-page) {
	overflow-x: clip !important;
	overflow-y: visible !important;
}
@media (min-width: 1024px) {
	html body .cwp-root.cwp-search-page .cwp-split-view__map {
		top: 100px !important;
		height: calc(100vh - 100px) !important;
	}
	html body.admin-bar .cwp-root.cwp-search-page .cwp-split-view__map {
		top: 132px !important;
		height: calc(100vh - 132px) !important;
	}
}
/* Search bar sticks below the fixed header (100px from 768px up), and under its z-index (100). */
@media (min-width: 768px) {
	html body .cwp-root.cwp-search-page .cwp-search-bar-wrapper {
		top: 100px !important;
		z-index: 90 !important;
	}
	html body.admin-bar .cwp-root.cwp-search-page .cwp-search-bar-wrapper {
		top: 132px !important;
	}
}
/* While a picker is open, give the bar back Connect's z-index so its dropdown sits above the backdrop (z-index 999). */
html body .cwp-root.cwp-search-page .cwp-search-backdrop--active ~ .cwp-search-bar-wrapper {
	z-index: 1000 !important;
}
/* --- Blog content spacing carried over from the old theme (no Elementor setting for heading margins) --- */
html body .elementor-widget-theme-post-content h1,
html body .elementor-widget-theme-post-content h2,
html body .elementor-widget-theme-post-content h3,
html body .elementor-widget-theme-post-content h4,
html body .elementor-widget-theme-post-content h5,
html body .elementor-widget-theme-post-content h6 { margin: 0 0 20px; }
@media (max-width: 768px) {
	html body .elementor-widget-theme-post-content h1,
	html body .elementor-widget-theme-post-content h2,
	html body .elementor-widget-theme-post-content h3,
	html body .elementor-widget-theme-post-content h4,
	html body .elementor-widget-theme-post-content h5,
	html body .elementor-widget-theme-post-content h6 { margin: 0 0 14px; }
}
/* === end MIGRATION-BRANDING (Sage Vacations) === */


/* === SITE-FIX: Elfsight reviews share panel overflow on phones (2026-10-09, client request) ===
   The widget's invisible share dropdown opened to the right of its button and made the homepage
   441px wide at 390px. Clip horizontal overflow on the review widgets and open the dropdown leftwards. */
html body [class*="elfsight-app-"] { overflow-x: clip; }
@media (max-width: 767px) {
	html body [class*="elfsight-app-"] .eapps-widget-toolbar-panel-share-block { left: auto !important; right: 0 !important; }
}
/* === end SITE-FIX: Elfsight === */

/* === SITE-FIX: carousel arrows on tablets (2026-10-09, client request) ===
   Homepage "Recommend Homes For You" carousel: arrows sit 30px outside the carousel, but at 768-1024px
   there is only 24px of margin, so the page became 6px wider than the screen. Pull them to 20px. */
@media (min-width: 768px) and (max-width: 1024px) {
	html body .elementor-element-0ba3ad6 .elementor-swiper-button-next { right: -20px !important; }
	html body .elementor-element-0ba3ad6 .elementor-swiper-button-prev { left: -20px !important; }
}
/* === end SITE-FIX: carousel arrows === *//* End custom CSS */