/*.pmst-gallery-wrapper {*/ /* or 1100px, based on your layout 
     /* center it */
/*    align-items: center;*/
/*  flex-direction: row;*/
/*  flex-wrap: nowrap;*/
/*  gap: 30px;*/
/*  align-items: flex-start;*/
/*  padding: 20px;*/
/*  background: #121212;*/
/*  color: #fff;*/
/*  font-family: sans-serif;*/
/*  box-sizing: border-box;*/
/*}*/
body.page-id-25440 .site-main,
body.page-id-25440 .ct-container-full,
body.page-id-25440 #main-container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.pmst-search-image {
    height: 20px;
    object-fit: contain;
    margin-right: 1px;
}
.pmst-gallery-wrapper {
    max-width: 1300px;
    margin: 0 auto; /* Centers the wrapper inside its parent */
    
    display: flex;
    flex-wrap: wrap; /* allow wrapping if needed */
    justify-content: center; /* center items horizontally */
    align-items: center; /* center items vertically if there's height */
    
    gap: 30px;
    padding: 20px;
    background: #ddd;
    color: #fff;
    font-family: sans-serif;
    box-sizing: border-box;
}
.pmst-sidebar {
  width: 60%;
  max-width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 20px 0;
}

.pmst-post-gallery {
  flex: 1;
  min-width: 0;
  box-sizing: border-box;
}

.pmst-modern-search {
  display: flex;
  justify-content: center;
  margin: 30px auto;
  padding: 0 15px;
}

.pmst-modern-box {
  display: flex;
  align-items: center;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  overflow: hidden;
  width: 100%;
  max-width: 700px;
  height: 48px;
}

.pmst-dropdown {
  width: 30%;
  border: none;
  background: transparent;
  padding: 4.0.1.0px;
  font-size: 16px;
  color: #212121 !important;
  border-right: 1px solid #ddd;
  outline: none;
  appearance: none;
  cursor: pointer;
}

.pmst-input {
  flex: 1;
  border: none;
  padding: 1px;
  font-size: 16px;
  color: #212121 !important;
  outline: none;
}

.pmst-search-icon {
  background: #fe5252;
  border: none;
  color: #fff;
  font-size: 18px;
  padding: 0 16px;
  height: 100%;
  display: flex;
  align-items: center;
  cursor: pointer;
  transition: background 0.3s ease;
}

.pmst-search-icon:hover {
  background: #e64040;
}
.pmst-hero-banner {
  background: url('https://nepalicommunityhub.com/wp-content/plugins/pmst-all-service-post/assets/ChatGPT%20Image%20Jun%2020%2C%202025%2C%2009_58_57%20PM.png') center top/cover no-repeat;
  padding: 100px 20px 60px;
  position: relative;
  text-align: center;
  color: #fff;
  border-radius: 10px;
  margin-bottom: 40px;
  height: 520px; /* increase this to reveal more top area */
   
}

.pmst-hero-overlay {
  background: rgba(255, 255, 255, 0.6);
  padding: 40px 20px;
  border-radius: 10px;
  max-width: 900px;
  margin: auto;
}

.pmst-hero-title {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 10px;
}

.pmst-hero-subtitle {
  font-size: 16px;
  margin-bottom: 30px;
  color: #322B2B;
}


@media screen and (max-width: 600px) {
  .pmst-modern-box {
    flex-direction: column;
    height: auto;
    width: 100%;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
  }

  .pmst-dropdown{
      width: 100%;
    border: none;
    font-size: 16px;
    padding: 10px 16px;
  }
  .pmst-input{
      width: 100%;
    border: none;
    font-size: 16px;
    padding: 10px 18px !important;
  }
  .pmst-search-icon {
    width: 100%;
    border: none;
    font-size: 16px;
    padding: 10px 16px;
    box-sizing: border-box;
    color: #212121;
  }

  .pmst-dropdown {
    background: #fff;
    border-bottom: 1px solid #eee;
  }

  .pmst-input {
    background: #fff;
    border-bottom: 1px solid #eee;
  }

  .pmst-search-icon {
    background: #fe5252;
    color: #fff;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 16px;
    border-radius: 0 0 12px 12px;
  }

  .pmst-search-icon:hover {
    background: #e64040;
  }
  .pmst-hero-overlay {
  
  padding-bottom: 2px;
  border-radius: 10px;
  
}
}








