.frame-type-header {
	position: relative;
	display: flex;
	flex-flow: column-reverse;
	margin-block-end: 2rem;

}
.frame-type-header h2 {
	margin-block: 0;
	padding-block-start: 0;
	padding-block-end: 0;
	font-weight: 700;
	position: relative;
	font-size: 1.75rem;
	line-height: 2rem;
	letter-spacing: -1px;
}
@media (min-width:70rem) {
	.frame-type-header h2 {
		font-size: 2.5rem;
		line-height: 3.25rem;
	}
}
.frame-type-header:before {
	content: "";
	position: absolute;
	left: -.6rem;
	height: 100%;
	border-right: 3px solid #ffb446;
}
.frame-type-header h2 + * {
	padding-block-start: 0;
	padding-block-end: 0;
	margin-block-start: 0;
	margin-block-end: 0;
	font-weight: 500;
	font-size: .9rem;
}

.frame-type-header .type {
	color:#0000;
	background:
		linear-gradient(-90deg,#000f 2px,#0000 0) 10px 0,
		linear-gradient(#000f 0 0) 0 0;
	background-size:calc(var(--n)*1ch) 200%;
	-webkit-background-clip:padding-box,text;
	background-clip:padding-box,text;
	background-repeat:no-repeat;
	animation:
		b .5s infinite steps(1),
		t calc(var(--n)*.033s) steps(var(--n)) forwards;
}

@keyframes t{
	from {background-size:0 200%}
}
@keyframes b{
	50% {background-position:0 -100%,0 0}
}



html[lang*="en"] section > a { display: none; }
html[lang*="en"] section > a + h3 { margin-block-start: 0; }


.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}

.img img {
	border-radius: 1px;
	width: 100%;
	height: auto;
}

main ul {
	list-style-type: square;
}
main ul li::marker {
	color: #ffb446;
	font-size: 1.2rem;
}

.ce-table {
	--bs-table-bg: transparent;
	--bs-table-striped-color: #212529;
	--bs-table-striped-bg: rgba(0, 0, 0, 0.05);
	--bs-table-active-color: #212529;
	--bs-table-active-bg: rgba(0, 0, 0, 0.1);
	--bs-table-hover-color: #212529;
	--bs-table-hover-bg: rgba(0, 0, 0, 0.075);
	caption-side: bottom;
	border-collapse: collapse;
}

.ce-table > :not(caption) > * > * {
	padding: .5rem .5rem;
	background-color: var(--bs-table-bg);
	border-bottom-width: 1px;
	box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}

tbody, td, tfoot, th, thead, tr {
	border-color: inherit;
	border-style: solid;
	border-width: 0;
	border-bottom-width: 0px;
}
.ce-table > :not(:last-child) > :last-child > * {
  border-bottom-color: currentColor;
}

.ce-table thead tr {
	border-color: #000;
}
.ce-table tbody tr {
	border-color: #dee2e6;
}
.ce-table tbody tr:nth-of-type(2n+1) {
	width: 100%;
	margin-bottom: 1rem;
	color: #212529;
	vertical-align: top;
	--bs-table-accent-bg: var(--bs-table-striped-bg);
}


/* columns */
.layout-row.two {
	--gap: 2rem;
}

.layout-row.two img {
	width: 100%;
}


.column-margin  {
	font-size: .95rem;
}
.column-margin >  .frame-type-list > h3 {
	display: none;
}



/* backgrounds */

[class*="-bg"] {
}

.custom-bg      {  }
.orange-bg      { background-color: #ffb446; }
.lightorange-bg { background-color: #fedba844; }
.blue-bg        { background-color: #00599c; }
.lightblue-bg   { background-color: #ccdeeb; }
.grey-bg        { background-color: #666666; }

.lightgrey-bg   { background-color: unset; }

.lightgrey-bg + .lightgrey-bg {
	border-top: 1px solid #ccc;
	padding-block-start: 2rem;
}

.column-margin .custom-bg {
	background: #f8f8f8;
	padding: 1.5rem 1.25rem;
	margin-bottom: 4rem;
	border: 1px solid #eee;
	border-radius: 1px;
}
.column-margin .custom-bg p {
	margin-top: .5rem;
}
.column-margin .custom-bg p:last-child {
	margin-bottom: 0;
}


.frame-type-textpic.lightorange-bg,
.frame-type-textpic.lightgrey-bg,
.frame-type-textpic.lightblue-bg {
	display: flex;
	gap: 2rem;
 	margin-block: 3rem;
}
@media (max-width:90rem) {
	.frame-type-textpic.lightorange-bg,
	.frame-type-textpic.lightgrey-bg,
	.frame-type-textpic.lightblue-bg {
		flex-flow: column;
	}
}

.frame-type-textpic.lightorange-bg .align-left.half,
.frame-type-textpic.lightgrey-bg .align-left.half,
.frame-type-textpic.lightblue-bg .align-left.half {
	max-width: 100%;
	margin: 0;
}
.frame-type-textpic.lightorange-bg .imgs,
.frame-type-textpic.lightgrey-bg .imgs,
.frame-type-textpic.lightblue-bg .imgs {
	background-color: #fff;
	display: flex;
	align-items: center;
	padding: 0 2rem 0 0;
}
.frame-type-textpic.lightgrey-bg .imgs .img {
	margin: 0;
}
.frame-type-textpic.lightorange-bg .txt,
.frame-type-textpic.lightgrey-bg .txt,
.frame-type-textpic.lightblue-bg .txt {
	display: flex;
	flex-flow: column;
	justify-content: center;
	gap: 1rem;
}
.roadshow .vacancy a,
.frame-type-textpic.lightorange-bg .txt a,
.frame-type-textpic.lightgrey-bg .txt a,
.frame-type-textpic.lightblue-bg .txt a {
	border: 2px solid #eee;
	padding: .5rem 2rem .5rem 3rem;
	text-decoration: none;
	transition: ease-in all .15s;
	background-color: #eee;
	color: #333;
}
.roadshow .vacancy a:after,
.frame-type-textpic.lightorange-bg .txt a:after,
.frame-type-textpic.lightgrey-bg .txt a:after,
.frame-type-textpic.lightblue-bg .txt a:after {
	content: "";
	visibility: hidden;
	margin-left: 0;
	opacity: 0;
	transition: ease-in all .25s;
	background: transparent center center no-repeat url(../icons/arrow-right.svg); /*from here: https://www.svgrepo.com/svg/520525/arrow-right */
	background-size: 1.5rem auto;
	display: inline-block;
	width: 1.5rem;
	height: .75rem;
}
.roadshow .vacancy a:hover,
.frame-type-textpic.lightorange-bg .txt a:hover,
.frame-type-textpic.lightgrey-bg .txt a:hover,
.frame-type-textpic.lightblue-bg .txt a:hover {
	/* TODO: show triangle */
	color: #333;
	border-color: #333;
	background-color: unset;
}
.roadshow .vacancy a:hover:after,
.frame-type-textpic.lightorange-bg .txt a:hover:after,
.frame-type-textpic.lightgrey-bg .txt a:hover:after,
.frame-type-textpic.lightblue-bg .txt a:hover:after {
	display: inline-block;
	width: 1rem;
	content: " ";
	visibility: visible;
	margin-left: 1rem;
	opacity: .75;
}


	.frame-type-textpic.lightorange-bg .txt, .frame-type-textpic.lightgrey-bg .txt, .frame-type-textpic.lightblue-bg .txt {
		padding-inline: 0;
	}

.roadshow .vacancy a.waiting {

}



.frame-type-textpic.lightorange-bg img,
.frame-type-textpic.lightgrey-bg img,
.frame-type-textpic.lightblue-bg img {
	background-color: #fff;
	max-inline-size: unset;
	width: 20rem;
}

#u15576 .frame-type-textpic img,
#u14731 .frame-type-textpic img,
#u14732 .frame-type-textpic img,
#u14746 .frame-type-textpic img {
	width: 10rem;
	margin: 2rem 0 2rem 2rem;
}


.frame-type-textpic.lightorange-bg .txt p:last-child,
.frame-type-textpic.lightgrey-bg .txt p:last-child,
.frame-type-textpic.lightblue-bg .txt  p:last-child {
	margin: 0;
}


.column-margin .forms {
	background: #fff;
	padding: 2rem 1rem;
	margin-bottom: 4rem;
	border: 2px solid #eee;
}
.column-margin .forms p {
	margin-top: .5rem;
}
.column-margin .forms p:last-child {
	margin-bottom: 0;
}



/* submenues */

.ce-menu.tiles {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	padding: 0;
	margin: 0 0 4rem;
	justify-content: flex-start;
}

.ce-menu.tiles li {
	display: block;
	width: calc(50% - .5rem - 2px);
	min-width: 26.5rem;
	background-color: #000;
	border: 1px solid #ddd;
	border-radius: 1px;
	text-align: center;
	overflow: hidden;
	transition: .25s all ease-in-out;
}
.ce-menu.tiles li:hover {
	border-color:  #888;
}

#u14740 .ce-menu.tiles li {
	width: calc(33% - .5rem - 2px);
}

#c74191 .ce-menu.tiles {
	gap: 1.5rem;
	display: grid;
	padding: 0;
	margin: 0 0 4rem;
	grid-template-rows: auto 1fr;
	grid-template-columns: 66.33%;
	grid-template-areas:
		"big top   "
		"big bottom";
	overflow: hidden;
	justify-content: inherit;
}
#c74191  .ce-menu.tiles li {
	width: 100%;
	margin: 0;
}
#c74191 .ce-menu.tiles li a {
	max-height: unset;
	height: 100%;
}
#c74191 .ce-menu.tiles li a .item {
	height: 100%;
}
#c74191 .ce-menu.tiles li a img {
	max-inline-size: unset;
	height: 100%;
	width: auto;
	min-width: 36rem;
}

