/* bricks override */
#brx-header {
    z-index: 2;
}

/* BREAKPOINT: Tablet portrait (md) */
@media (max-width: 991px) {
}  

/* BREAKPOINT: Mobile landscape (sm) */
@media (max-width: 767px) {
}

/* BREAKPOINT: Desktop (lg) and up */
@media (min-width: 992px) {
    body .inner-hero {
        min-height: 352px;
        padding-bottom: 103px;
    }
}  

:root {
    --bs-wrapper-hpadding: 30px;
    --bs-sl-filter-bar-radius: 50px;

    --svg-pin: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='25' height='23' fill='none'%3e%3cpath fill='%23584E47' d='M12.212 5.75c-.755 0-1.493.21-2.12.606a3.65 3.65 0 0 0-1.406 1.612 3.4 3.4 0 0 0-.217 2.077c.147.697.51 1.337 1.044 1.84a3.894 3.894 0 0 0 1.954.983c.74.14 1.508.068 2.205-.204a3.776 3.776 0 0 0 1.713-1.324c.42-.59.643-1.285.643-1.996 0-.953-.402-1.867-1.118-2.541a3.94 3.94 0 0 0-2.698-1.053Zm0 5.75c-.453 0-.896-.127-1.272-.363a2.19 2.19 0 0 1-.844-.968 2.04 2.04 0 0 1-.13-1.246 2.12 2.12 0 0 1 .627-1.104c.32-.302.728-.507 1.172-.59.444-.083.905-.04 1.323.123.418.163.776.44 1.028.794.251.354.385.771.385 1.198 0 .572-.24 1.12-.67 1.524a2.364 2.364 0 0 1-1.62.632Zm0-10.063c-2.226.003-4.36.837-5.934 2.319-1.574 1.482-2.46 3.492-2.462 5.588 0 2.82 1.384 5.81 4.007 8.647a23.762 23.762 0 0 0 3.955 3.441.796.796 0 0 0 .875 0 23.756 23.756 0 0 0 3.947-3.44c2.62-2.837 4.007-5.827 4.007-8.648-.002-2.096-.888-4.106-2.462-5.588-1.573-1.482-3.707-2.316-5.933-2.318Zm0 18.508c-1.577-1.168-6.87-5.458-6.87-10.601 0-1.716.724-3.361 2.013-4.574 1.288-1.213 3.035-1.895 4.857-1.895s3.569.682 4.857 1.895c1.288 1.213 2.012 2.858 2.012 4.574 0 5.142-5.292 9.433-6.87 10.601Z'/%3e%3c/svg%3e");
    --svg-briefcase: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='25' height='24' fill='none'%3e%3cg stroke='%23584E47' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3e%3cpath d='M21.145 6h-16.5a.75.75 0 0 0-.75.75v12c0 .414.336.75.75.75h16.5a.75.75 0 0 0 .75-.75v-12a.75.75 0 0 0-.75-.75Z'/%3e%3cpath d='M16.645 19.5v-15a1.5 1.5 0 0 0-1.5-1.5h-4.5a1.5 1.5 0 0 0-1.5 1.5v15'/%3e%3c/g%3e%3c/svg%3e");    
}

@media (min-width: 992px) {
    :root {
        --bs-wrapper-hpadding: 55px;
    }    
}  

@media (max-width: 767px) {
    :root {
        --bs-wrapper-hpadding: 20px;
        --bs-sl-filter-bar-radius: 30px;
    }
}


/* map locator */
.bh-sl-container {
    min-height: 670px;
    position: relative;
    z-index: 1;
}

.bh-sl-form-container {
    background-color: var(--pl-color-primary);
    /* color: var(--pl-color-primary-contrast); */
    position: relative;
    z-index: 1;
}

@media (prefers-reduced-motion: no-preference) {  
    .bh-sl-container,
    .bs-sl-filter-bar,
    .bs-sl-filter-description {
      animation: fadeUpAnimation1 0.5s ease;
      animation-fill-mode: forwards;
      animation-delay: 0.6s;
      opacity: 0;
    }
    
    .bh-sl-container {
        animation-name: fadeInAnimation;
    }

    .bs-sl-filter-bar {
      animation-delay: 0.7s;    
      animation-duration: 0.4s;
    }
    
    .bs-sl-filter-description {
      animation-delay: 0.9s;    
    }
  }
  

