@import url(../css/fonts.css);
@import url(../css/grid.css);
@import url(../css/header.css);


:root {
	--primary-color: #9bc61b;
	--primary-color-hover: #678900;
	--text-color: #666;
	--container-color: #dcdbdb;
	--white: #fff;
	--red-btn-color: #F4142C;
}

* {
	box-sizing: border-box;
}

/* weicher Bildlauf */
html {
	scroll-behavior: smooth;
}
/* personalisierte Farbe der Textauswahl */
::-moz-selection {
	color: #fff;
	background: var(--primary-color);
}
::selection {
	color: #fff;
	background: var(--primary-color);
}

body {
	margin: 0;
	padding: 0;
	line-height: 1.5;
	font-weight: 400;
	font-family: 'OpenSans', sans-serif;
	color: var(--text-color);
	@media screen and (max-width: 575px)
	{
		hyphens: auto; 
	}
}

h1 {
	font-family: 'OpenSans', sans-serif;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
	margin: 0;
	color: var(--white);
	/*word-wrap: break-word;*/
}
h1 span {
	font-size: 20px;
	font-weight: 400;
	line-height: 1.25;
	text-transform: none;
	display: block;
	margin: 0 0 10px 0;
}
h1 span:last-child {
	position: relative;
	margin: 10px 0 0 0;
}

#jobsheadline{
	font-size: 35px;
	text-transform: uppercase;
	font-weight: bold;
}
@media screen and (min-width: 1200px) {
	h1 {
		font-size: 70px;
		line-height: 87.5px;
	}
	h1 span {
		font-size: 30px;
		line-height: 40px;
	}
}

h2 {
	font-family: 'OpenSans', sans-serif;
	font-size: 40px;
	font-weight: 700;
	line-height: 50px;
	text-transform: uppercase;
	margin: 0 0 40px 0;
	color: var(--text-color);
	/*word-wrap: break-word;*/
}

h3 {
	font-family: 'OpenSans', sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 40px;
	text-transform: uppercase;
	margin: 0 0 20px 0;
	color: var(--text-color);
}

h4 {
	font-family: 'OpenSans', sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	margin: 0;
	color: var(--text-color);
}

p {
	font-size: 20px;
	font-weight: 400;
	line-height: 1.5;
	margin: 0 0 40px 0;
}

a {
	color: var(--primary-color);
	text-decoration: none;
	transition: color 0.2s ease-out;
}
a:hover {
	color: var(--primary-color-hover);
}

section {
	margin-bottom: 150px;
	scroll-margin: 200px;
}


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

.pos-rel {
	position: relative;
}


.btn-primary, .btn-secondary {
	display: block;
	width: 100%;
	font-size: 25px;
	line-height: 1.5;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--white);
	background-color: var(--red-btn-color);
	text-align: center;
	border-radius: 20px;
	padding: 15px 20px;
	transition: all 0.2s ease-out;
	margin-top: 40px;
	/*word-wrap: break-word;*/
}
.btn-primary:hover {
	background-color: var(--red-btn-color);
	color: var(--white);
}
.btn-secondary {
	background-color: var(--white);
	color: var(--red-btn-color);
}
.btn-secondary:hover {
	background-color: #eee;
	color: var(--red-btn-color);
}

.img-container {
	width: 100%;
	height: 100%;
}
.img-container img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}


/* ---------------------------- Content --------------------------- */

#img-tooth img {
	transform-origin: bottom right;
	transform: scale(1.4);
	padding-right: 35px;
	max-height: 500px;
	padding-top: 50px;
}


/* Benefits */
.benefit-holder {
	display: flex;
	align-items: start;
}
.benefit-icon {
	background-color: var(--primary-color);
	width: 75px;
	height: 75px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-right: 15px;
	border-radius: 25px;
}
.benefit-icon img {
	max-width: 35px;
	max-height: 35px;
}
.benefit-holder p:last-child {
	margin: 0;
}
@media screen and (min-width: 768px) {
	.benefit-holder {
		align-items: center;
	}
	.benefit-icon {
		width: 100px;
		height: 100px;
	}
	.benefit-icon img {
		max-width: 50px;
		max-height: 50px;
	}
}

/* Bewerbungsprozess */
#process-holder {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
	margin: 0 150px 0 100px;
}
#process-holder .process-item {
	position: relative;
	background-color: var(--text-color);
	text-align: center;
	padding: 20px 50px;
	color: var(--white);
	grid-column: span 1;
	margin-right: 0;
	z-index: 1;
}
#process-holder .process-item::before {
	content: '';
	position: absolute;
	width: 50px;
	height: 100%;
	top: 0;
	left: 0;
	background-color: var(--white);
	clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
}
#process-holder .process-item::after {
	content: '';
	position: absolute;
	width: 50px;
	height: 100%;
	top: 0;
	left: 100%;
	background-color: var(--text-color);
	clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
}
#process-holder .process-item.process-item-first {
	z-index: 2;
}
#process-holder .process-item.process-item-last {
	z-index: 0;
}
#process-holder .process-item h3 {
	color: var(--white);
}
#process-holder .process-item p {
	margin-bottom: 0;
}
#process-holder .process-item .process-item-content {
	transform: translateX(25px);
}

