#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;
	}
}

#vacancy * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.spotlight {
	position: relative;
}

.spotlight-text-container {
	position: absolute;
	bottom: 0;
	background: #fff;
	width: 60%;	
}

#page-intro {
	margin-left: 10%;
	margin-right: 20%;
	padding: 0 0 2em 0;
}

#page-intro p {
	font-family: "Oswald", Arial, Helvetica, sans-serif;
	font-size: 24px;
	color: #63756b; 
	font-weight: 400; 
	line-height: 1.2;
	letter-spacing: 0.007em;
}

@media only screen and (max-width: 959px) {
	#page-intro {
		margin-left: 0;
		margin-right: 0;
		padding: 2em 0 2em 0;
	}

	#page-intro p {
		font-size: 18px;
	}	
	
	#joblist h1 {
		margin-top: 1em;
	}	
}

.close-button {
	 margin-top: 7.5em;
}

#joblist h1 {
  padding-top: 0;
}

#map-canvas {
	height: 200px;
	width: 100%;
}

.back-to-list, .print {
	padding-right: 10px;
}

.back-to-list .fa, .print .fa, .forgot_pw .fa {
  padding-right: 5px;
}

.choose_department {
  margin-bottom: 20px;
}

#atci {
	display: none;
}

.jd-appetizer {
	padding: 3em 0;
}

.jd-appetizer a {
	text-decoration: none;
}

.jd-appetizer a span {
	margin-left: 1em;
	vertical-align: middle;
}

.jd-oneliner {
	padding: 1em 0 0 0;
}

.jd-teaser {
	font-style: italic;
}

.jd-details {
	padding-right: 2em;
}

.jd-apply {
	margin-top: 4em;
	padding-bottom: 1em;
}

.jd-apply-button {
  width: 100%;
}

.jd-codelist {
	background: #f4f6f5;
	border-radius: 4px;
	padding: 1em;
	margin: 0;
}

.jd-codelist div {
	padding-bottom: 1em;
}

.jd-homepage {
  word-break: break-all;
}

.jd-codelist h3 {
	font-size: 20px;
}

.jd-codelist p {
	margin-bottom: initial;
}

.bottom-buttons {
	margin: 40px 0;
}

div.atclear {
	height: 0;
	margin: 0;
	padding: 0;
}

.jd-counties ul {
  display: inline;
  margin: 0;
  padding: 0;
}

.jd-counties li {
  list-style: none;
  display: inline;
  margin: 0;
  padding: 0;
}

.jd-counties li:after {
  content: ", ";
}

.jd-counties li:last-child:after {
  content: "";
}

.jd-contact-person .svg-inline--fa {
	margin-right: 0.3em;
	vertical-align: middle;
}

div.jd-contact {
	padding-bottom: 0;
}

#index_loginbox {
  padding: 0;
}

.index_loginbox_eu > form input[type="text"], .index_loginbox_eu > form input[type="password"] {
	width: 100%;
	max-width: 400px;
}

#index_loginbox h2 {
	padding-bottom: 10px;
}

#index_loginbox p {
	margin-bottom: 2em;
/*	font-family: "Oswald", Arial, Helvetica, sans-serif;
	font-size: 24px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.007em;*/	
}

.index_loginbox_nu, .index_loginbox_eu {
	width: 100%;
	padding-bottom: 2em;
}

.index_loginbox_nu button, .forgot_pw {
	margin-top: 10px;
}

.forgot_pw {
	margin-left: 10px;
	display: inline;
}

@media screen and ( min-width: 960px ) {
	#index_loginbox {
		width: 100%;
		display: flex;
		flex-flow: row;
	}
	.index_loginbox_nu, .index_loginbox_eu {
		width: 100%;
		margin-left: 10%;
  		margin-right: 10%;
	}	
}

#search {
margin: .5em auto;
}

#search > form {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-flow: row wrap;
	padding-top: 1em;
}

#search > form label {
	margin-right: 1em;
}

#search > form input[type="text"],
#search > form select {
	margin-right: 1em;
	width: 220px;
}

#search > form input[type="submit"] {
	margin-top: 24px;
	width: initial;
}

.joblist {
	padding: 2em 0;
	width: 100%;
	display: table;
}

.joblist .device {
  display: none;
}

.joblist-table {
  display: flex;
  padding: 0;
}

.joblist-table-head {
  background: #000;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	display: table-row;
}
.joblist-table-collapse {
	display: table-row;
}

.joblist-table-cell {
  flex-grow: 1;
	padding: 10px;
	display: table-cell;
}

