:root {
	--fade_duration: 1.5s;
	--move_duration: 1.5s;
	--ivp_animation_delay: 0s;
}
.ivp { overflow: visible; }

.einblenden.ivp:not(.above_viewport) { 
	opacity: 0; 
	position: relative; 
}
.einblenden.ivp.iivp {
	opacity: 1; 
	transition: opacity var(--fade_duration) ease-in-out var(--ivp_animation_delay);
}

.einblendenVonHinten.ivp:not(.above_viewport) { 
	opacity: 0; 
	transform: scale(.8);
	position: relative;
}
.einblendenVonHinten.ivp.iivp {
	opacity: 1; 
	transform: scale(1);
	transition: transform var(--move_duration) ease-out var(--ivp_animation_delay), opacity var(--fade_duration) ease-out var(--ivp_animation_delay);
}

.einblendenVonVorne.ivp:not(.above_viewport) { 
	opacity: 0; 
	transform: scale(1.1);
	position: relative;
}
.einblendenVonVorne.ivp.iivp {
	opacity: 1; 
	transform: scale(1);
	transition: transform var(--move_duration) ease-out var(--ivp_animation_delay), opacity var(--fade_duration) ease-out var(--ivp_animation_delay);
}

.einblendenVonRechts.ivp:not(.above_viewport) { 
	opacity: 0; 
	transform: translateX(100px);
	position: relative; 
}
.einblendenVonRechts.ivp.iivp {
	opacity: 1; 
	transform: translateX(0); 
	transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay); 
}

.einblendenVonLinks.ivp:not(.above_viewport) { 
	opacity: 0; 
	transform: translateX(-100px); 
	position: relative; 
}
.einblendenVonLinks.ivp.iivp {
	opacity: 1; 
	transform: translateX(0);
	transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay); 
}

.mod_article:has(.einblendenVonOben) { overflow: hidden; }
.einblendenVonOben.ivp:not(.above_viewport) { 
	opacity: 0; 
	transform: translateY(-100px);
	position: relative; 
}
.einblendenVonOben.ivp.iivp {
	opacity: 1; 
	transform: translateY(0); 
	transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay); 
}

.mod_article:has(.einblendenVonUnten) { overflow: hidden; }
.einblendenVonUnten.ivp:not(.above_viewport),
.einblendenVonUnten.ivp:not(.above_viewport) .formbody > * { 
	opacity: 0; 
	transform: translateY(100px); 
	position: relative; 
}
.einblendenVonUnten.ivp.iivp, 
.einblendenVonUnten.ivp.iivp .formbody > * { 
	opacity: 1; 
	transform: translateY(0);
	transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay); 
}

.mod_article .content-text.einblendenVonBeidenSeiten.ivp:not(.above_viewport) { 
	.rte, & > figure img { position: relative; }
	&.media--right {
		.rte {		opacity: 0; transform: translateX(-100px); }
		& > figure img {opacity: 0; transform: translateX(100px); }
	}
	&.media--left {
		.rte {		opacity: 0; transform: translateX(100px); }
		& > figure img {opacity: 0; transform: translateX(-100px); }
	}
}
.mod_article .content-text.einblendenVonBeidenSeiten.ivp.iivp {
	.rte, & > figure img {
		transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay);
	}
	&.media--right { 
		.rte {		opacity: 1; transform: translateX(0); }
		& > figure img {opacity: 1; transform: translateX(0); }
	}
	&.media--left { 
		.rte {		opacity: 1; transform: translateX(0); }
		& > figure img {opacity: 1; transform: translateX(0); }
	}
}
.mod_article .content-text.einblendenVonBeidenSeiten.nacheinanderEinblenden.ivp.iivp {
	&.media--right { 
		.rte {		transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay); }
		& > figure img {transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay, .5s), transform var(--move_duration) ease-out var(--ivp_animation_delay, .5s); }
	}
	&.media--left { 
		.rte {		transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay, .5s), transform var(--move_duration) ease-out var(--ivp_animation_delay, .5s);  }
		& > figure img {transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay); }
	}
}

