/*
|--------------------------------------------------------------------------
| Hosterooo Child Theme Overrides
|--------------------------------------------------------------------------
| Keep reusable, easy-to-tune theme work here. Prefer CSS variables from
| `style.css` over hard-coded values so future changes are quick.
*/

.site,
.main-wrap,
.page-wrap,
.detail-property-page {
    color: var(--host-color-text);
}

.sidebar-booking-module .search-calendar,
#single-booking-search-calendar.search-calendar {
    background: var(--host-color-surface-strong);
    border: 1px solid rgba(219, 225, 233, 0.95);
    border-radius: 24px;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.12);
    padding: 24px 20px 26px;
    margin-top: 12px;
}

.sidebar-booking-module .search-calendar .month h4,
#single-booking-search-calendar.search-calendar .month h4 {
    font-size: 1.85rem;
    line-height: 1.1;
    color: #4b5563;
    margin: 0 0 16px;
    font-weight: 700;
}

.sidebar-booking-module .search-calendar .month h4 span,
#single-booking-search-calendar.search-calendar .month h4 span {
    font-size: 1em;
    font-weight: 300;
    color: #6b7280;
}

.sidebar-booking-module .search-calendar .weekdays,
#single-booking-search-calendar.search-calendar .weekdays {
    border-bottom: 1px solid #d9dee5;
    margin-bottom: 10px;
}

.sidebar-booking-module .search-calendar .weekdays li,
#single-booking-search-calendar.search-calendar .weekdays li {
    color: #9ca3af;
    font-size: 0.78rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 8px 0 10px;
}

.sidebar-booking-module .search-calendar .days li,
#single-booking-search-calendar.search-calendar .days li {
    position: relative;
    font-weight: 600;
    font-size: 14px;
    color: #334155;
    padding: 11px 0;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.92);
    transition: transform 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.sidebar-booking-module .search-calendar .days li.day-available,
#single-booking-search-calendar.search-calendar .days li.day-available {
    background: var(--host-color-success);
    cursor: pointer;
}

.sidebar-booking-module .search-calendar .days li.day-pending,
#single-booking-search-calendar.search-calendar .days li.day-pending {
    background: var(--host-color-pending);
    color: #7c6c5a;
    cursor: pointer;
}

.sidebar-booking-module .search-calendar .days li.day-booked,
#single-booking-search-calendar.search-calendar .days li.day-booked {
    background: var(--host-color-booked);
    color: #99636c;
}

.sidebar-booking-module .search-calendar .days li.day-disabled,
.sidebar-booking-module .search-calendar .days li.homey-not-available-for-booking,
#single-booking-search-calendar.search-calendar .days li.day-disabled,
#single-booking-search-calendar.search-calendar .days li.homey-not-available-for-booking {
    background: #f3f4f6;
    color: #a3aab5;
    text-decoration: line-through;
    cursor: not-allowed;
}

.sidebar-booking-module .search-calendar .days li.in-between,
#single-booking-search-calendar.search-calendar .days li.in-between {
    background: var(--host-color-range);
    color: #1f2937;
}

.sidebar-booking-module .search-calendar .days li.from-day.selected,
.sidebar-booking-module .search-calendar .days li.to-day.selected,
#single-booking-search-calendar.search-calendar .days li.from-day.selected,
#single-booking-search-calendar.search-calendar .days li.to-day.selected {
    background: var(--host-color-selected);
    color: var(--host-color-selected-text);
    box-shadow: 0 10px 20px rgba(47, 109, 246, 0.22);
}

.sidebar-booking-module .search-calendar .days li:hover:not(.day-disabled):not(.homey-not-available-for-booking),
#single-booking-search-calendar.search-calendar .days li:hover:not(.day-disabled):not(.homey-not-available-for-booking) {
    transform: scale(0.98);
}

.sidebar-booking-module .search-calendar .calendar-navigation,
#single-booking-search-calendar.search-calendar .calendar-navigation {
    top: auto;
    margin-top: 18px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    clear: both;
}

