/* Search submit loading state shared by the home page and /search/. */
.home-hero-search .home-search-button {
  position: relative;
  min-width: 142px;
  overflow: hidden;
}

.home-hero-search .search-submit-label,
.home-hero-search .search-submit-loader {
  transition: opacity .16s ease, transform .16s ease;
}

.home-hero-search .search-submit-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.home-hero-search .search-submit-loader {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding-inline: 10px;
  opacity: 0;
  transform: translateY(5px);
  pointer-events: none;
}

.search-submit-loader-text {
  font-size: .9em;
  font-weight: inherit;
  white-space: nowrap;
}

.search-submit-dots {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  direction: ltr;
  height: 14px;
}

.search-submit-dot {
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: currentColor;
  opacity: .55;
  animation: maatharahSearchDot .72s ease-in-out infinite;
}

.search-submit-dot:nth-child(2) { animation-delay: .12s; }
.search-submit-dot:nth-child(3) { animation-delay: .24s; }

.home-hero-search.is-searching .search-submit-label {
  opacity: 0;
  transform: translateY(-5px);
}

.home-hero-search.is-searching .search-submit-loader {
  opacity: 1;
  transform: translateY(0);
}

.home-hero-search.is-searching .home-search-button,
.home-hero-search.is-searching .home-search-button:disabled {
  cursor: wait;
  opacity: 1;
  transform: none !important;
  filter: none !important;
  box-shadow: 0 7px 18px rgba(10, 64, 85, .16);
}

.home-hero-search.is-searching .home-search-shell {
  border-color: rgba(10, 64, 85, .34);
}

.home-hero-search.is-searching .home-search-shell::after {
  opacity: 1;
  transform: scaleX(1);
  animation: maatharahSearchLine 1.05s ease-in-out infinite;
}

@keyframes maatharahSearchDot {
  0%, 100% {
    transform: translateY(2px);
    opacity: .48;
  }
  50% {
    transform: translateY(-4px);
    opacity: 1;
  }
}

@keyframes maatharahSearchLine {
  0%, 100% { opacity: .45; filter: saturate(.9); }
  50% { opacity: 1; filter: saturate(1.25); }
}

@media (max-width: 620px) {
  .home-hero-search .home-search-button {
    min-width: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-hero-search .search-submit-label,
  .home-hero-search .search-submit-loader {
    transition: none !important;
  }

  .search-submit-dot,
  .home-hero-search.is-searching .home-search-shell::after {
    animation: none !important;
  }

  .search-submit-dot {
    opacity: .85;
    transform: none;
  }
}
