body.page-home .home-disclosure {
  border-top: 1px solid rgba(7, 26, 45, 0.12);
  background: #f8f1e4;
  padding: 1rem 0 1.25rem;
}

body.page-home .home-disclosure .compliance-note {
  max-width: 96ch;
  margin: 0;
  color: rgba(7, 26, 45, 0.68);
  font-size: 0.7rem;
  line-height: 1.5;
  text-shadow: none;
}

/* Homepage search: the shortest path from the first viewport into Search.
 * Shipped inside home.css by scripts/build.mjs; the form is rendered by
 * heroHomeSearch() for the homepage hero only. */
body.page-home .hero-home-search {
  position: relative;
  width: min(100%, 36rem);
  margin-top: 1.6rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.4rem;
  border: 1px solid rgba(255, 251, 244, 0.32);
  border-radius: 6px;
  background: rgba(255, 253, 249, 0.97);
  padding: 0.35rem;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
}

body.page-home .hero-home-search:focus-within {
  border-color: var(--gold-bright, #e2b95f);
  box-shadow: 0 0 0 3px rgba(226, 185, 95, 0.4), 0 18px 40px rgba(0, 0, 0, 0.22);
}

body.page-home .hero-home-search-icon {
  position: absolute;
  top: 50%;
  left: 1rem;
  width: 1.15rem;
  height: 1.15rem;
  fill: #4f5f6d;
  transform: translateY(-50%);
  pointer-events: none;
}

body.page-home .hero-home-search input {
  min-width: 0;
  min-height: 48px;
  border: 0;
  background: transparent;
  padding: 0 0.75rem 0 2.6rem;
  color: #0b2238;
  font: inherit;
  font-size: 1rem;
}

body.page-home .hero-home-search input::placeholder { color: #66737e; }
body.page-home .hero-home-search input:focus { outline: none; }
body.page-home .hero-home-search input::-webkit-search-cancel-button { cursor: pointer; }

/* Navy keeps the search button part of the field and distinct from the gold
 * consultation action below it. */
body.page-home .hero-home-search .button {
  min-height: 48px;
  border-color: #0b2238;
  background: #0b2238;
  box-shadow: none;
  color: #fffbf4;
  padding-inline: 1.25rem;
  white-space: nowrap;
}

body.page-home .hero-home-search .button:hover,
body.page-home .hero-home-search .button:focus-visible {
  border-color: #071a2d;
  background: #071a2d;
  color: #fffbf4;
}

body.page-home .hero-home-search + .hero-actions {
  margin-top: 1rem;
}

@media (max-width: 560px) {
  body.page-home .hero-home-search {
    grid-template-columns: 1fr;
  }

  body.page-home .hero-home-search-icon {
    top: calc(0.35rem + 24px);
  }

  body.page-home .hero-home-search .button {
    width: 100%;
  }
}