.pmst-gallery-search-form .pmst-reset {
  padding: 10px 18px;
  background: #fe5252;
  color: #fff;
  font-weight: bold;
  border-radius: 6px;
  border: none;
  text-decoration: none;
  height: 42px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-sizing: border-box;
}



.pmst-gallery-search-form .pmst-reset:hover {
  opacity: 0.9;
}

/* Hide the default page title */
.page h1.entry-title,
.page .page-title {
    display: none !important;
}



/* === Post Grid === */
.pmst-post-gallery .pmst-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
}

.pmst-grid-item {
  background: #9e9e9e;
  padding: 10px;
  border-radius: 8px;
  text-align: center;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* === Thumbnail Image === */
.pmst-grid-item img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  object-position: top center;
  border-radius: 10px;
  background-color: #111;
  display: block;
}

/* === Post Info === */
.pmst-grid-item h4 {
  margin-top: 10px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
}

.pmst-meta {
  font-size: 12px;
  color: #aaa;
  margin-top: 5px;
}

.pmst-excerpt {
  font-size: 13px;
  color: #ccc;
  margin: 10px 0;
}

.pmst-readmore {
  margin-top: auto;
  display: inline-block;
  background: var(--theme-palette-color-6);
  padding: 6px 12px;
  border-radius: 4px;
  text-decoration: none;
  font-size: 13px;
}

/* === Pagination === */
.pmst-pagination {
  margin-top: 30px;
  text-align: center;
}

.pmst-pagination .page-numbers {
  display: inline-block;
  margin: 0 5px;
  padding: 6px 12px;
  background: #333;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
}

.pmst-pagination .current {
  background: #fe5252;
}

/* === Responsive (Mobile/Tablet) === */
/*@media screen and (max-width: 768px) {*/
/*  .pmst-gallery-wrapper {*/
/*    flex-direction: column !important;*/
/*  }*/





.pmst-gallery-search-form .pmst-reset {
  padding: 10px 18px;
  background: #fe5252;
  color: #fff;
  font-weight: bold;
  border-radius: 6px;
  border: none;
  text-decoration: none;
  height: 42px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-sizing: border-box;
}

.pmst-gallery-search-form .pmst-reset {
  width: 100%;
  margin-top: 15px;
}

.pmst-load-more-btn {
    background-color: #ff4b4b;
    color: #fff;
    padding: 10px 30px;
    font-size: 16px;
    justify-content: center;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    margin-top: 20px;
    transition: background 0.3s ease;
}

.pmst-load-more-btn:hover {
    background-color: #d93c3c;
}
.pmst-load-more-wrap {
    text-align: center;
    margin: 30px 0;
}


.pmst-filter-bar {
  width: 100%;
  max-width: 1200px;
  margin: 20px auto;
  padding: 15px 20px;
  background: #ddd;
  border-radius: 10px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}

/*@media (max-width: 768px) {*/
/*  .pmst-filter-bar {*/
/*    flex-direction: column;*/
/*    align-items: flex-start;*/
/*  }*/

/*  #pmst-location-form {*/
/*    flex-direction: column;*/
/*    align-items: flex-start;*/
/*    width: 100%;*/
/*  }*/

/*  #pmst-location-input {*/
/*    width: 100%;*/
/*  }*/

/*  .pmst-location-submit {*/
/*    width: 100%;*/
/*  }*/
/*}*/


/* Default inactive location button */
#detect-location.location-inactive {
  background-color: #444 !important;
  border: 1px solid #444;
  color: #ccc;
  opacity: 0.85;
}

/* Active location button style */
#detect-location.location-active {
  background-color: #FE5252 !important;
  border: 2px solid #fff;
  color: #fff;
  font-weight: bold;
  box-shadow: 0 0 8px rgba(254, 82, 82, 0.5);
}
/*@media (max-width: 768px) {*/
/*  #pmst-location-form {*/
/*    flex-direction: column;*/
/*    align-items: stretch;*/
/*  }*/

/*  #pmst-location-form > div {*/
/*    width: 100%;*/
/*  }*/