.sidebar-booking-module .search-calendar .calendar-navigation .btn,
#single-booking-search-calendar.search-calendar .calendar-navigation .btn {
    width: 38px;
    height: 38px !important;
    border: 1px solid rgba(56, 189, 248, 0.45);
    border-radius: 10px;
    background: #fff;
    color: var(--host-color-nav);
    line-height: 36px;
    padding: 0;
}

/*
|--------------------------------------------------------------------------
| Search Results / Half Map
|--------------------------------------------------------------------------
*/

body.page-template-template-search,
body.page-template-template-search #section-body {
    background: var(--host-color-bg);
}

html:has(body.page-template-template-search),
body.page-template-template-search #section-body {
    overflow: hidden;
}

body.page-template-template-search .half-map-wrap {
    margin-top: 112px;
    height: calc(100vh - 112px) !important;
    min-height: 0;
    overflow: hidden;
}

body.admin-bar.page-template-template-search .half-map-wrap {
    margin-top: 112px;
    height: calc(100vh - 144px) !important;
}

body.page-template-template-search .half-map-left-wrap,
body.page-template-template-search .half-map-right-wrap,
body.page-template-template-search .half-map-left-inner-wrap,
body.page-template-template-search #homey-halfmap {
    height: 100% !important;
    min-height: 0 !important;
}

body.page-template-template-search .half-map-left-wrap,
body.page-template-template-search .half-map-right-wrap {
    overflow: hidden !important;
}

body.page-template-template-search .half-map-left-inner-wrap {
    overflow-y: auto;
}

.half-map-wrap .half-map-search.main-search-wrap {
    width: 1px !important;
    height: 1px !important;
    position: absolute !important;
    left: -9999px !important;
    overflow: hidden !important;
}

.hosterooo-quick-search {
    position: relative;
    top: 0;
    z-index: 60;
    display: grid;
    grid-template-columns: minmax(120px, 1fr) minmax(120px, 1fr) minmax(110px, .9fr) 52px 100px;
    align-items: center;
    gap: 10px;
    min-height: 82px;
    padding: 18px;
    background: var(--host-color-surface);
    border-bottom: 1px solid rgba(124, 106, 47, 0.16);
}

.hosterooo-quick-search__mobile-toggle {
    display: none;
}

.hosterooo-quick-search--has-country {
    grid-template-columns: minmax(100px, 1fr) minmax(100px, 1fr) minmax(100px, .9fr) minmax(110px, 1fr) 52px 100px;
}

.hosterooo-quick-search__field {
    position: relative;
    display: block;
    margin: 0;
}

.hosterooo-quick-search__icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #17202a;
    font-size: 15px;
    pointer-events: none;
}

.hosterooo-quick-search input,
.hosterooo-quick-search select {
    width: 100%;
    height: 46px;
    border: 1px solid rgba(79, 89, 98, 0.2);
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    color: #4f5962;
    font-size: 14px;
    font-weight: 700;
    line-height: 46px;
    padding: 0 14px 0 40px;
}

.hosterooo-quick-search select {
    appearance: none;
}

.hosterooo-quick-search input:focus,
.hosterooo-quick-search select:focus {
    border-color: var(--host-color-accent);
    outline: 0;
}

.hosterooo-filter-panel {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    height: auto !important;
    margin: 0;
    padding: 18px;
    background: var(--host-color-surface);
    border-bottom: 1px solid rgba(124, 106, 47, 0.16);
    opacity: 1 !important;
    overflow: visible !important;
    visibility: visible !important;
}

.hosterooo-filter-price-hidden {
    display: none !important;
}

.hosterooo-guest-picker {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 8px);
    z-index: 1000;
    display: none;
    min-width: 280px;
    padding: 18px;
    border: 1px solid rgba(79, 89, 98, 0.2);
    background: var(--host-color-surface);
    box-shadow: 0 18px 36px rgba(31, 27, 22, 0.18);
}

.hosterooo-guest-picker.is-open {
    display: block;
}

.hosterooo-guest-picker__row {
    display: grid;
    grid-template-columns: 34px 1fr 44px 44px;
    align-items: center;
    gap: 12px;
}

