/**
 * DAI Labor environment custom CSS
 */

/** Global **/

.text-icon {
	display: inline-block !important;
	vertical-align: middle !important;
	margin-right: 4px;
}

.image-round {
	overflow: hidden;
	border-radius: 50%;
	box-sizing: border-box;
	background-size: 102%;
	background-position: center center;
	background-repeat: no-repeat;
	transition: 0.4s;
}

a:hover .image-round {
	background-size: 120%;
}

a:hover .image-round.no-effect {
	background-size: 102%;
	filter: none;
}

a.read-more {
	display: block;
	font-size: 16px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.75;
	letter-spacing: normal;
	color: #005c71;
}

a.read-more:hover {
	color: #005c71;
	text-decoration: underline;
}

.photo-box {
	width: 100%;
}

.logo-small {
	width: 32px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 4px;
}

.image-round:after {
	padding-bottom: 100%;
	content: "";
	display: block;
}

ul.list-default {
	list-style-type: none;
}

ul.list-horizontal {
	display: inline;
}

input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="week"] {
	min-height: 0px !important;
}

.drop-shadow {
	box-shadow: 6px 12px 12px -6px rgba(0,0,0,0.25);
	-moz-box-shadow: 6px 12px 12px -6px rgba(0,0,0,0.25);
	-webkit-box-shadow: 6px 12px 12px -6px rgba(0,0,0,0.25);
}

.bg-white {
	background-color: #fff;
}

.align-center,
.align-center div.contact-field,
.text-center {
	text-align: center;
}

select#post_lang_choice {
    pointer-events: none;
}

.hyphens-auto * {
	hyphens: auto !important;
	-ms-hyphens: auto !important;
}

.space-above {	margin-top: 3em !important;	}
.space-below {	margin-bottom: 3em !important;	}
.space-around {
	margin-top: 3em !important;
	margin-bottom: 3em !important;
}

.space-above-m {	margin-top: 2em !important;	}
.space-below-m {	margin-bottom: 2em !important;	}
.space-around-m {
	margin-top: 2em !important;
	margin-bottom: 2em !important;
}

.space-above-s {	margin-top: 0.5em !important;	}
.space-below-s {	margin-bottom: 0.5em !important;	}
.space-around-s {
	margin-top: 0.5em !important;
	margin-bottom: 0.5em !important;
}

.space-above-20 {
	margin-top: 20px;
}

.printing {
	display: block;
	margin: 4px 0;
}

.printing span.loading {
	display: none;
	padding-left: 20px;
	line-height: 1.4;
	background-image: url(../img/loader.gif);
	background-repeat: no-repeat;
	background-position: left center;
}

.post-content {
	padding: 0 10px;
}

.post-links {
	display: flex;
	flex-flow: row wrap;
	width: 100%;
	justify-content: space-between;
}

.post-links a {
	border: 1px solid #bad8df;
	color: #fff !important;
	background: #0090b1;
	border-radius: 4px;
	margin: 4px 0;
	padding: 2px 8px;
	transition: background 400ms;
}

.post-links a { width: 100%; }

.post-links a:hover {
	background: #20b0d1;
}

.search-text-wrapper input.search-text {
	width: 100%;
	font-size: 16px !important;
	padding: 16px 16px 16px 36px !important;
	background-color: transparent;
	border-radius: 0px;
	border: 0 transparent;
	border-bottom: 1px solid #000;
}

.search-text-wrapper input.search-text:focus {
	border: 0 transparent;
	border-bottom: 1px solid #0090b1 !important;
}

.search-text-wrapper {
	display: block;
	position: relative;
}


.search-text-wrapper i {
	position: absolute;
	left: 2px;
	top: 50%;
	font-size: 24px;
	color: #005c71;
	transform: translateY(-50%);
}

.dai-dashboard {
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
}

.dai-dashboard .env-status {
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	width: 100%;
}

.dai-dashboard .env-status > div {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: center;
}


.dai-dashboard .env-status .icon {
	width: 32px;
	height: 32px;
	font-size: 24px;
}

input.running {
	background-image: url(../img/loading.gif) !important;
}

div.search-results {
	display: block;
	position: relative;
	height: 24px;
	border-radius: 4px;
	margin: 12px 0px 24px 0px;
}

div.search-results span.label {
	display: block;
	width: 100%;
	float: right;
	color: #5a5a5a;
	font-size: 14px !important;
	font-style: italic;
	text-align: right;
}

div.search-results .bar {
	display: block;
	background-color: #bad8df;
	width: 100%;
	height: 5px;
	float: right;
	overflow: hidden;
}

div.search-results .found {
	display: inline-block;
	float: right;
	width: 0%;
	height: 100%;
	background-color: #005c71;
	transition: 0.4s;
}

.global-search {
	position: relative;
	font-size: 16px;
	transform: translateY(-3px);
	color: #000 !important;
}

.global-search input#keywords {
	display: none;
	position: absolute;
	right: 0;
	min-width: 300px;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index: 1;
}

.global-search:hover input#keywords {
	display: block;
}

h4.topic {
	font-size: 30px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	text-align: center;
	margin: 50px 0px 24px 0px !important;
}

h4.subsection {
	font-size: 30px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	color: #000 !important;
	margin: 0px 0px 15px 0px !important;
}

h5.subsection {
	font-size: 32px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.31;
	letter-spacing: normal;
	color: #000000 !important;
}

h5.group-year {
	font-size: 30px;
	font-weight: 300;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	text-decoration: underline;
	color: #000 !important;
	margin: 10px 0 30px 0 !important;
}

span.circled-value {
	width: 200px;
	text-align: center;
	display: inline-block;
	border-radius: 50%;
	border: 4px solid #00dfe5;
	padding: 16px;
	font-size: 42pt;
}

span.circled-value:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	padding-top: 100%;
	height: 0;
}

div.link-wrapper-left {
	display: block;
	width: 100%;
	text-align: left;
}

div.link-wrapper-center {
	display: block;
	width: 100%;
	text-align: center;
}

div.link-wrapper-right {
	display: block;
	width: 100%;
	text-align: right;
}

span.amount {
	color: #5a5a5a;
	font-size: 14px;
	font-style: italic;
}

h5.amount {
	font-size: 22px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.27;
	letter-spacing: normal;
	text-align: center;
	color: #fff;
}

img.section-image {
	display: block;
}

img.section-inline-image {
	display: none;
	margin-bottom: 30px;
}

a.link-page {
	font-size: 14px;
	font-weight: bold;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.43;
	letter-spacing: normal;
	text-align: center;
	color: #fff;
	padding: 10px 30px 10px 30px;
	background-color: #005c71;
	        border-radius: 24px;
	   -moz-border-radius: 24px;
	-webkit-border-radius: 24px;
	        box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0.6);
	   -moz-box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0.6);
	-webkit-box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0.6);
	margin-left: auto;
	margin-right: auto;
	display: inline-block;
	vertical-align: middle;
	transition: 0.4s;
}

a.link-page:hover {
	color: #fff;
	background-color: #003c54;
	        box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0);
	   -moz-box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0);
	-webkit-box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0);
}

a.link-page.light {
	        box-shadow: 0 12px 24px 0 rgba(0, 144, 177, 0.6);
	   -moz-box-shadow: 0 12px 24px 0 rgba(0, 144, 177, 0.6);
	-webkit-box-shadow: 0 12px 24px 0 rgba(0, 144, 177, 0.6);
	background-color: #0090b1;
}

a.link-page.light:hover {
	        box-shadow: 0 12px 24px 0 rgba(0, 144, 177, 0.4);
	   -moz-box-shadow: 0 12px 24px 0 rgba(0, 144, 177, 0.4);
	-webkit-box-shadow: 0 12px 24px 0 rgba(0, 144, 177, 0.4);
	background-color: #bad8df;
}

a.link-page-rect {
	        border-radius: 8px !important;
	   -moz-border-radius: 8px !important;
	-webkit-border-radius: 8px !important;
}

.link-page-block {
	margin: 6px;
}

.margin-horizontal-32 {
	margin-left: 32px;
	margin-right: 32px;
}

.no-select {
  -webkit-touch-callout: none;
    -webkit-user-select: none;
     -khtml-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}

.dai-assets ul,
ul.bullets {
	list-style-position: inside;
	list-style: none;
}

.dai-assets ul > li {
	position: relative;
	margin-left: 28px;
}

.dai-assets ol li {
	padding: 0 0 0 8px;
	margin: 0 0 0 18px;
}

.dai-assets ol {
	list-style-position: outside;
}

.dai-assets ul > li:before,
ul.bullets li:before {
	position: absolute;
	left: -24px;
	top: 6px;
	font-family: FontAwesome;
	font-size: 10px;
	color: #005c71 !important;
	content: "\f0c8";
}

.dai-multi-hl h4:not(:first-child) {
	margin: 50px 0 15px 0 !important;
}

#dai-labor-map {
	width: 100%;
	height: 240px;
}
#dai-labor-map .leaflet-control-zoom a {
	color: #005c71;
}

#dai-labor-map .leaflet-control-zoom a:hover {
	color: #00c7d2;
}

