.elementor-432 .elementor-element.elementor-element-3d1c4cea{--display:flex;overflow:visible;}.elementor-widget-shortcode .neb-protected-content-message, .elementor-widget-shortcode .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-432 .elementor-element.elementor-element-49d17db3{padding:0px 0px 0px 0px;}.elementor-432 .elementor-element.elementor-element-49d17db3.elementor-element{--flex-grow:0;--flex-shrink:0;}/* Start custom CSS for shortcode, class: .elementor-element-49d17db3 *//* ==========================================================
   360 PARK HOMES — DIRECTORIST ALL LISTINGS
   Corrected stylesheet

   Add this CSS class to the OUTER Elementor container:
   browse-homes-directory

   Replace the previous stylesheet completely.
========================================================== */

/* ==========================================================
   VARIABLES AND OUTER CONTAINER
========================================================== */
.browse-homes-directory {
    --ph-green: #2f5d50;
    --ph-green-dark: #1f3b34;
    --ph-orange: #f15a24;
    --ph-white: #ffffff;
    --ph-page: #f6f2e8;
    --ph-soft: #f5f8f6;
    --ph-soft-dark: #edf2ef;
    --ph-border: #dce4e0;
    --ph-border-dark: #cbd6d1;
    --ph-text: #18231f;
    --ph-muted: #6b7671;

    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 28px 22px 60px !important;
    background: transparent !important;
}

.browse-homes-directory,
.browse-homes-directory *,
.browse-homes-directory *::before,
.browse-homes-directory *::after {
    box-sizing: border-box;
}

/* ==========================================================
   REMOVE UNNECESSARY WIDTH RESTRICTIONS
   Does not alter Directorist's grid structure.
========================================================== */
.browse-homes-directory > .e-con-inner,
.browse-homes-directory > .elementor-container,
.browse-homes-directory .elementor-widget,
.browse-homes-directory .elementor-widget-container,
.browse-homes-directory .directorist-archive-container,
.browse-homes-directory .directorist-archive-contents,
.browse-homes-directory .directorist-listing-wrapper {
    width: 100% !important;
    max-width: none !important;
}

/* ==========================================================
   DIRECTORY TYPE SWITCHER
========================================================== */
.browse-homes-directory .directorist-directory-type-nav,
.browse-homes-directory .directorist-directory-type-nav__list {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 34px !important;
    width: 100% !important;
    margin: 0 0 28px !important;
    padding: 0 !important;
    background: transparent !important;
}

.browse-homes-directory :is(
    .directorist-directory-type-nav,
    .directorist-directory-type-nav__list
) a {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-end !important;
    min-height: 58px !important;
    padding: 8px 4px 10px !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    background: transparent !important;
    color: var(--ph-text) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
}

.browse-homes-directory :is(
    .directorist-directory-type-nav,
    .directorist-directory-type-nav__list
) a:is(:hover, :focus-visible, .active) {
    border-bottom-color: var(--ph-green) !important;
    color: var(--ph-green) !important;
}

/* ==========================================================
   TOP SEARCH AREA
========================================================== */
.browse-homes-directory .directorist-search-contents {
    width: 100% !important;
    margin: 0 0 28px !important;
    padding: 14px !important;
    overflow: visible !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border: 1px solid var(--ph-border) !important;
    border-radius: 15px !important;
    box-shadow: 0 6px 20px rgba(31, 59, 52, 0.07) !important;
}

/* Keep search items in a flexible row */
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) {
    display: flex !important;
    align-items: stretch !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Reset search item sizing */
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) > * {
    min-width: 0 !important;
    margin: 0 !important;
}

/* Search field containers */
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) :is(.directorist-search-field, .directorist-form-group) {
    position: relative !important;
    display: flex !important;
    flex: 1 1 230px !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 190px !important;
    min-height: 60px !important;
    margin: 0 !important;
    padding: 8px 15px !important;
    overflow: visible !important;
    background: var(--ph-soft) !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    transition:
        border-color 0.18s ease,
        background-color 0.18s ease,
        box-shadow 0.18s ease !important;
}

.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) :is(.directorist-search-field, .directorist-form-group):focus-within {
    background: var(--ph-white) !important;
    border-color: var(--ph-green) !important;
    box-shadow: 0 0 0 3px rgba(47, 93, 80, 0.1) !important;
}