.hosterooo-guest-picker__row strong,
.hosterooo-guest-picker__row span {
    color: var(--host-color-text);
    font-size: 16px;
}

.hosterooo-guest-picker__row button {
    width: 44px;
    height: 44px;
    border: 1px solid var(--host-color-accent);
    border-radius: 8px;
    background: var(--host-color-surface);
    color: var(--host-color-accent);
    font-size: 24px;
    line-height: 1;
}

.hosterooo-guest-picker__apply {
    height: 42px;
    min-width: 96px;
    float: right;
    margin-top: 16px;
    border: 1px solid var(--host-color-accent);
    border-radius: 4px;
    background: var(--host-color-accent);
    color: #fff;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.ui-datepicker {
    z-index: 10000 !important;
}

.hosterooo-quick-search__filter,
.hosterooo-quick-search__submit {
    height: 46px;
    border: 1px solid rgba(79, 89, 98, 0.18);
    border-radius: 6px;
    background: #fff;
    color: #4f5962;
    font-weight: 800;
}

.hosterooo-quick-search__submit {
    border-color: var(--host-color-accent);
    background: var(--host-color-accent);
    color: #fff;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.half-map-wrap .half-map-left-inner-wrap {
    background: var(--host-color-bg);
}

.half-map-wrap .half-map-left-wrap,
#section-body .half-map-wrap .half-map-left-wrap {
    width: 50% !important;
}

.half-map-wrap .half-map-right-wrap,
#section-body .half-map-wrap .half-map-right-wrap {
    position: relative;
    width: 50% !important;
}

.half-map-wrap .listing-wrap {
    display: grid;
    gap: 16px;
    padding: 16px 16px 72px;
}

.half-map-wrap .hosterooo-search-card {
    min-height: 188px;
    display: grid;
    grid-template-columns: minmax(190px, 38%) minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid rgba(124, 106, 47, 0.18);
    border-radius: 14px;
    background: #fffdf8;
    box-shadow: 0 16px 34px rgba(31, 27, 22, 0.08);
}

.half-map-wrap .hosterooo-search-card__media {
    display: block;
    min-height: 188px;
    background: #e7dfcf;
}

.half-map-wrap .hosterooo-search-card__image,
.half-map-wrap .hosterooo-search-card__media img {
    width: 100%;
    height: 100%;
    min-height: 188px;
    display: block;
    object-fit: cover;
}

.half-map-wrap .hosterooo-search-card__body {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 8px;
    padding: 18px 22px 16px;
}

.half-map-wrap .hosterooo-search-card__location {
    color: var(--host-color-accent);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1.3;
    text-transform: uppercase;
}

.half-map-wrap .hosterooo-search-card__title {
    margin: 0;
    color: #171410;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.22;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.half-map-wrap .hosterooo-search-card__title a {
    color: inherit;
}

.half-map-wrap .hosterooo-search-card__excerpt {
    min-height: 44px;
    margin: 0;
    color: #3f382f;
    font-size: 15px;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.half-map-wrap .hosterooo-search-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    margin: 0;
    padding: 0;
    list-style: none;
    color: #1f1b16;
    font-size: 13px;
    font-weight: 700;
}

.half-map-wrap .hosterooo-search-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 2px;
}

.half-map-wrap .hosterooo-search-card__locate {
    flex: 0 0 auto;
    min-width: 116px;
    height: 32px;
    border: 1px solid var(--host-color-accent);
    border-radius: 4px;
    background: var(--host-color-surface);
    color: var(--host-color-accent);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 30px;
    padding: 0 12px;
    text-transform: uppercase;
    white-space: nowrap;
}

.half-map-wrap .hosterooo-search-card__locate:hover,
.half-map-wrap .hosterooo-search-card__locate:focus {
    background: var(--host-color-accent);
    color: #fff;
}

.half-map-wrap #homey-halfmap {
    position: relative;
}

.half-map-wrap #homey-halfmap .leaflet-top.leaflet-left {
    top: 46px !important;
    left: 18px !important;
}