/* filter bar */
.bs-sl-filter-bar {
    display: flex;
    margin-left: var(--bs-wrapper-hpadding);
    margin-right: var(--bs-wrapper-hpadding);
    border: solid 1px #C6B4A8;
    border-radius: var(--bs-sl-filter-bar-radius);
    background-color: var(--pl-color-base);
    position: relative;
    top: -40px;
    z-index: 1;
}

.bs-sl-label {
    font-size: 1rem;
    font-weight: bold;
    color: var(--pl-color-primary);
    margin-bottom: 3px;
    margin-left: 12px;
}

/* keyword search */
.bs-sl-ks-container {
    display: flex;
    align-items: flex-end;
    margin-right: 15px;
    background-color: var(--pl-color-base-d2);
    border-radius: var(--bs-sl-filter-bar-radius) 0 0 var(--bs-sl-filter-bar-radius);
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 15px;
    padding-bottom: 6px;
    width: 33%;
    border-right: solid 1px #C6B4A8;
}

.bs-sl-ks-container .bs-sl-label {
    width: 100%;
    margin-bottom: 0;
    position: absolute;
    left: 40px;
    top: 15px;
}

.bs-sl-ks-container #bs-sl-ks-keyword {
    width: 53%;
    background-color: transparent;
    border-color: transparent;
    font-size: 1.125rem;
    color: var(--pl-color-primary);
    margin-right: 15px;
    flex-grow: 1;
}

.bs-sl-ks-container #bs-sl-ks-keyword::placeholder {
    color: var(--pl-color-primary);
}

.bs-sl-ks-container #bs-sl-ks-keyword:focus-visible {
    outline: none;
}

.bs-sl-ks-container #bs-sl-ks-submit {
    flex-grow: 1;
    transform: translateY(-10px);
}

/* filter container */
.bh-sl-filters-container {
    flex-grow: 1;
    display: flex;
    flex-wrap: wrap;
    margin-right: 10px;
}

.bh-sl-filters {
    flex: 1 1 0;
    padding-right: 25px;
    padding-left: 25px;
    position: relative;
    padding-top: 16px;
    padding-bottom: 9px;
    width: 33.33%;

}

.bh-sl-filters:not(:last-child):after {
    content: '';
    position: absolute;
    right: 0;
    top: 16px;
    bottom: 16px;
    width: 1px;
    background-color: rgba(0,0,0,0.3);
}

.bh-sl-filters ul {
    list-style: none;    
}

/* filter button */
.bs-sl-filter-button {
    padding: 6px 12px;
    padding-right: 20px;
    width: 100%;
    background-color: transparent;
    display: block;
    font-size: 1.125rem;
    color: #827A75;
    padding-top: 0;

    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;

    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' fill='none'%3e%3cpath stroke='%233C2D25' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.563' d='M10.63 1 5.815 5.815 1 1'/%3e%3c/svg%3e");    
    background-repeat: no-repeat;
    background-position: right center;
}

.bs-sl-filter-list {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all 0.3s ease 0s;

    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    background-color: var(--pl-color-base);
    margin:0;
    padding: 15px;
    width: 100%;
	min-width: 200px;

    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.12);
    border-radius: 5px 5px 12px 12px;
    z-index: 1;
}

.bs-sl-filter-list.show {
    visibility: visible;
    opacity: 1;
    pointer-events: all;
}

.bs-sl-filter-list ul {
    padding-left: 15px;
}

.bs-sl-filter-list li {
	word-break: break-word;
}

.bs-sl-filter-list label {
    display: flex;
    align-items: flex-start;
    color: var(--pl-color-primary);
}

.bs-sl-filter-list label > input {
    margin-top: 6px;
}

.bs-sl-filter-list label > span {
    margin-left: 7px;
}

.bs-sl-filter-list label > input[disabled] + span {
    opacity: 0.36;
}

/* inactive, simulate disabled */
.bs-sl-filter-list label > input.inactive {
    pointer-events: none;
    opacity: 0.36;
}
.bs-sl-filter-list label > input.inactive + span {
    opacity: 0.36;
    color: var(--pl-color-primary);
    pointer-events: none !important;
}