@media screen and (max-width: 1299px) {
	#process-holder {
		grid-template-columns: 1fr;
		margin: 0 7%;
	}

	#process-holder .process-item {
		padding: 50px 25px;
	}
	#process-holder .process-item .process-item-content {
		transform: translateY(10px);
	}
	#process-holder .process-item::before {
		left: calc(50% - 35px);
		top: 0;
		width: 70px;
		height: 30px;
		clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
	}
	#process-holder .process-item::after {
		left: calc(50% - 35px);
		top: 100%;
		width: 70px;
		height: 30px;
		clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
	}
}


/* Ansprechpartner */

#sec-contact {
	color: var(--white);
	position: relative;
	padding: 100px 0;
}
#sec-contact::before {
	content: '';
	background-color: var(--primary-color);
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	position: absolute;
	border-radius: 0;
	z-index: -1;
}
@media screen and (min-width: 1200px) {
	#sec-contact::before {
		width: calc(100% - 50px);
		border-radius: 0 100px 100px 0;
	}
}
@media screen and (min-width: 1650px) {
	#sec-contact::before {
		width: calc(100% - 100px);
	}
}
#sec-contact #contact-text h2 {
	color: var(--white);
}
#sec-contact #contact-text h3 {
	color: var(--white);
	text-transform: none;
	margin-bottom: 0;
}
#sec-contact #contact-img {
	width: 100%;
}
#sec-contact #contact-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: relative;
	border-radius: 100px;
}
@media screen and (min-width: 920px) {
	#sec-contact #contact-img img {
		position: absolute;
		height: auto;
		object-fit: cover;
		min-height: 600px;
	}
}
#sec-contact #contact-img::after {
	content: '';
	width: 150px;
	height: 150px;
	border: 3px solid var(--white);
	border-radius: 50px;
	position: absolute;
	bottom: 0;
	left: 0;
	transform: translate(-50%, 50px);
}
@media screen and (min-width: 1400px) {
	#sec-contact #contact-img::after {
		width: 300px;
		height: 300px;
		transform: translate(-50%, 200px);
		border-radius: 100px;
	}
}
#sec-contact .btn-secondary {
	margin-top: 100px;
}
@media screen and (min-width: 1400px) {
	#sec-contact .btn-secondary {
		max-width: 450px;
	}
}


/* Chance */
#sec-chance {
	margin-top: 0;
}
@media screen and (min-width: 1200px) {
	#sec-chance {
		margin-top: 250px;
	}
}
#sec-chance .grid {
	align-items: center;
}
#sec-chance #chance-img-col {
	min-height: 100%;
	padding-right: 30px;
}
#sec-chance .img-container {
	height: 100%;
}
#sec-chance .img-container img {
	border-radius: 100px;
	height: 100%;
}

@media screen and (min-width: 1650px) {
	#sec-chance .img-container img {
		transform-origin: center right;
		transform: scale(1.2);
	}
}


/* Bewerbungsformular */

#sec-form {
	position: relative;
	padding: 100px 0;
}
#sec-form::before {
	content: '';
	background-color: var(--primary-color);
	width: 100%;
	height: 100%;
	right: 0;
	top: 0;
	position: absolute;
	border-radius: 0;
	z-index: -1;
}
@media screen and (min-width: 1200px) {
	#sec-form::before {
		width: calc(100% - 50px);
		border-radius: 100px 0 0 100px;
	}
}
@media screen and (min-width: 1650px) {
	#sec-form::before {
		width: calc(100% - 100px);
	}
}

#sec-form p {
	color: var(--white);
}
#sec-form h2 {
	color: var(--white);
}

#sec-form input, textarea {
	border-radius: 20px;
	background-color: var(--white);
	color: var(--text-color);
	padding: 20px 25px;
	height: 80px;
	border: none;
	font-family: 'OpenSans', sans-serif;
	font-size: 20px;
}

#sec-form input.error, textarea.error{
	border: 3px solid red;
}
#sec-form label.error{color: red;}

#sec-form label {
	color: var(--white);
	margin-bottom: 10px;
	font-size: 20px;
	font-family: 'OpenSans', sans-serif;
}

#sec-form .form-group {
	display: flex;
	flex-direction: column;
}

#sec-form #form-submit-info {
	text-align: center;
	font-size: 15px;
	position: relative;
	top: -10px;
}

#sec-form #form_submit {
	display: block;
	width: 100%;
	height: auto;
	font-size: 25px;
	line-height: 1.5;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--red-btn-color);
	background-color: var(--white);
	text-align: center;
	border-radius: 20px;
	padding: 15px 20px;
	transition: all 0.2s ease-out;
	margin-top: 40px;
	/*word-wrap: break-word;*/
	cursor: pointer;
	/*white-space: break-spaces;*/
}

#sec-form #form_submit:hover {
	background-color: #eee;
}

#sec-form textarea {
	height: 200px;
}

#sec-form input:focus, textarea:focus {
	border: none;
	outline: 3px solid #00a2ff;
}

#sec-footer {
	width: 100%;
	padding: 24px 0;
	background-color: var(--container-color);
}
#sec-footer #footer-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: end;
	gap: 50px;
}
#sec-footer #footer-links a {
	color: var(--text-color);
}
#sec-footer #footer-links a:hover {
	color: var(--primary-color);
}

#label-datenschutz{
	display: block;
    padding-left: 60px;
}

#sec-form 
#form_datenschutz{
	position: absolute;
    left: 0;
    top: 0;
    height: 40px;
    width: 40px;
}