#dai-labor-map .leaflet-control-attribution a {
	color: #000;
}

div.search-wrapper {
	display: block;
	width: 75%;
	margin: 0px auto 0px auto;
}

.category {
	width: 100%;
}

.category h4 {
	margin: 0 10px 4px 10px !important;
	padding-top: 20px !important;
	color: #6d7680 !important;
}

.category .divider-line {
	position: relative;
	display: block;
	width: 50%;
	height: 3px;
	border-radius: 2px;
	background-image: linear-gradient(to right, #00c7d2, #00e6ea 52%, rgba(0, 200, 209, 0));
	transition: 0.4s;
	margin: 0 10px 20px 10px;
}

div.code-container {
	position: relative;
}

div.code-container .expand-content {
	height: 0px;
	overflow: hidden;
	width: 100%;
	transition: 0.4s;
}

div.code-container > div.code-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-radius: 6px;
	background: linear-gradient(to bottom, #f4f4f4, #d6e7eb);
	border: 1px solid #bbb;
}

div.bibtex-container {
	position: relative;
}

div.bibtex-container > div.header {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-flow: row nowrap;
}

div.bibtex-container > div.header a.expand {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-flow: row nowrap;
}

div.bibtex-container > div.header a.expand h6 {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: normal;
	color: inherit;
	margin: 0 22px 0 0 !important;
	transition: 0.4s;
}

div.bibtex-container > div.header a.expand {
	color: #000000 !important;
}

div.bibtex-container > div.header a.expand:hover h6 {
	text-decoration: underline;
}

div.bibtex-container > div.header a.copy-content {
	font-size: 16px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.75;
	letter-spacing: normal;
	color: #005c71 !important;
}

div.bibtex-container > div.header a.copy-content i {
	font-size: 0px;
	width: 18px;
	height: 18px;
	line-height: 18px;
	text-align: center;
	vertical-align: middle;
	color: #00c7d2 !important;
	        opacity: 1;
	   -moz-opacity: 1;
	-webkit-opacity: 1;
	margin: -2px 0 0 4px;
	transition: 0.4s;
}

div.bibtex-container > div.header a.copy-content.success i {
	font-size: 18px;
	        opacity: 1;
	   -moz-opacity: 1;
	-webkit-opacity: 1;
}

div.bibtex-container > div.header a.copy-content:hover {
	color: #000000 !important;
}


div.bibtex-container i.expand-icon {
	font-size: 16px !important;
	margin: 4px 6px 0 2px;
	transition: 0.4s;
	color: inherit;
	text-decoration: none;
}

div.bibtex-container.expanded i.expand-icon {
	-webkit-transform: scaleY(-1);
	   -moz-transform: scaleY(-1);
	     -o-transform: scaleY(-1);
	        transform: scaleY(-1);
	-ms-filter: "FlipV";
		filter: "FlipV";
}

div.bibtex-container .expand-content {
	height: 0px;
	overflow: hidden;
	width: 100%;
	transition: 0.4s;
}

div.bibtex-container pre.bibtex {
	background-color: #f0f0f0;
	color: #424242;
	font-size: 14px;
	margin: 14px 0 0 18px;
	padding: 12px;
}

div.code-container i.expand-icon {
	font-size: 20px !important;
	padding-left: 20px;
	transition: 0.4s;
	color: #000 !important;
}

div.code-container.expanded i.expand-icon {
	-webkit-transform: scaleY(-1);
	   -moz-transform: scaleY(-1);
	     -o-transform: scaleY(-1);
	        transform: scaleY(-1);
	-ms-filter: "FlipV";
		filter: "FlipV";
}

div.code-container > div.code-wrapper {
	width: 100%;
}

div.code-container > div.code-header a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-flow: row nowrap;
	flex-grow: 1;
}

div.code-container > div.code-header h6 {
	margin: 0 !important;
	padding: 8px 20px 8px 8px;
	color: #000 !important;
}

div.code-container pre[class*="language-"] {
	margin: 0 !important;
}

button.copy-content {
	padding: 12px 40px;
	color: #000;
	font-size: 20px;
	border: 1px solid #bbb;
	border-radius: 6px;
	background-color: #aac8cf;
	transition: 0.4s;
}

button.copy-content:hover {
	background-color: rgba(214, 231, 235, 1);
}

button.copy-content.success {
	background-color: rgba(136, 238, 170, 1);
}

/** Flex layout **/

.flex-container {
	display: flex;
	align-items: flex-start;
	flex-flow: row wrap;
	justify-content: flex-start;
}

.flex-row-stretch {
	display: flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
}

.flex-row-nowrap {
	display: flex !important;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
}


.flex-col-reverse {
	display: flex;
	flex-direction: column-reverse;
}

.flex-columns {
	display: flex;
	align-items: flex-start;
	flex-flow: row nowrap;
	justify-content: space-between;
}

.flex-justify-center {
	justify-content: center;
}

.flex-justify-space {
	justify-content: space-between;
}

.flex-justify-space-around {
	justify-content: space-around;
}

.flex-section {
	display: flex;
	flex-flow: row nowrap;
	align-items: stretch;
	justify-content: flex-start;
}

.section.full-width-bg {
	width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
}

.section > .content-wrapper {
	max-width: 1400px;
	margin: 0 auto !important;
}

.flex-section-image {
	flex-grow: 0;
	justify-self: center;
}

.flex-section-content {
	flex-grow: 1;
	break-after: auto;
	flex-basis: 100%;
}

.flex-section-left h2.section-header {
	text-align: left;
}

.flex-section-image > img {
	margin-top: 80px;
	height: 500px;
	max-width: none;
}

.container-100 {
	position: relative;
	width: 100%;
}