.bs-sl-filter-list-clear {
    text-decoration: underline;
}

.bs-sl-filter-description {
    padding-left: var(--bs-wrapper-hpadding);
    padding-right: var(--bs-wrapper-hpadding);
    color: var(--pl-color-primary-contrast);
    display: flex;
    padding-bottom: 30px;
    align-items: center;
}

.bs-sl-active-filter-list {
    margin-right: 30px;
}

.bs-sl-active-filter-list .term {
    background: var(--pl-color-primary-l2);
    display: inline-block;
    font-size: 14px;
    margin-right: 3px;
    padding: 3px 16px;
    border-radius: 12px;
    line-height: 1.2;
}

.bs-sl-filter-clear {
    margin-left: auto;
    flex-shrink: 0;
}

/* map area */
.bh-sl-map-container {
    display: flex;
    height: 75vh;
    min-height: 530px;
    background-color: #fff;
    position: relative;
}

.bh-sl-map {
    width: 60%;
    flex: 1 1 0;
    order: 2;
}

.bs-sl-map-corner {
    position: absolute;
    left: 0;
    top: 0;
    width: 84px;
    height: 84px;
}

.bh-sl-loc-list {
    width: 50%;
    overflow: auto;
    background-color: var(--pl-color-base-d3);
    padding-left: var(--bs-wrapper-hpadding);
    padding-right: 30px;
}

/* list */
.bh-sl-loc-list > ul {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

.bh-sl-loc-list > ul > li {
    margin: 40px 0;
}

/* location list */
.bs-location-box {
    border: solid 1px #C6B4A8;
    border-radius: var(--pl-radius-3);
    background-color: var(--pl-color-base);
    display: flex;
    overflow: hidden;
    position: relative;

    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.05);

}

.bs-list-featured {
    position: absolute;
    background-color: #F25F5C;
    color: #fff;
    font-size: 14px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    font-weight: 600;
    padding: 5px 24px;
    border-radius: 0 0 9px 9px;
    top: 0;
    right: 48px;
}

.bs-list-photo {
    max-width: 220px;
    display: flex;
    border-radius: var(--pl-radius-3) 0 0 var(--pl-radius-3);
    overflow: hidden;
}

.bs-list-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bs-list-details {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
	justify-content: space-between;
}

.bs-list-content {
    padding: 30px;
}

.bs-loc-name {
    font-size: var(--pl-font-size-7);
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 1;
}

.bs-loc-addr {
}

.bs-list-footer {
    background-color: var(--pl-color-base-d1);
    /*border-radius: 0 0 var(--pl-radius-3) var(--pl-radius-3);*/
    display: flex;
    overflow: hidden;
}

.bs-list-footer-attr {
    padding: 15px 30px;
    padding-right: 15px;
    flex-grow: 1;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -9px;
}

.bs-list-footer-attr > div {
    margin-bottom: 9px;
}

.bs-list-footer-attr > div:not(:last-child) {
    margin-right: 50px;
}

.bs-loc-location,
.bs-loc-type {
    display: flex;
    align-items: flex-start;
}

.bs-loc-location:before,
.bs-loc-type:before {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background-image: var(--svg-pin);
    background-repeat: no-repeat;
    background-size: cover;
    margin-right: 9px;    
    flex-shrink: 0;
    margin-top: 2px;
}

.bs-loc-type:before {
    background-image: var(--svg-briefcase);
}

.bs-list-footer-details {
    position: relative;
    min-width: 220px;
    border-left: solid 1px #E2E2E1;
    padding: 15px 30px;
    display: flex;
    align-items: center;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.09em;
    padding-right: 50px;
    text-align: center;
    transition: background-color 0.3s ease 0s;
}

.bs-list-footer-details:after {
    position: absolute;
    right: 30px;
    content: '';
    width: 18px;
    height: 10px;
    /* bottom: 22px; */
    background-image: var(--svg-arrow);
    background-repeat: no-repeat;
    background-size: cover;
    transition: transform 0.3s ease 0s;
}

.bs-list-footer-details:hover {
    background-color: var(--pl-color-base-d2);
}
.bs-list-footer-details:hover:after {
    transform: translateX(5px);
}

.bh-sl-loc-list > ul > li.list-focus {
    border: none;
    position: relative;
}

