.gp-search{position:relative;min-width:0}
.gp-search svg{width:20px;height:20px}
.gp-search--header{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  min-width:0;
  min-height:46px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-pill);
  background:var(--gp-gray-050);
  overflow:hidden;
  transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);
}
.gp-search--header:focus-within{
  border-color:var(--color-secondary);
  box-shadow:0 0 0 3px rgb(30 175 163 / .12);
  background:var(--gp-white);
}
.gp-search__leading-icon{
  width:20px!important;
  height:20px!important;
  max-width:20px!important;
  max-height:20px!important;
  margin-left:1rem;
  color:var(--color-muted);
}
.gp-search__input{
  width:100%;
  min-width:0;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:.78rem .75rem;
  color:var(--color-text);
  font:inherit;
  font-size:1rem;
}
.gp-search__input::placeholder{color:var(--color-muted)}
.gp-search__submit{
  align-self:stretch;
  min-height:44px;
  border:0;
  padding-inline:1.2rem;
  background:var(--color-primary);
  color:var(--gp-white);
  font-weight:750;
  cursor:pointer;
  transition:background var(--transition-fast);
}
.gp-search__submit:hover,.gp-search__submit:focus-visible{background:var(--color-primary-dark)}

.gp-search-overlay{
  position:fixed;
  inset:0;
  z-index:calc(var(--z-overlay) + 10);
  visibility:hidden!important;
  opacity:0;
  pointer-events:none!important;
}
.gp-search-overlay.is-open{
  visibility:visible!important;
  opacity:1;
  pointer-events:auto!important;
}
.gp-search-overlay__backdrop{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:rgb(17 23 19 / .54);
  opacity:0;
  transition:opacity var(--transition);
}
.gp-search-overlay.is-open .gp-search-overlay__backdrop{opacity:1}
.gp-search-overlay__panel{
  position:relative;
  width:100%;
  max-height:100vh;
  max-height:100dvh;
  overflow:auto;
  background:var(--gp-white);
  transform:translateY(-105%);
  transition:transform var(--transition);
  box-shadow:var(--shadow-lg);
}
.gp-search-overlay.is-open .gp-search-overlay__panel{transform:translateY(0)}
.gp-search-overlay__inner{padding-block:clamp(1.25rem,4vw,3rem)}
.gp-search-overlay__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--space-4);
  margin-bottom:var(--space-5);
}
.gp-search-overlay__head h2{margin:0;font-size:var(--font-size-2xl)}
.gp-search-overlay__eyebrow{
  display:block;
  margin-bottom:.3rem;
  color:var(--color-primary-dark);
  font-size:var(--font-size-xs);
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.gp-search--overlay label{display:block;margin-bottom:.6rem;font-weight:700;color:var(--color-text)}
.gp-search__control{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  min-width:0;
  min-height:58px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  overflow:hidden;
  background:var(--gp-white);
}
.gp-search__control:focus-within{
  border-color:var(--color-secondary);
  box-shadow:0 0 0 3px rgb(30 175 163 / .12);
}
.gp-search-overlay__hint{margin:.7rem 0 0;color:var(--color-muted);font-size:var(--font-size-sm)}

@media(max-width:599px){
  .gp-search-overlay__head{align-items:center}
  .gp-search-overlay__inner{padding-top:max(1rem,env(safe-area-inset-top))}
  .gp-search__control{grid-template-columns:auto minmax(0,1fr)}
  .gp-search--overlay .gp-search__submit{grid-column:1/-1;min-height:48px}
}
@media(max-width:359px){
  .gp-search__leading-icon{margin-left:.75rem}
  .gp-search__input{padding-inline:.55rem}
}