/* Search labels */
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) :is(.directorist-search-field__label, .directorist-form-group > label) {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 3px !important;
    padding: 0 !important;
    color: #727d77 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    transform: none !important;
    pointer-events: none !important;
}

/* Search inputs
   NOTE: hidden inputs, checkboxes, radios and submit buttons are excluded —
   forcing display:block on a hidden input creates phantom gaps in the row. */
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) :is(
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
    textarea,
    .directorist-select,
    .select2-selection
) {
    position: static !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 34px !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--ph-text) !important;
    outline: 0 !important;
    box-shadow: none !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 34px !important;
    transform: none !important;
}

/* Native selects: no forced line-height (breaks vertical centring in Firefox),
   and room on the right for the native arrow. */
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) select {
    position: static !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 34px !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 0 22px 0 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--ph-text) !important;
    outline: 0 !important;
    box-shadow: none !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: normal !important;
    transform: none !important;
}

.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) input::placeholder {
    color: #7b8580 !important;
    opacity: 1 !important;
}

/* Search Select2 */
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) .select2-container {
    width: 100% !important;
    min-width: 0 !important;
}

.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) .select2-selection__rendered {
    display: flex !important;
    align-items: center !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 0 30px 0 0 !important;
    color: var(--ph-text) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 34px !important;
}

.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) .select2-selection__arrow {
    top: 50% !important;
    right: 0 !important;
    transform: translateY(-50%) !important;
}

/* Search number fields */
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) input[type="number"] {
    padding-right: 4px !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) input[type="number"]::-webkit-inner-spin-button,
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) input[type="number"]::-webkit-outer-spin-button {
    margin: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* Search button */
.browse-homes-directory .directorist-btn-search,
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) :is(button[type="submit"], input[type="submit"]) {
    display: inline-flex !important;
    flex: 0 0 145px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 145px !important;
    min-width: 145px !important;
    min-height: 60px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 20px !important;
    border: 1px solid var(--ph-green) !important;
    border-radius: 10px !important;
    background: var(--ph-green) !important;
    color: var(--ph-white) !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transition:
        background-color 0.18s ease,
        border-color 0.18s ease !important;
}

.browse-homes-directory .directorist-btn-search:hover,
.browse-homes-directory :is(
    .directorist-search-form,
    .directorist-search-form-box,
    .directorist-search-form__box
) :is(button[type="submit"], input[type="submit"]):hover {
    background: var(--ph-green-dark) !important;
    border-color: var(--ph-green-dark) !important;
}

/* ==========================================================
   RESULTS HEADER
========================================================== */
.browse-homes-directory .directorist-listings-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 0 26px !important;
    padding: 0 2px 15px !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ph-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.browse-homes-directory .directorist-listings-header__left,
.browse-homes-directory .directorist-listings-header__right {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
    margin: 0 !important;
}

.browse-homes-directory .directorist-listings-header__left {
    color: var(--ph-text) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
}

/* View and sorting controls */
.browse-homes-directory .directorist-viewas-dropdown :is(a, button),
.browse-homes-directory .directorist-listing-type-selection__link,
.browse-homes-directory .directorist-sortby-dropdown :is(select, button) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 43px !important;
    min-height: 43px !important;
    margin: 0 !important;
    padding: 9px 13px !important;
    border: 1px solid var(--ph-border) !important;
    border-radius: 9px !important;
    background: var(--ph-white) !important;
    color: var(--ph-green-dark) !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    box-shadow: 0 2px 7px rgba(31, 59, 52, 0.05) !important;
}

.browse-homes-directory .directorist-listing-type-selection__link.active,
.browse-homes-directory .directorist-viewas-dropdown .active {
    background: var(--ph-green) !important;
    border-color: var(--ph-green) !important;
    color: var(--ph-white) !important;
}

