/** Styleguide **/

/* Global */

::selection {
	background: var(--mw-core-color-action-primary);
	color: #FFFFFF;
}

/* Variables */

:root {
	--mw-layout-margin-top: 75px;
	--mw-layout-margin-bottom: 75px;
	--mw-layout-maxwidth: 1332px;
	--mw-layout-maxwidth2: 932px;
	--mw-layout-padding-left: 16px;
	--mw-layout-padding-right: 16px;
}

/* Fonts */

.headline1 {
	color: var(--mw-core-color-heading1);
	font-family: 'Bebas Neue', cursive;
	font-size: 48px;
	font-weight: 400;
	line-height: 48px;
	text-align: left ;
	text-transform: uppercase;
	position: relative;
}
.headline2 {
	color: var(--mw-core-color-heading2);
	font-family: 'Montserrat', sans-serif;
	font-size: 36px;
	font-weight: 400;
	line-height: 43px;
	text-align: left;
	position: relative;
}
.headline1 + .headline2 {
	color: #303030;
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 26px;
	margin-top: calc(var(--mw-layout-margin-top) * -1 + 30px);
	position: relative;
}
.headline2 + .headline3 {
	margin-top: calc(var(--mw-layout-margin-top) * -1 + 10px);
}
.headline3 {
	color: var(--mw-core-color-heading3);
	font-family: 'Montserrat', sans-serif;
	font-size: 27px;
	font-weight: 400;
	line-height: 32px;
	position: relative;
	text-align: left;
}
.headline1 + .headline2 + mw-core-text {
	margin-top: calc(var(--mw-layout-margin-top) * -1 + 32px);
}
.large-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 26px;
}
.large-text-bold {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 600;
	line-height: 26px;
}
.caption-text {
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 16px;
	text-transform: uppercase;
}
.caption-text-bold {
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 16px;
	text-transform: uppercase;
}
.normal-text {
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}
.normal-text-bold {
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
}
.small-text {
	font-family: 'Roboto', sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 16px;
}
.small-text-bold {
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 18px;
}
.animation-text {
	font-size: 15vw;
	font-weight: 700;
}
.primary-link {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 17px;
}
.secondary-link {
	font-family: 'Roboto', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 24px;
}
.form-value {
	font-family: 'Roboto', sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 26px;
}
.form-label {
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px;
}
.iconfont-xlarge {
	font-size: 48px;
}
.iconfont-large {
	font-size: 32px;
}
.iconfont-medium {
	font-size: 24px;
}
.iconfont-small {
	font-size: 12px;
}

/* Layout */

.layout-width {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--mw-layout-maxwidth);
}
.layout-width2 {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--mw-layout-maxwidth2);
}
.layout-margin {
	margin-bottom: var(--mw-layout-margin-bottom);
	margin-top: var(--mw-layout-margin-top);
}
.layout-padding {
	padding-left: var(--mw-layout-padding-left);
	padding-right: var(--mw-layout-padding-right);
}

/* Effects */

.effect-box-shadow {
	box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.4);
}
.effect-bg-blur {
	backdrop-filter: blur(7px);
}
.effect-border-radius {
	border-radius: 0px;
}

@media all and (min-width: 769px) {

	.headline1 {
		font-family: 'Bebas Neue', cursive;
		font-size: 90px;
		font-weight: 400;
		line-height: 80px;
	}
	.headline2 {
		font-family: 'Montserrat', sans-serif;
		font-size: 68px;
		font-weight: 400;
		line-height: 72px;
	}
	.headline1 + .headline2 {
		font-family: 'Montserrat', sans-serif;
		font-size: 26px;
		font-weight: 400;
		line-height: 32px;
		margin-top: calc(var(--mw-layout-margin-top) * -1 + 55px);
	}
	.headline3 {
		font-family: 'Montserrat', sans-serif;
		font-size: 40px;
		font-weight: 400;
		line-height: 48px;
	}
	.large-text {
		font-family: 'Montserrat', sans-serif;
		font-size: 26px;
		font-weight: 400;
		line-height: 32px;
	}
	.large-text-bold {
		font-family: 'Montserrat', sans-serif;
		font-size: 26px;
		font-weight: 600;
		line-height: 32px;
	}
	.caption-text {
		font-family: 'Roboto', sans-serif;
		font-size: 16px;
		font-weight: 400;
		line-height: 19px;
	}
	.caption-text-bold {
		font-family: 'Roboto', sans-serif;
		font-size: 16px;
		font-weight: 700;
		line-height: 19px;
	}
	.normal-text {
		font-family: 'Roboto', sans-serif;
		font-size: 16px;
		font-weight: 400;
		line-height: 24px;
	}
	.normal-text-bold {
		font-family: 'Roboto', sans-serif;
		font-size: 18px;
		font-weight: 700;
		line-height: 28px;
	}
	.small-text {
		font-family: 'Roboto', sans-serif;
		font-size: 14px;
		font-weight: 400;
		line-height: 18px;
	}
	.small-text-bold {
		font-family: 'Roboto', sans-serif;
		font-size: 14px;
		font-weight: 700;
		line-height: 18px;
	}
	.animation-text {
		font-size: 100px;
	}

}

