/* The disclosure works without JavaScript; WordPress owns the search request. */
.site-header .rd-header-search {
	position: relative;
}

.site-header .rd-search-disclosure > summary {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	box-sizing: border-box;
	min-block-size: 44px;
	min-inline-size: 44px;
	padding: 0.75em 0.875em;
	color: inherit;
	font: inherit;
	list-style: none;
	cursor: pointer;
}

.site-header .rd-search-disclosure > summary::-webkit-details-marker {
	display: none;
}

.site-header .rd-search-panel {
	box-sizing: border-box;
	padding: 1rem;
	border: 1px solid #d1d1d1;
	background: #fff;
	color: #1a1a1a;
}

.site-header .rd-search-panel form {
	margin: 0;
}

.site-header .rd-search-panel label {
	display: block;
	margin-block-end: 0.375rem;
	font-size: 1rem;
	line-height: 1.5;
}

.site-header .rd-search-fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.5rem;
}

.site-header .rd-search-fields input[type="search"] {
	box-sizing: border-box;
	min-inline-size: 0;
	inline-size: 100%;
	min-block-size: 44px;
	border: 1px solid #686868;
	border-radius: 2px;
	padding: 0.5rem;
	font-size: 1rem;
	line-height: 1.5;
}

.site-header .rd-search-fields button {
	min-block-size: 44px;
	padding: 0.5rem 0.75rem;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: normal;
	text-transform: none;
}

.site-header .rd-search-disclosure > summary:focus-visible,
.site-header .rd-search-fields button:focus-visible {
	outline: 2px solid var(--rd-focus, #2e4050);
	outline-offset: 3px;
}

@media screen and (min-width: 56.875em) {
	/* Let wrapped menu rows contribute to the fixed header's measured spacer. */
	body .site-header.rd-nav-enhanced {
		height: auto;
		min-height: 78px;
	}

	body .site-header.rd-nav-enhanced.hide-header {
		top: calc(0px - var(--rd-header-height));
	}

	.site-header .rd-search-disclosure > summary {
		justify-content: center;
		padding: 0.375rem;
	}

	.site-header .rd-search-label {
		display: none;
	}

	.site-header .rd-search-panel {
		position: absolute;
		inset-block-start: 100%;
		inset-inline-end: 0;
		inline-size: 22rem;
		max-inline-size: calc(100vw - 2rem);
		z-index: 10;
	}
}

@media print {
	.site-header .rd-header-search {
		display: none;
	}
}