/* ==========================================================
   SAVE SEARCH
========================================================== */
.browse-homes-directory .directorist-save-search,
.browse-homes-directory .directorist-save-search-btn,
.browse-homes-directory a.directorist-save-search,
.browse-homes-directory button.directorist-save-search {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    min-height: 43px !important;
    margin: 0 !important;
    padding: 9px 15px !important;
    border: 1px solid var(--ph-green) !important;
    border-radius: 999px !important;
    background: var(--ph-green) !important;
    color: var(--ph-white) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.browse-homes-directory .directorist-save-search:hover,
.browse-homes-directory .directorist-save-search-btn:hover {
    background: var(--ph-orange) !important;
    border-color: var(--ph-orange) !important;
}

/* ==========================================================
   DIRECTORIST ROW AND COLUMN SPACING
   display:grid and column widths are left to Directorist.
========================================================== */
.browse-homes-directory .directorist-listing-wrapper > .directorist-row {
    width: auto !important;
    margin-right: -12px !important;
    margin-left: -12px !important;
}

.browse-homes-directory
.directorist-listing-wrapper
> .directorist-row
> [class*="directorist-col-"] {
    padding-right: 12px !important;
    padding-left: 12px !important;
    padding-bottom: 24px !important;
}

/* ==========================================================
   LISTING CARDS
========================================================== */
.browse-homes-directory .directorist-listing-single {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: var(--ph-white) !important;
    border: 1px solid var(--ph-border) !important;
    border-radius: 15px !important;
    box-shadow: 0 5px 17px rgba(31, 59, 52, 0.075) !important;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease !important;
}

.browse-homes-directory .directorist-listing-single:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 14px 30px rgba(31, 59, 52, 0.13) !important;
}

/* Card image — height lives on the container only */
.browse-homes-directory :is(
    .directorist-listing-single__thumb,
    .directorist-thumb-listing
) {
    position: relative !important;
    width: 100% !important;
    height: 270px !important;
    min-height: 270px !important;
    overflow: hidden !important;
    background: #e5ebe8 !important;
}

.browse-homes-directory :is(
    .directorist-listing-single__thumb,
    .directorist-thumb-listing
) img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform 0.35s ease !important;
}

.browse-homes-directory .directorist-listing-single:hover :is(
    .directorist-listing-single__thumb,
    .directorist-thumb-listing
) img {
    transform: scale(1.025) !important;
}

/* Listing badges */
.browse-homes-directory .directorist-badge,
.browse-homes-directory .directorist-listing-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 6px 11px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--ph-green) !important;
    color: var(--ph-white) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

/* Favourite button */
.browse-homes-directory .directorist-mark-as-favorite__btn,
.browse-homes-directory .directorist-favorite-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 45px !important;
    height: 45px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.97) !important;
    color: var(--ph-orange) !important;
    box-shadow: 0 4px 13px rgba(0, 0, 0, 0.16) !important;
}

/* Card content */
.browse-homes-directory .directorist-listing-single__content {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 21px 21px 17px !important;
    background: var(--ph-white) !important;
    border: 0 !important;
}

/* Card title */
.browse-homes-directory .directorist-listing-title {
    margin: 0 0 9px !important;
}

.browse-homes-directory .directorist-listing-title,
.browse-homes-directory .directorist-listing-title a {
    color: var(--ph-text) !important;
    font-size: 19px !important;
    font-weight: 750 !important;
    line-height: 1.28 !important;
    text-decoration: none !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
}

.browse-homes-directory .directorist-listing-title a:hover {
    color: var(--ph-green) !important;
}

/* Card price */
.browse-homes-directory .directorist-listing-price,
.browse-homes-directory .directorist-price {
    display: block !important;
    margin: 8px 0 10px !important;
    color: var(--ph-green-dark) !important;
    font-size: 25px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
}