@media screen and (max-width: 100rem) {
	#c74191 .ce-menu.tiles {
		grid-template-columns: 55%;
	}
}
@media screen and (min-width: 78rem) {
	#c74191  .ce-menu.tiles li:first-child {
		grid-area: big;
	}
}
@media screen and (max-width: 78rem) {
	#c74191  .ce-menu.tiles {
		grid-template-rows: 1fr;
		grid-template-columns: 1fr;
		grid-template-areas: unset;
	}
	#c74191 .ce-menu.tiles li a img {
		height: auto;
		width: 100%;
		min-width: unset;
	}
}




#c75652 .ce-menu.tiles .txt {
	display: none;
}
#c75652 .ce-menu.tiles li:hover img {
	opacity: 1;
}






.ce-menu.tiles li .item {
	overflow: hidden;
}
.ce-menu.tiles li img {
	width: 100%;
	transition: ease-in-out all .2s;
}
.ce-menu.tiles li:hover img {
	scale: 1.1;
	opacity: .66;
}
.ce-menu.tiles li h3 {
	margin: 0;
	padding: 0;
	font-weight: normal;
	font-size: 1.125rem;
}


@media (max-width:60rem) {
	.ce-menu.tiles li {
		width: 100%;
	}
}


.ce-menu.tiles li a {
	display: block;
	position: relative;
	height: max-content;
	text-decoration: none;
}
.ce-menu.tiles li a .txt {
	position: absolute;
	bottom: 0;
	width: 100%;
	margin: 0 auto;
	padding: 5rem 1.5rem 1.5rem;
	color: #fff;
	background: linear-gradient(0deg,rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0) 100%);
	text-align: left;
}
.ce-menu.tiles li a .ce-menu-subtitle {
	padding-inline: 1rem;
	font-size: .9rem;
}
.ce-menu.tiles li a .txt p {
	display: inline;
	margin-bottom: 0;
	text-decoration: underline;
	text-decoration-thickness: auto;
	text-underline-offset: .25rem;
	text-decoration-thickness: 1px;
	transition: all .2s ease-in-out;
}
.ce-menu.tiles li a:hover .txt p {
	text-underline-offset: .3rem;
	text-decoration-thickness: 2px;
}
.ce-menu.tiles li a .txt p:after {
	content: "";
	margin-left: .25rem;
	background: transparent center center no-repeat url(../icons/arrow-right.svg);
	filter: invert(1);
	background-size: auto;
	background-size: 1.5rem auto;
	display: inline-block;
	width: 1.5rem;
	height: .75rem;
	transition: all .2s ease-in-out;
}
.ce-menu.tiles li a:hover .txt p:after {
	margin-left: .5rem;
}

