.home .hp-listing__attribute.hp-listing__attribute-- Ranking {
	display:none;
}
  .star-rating span:before {
            color: #ff0000; /* Replace with yellow color */
        }
/* FORCE homepage category/posts grid into one horizontal row */

.wp-block-themeisle-blocks-posts-grid ul,
.wp-block-themeisle-blocks-posts-grid .o-posts-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 20px;
}

/* Force each item into fixed width */
.wp-block-themeisle-blocks-posts-grid li,
.wp-block-themeisle-blocks-posts-grid article {
    flex: 0 0 auto !important;
    width:100px !important;
}

@media only screen and (max-width: 47.99em) {
       .hp-listing-category--view-block .hp-listing-category__header {
           display: block !important;
       }
.hp-row > div {
width: 100% !important;
flex: 0 0 50% !important;
max-width: 100% !important;
padding: 10px;
}	
	
}
/* Listings inside categories: 2 per row on mobile */
@media (max-width: 768px) {

  .hp-listings .hp-col-xs-12,
  .hp-listings .hp-col-sm-6,
  .hp-listings .hp-col-md-4,
  .hp-listings .hp-col-lg-3 {
      width: 50% !important;
      max-width: 50% !important;
      flex: 0 50% !important;
  }

  .hp-listings .hp-listing {
      width: 100%;
  }

}
body, p, h1, h2, h3, h4, h5, h6, li, span, div {
  -webkit-user-select: none;  /* Chrome/Safari */
  -moz-user-select: none;     /* Firefox */
  -ms-user-select: none;      /* IE/Edge */
  user-select: none;          /* Standard */
}

/* ===== HIVEPRESS AMAZON STYLE SEARCH ===== */

/* Turn grid into horizontal bar */
.hp-form--search .hp-row {
    display: flex !important;
    flex-wrap: nowrap !important;
    border: 2px solid #f0ad4e;
    border-radius: 6px;
    overflow: hidden;
    max-width: 900px;
    margin: auto;
}

/* Remove spacing between fields */
.hp-form--search .hp-col {
    padding: 0 !important;
    margin: 0 !important;
}

/* Category dropdown */
.hp-form--search select {
    min-width: 180px;
    border: none !important;
    background: #f7f7f7;
    padding: 12px;
    font-size: 14px;
}

/* Search input */
.hp-form--search input[type="search"],
.hp-form--search input[type="text"] {
    flex: 1;
    border: none !important;
    padding: 12px;
    font-size: 15px;
}

/* Search button */
.hp-form--search button {
    background: #f0ad4e;
    border: none !important;
    padding: 12px 22px;
    cursor: pointer;
}

/* Button hover */
.hp-form--search button:hover {
    background: #e69500;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .hp-form--search .hp-row {
        flex-wrap: wrap !important;
    }

    .hp-form--search select,
    .hp-form--search input,
    .hp-form--search button {
        width: 100%;
    }
}

/* Hides the location suggestion field */
input[name="location"],
input[id*="location"],
.search-bar .location {
  display: none !important;
}

/* Hide Locate Me / Navigator button */
.leaflet-control-locate,
.hp-map__geolocation,
.hp-map__button--geolocation {
    display: none !important;
}

/* Make search bar full width */
.hp-form--primary {
    max-width: 100% !important;
    width: 100%;
}

/* Make fields fill space evenly */
.hp-form--primary .hp-row {
    width: 100%;
}

/* Adjust field height */
.hp-form--primary .hp-field {
    height: 30px !important;
    font-size: 14px;
}

/* Remove "Search" text */
.hp-form--primary button {
    font-size: 0;
    height: 44px !important;
    width: 60px;
}

/* Add lens icon only */
.hp-form--primary button:before {
    content: "\f002";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 16px;
}

/* Modern rounded style */
.hp-form--primary .hp-field {
    border-radius: 6px;
}

.hp-form--primary button {
    border-radius: 6px;
}

/* Force container full width */
.hp-hero__content {
    max-width: 100% !important;
}

/* Hide Search text completely */
.hp-form--primary button span {
    display: none !important;
}

/* Make button fixed width */
.hp-form--primary button {
    width: 55px;
    height: 44px !important;
    font-size: 0;
}

/* Add lens icon */
.hp-form--primary button:before {
    content: "\f002";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 16px;
}

/* Keep search icon visible permanently */
.header-search,
.hp-header__search,
.search-toggle {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Optional: keep it fixed in position */
.header-search {
    position: fixed;
    top: 15px;
    right: 20px;
    z-index: 9999;
}

/* Hide the HivePress search form */
.hp-form--listing-search {
    display: none;
    position: absolute;
    right: 20px;
    top: 80px;
    width: 600px;
    background: #ffffff;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    z-index: 9999;
}

/* Show when active */
body.search-open 
.hp-form--listing-search {
    display: block;
}

/* Search icon button */
.hp-search-toggle-btn {
    font-size: 22px;
    cursor: pointer;
    background: none;
    border: none;
}

/* Hide HivePress search initially */
.hp-form--listing-search {
    display: none;
    position: absolute;
    right: 20px;
    top: 80px;
    width: 700px;
    background: #fff;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
    z-index: 9999;
}

/* Show search when active */
body.search-open 
.hp-form--listing-search {
    display: block;
}

/* Search icon styling */
.hp-search-toggle-btn {
    font-size: 22px;
    cursor: pointer;
    background: none;
    border: none;
}

img {
  display: block;
}

.hero, 
.banner, 
.header, 
section {
  margin: 0;
  padding: 0;
  line-height: 0;
}

#review {
background: transparent !important;
border: none !important;
box-shadow: none !important;
min-height: 0 !important;
padding: 0 !important;
margin: 0 !important;
}