.bh-sl-loc-list > ul > li.list-focus:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border: solid 2px var(--pl-color-primary);
    border-radius: var(--pl-radius-3);
    pointer-events: none;
}

/* infowindow */
.bs-infowindow-details {
    padding: 0 5px 5px;
	font-family: "Albert Sans";
}

.bs-infowindow-details h6 {
    margin-bottom: 5px;
}

.bs-infowindow-details__button {
    margin-top: 9px;
    width: 100%;
}

.bh-sl-loading {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
}
.bh-sl-loading svg {
    transform: translate(0, 70px);
}


/* Responsive styles */
/* Custom breakpoints - desktop but small */
@media (max-width: 1399px) {
    .bs-sl-ks-container #bs-sl-ks-submit {
        padding-left: 0;
        padding-right: 0;
        width: 40px;
        min-width: 40px;
        flex-grow: 0;
    }
    .bs-sl-ks-container #bs-sl-ks-submit span {
        display: none;
    }
}

/* BREAKPOINT: Tablet portrait (md) */
@media (max-width: 991px) {
    .bs-sl-ks-container {
        padding-left: 20px;
        padding-right: 20px;
        margin-right: 0;
    }
    
    .bs-sl-ks-container .bs-sl-label {
        left: 20px;
    }

    .bs-sl-ks-container #bs-sl-ks-keyword {
        font-size: 1rem;
    }

    .bs-sl-ks-container #bs-sl-ks-submit {
    }

    .bs-sl-ks-container #bs-sl-ks-submit span {
    }   
    
    .bs-sl-label {
    }
    
    .bh-sl-filters {
        padding-right: 15px;
        padding-left: 15px;
    }
    
    .bs-sl-filter-button {
        font-size: 1rem;
    }

    .bs-list-photo {
        display: none;
    }

    .bs-list-footer-attr > div:not(:last-child) {
        margin-right: 20px;
    }
    
    .bs-list-footer-details {
        padding: 9px 25px;
        min-width: 132px;
    }

    .bs-list-footer-details:after {
        display: none;
    }

    .bs-list-featured {
        right: 20px;
    }
}  

/* BREAKPOINT: Mobile landscape (sm) */
@media (max-width: 767px) {
    .bh-sl-container {
        padding: 0;
    }

    .bh-sl-form-container {
    }

    .bs-sl-filter-bar {
        flex-direction: column;
    }

    .bs-sl-ks-container {
        margin-right: 0;
        border-radius: var(--bs-sl-filter-bar-radius) var(--bs-sl-filter-bar-radius) 0 0;
        width: 100%;
        padding-top: 30px;
        padding-bottom: 10px;
    }

    .bs-sl-ks-container #bs-sl-ks-keyword {
        width: 100%;
    }

    .bh-sl-filters-container {
        flex-direction: column;
        margin-right: 0;
    }

    .bs-sl-filter-button {
        background-position: right 10px center;
    }

    .bh-sl-filters {
        margin-right: 0;
        width: 100%;
        padding-left: 10px;
        padding-right: 10px;
    }

    .bh-sl-filters:not(:last-child):after {
        width: calc(100% - 40px);
        height: 1px;
        bottom: 0;
        left: 20px;
        right: 0;
        top: auto;
    }

    .bs-sl-filter-list {
        left: 20px;
        right: 20px;
        width: calc(100% - 40px);
    }

    .bs-sl-filter-description {
        flex-wrap: wrap;
        padding-bottom: 15px;
    }

    .bs-sl-active-filter-list {
        margin-right: auto;
        margin-bottom: 15px;
    }

    .bs-sl-filter-clear {
        margin-left: 0;
        margin-bottom: 15px;
    }

    .bh-sl-map-container {
        flex-direction: column;
        height: auto;
    }

    .bh-sl-map {
        width: 100%;
        height: 300px;
        min-height: 50vh;
    }

    .bh-sl-loc-list {
        width: 100%;
        height: 300px;
        min-height: 50vh;
        order: 3;
    }

    .bs-list-photo {
        display: flex;
    }

    .bs-list-content {
        padding: 20px;
        padding-top: 35px;
    }

    .bs-list-footer-details {

    }

    .bs-list-footer-details:after {

    }

}