.container-80 {
	position: relative;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.container-50 {
	position: relative;
	width: 50%;
}

.container-25 {
	position: relative;
	width: 25%;
}

.container-35 {
	width: 35%;
}

.container-65 {
	width: 65%;
}

.flex-item {
	padding: 0px 14px 0px 14px;
}

.flex-slider-item {
	padding: 10px 20px 10px 20px;
}

.flex-contact-item {
	max-width: 360px;
}

.flex-column {
	padding: 0px 12px;
}

.flex-column.pr-space {
	padding-right: 60px !important;
}


/** Filter **/

.filter-switch {
	display: inline-block;
	min-width: 120px;
	height: 38px;
	overflow: hidden;
	border-radius: 8px;
	border: 1px solid #7a7a7a;
	color: #7a7a7a;
	font-size: 18px;
	margin: 4px 8px 4px 8px;
	cursor: pointer;
	text-align: center;
	transition: 0.4s;
}

span.filter-label {
	line-height: 38px;
	padding-left: 10px;
	padding-right: 10px;
}

.filter-caption {
	line-height: 32px;
	font-size: 18px;
	color: #7a7a7a !important;
	font-weight: 400 !important;
	margin: 4px 16px !important;
}

.filter-checked {
	background-color: #005c71;
	color: #fff;
	border: 0px transparent;
}

.filter-hidden {
	display: none !important;
}

.filter-nomatch {
	display: none !important;
}


/** Containers & Dividers **/

.section {
	width: 100%;
	padding-top: 0.65em;
	padding-bottom: 2em;
}

.section h1,h2,h3,h4,h5,h6 {
	hyphens: none;
	-ms-hyphens: none;
	color: inherit !important;
	margin-top: 1em !important;
}

.section .section-header {
	font-size: 60px;
	font-weight: 100;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.3;
	letter-spacing: normal;
	text-align: center;
}

.section.subsection .section-header {
	font-size: 42px;
	margin-bottom: 0px;
}

.section.subsection .horizontal-rule {
	margin-top: 12px !important;
	width: 40% !important;
}


.section-content {
	font-size: 20px;
	hyphens: none;
}

.fadeshow img {
	opacity: 0;
	transform: translateX(-50px) scale(1.1);
	z-index: 0;
	transition: 1s;
}

.fadeshow img.visible {
	opacity: 1;
	transform: translateX(0px) scale(1);
}

.fadeshow img.fade-out {
	opacity: 0;
	transform: translateX(0px) scale(1);
	transition: 0.75s;
	z-index: 0;
}

.container-card {
	color: #000;
	background-color: #fff;
/*	box-shadow: 2px 2px 6px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 2px 2px 6px 0px rgba(0,0,0,0.25);
	-webkit-box-shadow: 2px 2px 6px 0px rgba(0,0,0,0.25);	*/
			box-shadow: 0 12px 24px 0 rgba(0, 74, 94, 0.51);
	   -moz-box-shadow: 0 12px 24px 0 rgba(0, 74, 94, 0.51);
	-webkit-box-shadow: 0 12px 24px 0 rgba(0, 74, 94, 0.51);
	-webkit-border-radius: 8px;
	   -moz-border-radius: 8px;
	        border-radius: 8px;
	padding: 24px;
	margin-bottom: 24px;
	overflow: auto;
}

.container-slider {
	color: #000;
	background-color: #fff;
			box-shadow: 0 10px 20px 0 rgba(0, 22, 41, 0.36);
	   -moz-box-shadow: 0 10px 20px 0 rgba(0, 22, 41, 0.36);
	-webkit-box-shadow: 0 10px 20px 0 rgba(0, 22, 41, 0.36);
	-webkit-border-radius: 8px;
	   -moz-border-radius: 8px;
	        border-radius: 8px;
	padding: 12px;
	margin: 0 0 24px 0;
	overflow: auto;
}

.shadow-grey {
	        box-shadow: 0 10px 20px 0 rgba(0, 22, 41, 0.36) !important;
	   -moz-box-shadow: 0 10px 20px 0 rgba(0, 22, 41, 0.36) !important;
	-webkit-box-shadow: 0 10px 20px 0 rgba(0, 22, 41, 0.36) !important;
}

.horizontal-rule {
	height: 5px;
	border-radius: 2px;
	margin: 33px auto 50px auto;
}

.width-full,
.width-100 {
	width: 100%;
}

.width-95 {	width: 95%;	}
.width-90 {	width: 90%;	}
.width-85 {	width: 85%;	}
.width-80 {	width: 80%;	}
.width-75 {	width: 75%;	}
.width-70 {	width: 70%;	}
.width-65 {	width: 65%;	}
.width-60 {	width: 60%;	}
.width-55 {	width: 55%;	}

.width-50 {
	width: 50%;
}

.width-25 {
	width: 25%;
}

.margin-auto {
	margin-left: auto;
	margin-right: auto;
}

.margin-s {
	margin: 8px;
}

.float-left {
	float: left;
}

.float-right {
	float: right;
}

/** Slider **/

.front-slider {
	width: 100%;
	height: 756px;
}

div.preloader {
	width: 64px;
	height: 64px;
	margin: 0 auto;
	background-image: url(../img/loading.gif);
	background-size: cover;
}

.preloading {
	display: none !important;
}

button.slick-prev,
button.slick-next {
	z-index: 80;
	text-overflow: unset !important;
	padding-left: 5px;
	width: 60px;
	height: 60px;
}

button.slick-prev {
	left: -55px;
}

button.slick-next {
	right: -55px;
}

button.slick-prev::before,
button.slick-next::before {
	font-family: "Font Awesome 5 Free" !important;
	display: inline-block;
	max-width: 30px;
	max-height: 30px;
	height: 30px;
	width: 30px;
	line-height: 30px !important;
	color: #fff !important;
	background-color: #005c71;
	opacity: 1;
	        border-radius: 50%;
	   -moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	        box-shadow: 0 6px 12px 0 #005c71;
	   -moz-box-shadow: 0 6px 12px 0 #005c71;
	-webkit-box-shadow: 0 6px 12px 0 #005c71;
	font-size: 20px !important;
	transition: 0.4s;
}

button.slick-prev::before {
	content: "\f104" !important;
}

button.slick-next::before {
	content: "\f105" !important;
}

button.slick-prev:hover::before,
button.slick-next:hover::before {
	background-color: #003c54;
	        box-shadow: 0 0 0 0 transparent;
	   -moz-box-shadow: 0 0 0 0 transparent;
	-webkit-box-shadow: 0 0 0 0 transparent;
}


.front-slider .slick-prev {
	left: 25px;
	z-index: 80;
}

.front-slider .slick-prev:before,
.front-slider .slick-next:before {
	color: #000 !important;
	background-color: #c4c4c4;
	        box-shadow: 0 0 0 #a4a4a4;
	   -moz-box-shadow: 0 0 0 #a4a4a4;
	-webkit-box-shadow: 0 0 0 #a4a4a4;
	transition: 0.4s;
}

.front-slider .slick-prev:hover:before,
.front-slider .slick-next:hover:before {
	background-color: #e4e4e4;
	        box-shadow: 0 0 0 #c4c4c4;
	   -moz-box-shadow: 0 0 0 #c4c4c4;
	-webkit-box-shadow: 0 0 0 #c4c4c4;
}

.front-slider .slick-next {
	right: 25px;
	z-index: 80;
}

.front-slider.slick-dotted.slick-slider {
	margin-bottom: 0px !important;
}

.front-slider .slick-dots {
}

.slick-dots li button::before {
	font-size: 10px !important;
}

.front-slide {
	position: relative;
	width: 100%;
	height: 756px;
}

.front-slide .background {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.front-slide .content {
	position: absolute;
	left: 12%;
	top: 25%;
	width: 76%;
	z-index: 1;
}

.front-slide h1 {
	display: inline-block;
	width: auto;
	font-weight: 600;
	font-size: 60px;
	background-color: rgba(255, 255, 255, 0.85);
	margin: 0 0 30px 0 !important;
	padding: 12px 32px;
	hyphens: none;
	-ms-hyphens: none;
}

.front-slide .about {
	max-width: 500px;
	background-color: rgba(255, 255, 255, 0.85);
	padding: 32px;
	font-size: 20px;
	font-weight: normal;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.6;
	letter-spacing: normal;
	color: #000;
}

.slider-title {
	font-size: 50pt !important;
	font-weight: bold;
}

.slider-about {
	font-size: 32pt !important;
	font-weight: normal;
/*	background-color: rgba(255, 255, 255, 0.5) !important; */
}

.sp-buttons {
	transform: translateY(-50px);
}

.sp-button {
	border: 2px solid #d8ecee !important;
}

.sp-selected-button {
	background-color: rgba(255, 255, 255, 0.65) !important;
}


/** Staff **/

.header-position {
	width: 100%;
	text-align: center;
	font-size: 50px;
	font-weight: 100;
	line-height: 1.2;
	letter-spacing: normal;
	color: #000;
	margin-top: 70px !important;
	margin-bottom: 50px !important;
}

.flex-staff {
	width: 33.3%;
}

.flex-staff-item {
	padding: 0 20px;
	margin-bottom: 40px;
}

.flex-news-item {
	padding: 0 20px;
}

.flex-staff-single {
	width: 100% !important;
}

.flex-staff-important {
	width: 100%;
}

.flex-staff-important > .container-card {
	display: flex;
	flex-flow: row nowrap;
	align-items: stretch;
	justify-content: flex-start;
	padding: 24px 24px 60px 24px;
}

.flex-staff-important .photo-box{
	width: 250px;
	margin: 0px 32px !important;
}

.flex-staff-important .staff-link {
	display: block;
	overflow: auto;
	width: 100%;
}

.flex-staff-important .staff-info {
	position: relative;
}

.flex-staff-important .staff-info .staff-name {
	color: #000 !important;
	font-size: 24pt;
	font-weight: bold;
	line-height: 1.27;
}

.flex-staff-important div.staff-name h5 {
	color: #000 !important;
	width: 100%;
	font-size: 32px;
	font-weight: 600;
	line-height: 1;
	margin: 24px 0px 12px 0px !important;
}

.flex-staff-important .staff-info .staff-about {
	color: #000 !important;
	display: block;
	margin: 0 24px 1em 0;
}

.flex-staff-important .staff-contact {
	display: block;
	position: absolute;
	bottom: 0;
	width: 100%;
}

.flex-staff-important .staff-contact .contact-field {
	float: left;
	width: 50%;
	hyphens: none;
	-ms-hyphens: none;
}

.flex-staff div.staff-contact div.contact-field {
	display: block;
	width: 100%;
	line-height: 1.2;
	margin: 0 0 20px 0;
	hyphens: none;
	-ms-hyphens: none;
	color: #005c71;
}

.flex-staff div.staff-contact div.contact-field span {
	width: auto;
}

.flex-staff .photo {
	width: 70%;
	margin-left: auto;
	margin-right: auto;
}

.flex-staff h5.caption {
	width: 100%;
	font-size: 30px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.27;
	letter-spacing: normal;
	text-align: center;
	color: #000 !important;
	margin: -10px 0 20px 0 !important;
}

.flex-staff div.staff-name {
	display: flex;
	align-items: center;
	width: 100%;
	height: 64px;
	overflow: hidden;
}

.flex-staff div.staff-name h5 {
	color: #000 !important;
	width: 100%;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
	font-weight: bold;
	line-height: 1.27;
	margin: 0px !important;
	transition: color 0.4s;
}

.flex-staff a:hover div.staff-name h5 {
	color: #005c71 !important;
}

.flex-staff div.staff-name span.title {
	color: #000;
	font-style: italic;
	font-weight: normal;
}

.flex-staff-important div.staff-name span.title {
	color: #000;
	font-style: italic;
}

.flex-staff div.staff-contact {
	display: flex;
	flex-direction: column;
	width: 92%;
	margin: 5px auto;
	height: 100px;
	line-height: 1;
	overflow: hidden;
}


.flex-staff-single div.staff-contact {
	height: auto !important;
}

.flex-staff div.social-web {
	display: flex !important;
	justify-content: flex-start;
	align-items: center;
}

.flex-staff div.social-web a {
	display: inline-block;
	width: 36px;
	height: 36px;
	line-height: 36px;
	text-align: left;
	font-size: 35px;
	margin: 6px 16px 6px 0px;
	color: #005c71 !important;
	transition: 0.4s;
	        opacity: 0.5;
	   -moz-opacity: 0.5;
	-webkit-opacity: 0.5;
}

.flex-staff div.social-web a:hover {
	        opacity: 1;
	   -moz-opacity: 1;
	-webkit-opacity: 1;
}


/** Testbeds **/

.flex-testbed {
	width: 33%;
}

.flex-item div.image-box {
	box-sizing: border-box;
	width: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	overflow: hidden;
	transform: scale(1.02);
	transition: 0.4s;
}

a:hover div.image-box {
	transform: scale(1.2) !important;
}

.bg-contained {
	background-size: contain !important;
}

.flex-item div.image-box:after {
	content: "";
	display: block;
	padding-bottom: 75%;
}

.flex-item div.image-box:after {
	content: "";
	display: block;
	padding-bottom: 75%;
}

.flex-testbed h5.headline {
	color: #000 !important;
	font-weight: 600;
	font-size: 42px;
	line-height: 1.1em;
	height: 3.4em;
	overflow: hidden;
	margin: 16px 0px 12px 0px !important;
	hyphens: none;
	-ms-hyphens: none;
}

.flex-testbed p.teaser {
	color: #000 !important;
	line-height: 1.67;
	margin: 0px !important;
	overflow: hidden;
}


/** Teaser Box **/

.flex-teaser-box.col-w-4 {
	width: 25%;
}

.flex-teaser-box.col-w-3 {
	width: 33.33%;
}

.flex-teaser-box.col-w-2 {
	width: 50%;
}

.flex-teaser-box.col-w-1 {
	width: 100%;
}

.flex-teaser-box.col-w-1 > a.teaser-link {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 90%;
	margin: 0 auto;
}

.flex-teaser-box div.image-container {
	position: relative;
	width: 100%;
	border-bottom: 6px solid #00cad3;
	overflow: hidden;
}

.flex-teaser-box.col-w-1 div.image-container {
	width: 36%;
}

.flex-teaser-box.col-w-1 div.text-container {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	width: 60%;
	padding-left: 40px;
}

.flex-teaser-box div.image-container:after {
	content: "";
	display: block;
}

.flex-teaser-box h5.headline {
	color: #000 !important;
	font-weight: 600;
	font-size: 30px;
	line-height: 1.2;
	max-height: 3.8em;
	overflow: hidden;
	margin: 16px 0px 12px 0px !important;
	hyphens: none;
	-ms-hyphens: none;
	transition: 0.4s;
}

.flex-teaser-box div.teaser-text {
	color: #000 !important;
	min-height: 84px;
	height: auto;
	line-height: 1.75;
	margin: 0px !important;
	overflow: hidden;
}

.flex-teaser-box-ext a:hover div.image-container:before {
	content: "";
	position: absolute;
	z-index: 200;
	width: 0;
	height: 0;
	left: 50%;
	bottom: 0px;
	margin-left: -24px;
	border-left: 24px solid transparent;
	border-right: 24px solid transparent;
	border-bottom: 16px solid #00cad3;
}

.flex-teaser-box a:hover h5.headline {
	color: #00cad3 !important;
}


/** News **/

.flex-news {
	width: 33.33%;
}

.news-container {
	width: 100%;
	color: #fff !important;
	line-height: 1.1 !important;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	        box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0.75);
	   -moz-box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0.75);
	-webkit-box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0.75);
	margin-bottom: 30px;
	overflow: hidden;
	transition: 0.4s;
}