/*  .pmst-or-divider {*/
/*    display: none;*/
/*  }*/

/*  .pmst-location-submit {*/
/*    width: 100%;*/
/*  }*/
/*}*/


.pmst-service-type {
  font-size: 13px;
  color: #aaa;
  margin-bottom: 5px;
  text-transform: capitalize;
}
.pmst-card-content h4 {
  color: #1d1d1d;
  font-size: 16px;
  margin-bottom: 8px;
  line-height: 1.4;
  height: 2.8em;                  /* 1.4 * 2 lines */
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;         /* Show max 2 lines */
  -webkit-box-orient: vertical;
}
.pmst-thumb-wrap{
    position: relative;
    border-radius: 6px;
    overflow: hidden;
}
.pmst-price-badge{
    position: absolute;
    bottom: 8px;
    right: 8px;
    background: #ffe6e6;
    color: #c00;
    font-weight: 700;
    padding: 3px 8px;
    font-size: 13px;
    border-radius: 3px;
    line-height: 1;
    box-shadow: 0 1px 3px rgba(0,0,0,.25);
}
#pmst-location-form {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    width: 100%;
    align-items: center;
    margin-top: 15px;
  }

  #pmst-location-form .form-block {
    flex: 1 1 100%;
  }

  #pmst-location-form label {
    color: #fff;
    font-weight: 600;
    margin-right: 8px;
    white-space: nowrap;
  }

  #pmst-location-form input,
  #pmst-location-form select {
    padding: 10px 14px;
    border-radius: 6px;
    border: 1px solid #444;
    background: var(--theme-palette-color-6);
    color: var(--theme-palette-color-3);
    width: 100%;
    box-sizing: border-box;
  }

  #pmst-location-form button {
    padding: 10px 16px;
    border-radius: 6px;
    cursor: pointer;
    border: none;
    width: 100%;
  }

  #detect-location {
    background: #444;
    color: #fff;
  }

  .pmst-location-submit {
    background: #FE5252;
    color: #fff;
  }

  /* Desktop layout */
  @media (min-width: 768px) {
    #pmst-location-form {
      flex-wrap: nowrap;
    }

    #pmst-location-form .form-block {
      flex: 1;
    }

    #pmst-location-form .form-block.btn {
      flex: 0 0 auto;
      width: auto;
    }

    #pmst-location-form input,
    #pmst-location-form select {
      width: 100%;
    }

    #pmst-location-form button {
      width: auto;
    }

    #pmst-location-form .label-wrap {
      display: flex;
      align-items: center;
      gap: 8px;
    }
  }
/* === PMST CATEGORY DROPDOWN STYLING === */
#pmst-cat {
  /*background-color: #f2f5f7;*/
  color: #fff;
  padding: 8px 12px;
  font-size: 15px;
  border: 1px solid #444;
  border-radius: 6px;
  line-height: 1.4;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg fill='white' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px;
  max-width: 100%;
  box-sizing: border-box;
}

/* PMST OPTION COLORS */
#pmst-cat option {
  background-color: #1e1e1e;
  color: #fff;
  padding: 6px 10px;
}

/* Highlighted Option (hover/selected) */
#pmst-cat option:hover,
#pmst-cat option:checked {
  background-color: #FE5252; /* PMST Red */
  color: #fff;
}

/* === PMST LOCATION INPUT STYLING === */
#pmst-location-input {
  background-color: #1e1e1e;
  color: #fff;
  border: 1px solid #444;
  border-radius: 6px;
  padding: 8px 12px;
  font-size: 15px;
  width: 100%;
  box-sizing: border-box;
}

/* === BUTTON ALIGNMENT FIX (optional cleanup) === */
#pmst-location-form .form-block.btn button {
  padding: 8px 16px;
  font-size: 15px;
  border-radius: 6px;
  cursor: pointer;
  border: none;
}

#pmst-location-form .form-block.btn .pmst-location-submit {
  background-color: #FE5252;
  color: #fff;
}

#pmst-location-form .form-block.btn #detect-location {
  background-color: #555;
  color: #fff;
}
#detect-location.location-active {
  background-color: #FE5252;
  color: white;
}
