
/* ############################################################
	220 - PERSONEN-TOOL (EINFACH)
############################################################ */

/* Modultitel */
h2.mdl220-modultitel {
	margin-bottom: 35px;
}
@media (min-width: 1020px) {
	h2.mdl220-modultitel {
		margin-bottom: 80px;
	}
}


/* Foto */
.mdl220-foto-box {
	position: relative;
	overflow: hidden;
	width: 100%;
}
.mdl220-foto-box::before {
	content: "";
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: calc((1 / 0.76) * 100%);
}
	.mdl220-foto-box > .mdl220-image {
		position: absolute;
		display: inline-block;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		-ms-object-fit: cover;
		-moz-object-fit: cover;
		-webkit-object-fit: cover;
		object-fit: cover;
		-webkit-transform-origin: 50% 50%;
		transform-origin: 50% 50%;
	}


/* Textbox */
.mdl220-text {
	position: relative;
	width: 100%;
	padding: 25px 25px 30px;
	font-size: 0.8125rem; /* 13px */
	line-height: 1.7;
	letter-spacing: 0.13px;
}
	.mdl220-text .mdl220-name {
		font-size: 1.125rem; /* 18px */
		line-height: 1.4;
		letter-spacing: 0.18px;
	}
	.mdl220-text p + p {
		margin-top: 18px;
	}
@media (min-width: 1020px) {
	.mdl220-text {
		padding: 40px 40px 45px;
		font-size: 0.875rem; /* 14px */
		letter-spacing: 0.14px;
	}
		.mdl220-text .mdl220-name {
			font-size: 1.25rem; /* 20px */
			letter-spacing: 0.2px;
		}
		.mdl220-text p + p {
			margin-top: 20px;
		}
}


/* ############################################################
	RASTER
############################################################ */

/* Liste */
.mdl220-list {
	position: relative;
	display: block;
	width: 100%;
}

/* Rastersystem */
.mdl220-list > .flex-container {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: left;
	width: 100%;
}
	.mdl220-list > .flex-container > .flex-item {
		position: relative;
		margin: 50px var(--gap) 0 0;
		background-color: var(--main-color-white);
	}
@media (max-width: 759.98px) {
	/* 1/1  - 1 columns per row */
	.mdl220-list > .flex-container > .flex-item {
		width: 100%;
		margin-right: 0;
	}
	/* remove top margin from first row */
	.mdl220-list > .flex-container > .flex-item:nth-child(-n+1) {
		margin-top: 0;
	}
}
@media (min-width: 760px) and (max-width: 1279.98px) {
	/* 1/2  - 2 columns per row */
	.mdl220-list > .flex-container > .flex-item {
		width: calc(1/2*100% - (1 - 1/2)*var(--gap));
	}
	/* align last row columns to the left */
	.mdl220-list > .flex-container > .flex-item:nth-child(2n),
	.mdl220-list > .flex-container > .flex-item:last-child {
		margin-right: 0;
	}
	/* remove top margin from first row */
	.mdl220-list > .flex-container > .flex-item:nth-child(-n+2) {
		margin-top: 0;
	}
	
	/* Inview (Aktivierung: .inview) */
	.mdl220-list > .flex-container > .flex-item.come-in.show-different:nth-child(even) {
		animation-duration: 0.9s;
	}
}
@media (min-width: 1020px) {
	.mdl220-list > .flex-container > .flex-item {
		margin-top: 90px;
	}
}
@media (min-width: 1280px) {
	/* 1/3  - 3 columns per row */
	.mdl220-list > .flex-container > .flex-item {
		width: calc(1/3*100% - (1 - 1/3)*var(--gap));
	}
	/* align last row columns to the left */
	.mdl220-list > .flex-container > .flex-item:nth-child(3n),
	.mdl220-list > .flex-container > .flex-item:last-child {
		margin-right: 0;
	}
	/* remove top margin from first row */
	.mdl220-list > .flex-container > .flex-item:nth-child(-n+3) {
		margin-top: 0;
	}
	
	/* Inview (Aktivierung: .inview) */
	.mdl220-list > .flex-container > .flex-item.come-in.show-different:nth-child(3n-1) {
		animation-duration: 0.9s;
	}
	.mdl220-list > .flex-container > .flex-item.come-in.show-different:nth-child(3n) {
		animation-duration: 1s;
	}
}
