/* MoroccoPlan keyword tour search bar — homepage + Things To Do results. */

@font-face {
	font-family: "GT Eesti Pro Display";
	src: url("../fonts/gt-eesti-pro-display/gteestiprodisplay_regular.otf") format("opentype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "GT Eesti Pro Display";
	src: url("../fonts/gt-eesti-pro-display/gteestiprodisplay_medium.otf") format("opentype");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "GT Eesti Pro Display";
	src: url("../fonts/gt-eesti-pro-display/gteestiprodisplay_bold.otf") format("opentype");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search {
	--mp-search-font: "GT Eesti Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-family: var(--mp-search-font);
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour {
  width: auto;
  flex: 1 1 auto;
  min-width: 0;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .field-detination {
  width: 100%;
  min-width: 0;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .field-detination .stt-icon {
  color: #1A365D;
  -webkit-text-stroke: 0.35px #1A365D;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .field-detination label {
  color: #1A365D;
  font-weight: 600;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .st-form-dropdown-icon {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .render {
  width: 100%;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .render input {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  border: 0;
  outline: none;
  background: transparent;
  color: #1A365D;
  font-weight: 500;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .field-detination:focus-within label,
.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .field-detination:has(input:not(:placeholder-shown)) label {
  display: none;
}

.st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .button-search-wrapper .btn-search {
  background: #1B5F8A;
  color: #fff;
}

@media screen and (max-width: 991px) {
  .st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour {
    width: 100%;
    flex: none;
  }

  .st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .field-detination {
    padding-right: 12px;
  }

  .st-banner-search-form.style_2 .search-form.moroccoplan-keyword-search .destination-search.st-search-destination-tour .render input {
    font-size: 14px;
  }
}

/*
 * Mobile search results: remove Traveler's unused banner min-height (250px)
 * that leaves a blank gap under the search box, and tighten only the top
 * margins that push Filters/Sort down. Desktop/tablet unchanged.
 */
@media (max-width: 767px) {
  #st-content-wrapper.search-result-page .banner {
    min-height: 0;
    height: auto;
    padding-bottom: 12px;
  }

  #st-content-wrapper.search-result-page .st-results {
    margin-top: 16px;
  }

  #st-content-wrapper.search-result-page .st-results .toolbar {
    margin-top: 12px !important;
  }

  /*
   * Mobile search-result cards only (.modern-search-result).
   * Does NOT affect: Elementor mp-mobile-card-list/cards, homepage,
   * related, slider, or desktop/tablet search cards.
   *
   * Image: was aspect-ratio 3/2 (~243px / ~62% of card). Target ~50–55%
   * of that height via a wider landscape crop.
   * Title: override the global mobile 14px grid title for search only.
   */
  #st-content-wrapper.search-result-page .modern-search-result .services-item.grid.item-elementor .featured-image {
    aspect-ratio: 16 / 6;
  }

  #st-content-wrapper.search-result-page .modern-search-result .services-item.grid.item-elementor > .item .content-item {
    padding: 12px 14px 12px !important;
  }

  #st-content-wrapper.search-result-page .modern-search-result .services-item.grid.item-elementor > .item .content-item .title {
    font-size: 16px !important;
    line-height: 1.4 !important;
    min-height: calc(1.4em * 2);
    margin: 0 0 8px !important;
  }

  #st-content-wrapper.search-result-page .modern-search-result .services-item.grid.item-elementor > .item .content-item .reviews.moroccoplan-tour-card__reviews {
    margin-bottom: 10px !important;
  }
}
