:root {
   --pub-border-color: #DBE0F2;
   --pub-active-color: #C2989C;
}
.redcat-pub-listing {
   font-family: var(--wp--preset--font-family--body-font);
}



/* =====[PUB LISTING BLOCK]===== */
.pub-listing-container {
   border-top: 1px solid var(--pub-border-color);
}
.pub-main-layout {
   display: flex;
   flex-direction: row;
}
.pub-main-layout.no-sidebar {
   gap: 0;
}
.pub-main-layout.no-sidebar .pub-results-container {
   width: 100%;
}



/* =====[LEFT SIDE/FILTERS]===== */
.pub-filters-sidebar {
   width: 400px;
   flex: 0 0 auto;
   border-right: 1px solid var(--pub-border-color);
   background: #F6F8FF;
   padding: 25px 25px 25px 50px;
}
.btn-group-filter-close {
   display: flex;
   justify-content: end;
   margin-bottom: 24px;
}
.btn-filter-close {
   line-height: 0;
   padding: 0;
   background: transparent;
   border: none;
   cursor: pointer;
   outline: none;
   text-decoration: none;
   display: none;
}
.btn-filter-close:hover,
.btn-filter-close.active {
   color: var(--pub-active-color);
}
.btn-filter-close svg {
   width: 24px;
   height: 24px;
   display: inline-block;
}
.filter-select {
   width: 100%;
   padding: 0.75rem;
   border: 2px solid #ddd;
   border-radius: 4px;
   font-size: 1rem;
   background: white;
   transition: border-color 0.3s ease;
}
.filter-select:focus {
   outline: none;
   border-color: #007cba;
   box-shadow: 0 0 0 2px rgba(0, 124, 186, 0.1);
}
.filter-group label {
   display: block;
   font-weight: 600;
   margin-bottom: 0.75rem;
   color: #333;
   font-size: 1rem;
}
.filter-group h5 {
   margin: 0 0 0.75rem 0;
   font-size: 0.9rem;
   font-weight: 600;
   color: #555;
   text-transform: uppercase;
   letter-spacing: 0.5px;
}
.filter-section {
   margin-bottom: 25px;
}
.filter-section:last-child {
   border-bottom: none;
   margin-bottom: 0;
}
.filter-section .filter-header {
   display: flex;
   justify-content: space-between;
   align-items: center;
   cursor: pointer;
}
.filter-section .filter-header h4 {
   font-size: 1rem;
   font-weight: 600;
   color: var(--wp--preset--color--primary);
   margin: 0;
}
.filter-section .filter-header .filter-arrow {
   color: var(--wp--preset--color--primary);
   transition: transform 0.2s ease;
}
.filter-section .filter-content {
   padding: 0;
   max-height: 0;
   overflow: hidden;
   transition: max-height 0.3s ease, padding 0.3s ease;
}
.filter-section .filter-content.expanded {
   max-height: 500px;
   overflow-y: auto;
}
.filter-section .filter-content .location-checkboxes,
.filter-section .filter-content .facility-checkboxes,
.filter-section .filter-content .agreement-type-checkboxes {
   display: flex;
   flex-direction: column;
   gap: 10px 0;
   padding-top: 8px;
}
.filter-section .filter-content .location-checkbox,
.filter-section .filter-content .facility-checkbox,
.filter-section .filter-content .agreement-type-checkbox {
   padding-left: 25px;
   position: relative;
   cursor: pointer;
}
.filter-section .filter-content .location-checkbox input[type="checkbox"],
.filter-section .filter-content .facility-checkbox input[type="checkbox"],
.filter-section .filter-content .agreement-type-checkbox input[type="checkbox"] {
   width: 1rem;
   height: 1rem;
   position: absolute;
   top: 5px;
   left: 0;
   border-radius: 0;
   cursor: pointer;
   border: 1px solid var(--wp--preset--color--black);
   background-color: var(--wp--preset--color--white);
   background-repeat: no-repeat;
   background-position: center;
   background-size: contain;
   margin: 0;
   padding: 0;
   display: inline-block;
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   z-index: 10;
}
.filter-section .filter-content .location-checkbox input[type="checkbox"]:checked,
.filter-section .filter-content .facility-checkbox input[type="checkbox"]:checked,
.filter-section .filter-content .agreement-type-checkbox input[type="checkbox"]:checked {
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FFF' stroke-width='4' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-check-icon lucide-check'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
   background-color: var(--wp--preset--color--primary);
}
.filter-section .filter-content .location-checkbox .location-name,
.filter-section .filter-content .facility-checkbox .facility-name,
.filter-section .filter-content .agreement-type-checkbox .agreement-type-name {
   font-size: 15px;
   font-weight: 500;
   color: var(--wp--preset--color--black);
}