/* Card details */
.browse-homes-directory .directorist-listing-single__info,
.browse-homes-directory .directorist-listing-single__info p,
.browse-homes-directory .directorist-listing-single__content p {
    color: var(--ph-muted) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

/* Card button — scoped to the content area so footer/meta buttons
   are not stretched to full width */
.browse-homes-directory .directorist-listing-single__content .directorist-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 44px !important;
    margin-top: auto !important;
    padding: 10px 15px !important;
    border: 1px solid var(--ph-green) !important;
    border-radius: 8px !important;
    background: var(--ph-green) !important;
    color: var(--ph-white) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.browse-homes-directory
.directorist-listing-single__content
.directorist-btn:hover {
    background: var(--ph-orange) !important;
    border-color: var(--ph-orange) !important;
}

/* Card footer */
.browse-homes-directory .directorist-listing-single__meta {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 14px 20px !important;
    border-top: 1px solid var(--ph-border) !important;
    background: #fafcfb !important;
}

/* ==========================================================
   FILTER SIDEBAR
   Width is controlled by Directorist.
========================================================== */
.browse-homes-directory .directorist-advanced-filter {
    position: sticky !important;
    top: 110px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important; /* was hidden — it clipped dropdowns */
    background: var(--ph-white) !important;
    border: 1px solid var(--ph-border) !important;
    border-radius: 15px !important;
    box-shadow: 0 6px 20px rgba(31, 59, 52, 0.075) !important;
}

/* Filter heading — carries its own top radius now the panel no longer clips */
.browse-homes-directory .directorist-advanced-filter > h3,
.browse-homes-directory .directorist-advanced-filter .directorist-filter-title {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 19px 21px !important;
    background: var(--ph-green-dark) !important;
    border-radius: 14px 14px 0 0 !important;
    color: var(--ph-white) !important;
    font-size: 19px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
}

/* Filter form */
.browse-homes-directory .directorist-advanced-filter form,
.browse-homes-directory .directorist-advanced-filter__form {
    width: 100% !important;
    margin: 0 !important;
    padding: 20px !important;
}

/* Filter groups */
.browse-homes-directory .directorist-advanced-filter :is(
    .directorist-form-group,
    .directorist-filter-item,
    .directorist-search-field
) {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 0 22px !important;
    padding: 0 0 22px !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid #e7ece9 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.browse-homes-directory .directorist-advanced-filter :is(
    .directorist-form-group,
    .directorist-filter-item,
    .directorist-search-field
):last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

/* Filter labels */
.browse-homes-directory .directorist-advanced-filter :is(
    h4,
    .directorist-search-field__label,
    .directorist-form-group > label
) {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    color: var(--ph-text) !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    line-height: 1.3 !important;
    transform: none !important;
}

/* Filter inputs — hidden inputs excluded (they were being given a
   47px block box, which pushed visible gaps into the sidebar) */
.browse-homes-directory .directorist-advanced-filter :is(
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
    .select2-selection
) {
    position: static !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 47px !important;
    min-height: 47px !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border: 1px solid var(--ph-border-dark) !important;
    border-radius: 8px !important;
    background: var(--ph-white) !important;
    color: var(--ph-text) !important;
    outline: 0 !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 45px !important;
    transform: none !important;
}

.browse-homes-directory .directorist-advanced-filter select {
    position: static !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 47px !important;
    min-height: 47px !important;
    margin: 0 !important;
    padding: 0 34px 0 13px !important;
    border: 1px solid var(--ph-border-dark) !important;
    border-radius: 8px !important;
    background: var(--ph-white) !important;
    color: var(--ph-text) !important;
    outline: 0 !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: normal !important;
    transform: none !important;
}

.browse-homes-directory .directorist-advanced-filter textarea {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 100px !important;
    margin: 0 !important;
    padding: 12px 13px !important;
    border: 1px solid var(--ph-border-dark) !important;
    border-radius: 8px !important;
    background: var(--ph-white) !important;
    color: var(--ph-text) !important;
    outline: 0 !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
}

/* Filter Select2 */
.browse-homes-directory .directorist-advanced-filter .select2-container {
    width: 100% !important;
    min-width: 0 !important;
}

.browse-homes-directory
.directorist-advanced-filter
.select2-selection__rendered {
    min-height: 45px !important;
    padding: 0 34px 0 13px !important;
    line-height: 45px !important;
}

.browse-homes-directory .directorist-advanced-filter .select2-selection__arrow {
    top: 50% !important;
    right: 10px !important;
    transform: translateY(-50%) !important;
}

/* Filter number fields */
.browse-homes-directory .directorist-advanced-filter input[type="number"] {
    padding-right: 13px !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

.browse-homes-directory
.directorist-advanced-filter
input[type="number"]::-webkit-inner-spin-button,
.browse-homes-directory
.directorist-advanced-filter
input[type="number"]::-webkit-outer-spin-button {
    margin: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* ==========================================================
   FILTER CHECKBOXES AND RADIOS
   One block only — the duplicate override at the end of the old
   file was fighting this one.
========================================================== */

/* Hide Directorist's decorative pseudo-element checkbox graphics */
.browse-homes-directory .directorist-advanced-filter :is(
    .directorist-checkbox label,
    .directorist-radio label,
    .directorist-checkbox__label,
    .directorist-radio__label
)::before,
.browse-homes-directory .directorist-advanced-filter :is(
    .directorist-checkbox label,
    .directorist-radio label,
    .directorist-checkbox__label,
    .directorist-radio__label
)::after {
    display: none !important;
    content: none !important;
}

/* Keep only the real control */
.browse-homes-directory .directorist-advanced-filter
input[type="checkbox"],
.browse-homes-directory .directorist-advanced-filter
input[type="radio"] {
    position: static !important;
    display: inline-block !important;
    flex: 0 0 auto !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    appearance: auto !important;
    -webkit-appearance: auto !important;
    accent-color: var(--ph-green) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Checkbox and radio rows */
.browse-homes-directory .directorist-advanced-filter :is(
    .directorist-checkbox,
    .directorist-radio,
    .directorist-checkbox label,
    .directorist-radio label,
    .directorist-checkbox__label,
    .directorist-radio__label
) {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    width: 100% !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    color: var(--ph-text) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
}

/* Show more */
.browse-homes-directory .directorist-advanced-filter :is(
    .directorist-btn-show-more,
    .directorist-filter-show-more
) {
    display: inline-block !important;
    margin: 8px 0 0 !important;
    color: var(--ph-green) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* Clear filters */
.browse-homes-directory .directorist-advanced-filter :is(
    .directorist-filter-reset,
    .directorist-btn-reset,
    button[class*="clear"]
) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 42px !important;
    margin: 16px 0 0 !important;
    padding: 9px 13px !important;
    border: 1px solid var(--ph-border-dark) !important;
    border-radius: 8px !important;
    background: var(--ph-white) !important;
    color: var(--ph-green-dark) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

/* ==========================================================
   PAGINATION
========================================================== */
.browse-homes-directory .directorist-pagination {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    width: 100% !important;
    margin: 38px 0 0 !important;
}

.browse-homes-directory .directorist-pagination :is(a, span) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 41px !important;
    height: 41px !important;
    margin: 0 !important;
    border: 1px solid var(--ph-border) !important;
    border-radius: 8px !important;
    background: var(--ph-white) !important;
    color: var(--ph-green-dark) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.browse-homes-directory .directorist-pagination .current,
.browse-homes-directory .directorist-pagination a:hover {
    background: var(--ph-green) !important;
    border-color: var(--ph-green) !important;
    color: var(--ph-white) !important;
}

/* ==========================================================
   TABLET
========================================================== */
@media (max-width: 1100px) {
    .browse-homes-directory {
        padding: 22px 15px 48px !important;
    }

    .browse-homes-directory :is(
        .directorist-search-form,
        .directorist-search-form-box,
        .directorist-search-form__box
    ) {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .browse-homes-directory :is(
        .directorist-search-form,
        .directorist-search-form-box,
        .directorist-search-form__box
    ) :is(.directorist-search-field, .directorist-form-group) {
        width: 100% !important;
        min-width: 0 !important;
    }

    .browse-homes-directory .directorist-btn-search,
    .browse-homes-directory :is(
        .directorist-search-form,
        .directorist-search-form-box,
        .directorist-search-form__box
    ) :is(button[type="submit"], input[type="submit"]) {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .browse-homes-directory .directorist-advanced-filter {
        position: static !important;
        top: auto !important;
    }
}

/* ==========================================================
   MOBILE
========================================================== */
@media (max-width: 767px) {
    .browse-homes-directory {
        padding: 12px 8px 36px !important;
    }

    .browse-homes-directory .directorist-search-contents {
        padding: 10px !important;
        border-radius: 13px !important;
    }

    .browse-homes-directory :is(
        .directorist-search-form,
        .directorist-search-form-box,
        .directorist-search-form__box
    ) {
        display: flex !important;
        flex-direction: column !important;
        gap: 9px !important;
    }

    .browse-homes-directory :is(
        .directorist-search-form,
        .directorist-search-form-box,
        .directorist-search-form__box
    ) :is(.directorist-search-field, .directorist-form-group) {
        flex: 1 1 auto !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .browse-homes-directory .directorist-btn-search,
    .browse-homes-directory :is(
        .directorist-search-form,
        .directorist-search-form-box,
        .directorist-search-form__box
    ) :is(button[type="submit"], input[type="submit"]) {
        flex: 1 1 auto !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .browse-homes-directory .directorist-listings-header {
        display: block !important;
    }

    .browse-homes-directory .directorist-listings-header__right {
        margin-top: 13px !important;
    }

    .browse-homes-directory .directorist-listing-wrapper > .directorist-row {
        margin-right: -7px !important;
        margin-left: -7px !important;
    }

    .browse-homes-directory
    .directorist-listing-wrapper
    > .directorist-row
    > [class*="directorist-col-"] {
        padding-right: 7px !important;
        padding-left: 7px !important;
        padding-bottom: 17px !important;
    }

    .browse-homes-directory :is(
        .directorist-listing-single__thumb,
        .directorist-thumb-listing
    ) {
        height: 235px !important;
        min-height: 235px !important;
    }

    .browse-homes-directory .directorist-listing-single__content {
        padding: 18px 17px 15px !important;
    }

    .browse-homes-directory .directorist-listing-title,
    .browse-homes-directory .directorist-listing-title a {
        font-size: 18px !important;
    }

    .browse-homes-directory .directorist-advanced-filter form,
    .browse-homes-directory .directorist-advanced-filter__form {
        padding: 16px !important;
    }
}
/* ==========================================================
   FIX — LISTING AUTHOR AVATAR OVERLAP
   Additive only: does not remove/change existing styling
========================================================== */

.browse-homes-directory .directorist-listing-single__content {
    position: relative !important;
    z-index: 1 !important;
}

.browse-homes-directory :is(
    .directorist-listing-single__author,
    .directorist-listing-single__author-avatar,
    .directorist-author-avatar,
    .directorist-avatar,
    [class*="author-avatar"]
) {
    position: relative !important;
    z-index: 20 !important;
}
/* FIX DIRECTORIST AVATAR BEING CLIPPED */
.browse-homes-directory :is(
    .directorist-listing-single__thumb,
    .directorist-thumb-listing
) {
    overflow: visible !important;
}

/* ==========================================================
   FIX — AVATAR STACKING ORDER (added, additive only)

   DIAGNOSIS
   1. The earlier fix gave .directorist-listing-single__content
      position:relative + z-index:1. A positioned element with a
      POSITIVE z-index creates a new stacking context that paints
      above the thumbnail block, which is only position:relative
      with z-index:auto. Anything overhanging the bottom of the
      thumb — i.e. the avatar — is therefore painted underneath
      the white content panel. This is the primary cause.
   2. The z-index:20 rule above only helps if its .elementor-432 .elementor-element.elementor-element-49d17db3 list
      actually matches the element Directorist renders. If the
      avatar carries a different class, that rule never applies
      and the avatar keeps z-index:auto, losing to the content
      panel's z-index:1.
   3. On hover, the thumb img gets transform:scale(1.025), which
      makes the image its own stacking context; an avatar with no
      z-index of its own can be painted over by the image.

   FIX
   - Lift the whole thumbnail block above the content panel, so
     everything inside it (including an overhanging avatar) paints
     over the white area at every breakpoint.
   - Drop the artificial stacking context on the content panel to
     z-index:auto, so an avatar rendered INSIDE the content panel
     is no longer trapped below the thumb.
   - Give the avatar its own high z-index using a wider set of
     Directorist class patterns, without touching its position,
     size, border-radius, overflow or offsets.

   Nothing here changes overflow on the card, so the 15px rounded
   corners and the image cropping are unchanged. No heights,
   spacing, badges, favourite button, search, filters or
   responsive rules are affected. No media query overrides these
   properties, so it applies on desktop, tablet and mobile.
========================================================== */

/* 1. Thumbnail block paints above the white content panel */
.browse-homes-directory .directorist-listing-single :is(
    .directorist-listing-single__thumb,
    .directorist-thumb-listing
) {
    position: relative !important;
    z-index: 5 !important;
}

/* 2. Content panel keeps its positioning context but stops
      creating a stacking context that traps/obscures the avatar */
.browse-homes-directory .directorist-listing-single__content {
    z-index: auto !important;
}

/* 3. The avatar itself sits above both the image and the panel.
      Position/offsets deliberately not touched. */
.browse-homes-directory .directorist-listing-single :is(
    .directorist-listing-single__author,
    .directorist-listing-single__author-avatar,
    .directorist-listing-single__avatar,
    .directorist-listing-single__thumb__author,
    .directorist-author-avatar,
    .directorist-avatar,
    [class*="author-avatar"],
    [class*="listing-author"],
    [class*="__author"]
) {
    z-index: 999 !important;
}/* End custom CSS */