@mixin _oTeaserPackage {
	@include _oTeaserInverse;
	@include _oTeaserPackageList;
	width: 100%;
	flex-flow: column nowrap;

	.o-teaser__image-placeholder {
		z-index: -1;
	}

	.o-teaser__content {
		background: oPrivateFoundationGet('o3-color-palette-wheat');
	}

	.o-teaser__meta {
		color: oPrivateFoundationGet('o3-color-palette-claret-70');
		padding: 15px 0 0 20px;
		width: calc(100% - 40px);
		position: relative;
		top: -50px;
		background: inherit;
		margin-bottom: 0;
	}

	.o-teaser__heading {
		font-family: oPrivateFoundationGet('o3-type-headline-md-font-family');
		font-size: oPrivateFoundationGet('o3-type-headline-md-font-size');
		font-weight: oPrivateFoundationGet('o3-type-headline-md-font-weight');
		line-height: oPrivateFoundationGet('o3-type-headline-md-line-height');
		color: $_o-teaser-base-color;
		background: inherit;
		padding: 20px;
		margin-top: -55px;
		width: 100%;

		a:hover,
		&:focus {
			color: $_o-teaser-focus-hover;
		}
	}
}

@mixin _oTeaserSpecialReportPackage {
	@include _oTeaserSpecialReportPackageList;

	.o-teaser__content {
		background: oPrivateFoundationGet('o3-color-palette-claret-70');
	}

	.o-teaser__meta {
		color: oPrivateFoundationGet('o3-color-palette-white');
	}

	.o-teaser__heading {
		color: oPrivateFoundationGet('o3-color-palette-white');

		a:hover,
		a:visited {
			$special-report-color: oPrivateFoundationGet('o3-color-palette-white');
			$special-report-background: oPrivateFoundationGet(
				'o3-color-palette-claret-70'
			);
			color: oPrivateColorsMix(
				$special-report-color,
				$special-report-background,
				$percentage: 78
			);
		}
	}

	.package-teaser__landing-link {
		color: oPrivateFoundationGet('o3-color-palette-white');

		a {
			color: inherit;
		}

		a:hover,
		a:visited,
		&:focus {
			$special-report-color: oPrivateFoundationGet('o3-color-palette-white');
			$special-report-background: oPrivateFoundationGet(
				'o3-color-palette-claret-70'
			);
			color: oPrivateColorsMix(
				$special-report-color,
				$special-report-background,
				$percentage: 78
			);
		}
	}
}

@mixin _oTeaserExtraPackage {
	@include _oTeaserExtraPackageList;

	.o-teaser__content {
		background: oPrivateFoundationGet('o3-color-palette-slate');
	}

	.o-teaser__meta {
		color: oPrivateFoundationGet('o3-color-palette-lemon');
	}

	.o-teaser__heading {
		color: oPrivateFoundationGet('o3-color-palette-white');

		a:hover,
		&:focus {
			color: oPrivateFoundationGet('o3-color-palette-lemon');
		}
	}

	.package-teaser__landing-link {
		a,
		a:visited {
			color: oPrivateFoundationGet('o3-color-palette-lemon');
		}

		a:hover,
		&:focus {
			color: oPrivateFoundationGet('o3-color-palette-white');
		}
	}

	.o-teaser__timestamp {
		color: oPrivateFoundationGet('o3-color-palette-white');
	}
}

@mixin _oTeaserPackageList {
	.package-teaser {
		&__list {
			margin: -12px 0 0;
			padding: 0 20px 12px;
			background: inherit;
			list-style: none;
		}

		&__list-item,
		&__landing-link {
			font-family: oPrivateFoundationGet('o3-type-body-base-font-family');
			font-size: oPrivateFoundationGet('o3-type-body-base-font-size');
			font-weight: oPrivateFoundationGet('o3-type-body-base-font-weight');
			line-height: 20px;
			padding: 12px 0;

			> a {
				text-decoration: none;
				border: 0;
			}
		}

		&__list-item a {
			color: oPrivateColorsMix($_o-teaser-base-color, $percentage: 80);

			&:hover {
				color: $_o-teaser-focus-hover;
			}
		}

		&__landing-link a {
			color: oPrivateFoundationGet('o3-color-palette-claret-70');

			&:hover,
			&:visited,
			&:focus {
				$special-report-color: oPrivateFoundationGet(
					'o3-color-palette-claret-70'
				);
				color: oPrivateColorsMix(
					$special-report-color,
					transparent,
					$percentage: 78
				);
			}

			&:after {
				@include oPrivateIconsContent(
					'arrow-right',
					oPrivateFoundationGet('o3-color-palette-claret-70'),
					$size: 30
				);
				content: '';
				position: absolute;
				bottom: 18px;
			}
		}
	}
}

@mixin _oTeaserSpecialReportPackageList {
	.package-teaser {
		$package-special-report-background: oPrivateFoundationGet(
			'o3-color-palette-claret-70'
		);
		$package-special-report-color: oPrivateColorsGetTextColor(
			$package-special-report-background,
			100
		);

		&__list-item a {
			color: oPrivateFoundationGet('o3-color-palette-white');

			&:hover {
				color: oPrivateColorsMix(
					$package-special-report-color,
					$package-special-report-background,
					$percentage: 78
				);
			}
		}

		&__landing-link a {
			color: oPrivateColorsMix(
				$package-special-report-color,
				$package-special-report-background,
				$percentage: 80
			);

			&:hover {
				color: oPrivateFoundationGet('o3-color-palette-white');
			}

			&:after {
				@include oPrivateIconsContent(
					'arrow-right',
					oPrivateFoundationGet('o3-color-palette-white'),
					$size: 30
				);
			}
		}
	}
}

@mixin _oTeaserExtraPackageList {
	.package-teaser {
		$hero-extra-highlight-color: oPrivateFoundationGet(
			'o3-color-palette-lemon'
		);

		&__list-item a {
			color: oPrivateFoundationGet('o3-color-palette-white');

			&:hover {
				color: $hero-extra-highlight-color;
			}
		}

		&__landing-link a {
			color: $hero-extra-highlight-color;

			&:hover {
				color: oPrivateFoundationGet('o3-color-palette-white');
			}

			&:after {
				@include oPrivateIconsContent(
					'arrow-right',
					$hero-extra-highlight-color,
					$size: 30
				);
			}
		}
	}
}
