/* =========================================================
   HEADER / NAVIGATION / OFFCANVAS (Helix Ultimate)
   ========================================================= */

/* Collapse menu earlier to avoid header wrap (992–1066px) */
@media (max-width: 1066px) {

  #offcanvas-toggler,
  .offcanvas-toggler,
  .sp-offcanvas-toggler {
    display: inline-flex !important;
    align-items: center;
  }

  #sp-menu,
  .sp-megamenu-wrapper,
  .sp-megamenu {
    display: none !important;
  }

  #sp-header .container,
  #sp-header .container-inner,
  #sp-header .row,
  #sp-header .d-flex {
    flex-wrap: nowrap !important;
  }

  #sp-header .logo,
  #sp-header .sp-brand,
  #sp-header .sp-brand-logo,
  #sp-header .sp-brand-text {
    white-space: nowrap;
  }

  #sp-header {
    padding-left: 10px;
    padding-right: 10px;
  }
}

/* Header height (tablet + mobile) */
@media (max-width: 991px),
       (max-width: 575px) {
  #sp-header {
    height: 65px;
    padding-top: 5px;
  }
}


/* =========================================================
   BUTTONS / CTAs
   ========================================================= */

/* Buy now */
.offer-buy-wrapper {
  border: 1px solid #D8A54A;
  background-color: #D8A54A;
  margin-top: 10px;
  text-transform: uppercase;
  border-radius: 10px;
  padding: 7px 25px;
  line-height: 30px;
  color: white;
  text-align: center;
}
.offer-buy-wrapper:hover {
  background-color: #85acab;
  border: 1px solid #85acab;
}
.offer-buy-btn {
  color: white;
}

/* Search directory button */
button.btn.btn-success.search-dir-button {
  background-color: #2b496b;
  border-color: #2b496b;
}
.btn.btn-success.search-dir-button {
  padding: 0px 14px;
}

/* JBD buttons */
.jbd-container .btn-success {
  background-color: #85ACAB;
  border-color: #85ACAB;
  color: #ffffff;
}
.jbd-container .btn-outline-success:hover {
  background-color: #D9A64A;
  border-color: #D9A64A;
  padding: 10px 15px;
}
.jbd-container .btn-primary {
  line-height: 1.1;
  text-transform: uppercase;
}
a.btn.btn-outline {
  background-color: #85ACAB;
  color: #ffffff;
  text-transform: uppercase;
  line-height: 1.1;
}
.jbd-container.listing-details .contact-actions .btn:hover {
  background-color: #D8A54A;
}


/* =========================================================
   TYPOGRAPHY / HEADINGS
   ========================================================= */

.jbd-container h1 {
  font-weight: 600;
}

#companies-search h1 {
  font-size: 24px;
  color: #ffffff;
  font-family: "DM Serif Display", sans-serif;
  font-weight: 500;
}

h1.sppb-addon-title {
  color: #85ACAB !important;
  font-weight: 500 !important;
}

div.jitem-title {
  font-family: "Open Sans", sans-serif;
}

.jbd-container .jitem-card .jitem-title > * {
  font-weight: 700;
  line-height: 1.2;
  font-size: 18px;
  color: #2b496b;
  margin-bottom: 5px;
}

.jbd-container .jitem-card .jitem-body {
  line-height: 1.2;
  font-size: 16px;
  color: #444444;
}

.jbd-container .result-item h3 {
  font-weight: normal;
  font-size: 22px;
}

.short-description {
  font-size: 16px;
  color: #444;
}

.ui-widget-content a {
  color: inherit;
}


/* =========================================================
   SIDEBAR / MODULES
   ========================================================= */

#sp-left .sp-module {
  background: #85ACAB;
}

#sp-left .sp-module ul > li > a,
#sp-right .sp-module ul > li > a {
  display: block;
  padding: 10px 0;
  line-height: 20px;
}

#sp-left .sp-module .sp-module-title,
#sp-right .sp-module .sp-module-title {
  font-weight: normal;
  color: #85acab;
}


/* =========================================================
   LISTING CARDS / RESULTS
   ========================================================= */

.jbd-container .jitem-card .jitem-img-wrap .card-hoverable {
  display: none;
}

a.item-name {
  font-weight: 700;
}

.jbd-container .result-item .horizontal-elements {
  margin-bottom: 0px;
}

.jbd-container .result-item .item-result-type {
  font-weight: 500;
  text-transform: uppercase;
  font-size: 16px;
  color: inherit;
}

div.view-all-items {
  background-color: #ededed;
  padding: 8px 14px;
  width: 100px;
  border-radius: 5px;
  text-align: center;
  margin-top: 25px;
  font-weight: 600;
}
div.view-all-items a:hover {
  color: #85ACAB;
}


/* =========================================================
   LISTING DETAILS / OFFERS / REVIEWS (HIDDEN)
   ========================================================= */

div.offer-dates,
div.company-info-review,
.jbd-container .offer-details .jbd-coupon,
div.rating-info,
.jitem-rating,
.view-offer .no-review,
.view-offer .add-review-link,
.view-offer #add-review,
.view-offer .rating-info {
  display: none !important;
}

i.la.la-star {
  display: none;
}


/* =========================================================
   PRICING / BUSINESS DETAILS / EVENTS
   ========================================================= */

span.price,
.jbd-container .offer-price .price {
  font-family: 'Open Sans', sans-serif;
  color: #3e3e3e !important;
}

.jbd-container .business-details {
  line-height: 1.1;
}

.jbd-container .event-container h1 {
  color: #2b496b;
}

div.event-main-info {
  background-color: #D9A64A;
  border-radius: 15px;
}

.jbd-container #event-map {
  display: none;
}
.jbd-container ul.event-list {
    font-size: 13px;
}
.jbd-container .event-location {
  color: #444444;
}

/* =========================================================
   SOCIAL ICONS
   ========================================================= */

.jbd-container .socials-network a {
  color: #85acab;
  border: 2px solid #85acab;
}
.jbd-container .socials-network a:hover {
  color: #D8A54A;
  border: 2px solid #D8A54A;
}


/* =========================================================
   GALLERY / IMAGES / THUMBNAILS
   ========================================================= */

.gallery-slider {
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}

.gallery-slider img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  border-radius: 12px;
}

/* Tablet */
@media (max-width: 992px) {
  .gallery-slider img {
    height: 340px;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .gallery-slider img {
    height: 260px;
  }
}

.gallery-thumbnails {
  max-width: 700px;
  margin: 12px auto 0;
}

.thumbnail-image {
  width: 80px;
  height: 80px;
  object-fit: cover;
  border-radius: 6px;
}

.swiper-slide-thumb-active .thumbnail-image {
  border: 2px solid #d8a84c;
}


/* =========================================================
   MOBILE FIXES
   ========================================================= */

@media (max-width: 768px) {
  .jbd-container .gallery-thumbnails {
    display: block !important;
    opacity: 1 !important;
  }
}

@media (max-width: 480px) {
  #sp-footer #sp-footer2 {
    text-align: center;
  }
  #sp-main-body {
    padding: 50px 0;
  }
}


/* =========================================================
   SEARCH / MISC
   ========================================================= */

.view-search .item-name span:first-child {
  display: none !important;
}

.view-search .reset-dir-button-no-result {
  max-width: 50%;
  font-size: 17px;
  line-height: 40px;
  height: 40px;
  background: #000;
  color: #fff;
  font-weight: bold;
  border-radius: 18px;
}