/* Remove the white line from review section without cutting hero */
#review {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove pseudo-elements that can add extra lines */
#review:before,
#review:after {
    display: none !important;
}

/* Adjust homepage hero spacing so it fills correctly */
.home .site-content,
.home .content-area {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.hero-section {
  background-image: url('your-image.jpg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;  /* or cover + object‑position tweaks */
}

/* Hero Section Full Height */
.hero {
  height: 100vh;           /* full viewport height */
  min-height: 600;       /* optional minimum height */
  width: 100%;             /* full width */
  overflow: hidden;        /* prevent scroll overflow */
  position: relative;      /* for layering content */
  display: flex;           /* center content */
  align-items: center;     /* vertical centering */
  justify-content: center; /* horizontal centering */
  background-size: cover;  /* ensure background covers container */
  background-position: center center; /* center background */
  z-index: 1;              /* ensure it sits above other elements */
}

/* Hero Images or Videos */
.hero img, 
.hero video {
  width: 100%;
  height: 100%;
  object-fit: cover; /* maintain aspect ratio while covering area */
  display: block;
}

/* Hero Text or Content */
.hero .hero-content {
  position: absolute;   /* on top of image/video */
  z-index: 2;           /* above background */
  text-align: center;
  padding: 0 20px;      /* small padding for smaller screens */
  color: #fff;          /* example text color */
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .hero {
    min-height: 500px;  /* slightly smaller for tablets/mobile */
  }
  .hero .hero-content {
    font-size: 1.2rem;  /* adjust text size */
  }
}

/* Fix thin header hero banner */
.header-hero {
    min-height: 500px !important;
    height: 600px !important;
    background-size: cover !important;
    background-position: center center !important;
}

/* Ensure large hero variation expands */
.header-hero--large {
    min-height: 600px !important;
}

/* Add spacing so content sits nicely */
.header-hero {
    padding-top: 120px !important;
    padding-bottom: 120px !important;
}

/* Ensure hero is relative for overlay */
.hero {
  position: relative !important; /* force positioning */
  width: 100% !important;
  height: 400px; /* adjust as needed */
  background: url('your-hero-image.jpg') center/cover no-repeat !important;
}

/* Search box overlay */
.hero .search-box {
  position: absolute !important; /* overlay on hero */
  top: 20px !important; /* vertical placement */
  left: 50% !important; /* center horizontally */
  transform: translateX(-50%) !important; /* exact center */
  width: 80% !important; /* narrow width */
  max-width: 400px !important;
  z-index: 999 !important; /* ensure it’s above hero image */
}

/* Search input styling */
.hero .search-box input {
  width: 100% !important;
  padding: 10px 15px !important;
  border-radius: 8px !important;
  border: 1px solid #ccc !important;
  font-size: 16px !important;
}

/* Mobile-specific adjustments */
@media (max-width: 768px) {
  .hero {
    height: 300px !important;
  }
  .hero .search-box {
    width: 90% !important;
    max-width: 300px !important;
    top: 15px !important;
  }
  .hero .search-box input {
    font-size: 14px !important;
    padding: 8px 12px !important;
  }
}

/* HARD OVERRIDE - guaranteed fix */

@media (max-width: 767px) {

  .hp-grid .hp-grid__item {
    width: 50% !important;
    max-width: 50% !important;
    flex-basis: 50% !important;
  }

}

/* Equal card heights */

.hp-listing-category {
  height: 100%;
}

.hp-listing-category__description {
  min-height: 42px;
}

/* Tablet layout */

@media (min-width: 768px) and (max-width: 1024px) {

  .hp-grid__item {
    width: 33.33% !important;
    max-width: 33.33% !important;
    flex: 0 0 33.33% !important;
  }

}

.hero-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 40, 120, 0.35); /* blue overlay */
  z-index: 1;
}

.hero-section * {
  position: relative;
  z-index: 2;
}

.hero,
.hero-section,
.page-header,
.header-hero {
    height: 420px !important;
    min-height: 400px !important;
}

/* Mobile-only hero fix with bottom crop */
@media (max-width: 768px) {
    /* Main hero section */
    .hero,
    .hero-section,
    .page-header,
    .header-hero {
        height: 220px !important;
        min-height: 220px !important;
        max-height: 220px !important;
        overflow: hidden !important;
        position: relative !important;
        display: flex !important;
        justify-content: flex-start !important; /* content stays top */
        align-items: center !important;
        background-size: cover !important;
        background-position: top center !important; /* crop bottom */
    }

    /* Inner page builder rows/sections */
    .hero .elementor-container,
    .hero-section .elementor-container,
    .page-header .elementor-container,
    .header-hero .elementor-container,
    .hero .wpb_row,
    .hero-section .wpb_row,
    .page-header .wpb_row,
    .header-hero .wpb_row {
        height: 100% !important;
        min-height: 100% !important;
        max-height: 100% !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        overflow: visible !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
    }

    /* Hero text adjustments */
    .hero h1,
    .hero-section h1,
    .page-header h1,
    .header-hero h1 {
        font-size: 1.8rem !important;
        line-height: 2rem !important;
        text-align: center !important;
    }

    .hero p,
    .hero-section p,
    .page-header p,
    .header-hero p {
        font-size: 1rem !important;
        text-align: center !important;
    }
}

/* Mobile only styles */
@media (max-width: 768px) {
  #mobile-search-form {
    display: none; /* hidden initially */
    margin-top: 5px;
  }

  #mobile-search-form input {
    width: 100%;
    padding: 8px;
    box-sizing: border-box;
  }

  #mobile-search-form button {
    width: 100%;
    padding: 8px;
    margin-top: 5px;
  }

  /* Hide the desktop search if needed */
  .search-container { 
    display: none; 
  }
}