.news-slide {
	width: 100%;
	color: #fff !important;
	line-height: 1.1 !important;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	        box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0.75);
	   -moz-box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0.75);
	-webkit-box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0.75);
	margin-bottom: 30px;
	overflow: hidden;
	transition: 0.4s;
}

a:hover .news-container,
a:hover .news-slide {
	        box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0);
	   -moz-box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0);
	-webkit-box-shadow: 0 12px 18px 0 rgba(0, 92, 113, 0);
}

.flex-news div.header-box {
	display: flex;
	position: relative;
	justify-content: flex-start;
	align-items: center;
	overflow: hidden;
	width: 100%;
	height: 220px;
	overflow: hidden;
	padding: 10px 20px 10px 20px;
}


.flex-news div.header-box .bottom-line {
	display: block;
	position: absolute;
	left: 0px;
	bottom: 0px;
	right: 0px;
	height: 7px;
	transition: 0.4s;
	background-color: #00cad3;
}

.flex-news div.header-box .bottom-line .gradient {
	display: block;
	width: 100%;
	height: 100%;
	        opacity: 0;
	   -moz-opacity: 0;
	-webkit-opacity: 0;
	background-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.75) 30%, rgba(255, 255, 255, 0.75) 70%, rgba(255, 255, 255, 0));
	transition: 0.4s;
}

.flex-news-ext a:hover div.header-box .bottom-line .gradient {
	        opacity: 1;
	   -moz-opacity: 1;
	-webkit-opacity: 1;
}

.flex-news h5.title {
	font-weight: 600;
	font-size: 30px;
	color: #fff !important;
	vertical-align: middle;
	margin: 0px !important;
	line-height: 1.2;
	hyphens: none;
	-ms-hyphens: none;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 4;
	max-height: 198px;
}

.flex-news div.date-field {
	display: block;
	width: 100%;
	vertical-align: middle;
	text-align: right;
	padding: 0px 20px 10px 20px;
	font-size: 14px;
	font-weight: normal;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.75;
	letter-spacing: normal;
	color: #fff;
}

.flex-news div.news-footer {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	padding: 0px 20px 10px 20px;
	font-size: 14px;
	font-weight: normal;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.75;
	letter-spacing: normal;
	color: #fff;
}

.flex-news div.date-field span.dashicons {
	font-size: 16px !important;
}

.flex-news-slide {
/*	height: 500px;	*/
}

.flex-slide-wrapper {
	margin: 0px 20px 0px 20px !important;
	transition: 0.4s;
}

a:hover .flex-slide-wrapper {
    -webkit-filter: brightness(1.2);
            filter: brightness(1.2);
}

.flex-news div.teaser-text {
	position: relative;
	padding: 20px;
	height: 240px;
	margin: 0px !important;
	color: #fff !important;
	font-size: 16px;
	line-height: 1.75;
	overflow: hidden;
	text-overflow: ellipsis;
}

.flex-news-line {
	width: 100%;
	margin-bottom: 30px;
}

.flex-news-line .news-wrapper {
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: flex-start;
}

.flex-news-line h5.title {
	font-weight: 300;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	color: #000 !important;
	margin: 0px !important;
	transition: 0.4s;
}

.flex-news-line h5.title i.fas {
	font-size: 20px;
}
.flex-news-line h5.date,
.flex-news-line h5.title {
	font-size: 30px;
}

.flex-news-line h5.title i.fas {
	margin-left: 6px;
	color: #005f71;
	transform: translateY(-2px);
	transition: 0.4s;
}

.flex-news-line h5.date {
	font-weight: 600;
	font-size: 20px;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.4;
	letter-spacing: normal;
	color: #fff !important;
	background-color: #005f71;
	margin: 0px !important;
	padding: 0 4px;
	transition: 0.4s;
}

.flex-news-line div.divider-line {
	position: relative;
	display: block;
	width: 50%;
	height: 3px;
	border-radius: 2px;
	background-image: linear-gradient(to right, #00c7d2, #00e6ea 52%, rgba(0, 200, 209, 0));
	transition: 0.4s;
}

.flex-news-line a:hover h5.title {
	color: #00c7d2 !important;
}

.flex-news-line a:hover h5.date {
	background-color: #00c7d2 !important;
}

.flex-news-line a:hover h5.title > i.fas {
	color: #00c7d2 !important;
}

.flex-news-line a:hover div.divider-line {
	width: 100%;
}

/** Accordion **/

.flex-accordion {
	width: 100%;
	transition: 0.4s;
}

.flex-accordion.separate {
	padding: 4px 0;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.flex-accordion.separate.expanded {
	padding: 4px 0;
	border-top: 1px solid rgba(0, 0, 0, 0);
	border-bottom: 1px solid rgba(0, 0, 0, 0);
}

.flex-accordion.expanded {
	transform: translateX(-4px) translateY(-4px);
	box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.25);
	-webkit-box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.25);
}

.flex-accordion .accordion-header {
	display: block;
	position: relative;
	width: 100%;
	padding: 0 12px;
}

.line-separator {
	width: 75%;
	height: 2px;
	background-color: rgba(0, 0, 0, 0.1);
	margin: 12px auto;
}

.flex-accordion .accordion-header h5.title {
	font-size: 24px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 48px;
	letter-spacing: normal;
	text-align: left;
	color: #000 !important;
	width: auto;
	margin: 12px 64px 12px auto !important;
	transition: color 0.4s;
}

.flex-accordion .accordion-header a:hover h5.title {
	color: #00c7d2 !important;
}

.flex-accordion .accordion-header a.expand .plus {
	position: absolute;
	text-align: center;
	right: 0px;
	top: -8px;
	width: 48px;
	height: 48px;
	margin: 8px;
	line-height: 48px;
	border-radius: 50%;
	color: #005c71 !important;
	font-size: 28px;
	transition: 0.4s;
}