.mw-icon {
	font-family: "Micado-Web";
	-webkit-font-feature-settings: "liga";
	-moz-font-feature-settings: "liga=1";
	-moz-font-feature-settings: "liga";
	-ms-font-feature-settings: "liga" 1;
	font-feature-settings: "liga";

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-style: normal;
	font-variant: normal;
	-webkit-font-variant-ligatures: discretionary-ligatures;
	font-variant-ligatures: discretionary-ligatures;
	font-weight: normal;

	/* Enable Ligatures ================ */
	letter-spacing: 0;
	line-height: 1;
	text-transform: none;
}

/*** animation ***/

:host([animationfullscreen]) .root-mw-core-animation {
	height: calc(var(--vh, 1vh) * 100) !important;
}
.root-mw-core-animation .arrows {
	display: none !important;
}
.root-mw-core-animation .bullets {
	bottom: 165px !important;
}
.root-mw-core-animation .bullet {
	background: var(--mw-core-color-overlay-bright50) !important;
	border-radius: unset !important;
	height: 7px !important;
	margin: 0 5px !important;
	width: 7px !important;
}
.root-mw-core-animation .bullet.selected {
	background: var(--mw-core-color-brand2) !important;
}
.root-mw-core-animation .entry-current .wrapper-text > p.text-trace1 {
	font-family: 'Bebas Neue', cursive;
	font-size: 48px;
	font-weight: 400;
	line-height: 48px;
	text-transform: uppercase;
	text-shadow: 0 0 25px rgba(0, 0, 0, 0.5);
}
.root-mw-core-animation .entry-current .wrapper-text > p.text-trace2 {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 26px;
	text-shadow: 0 0 25px rgba(0, 0, 0, 0.5);
}

/*** Headline ***/

.container-headline-text .headline-wrapper .headline1 + .headline2 {
	margin-bottom: 24px;
	margin-top: calc(var(--mw-layout-margin-top) * -1 + 55px);
}
.headline1 + .headline2:before {
	background: var(--mw-core-color-brand2);
	content: "";
	height: 2px;
	left: 20px;
	position: absolute;
	top: -14px;
	width: 90px;
}
.container-headline-text .headline-wrapper .headline1 + .headline2:before {
	left: 0;
}

/*** Teasergruppe ***/

.container-teasergroup.objects {
	padding-bottom: 100px;
	padding-top: 100px;
	position: relative;
}
.container-teasergroup.objects:before {
	background: var(--mw-core-color-background-bright);
	content: "";
	height: 100%;
	left: -4000px;
	position: absolute;
	top: 0;
	width: 8000px;
}
:host([variant="slider"]) .root-mw-core-teasergroup .swiper-pagination {
	height: 25px;
}
:host([variant="slider"]) .root-mw-core-teasergroup .swiper-pagination-bullet {
	border-radius: unset;
	background: var(--mw-core-color-overlay-dark50);
	height: 7px;
	width: 7px;
}
:host([variant="slider"]) .root-mw-core-teasergroup .swiper-pagination-bullet-active {
	background: var(--mw-core-color-brand2);
}

/*** Teaser ***/

:host([variant="inline"]) .root-mw-core-teaser .main {
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.64) 100%) !important;
	padding: 30px 16px;
	top: auto;
	bottom: 0;
	min-height: auto;
}
:host([variant="inline"]) .root-mw-core-teaser .main p {
	font-family: 'Bebas Neue', sans-serif;
	font-size: 32px !important;
	line-height: 34px !important;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}
:host([variant="inline"]) .root-mw-core-teaser .tag {
	bottom: auto;
	border-radius: 4px;
	top: 24px;
}

/*** Breadcrumb ***/

.container-breadcrumb + div {
	margin-top: 80px;
}
.container-breadcrumb {
	margin-top: -20px;
	position: relative;
	z-index: 2;
}
.container-breadcrumb:before {
	background: var(--mw-core-color-background-bright);
	content: "";
	height: 100%;
	left: -4000px;
	position: absolute;
	top: 0;
	width: 8000px;
}
.root-mw-core-breadcrumb ul li {
	margin-right: 25px;
	position: relative;
}
.root-mw-core-breadcrumb ul li:last-child {
	display: none;
}
.root-mw-core-breadcrumb ul li:before {
	background: var(--mw-core-color-overlay-dark50);
	content: "";
	height: 16px;
	right: -13px;
	position: absolute;
	top: 1px;
	width: 1px;
}
.root-mw-core-breadcrumb ul li:nth-last-child(2):before {
	display: none;
}
.root-mw-core-breadcrumb ul li a,
.root-mw-core-breadcrumb ul li p {
	color: var(--mw-core-color-body-text-dark);
}
.root-mw-core-breadcrumb ul li:nth-last-child(2) span.small-text {
	font-weight: bold !important;
	position: relative;
	text-transform: uppercase;
}
.root-mw-core-breadcrumb ul li:nth-last-child(2) span.small-text:after {
	background: var(--mw-core-color-brand2);
	bottom: -4px;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	width: 100%;
}
.root-mw-core-breadcrumb mw-core-icon {
	display: none;
}

