/* ===== DIRECTORIST JGL V2 CUSTOM STYLES ===== */

/* Listing card styling */
.atbd_single_listing {
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  transition: box-shadow 0.2s ease;
  overflow: hidden;
}
.atbd_single_listing:hover {
  box-shadow: 0 4px 16px rgba(0,63,0,0.12);
}

/* Listing title */
.atbd_listing_title a {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  color: #003F00;
}

/* Category badge */
.atbd_badge {
  background-color: #7E9C3C;
  border-radius: 4px;
}

/* Search bar button */
.directorist-search-form .btn-primary,
.directorist-btn-primary {
  background-color: #003F00;
  border-color: #003F00;
}
.directorist-search-form .btn-primary:hover,
.directorist-btn-primary:hover {
  background-color: #7E9C3C;
  border-color: #7E9C3C;
}

/* Category grid cards */
.atbd_category_single {
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.2s ease;
}
.atbd_category_single:hover {
  transform: translateY(-3px);
}

/* Listing image container */
.atbd_listing_image {
  border-radius: 8px 8px 0 0;
}

/* Contact button on single listing */
.atbd_director_contact_btn {
  background-color: #003F00;
  border-color: #003F00;
}
.atbd_director_contact_btn:hover {
  background-color: #7E9C3C;
  border-color: #7E9C3C;
}

/* Hide WooCommerce cart icon if still visible */
.site-header-cart,
.header-cart-wrap {
  display: none !important;
}
/* ===== SESSION 21 ADDITIONS ===== */

/* Directory grid: 2 columns instead of 4 */
.directorist-col-lg-3 {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
}

/* Mobile: single column on small screens */
@media (max-width: 768px) {
    .directorist-col-lg-3 {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* Push search bar below header with spacing */
.directorist-search-form-wrap,
.directorist-search-contents {
    margin-top: 30px;
    padding-top: 20px;
}

/* Give search bar a visible background */
.directorist-search-form-wrap {
    background-color: #f9f9f9;
    padding: 25px;
    border-radius: 8px;
}