.flex-accordion .accordion-content .pad {
	padding: 0px 12px 36px 12px;
}

.flex-accordion .accordion-header a.expand:hover .button {
	color: #ffffff !important;
	background-color: #0090b1;
}

.flex-accordion .accordion-header a.expand:hover .plus {
	color: #00c7d2 !important;
}

.flex-accordion .expand-content {
	height: 0px;
	overflow: hidden;
	width: 100%;
	transition: 0.4s;
}


.accordion-content h1,
.accordion-content h2,
.accordion-content h3,
.accordion-content h4,
.accordion-content h5,
.accordion-content h6 {
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.4;
	letter-spacing: normal;
	color: #000;
	margin-bottom: 8px;
}

.accordion-content h1 { font-size: 32px }
.accordion-content h2 { font-size: 28px }
.accordion-content h3 { font-size: 24px }
.accordion-content h4 { font-size: 20px }
.accordion-content h5 { font-size: 18px }
.accordion-content h6 { font-size: 16px }

.flex-accordion.expanded .hide-expanded {
	display: none;
	transition: all 400ms;
}

/** Theses **/
.flex-thesis {
	background: rgba(255, 255, 255, 0);
}

.flex-thesis.expanded {
	background: rgba(255, 255, 255, 1);
}

.thesis-contact {
	margin-bottom: 12px;
}

.thesis-box {
	border-radius: 6px;
	padding: 2px 12px 6px 12px;
	background: rgba(0, 0, 0, 0.05);
}

.thesis-box.pull-up {
	margin-top: -12px;
	margin-bottom: 12px;
}

.thesis-box.margin-shl {
	margin-right: 42px;
}

.thesis-box h6 {
	font-size: 12pt;
	margin: 0 0 4px 0 !important;

}

.contact-info {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
}

.contact-info div.photo {
	display: inline-block;
	float: left;
	width: 64px;
	height: 64px;
	margin: 0 16px 0 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	overflow: hidden !important;
}


/** Projects **/
.flex-project {
}

.project-container h2.section-header {
	font-size: 40px !important;
	max-width: 900px;
}

.flex-project div.teaser-text {
	hyphens: none;
	-ms-hyphens: none;
}


.flex-project-flagship {
	position: relative;
	width: 100%;
	margin-bottom: 50px;
	padding: 0 0 6px 0;
	border-radius: 4px;
	box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0.6);
	background: linear-gradient(
		to right,
		#00c7d3 0%,
		#00c7d3 55%,
		#fff 100%
	) left bottom #fff no-repeat;
	background-size: 100% 6px;
}

.flex-project-flagship div.project-image-box {
	display: block;
	width: 50%;
	height: 360px;
	overflow: hidden;
	border-radius: 4px 0 0 0;
}

a.flex-project-flagship-ext:hover:before {
	content: "";
	position: absolute;
	z-index: 200;
	width: 0;
	height: 0;
	left: 25%;
	bottom: 6px;
	margin-left: -24px;
	border-left: 24px solid transparent;
	border-right: 24px solid transparent;
	border-bottom: 16px solid #00c7d3;
}


div.reference-list {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: center;
}

div.reference-list > .reference {

}

div.project-partners {
	display: block;
	width: 100%;
}

div.project-partners div.partners > .partner {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	justify-content: center;
	width: 32%;
	max-width: 32%;
	min-height: 64px;
	padding: 0 6px 25px 6px;
}

div.project-partners div.partners > .partner > .partner-box {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

div.project-partners div.partners > .partner > .partner-box.no-label {
	height: 120px !important;
}

div.project-partners div.partners > .partner h4 {
	font-size: 14pt;
	margin: 0 !important;
	text-align: center;
}

div.project-partners h6 {
	font-size: 16px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.75;
	letter-spacing: normal;
	margin: 18px 0 6px 0 !important;
	color: #000;
}

div.project-partners .partner span {
	line-height: 1.25;
	font-size: 10pt;
	font-weight: 500;
	text-align: center;
	max-width: 100%;
}

div.project-partners img.logo {
	padding: 0 6px 0 0;
	border: 0;
	max-height: 64px;
}

div.project-partners div.partners {
	display: flex;
	align-items: flex-start;
	flex-flow: row wrap;
	justify-content: flex-start;
}

div.project-image {
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	transition: 0.4s;
}

a:hover div.project-image {
	transform: scale(1.1);
}

a:hover div.project-info h4.title {
	color: #00c7d2 !important;
}

.flex-project-flagship div.project-info {
	width: 50%;
	padding: 30px 25px;
	color: #000 !important;
	transition: 0.4s;
}

div.project-info h4.title {
	font-weight: 600 !important;
	font-size: 30px;
	font-weight: 600;
	line-height: 1.2;
	color: #000;
	margin: 0 0 10px 0;
	transition: 0.4s;
}

div.project-info div.subtitle {
	font-size: 20px;
	font-weight: normal;
	line-height: 1.6;
	height: 64px;
	overflow: hidden;
	margin: 0 0 22px 0;
}

div.project-info div.tags {
	font-size: 16px;
	font-weight: normal;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.75;
	font-size: 18px;
	height: 60px;
	overflow: hidden;
	hyphens: none;
	-ms-hyphens: none;
}

.title-image {
	width: 100%;
	padding: 0px 0px 30px 0px !important;
}

h4.project {
	font-size: 30px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	color: #000;
}

.project-header {
	display: flex;
	align-items: flex-start;
	flex-flow: nowrap;
	justify-content: flex-start;
	width: 100%;
	margin: 0px 0px 42px 0px;
}

.project-header img.logo {
	margin-right: 24px;
	height: 64px;
}

.project-header div.title {
	width: auto;
}

.project-header div.title h5 {
	font-size: 28px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	color: #000;
	margin: 0px !important;
}

.project-header div.title h6.subtitle {
	font-size: 18px;
	font-weight: 300;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	color: #3c3c3c;
	margin: 0px !important;
}

.container-card .funding {
	display: inline-flex;
	align-items: center;
	flex-flow: column nowrap;
	justify-content: flex-start;
	margin-top: 12px;
	max-width: 190px;
}

.funding img.contributor {
	width: 190px;
	margin: 8px auto;
}

.funding span.contributor {
	font-weight: 500;
	font-size: 20px;
}

.funding span.contributor-label {
	line-height: 1.25;
	font-size: 10pt;
	font-weight: 500;
	text-align: center;
	max-width: 100%;
}

/** CCs **/

.flex-ccs {
	width: 33.33%;
}

.cc-card {
	display: block;
	overflow: visible;
	width: 85%;
	margin-left: auto;
	margin-right: auto;
	border-bottom: 12px solid #005c71;
	transition: 0.4s;
	        box-shadow: 0 12px 24px 0 rgba(0, 74, 94, 0.6);
	   -moz-box-shadow: 0 12px 24px 0 rgba(0, 74, 94, 0.6);
	-webkit-box-shadow: 0 12px 24px 0 rgba(0, 74, 94, 0.6);
}

a:hover .cc-card {
	border-bottom: 12px solid #0090b1;
	background-color: #005c71;
	color: #fff;
	        box-shadow: 0 0 0 0 rgba(0, 74, 94, 0);
	   -moz-box-shadow: 0 0 0 0 rgba(0, 74, 94, 0);
	-webkit-box-shadow: 0 0 0 0 rgba(0, 74, 94, 0);
	border-bottom: 12px solid #005c71;
}

a:hover .cc-card div.image-logo {
	filter: brightness(0) invert(1);
}

.cc-card img.logo {
	display: block;
	width: 90%;
	border: 0px;
	margin-left: auto;
	margin-right: auto;
}

.cc-card div.image-logo {
	display: block;
	width: 50%;
	border: 0px;
	margin-left: auto;
	margin-right: auto;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	transition: 0.4s;
}

.cc-card div.image-logo:after {
	padding-bottom: 100%;
	content: "";
	display: block;
}

.cc-card h3 {
	width: 100%;
	font-size: 30px;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
	margin-top: 22px !important;
	margin-bottom: 0px ! important;
	transition: 0.4s;
}

a:hover .cc-card h3 {
	color: #fff;
}

.cc-card p.cc-name {
	width: 100%;
	height: 56px;
	line-height: 1.4;
	font-size: 20px;
	text-align: center;
	hyphens: none;
	-ms-hyphens: none;
}

a:hover p.cc-name {
	color: #fff;
}

.cc-list {
	display: block;
	width: auto;
	margin: 4px -24px;
	padding: 0px 24px 0px 24px;
	background-color: #d6e7eb;
	transition: background-color 0.4s;
}

.cc-list a {
	display: block;
	position: relative;
	min-height: 86px;
	padding: 18px 0px 18px 0px;
	hyphens: none;
	-ms-hyphens: none;
	margin-bottom: 20px;
}

.cc-list a div.logo {
	float: left;
	position: relative;
	width: 50px;
	height: 50px;
	margin: 0px 18px 0px 0px;
	background-size: 80%;
	background-position: center center;
	background-repeat: no-repeat;
}

.cc-list a span {
	height: 50px;
	display: table-cell;
	font-size: 16px;
	color: #000 !important;
	vertical-align: middle;
	line-height: 25px;
	transition: color 0.4s;
}

.cc-list a:hover span {
	color: #005c71 !important;
}


div.icon-links {
	display: flex;
	align-items: flex-start;
	flex-flow: row wrap;
	justify-content: flex-start;
	margin: 12px 0px 0px 0px;
	width: 100%;
}

div.icon-links .container {
	position: relative;
	overflow: hidden;
	width: 50px;
	height: 50px;
	opacity: 1;
	-moz-opacity: 1;
	-ms-filter: alpha(opacity=100);
	margin: 0px 18px 6px 0px;
	transition: 0.4s;
}

div.icon-links .container div.image {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

div.icon-links a:hover .container {
	opacity: 0.8;
	-moz-opacity: 0.8;
	-ms-filter: alpha(opacity=80);
}

/** ACs **/

.flex-acs {
	width: 33.33%;
}

.ac-card {
	display: inherit;
	overflow: hidden;
	width: 85%;
	margin-left: auto;
	margin-right: auto;
	transition: 0.4s;
}

.ac-card div.image-container {
	position: relative;
	display: block;
	overflow: hidden !important;
	width: 60%;
	border-radius: 50%;
	border: 0px;
	margin-left: auto;
	margin-right: auto;
	background-color: #fff;
	        box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0.6);
	   -moz-box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0.6);
	-webkit-box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0.6);
	transition: 0.4s;
}