@media (max-width: 1599px) {
   .pub-filters-sidebar {
      width: 350px;
      padding: 25px 25px 25px 25px;
   }
}

@media (max-width: 1399px) {
   .pub-filters-sidebar {
      width: 300px;
   }
}

@media (max-width: 1199px) {
   .pub-filters-sidebar {
      position: fixed;
      top: 0;
      left: 0;
      height: 100%;
      overflow-y: auto;
      transform: translateX(-100%);
      opacity: 0;
		transition: all 0.3s ease;
      z-index: 100;
   }
   .pub-filters-sidebar.active {
      transform: translateX(0);
      opacity: 1;
   }
   .btn-filter-close {
      display: inline-block;
   }
}

/* =====[RIGHT SIDE/MAIN]===== */
.pub-results-container {
   flex: 1;
}

/* PUB RESULT HEADER */
.pub-results-header {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 0 clamp(20px, 2vw, 40px);
   border-bottom: 1px solid var(--pub-border-color);
}
.pub-results-header .results-left {
   display: flex;
   align-items: center;
   gap: 0.5rem;
}
.pub-results-header .results-left .btn-toggle-filter {
   color: var(--wp--preset--color--black);
   border: 0;
   background: transparent;
   cursor: pointer;
   display: none;
}
.pub-results-header .results-left .btn-toggle-filter:hover,
.pub-results-header .results-left .btn-toggle-filter.active {
   color: var(--pub-active-color);
}
.pub-results-header .results-left .btn-toggle-filter svg {
   width: 24px;
   height: 24px;
}
.pub-results-header .results-left .clear-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   background: transparent;
   border: none;
   color: var(--wp--preset--color--black);
   padding: 0.25rem 0;
   cursor: pointer;
}
.pub-results-header .results-left .clear-icon:hover {
   color: var(--pub-active-color);
   background: transparent;
}
.pub-results-header .results-left .clear-icon svg {
   width: 22px;
   height: 22px;
}
.pub-results-header .results-count-display {
   font-size: 1.125rem;
   font-weight: 600;
   color: var(--wp--preset--color--black);
}
.pub-results-header .search-header {
   margin-bottom: 1.5rem;
   text-align: center;
}
.pub-results-header .search-title {
   margin: 0 0 0.5rem 0;
   font-size: 1.5rem;
   font-weight: 700;
   color: #333;
}
.pub-results-header .search-subtitle {
   margin: 0;
   color: #666;
   font-size: 0.95rem;
}
.pub-results-header .search-form-wrapper {
   flex: 0 0 auto;
}
.pub-results-header .search-section {
   display: flex;
   align-items: center;
}
.pub-results-header .search-fields {
   display: flex;
   align-items: center;
   padding-top: 0.75rem;
   padding-bottom: 0.75rem;
}
.pub-results-header .search-fields:not(.toggle-buttons) {
   border-left: 1px solid var(--pub-border-color);
   border-right: 1px solid var(--pub-border-color);
   padding-left: 0.75rem;
   padding-right: 0.75rem;
}
.pub-results-header .search-field:not(.search-actions,
.layout-toggles) {
   margin-right: 0.75rem;
}
.pub-results-header .search-field label {
   font-weight: 600;
   margin-bottom: 0.5rem;
   color: var(--wp--preset--color--black);
   display: block;
}
.pub-results-header .search-field .search-input-compact {
   font-family: var(--wp--preset--font-family--body-font);
   font-size: 1rem;
   font-weight: 500;
   color: var(--wp--preset--color--black);
   border: 2px solid #F3F3F3;
   background-color: #F3F3F3;
   padding: 8px 14px;
   line-height: 1.5;
   height: 44px;
   outline: none;
   width: 100%;
}
.pub-results-header .search-field .search-input-compact:focus {
   border-color: var(--wp--preset--color--primary);
}
.pub-results-header .search-field button {
   background-color: transparent;
   background-repeat: no-repeat;
   background-size: 24px;
   background-position: center;
   color: var(--wp--preset--color--black);
   border: 0;
   line-height: 1;
   padding: 6px 4px;
   outline: none;
   cursor: pointer;
}
.pub-results-header .search-field button:hover,
.pub-results-header .search-field button.active {
   color: var(--pub-active-color);
   background-color: transparent;
   border: 0;
   outline: none;
}
.pub-results-header .search-field button svg {
   pointer-events: none;
   width: 24px;
   height: 24px;
}
.pub-results-header .search-field .search-button-compact {
   font-size: 0;
   color: transparent;
   width: 34px;
   height: 38px;
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-search-icon lucide-search'%3E%3Cpath d='m21 21-4.34-4.34'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3C/svg%3E");
}
.pub-results-header .search-field .search-button-compact:hover {
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23C2989C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-search-icon lucide-search'%3E%3Cpath d='m21 21-4.34-4.34'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3C/svg%3E");
}
.pub-results-header .search-field .search-button-compact svg {
   display: none;
}
.pub-results-header .search-field.layout-toggles {
   display: flex;
   gap: 0.75rem;
   padding-left: 0.75rem;
}