/* news */

.column-screen.page-columns.grey-bg h2 {
	text-align: center;
}

.news-list.simple .news_listing {
	display: flex;
	align-items: center;
	margin: 1rem;
	gap: .75rem;
}
.news-list.simple .news_listing a {
	text-decoration: none;
	font-weight: bold;
}

#u14753 .ce-menu.tiles li a .txt {
	background: none;
	text-align: center;
	padding: 0 1.5rem .5rem;
}



/* tt_address */

.frame-type-list:has( .tx-ttaddress .simple ) {
	margin-top: 8rem;
}

.tt_address_list {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	padding: 0;
	margin: 0 0 4rem;
}

.tt_address_list .vcard {
	display: flex;
	flex-flow: column;
	width: calc(25% - .75rem);
	min-width: 8rem;
	max-width: 18rem;
	font-size: .9rem;
	background-color: #f8f8f8;
	transition: ease-in-out background-color .2s;
	overflow: hidden;
}
.tt_address_list .vcard:hover {
	background-color: #fcfcfc;
}

.tt_address_list .simple .vcard {
	width: 100%;
}

.tt_address_list .addressImage {
	overflow: hidden;
}
.tt_address_list .addressImage img {
	width: 100%;
	margin: 0;
	transition: ease-in-out scale .2s;
}
.tt_address_list .addressImage img:hover {
	scale: 1.05;
}