.ac-card div.image-container:after {
	display: block;
	padding-bottom: 100%;
	content: "";
}

.ac-card div.image-logo {
	display: block;
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	width: 55%;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	transition: 0.4s;
}

.ac-card div.image-logo:after {
	display: block;
	padding-bottom: 100%;
	content: "";
}

a:hover .ac-card div.image-container {
	background-color: #00c7d2;
	        box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0);
	   -moz-box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0);
	-webkit-box-shadow: 0 12px 24px 0 rgba(0, 92, 113, 0);
}

a:hover .ac-card div.image-logo {
	filter: brightness(0) invert(1);
}

a:hover .ac-card h3 {
}

.ac-card h3 {
	width: 100%;
	font-size: 30px;
	font-weight: 300;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	text-align: center;
	color: #000 !important;
	transition: color 0.4s;
}


/** Publications **/
.flex-publication {
	width: 100%;
	max-width: 800px;
}

.flex-publication h4.title {
	font-size: 30px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.3;
	letter-spacing: normal;
	color: #000 !important;
	margin: 0px !important;
	transition: 0.4s;
}

.flex-publication div.authors {
	display: block;
	width: 100%;
	color: #000 !important;
	margin: 5px 0;
	hyphens: none;
	-ms-hyphens: none;
}

.flex-publication span.author-label {
	 color: #444 !important;
}

.flex-publication div.divider-line {
	position: relative;
	display: block;
	width: 50%;
	height: 3px;
	border-radius: 2px;
	background-image: linear-gradient(to right, #00c7d2, #00e6ea 52%, rgba(0, 200, 209, 0));
	transition: 0.4s;
}

.flex-publication a:hover h4.title {
	color: #00c7d2 !important;
}

.flex-publication-ext a:hover div.divider-line:before {
	content: "";
	position: absolute;
	z-index: 80;
	width: 0;
	height: 0;
	left: 12px;
	top: -7px;
	margin-left: -12px;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	border-bottom: 8px solid #00c7d2;
}

.flex-publication a:hover div.divider-line {
	width: 100%;
}

.pub-author {
	white-space: nowrap;
}


.pub-abstract {
	max-width: 600px;
}

.publication-group {
	display: block;
	width: 100%;
}

.publication-group h3 {
	width: 50%;
	margin: 12px auto 50px auto;
	padding-bottom: 40px;
	border-bottom: 5px solid #005c71;
	font-size: 50px;
	font-weight: 100;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	text-align: center;
	color: #000;
}

.width-publications {
	max-width: 800px;
	width: 100%;
}

.width-limit {
	max-width: 900px;
}

.section-limit .flex-section-content {
	padding-left: 0;
	padding-right: 0;
}


.section-limit .section-content > p {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
}

.flex-column.filter-terms {
	max-width: 312px;
	margin-left: auto;
	margin-right: 4px;
}

.publication-container h2.section-header {
	font-size: 40px !important;
	max-width: 900px;
}

.publication-card {
	max-width: 350px;
	margin-left: 0px;
	margin-right: 0px;
}


.container-card .card-header {
	display: block;
	width: auto;
	background-color: #d6e7eb;
	margin: -24px -24px 12px -24px;
	font-size: 24px;
	position: relative;
	padding: 6px 24px;
}


.container-card .card-title {
	font-size: 30px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	color: #000 !important;
	margin: 0px 0px 4px 0px !important;
}

.container-card div.card-divider {
	display: block;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(to right, #00c7d2, #00e6ea 30%, rgba(255, 255, 255, 0) 60%);
	margin-bottom: 24px;
}

.container-card h6.card-caption {
	width: 100%;
	font-size: 20px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.4;
	letter-spacing: normal;
	color: #000;
	margin: 0px 0px 0px 0px !important;
}

.container-card div.content-divider {
	display: block;
	width: 100%;
	height: 20px;
	margin: 0px !important;
}

.container-card .header-container {
	display: block;
	width: 100%;
	margin-bottom: 12px;
}

.container-card div.card-text {
	display: block;
	width: 100%;
	margin: 0px 0px 0px 0px;
	hyphens: none;
	-ms-hyphens: none;
}

.container-card .contact {
	display: flex !important;
	flex-flow: row wrap;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	margin: 12px 0px 0px 0px;
	overflow: auto;
}

.container-card .contact a.profile {
/*	margin: 0 auto;	*/
}

.container-card .contact div.photo {
	display: inline-block;
	float: left;
	width: 100px;
	height: 100px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	        border-radius: 50%;
	   -moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	overflow: hidden !important;
}

.container-card .contact div.info {
	display: inline-block;
	width: auto;
	margin-left: 12px;
}

.container-card .contact h6 {
	font-size: 16px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.75;
	margin: 0px !important;
	letter-spacing: normal;
	color: #000 !important;
	transition: color 0.4s;
}

.container-card .contact a:hover h6 {
	color: #005c71 !important;
}

.container-card .contact div.detail {
	display: block;
	width: 100%;
	line-height: 1.75;
	font-size: 16px !important;
}

.container-card .contact div.detail-icon {
	display: inline-block;
	line-height: 1.75;
	font-size: 16px !important;
}

.checkbox {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 16px;
	line-height: 21px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	hyphens: none;
}

.checkbox input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 21px;
	width: 21px;
	border: 1px solid #000;
	background-color: #fff;
}

.checkbox:hover input ~ .checkmark {
	background-color: #d6e7eb;
}

.checkbox input:checked ~ .checkmark {
	background-color: #005c71;
}

.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

.checkbox input:checked ~ .checkmark:after {
	display: block;
}

.checkbox .checkmark:after {
	left: 6px;
	top: 3px;
	width: 7px;
	height: 10px;
	border: solid #005c71;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}


/** Jobs **/
.flex-job {
	width: 100%;
	transition: 0.4s;
}

.flex-job.expanded {
	background: rgba(255, 255, 255, 1);
	transform: translateX(-4px) translateY(-4px);
	        box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.25);
	   -moz-box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.25);
	-webkit-box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.25);
}

.employment-group {
	display: block;
}

.employment-group h2.employment-type {
	width: 100%;
	font-size: 50px;
	font-weight: 100;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	text-align: center;
	color: #000 !important;
}

.flex-job .job-header {
	display: block;
	position: relative;
	width: 100%;
}

.flex-job .job-header h5.title {
	font-size: 30px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 48px;
	letter-spacing: normal;
	text-align: center;
	color: #000 !important;
	width: auto;
	margin: 12px 64px 12px auto !important;
	transition: color 0.4s;
}

.flex-job .job-header a:hover h5.title {
	color: #00c7d2 !important;
}

.flex-job .job-header a.expand {

}

.flex-job .job-header a.expand .button {
	position: absolute;
	text-align: center;
	right: 0px;
	top: -8px;
	width: 48px;
	height: 48px;
	margin: 8px;
	line-height: 48px;
	border-radius: 50%;
	background-color: #005c71;
	color: #f0f0f0 !important;
	font-size: 32px;
	transition: 0.4s;
}

.flex-job .job-header a.expand .plus {
	position: absolute;
	text-align: center;
	right: 0px;
	top: -8px;
	width: 48px;
	height: 48px;
	margin: 8px;
	line-height: 48px;
	border-radius: 50%;
	color: #005c71 !important;
	font-size: 28px;
	transition: 0.4s;
}

.flex-job .job-content .pad {
	padding: 0px 12px 36px 12px;
}

.flex-job .job-header a.expand:hover .button {
	color: #ffffff !important;
	background-color: #0090b1;
}

.flex-job .job-header a.expand:hover .plus {
	color: #00c7d2 !important;
}