/* PUB RESULTS */
.pub-results {
   padding: 40px clamp(20px, 2vw, 40px);
}
.pub-grid {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 2rem;
   margin-bottom: 3rem;
}
.pub-card {
   overflow: hidden;
   background: #FFF;
   box-shadow: 0 4px 8px 0 rgba(82, 82, 82, 0.15);
   display: flex;
   flex-direction: column;
}
.pub-card .pub-image-container {
   position: relative;
}
.pub-card .pub-image-container:before {
   content: '';
   position: absolute;
   inset: 0;
   background: linear-gradient(180deg, rgba(20, 20, 16, 0.00) 57.89%, #141410 100%);
   z-index: 10;
}
.pub-card .pub-image {
   position: relative;
   width: 100%;
}
.pub-card .pub-image img {
   width: 100%;
   display: block;
   aspect-ratio: 16/10;
   object-fit: cover;
   object-position: center;
}
.pub-card .pub-listing-slider {
   position: relative;
}
.pub-card .pub-listing-slider .splide__arrows {
   display: flex;
   justify-content: space-between;
   position: absolute;
   width: 100%;
   left: 0;
   top: 50%;
   transform: translateY(-50%);
   padding: 0 15px;
   z-index: 10;
}
.pub-card .pub-listing-slider .splide__arrows .splide__arrow {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 36px;
   height: 36px;
   color: var(--wp--preset--color--primary);
   background-color: var(--wp--preset--color--white);
   border: 0;
   border-radius: 100%;
   padding: 0;
   margin: 0;
   position: relative;
   transform: translate(0);
   cursor: pointer;
}
.pub-card .pub-listing-slider .splide__arrows .splide__arrow.splide__arrow--prev {
   left: 0;
   transform: rotate(180deg);
}
.pub-card .pub-listing-slider .splide__arrows .splide__arrow.splide__arrow--next {
   right: 0;
}
.pub-card .pub-listing-slider .splide__arrows .splide__arrow:hover {
   color: var(--wp--preset--color--white);
   background-color: var(--wp--preset--color--primary);
}
.pub-card .pub-listing-slider .splide__arrows .splide__arrow svg {
   width: 18px;
   height: 18px;
   fill: var(--wp--preset--color--primary);
}
.pub-card .pub-listing-slider .splide__arrows .splide__arrow:hover svg {
   fill: var(--wp--preset--color--white);
}
.pub-card .pub-listing-slider .splide__pagination {
   position: absolute;
   bottom: -1.75rem;
   left: 0;
   right: 0;
   gap: 0.5rem 0.8rem;
   z-index: 10;
}
.pub-card .pub-listing-slider .splide__pagination li {
   line-height: 0;
}
.pub-card .pub-listing-slider .splide__pagination li .splide__pagination__page {
   width: 8px;
   height: 8px;
   border-radius: 50%;
   background: #E3E4E5;
   border: none;
   padding: 0;
   transition: all 0.3s ease;
   cursor: pointer;
}
.pub-card .pub-listing-slider .splide__pagination li .splide__pagination__page.is-active,
.pub-card .pub-listing-slider .splide__pagination li .splide__pagination__page:hover {
   background: #BE1E2D;
}
.pub-card .lease-info-overlay {
   position: absolute;
   width: 100%;
   bottom: 0;
   left: 0;
   padding: 1rem 1.25rem;
   display: flex;
   z-index: 20;
}
.pub-card .lease-info-overlay .earnings-info,
.pub-card .lease-info-overlay .agreement-info {
   font-size: 15px;
   color: #FFFFFF;
   width: 50%;
   line-height: 1.4
}
.pub-card .lease-info-overlay .earnings-info {
   padding-right: 1.625rem;
   border-right: 1px solid #FFFFFF;
}
.pub-card .lease-info-overlay .agreement-info {
   padding-left: 1.625rem;
}
.pub-card .lease-info-overlay .earnings-info .earnings-label,
.pub-card .lease-info-overlay .agreement-info .agreement-label {
   font-weight: 600;
   display: block;
   margin-bottom: 4px;
}
.pub-card .lease-info-overlay .earnings-info .earnings-value,
.pub-card .lease-info-overlay .agreement-info .agreement-value {
   display: block;
}
.pub-card .lease-info-inline {
   display: flex;
   margin-bottom: 0.875rem
}
.pub-card .lease-info-inline .earnings-info-inline,
.pub-card .lease-info-inline .agreement-info-inline {
   font-size: 15px;
   width: 50%;
   line-height: 1.4
}
.pub-card .lease-info-inline .earnings-info-inline {
   padding-right: 1.625rem;
   border-right: 1px solid var;
}
.pub-card .lease-info-inline .agreement-info-inline {
   padding-left: 1.625rem;
}
.pub-card .lease-info-inline .earnings-info-inline .earnings-label,
.pub-card .lease-info-inline .agreement-info-inline .agreement-label {
   font-weight: 600;
   display: block;
   margin-bottom: 4px;
}
.pub-card .lease-info-inline .earnings-info-inline .earnings-value,
.pub-card .lease-info-inline .agreement-info-inline .agreement-value {
   display: block;
}
.pub-card .pub-details {
   padding: 3.25rem 1.625rem 1rem 1.625rem;
}
.pub-card .pub-location-label {
   font-size: 0.875rem;
   font-weight: 500;
   color: #C2989C;
   margin-bottom: 0.5rem;
}
.pub-card .pub-title {
   font-size: var(--wp--preset--font-size--heading-2);
   font-weight: 400;
   margin: 0 0 3rem 0;
}
.pub-card .pub-title a,
.pub-card .pub-title .pub-website-link {
   display: inline-block;
   color: var(--wp--preset--color--black);
   text-decoration: none;
   position: relative;
}
.pub-card .pub-title a:hover,
.pub-card .pub-title .pub-website-link:hover {
   color: var(--wp--preset--color--primary);
   text-decoration: underline;
}
.pub-card .pub-title a:after,
.pub-card .pub-title .pub-website-link:after {
   content: '';
   position: relative;
   display: inline-block;
   width: 26px;
   height: 26px;
   background-color: transparent;
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='icon icon-tabler icons-tabler-outline icon-tabler-arrow-up-right'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M17 7l-10 10' /%3E%3Cpath d='M8 7l9 0l0 9' /%3E%3C/svg%3E");
   background-repeat: no-repeat;
   background-size: 28px;
   background-position: center;
   margin-left: 8px;
   top: 4px
}
.pub-card .pub-title a svg,
.pub-card .pub-title .pub-website-link svg {
   display: none;
}
.pub-card .pub-location {
   font-size: 0.938rem;
   color: var(--wp--preset--color--black);
   margin-bottom: 0.875rem;
}
.pub-card .location-name {
   display: none;
}
.pub-card .postcode,
.pub-card .pub-location-details {
   color: var(--wp--preset--color--dark);
}
.pub-card .pub-location-details .postcode {
   padding-right: 0.5rem;
}
.pub-card .pub-location-details .pub-distance:before {
   content: '|';
   display: inline-block;
   padding-right: 0.5rem;
}
.pub-card .pub-description {
   font-size: 0.938rem;
   color: var(--wp--preset--color--black);
   margin: 0.875rem 0;
}
.pub-card .facilities-section {
   overflow: hidden;
   margin: 0.875rem 0;
   /*    max-width: 100%; */
   /*    width: calc(100% + 100px); */
   width: 100%;
   /*    min-width: 0; */
}
.pub-card .facilities-grid {
   display: flex;
   gap: 1rem;
   flex-wrap: nowrap;
   max-width: 100%;
   overflow-x: auto;

   -webkit-overflow-scrolling: touch;
   /*    overscroll-behavior-x: contain; */
   /*    scrollbar-width: none; */
   /*    -ms-overflow-style: none; */
   /*    min-width: 0; */
   /*    width: 460px; */
   /*    flex-shrink: 0; */
}
.pub-card .facilities-grid::-webkit-scrollbar {
   display: none;
}
.pub-card .facility-tag {
   display: flex;
   align-items: center;
   gap: 0.5rem;
   padding: 0.2rem 0.8rem;
   white-space: nowrap;
   flex-shrink: 0;
   position: relative;
}
.pub-card .facility-tag:first-child {
   padding-left: 0;
}
.pub-card .facility-tag .facility-icon {
   width: 16px;
   height: 16px;
   object-fit: contain;
   display: inline-block;
}
.pub-card .facility-tag:not(:last-child)::after {
   content: '';
   position: absolute;
   right: -0.5rem;
   top: 50%;
   transform: translateY(-50%);
   width: 1px;
   height: 60%;
   background: #dee2e6;
   pointer-events: none;
}
.pub-card .facility-name {
   font-size: 0.938rem;
   color: var(--wp--preset--color--black);
   font-weight: 500;
}
.pub-card .pub-actions {
   margin: 1.125rem 0 0.8rem 0
}
.pub-card .pub-actions .submit-enquiry-btn {
   font-size: var(--wp--preset--font-size--button);
   font-weight: 700;
   color: var(--wp--preset--color--primary);
   text-align: center;
   text-transform: uppercase;
   border: 2px solid var(--wp--preset--color--primary);
   background: transparent;
   padding: 0.667rem 1.33rem;
   text-decoration: none;
   width: 100%;
   display: block;
}
.pub-card .pub-actions .submit-enquiry-btn:hover,
.pub-card .pub-actions .submit-enquiry-btn:focus {
   color: var(--wp--preset--color--white);
   border-color: var(--wp--preset--color--primary);
   background: var(--wp--preset--color--primary);
}
.pub-grid[data-layout="grid"] .pub-card .lease-info-inline {
	display: none;
}
.pub-grid[data-layout="list"] {
   grid-template-columns: 1fr;
   gap: 1.5rem;
}
.pub-grid[data-layout="list"] .pub-card {
   flex-direction: row;
   gap: 1.5rem 0;
   min-width: 0;
}
.pub-grid[data-layout="list"] .pub-card .pub-image-container,
.pub-grid[data-layout="list"] .pub-card .pub-image {
   width: 300px;
   flex: 0 0 auto;
}
.pub-grid[data-layout="list"] .pub-card .pub-image,
.pub-grid[data-layout="list"] .pub-card .pub-image .pub-listing-slider,
.pub-grid[data-layout="list"] .pub-card .pub-image .splide,
.pub-grid[data-layout="list"] .pub-card .pub-image .splide__track,
.pub-grid[data-layout="list"] .pub-card .pub-image .splide__list,
.pub-grid[data-layout="list"] .pub-card .pub-image .splide__slide,
.pub-grid[data-layout="list"] .pub-card .pub-image .wp-block-mr-blocks-slider-item-wrapper,
.pub-grid[data-layout="list"] .pub-card .pub-image .wp-block-mr-blocks-slider-item-wrapper img {
   height: 100%;
}
.pub-grid[data-layout="list"] .pub-card .pub-image .wp-block-mr-blocks-slider-item-wrapper img {
   aspect-ratio: auto;
}
.pub-grid[data-layout="list"] .pub-card .pub-listing-slider .splide__pagination {
   bottom: 0.9rem;
   gap: 0.3rem 0.6rem;
}
.pub-grid[data-layout="list"] .pub-card .pub-listing-slider .splide__pagination li .splide__pagination__page {
   width: 6px;
   height: 6px;
}
.pub-grid[data-layout="list"] .pub-card .lease-info-overlay {
   display: none;
}
.pub-grid[data-layout="list"] .pub-card .pub-details {
   padding: 1.625rem 1.625rem 1rem 1.625rem;
   flex-grow: 1;
}
.pub-grid[data-layout="list"] .pub-card .pub-title {
   margin: 0 0 1rem 0;
}


@media (max-width: 1399px) {
   .pub-results-header {
      padding: 0;
      flex-wrap: wrap;
   }
   .pub-results-header .results-left {
      padding: 0.75rem clamp(20px, 2vw, 40px);
      width: 100%;
   }
   .pub-results-header .search-form-wrapper {
      width: 100%;
   }
   .pub-results-header .search-section {
      padding: 0 clamp(20px, 2vw, 40px);
      justify-content: space-between;
      border-top: 1px solid var(--pub-border-color)
   }
   .pub-results-header .search-fields:not(.toggle-buttons) {
      border-left: 0;
      border-right: 0;
      padding-left: 0;
   }
}

@media (max-width: 1199px) {
   .pub-results-container {
      width: 100%;
   }
   .pub-results-header .results-left .btn-toggle-filter {
      display: inline-flex;
      margin-right: 40px;
   }
}

@media (max-width: 767px) {
   .pub-grid {
      grid-template-columns: 1fr;
   }
   .pub-results-header .search-fields:not(.toggle-buttons) {
      width: 100%;
      padding-right: 0;
      flex-direction: column;
      gap: 15px 0;
   }
   .pub-results-header .search-field:not(.layout-toggles) {
      margin-right: 0;
      width: 100%;
   }
   .pub-results-header .search-field .search-button-compact {
      width: 100%;
      height: 44px;
      background-image: none;
      border: 2px solid var(--wp--preset--color--primary);
   }
   .pub-results-header .search-field .search-button-compact:before {
      content: 'Search';
      font-family: var(--wp--preset--font-family--body-font);
      font-size: var(--wp--preset--font-size--button);
      font-weight: var(--wp--custom--font-weight--bold);
      color: var(--wp--preset--color--primary);
      text-transform: uppercase;
   }
   .pub-results-header .search-field .search-button-compact:hover {
      background-image: none;
      border: 2px solid var(--wp--preset--color--primary);
   }
   .pub-results-header .search-fields.toggle-buttons {
      display: none;
   }
   .pub-card .pub-title a:after,
   .pub-card .pub-title .pub-website-link:after {
      width: 24px;
      height: 24px;
      background-size: 24px;
      margin-left: 4px;
   }
   .pub-grid[data-layout="list"] .pub-card {
      flex-direction: column;
      gap: 0;
   }
   .pub-grid[data-layout="list"] .pub-card .pub-image,
   .pub-grid[data-layout="list"] .pub-card .pub-image .pub-listing-slider,
   .pub-grid[data-layout="list"] .pub-card .pub-image .splide,
   .pub-grid[data-layout="list"] .pub-card .pub-image .splide__track,
   .pub-grid[data-layout="list"] .pub-card .pub-image .splide__list,
   .pub-grid[data-layout="list"] .pub-card .pub-image .splide__slide,
   .pub-grid[data-layout="list"] .pub-card .pub-image .wp-block-mr-blocks-slider-item-wrapper,
   .pub-grid[data-layout="list"] .pub-card .pub-image .wp-block-mr-blocks-slider-item-wrapper img {
      height: auto;
   }
   .pub-grid[data-layout="list"] .pub-card .pub-image .wp-block-mr-blocks-slider-item-wrapper img {
      aspect-ratio: 16/10;
   }
   .pub-grid[data-layout="list"] .pub-card .pub-image-container,
   .pub-grid[data-layout="list"] .pub-card .pub-image {
      width: 100%;
   }
}
























































/* Filter toggle button removed - filters always visible */
/* Advanced Filters */
.advanced-filters {
   display: block;
}

@keyframes fadeIn {
   from {
      opacity: 0;
      transform: translateY(-10px);
   }

   to {
      opacity: 1;
      transform: translateY(0);
   }
}



/* Facilities Filter */
.facilities-group {
   grid-column: span 2;
}



/* Filter Actions */
.filter-actions {
   display: flex;
   justify-content: center;
   align-items: center;
}

.clear-filters {
   background: #dc3545;
   color: white;
   border: none;
   padding: 0.75rem 1.5rem;
   border-radius: 4px;
   font-size: 0.9rem;
   font-weight: 600;
   cursor: pointer;
   transition: background-color 0.3s ease;
}

.clear-filters:hover {
   background: #c82333;
}

/* Lease-Specific Filters */
.lease-filters .lease-options {
   display: flex;
   flex-direction: column;
   gap: 0.5rem;
}

.lease-checkbox {
   display: flex;
   align-items: center;
   gap: 0.5rem;
   padding: 0.5rem;
   border-radius: 4px;
   transition: background-color 0.2s ease;
   cursor: pointer;
   font-weight: normal;
   margin-bottom: 0;
}

.lease-checkbox:hover {
   background: #fff3cd;
}

.lease-checkbox input[type="checkbox"] {
   margin: 0;
   accent-color: #ffc107;
}

.option-name {
   font-size: 0.9rem;
   color: #555;
}

.lease-checkbox input[type="checkbox"]:checked + .option-name {
   color: #ffc107;
   font-weight: 600;
}

/* Loading State */
.pub-results.loading {
   position: relative;
   opacity: 0.7;
   pointer-events: none;
   transition: opacity 0.2s ease;
}

.pub-results.loading::before {
   content: "";
   position: absolute;
   top: 40%;
   left: 50%;
   width: 50px;
   height: 50px;
   margin: -25px 0 0 -25px;
   border: 5px solid #f3f3f3;
   border-top: 5px solid #007cba;
   border-radius: 50%;
   animation: spin 0.8s linear infinite;
   z-index: 100;
   background: white;
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.pub-results.loading::after {
   content: "Searching...";
   position: absolute;
   top: 40%;
   left: 50%;
   transform: translate(-50%, 60px);
   font-size: 0.9rem;
   font-weight: 600;
   color: #007cba;
   z-index: 100;
   text-align: center;
   white-space: nowrap;
}

@keyframes spin {
   0% {
      transform: rotate(0deg);
   }

   100% {
      transform: rotate(360deg);
   }
}

.pub-results.loading .pub-grid {
   filter: blur(1px);
   transition: filter 0.2s ease;
}

/* Error State */
.no-results.error {
   background: #f8d7da;
   border: 1px solid #f5c6cb;
   color: #721c24;
}

.no-results.error h3 {
   color: #721c24;
}

/* Enquiry Messages */
.enquiry-message {
   margin-bottom: 2rem;
   padding: 1rem;
   border-radius: 6px;
   transition: opacity 0.3s ease;
}

.enquiry-message.success {
   background: #d4edda;
   color: #155724;
   border: 1px solid #c3e6cb;
}

.enquiry-message.error {
   background: #f8d7da;
   color: #721c24;
   border: 1px solid #f5c6cb;
}

.enquiry-message ul {
   margin: 0;
   padding-left: 1.5rem;
}

.enquiry-message li {
   margin-bottom: 0.5rem;
}

/* Form Field Errors */
.form-group input.error,
.form-group textarea.error {
   border-color: #dc3545;
   box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
}

.field-error {
   color: #dc3545;
   font-size: 0.9rem;
   margin-top: 0.25rem;
   font-weight: 500;
}

/* Results Header */
.results-header {
   margin-bottom: 1.5rem;
}

.results-count {
   font-size: 1.1rem;
   color: #666;
   margin: 0;
}


/* No Results Message Styling */
.no-results-suggestions {
   list-style: none;
   padding: 0;
   margin-top: 1rem;
}

.no-results-suggestions li {
   padding: 0.5rem 0;
   border-bottom: 1px solid #e0e0e0;
   font-size: 0.95rem;
}

.no-results-suggestions li:last-child {
   border-bottom: none;
}

.no-results-suggestions a {
   color: #007cba;
   text-decoration: none;
   font-weight: 500;
}

.no-results-suggestions a:hover {
   text-decoration: underline;
}


.pub-contact {
   margin-bottom: 1.5rem;
   font-size: 0.9rem;
}

.pub-description {
   /*    margin: 0.5rem 0 0.75rem 0; */
   /*    color: #333; */
   /*    line-height: 1.5; */
}













.pub-contact > span {
   display: block;
   margin-bottom: 0.25rem;
   color: #555;
}

.pub-contact a {
   color: #007cba;
   text-decoration: none;
}

.pub-contact a:hover {
   text-decoration: underline;
}

.contact-phone::before {
   content: "📞 ";
   margin-right: 0.25rem;
}

.contact-email::before {
   content: "✉️ ";
   margin-right: 0.25rem;
}

.contact-website::before {
   content: "🌐 ";
   margin-right: 0.25rem;
}

/* Lease Badge in Listing */
.lease-badge-container {
   margin-bottom: 1rem;
}

.lease-available-badge {
   background: #ffc107;
   color: #000;
   padding: 0.25rem 0.75rem;
   border-radius: 12px;
   font-size: 0.8rem;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.5px;
}

.pub-actions {
   /*    border-top: 1px solid #eee; */
   /*    padding-top: 1rem; */
}

.view-more-link {
   display: inline-block;
   background: #007cba;
   color: white;
   padding: 0.5rem 1rem;
   border-radius: 4px;
   text-decoration: none;
   font-weight: 600;
   transition: background-color 0.3s ease;
}

.view-more-link:hover {
   background: #005a87;
   color: white;
}

/* No Results */
.no-results {
   text-align: center;
   padding: 3rem;
   background: #f8f9fa;
   border-radius: 8px;
}

.no-results h3 {
   margin: 0 0 1rem 0;
   color: #666;
}

.no-results p {
   margin: 0;
   color: #888;
}

.no-results a {
   color: #007cba;
   text-decoration: none;
   font-weight: 600;
}

.no-results a:hover {
   text-decoration: underline;
}





/* Pagination */
.pub-pagination {
   display: flex;
   justify-content: center;
   gap: 0.5rem;
   margin-top: 3rem;
}
.pub-pagination .page-numbers {
   font-size: 1.125rem;
   font-weight: 600;
   color: var(--wp--preset--color--black);
   display: inline-flex;
   align-items: center;
   justify-content: center;
   padding: 0.25rem 0.75rem;
   background: transparent;
   border: 2px solid #ddd;
   width: 44px;
   height: 44px;
   white-space: nowrap;
   line-height: 1;
   text-decoration: none;
   border-radius: 4px;
   transition: all 0.3s ease;
}
.pub-pagination .page-numbers.prev,
.pub-pagination .page-numbers.next {
   width: auto;
}
.pub-pagination .page-numbers:hover {
   background: var(--wp--preset--color--primary);
   color: var(--wp--preset--color--white);
   border-color: var(--wp--preset--color--primary);
}
.pub-pagination .page-numbers.current {
   background: var(--wp--preset--color--primary);
   color: var(--wp--preset--color--white);
   border-color: var(--wp--preset--color--primary);
}

@media (max-width: 575px) {
   .pub-pagination {
      gap: 0.625rem;
      flex-wrap: wrap;
   }
   .pub-pagination .page-numbers {
      font-size: 1rem;
   }
}

.results-header {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   align-items: center;
   padding-bottom: 1rem;
   border-bottom: 1px solid #eee;
   padding-top: 1rem;

   background: yellow;
}
