.search-page { padding: 11rem 0 7rem; min-height: 42rem; }
.search-page-heading { max-width: 58rem; margin: 0 auto 4rem; text-align: center; }
.search-page-kicker { margin: 0 0 1rem; color: #1570a8; font-size: .9rem; letter-spacing: .22em; text-transform: uppercase; }
.search-page-heading h1 { margin: 0 0 2rem; font-size: 3rem; font-weight: 500; }
.search-page-form { display: flex; align-items: center; border-bottom: 1px solid #1b2730; }
.search-page-form input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; padding: 1rem 0; color: #1b2730; font: inherit; font-size: 1.15rem; }
.search-page-form button { display: grid; place-items: center; width: 3rem; height: 3rem; border: 0; background: transparent; color: #1570a8; cursor: pointer; }
.search-page-form svg { width: 1.35rem; height: 1.35rem; fill: none; stroke: currentColor; stroke-width: 1.7; }
.search-page-empty { max-width: 58rem; margin: 0 auto; padding: 4rem 2rem; border: 1px solid #e1e6e9; color: #66737b; text-align: center; }
.search-page-result-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; border-bottom: 1px solid #dce3e7; padding-bottom: 1rem; }
.search-page-result-head h2 { margin: 0; font-size: 1.6rem; font-weight: 500; }
.search-page-result-head p { margin: 0; color: #728089; }
.search-page-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; margin: 0; padding: 0; list-style: none; }
.search-page-result { display: flex; min-height: 12rem; border: 1px solid #e1e6e9; background: #fff; transition: border-color .25s, transform .25s; }
.search-page-result:hover { border-color: #1570a8; transform: translateY(-.2rem); }
.search-page-result-image { display: block; flex: 0 0 11rem; overflow: hidden; background: #eef3f5; }
.search-page-result-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.search-page-result:hover .search-page-result-image img { transform: scale(1.04); }
.search-page-result-content { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 1.35rem; }
.search-page-result-meta { margin: 0 0 .55rem; color: #1570a8; font-size: .8rem; letter-spacing: .04em; }
.search-page-result-content h3 { margin: 0 0 .6rem; font-size: 1.15rem; line-height: 1.35; font-weight: 500; }
.search-page-result-content h3 a { color: inherit; }
.search-page-result-content > p:not(.search-page-result-meta) { display: -webkit-box; margin: 0; overflow: hidden; color: #68757d; font-size: .9rem; line-height: 1.6; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.search-page-result-more { margin-top: auto; padding-top: 1rem; color: #1570a8; font-size: .85rem; }
.search-page-result-more span { margin-left: .35rem; }
.search-page-pagination { margin-top: 3rem; }
.message-status { width: 100%; min-height: 1.4em; margin: .75rem 0 0; color: #1570a8; font-size: .85rem; line-height: 1.5; }
.message-status.is-error { color: #b33a3a; }
.message-status.is-success { color: #1570a8; }
@media (max-width: 767px) {
  .search-page { padding: 7rem 0 4rem; }
  .search-page-heading { margin-bottom: 2.5rem; }
  .search-page-heading h1 { font-size: 2rem; }
  .search-page-result-head { display: block; }
  .search-page-result-head p { margin-top: .5rem; }
  .search-page-results { grid-template-columns: 1fr; }
  .search-page-result-image { flex-basis: 8rem; }
}