.flex-job .expand-content {
	height: 0px;
	overflow: hidden;
	width: 100%;
	transition: 0.4s;
}

.job-content h1,
.job-content h2,
.job-content h3,
.job-content h4,
.job-content h5,
.job-content h6 {
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.4;
	letter-spacing: normal;
	color: #000;
}

.job-content h1 { font-size: 32px }
.job-content h2 { font-size: 28px }
.job-content h3 { font-size: 24px }
.job-content h4 { font-size: 20px }
.job-content h5 { font-size: 18px }
.job-content h6 { font-size: 16px }

.job-content ul {
	margin: 0 0 1.5em 12px !important;
}

.job-info {
	background-color: #eee;
	border-radius: 4px;
	padding: 8px;
}

.job-entry {
	border-top: 1px solid #888;
	border-bottom: 1px solid #888;
	border-left: 1px transparent;
	border-right: 1px transparent;
}

.job-entry.expanded {
	background-color: #fff;
	border: 1px solid #888;
	border-radius: 8px;
}

.job-info .info-row {
	display: flex;
	width: 100%;
	margin: 0px !important;
	flex-flow: row nowrap;
	align-items: stretch;
	justify-content: flex-start;
}

.job-info .label {
	font-weight: 600;
	flex-basis: 200px;
	text-align: left;
}

.expanded a.expand .button {
	-webkit-transform: scaleY(-1);
	   -moz-transform: scaleY(-1);
	     -o-transform: scaleY(-1);
	        transform: scaleY(-1);
	-ms-filter: "FlipV";
		filter: "FlipV";
}

.expanded a.expand .plus {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.flex-accordion .expand-content .accordion-content,
.flex-job .expand-content div.job-info {
	display: block;
	width: 100%;
}


/** Search Results **/
.flex-search-result {
	width: 100%;
}

.flex-search-result h6.result-type {
	font-size: 20px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.4;
	letter-spacing: normal;
	color: #00c7d1 !important;
	margin: 0px !important;
}

.flex-search-result .highlight {
	color: #000;
	background-color: #bad8df !important;
}

.flex-search-result h5.title {
	font-size: 24px;
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.31;
	letter-spacing: normal;
	color: #000 !important;
	margin: 0px !important;
	transition: 0.4s;
}

.flex-search-result div.content {
	display: block;
	width: 100%;
	color: #000 !important;
}


.flex-search-result div.divider-line {
	position: relative;
	display: block;
	width: 50%;
	height: 3px;
	border-radius: 2px;
	background-image: linear-gradient(to right, #00c7d2, #00e6ea 52%, rgba(0, 200, 209, 0));
	transition: 0.4s;
}

a:hover .flex-search-result div.divider-line {
	width: 100%;
	transition: 0.4s;
}

.flex-search-result a:hover h5.title {
	color: #00c7d2 !important;
}

.flex-search-result a:hover div.divider-line {
	width: 100%;
}

.search-result-group {
	display: block;
	width: 100%;
}

.search-result-group h3 {
	width: 50%;
	margin: 12px auto 50px auto;
	padding-bottom: 40px;
	border-bottom: 5px solid #005c71;
	font-size: 50px;
	font-weight: 100;
	font-style: normal;
	font-stretch: normal;
	line-height: 1.2;
	letter-spacing: normal;
	text-align: center;
	color: #000;
}



/** UI customization **/

.mobile-panel {
	/*  It's over ...  */
	z-index: 9000 !important;
}

a.cntct {
	text-decoration: none;
	cursor: pointer !important;
}

a.cntct span.dashicons {
	padding-right: 2px;
}

a.cntct.mail {
	display: inline-flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: center;
}

a[disabled] {
	pointer-events: none;
}

a.cntct.mail i,
a.phone-number > i,
a.fax-number > i {
	width: 34px;
	font-size: 20px !important;
	text-align: left;
}


.admin-menu-item-highlight {
	background-color: #005c71 !important;
}

.admin-menu-item-highlight:hover {
	background-color: #003c51 !important;
}

span.phone-number:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	content: "\f095";
	display: inline-block;
	vertical-align: middle;
	margin-right: 12px;
}

span.fax-number:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	content: "\f1ac";
	display: inline-block;
	vertical-align: middle;
	margin-right: 12px;
}

span.office {
	color: #000;
}

span.office:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	content: "\f1ad";
	font-size: 20px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 16px;
	color: #005c71 !important;
}


.leaflet-popup-content {
	color: #000 !important;
}

.rotate {
    -webkit-animation: spin 4s linear infinite;
    -moz-animation: spin 4s linear infinite;
    animation: spin 2s linear infinite;
}

@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }


/** Feed **/

div.feed-row {
	display: flex;
	align-items: flex-start;
	flex-flow: row nowrap;
	justify-content: flex-start;
}

.feed-row .timestamp {
	flex: 2;
}

.feed-row .status {
	flex: 1;
}

.feed-row .summary {
	flex: 6;
}

.feed-reviews {
	font-size: 20px !important;
	line-height: 1.4;
}

.feed-row div.status-bar {
	position: relative;
	width: 50%;
	border: 1px solid #000;
	border-radius: 4px;
	height: 1em;
	box-shadow: 1px 1px 6px 1px rgba(0, 0, 0, 0.2);
	margin: 0 !important;
	padding: 0 !important;
}

.feed-row div.status-bar div.label {
	position: absolute;
	left: 12px;
	top: 0;
	z-index: 10;
	font-size: 11pt;
	font-weight: 600;
	margin: 0 !important;
	padding: 0 !important;
}

.feed-row div.status-bar .progress {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	bottom: 0;
	border-radius: 4px;
	background: #bad8df;
	margin: 0 !important;
	padding: 0 !important;
}

div.feed-posts {
	width: 100%;
	display: flex;
	align-items: stretch;
	flex-flow: row wrap;
	justify-content: flex-start;
}