/*** Mitarbeiter ***/

.container-employee > h2 {
	margin-bottom: 24px;
}

/*** Image-Text Combi ***/

:host([blurred]) .root-mw-core-imagetext .content {
	padding: 39px 16px 45px;
}
:host([blurred]) .root-mw-core-imagetext .content .headline {
	font-size: 27px;
	line-height: 32px;
	margin: 0 0 24px;
	text-align: center;
}
:host([blurred]) .root-mw-core-imagetext  .content:before {
    background: var(--mw-core-color-overlay-dark90);
}
:host([blurred]) .root-mw-core-imagetext .content .text {
	font-size: 16px;
	margin-bottom: 10px;
}

/*** Text ***/

h2 + mw-core-text.equipment {
	margin-top: calc(var(--mw-layout-margin-top) * -1 + 20px);
}
mw-core-text.equipment strong {
	color: var(--mw-core-color-action-primary);
	text-transform: uppercase;
}

/*** Liste ***/

.root-mw-core-list .headline {
	margin-bottom: 20px;
}
.root-mw-core-list li {
	margin: 0 0 6px 0;
}

/*** Download ***/

mw-core-download {
	border: none !important;
}
.root-mw-core-download .container {
	background: var(--mw-core-color-background-bright);
	padding: 8px;
}
.root-mw-core-download .container .label {
	font-size: 16px;
	line-height: 20px;
}

/*** Formular ***/

.container-elements > .container-form:last-child {
	margin-bottom: 0;
}
.container-elements > .container-form:last-child mw-core-form {
	padding-bottom: 45px;
	padding-top: 48px;
}
.root-mw-core-form mw-core-textfield, mw-core-checkbox, mw-core-selectfield, mw-core-textarea, mw-core-formheadline, mw-core-fileupload, mw-core-datefield, .row-buttons {
	margin: 6px 0;
}

@media all and (min-width: 500px){

	:host([variant="slider"]) .root-mw-core-teasergroup .container .swiper-button-next {
		margin-top: -210px;
	}
	:host([variant="slider"]) .root-mw-core-teasergroup .container .swiper-button-prev {
		margin-top: -210px;
	}

}

@media all and (min-width: 769px){

	.container-breadcrumb + div {
		margin-top: 120px;
	}
	.container-headline-text .headline-wrapper .headline1 + .headline2 {
		margin-bottom: 58px;
	}
	.container-headline-text mw-core-text {
		margin-top: -30px;
	}
	.headline1 + .headline2:before {
		top: -28px;
	}
	:host([variant="inline"]) .root-mw-core-teaser .main {
		padding: 30px;
	}
	:host([variant="inline"]) .root-mw-core-teaser .main p {
		font-family: 'Bebas Neue', sans-serif;
		font-size: 34px !important;
		line-height: 36px !important;
	}
	.root-mw-core-animation .bullets {
		bottom: 73px !important;
	}
	.root-mw-core-download .container {
		padding: 16px 16px 16px 32px;
	}
	.root-mw-core-download .container .label {
		font-size: 20px;
		line-height: 24px;
	}

}

@media all and (min-width: 981px){

	.root-mw-core-animation .entry-current .wrapper-text > p.text-trace1 {
		font-size: 90px;
		line-height: 80px;
	}
	.root-mw-core-animation .entry-current .wrapper-text > p.text-trace2 {
		font-size: 26px;
		line-height: 32px;
	}
	.root-mw-core-download .container .label {
		font-size: 26px;
		line-height: 31px;
	}

}

@media all and (min-width: 1200px){

	.container-headline-text {
		display: flex;
	}
	.container-headline-text mw-core-text {
		margin-top: -5px;
	}
	.container-headline-text .headline-wrapper {
		flex: 1 0 50%;
		margin-right: 50px;
	}
	.container-headline-text .headline-wrapper .headline1 {
		margin-top: 0;
	}
	:host([blurred]) .root-mw-core-imagetext .content {
		padding: 39px 75px 45px;
	}
	:host([blurred]) .root-mw-core-imagetext .content .headline {
		font-size: 40px;
		line-height: 48px;
	}

}

@media all and (min-width: 1441px){

	.container-imagetext {
		padding-left: 16px;
		padding-right: 16px;
		max-width: var(--mw-layout-maxwidth);
		margin-left: auto;
		margin-right: auto;
	}
	:host([variant="slider"]) .root-mw-core-teasergroup .container .swiper-button-next {
		margin-top: -41px;
		right: -48px;
	}
	:host([variant="slider"]) .root-mw-core-teasergroup .container .swiper-button-prev {
		left: -48px;
		margin-top: -41px;
		right: auto;
	}

}