/*
CSS CBS – SEARCH
*/
/*** SEARCH-FORM ***/
.search-form {
	background-color: rgba(var(--blue));
	padding-top:0;
	padding-bottom:0.5em;
	color: rgb(var(--white))
}
.search-form > .content {
	max-width: 55em !important;
}
.search-form .box {
	padding-top:0 !important;
	padding-bottom:0 !important;
}
.search-form #searcharea {
	position:relative;
}
.search-form .searchinfo {
	padding:1em 0 0 0;
	text-align: center;
	font-size:0.9em
}
.search-form .searchinfo a {
	white-space: nowrap;
	text-decoration: none;
	color: rgb(var(--white))
}
.search-form .searchinfo a span {
	text-decoration: underline;
	font-weight:bold;
}
.search-form #searchfield {
	font-size:1em;
	text-align:center;
	color: rgb(var(--black));
	background: rgba(var(--white));
	padding:0.5em 3em 0.5em 0.75em;
	border-radius: 0.5em;
	border-color: transparent;
	border-width:0.125em;
	box-shadow: none;
}
.search-form #searchfield:focus {
	border-color: rgba(var(--blue));
}
.search-form #searchfield::placeholder {
	color: rgb(var(--black))
}
.search-form #searchsubmit {
	position: absolute;
	padding:0 !important;
	width:2.5em;
	height:100%;
	right:0;
	border-radius:0%;
	background-color: transparent;
	color: rgba(var(--blue),1);
	transition: 150ms ease 50ms;
}
.search-form #searchsubmit span {
	display: none;
}
.search-form #searchsubmit:focus span,
.search-form #searchsubmit:focus-within span{
	display: inline-block;
	position:absolute;
	z-index: 20;
	font-size:0.9em !important;
	font-weight:700;
	text-align:left;
	top:0;
	bottom:0;
	right:0;
	padding:0.5em;
	color: rgb(var(--white));
	background: rgb(var(--blue))
}
.search-form #searchsubmit:hover,
.search-form #searchsubmit:focus {
	background-color: rgb(var(--blue));
	color: rgb(var(--white));
	z-index:20;
}
.search-form #searchsubmit::before {
	font-size: 1.125em;
}
.search-form .searchlabel {
	_position: absolute;
	z-index:10;
	_top:0em;
	_left:0.25em;
	display:block;
	margin:-1em auto 0;
	padding:0em 0.5em 0 0.5em;
	font-size:0.8em;
	font-weight:600;
	text-align:center;
	color: rgb(var(--blue));
	visibility: hidden
}



/*** SEARCH-RESULT ***/
.search-results .page-title {
	margin-bottom:0.5em;
	text-align: center;
}
.search-results .page-title .searchstr {
	background: rgba(var(--grey),1);
	color: rgb(var(--red));
	display:inline-block;
	padding:0 0.25em
}
.search-results {
	padding-top:0;
}
.search-results > .content {
	_max-width: 55em !important;
	
}
.search-results .innercol {
	margin: 0;
}
.search-results .result_head > .box {
	margin:0;
	padding:0;
	text-align: center;
}
.search-results .result_head .count_total {
	font-weight: 700;
}
.search-results .result_head .resultnav_wrapper {
	margin-top: 0 !important;
	padding-top:0.5em;
	padding-bottom:0.5em;
}
.search-results .result_head #resultnav {
	list-style: none;
	margin:0 -0.25em;
	text-align: center;
}
.search-results .result_head #resultnav li {
	display: inline-block;
	margin:0.25em 0.25em;
	background: rgba(var(--red));
	padding:0.125em 0.75em;
	border-radius: 1em;
	color: rgba(var(--white));
	font-size: 0.9em;
	font-weight: 500;
}
.search-results .result_head #resultnav li.active {
	color: rgba(var(--black),1);
	font-weight: 600;
}
.search-results .result_head #resultnav li:has(~ .active),
.search-results .result_head #resultnav li.active ~li {
	opacity:0.65;
}

.search-results .result_head #resultnav li a {
	color: inherit;
}
.search-results .result_head #resultnav li a .count {
	font-size: 0.9em;
}
.search-results .result_head #resultnav li a:not(:hover):not(:focus){
	text-decoration: none;
}
.search-results .result_subhead {
	margin-top:1em;padding: 1rem;
	border-top: solid 1px rgba(var(--grey));
	border-bottom: solid 1px rgba(var(--grey));
	color: rgb(var(--red));
	font-weight: 500;
	text-transform: uppercase;
}
.search-results #result_inhalt {
	text-align: left;
}
.search-item {
	background-color: rgb(var(--white));
	box-shadow: 0 0 0.5em rgba(var(--blue),0.25);
}
.search-item + .search-item {
	margin-top:0.5em !important;
}
.search-item .cont h3 {
	color: rgb(var(--blue));
	font-size: 1.125em;
}
.search-item .cont h3 a:not(:hover, :focus, :focus-visible) {
	text-decoration: none;
}
.search-item .box {
	display: grid;
	grid-template-areas:
		"thumb content";
	grid-template-columns: auto 1fr;
}

.search-item .thumb {
	grid-area: thumb;
	width:10em;
	max-width:30vw;
	_background-color: rgba(var(--grey),0.5)
}

.search-item .thumb img {
	box-shadow: 0 0 0.25em rgba(var(--black), 0.35);
	background: rgb(var(--white))
}
.search-item .thumb:has(img[src*="LOGO_DGFMM"]) {
	display: none
}
.search-item .thumb:has(img[src*="LOGO_DGFMM"]) + .cont {
	padding-left:0;
}
.search-item .cont .cat_str {
	margin-top:1em;
}
.search-item .cont .cat_str span {
	padding:0 0.5em;
	background-color: rgba(var(--darkblue),0.1);
	color: rgba(var(--darkblue));
	font-size:0.9em;
}

.search-item .cont {
	grid-area: content;
	padding: 0;
	align-self: center;
} 

.search-item .thumb + .cont {
	padding-left:2em;
}

.search-item .cont .desc {
	font-size: 0.9em;
	margin-top:0.25em !important;
}
.search-item.download {
	display: block;
}
.search-item.download .thumb {
	text-align: center
}

.search-item .cont .desc .more-link {
	font-size: 0.9em;
	font-weight: 500;
	padding-left: 0.5em;
}

@media(max-width:767px) and (min-width:600px){
	.result_head .box {
		padding:0 !important;
		margin:0 !important;
	}
}

@media(min-width:600px){
	.search-results .page-title {
		font-size: 1.875em;
	}
}
@media(max-width:599px){
	.search-results .innercol {
		width: auto !important;
		margin-left:-1em !important;
		margin-right:-1em !important;
	}
	.search-item .cont h3 {
		font-size: 1.125em;
		margin-top:0.25em !important;
	} 
	.search-item .cont .desc {
		font-size: 0.9em;
		line-height: 1.325;
		margin-top:0.25em !important;
	} 
}
@media(max-width:400px){
	.search-results .page-title {
		font-size:1.5em;
	}
}

