/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Bicol Travel Guides
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 5,700+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.11.2.1754841678
Updated: 2025-08-10 16:01:18
/* ================================
   Bicol Business Directory CSS
   ================================ */

/* ---------- Search Bar & Filter ---------- */
.bicol-search-bar,
.search-filter,
.business-filter-form {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  padding: 18px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.bicol-search-bar input,
.bicol-search-bar select,
.bicol-search-bar button,
.search-filter select,
.search-filter input,
.search-filter button,
.business-filter-form select,
.business-filter-form input,
.business-filter-form button {
  padding: 10px;
  font-size: 15px;
  border: 1px solid #ddd;
  border-radius: 6px;
}

.bicol-search-bar button,
.search-filter button,
.business-filter-form button {
  background: #0068ff;
  color: #fff;
  border: none;
  cursor: pointer;
  font-weight: 600;
  transition: background-color 0.2s ease;
}

.bicol-search-bar button:hover,
.search-filter button:hover,
.business-filter-form button:hover {
  background: #0052cc;
}

@media (max-width: 768px) {
  .search-filter,
  .business-filter-form {
    flex-direction: column;
  }
  .search-filter select,
  .search-filter input,
  .search-filter button,
  .business-filter-form select,
  .business-filter-form input,
  .business-filter-form button {
    width: 100%;
  }
}
/* ---------- General Styles ---------- */
body {
  font-family: 'Open Sans', sans-serif;
  margin: 0;
  padding: 0;
  background-color: #f9fafc;
  color: #333;
  line-height: 1.7;
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 15px;
}

/* ---------- Heading ---------- */
.bicol-results-heading {
  text-align: center;
  font-size: clamp(1.8em, 2.3em, 3em);
  font-weight: 700;
  margin-bottom: 30px;
  color: #233a7a;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: -0.5px;
  border-bottom: 2px solid #0067fc;
  display: inline-block;
  padding-bottom: 5px;
}

/* ---------- Results Layout (Grid Style) ---------- */
.bicol-results-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* ✅ exactly 3 cards per row */
  gap: 25px;
  width: 100%;
  max-width: 1200px;
  justify-content: center;
  align-items: stretch; /* make all grid items same height */
}

/* Tablet */
@media (max-width: 1024px) {
  .bicol-results-grid {
    grid-template-columns: repeat(2, 1fr); /* 2 cards per row on tablet */
    gap: 20px;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .bicol-results-grid {
    grid-template-columns: 1fr; /* single column on mobile */
    gap: 20px;
  }
}
/* ---------- Business Card ---------- */
.business-card {
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 0; /* no padding on outer container */
}

/* Thumbnail */
.business-card .business-thumb {
  height: 200px;
  overflow: hidden;
  border-radius: 8px 8px 0 0;
}

/* Details */
.business-card .business-details {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 18px; /* ✅ add spacing inside the card */
  gap: 12px; /* ✅ vertical spacing between each section */
}

/* Title */
.business-card .business-title {
  font-size: 1.2rem;
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  color: #233a7a;
  line-height: 1.3;
  margin: 0; /* reset margin, spacing is controlled by gap */
}

/* Meta Info */
.business-card .business-meta {
  font-size: 0.9rem;
  color: #666;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* Social Icons */
.business-card .business-socials {
  margin-top: auto; /* pushes socials + button to bottom */
  display: flex;
  align-items: center;
  gap: 12px;
}

/* Compact CTA Button for Paid Business with Landing Page */
.bicol-business-card .bicol-cta-btn {
  display: block;
  padding: 8px 14px; /* smaller, more compact padding */
  width: fit-content; /* width adjusts to text */
  margin: 12px auto 0; /* centered with top spacing */
  background-color: #0067fc;
  color: #fff;
  text-decoration: none;
  border-radius: 25px; /* slightly smaller pill shape for compact look */
  font-size: 0.9rem; /* slightly smaller font */
  font-weight: 600;
  text-align: left;
  box-shadow: 0 3px 8px rgba(0, 103, 252, 0.25); /* slightly lighter shadow */
  transition: all 0.3s ease;
}

.bicol-business-card .bicol-cta-btn:hover {
  background-color: #004bbd;
  box-shadow: 0 5px 12px rgba(0, 103, 252, 0.35);
  transform: translateY(-1.5px); /* subtle lift */
}
/* Business card contact and location spacing */
.business-location {
    margin-top: 10px;  /* space above the contact/location block */
    font-size: 0.95rem;
    color: #555;
    line-height: 1.5;
}

.business-location .contact,
.business-location .location {
    display: block; /* each on its own line */
    margin-bottom: 5px; /* space between contact and location */
}

.business-location i {
    margin-right: 6px; /* spacing between icon and text */
    color: #233a7a; /* optional icon color */
}
/* ---------- Responsive ---------- */

/* Tablet */
@media (max-width: 1024px) {
  .bicol-results-grid {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  }
}

/* Mobile */
@media (max-width: 768px) {
  .bicol-results-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
/* Business Card Layout Fix */
.bicol-details {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.bicol-excerpt {
  flex-grow: 1; /* pushes footer down */
}

.bicol-card-footer {
  margin-top: auto; /* keeps footer at bottom */
}