#communicate .warning, #communicate .success, #communicate input, #communicate textarea {
  width: 50% !important;
}

@media all and (max-width: 768px) {
	#communicate .warning, #communicate .success, #communicate input, #communicate textarea {
	  width: 100% !important;
	}
}

.close-button {
	 margin-top: 7.5em;
}

#map-canvas {
	height: 200px;
	width: 100%;
}

.back-to-list, .print {
	margin-left: 4px;
	font-size: 12px;
	position: absolute;
	top: 36px;	
}

.back-to-list .fa, .print .fa, .forgot_pw .fa {
  padding-right: 5px;
}

.choose_department {
  margin-bottom: 20px;
}

#atci {
	display: none;
}

.spotlight {
	width: 100%;
	max-width: 1728px;
	margin: 0 auto;
	background-color: #eff6f0;
	position: relative;
	min-height: 460px;
	overflow: hidden;
	display: block;
	display: flex;
	justify-content: space-between;
	margin-bottom: 4em;
}

.spotlight-image-container {
	display: block;
	position: relative;
	width: 50%;
	background-image: url(/files/header-shape-desktop-small.fd2c20ae.svg);
}

.spotlight-image-container::before {
	background-color: #eff6f0;
    position: absolute;
    display: block;
    content: "";
    -webkit-mask-image: url(/files/header-shape-desktop-small.fd2c20ae.svg);
    mask-image: url(/files/header-shape-desktop-small.fd2c20ae.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: left bottom;
    mask-position: left bottom;
    height: 101%;
    top: 0;
    left: -1px;
    bottom: 0;
    right: 0;
    z-index: 5;
}

.spotlight-text-container {
	position: relative;
	width: 50%;
	display: flex;
	align-items: center;
}

.department-image {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: auto;
	min-width: 100%;
	min-height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

#joblist h1 {
  font-size: 48px;
  font-weight: 700;
  color: #3a4d41;
}

#joblist h2 {
  font-size: 28px;
  font-weight: 500;
}

#joblist h3 {
  font-size: 24px;
  font-weight: 500;
  color: #3a4d41;
}

#vacancy h1 {
  font-size: 36px;
  font-weight: 700;
  color: #3a4d41;	
}

.jd-appetizer {
	margin-left: 2em;
	padding-bottom: 2em;
}

@media only screen and (min-width: 1300px) {
	.jd-appetizer {
		margin-left: calc(100% - 660px);
	}
}

#breadcrumbs {
	margin-top: 96px;
}

.jd-appetizer .button {
	margin-top: 1em;
}

.jd-oneliner {
	margin-bottom: 1em;
	color: #3a4d41;
}

.jd-teaser {
	margin: 1em 0 2em 0;
}

.jd-details {
	padding-right: 2em;
}

.vacancy_collapsible {
	margin: 2em 0 0 0;
	padding: 0 0 2em 0;
	border-bottom: 1px solid #ccc;
}

.vacancy_collapsible  .vacancy_collapsible_header { cursor: pointer; }
.vacancy_collapsible  .vacancy_section_text { display: none; }
.vacancy_collapsible  .vacancy_section_text.default { display: block; }
.vacancy_collapsible h2 { font-size: 28px; font-weight: 500; }

.vacancy_section_text  {
	margin-top: 2em;
}

.vacancy_collapsible_header {
    display: flex;
    align-items: center;
	justify-content: space-between;
}

.headline-icon {
	height: 24px;
}

.vacancy_contact {
	display: flex;
	flex-flow: row;
	margin-top: 4em;
}

.vacancy_contact_intro {
	width: 50%;
	padding: 2em 2em 0 0;	
}

.vacancy_contact_intro h2 {
	font-size: 36px;
	font-weight: 400;
	letter-spacing: -.003em;
	margin-bottom: .5em;	
}

.vacancy_contact_persons {
	width: 50%;
}

.vacancy_contact_person {
	display: flex;
	align-items: center;
	background-color: #eff6f0;
	border: 1px solid #c0ddc5;
	border-radius: 6px;
	color: #3a4d41;
	margin-bottom: 2em;
}

.cp_image {
	width: 220px;
	height: 220px;
	object-fit: cover;
	border-top-left-radius: 6px;
	border-bottom-left-radius: 6px;
}

.cp_text {
	padding: 2em;
}

.cp_name {
	color: #3a4d41;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: .5em;
}

.cp_position {
	font-size: 18px;
	font-weight: 400;
	margin-bottom: 1em;
}

.cp_mobile {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 0;
}

.cp_mobile a {
	color: #3a4d41;
	text-decoration: none;
}

.cp_phone {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 0;
}

.cp_phone a {
	color: #3a4d41;
	text-decoration: none;
}