.column-margin .tt_address_list {
	margin: 1rem auto 4rem;
	display: block;
	max-width: 60%;
	text-align: center;
}
.column-margin .tt_address_list h3 {
	margin-bottom: 1rem;
}
.column-margin .tt_address_list .simple {
	border: 0;
	padding: 0;
	gap: .75rem;
	justify-content: center;
	text-align: center;
	flex-flow: row;
	flex-wrap: wrap;

}
.column-margin .tt_address_list .simple li {
}

.column-margin .tt_address_list .simple .vcard {
	width: 9rem;
}
.column-margin .tt_address_list .simple .vcard .detail {
	padding-top: 0.1rem;
	font-size: .85rem;
}
.column-margin .tt_address_list .simple img {
	width: 6rem;
}

.column-margin .tt_address_list .vcard {
	width: 100%;
}



.tt_address_list .vcard a {
	text-decoration: none;
}


.tt_address_list ul {
	margin: 0;
	padding: 0;
}
.tt_address_list ul li {
	list-style: none;
	font-size: .8rem;
}

.tt_address_list .simple {
	padding: 4rem 0 0;
	display: flex;
	flex-flow: row;
	justify-content: flex-start;
	align-items: center;
	gap: 4rem;
	border-top: 2px solid #eee;
	width: 100%;
}

.detail .tt_address_list .simple {
	padding-top: 0;
	border-top: 0;
}


.tt_address_list .vcard .no-img {
	display: block;
	aspect-ratio: 1/1;
	min-width: 10rem;
	width: 13rem;
	background: #eee center center / 5rem auto no-repeat url(../img/smiley.svg);
}

.tt_address_list .vcard .detail {
	padding: .5rem;
	text-align: center;
	height: 100%;
	display: flex;
	flex-flow: column;
}
.tt_address_list .vcard .detail h3 {
	padding-top: 0;
	margin-block-end: .25rem;
	font-size: .8rem;
}
.tt_address_list .vcard .detail h3 + p {
	margin-block-end: .5rem;
	flex: 4
}
.tt_address_list .vcard .detail em {
	font-style: normal;
	font-size: .9rem;
}


.tt_address_detail {
	margin-block-start: 8rem;
	display: flex;
	flex-flow: row;
	gap: 4rem;
}



.tt_address_detail .person {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
}
@media (min-width: 60rem) {
	.tt_address_detail .person {
		width: 40%;
		min-width: 20rem;
	}
}

.tt_address_detail .person p {
	padding-top: .5rem;
	margin-block-end: 0;
	text-align: center;
}
.tt_address_detail .person h2 {
	margin: 0;
	text-align: center;
	font-size: 1.33rem;
	letter-spacing: -0.0125rem;
}


.tt_address_detail .figure {
	max-width: 18rem;
}
.tt_address_detail .figure img {
	width: 100%;
}
.tt_address_detail .description {
	margin-block-start: 1rem;
}


@media (max-width:70rem) {
	.tt_address_list .simple {
		flex-flow: column;
	}
}



main ul.f3-widget-paginator {
	display: flex;
	justify-content: center;
	padding-left: 0;
	list-style: none;
	border-radius: 0.25rem;
	margin: 4rem auto;
}

main ul.f3-widget-paginator li {
	background: none;
	border: none;
	/*border-radius: 50%;*/
	width: 40px;
	height: 40px;
	line-height: 40px;
	padding: 0;
	margin: 0 4px;
	text-align: center;
}

main ul.f3-widget-paginator li a {
	border: none;
	/*border-radius: 50%;*/
	width: 40px;
	height: 40px;
	line-height: 40px;
	padding: 0;
	text-decoration : none;
	color: inherit;
	display : inline-block;
}

main ul.f3-widget-paginator li a i {
	font-style: normal;
}

main ul.f3-widget-paginator li.current {
	z-index: 2;
	color: #fff;
	text-decoration: none;
	background-color: #6c757d;
	width: 38px;
	height: 38px;
	line-height: 38px;
}
main ul.f3-widget-paginator li.disabled {
	z-index: 2;
	color: #ccc;
	text-decoration: none;
}
main ul.f3-widget-paginator li a:hover {
	z-index: 2;
	color: #6c757d;
	text-decoration: none;
	background-color: #e9ecef;
	border-color: #dee2e6;
}