.mod_article .media--second_image.BilderEinblenden.ivp:not(.above_viewport) { 
	overflow: visible;
	figure > figure:not(.second_image), figure > figure.second_image { position: relative; }
	figure > figure:not(.second_image) { opacity: 0; transform: translateX(-100px); }
	figure > figure.second_image { opacity: 0; transform: translateX(100px); }
}
.mod_article .content-text.BilderEinblenden.ivp.iivp {
	figure > figure:not(.second_image), figure > figure.second_image { transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay); } 
	figure > figure:not(.second_image) { opacity: 1; transform: translateX(0); }
	figure > figure.second_image { opacity: 1; transform: translateX(0); }
}
.mod_article .media--second_image.BilderEinblendenVonUnten.ivp:not(.above_viewport) { 
	overflow: visible;
	figure > figure:not(.second_image), figure > figure.second_image { position: relative; }
	figure > figure:not(.second_image) { opacity: 0; transform: translateY(100px); }
	figure > figure.second_image { opacity: 0; transform: translateY(100px); }
}
.mod_article .content-text.BilderEinblendenVonUnten.ivp.iivp {
	figure > figure:not(.second_image), figure > figure.second_image { transition: opacity var(--fade_duration) ease-out var(--ivp_animation_delay), transform var(--move_duration) ease-out var(--ivp_animation_delay); } 
	figure > figure.second_image { transition: opacity var(--fade_duration) ease-out .5s, transform var(--move_duration) ease-out .5s; } 
	figure > figure:not(.second_image) { opacity: 1; transform: translateY(0); }
	figure > figure.second_image { opacity: 1; transform: translateY(0); }
}

.einblendenVonUnten.ivp.iivp .formbody > * { 
	&:nth-child(1) { transition-delay: 0s; }
	&:nth-child(2) { transition-delay: .2s; }
	&:nth-child(3) { transition-delay: .4s; }
	&:nth-child(4) { transition-delay: .6s; }
	&:nth-child(5) { transition-delay: .8s; }
	&:nth-child(6) { transition-delay: 1s; }
	&:nth-child(7) { transition-delay: 1.2s; }
	&:nth-child(8) { transition-delay: 1.4s; }
	&:nth-child(9) { transition-delay: 1.6s; }
	&:nth-child(10) { transition-delay: 1.8s; }
	&:nth-child(11) { transition-delay: 2s; }
	&:nth-child(12) { transition-delay: 2.2s; }
}
.AnimationVerzögert.ivp.iivp,
.verzögert.ivp.iivp,
.AnimationVerzögert025.ivp.iivp,
.verzögert025.ivp.iivp { transition-delay: .25s; }
.AnimationVerzögert05.ivp.iivp,
.verzögert05.ivp.iivp { transition-delay: .5s; }
.AnimationVerzögert1.ivp.iivp,
.verzögert1.ivp.iivp { transition-delay: 1s; }
.AnimationVerzögert15.ivp.iivp,
.verzögert15.ivp.iivp { transition-delay: 1.5s; }
.AnimationVerzögert2.ivp.iivp,
.verzögert2.ivp.iivp { transition-delay: 2s; }
.AnimationVerzögert25.ivp.iivp,
.verzögert25.ivp.iivp { transition-delay: 2.5s; }

.Animationsdauer.ivp.iivp,
.Animationsdauer025.ivp.iivp,
.Dauer025.ivp.iivp { transition-duration: .25s; }
.Animationsdauer05.ivp.iivp,
.Dauer05.ivp.iivp { transition-duration: .5s; }
.Animationsdauer1.ivp.iivp,
.Dauer1.ivp.iivp { transition-duration: 1s; }
.Animationsdauer15.ivp.iivp,
.Dauer15.ivp.iivp { transition-duration: 1.5s; }
.Animationsdauer2.ivp.iivp,
.Dauer2.ivp.iivp { transition-duration: 2s; }
.Animationsdauer25.ivp.iivp,
.Dauer25.ivp.iivp { transition-duration: 2.5s; }