.half-map-wrap #homey-halfmap .leaflet-control-zoom {
    margin: 0 !important;
    border: 0;
    border-radius: 2px;
    box-shadow: 0 8px 20px rgba(31, 27, 22, 0.18);
    overflow: hidden;
}

.half-map-wrap #homey-halfmap .leaflet-control-zoom a {
    width: 34px;
    height: 34px;
    color: var(--host-color-text);
    line-height: 34px;
}

.half-map-wrap #homey-halfmap .leaflet-control-zoom a:hover,
.half-map-wrap #homey-halfmap .leaflet-control-zoom a:focus {
    background: var(--host-color-accent);
    color: #fff;
}

.hosterooo-map-reset {
    position: absolute;
    z-index: 1200;
    top: 58px;
    right: 16px;
    height: 34px;
    border: 1px solid var(--host-color-accent);
    border-radius: 3px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 8px 20px rgba(31, 27, 22, 0.16);
    color: var(--host-color-accent);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 32px;
    padding: 0 14px;
    text-transform: uppercase;
}

.hosterooo-map-reset:hover,
.hosterooo-map-reset:focus {
    background: var(--host-color-accent);
    border-color: var(--host-color-accent);
    color: #fff;
}

.half-map-wrap .hosterooo-search-card__meta li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.half-map-wrap .hosterooo-search-card__meta i {
    color: var(--host-color-accent);
    font-size: 17px;
    line-height: 1;
}

.half-map-wrap .item-media-price,
.half-map-wrap .item-price,
.homeyInfobox .item-media-price,
.homeyInfobox .item-price,
#google-maps-info-window .item-media-price,
#google-maps-info-window .item-price,
#google-maps-info-window .item-address,
.homey-open-street-map .item-address,
.gm-marker-price {
    display: none !important;
}

.half-map-wrap #homey-halfmap img.leaflet-marker-icon:not(.leaflet-marker-shadow):not(.hosterooo-marker-icon) {
    content: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2244%22%20height%3D%2256%22%20viewBox%3D%220%200%2044%2056%22%20role%3D%22img%22%20aria-label%3D%22Hosterooo%20map%20pin%22%3E%20%20%3Cpath%20fill%3D%22%23736635%22%20d%3D%22M22%2054S4%2033.4%204%2020.8C4%209.9%2012.1%202%2022%202s18%207.9%2018%2018.8C40%2033.4%2022%2054%2022%2054Z%22%2F%3E%20%20%3Ccircle%20cx%3D%2222%22%20cy%3D%2220.8%22%20r%3D%2213.2%22%20fill%3D%22%23fffdf8%22%2F%3E%20%20%3Cg%20transform%3D%22translate%2813.2%2011.8%29%20scale%28.72%29%22%3E%20%20%20%20%3Crect%20x%3D%221%22%20y%3D%220%22%20width%3D%224.6%22%20height%3D%2217.8%22%20rx%3D%222.3%22%20fill%3D%22%23736635%22%2F%3E%20%20%20%20%3Crect%20x%3D%2218.4%22%20y%3D%220%22%20width%3D%224.6%22%20height%3D%2217.8%22%20rx%3D%222.3%22%20fill%3D%22%23736635%22%2F%3E%20%20%20%20%3Cpath%20fill%3D%22%23736635%22%20d%3D%22M3.3%209.5h17.4c1.3%200%202.3%201%202.3%202.3v5H1v-5c0-1.3%201-2.3%202.3-2.3Z%22%2F%3E%20%20%20%20%3Crect%20x%3D%224.2%22%20y%3D%2216%22%20width%3D%226.2%22%20height%3D%224.5%22%20rx%3D%221.1%22%20fill%3D%22%23101820%22%2F%3E%20%20%20%20%3Crect%20x%3D%2213.5%22%20y%3D%2216%22%20width%3D%226.2%22%20height%3D%224.5%22%20rx%3D%221.1%22%20fill%3D%22%23101820%22%2F%3E%20%20%20%20%3Cpath%20fill%3D%22%23101820%22%20d%3D%22M1%2021.1h22v6.2c0%201.5-1.2%202.7-2.7%202.7H3.7C2.2%2030%201%2028.8%201%2027.3v-6.2Z%22%2F%3E%20%20%3C%2Fg%3E%3C%2Fsvg%3E") !important;
    filter: none !important;
    width: 44px !important;
    height: 56px !important;
    margin-left: -22px !important;
    margin-top: -56px !important;
}