.offer.detail h3 {
	font-size: 1.33rem;
	position: relative;
}

.offer.detail h3::before {
	content: "";
	position: absolute;
	left: -1rem;
	height: 100%;
	border-right: 3px solid #ffb446;
}




.column-margin.functions .img.align-center  img[src$="svg"]  {
	padding: 1rem 2rem;
}



/* splide crossfade */
.splide .splide__slide:first-of-type,
.splide .is-prev {
	opacity: 1 !important;
}

.splide .is-last.is-visible {
	/* opacity: 1 !important; */
	z-index: 100 !important;
}

.splide .splide__pagination__page.is-active {
	background: #888;
}



/* forms */
.form fieldset {
	border: 0;
	padding: 0;
}
.form fieldset > div {
	margin: 0 0 1.5rem;
}

.form label {
	font-size: .8rem;
}
.form input[type=text],
.form input[type=email],
.form input[type=tel],
.form select {
	border-top:0;
	border-left:0;
	border-right:0;
	padding-block: .75rem;
	padding-inline: 1rem;
}


.form textarea {
	border-top:0;
	border-left:0;
	border-right:0;
	padding-block: .75rem;
	padding-inline: 1rem;
}

.form input[type="radio"],
.form input[type="checkbox"] {
	font-size: 1.25rem;
}
.form .radio label,
.form .checkbox label {
	font-size: 1rem;
}

.form select {
	appearance: none;
	position: relative;
	background-image: url("../icons/arrow-down.svg");
	background-size: .8rem auto;
	background-repeat: no-repeat;
	background-position: calc(100% - .75rem) center;
}


.form input[type=submit] {
	cursor: pointer;
	border: 2px solid #666;
	padding: .25rem 3rem;
	display: inline-block;
	width: auto;
	color: #fff;
	background-color: #666;
	transition: .1s all ease-in-out;
}
.form input[type=submit]:hover {
	color: #000;
	background-color: #fff;
}




/* innovations */

.orange-bg .column-page-left .header h2 {
	margin-block-end: 0;
}

main ul.innovations-list-categories,
main ul.innovations-list-tags {
	list-style-type: none;
	padding: 0;
	margin: 0 0 0.25rem;
}
main ul.innovations-list-categories li,
main ul.innovations-list-tags li {
	background-color: #e8e8e8;
	border: 1px solid #e8e8e8;
	border-radius: .5rem;
	display: inline-block;
	padding: 0;
	margin: 0 0 .25rem;
}
main ul.innovations-list-categories li:not(:has(a)),
main ul.innovations-list-tags li:not(:has(a)) {
	padding: .3rem .75rem .2rem;
	font-size: .9rem;
	margin: 0 .33rem .33rem 0;
}
main ul.innovations-list-categories li a,
main ul.innovations-list-tags li a {
	display: block;
	padding: .2rem .75rem .15rem;
	font-size: .775rem;
}

main ul.innovations-list-categories li:hover,
main ul.innovations-list-tas li:hover {
	background-color: #fff;
	border-color: #aaa;
}
main ul.innovations-list-categories li a {
	text-decoration: none;
}



/* search */
.tx-solr-search.column-screen.page-columns.orange-bg {
	padding-block: 1rem;
	border-radius: 0;
}

.offers > h2,
.tx-solr-search > h2 {
	text-align: center;
	font-size: 2rem;
	padding: 2rem 0;
}

.tx-solr-search-form {
	display: flex;
	gap: 1rem;
}
#tx-solr-search-functions {
	margin-bottom: 1rem;
}

.tx-solr-search-form .form-fields {
	flex: 1;
}

.tx-solr-search-form .form-fields .input-group {
	display: flex;
}

.tx-solr-search-form .form-fields .input-group input {
	padding: .5rem;
	font-size: 1.25rem;
	border: 0;
	border-radius: 1px 0 0 1px;
}

.tx-solr-search-form .form-fields .input-group .tx-solr-submit {
	text-wrap: nowrap;
	padding: .7rem 2rem;
	font-size: 1rem;
	font-weight: normal;
	border: 2px solid #666;
	transition: ease-in color,background-color .2s;
	border-radius: 0 1px 1px 0 ;
	background-color: #666;
}
.tx-solr-search-form .form-fields .input-group .tx-solr-submit:hover {
	color: #000;
	background-color: #fff;
}