.dark {
  background: #f9f9f9;
}

.joblist-title {
  	width: 30%;
}

.joblist-vacancy_appetizer {
	width: 25%;
}

.joblist-departments {
  	width: 15%;
}

.joblist-location {
  	width: 15%;
}

.joblist-deadline {
	width: 15%;
}

.no-flexbox .joblist-table {
  display: block;
}

.no-flexbox .joblist-table > .joblist-table-cell {
  width: 100%;
}

.list-no-data {
	padding: 2em;
}

@media all and (max-width: 768px) {
	.joblist-table {
    padding-bottom: 2em;
  }

	.joblist-table-collapse {
    display: block;
  }

	.joblist .device {
	  display: inline;
	}

	.joblist-table-head {
	  display: none;
	}

  .joblist-table-collapse > .joblist-table-cell {
	width: 100% !important;
	display: block !important;
}

	.joblist-table-cell {
	  padding: 2px 0;
	}

	.dark {
	  background: #fff;
	}

	.joblist-title {
	 font-size: 24px;
	}

	.index_loginbox_eu > form input[type="text"], .index_loginbox_eu > form input[type="password"] {
		max-width: 300px;
	}	
}

@media only screen and (max-width: 959px) {
  .print {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
#search {
  flex-flow: column;
	text-align: center;
}

#search > form input[type="text"],
#search > form select{
}
}

@media only screen and (max-width: 767px) {
.jd-appetizer h1 {
	font-size: 28px;
}

#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 h1 {
	font-size: 28px;
}

#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 2em;
}
}

@media only screen and (max-width: 479px) {
.jd-appetizer h1 {
	font-size: 28px;
}

#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 2em;
}
}

#map-container > #address{
	padding-bottom: 10px;
}

.jd-description iframe {
	width: 100%;
}

@media screen and ( max-width: 767px ) {
	#container {
		width: 90%;
	}
	.spotlight-text-container {
		padding-left: 2em;
	}
}

.leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar {
	border: none !important;
}

.st-custom-button:hover {
  cursor: pointer;
}

#vacancyList {
  margin: 2em auto 4em auto;
}

#vacancyList .job-ad {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  padding: 2em;
  border: 2px solid #f4f6f5;
  border-radius: 4px;
  justify-content: space-between;
  margin-bottom: 2em;
  background: #f4f6f5;
}

#vacancyList .job-ad > .job-text{
  flex-grow: 1;
  padding: 0;
  width: 100%;
  max-width: 600px;
}

#vacancyList .job-ad h3 {
  margin: 0;
  text-decoration: none;
}

#vacancyList .job-ad h3 a {
  text-decoration: none;
}

#vacancyList .job-ad p {
  margin: 0;
}

div.jobPost .button {
	margin-bottom: 0;
}

.list-no-data {
  padding: 0 1em;
}

@media only screen and (max-width: 959px) {
  #vacancyList .job-ad > .job-text{
    max-width: 400px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
#vacancyList {
  width: 100%;
}
}

@media only screen and (max-width: 767px) {
#vacancyList .job-ad {
  flex-flow: column;
}

#vacancyList .job-ad > .job-text {
  text-align: center;
  margin-bottom: 10px;
}

div.jobPost {
  margin-top: 1em;
  width: auto;
  text-align: center;
}

#vacancyList {
  width: 100%;
}
}

#the_recruitment_process_wheel {
	background: #63756b;
	margin-bottom: 4em;
}

.widget-description {
	padding: 2em 2em 0 2em;
}

.widget-description h2, .widget-description p {
	color: #fff;
}

/*.widget-description p {
	font-family: "Oswald", Arial, Helvetica, sans-serif;
	font-size: 24px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.007em;
}*/

@media only screen and (min-width: 1500px) {
	#process_wheel {
		display: flex;
		justify-content: space-between;
		align-items: center;
		background: #63756b;
	}	
	.widget-description {
		max-width: 30%;
		padding: 0 4em;
	}
	.widget-container {
		max-width: 50%;
	}
}

.widget-container {
	background: #63756b; 
	padding: 40px;
	/*overflow: hidden; */
}

.process-wrapper {
	position: relative;
	width: 700px;
	height: 700px; 
	flex-shrink: 0;
}

#ring-svg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	overflow: visible;
}

.ring-segment {
	fill: transparent;
	stroke: rgba(255, 255, 255, 0.3);
	stroke-width: 4px;
	cursor: pointer;
	transform-origin: center;
}

.ring-segment:hover, .ring-segment.active {
	fill: #ffffff; 
	stroke: #ffffff;
	z-index: 2;
	filter: none;
}

