#header #nav .search-link {
	border: 0;
	box-shadow: none;
	color: inherit;
	height: 3em;
	line-height: 3em;
	padding: 0 1em;
}

.search-menu-link {
	box-shadow: none;
	color: inherit;
	padding: 0;
	text-align: left;
	width: 100%;
}

body.is-search-open {
	overflow: hidden;
}

#site-search {
	background: #fff;
	border: 0;
	border-radius: 0.4em;
	color: #2e3842;
	margin: auto;
	max-height: 85vh;
	max-height: 85dvh;
	overflow-y: auto;
	padding: 1.5em;
	width: min(48em, calc(100% - 2em));
}

#site-search:not([open]) {
	display: none;
}

#site-search::backdrop {
	background: rgba(15, 22, 30, 0.8);
}

.search-dialog-header {
	align-items: center;
	display: flex;
	justify-content: space-between;
	gap: 1em;
	margin-bottom: 1em;
}

#site-search h2,
#site-search h3,
#site-search label,
#site-search a {
	color: #2e3842;
}

#site-search h2 {
	margin: 0;
}

#site-search input,
#site-search select {
	background-color: #f2f4f6;
	color: #2e3842;
}

#site-search input::placeholder {
	color: #5b6570;
	opacity: 1;
}

#site-search select option {
	background: #fff;
	color: #2e3842;
}

#site-search button {
	color: #2e3842;
	box-shadow: inset 0 0 0 2px #bac1c8;
}

.search-fields {
	display: flex;
	gap: 0.75em;
	margin-bottom: 1em;
}

.search-fields input {
	min-width: 0;
}

#search-type {
	max-width: 28em;
}

.search-hint,
.search-result-meta {
	font-size: 0.85em;
}

.search-hint {
	margin-top: 1em;
}

.search-results {
	list-style: none;
	padding: 0;
}

.search-results li {
	border-top: 1px solid #ddd;
	padding: 1.25em 0;
}

.search-results h3 {
	font-size: 1em;
	letter-spacing: normal;
	margin: 0 0 0.4em;
	text-transform: none;
}

.search-results p {
	margin: 0.4em 0 0;
	overflow-wrap: anywhere;
}

.search-results mark {
	background: #ffe49b;
	color: #202830;
}

#site-search [hidden] {
	display: none;
}

#site-search a:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}