.tx-solr-search-form .howto {
	padding: .25rem 0.75rem;
	font-size: 0.75rem;
	margin-bottom: 0;
	opacity: 0;
	transition: opacity ease-in .2s;
}
.tx-solr-search-form .form-fields:has( input:focus ) .howto {
	opacity: 1;
}

.tx-solr-search-form .sorting h3 {
	display: none;
}

main .tx-solr-search-form .sorting ul {
	margin: .25rem 0 0;
	padding: 0;
}

main .tx-solr-search-form .sorting ul li::marker {
	content: "";
}
main .tx-solr-search-form .sorting ul li {
	margin-top: .25rem;
	font-size: 0.75rem;
}
main .tx-solr-search-form .sorting ul li a {
	text-decoration: none;
}

.facets h3 {
	font-size: 0.85rem;
	padding: 0 .75rem;
	margin-block-end: .125rem;
}

#tx-solr-facets {
	display: flex;
	margin-block-end: .5rem;
}
#tx-solr-facets .in-use {
	flex: 1;
}

.facet-result-count {
	display: none;
}

.page-columns.column-screen.results {
	margin-block-start: 1rem;
}

.results-list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1rem;
	margin: 0 .75rem;
}

.results-list .search-result {
	background-color: #eee;
	aspect-ratio: 16/9;
	width: calc(33% - .425rem);
	overflow: hidden;
	border-radius: 1px;
}
@media (max-width:70rem) {
	.results-list .search-result {
		width: 100%;
	}
}

.results-list .search-result .results-teaser {
	display: none;
}

.tx-solr-search.column-screen.page-columns + .cta {
	margin-block-start: 4rem;
}

/* watchlist */

.functions div > .link {
	display: block;
	padding: .25em 1em;
	font-size: 0.85em;
	background-color: #666;
	background-image: none;
	border: 1px solid #666;
	color: #fff;
	text-decoration: none;
	text-align: center;
	background-color: #666;
	transition: .1s background-color ease-in-out;
	cursor: pointer;
}
.functions div > .link:hover {
	background-color: #fff;
	color: #666;
}


.watchlist .link.remove::before {
	margin-left: .1rem;
	content: "-";
}

/* ------------------------------------------------------------------------- */ /* overlay */

html.modal-open {
	overflow: hidden;
}
body.modal-open {
	overflow: scroll;
	height: 100%;
}
.modal-open .overlay,
.sticky.modal-open .overlay {
	position: fixed;
	top: 0;
	left: 0;

}

.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(51,51,51,0.92);
	z-index: 999;
	overflow-y: auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
#modal-bg {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	z-index: 9998;

}

.is-hidden {
	display: none;
}

.modal-content {
	padding: 20px 30px;
	width: 100%;
	max-width: 40rem;
	position: relative;
	min-height: 10rem;
	margin: 0 auto;
	background: #fff;
	z-index: 9999;
	transition: margin 0.15s ease-out;
	box-sizing: border-box;
}
.sticky .modal-content {
	margin-top: 80px;
}

@media (max-width: 768px) {
	.modal-content {
		padding: 20px;
		margin-top: 100px;
	}
	.sticky .modal-content {
		margin-top: 50px;
	}
}


.button-close {
	display: inline-block;
	width: 24px;
	height: 24px;
	position: absolute;
	top: 1rem;
	right: 1.5rem;
	cursor: pointer;
	/* background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAowAAAKMB8MeazgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAB5SURBVDiNrZPRCcAwCEQfnUiySAZuF8kSWeH6Yz8KrQZMQAicJ+epAB0YwAmYJKIADLic0/GPPCbQAnLznCd/4NWUFfkgy1VjH8CryA95ApYltAiTRCZxpuoW+gz9WXE6NPeg+ra1UDIxGlWEObe4SGxY5fIxlc75Bkt9V4JS7KWJAAAAAElFTkSuQmCC59ef34356faa7edebc7ed5432ddb673d'); */
}

.button-close:before,
.button-close:after {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 100%;
	height: 2px;
	background: #000;
	content: "";
	transition: transform 0.35s;
}
.button-close:before {
	transform: translate(-50%, -50%) rotate(45deg);
	background: #000;
}
.button-close:after {
	transform: translate(-50%, -50%) rotate(-45deg);
	background: #000;
}




/* ------------------------------------------------------------------------- */ /* watchlist results */


.watchlist-wrapper-inner {
	display: flex;
	flex-flow: column;
}

.watchlist-scrollable {
	padding: 20px 0 30px;
}