.cp_sendmail {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 0;
	color: #3a4d41;
	text-decoration: none;
}

#search {
	margin-top: 1em;
	padding-right: 2.5em;
}

#search > form input[type="text"],
#search > form select {
	width: 100%;
	border: none;
	border-bottom: 1px solid #ccc;
	box-shadow: none !important;
}

#search > form input[type="text"] {
	width: 100%;
	height: 44px;
	padding-left: 40px;
	padding-right: 60px;
	border: 1px solid #ccc;
	background-color: #fff;
	font-weight: 300;
	border-radius: 6px;
	-webkit-transition: padding-left .1s ease-out;
	transition: padding-left .1s ease-out;
}

#search > form input[type="text"]:focus {
	outline-offset: -2px;
}

#search_input_container {
	position: relative;
}

#search_input_container::before {
	content: "";
	position: absolute;
	left: 0;
	height: 14px;
	width: 14px;
	background-image: url(/files/search-new.ae9d0139.svg);
	background-size: contain;
	background-repeat: no-repeat;
	z-index: 2;
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;
	margin-left: 16px;
}

#search > form input[type="submit"] {
	margin-top: 24px;
	width: initial;
}

.list-no-data {
	padding: 2em;
}

.custom-joblist-box {
	width: 100%;
	background-color: #eff6f0;
	color: #3a4d41;
	border: 1px solid #c0ddc5;
	border-radius: 6px;
	position: relative;
	overflow: hidden;
	-webkit-transition: all .5s;
	transition: all .5s;
	background: linear-gradient(48deg,#c0ddc5,#c0ddc5 35%,#eff6f0 50%);
	background-size: 300% 300%;
	background-position: 100% 100%;	
	margin-bottom: 1.5em;
	padding: 1.5em;
	font-size: 14px;
}

.custom-joblist-box:hover {
  background-position: 0 100%;
}

.custom-joblist-box p {
  margin-top: 1em;
  font-weight: 500;
}

.vacancy_info {
  margin-right: 1em;
}

.vacancy_info svg {
  margin-right: .5em;
}

#vacancy .vacancy_info {
  font-size: 18px;
  color: #3a4d41;
}

#vacancy .vacancy_info svg {
  height: 18px;
  width: auto;
}

.custom-joblist-box-apply .button {
	padding: 8px 16px;
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 0;
	position: absolute;
	bottom: 0;
	right: 0;
}

@media only screen and (max-width: 959px) {
	.print {
		display: none;
	}

	.custom-joblist-box-info{
		padding-bottom: 2em;
	}

	.vacancy_contact {
		flex-flow: column;
	}

	.vacancy_contact_intro {
		width: 100%;
		padding: 2em 0;	
	}

	.vacancy_contact_persons {
		width: 100%;
	}  
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
.spotlight-text-container {
	position: relative;
}

#search {
  flex-flow: column;
	text-align: center;
}

#search > form input[type="text"],
#search > form select{
}
}

@media only screen and (max-width: 767px) {
.spotlight-image-container {
	display: none;
}

.jd-appetizer {
	padding: 0;
}

.jd-appetizer h1 {
	font-size: 28px;
}

.spotlight-text-container {
	position: relative;
}

#vacancy #container, #communicate #container {
  padding: 1em 0;
}

.jd-details {
	padding-right: 0;
}
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
#vacancy > #header > .container {
  width: 100%;
}

.jd-appetizer {
	padding: 2em 0 0 0;
}

.jd-appetizer h1 {
	font-size: 28px;
}

.spotlight-text-container {
	position: relative;
}

#search > form {
  flex-flow: column;
}

#search > form input[type="text"],
#search > form select,
.job-search-item {
  width: 100%;
}

.joblist {
  padding: 2em 0 0 0;
}

#index_loginbox {
  padding: 0;
}
}

@media only screen and (max-width: 479px) {
.jd-appetizer {
	padding: 2em 0 0 0;
}

.jd-appetizer h1 {
	font-size: 28px;
}

.spotlight-text-container {
	position: relative;
}

#search > form {
  flex-flow: column;
}

#search > form input[type="text"],
#search > form select,
.job-search-item {
  width: 100%;
}

.joblist {
  padding: 2em 0 0 0;
}

#index_loginbox {
  padding: 0;
}
}

#map-container > #address{
	padding-bottom: 10px;
}

.jd-description iframe {
	width: 100%;
}

@media screen and ( max-width: 767px ){
	.spotlight-text-container, #container, #footer > div {
		margin: 0 5%;
		width: 90%;
	}
}

.leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar {
	border: none !important;
}

.st-custom-button:hover {
  cursor: pointer;
}