/* Site search: the box in the desktop navigation bar, and the /search results page
   (list-page.php search mode + js/ga-search.js). */

/* Desktop nav: right-aligned, just before the social icons. */
.ga-nav .nav-search {
  margin-left: auto;
  display: flex;
  align-items: center;
  height: 100%;
}

.ga-nav .nav-search + .social-group {
  margin-left: 14px;
}

.ga-nav .nav-search form {
  display: flex;
  align-items: center;
  height: 26px;
  border: 1px solid #cfcfcf;
  border-radius: 13px;
  background: #ffffff;
  overflow: hidden;
}

.ga-nav .nav-search form:focus-within {
  border-color: #8a8a8a;
}

.ga-nav .nav-search input {
  width: 130px;
  height: 100%;
  padding: 0 4px 0 12px;
  border: 0;
  outline: none;
  background: transparent;
  color: #333333;
  font: 13px "Lato", sans-serif;
  transition: width 0.2s ease;
}

.ga-nav .nav-search input:focus {
  width: 170px;
}

.ga-nav .nav-search button {
  height: 100%;
  padding: 0 10px;
  border: 0;
  background: transparent;
  color: #555555;
  cursor: pointer;
}

.ga-nav .nav-search button:hover,
.ga-nav .nav-search button:focus-visible {
  color: #cc0032;
}

/* Phones have their own search bar in the mobile header. */
@media (max-width: 768px) {
  .ga-nav .nav-search {
    display: none;
  }
}

/* Search results page */
.ga-search-page-form {
  display: flex;
  gap: 8px;
  margin: 0 0 14px;
}

.ga-search-page-form input {
  flex: 1 1 auto;
  min-width: 0;
  height: 38px;
  padding: 0 12px;
  border: 1px solid #cfcfcf;
  border-radius: 4px;
  font: 15px "Lato", sans-serif;
}

.ga-search-page-form input:focus {
  outline: 2px solid #326891;
  outline-offset: 1px;
}

.ga-search-page-form button {
  height: 38px;
  padding: 0 18px;
  border: 0;
  border-radius: 4px;
  background: #cc0032;
  color: #ffffff;
  font: 700 14px "Lato", sans-serif;
  cursor: pointer;
}

.ga-search-status {
  margin: 10px 0;
  color: #555555;
  font: 15px/1.5 "Lato", sans-serif;
}

.ga-search-status[hidden] {
  display: none;
}

.ga-search-list::after {
  content: "";
  display: block;
  clear: both;
}

.ga-search-more {
  display: block;
  margin: 16px auto 0;
  padding: 9px 22px;
  border: 1px solid #cfcfcf;
  border-radius: 4px;
  background: #ffffff;
  color: #326891;
  font: 700 14px "Lato", sans-serif;
  cursor: pointer;
}

.ga-search-more[hidden] {
  display: none;
}

.ga-search-more:disabled {
  opacity: 0.6;
  cursor: default;
}