.watchlist-message-empty-list {
	margin: 2.5em 0 0;
}

ul.watchlist {
	list-style: none;
}

ul.watchlist li {
	margin: .5em 0 1.5em;
}

.watchlist-offer {
	text-decoration: none;
	font-weight: bold;
	color: inherit;
}
.watchlist-offer b {
	font-weight: 600;
}


.watchlist-wrapper .watchlist li a.watchlist-delete-one,
.watchlist-wrapper .watchlist li a.watchlist-delete-one:focus,
.watchlist-wrapper .watchlist li a.watchlist-delete-one:hover,
.watchlist-wrapper .watchlist li a.watchlist-title,
.watchlist-wrapper .watchlist li a:focus.watchlist-title,
.watchlist-wrapper .watchlist li a:hover.watchlist-title {
	text-decoration:none
}

.watchlist-wrapper .watchlist li a.watchlist-title {
	font-size: 0.95em;
	color: #888;
}


.watchlist-btns {
	display: flex;
	justify-content: space-between;
	flex-flow: row-reverse;
}

.delete-watchlist {
	position: relative;
	top: .5em;
	color: #ccc;
	cursor: pointer;
	transition: .2s color ease-in-out;
}
.delete-watchlist:hover {
	color: #aaa;
}

#watchlist-popup .watchlist-delete-one {
	float: left;
	position: relative;
	margin: .25em .5em 0 0;
	height: 3em;
}

#watchlist-popup .watchlist-delete-one:before {
	content: '';
	font-weight: bold;
	display: block;
	width: 16px;
	height: 16px;
	background: center center / 12px 12px no-repeat url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAowAAAKMB8MeazgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAB5SURBVDiNrZPRCcAwCEQfnUiySAZuF8kSWeH6Yz8KrQZMQAicJ+epAB0YwAmYJKIADLic0/GPPCbQAnLznCd/4NWUFfkgy1VjH8CryA95ApYltAiTRCZxpuoW+gz9WXE6NPeg+ra1UDIxGlWEObe4SGxY5fIxlc75Bkt9V4JS7KWJAAAAAElFTkSuQmCC59ef34356faa7edebc7ed5432ddb673d');
	cursor: pointer;
}

.create-all-pdfs {
	padding: .33em 1em .4em;
	font-size: 0.95em;
	background-color: #000;
	border: 1px solid #000;
	color: #fff;
	text-decoration: none;
	text-align: center;
	background-color: #000;
	width: 16em;
}
.create-all-pdfs:hover {
	background-color: #fff;
	color: #000;
	cursor: pointer;
}





/* ------------------------------------------------------------------------- */ /* partner */


main .partner {
	margin-top: 6rem;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: flex-start;
	align-items: center;
}
.partner h3 {
	width: 100%;
	flex-grow: 1;
	border-bottom: 2px solid #eee;
	text-align: left;
}
.partner p {
	font-size: .8rem;
}

.partner .imgs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem;
}


#u14734 .partner figure {
	max-width: 10rem;
}
#u14734 .partner figure img {
	padding: 1rem;
	min-width: 4rem;
}

/* hafis partner logo normalisation */
#c74697 img { width: 10rem; }
#c74697 a[href*="gsi"]  img { padding: 1rem 1.75rem; }
#c74697 a[href*="hzdr"] img { padding: 1rem 1.5rem;  }
#c74697 a[href*="kit"]  img { padding: 1rem 1.5rem;  }
#c74697 a[href*="fz"]   img { padding: 1rem .75rem;  }

/* kitie partner logo normalisation */
#c74694 img { width: 10rem; }
#c74694 img[src*="cau"]   { padding: 1rem 0; }
#c74694 img[src*="HZDR"]  { padding: 1rem 1.75rem; }
#c74694 img[src*="unibw"] { padding: 1rem 0; }
#c74694 img[src*="inm"]   { padding: 1rem 2rem; }
#c74694 img[src*="GSI"]   { padding: 1rem 1.5rem; }

/* opentransfer partner logo normalisation */
#c74696 img { width: 10rem; }
#c74696 img[src*="HZDR"]  { padding: 1rem 1.75rem; }
#c74696 img[src*="IPHT"]  { padding: 1rem 0rem; }
#c74696 img[src*="GSI"]   { padding: 1rem 1.5rem; }

@media (max-width:70rem) {
	#u14734 .partner figure {
		max-width: 50%;
	}
	#u14734 .partner figure img {
		padding: .5rem;
	}
}