div.feed-posts a.feed-item {
	display: flex;
	align-items: center;
	width: 20%;
	margin: 10px;
	text-decoration: none;
	font-size: 1.2em;
	color: #000;
	padding: 6px 24px 6px 32px;
	overflow: hidden;
	line-height: 1.4;
	background-repeat: no-repeat;
	background-position: 8px center;
	border: 1px solid #888;
	transition: 0.4s;
	        border-radius: 4px;
	   -moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

div.feed-posts a.feed-item:hover {
	background-color: #d6e7eb !important;
	        border-radius: 4px;
	   -moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

div.feed-posts a.feed-item.lang-en {
	background-image: url(../img/flags/en.png);
}

div.feed-posts a.feed-item.lang-de {
	background-image: url(../img/flags/de.png);
}

div.counter-posts {
	display: inline-block;
	padding: 4px 8px;
	background-color: #0c0;
	color: #fff;
	font-size: 20px;
	min-width: 32px;
	text-align: right;
	        border-radius: 6px;
	   -moz-border-radius: 6px;
	-webkit-border-radius: 6px;
}

div.counter-critical {
	background-color: #e22 !important;
	color: #fff;
}


/** Responsiveness **/

.hide-l {
	display: none !important;
}

.hide-m {
	display: inherit !important;
}

@media only screen and (max-width: 1200px) {
	.flex-column {
		width: 100% !important;
		margin-bottom: 24px;
	}

	.flex-column.pr-space {
		padding-right: 12px !important;
	}
	.slider-title {
		font-size: 40pt !important;
	}

	.slider-about {
		font-size: 24pt !important;
	}

	.flex-staff,
	.flex-ccs,
	.flex-acs,
	.flex-project,
	.flex-news,
	.flex-teaser-box.col-w-2,
	.flex-teaser-box.col-w-3,
	.flex-teaser-box.col-w-4 {
		width: 50%;
	}

	.flex-teaser-box div.teaser-text {
		height: auto;
	}

	.flex-teaser-box .teaser-text {
		height: 120px;
	}

	.flex-testbed {
		width: 50%;
	}

	.flex-testbed p.teaser {
		height: 120px;
	}

	.flex-staff-important .staff-contact{
		position: relative;
	}

	.flex-staff-important .staff-contact .contact-field {
		width: 100%;
	}

	.hide-l {
		display: inherit !important;
	}

	.hide-m {
		display: none !important;
	}


	.flex-column.filter-terms {
		margin-right: auto;
	}

	.publication-card {
		margin-left: auto;
	}
}

@media only screen and (max-width: 1000px) {
	.flex-acs {
		width: 100%;
	}
}

@media only screen and (max-width: 991px) {
	.flex-news {
		width: 100%;
	}

	.flex-teaser-box.col-w-1 > a.teaser-link {
		width: 100%;
	}

	.flex-teaser-box.col-w-1 div.image-container {
		display: flex;
		flex-flow: column;
		justify-content: flex-end;
	}

	.flex-news div.teaser-text {
		overflow: visible;
		max-height: 264px;
		min-height: 240px;
	}

	.flex-news-line h5.title i.fas {	font-size: 20px !important;	}
	.flex-news-line h5.date,
	.flex-news-line h5.title {
		font-size: 24px;
	}

	.cc-card p.cc-name {
		font-size: 18px;
	}

	.flex-project {
		width: 100%;
	}

	a.flex-project-flagship .project-image-box,
	a.flex-project-flagship .project-info {
		width: 100% !important;
	}

	div.project-info div.subtitle {
		height: auto;
	}

	a.flex-project-flagship .project-image-box {
		border-radius: 4px 4px 0 0;
	}

	a.flex-project-flagship:hover:before {
		left: 50% !important;
	}

	div.project-info div.tags {
		height: auto;
	}

	.flex-staff-important div.staff-name h5 {
		text-align: center;
	}

	.flex-staff-important > .container-card {
		flex-flow: row wrap;
		justify-content: center;
	}

	.flex-section {
		flex-flow: row wrap;
	}

	.flex-section-image {
		display: none;
	}

	img.section-inline-image {
		display: block;
	}

	.slider-news .slick-prev {
		left: -40px;
	}

	.slider-news .slick-next {
		right: -40px;
	}

	.employment-group h2.employment-type {
		font-size: 40px;
	}

	.flex-job .job-header h5.title {
		font-size: 30px;
		line-height: 1.2;
		font-weight: normal;
	}

	.flex-job h4 {
		font-size: 24px;
	}

	div.project-partners div.partners > .partner {
		width: 100%;
		max-width: 100%;
	}

	.width-publications {
		max-width: 800px;
		width: 100%;
		margin: 0 20px;
	}

	.post-links a { width: 100%; }
}


@media only screen and (max-width: 768px) {
	.hide-s {
		display: none !important;
	}

	.flex-teaser-box.col-w-1 > a.teaser-link {
		width: 100%;
	}

	.flex-teaser-box.col-w-1 div.image-container {
		width: 100%;
	}

	.flex-teaser-box.col-w-1 div.text-container {
		width: 100%;
		padding-left: 0;
	}

	.section .section-header {
		font-size: 42px !important;
		hyphens: auto;
		-ms-hyphens: auto;
	}

	.flex-staff div.staff-contact {
		height: auto !important;
	}

	.flex-staff,
	.flex-ccs,
	.flex-acs,
	.flex-testbed {
		width: 100%;
	}

	.flex-testbed h5.headline {
		height: auto !important;
	}

	.flex-testbed p.teaser {
		height: auto !important;
		overflow: auto !important;
		margin-bottom: 12px;
	}

	.filter-caption {
		flex-basis: 100%;
		text-align: center;
	}

	.flex-teaser-box.col-w-2,
	.flex-teaser-box.col-w-3,
	.flex-teaser-box.col-w-4 {
		width: 100%;
	}

	.flex-teaser-box h5.headline {
		height: auto !important;
	}

	.flex-teaser-box .teaser-text {
		height: auto !important;
		overflow: auto !important;
		margin-bottom: 12px;
	}

	.flex-column {
		width: 100% !important;
		margin-bottom: 24px;
	}

	.slider-title {
		font-size: 32pt !important;
	}

	.slider-about {
		font-size: 18pt !important;
	}

	.front-slide .content > h1 {
		font-size: 40px;
		padding: 8px 16px;
	}

	.slider-news .slick-prev {
		left: -35px;
		z-index: 80;
	}

	.slider-news .slick-next {
		right: -35px;
		z-index: 80;
	}

	.employment-group h2.employment-type {
		font-size: 30px;
	}

	.flex-job .job-header h5.title {
		font-size: 20px;
		line-height: 1.2;
		font-weight: normal;
	}

	.flex-job h4 {
		font-size: 20px;
	}

	.job-info .info-row {
		flex-flow: row wrap;
	}

	.job-info .label {
		flex-basis: 100%;
	}

	.dai-assets ul > li {
		position: relative;
		margin-left: 16px;
	}

	.dai-assets ul > li:before,
	ul.bullets li:before {
		position: absolute;
		left: -16px;
	}
}


@media only screen and (max-width: 480px) {
	div#primary {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	div.site-content_wrap > div.row {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	div#content > .container,
	div#content > .container-fluid {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.front-slide .content {
		left: 28px;
		top: 25%;
	}

	.front-slide .content > h1 {
		font-size: 36px;
		padding: 8px 16px;
	}

	.front-slide .content .about {
		font-size: 16px;
		padding: 16px;
	}

	.front-slider .slick-prev {
		left: -15px;
		z-index: 80;
	}

	.front-slider .slick-next {
		right: -15px;
		z-index: 80;
	}

	.section .section-header {
		font-size: 30px !important;
		hyphens: auto;
		-ms-hyphens: auto;
	}

	.section p {
		font-size: 16px !important;
	}

	.width-95 {	width: 100% !important;	}
	.width-90 {	width: 100% !important;	}
	.width-85 {	width: 100% !important;	}
	.width-80 {	width: 100% !important;	}
	.width-75 {	width: 100% !important;	}
	.width-70 {	width: 100% !important;	}
	.width-65 {	width: 100% !important;	}
	.width-60 {	width: 100% !important;	}
	.width-55 {	width: 100% !important;	}
	.width-50 {	width: 100% !important;	}

	.flex-acs h3 {
		font-size: 20px;
	}

	.flex-publication {
		padding: 0 12px;
	}

	h5.group-year {
		padding: 0 12px;
	}

	.flex-publication h4 {
		font-size: 24px !important;
	}

	.flex-publication .authors {
		font-size: 16px !important;
	}

	.flex-project-flagship {
		margin-left: 10px;
		margin-right: 10px;
	}

	h3.header-position {
		font-size: 24px;
	}

	h4.subsection {
		font-size: 24px;
	}

	.flex-column {
		padding: 0 12px;
	}

	.slider-news {
		width: 95% !important;
	}

	.slider-news .slick-prev {
		left: -20px;
		width: 50px;
		height: 50px;
		z-index: 80;
	}

	.slider-news .slick-next {
		right: -20px;
		width: 50px;
		height: 50px;
		z-index: 80;
	}

	.flex-news-line h5.title i.fas {	font-size: 16px !important;	}
	.flex-news-line h5.date,
	.flex-news-line h5.title {
		font-size: 20px;
	}

	button.slick-prev::before,
	button.slick-next::before {
		max-width: 20px;
		max-height: 20px;
		height: 20px;
		width: 20px;
		line-height: 20px !important;
		padding: 0;
		font-size: 14px !important;
	}

	.container-slider {
		margin: 0 8px 24px 8px;
	}


	.employment-group h2.employment-type {
		font-size: 30px;
	}

	.flex-job .job-header h5.title {
		font-size: 20px;
		line-height: 1.2;
		font-weight: normal;
	}

	.flex-job.expanded {
		transform: none;
	}

	.flex-job h4 {
		font-size: 20px;
	}

	.job-info .label {
	}

	.width-publications {
		margin: 0;
	}
}


/** Legacy CSS **/
a.post-edit-hl {
	color: #880000;
}

a.post-edit-hl > span {
	font-size: 20pt;
	margin-right: 10px;
	line-height: 26pt;
}

a.post-edit-hl:hover {
	color: #dd2200;
}

.lg-description {
	display: none;
}

.lg-sub-html h5 {
	color: #ffffff;
/*	font-size: 22pt !important;	*/
}

.lg-sub-html p {
	color: #ffffff;
	font-size: 12pt !important;
}

.lg,
.lg-thumb-outer {
	background-color: rgba(0, 0, 0, 0.5) !important;
}

.lg-outer {
	z-index: 9001 !important;
}

.lg-outer .lg-toolbar .lg-icon:hover::after, .lg-outer .lg-thumb-outer .lg-icon:hover::after, .lg-outer .lg-actions .lg-icon.lg-prev:hover::after, .lg-outer .lg-actions .lg-icon.lg-next:hover::before {
	color: #fff !important;
	transition: color 0.4s;
}

.lg-outer .lg-progress-bar .lg-progress {
	background-color: #fff !important;
}

.lg-outer:not(.lg-fullscreen-on) .lg-inner {
	max-width: none !important;
}

.lg-group {
	margin-left: auto;
	margin-right: auto;
}


/** ACF **/
.acf-publish-post {
	position: relative;
	background-color: #f4fff4;
	border-radius: 10px;
	border: 1px solid #000;
	padding: 10px;
}


.acf-publish-post a.close {
	position: absolute;
	top: 10px;
	right: 10px;
	color: #888;
}

.acf-publish-post a.close img {
	border: 0px;
	width: 24px;
	height: 24px;
	opacity: 0.75;
	transition: 1s;
	outline: none;
}

.acf-publish-post a.close:hover {
	opacity: 1;
	transition: 1s;
}

div.dai-post-edit-bar {
	display: block;
	width: 100%;
	clear: both;
}

div.dai-post-edit-bar ul.languages {
	float: right;
	list-style-type: none;
}

div.dai-post-edit-bar ul.languages li {
	float: left;
	padding-left: 4px;
	padding-right: 4px;
}

div.dai-post-edit-bar span.post-edit-language {
	float: right;
	margin-right: 10px;
}

div.dai-post-edit-bar ul.languages li img {
	border: 0px;
	vertical-align: middle;
}

