.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;
}


/* 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;
}

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

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: 250px !important;
    height: 250px !important;
    background-size: cover !important;
    background-position: center center !important;
}

/* Ensure large hero variation expands */
.header-hero--large {
    min-height: 250px !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: 300px !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; 
  }
}

/

/* ===== FINAL HERO HEIGHT FIX (TASKHIVE) ===== */

/* Control overall header height */
.site-header {

    padding-bottom: 0 !important;
}

/* Force hero height */
.site-header .header-hero.header-hero--large {

    height: 50px !important;
    min-height: 60px !important;
    max-height: 40px !important;

}

/* Match inner content */
.site-header .header-hero__content {

    height: 200px !important;

    display: flex;
    align-items: center;
}

/* Make TaskHive hero thinner */
.hp-page__header,
.hp-hero {
    min-height: 0px !important;
    height: 0px !important;
}

/* Stop zooming and cropping */
.hp-page__header {
    background-size: contain !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

.hp-page__header,
.hp-page__header-inner {
    height: 50px !important;
    min-height: 50px !important;
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

/* Overall hero container */
.hp-page__header,
.hp-page__header-inner,
.site-header .header-hero,
.site-header .header-hero__content {
    height: 50px !important;       /* Adjust height here */
    min-height: 50px !important;
    max-height: 50px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;   /* Prevent overflow */
}
/* Stop TaskHive from zooming/cropping hero background */
.hp-page__header,
.hp-page__header-inner,
.hp-hero {
    background-size: contain !important;     /* Entire image fits */
    background-repeat: no-repeat !important;
    background-position: center !important;
}

.site-header .header-hero__content,
.hp-page__header-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;  /* Optional: center text/logo */
    height: 100% !important;
}

.header-hero__content .hp-form--wide {
    position: absolute;
    top: 50%;        /* vertical center */
    left: 50%;       /* horizontal center */
    transform: translate(-50%, -50%);
    width: 80%;      /* adjust width as needed */
    max-width: 800px;
    z-index: 10;     /* ensure it appears above the hero image */
}

.header-hero__content {
    position: relative;  /* required for absolute positioning inside */
    height: 600px;       /* adjust as needed for your hero image */
    display: flex;       /* optional: centers content vertically */
    align-items: center; /* vertical centering using flex */
    justify-content: center; /* horizontal centering */
}

.header-hero__content .hp-form--wide {
    position: relative;    /* reset absolute */
    width: 80%;            /* adjust width */
    max-width: 800px;
    background: rgba(255, 255, 255, 0.9); /* optional for contrast */
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}

@media (max-width: 768px) {
    .header-hero__content {
        height: auto;   /* allow hero to shrink on mobile */
        padding: 40px 20px;
    }
    .header-hero__content .hp-form--wide {
        width: 90%;
        padding: 15px;
    }
}

.header-hero__content {
    position: relative;    /* relative container for absolute form */
    height: 600px;         /* set hero height */
    background-size: cover; /* ensure hero image fills area */
    background-position: center;
}

.header-hero__content form.hp-form--wide {
    position: absolute;
    top: 50%;              /* vertical center */
    left: 50%;             /* horizontal center */
    transform: translate(-50%, -50%);
    width: 80%;            /* adjust as needed */
    max-width: 800px;
    background: rgba(255, 255, 255, 0.9);
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    z-index: 10;           /* ensure form is above everything */
}

@media (max-width: 768px) {
    .header-hero__content {
        height: auto;        /* allow hero to shrink */
        padding: 40px 10px;
    }
    .header-hero__content form.hp-form--wide {
        width: 90%;
        padding: 15px;
    }
}

/* Make sure the hero has relative positioning */
.header-hero__content {
    position: relative;
}

/* Make hero section positionable */
.header-hero {
    position: relative;
}

/* Make hero section positionable */
.header-hero {
    position: relative;
}

/* Make yellow hero positionable */
.header-hero {
    position: relative;
}

/* Move the search emoji icon */
.header-navbar img.emoji[alt="🔍"] {
    position: absolute !important;

    /* Move onto yellow hero */
    top:75px;     /* vertical position */
    right: 40px;    /* horizontal position */

    z-index: 9999;

    background: #ffffff;
    padding: 10px;
    border-radius: 8px;

    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

/* Make hero area positionable */
.header-hero {
    position: relative;
}

/* Ensure hero allows interaction */
.header-hero {
    position: relative;
}

.hero-section {
    position: relative;
    width: 100%;
    height: 500px; /* Adjust height to your hero image */
    overflow: hidden;
}

.hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ensures image covers the area */
}

/* Hero Section */
.hero-section {
    position: relative;
    width: 100%;
    height: 500px; /* Adjust for desktop */
    overflow: hidden;
}

.hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Force centering of all category items */
.wpa-block-categories {
    display: flex !important;            /* override plugin flex settings */
    justify-content: center !important;  /* center all items horizontally */
    flex-wrap: wrap !important;          /* allow wrapping if too many icons */
    gap: 15px !important;                /* space between icons */
}

/* Optional: ensure each icon+label block behaves nicely */
.wpa-block-categories-item {
    display: flex !important;
    flex-direction: column !important;   /* icon above label */
    align-items: center !important;      /* center inside each block */
}

#query {
    display: none;
}

button.wpa-btn-primary {
    display: none;
}

/* Control hero search container width */
.hp-hero__content {
    max-width: 50% !important;
    margin: 0 auto !important;
}

/* Keep search form centered */
.hp-form--listing-search {
    width: 50% !important;
}

/* Mobile full width */
@media (max-width: 768px) {
    .hp-hero__content {
        max-width: 50% !important;
    }
}

/* TaskHive Listing Cards */
.hp-listing--view-block {
background: #fff;
border-radius: 12px;
box-shadow: 0 4px 12px rgba(0,0,0,0.08);
padding: 15px;
transition: 0.3s ease;
}

.hp-listing--view-block:hover {
transform: translateY(-5px);
box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}

/* Grid layout */
.hp-listings__items {
display: grid !important;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 20px;
}

/* Remove spacing */
.entry-meta {
display:none !important;
margin:0 !important;
padding:0 !important;
}

.hp-search-toggle {
    cursor: pointer;
    z-index: 10000;
    position: relative;
}
.hp-search-toggle {
    cursor: pointer;
    z-index: 10000;
    position: relative;
}

#search-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-100%);
  transition: transform 0.3s ease;
  z-index: 9999;
}

#search-overlay.active {
  transform: translateY(0);
}

#search-overlay input {
  width: 60%;
  padding: 15px;
  font-size: 24px;
  border: none;
  border-bottom: 2px solid black;
  outline: none;
}

#custom-search {
  position: absolute;
  top: 80px;
  right: 20px;
  width: 320px;
  background: #fff;
  padding: 20px;
  box-shadow: 0 15px 40px rgba(0,0,0,0.1);
  border-radius: 8px;
  z-index: 999;
}