.forms {
	display: flex;
	justify-content: space-between;
	flex-flow: column;
	flex-wrap: wrap;
	gap: 1rem;
}
.forms h3 {
	width: 100%;
	flex-grow: 1;
	border-bottom: 1px solid #ccc;
	margin-bottom: 1rem;
}






#u14724 .frame-type-textpic.lightorange-bg {
	flex-flow: row-reverse;
}
#u14724 .frame-type-textpic.lightorange-bg .imgs {
	padding: 0 0 0 4rem;
}
#u14724 .frame-type-textpic.lightorange-bg img {
	width: 14rem;
	padding: 2rem;
}





/* roadshow */
.roadshow {
	display: grid;
	grid-template-columns: 2fr 3fr;
	grid-template-rows:    2fr 1fr;
	gap: 2rem;
	background-color: #fafafa;
	border: 1px solid #f0f0f0;
	padding: 2rem;
	margin-top: 1rem;
}

.roadshow .date {
	color: #00599c;
}
.roadshow .details p {
	margin: .5rem 0 0 0;
}
.roadshow .vacancy {
	text-align: right;
	color: #aaa;
	grid-column: 1 / span 2;
}

.roadshow .vacancy a {
	text-decoration: none;
	margin: 2rem 0 0;
	padding: .5rem 1rem .5rem 2.5rem;
	border: 2px solid #666;
	background-color: #666;
	color: #fff;
}
@media (max-width:70rem) {
	.roadshow {
		padding: 1.5rem;
		grid-template-columns: 1fr;
		grid-template-rows: 1fr;
	}
	.roadshow .vacancy {
		grid-column: 1;
	}
	.roadshow .vacancy a {
		font-size: .9rem;
		padding: .5rem 0rem .5rem 1.5rem;
	}
	.roadshow .vacancy a:hover::after {
		margin: 0 .25rem;
	}
}


/* heptech  */

main  > .heptech {
	border-top: 2px solid #eee;
	margin: 0;
	padding: 1rem 0;
	display:grid;
	grid-template-columns: 1fr 4fr 1fr;
}
.heptech:last-of-type  {
	border-bottom: 2px solid #eee;
}

.heptech .ep  {
	font-size: .9rem;
	color: #888;
}

.heptech a {
	text-decoration: none;
	display: block;

}
.heptech a:after {
	content: "";
	padding-left: .25rem;
	transition: ease-in all .25s;
	background: transparent center center no-repeat url(../icons/arrow-right.svg); /*from here: https://www.svgrepo.com/svg/520525/arrow-right */
	background-size: 1.25rem auto;
	display: inline-block;
	width: 1.25rem;
	height: .6rem;
}



.heptech .date {
	text-align: right;
}








/* quotation element */

/* TODS Quotes */

/* :lang(en) > * { quotes: '“' '”' '‘' '’'  ; } /* “Generic English ‘style’” */
:lang(de) > * { quotes: '„' '“' '‚' '‘'; } /* „German ‚style‘“ */
:lang(fr) > * { quotes: '«\00202F' '\00202F»' '“' '”'; } /* « French “style” » */
:lang(en-EN) > * { quotes: '‘' '’' '“' '”' ; } /* ‘British “style”’ */

q::before { content: open-quote }
q::after  { content: close-quote }

.quotation {
	position: relative;
	background-color: #fff;
	min-height: 20rem;
}
.splide .quotation {
	height: 100%;
}

.quotation .txt {
	position: absolute;
	top: 0;
	right: 0;
	padding: 4rem 2rem;
	text-align: right;
}
.quotation .txt blockquote {
	display: flex;
	justify-content: end;
	font-size: 1.33rem;
	font-style: italic;
	line-height: 1.5;
}
.quotation blockquote p {
	max-inline-size: 38ch;

}
.quotation blockquote p:first-of-type::before {
	content: open-quote;
}
.quotation blockquote p:last-of-type::after  {
	content: close-quote;
}
.quotation blockquote p:first-of-type::before {
	margin-inline-start: -0.87ch;
}
.quotation p {
	hanging-punctuation: first last;
}
@supports(hanging-punctuation: first last) {
	.quotation p:first-of-type::before {
		margin-inline-start: 0;
	}
}
@media screen and (max-width: 64rem) {
	.quotation {
		border: 1px solid #ccc;
	}
	.quotation .txt {
		position: relative;
		padding: 0 1rem 1rem;
	}
}
@media screen and (max-width: 120rem) {
	#c82511.quotation .txt blockquote {
		max-width: 30rem;
	}
}





#a14742[aria-haspopup="true"]:after {
	display: none;
}