.leaflet-marker-icon.hosterooo-marker-icon {
    filter: none;
    width: 44px !important;
    height: 56px !important;
}

.half-map-wrap #homey-halfmap img.leaflet-marker-icon:not(.leaflet-marker-shadow) {
    opacity: 0 !important;
    pointer-events: none !important;
}

.half-map-wrap #homey-halfmap.hosterooo-map-mode-pins img.leaflet-marker-icon:not(.leaflet-marker-shadow) {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.half-map-wrap #homey-halfmap .hosterooo-property-radius {
    cursor: pointer;
}

.jet-map-listing .hosterooo-jet-property-radius {
    cursor: pointer;
}

.homey-osm-cluster {
    background: var(--host-map-pin-color) !important;
    border-color: #fffdf8 !important;
    color: #fff !important;
}

.gm-marker {
    background: var(--host-map-pin-color) !important;
    border-color: #fffdf8 !important;
    color: #fff !important;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content-wrapper {
    width: 300px;
    overflow: hidden;
    border-radius: 0;
    background: var(--host-color-surface);
    box-shadow: 0 18px 38px rgba(31, 27, 22, 0.24);
    padding: 0;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content {
    width: 300px !important;
    margin: 0;
}

.half-map-wrap #homey-halfmap .leaflet-popup-tip {
    background: #fffdf8;
}

.half-map-wrap #homey-halfmap .leaflet-container a.leaflet-popup-close-button,
.half-map-wrap #homey-halfmap a.leaflet-popup-close-button {
    top: 0;
    right: 0;
    z-index: 2;
    width: 22px;
    height: 22px;
    background: rgba(31, 27, 22, 0.72);
    color: #fff;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-wrap,
