.elementor-1213 .elementor-element.elementor-element-fad366f{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1213 .elementor-element.elementor-element-3a5eb09{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:1px 1px 1px 1px;text-align:start;}.elementor-1213 .elementor-element.elementor-element-3a5eb09 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:24px;font-weight:600;color:#222222;}.elementor-1213 .elementor-element.elementor-element-e624cfd{--display:flex;--border-radius:8px 8px 8px 8px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1213 .elementor-element.elementor-element-e624cfd:not(.elementor-motion-effects-element-type-background), .elementor-1213 .elementor-element.elementor-element-e624cfd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-1213 .elementor-element.elementor-element-a7b9b51{--display:flex;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--margin-top:0px;--margin-bottom:24px;--margin-left:0px;--margin-right:0px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-1213 .elementor-element.elementor-element-a7b9b51:not(.elementor-motion-effects-element-type-background), .elementor-1213 .elementor-element.elementor-element-a7b9b51 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E1DEDE;}.elementor-widget-jet-smart-filters-search .jet-search-filter__submit{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-1213 .elementor-element.elementor-element-d6acfd8 .jet-search-filter__input-wrapper{max-width:100%;}.elementor-1213 .elementor-element.elementor-element-99a18b8{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-end;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-jet-smart-filters-select .apply-filters__button, .elementor-widget-jet-smart-filters-select .jet-filter-items-dropdown__apply-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-1213 .elementor-element.elementor-element-30d1d87 .jet-smart-filters-select.jet-filter{display:block;}.elementor-1213 .elementor-element.elementor-element-30d1d87 .jet-smart-filters-hierarchy.jet-filter .jet-select{display:block;width:50%;max-width:50%;}.elementor-1213 .elementor-element.elementor-element-30d1d87 .jet-filters-group.jet-filters-group{display:flex;flex-direction:column;--jet-smart-filters-group-item-width:auto;}.elementor-1213 .elementor-element.elementor-element-30d1d87 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1213 .elementor-element.elementor-element-30d1d87 .jet-smart-filters-select.jet-filter .jet-select{max-width:50%;flex-basis:50%;}.elementor-1213 .elementor-element.elementor-element-30d1d87 .jet-filters-group{margin-top:calc(-10px/2);margin-bottom:calc(-10px/2);}.elementor-1213 .elementor-element.elementor-element-30d1d87 .jet-filters-group .jet-filter{margin-top:calc(10px/2);margin-bottom:calc(10px/2);}.elementor-1213 .elementor-element.elementor-element-30d1d87 .jet-filter .jet-filters-group{margin-top:calc(-10px/2);margin-bottom:calc(-10px/2);}.elementor-1213 .elementor-element.elementor-element-30d1d87 .jet-filter .jet-filters-group .jet-select{margin-top:calc(10px/2);margin-bottom:calc(10px/2);}.elementor-1213 .elementor-element.elementor-element-53adbef .jet-smart-filters-select.jet-filter{display:block;}.elementor-1213 .elementor-element.elementor-element-53adbef .jet-smart-filters-hierarchy.jet-filter .jet-select{display:block;width:50%;max-width:50%;}.elementor-1213 .elementor-element.elementor-element-53adbef .jet-filters-group.jet-filters-group{display:flex;flex-direction:column;--jet-smart-filters-group-item-width:auto;}.elementor-1213 .elementor-element.elementor-element-53adbef > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1213 .elementor-element.elementor-element-53adbef .jet-smart-filters-select.jet-filter .jet-select{max-width:50%;flex-basis:50%;}.elementor-1213 .elementor-element.elementor-element-53adbef .jet-filters-group{margin-top:calc(-10px/2);margin-bottom:calc(-10px/2);}.elementor-1213 .elementor-element.elementor-element-53adbef .jet-filters-group .jet-filter{margin-top:calc(10px/2);margin-bottom:calc(10px/2);}.elementor-1213 .elementor-element.elementor-element-53adbef .jet-filter .jet-filters-group{margin-top:calc(-10px/2);margin-bottom:calc(-10px/2);}.elementor-1213 .elementor-element.elementor-element-53adbef .jet-filter .jet-filters-group .jet-select{margin-top:calc(10px/2);margin-bottom:calc(10px/2);}.elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__items{--columns:3;}.elementor-1213 .elementor-element.elementor-element-39f0760{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}:is( .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .swiper-lib > .swiper-wrapper, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__items, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__slider > .jet-listing-grid__items > .slick-list > .slick-track, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__scroll-slider > .jet-listing-grid__items ) > .jet-listing-grid__item{padding-left:calc(18px / 2);padding-right:calc(18px / 2);}:is( .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__slider.slick-lib, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__scroll-slider ) > .jet-listing-grid__items{margin-left:calc( 18px / -2);margin-right:calc( 18px / -2);width:calc(100% + 18px);}.elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid:has( > .jet-listing-grid__slider.swiper-lib ){margin-left:calc( 18px / -2);margin-right:calc( 18px / -2);}:is( .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__slider.swiper-lib > .jet-listing-grid__items, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__items, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__slider > .jet-listing-grid__items > .slick-list > .slick-track, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__scroll-slider > .jet-listing-grid__items ) > .jet-listing-grid__item{padding-top:calc(18px / 2);padding-bottom:calc(18px / 2);}:is( .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__slider, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__scroll-slider ) > .jet-listing-grid__items.grid-collapse-gap{margin-top:calc( 18px / -2);margin-bottom:calc( 18px / -2);}@media(max-width:1024px){.elementor-1213 .elementor-element.elementor-element-3a5eb09 .elementor-heading-title{font-size:22px;}.elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__items{--columns:2;}}@media(max-width:767px){.elementor-1213 .elementor-element.elementor-element-3a5eb09 .elementor-heading-title{font-size:20px;}.elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__items{--columns:1;}:is( .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .swiper-lib > .swiper-wrapper, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__items, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__slider > .jet-listing-grid__items > .slick-list > .slick-track, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__scroll-slider > .jet-listing-grid__items ) > .jet-listing-grid__item{padding-left:calc(18px / 2);padding-right:calc(18px / 2);}:is( .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__slider.slick-lib, .elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid > .jet-listing-grid__scroll-slider ) > .jet-listing-grid__items{margin-left:calc( 18px / -2);margin-right:calc( 18px / -2);width:calc(100% + 18px);}.elementor-1213 .elementor-element.elementor-element-39f0760 > .jet-listing-grid:has( > .jet-listing-grid__slider.swiper-lib ){margin-left:calc( 18px / -2);margin-right:calc( 18px / -2);}}/* Start custom CSS for container, class: .elementor-element-fad366f *//* Automatic Listing Type button grid */

.elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-buttons {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
}


/* Individual buttons */

.elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-button {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    min-height: 90px;
    padding: 8px 10px;

    background: #ffffff;
    border: 1px solid #d5d5d5;
    border-radius: 8px;

    color: #222222 !important;
    text-align: center;
    text-decoration: none !important;

    transition:
        border-color 0.15s ease,
        background-color 0.15s ease,
        color 0.15s ease,
        transform 0.15s ease;
}

.elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-icon {
    display: block;
    width: 46px;
    height: 46px;
    margin: 0 0 4px 0;
    object-fit: contain;
}

.elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-name {
    display: block;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.15;
}

.elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-button:hover {
    border-color: #009bd7;
    background: #f4fbfe;
    color: #007eae !important;
    transform: translateY(-2px);
}

@media (max-width: 1024px) {
    .elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-button {
        min-height: 86px;
    }

    .elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-icon {
        width: 42px;
        height: 42px;
    }
}

@media (max-width: 767px) {
    .elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-button {
        min-height: 80px;
        padding: 7px 8px;
    }

    .elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-icon {
        width: 38px;
        height: 38px;
        margin-bottom: 4px;
    }

    .elementor-1213 .elementor-element.elementor-element-fad366f .lh-listing-type-name {
        font-size: 13px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-99a18b8 *//* Desktop/tablet: two equal columns */
.elementor-1213 .elementor-element.elementor-element-99a18b8 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 20px !important;
    width: 100% !important;
}

/* Force both Elementor children to fill their grid columns */
.elementor-1213 .elementor-element.elementor-element-99a18b8 > * {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

/* Force JetSmartFilters themselves to fill the child */
.elementor-1213 .elementor-element.elementor-element-99a18b8 .jet-smart-filters-select,
.elementor-1213 .elementor-element.elementor-element-99a18b8 .jet-filter,
.elementor-1213 .elementor-element.elementor-element-99a18b8 .jet-select,
.elementor-1213 .elementor-element.elementor-element-99a18b8 .jet-select__control {
    width: 100% !important;
    max-width: none !important;
}

/* Mobile: stack the two filters */
@media (max-width: 767px) {

    .elementor-1213 .elementor-element.elementor-element-99a18b8 {
        grid-template-columns: 1fr !important;
        row-gap: 12px !important;
    }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a7b9b51 *//* ==========================================================
   LISTING TYPE + CATEGORY ROW
   ========================================================== */

.elementor-1213 .elementor-element.elementor-element-a7b9b51 .lh-filter-row {
    display: flex;
    width: 100%;
    gap: 20px;
}

/* Make both Elementor widgets occupy half the row */
.elementor-1213 .elementor-element.elementor-element-a7b9b51 .lh-filter-row > .elementor-element {
    flex: 1 1 0;
    width: auto;
    max-width: none;
    min-width: 0;
}

/* Make JetSmartFilters use the widget's full width */
.elementor-1213 .elementor-element.elementor-element-a7b9b51 .lh-filter-row .jet-smart-filters-select,
.elementor-1213 .elementor-element.elementor-element-a7b9b51 .lh-filter-row .jet-select,
.elementor-1213 .elementor-element.elementor-element-a7b9b51 .lh-filter-row .jet-select__control {
    width: 100%;
}


/* Mobile */
@media (max-width: 767px) {

    .elementor-1213 .elementor-element.elementor-element-a7b9b51 .lh-filter-row {
        flex-direction: column;
        gap: 12px;
    }

    .elementor-1213 .elementor-element.elementor-element-a7b9b51 .lh-filter-row > .elementor-element {
        width: 100%;
        flex-basis: auto;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e624cfd *//* ==========================================================
   LOVE HAVERHILL DIRECTORY FILTERS
   ========================================================== */


/* ---------- Main filter panel ---------- */

.elementor-1213 .elementor-element.elementor-element-e624cfd {
    width: 100%;
    padding: 20px;
    margin-bottom: 24px;

    background: #f7f7f7;
    border: 1px solid #e2e2e2;
    border-radius: 8px;
}


/* ---------- Search ---------- */

.elementor-1213 .elementor-element.elementor-element-e624cfd .jet-search-filter {
    width: 100%;
}

.elementor-1213 .elementor-element.elementor-element-e624cfd .jet-search-filter__input {
    width: 100%;
    min-height: 46px;

    padding: 10px 14px;

    background: #ffffff;
    border: 1px solid #cfcfcf;
    border-radius: 6px;

    font-size: 15px;
    line-height: 1.4;

    box-sizing: border-box;
}

.elementor-1213 .elementor-element.elementor-element-e624cfd .jet-search-filter__input:focus {
    border-color: #777777;
    outline: none;
}


/* ---------- Select filters ---------- */

.elementor-1213 .elementor-element.elementor-element-e624cfd .jet-smart-filters-select,
.elementor-1213 .elementor-element.elementor-element-e624cfd .jet-select {
    width: 100%;
}

.elementor-1213 .elementor-element.elementor-element-e624cfd .jet-select__control {
    width: 100%;
    min-height: 46px;

    padding: 8px 12px;

    background: #ffffff;
    border: 1px solid #cfcfcf;
    border-radius: 6px;

    font-size: 15px;
    line-height: 1.4;

    cursor: pointer;

    box-sizing: border-box;
}

.elementor-1213 .elementor-element.elementor-element-e624cfd .jet-select__control:focus {
    border-color: #777777;
    outline: none;
}


/* ---------- Prevent odd widget widths ---------- */

.elementor-1213 .elementor-element.elementor-element-e624cfd .elementor-widget-jet-smart-filters-select,
.elementor-1213 .elementor-element.elementor-element-e624cfd .elementor-widget-jet-smart-filters-search {
    width: 100%;
}


/* ---------- Tablet ---------- */

@media (max-width: 1024px) {

    .elementor-1213 .elementor-element.elementor-element-e624cfd {
        padding: 16px;
    }

}


/* ---------- Mobile ---------- */

@media (max-width: 767px) {

    .elementor-1213 .elementor-element.elementor-element-e624cfd {
        padding: 14px;
        margin-bottom: 18px;
    }

    .elementor-1213 .elementor-element.elementor-element-e624cfd .jet-search-filter__input,
    .elementor-1213 .elementor-element.elementor-element-e624cfd .jet-select__control {
        min-height: 44px;
        font-size: 16px;
    }

}/* End custom CSS */