#searchToggleInput {
	appearance:none;
	background-position:center;
	background-repeat:no-repeat;
	cursor:pointer;
	display:block;
}
#searchForm {
	background-color:var(--color_forms);
	border-top:var(--header-border-bottom-height) solid var(--color_pagination_outline);
	border-bottom:var(--header-border-bottom-height) solid var(--color_pagination_outline);
	display:flex;
	justify-content:end;
	left:0;
	position:fixed;
	right:0;
}
#searchInput,#searchSubmit {
	appearance:none;
	border-color:var(--color_contrast);
	border-style:solid;
}
#searchInput {
	background-color:var(--color_forms_input);
	border-radius:2px 0 0 2px;
	border-width:1px 0 1px 1px;
}
#searchFormLabel {
	visibility:hidden;
}
#searchSubmit {
	background-color:var(--color_forms_submit);
	border-radius:0 2px 2px 0;
	border-width:1px;
	color:var(--color_text);
	font-weight:300;
	text-align:center;
	transition:all var(--transition_timing);
}
#tosearch {
	color:transparent;
	display:inline-block;
	margin-right:var(--horizontal_spacing);
	margin-left:calc(var(--horizontal_spacing) / -1);
	text-decoration:none;
}
.js #tosearch,.no-js #searchForm {
	display:none;
}
.no-js #tosearch {
	color:var(--color_header_meta_color);
}
#tosearch:focus {
	color:var(--color_contrast);
}
#searchToggleLabel:hover,#searchToggleInput:focus {
	opacity:.64;
}
#searchInput:hover,#searchInput:focus {
	border-color:var(--color_contrast);
	border-width:3px 0 3px 3px;
	box-shadow:0 0 4px 1px var(--color_contrast_opacity);
}
#searchSubmit:hover,#searchSubmit:focus {
	background-color:var(--color_primary);
	border-color:var(--color_primary);
	color:var(--color_secondary);
}
#searchSubmit:hover {
	cursor:pointer;
	transition:all var(--transition_timing);
}
#searchToggleInput:not(:checked) ~ #searchForm {
	opacity:0;
	z-index:0;
}
#searchToggleInput:checked ~ #searchForm,.js #searchToggleLabel.activeInput ~ #searchForm {
	opacity:1;
	z-index:2;
}
@media screen and (max-width:479px) {
	#searchInput {
		width:calc(100vw - 188px);
	}
	#searchToggleInput:checked {
		left:calc((100vw * -1) + 279px);
	}
}
@media screen and (min-width:480px) and (max-width:639px) {
	#searchForm {
		margin-right:64px;
	}
}
@media screen and (min-width:480px) and (max-width:519px) {
	#searchInput {
		width:227px;
	}
	#searchToggleInput:checked {
		left:-200px;
	}
}
@media screen and (min-width:520px) {
	#searchContainer {
		padding-right:var(--horizontal_spacing);
	}
}
@media screen and (min-width:520px) and (max-width:639px) {
	.mail-span.medium,.phone-span.medium {
		display:none;
	}
	.phone-span.small,.mail-span.small {
		display:block;
		line-height:1;
		font-size:12px;
		height:16px;
		padding-bottom:4px;
	}
	#searchInput {
		width:262px;
	}
	#searchToggleInput:checked {
		left:8px;
	}
}
@media screen and (max-width: 639px) {
	#searchForm {
		padding: 8px;
	}
}
@media screen and (min-width: 640px) and (max-width: 959px) {
	#searchForm {
		margin-right:80px;
		padding: 8px;
	}
	#searchInput {
		width: 298px;
	}
}
@media screen and (max-width: 959px) {
	#searchForm {
		height:calc(var(--height_header_small) - 2px);
		line-height: calc(var(--height_header_small) + 16px);
		top:2px;
	}
	#searchToggleInput {
		background-size: 32px;
		height: 48px;
		position: relative;
		width: 48px;
		z-index: 3;
	}
	#searchInput {
		padding-right: 8px;
		padding-left: 8px;
	}
	#searchSubmit {
		width: 64px;
	}
	#searchInput:hover,
	#searchInput:focus {
		padding-right: 6px;
		padding-left: 6px;
	}
	#searchToggleInput.activeInput {
		opacity: 0;
	}
}
@media screen and (min-width: 960px) {
	#searchForm {
		height: var(--height_subnavigation);
		line-height: calc(var(--height_header_small) + 24px);
		padding: 8px calc((100% - var(--container-width)) / 2) 8px 8px;
	}
	#searchToggleInput {
		background-size: 40px;
		height: 64px;
		width: 64px;
	}
	#searchInput {
		width: 480px;
		padding-right: 12px;
		padding-left: 12px;
	}
	#searchInput,
	#searchSubmit {
		font-size: 16px;
	}
	#searchSubmit {
		width: 80px;
	}
	#searchInput:hover,
	#searchInput:focus {
		padding-right: 10px;
		padding-left: 10px;
	}
	.small #searchForm {
		top: var(--height_header_small);
	}
}
@media screen and (min-width:960px) and (max-width:1439px) {
	#searchForm {
		padding-right:var(--horizontal_spacing);
	}
}
@media screen and (min-width:1440px) {
	#searchForm {
		padding-right:calc(calc((100% - var(--container-width)) / 2) + calc(var(--horizontal_spacing) / 2));
	}
}
@media screen and (hover:hover) and (min-width:960px) {
	#searchForm {
		top: calc(var(--height_subnavigation) * 1.5 + 4px);
	}
}
@media screen and (hover:none) and (min-width:960px) {
	#searchForm {
		top:97px;
	}
}
@media (prefers-color-scheme: light) {
	#searchToggleInput:checked {
		background-image: url(../images/x_light_mode.svg);
	}
	#searchToggleInput:not(:checked) {
		background-image: url(../images/search_light_mode.svg);
	}
}
@media (prefers-color-scheme: dark) {
	#searchToggleInput:checked {
		background-image: url(../images/x_dark_mode.svg);
	}
	#searchToggleInput:not(:checked) {
		background-image: url(../images/search_dark_mode.svg);
	}
}