.process-step {
	position: absolute;
	max-width: 130px; 
	padding: 5px;
	color: #ffffff; 
	text-align: center;
	pointer-events: none; 
	transform: translate(-50%, -50%) rotate(var(--rotation)); 
	transition: color 0.3s ease, transform 0.3s ease;
	z-index: 10; 
	user-select: none;
}

.process-step span {
	display: block;
	line-height: 1.2;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	font-size: 1.2rem; 
	letter-spacing: 0.5px;
}

.process-step.hovered, .process-step.active {
	color: #63756b; 
	font-weight: 700;
	transform: translate(-50%, -50%) rotate(var(--rotation)) scale(1.05);
}

.center-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 380px; 
	height: 380px; 
	background: #fff; 
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding: 30px;
	box-shadow: none; 
	z-index: 5;
}

.center-content h3 {
	margin: 0;
	font-weight: 400;
	padding: 2rem 2rem 0 2rem;
	line-height: 1.2;
}

.center-content p {
	margin: 0;
	font-size: 0.95rem; 
	padding: 1rem 2rem 2rem 2rem;
}

@media (max-width: 768px) {
	.widget-container {
		padding: 20px 10px;
	}
}

#testimonial-container {
	margin: 2em 0 4em 0;
	padding: 4em 0;
	background: #f4f6f5;
}

.testimonial-svg-container {
	min-height: 150px;
	height: 10vw; 
}

.testimonial-svg-container .text {
	text-anchor: end;
	font-family: 'Oswald', sans-serif;
	font-weight: 500;
	stroke: currentColor;
	stroke-width: 1px;
	fill: none;
	font-size: 9vw; 
	transition: font-size 0.3s ease;
}

#testimonial-image-container{
	margin-top: -10vw;
}

.testimonial_image {
	width: 100%;
	display: block;
	height: auto;
	max-width: 800px;
	border: 0;
	object-fit: cover;
	margin-bottom: 4em;
}

/*#testimonial-text-container {
	font-family: "Oswald", Arial, Helvetica, sans-serif;
	font-size: 24px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.007em;
}*/

#testimonial-quote-container {
	margin-top: 4em;
}

#testimonial-quote-container span {
	font-size: 4em;
	margin-left: -2em;
	margin-top: -36px;
	float: left;
}

.testimonial-quote {
	font-family: "Oswald", Arial, Helvetica, sans-serif;
	font-size: 30px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.005em;		
}

.testimonial-quotee {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 400;
	letter-spacing: .01em;
}

@media screen and ( max-width: 799px ) {
	#testimonial-text-container {
		padding: 0 2em;
	}

	#testimonial-quote-container span {
		font-size: 3em;
		margin-left: 0;
		margin-top: 0;
		float: none;
		margin-bottom: .5em;
	}		
}

@media screen and ( min-width: 960px ) {
	#testimonial-text-container {
		margin-left: 25%;
	}	
}

#follow-on-linkedin-container {
	background: #c1476e;
	padding: 4em 0;
	text-align: center;
	margin-top: 2em;
	margin-bottom: 4em;
}

#follow-on-linkedin-container h2, #follow-on-linkedin-container p {
	color: #fff;
	max-width: 500px;
	margin: 0 auto 1em auto;	
}

#follow-on-linkedin-container p {
	font-size: 16px;
}

#follow-on-linkedin-container .svg-inline--fa {
	margin-right: auto;
}

span.fa-stack {
	font-size: 20px;
}

.fa-linkedin-in {
	color: #63756b;
}

#news-container-column-wrapper {
	display: flex;
	flex-flow: column;
	padding: 2em;
	margin-bottom: 4em;
}

.news-container-column {
	width: 100%;
	margin-top: 2em;
}

.news-container-column h3 a {
	text-decoration: none !important;
}

.news-container-column:not(:last-child) {
	margin-right: 0;
}

.news-container_image {
	width: 100%;
	margin-bottom: .5em;
}

@media only screen and (min-width: 960px) {
	#news-container-column-wrapper {
		flex-flow: row wrap;
		justify-content: space-between;
		padding: 0;
	}
	
	.news-container-column {
		width: calc(33.33% - 2em);
	}

	.news-container-column:not(:last-child) {
		margin-right: 2em;
	}
}

#footer-button-container  {
	margin: 2em 0;
	text-align: center;
}

#footer-button .svg {
  margin-right: 2em;
  margin-left: 0;
  transition: transform .3s linear;
}

#footer-button:hover .svg {
  transform: translateX(-5px);
}