.half-map-wrap #homey-halfmap .leaflet-popup-content .property-item {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: #fffdf8;
    box-shadow: none;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .media {
    display: block;
    height: auto;
    margin: 0;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .media-left {
    width: 100% !important;
    display: block !important;
    float: none !important;
    padding: 0 !important;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-media,
.half-map-wrap #homey-halfmap .leaflet-popup-content .item-media-thumb {
    position: relative;
    width: 100% !important;
    height: 190px !important;
    display: block !important;
    float: none;
    margin: 0;
    overflow: hidden;
    background: #e7dfcf;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-media a,
.half-map-wrap #homey-halfmap .leaflet-popup-content .item-media-thumb a {
    position: absolute;
    inset: 0;
    width: 100% !important;
    height: 190px !important;
    display: block !important;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-media img,
.half-map-wrap #homey-halfmap .leaflet-popup-content .item-media-thumb img {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    max-width: none !important;
    height: 190px !important;
    display: block;
    object-fit: cover;
    border-radius: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-body {
    height: auto !important;
    padding: 14px 16px 16px;
    background: #fffdf8;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .title,
.half-map-wrap #homey-halfmap .leaflet-popup-content .item-title-head .title {
    margin: 0 0 10px;
    font-size: 17px;
    line-height: 1.15;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .title a,
.half-map-wrap #homey-halfmap .leaflet-popup-content .item-title-head .title a {
    color: #171410 !important;
    font-size: 17px !important;
    font-weight: 800;
    line-height: 1.15;
    white-space: normal !important;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-amenities {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 11px;
    margin: 0;
    padding: 0;
    border: 0;
    color: #171410;
    font-size: 12px;
    line-height: 1;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-amenities li {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin: 0;
    color: #171410;
    font-size: 12px;
    line-height: 1;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-amenities i {
    color: var(--host-color-accent);
    font-size: 14px;
}

.half-map-wrap #homey-halfmap .leaflet-popup-content .item-footer,
.half-map-wrap #homey-halfmap .leaflet-popup-content .item-address,
.half-map-wrap #homey-halfmap .leaflet-popup-content .item-excerpt,
.half-map-wrap #homey-halfmap .leaflet-popup-content .item-tools,
.half-map-wrap #homey-halfmap .leaflet-popup-content .compare-favorite {
    display: none !important;
}

@media (max-width: 1023px) {
    html:has(body.page-template-template-search),
    body.page-template-template-search,
    body.page-template-template-search #section-body {
        overflow: auto !important;
    }

    body.page-template-template-search .half-map-wrap,
    body.admin-bar.page-template-template-search .half-map-wrap {
        display: flex !important;
        flex-direction: column;
        height: auto !important;
        min-height: 0 !important;
        margin-top: 0;
        overflow: visible !important;
    }

    body.page-template-template-search .half-map-left-wrap,
    body.page-template-template-search .half-map-right-wrap,
    body.page-template-template-search .half-map-left-inner-wrap {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    .half-map-wrap .half-map-left-wrap,
    #section-body .half-map-wrap .half-map-left-wrap,
    .half-map-wrap .half-map-right-wrap,
    #section-body .half-map-wrap .half-map-right-wrap {
        width: 100% !important;
    }

    .half-map-wrap .half-map-right-wrap {
        order: 1;
    }

    .half-map-wrap .half-map-left-wrap {
        order: 2;
    }

    body.page-template-template-search #homey-halfmap {
        height: 410px !important;
        min-height: 410px !important;
    }

    .hosterooo-map-reset {
        top: 14px;
        right: 14px;
    }

    .half-map-wrap #homey-halfmap .leaflet-top.leaflet-left {
        top: 14px !important;
        left: 14px !important;
    }

    .hosterooo-quick-search {
        display: block;
        min-height: 0;
        padding: 16px;
        border-top: 1px solid rgba(124, 106, 47, 0.12);
    }

    .hosterooo-quick-search__mobile-toggle {
        width: 100%;
        height: 48px;
        display: inline-flex;
        align-items: center;
        justify-content: flex-start;
        gap: 12px;
        border: 1px solid rgba(79, 89, 98, 0.2);
        border-radius: 0;
        background: #fff;
        color: #4f5962;
        font-size: 15px;
        font-weight: 700;
        padding: 0 16px;
    }

    .hosterooo-quick-search__field,
    .hosterooo-quick-search__filter,
    .hosterooo-quick-search__submit {
        display: none;
    }

    .hosterooo-quick-search.is-open {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .hosterooo-quick-search.is-open .hosterooo-quick-search__mobile-toggle {
        grid-column: 1 / -1;
    }

    .hosterooo-quick-search.is-open .hosterooo-quick-search__field,
    .hosterooo-quick-search.is-open .hosterooo-quick-search__filter,
    .hosterooo-quick-search.is-open .hosterooo-quick-search__submit {
        display: block;
    }

    .hosterooo-quick-search.is-open .hosterooo-quick-search__field--guest,
    .hosterooo-quick-search.is-open .hosterooo-quick-search__field--country,
    .hosterooo-quick-search.is-open .hosterooo-quick-search__submit {
        grid-column: 1 / -1;
    }

    .hosterooo-filter-panel {
        display: none;
    }

    .hosterooo-quick-search.is-open + .hosterooo-filter-panel {
        display: block;
    }

    .half-map-wrap .listing-wrap {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 16px;
    }

    .half-map-wrap .hosterooo-search-card {
        grid-template-columns: 1fr;
    }

    .half-map-wrap .hosterooo-search-card__media,
    .half-map-wrap .hosterooo-search-card__image,
    .half-map-wrap .hosterooo-search-card__media img {
        min-height: 220px;
    }
}

@media (max-width: 640px) {
    body.page-template-template-search #homey-halfmap {
        height: 330px !important;
        min-height: 330px !important;
    }

    .half-map-wrap .listing-wrap {
        grid-template-columns: 1fr;
        padding: 12px 12px 64px;
    }

    .half-map-wrap .hosterooo-search-card__body {
        padding: 20px;
    }

    .half-map-wrap .hosterooo-search-card__footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .hosterooo-quick-search.is-open {
        grid-template-columns: 1fr;
    }
}
