/*
	Landed by HTML5 UP
	html5up.net | @ajlkn
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

@import url("fontawesome-all.min.css");

@font-face {
  font-display: swap;
  font-family: 'Comfortaa';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/webfonts/comfortaa-v47-latin-regular.woff2') format('woff2');
}
@font-face {
  font-display: swap;
  font-family: 'Comfortaa';
  font-style: normal;
  font-weight: 500;
  src: url('/assets/webfonts/comfortaa-v47-latin-500.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Nunito Sans';
  font-style: normal;
  src: url('/assets/webfonts/nunito-sans-latin-wght-normal.woff2') format('woff2');
}
@font-face {
  font-display: swap;
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 200;
  src: url('/assets/webfonts/nunito-sans-v19-latin-200italic.woff2') format('woff2');
}

:root {

	--banner-color: rgb(228, 218, 180);

	--headline-color-typeA: #73b0ff;
	--text-color-typeA: rgb(228, 218, 180);
	--button-border-color-typeA: rgba(228, 218, 180, 0.8);
	--stroke-color-typeA: rgba(216, 216, 216, 0.04);

	--headline-color-typeB: #ff931c;
	--text-color-typeB: rgb(212, 209, 198);
	--button-border-color-typeB: rgba(212, 209, 198, 0.8);

	--headline-color-typeC: #2dd52d;
	--text-color-typeC: rgb(202, 218, 163);
	--button-border-color-typeC: rgb(202, 218, 163, 0.8);


	--text-color-popHeader: rgb(222, 222, 222);
	--text-color-popTypeA: rgb(222, 222, 222);
	--button-border-color-popTypeA: rgba(222, 222, 222, 0.8);
	
	--text-color-popTypeB: rgb(228, 218, 180);

}

html, body, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite,
code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b,
u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody,
tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	-webkit-text-size-adjust: none;
}

mark {
	background-color: transparent;
	color: inherit;
}

input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input, select, textarea {
	appearance: none;
}

/* Basic */

	html {
		box-sizing: border-box;
		scrollbar-gutter: stable;
	}

	*, *:before, *:after {
		box-sizing: inherit;
	}

	html, body {
		background: rgb(32, 32, 32); /*#A1D6E2;*/
		-webkit-tap-highlight-color: transparent;
	}

	.zmf_sticky_wrap {
		position: sticky;
		height: 0;
		width: 100%;
		z-index: 0;
		top: 0px;
	}
	.detailpage section:not(.wrapper) .zmf_sticky_wrap {
		display: none;
	}

		.zmf_sticky_wrap svg {
			position: absolute;
			background-size: cover;
			background-position: center center;
			background-repeat: repeat;
			top: 0px;
			width: 100%;
			height: max(100lvh, calc(100lvh * tan(atan2(323px, 100lvw))));
		}
		.wrapper.style2 .zmf_sticky_wrap svg {
			position: relative;
		}

	.zmf_svg_overflow {
		width: 100%;
		height: max(100lvh, calc(100lvh * tan(atan2(323px, 100lvw))));
		overflow: hidden;
		position: absolute;
		top: 0px;
	}
	.zmf_back_svg.big {
		display: block;
	}
	.zmf_back_svg.mob {
		display: none;
	}

	.zmf_background_banner {
		position: absolute;
		top: 0px;
		width: 100%;
		height: max(100lvh, calc(100lvh * tan(atan2(323px, 100lvw))));
		background-size: cover;
		background-position: center center;
		background-image: url("/images/background.jpg");
	}
	.zmf_background_typeA {
		position: relative;
		top: 0px;
		width: 100%;
		height: max(100lvh, calc(100lvh * tan(atan2(323px, 100lvw))));
		background-image: radial-gradient(circle 48vw, #39393b, #212633);
	}
	.zmf_background_typeB {
		position: relative;
		top: 0px;
		width: 100%;
		height: max(100lvh, calc(100lvh * tan(atan2(323px, 100lvw))));
		/*background-image: radial-gradient(circle 48vw, #39393b, rgb(25, 29, 41));*/
		background-image: linear-gradient(315deg, #39393b, rgb(25, 29, 41));
	}
	.zmf_background_typeW {
		position: relative;
		top: 0px;
		width: 100%;
		height: max(100lvh, calc(100lvh * tan(atan2(323px, 100lvw))));
		background: linear-gradient(145deg, rgb(25, 29, 41), #3f4249);
	}

	body.is-preload *, body.is-preload *:before, body.is-preload *:after {
		animation: none !important;
		transition: none !important;
	}

	body, input, select, textarea {
		color: #212121;
		font-family: 'Nunito Sans', sans-serif;
		font-optical-sizing: auto;
		font-style: normal;
		font-variation-settings:
			"wdth" 100,
			"YTLC" 500;
		font-size: 14.4pt;
		font-weight: 200;
		line-height: 1.75em;
	}

	a {
		text-decoration: none;
	}

		a:hover {
			/*color: #ffffff !important;*/
			border-bottom-color: transparent;
		}

	strong, b {
		font-weight: 400;
	}

	em, i {
		font-style: italic;
	}

	p {
		margin: 0 0 2em 0;
	}

	h1, h2, h3, h4, h5, h6 {
		line-height: 1em;
		margin: 0 0 1em 0;
	}
		.light {
			color: var(--text-color-typeA);
		}
			.style3 .light {
				color: var(--text-color-typeB);
			}
			.style4 .light {
				color: var(--text-color-typeC);
			}

		.button.light {
			color: var(--text-color-typeB);
			box-shadow: inset 0 0 0 1px var(--button-border-color-typeB);
		}
			.style3 .button.light {
				color: var(--text-color-typeB);
				box-shadow: inset 0 0 0 1px var(--button-border-color-typeB);
			}
			.style4 .button.light {
				color: var(--text-color-typeC);
				box-shadow: inset 0 0 0 1px var(--button-border-color-typeC);
			}

		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
			color: inherit;
			border: 0;
		}

	h2 {
		font-size: 2em;
		line-height: 1.5em;
	}

	h3 {
		font-size: 1.35em;
		line-height: 1.5em;
	}

	h4 {
		font-size: 1.1em;
		line-height: 1.5em;
	}

	h5 {
		font-size: 0.9em;
		line-height: 1.5em;
	}

	h6 {
		font-size: 0.7em;
		line-height: 1.5em;
	}

	sub {
		font-size: 0.8em;
		position: relative;
		top: 0.5em;
	}

	sup {
		font-size: 0.8em;
		position: relative;
		top: -0.5em;
	}

	hr {
		border: 0;
		border-bottom: solid 1px rgba(255, 255, 255, 0.3);
		margin: 3em 0;
	}

		hr.major {
			margin: 4em 0;
		}

	blockquote {
		border-left: solid 4px rgba(255, 255, 255, 0.3);
		font-style: italic;
		margin: 0 0 2em 0;
		padding: 0.5em 0 0.5em 2em;
	}

	code {
		background: rgba(255, 255, 255, 0.075);
		border-radius: 4px;
		font-family: "Courier New", monospace;
		font-size: 0.9em;
		margin: 0 0.25em;
		padding: 0.25em 0.65em;
	}

	pre {
		-webkit-overflow-scrolling: touch;
		font-family: "Courier New", monospace;
		font-size: 0.9em;
		margin: 0 0 2em 0;
	}

		pre code {
			display: block;
			line-height: 1.75em;
			padding: 1em 1.5em;
			overflow-x: auto;
		}

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

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

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

	.zmf_reg {
		font-size: 9pt;
		vertical-align: super;
    	line-height: 1;
	}

	.zmf_col3_container_textheader {
		font-size: 20px;
		text-align: justify;
		padding: 1.5em 0.5em;
		hyphens: auto;
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		hyphenate-limit-chars: 8 4 4;
		margin-bottom: 0.5em;
		font-weight: 300;
	}

	.zmf_col3_container_highlight {
		font-weight: 400;
		font-size: 44px;
		padding: 0.2em 0.5em;
		line-height: 1.5;
		text-align: center;
		margin-bottom: 1.5em;
	}

	.zmf_col3_container_text {
		font-size: 16px;
		line-height: 2;
		hyphens: auto;
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		hyphenate-limit-chars: 10 5 5;
		color: var(--text-color-typeB);
		text-align: justify;
		padding: 0 24px;
		font-weight: 300;
	}


/* Loader */

	@keyframes spinner-show {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@keyframes spinner-hide {
		0% {
			color: rgba(255, 255, 255, 0.15);
			z-index: 100001;
			transform: scale(1) rotate(0deg);
		}

		99% {
			color: #1c1d26;
			z-index: 100001;
			transform: scale(0.5) rotate(360deg);
		}

		100% {
			color: #1c1d26;
			z-index: -1;
			transform: scale(0.5) rotate(360deg);
		}
	}

	@keyframes spinner-rotate {
		0% {
			transform: scale(1) rotate(0deg);
		}

		100% {
			transform: scale(1) rotate(360deg);
		}
	}

	@keyframes overlay-hide {
		0% {
			opacity: 1;
			z-index: 100000;
		}

		15% {
			opacity: 1;
			z-index: 100000;
		}

		99% {
			opacity: 0;
			z-index: 100000;
		}

		100% {
			opacity: 0;
			z-index: -1;
		}
	}

	body.landing {
		text-decoration: none;
	}

		body.landing:before {
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			display: inline-block;
			font-style: normal;
			font-variant: normal;
			text-rendering: auto;
			line-height: 1;
			text-transform: none !important;
			font: var(--fa-font-solid);
			font-size: 2.5em;
		}

		body.landing:before {
			animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-hide 0.25s ease-in-out forwards !important;
			transform-origin: 50% 50%;
			color: rgba(255, 255, 255, 0.15);
			content: '\f1ce';
			cursor: default;
			display: block;
			font-size: 2em;
			height: 2em;
			left: 50%;
			line-height: 2em;
			margin: -1em 0 0 -1em;
			opacity: 0;
			position: fixed;
			text-align: center;
			top: 50%;
			width: 2em;
			z-index: -1;
		}

		body.landing:after {
			animation: overlay-hide 1.5s ease-in forwards !important;
			background: #1c1d26;
			content: '';
			display: block;
			height: 100%;
			left: 0;
			opacity: 0;
			position: fixed;
			top: 0;
			width: 100%;
			z-index: -1;
		}

		body.landing.is-preload:before {
			animation: spinner-show 1.5s 1 0.25s ease forwards, spinner-rotate 0.75s infinite linear !important;
			z-index: 100001;
		}

		body.landing.is-preload:after {
			animation: none !important;
			opacity: 1;
			z-index: 100000;
		}

	@media (-webkit-min-device-pixel-ratio: 2) {

		body.landing:before {
			line-height: 2.025em;
		}

	}

/* Container */

	.container {
		margin: 0 auto;
		max-width: calc(100% - 4em);
		width: 80em;
	}
	.detailpage .container {
		margin: 0 auto;
		max-width: 100%;
		width: 100%;
		min-height: calc(100svh - 420px);
	}

		.container.xsmall {
			width: 17.5em;
		}

		.container.small {
			width: 35em;
		}

		.container.medium {
			width: 52.5em;
		}

		.container.large {
			width: 87.5em;
		}

		.container.xlarge {
			width: 105em;
		}

		.container.max {
			width: 100%;
		}

/* Row */

	.row {
		display: flex;
		flex-wrap: wrap;
		box-sizing: border-box;
		align-items: stretch;
		justify-content: center;
	}

		.row > * {
			box-sizing: border-box;
		}

		.row.gtr-uniform > * > :last-child {
			margin-bottom: 0;
		}

		.row.aln-left {
			justify-content: flex-start;
		}

		.row.aln-center {
			justify-content: center;
		}

		.row.aln-right {
			justify-content: flex-end;
		}

		.row.aln-top {
			align-items: flex-start;
		}

		.row.aln-middle {
			align-items: center;
		}

		.row.aln-bottom {
			align-items: flex-end;
		}

		.row > .imp {
			order: -1;
		}

		.row > .col-1 {
			width: 8.33333%;
		}

		.row > .off-1 {
			margin-left: 8.33333%;
		}

		.row > .col-2 {
			width: 16.66667%;
		}

		.row > .off-2 {
			margin-left: 16.66667%;
		}

		.row > .col-3 {
			width: 25%;
		}

		.row > .off-3 {
			margin-left: 25%;
		}

		.row > .col-4 {
			width: 33.33333%;
		}

		.row > .off-4 {
			margin-left: 33.33333%;
		}

		.row > .col-5 {
			width: 41.66667%;
		}

		.row > .off-5 {
			margin-left: 41.66667%;
		}

		.row > .col-6 {
			width: 50%;
		}

		.row > .off-6 {
			margin-left: 50%;
		}

		.row > .col-7 {
			width: 58.33333%;
		}

		.row > .off-7 {
			margin-left: 58.33333%;
		}

		.row > .col-8 {
			width: 66.66667%;
		}

		.row > .off-8 {
			margin-left: 66.66667%;
		}

		.row > .col-9 {
			width: 75%;
		}

		.row > .off-9 {
			margin-left: 75%;
		}

		.row > .col-10 {
			width: 83.33333%;
		}

		.row > .off-10 {
			margin-left: 83.33333%;
		}

		.row > .col-11 {
			width: 91.66667%;
		}

		.row > .off-11 {
			margin-left: 91.66667%;
		}

		.row > .col-12 {
			width: 100%;
		}

		.row > .off-12 {
			margin-left: 100%;
		}

		.row.gtr-0 {
			margin-top: 0;
			margin-left: 0em;
		}

			.row.gtr-0 > * {
				padding: 0 0 0 0em;
			}

			.row.gtr-0.gtr-uniform {
				margin-top: 0em;
			}

				.row.gtr-0.gtr-uniform > * {
					padding-top: 0em;
				}

		.row.gtr-25 {
			margin-top: 0;
			margin-left: -0.625em;
		}

			.row.gtr-25 > * {
				padding: 0 0 0 0.625em;
			}

			.row.gtr-25.gtr-uniform {
				margin-top: -0.625em;
			}

				.row.gtr-25.gtr-uniform > * {
					padding-top: 0.625em;
				}

		.row.gtr-50 {
			margin-top: 0;
			margin-left: -1.25em;
		}

			.row.gtr-50 > * {
				padding: 0 0 0 1.25em;
			}

			.row.gtr-50.gtr-uniform {
				margin-top: -1.25em;
			}

				.row.gtr-50.gtr-uniform > * {
					padding-top: 1.25em;
				}

		.row {
			margin-top: 0;
			margin-left: -2.5em;
		}

			.row > * {
				padding: 0 0 0 2.5em;
			}

			.row.gtr-uniform {
				margin-top: -2.5em;
			}

				.row.gtr-uniform > * {
					padding-top: 2.5em;
				}

		.row.gtr-150 {
			margin-top: 0;
			margin-left: -3.75em;
		}

			.row.gtr-150 > * {
				padding: 0 0 0 3.75em;
			}

			.row.gtr-150.gtr-uniform {
				margin-top: -3.75em;
			}

				.row.gtr-150.gtr-uniform > * {
					padding-top: 3.75em;
				}

		.row.gtr-200 {
			margin-top: 0;
			margin-left: -5em;
		}

			.row.gtr-200 > * {
				padding: 0 0 0 5em;
			}

			.row.gtr-200.gtr-uniform {
				margin-top: -5em;
			}

				.row.gtr-200.gtr-uniform > * {
					padding-top: 5em;
				}

		@media screen and (max-width: 1680px) {

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-xlarge {
					order: -1;
				}

				.row > .col-1-xlarge {
					width: 8.33333%;
				}

				.row > .off-1-xlarge {
					margin-left: 8.33333%;
				}

				.row > .col-2-xlarge {
					width: 16.66667%;
				}

				.row > .off-2-xlarge {
					margin-left: 16.66667%;
				}

				.row > .col-3-xlarge {
					width: 25%;
				}

				.row > .off-3-xlarge {
					margin-left: 25%;
				}

				.row > .col-4-xlarge {
					width: 33.33333%;
				}

				.row > .off-4-xlarge {
					margin-left: 33.33333%;
				}

				.row > .col-5-xlarge {
					width: 41.66667%;
				}

				.row > .off-5-xlarge {
					margin-left: 41.66667%;
				}

				.row > .col-6-xlarge {
					width: 50%;
				}

				.row > .off-6-xlarge {
					margin-left: 50%;
				}

				.row > .col-7-xlarge {
					width: 58.33333%;
				}

				.row > .off-7-xlarge {
					margin-left: 58.33333%;
				}

				.row > .col-8-xlarge {
					width: 66.66667%;
				}

				.row > .off-8-xlarge {
					margin-left: 66.66667%;
				}

				.row > .col-9-xlarge {
					width: 75%;
				}

				.row > .off-9-xlarge {
					margin-left: 75%;
				}

				.row > .col-10-xlarge {
					width: 83.33333%;
				}

				.row > .off-10-xlarge {
					margin-left: 83.33333%;
				}

				.row > .col-11-xlarge {
					width: 91.66667%;
				}

				.row > .off-11-xlarge {
					margin-left: 91.66667%;
				}

				.row > .col-12-xlarge {
					width: 100%;
				}

				.row > .off-12-xlarge {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.625em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.625em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.625em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.625em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1.25em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1.25em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1.25em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1.25em;
						}

					.row > * {
						padding: 0 0 0 2.5em;
					}

					.row.gtr-uniform {
						margin-top: -2.5em;
					}

						.row.gtr-uniform > * {
							padding-top: 2.5em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3.75em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3.75em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3.75em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3.75em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -5em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 5em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -5em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 5em;
						}

		}

		@media screen and (max-width: 1280px) {

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-large {
					order: -1;
				}

				.row > .col-1-large {
					width: 8.33333%;
				}

				.row > .off-1-large {
					margin-left: 8.33333%;
				}

				.row > .col-2-large {
					width: 16.66667%;
				}

				.row > .off-2-large {
					margin-left: 16.66667%;
				}

				.row > .col-3-large {
					width: 25%;
				}

				.row > .off-3-large {
					margin-left: 25%;
				}

				.row > .col-4-large {
					width: 33.33333%;
				}

				.row > .off-4-large {
					margin-left: 33.33333%;
				}

				.row > .col-5-large {
					width: 41.66667%;
				}

				.row > .off-5-large {
					margin-left: 41.66667%;
				}

				.row > .col-6-large {
					width: 50%;
				}

				.row > .off-6-large {
					margin-left: 50%;
				}

				.row > .col-7-large {
					width: 58.33333%;
				}

				.row > .off-7-large {
					margin-left: 58.33333%;
				}

				.row > .col-8-large {
					width: 66.66667%;
				}

				.row > .off-8-large {
					margin-left: 66.66667%;
				}

				.row > .col-9-large {
					width: 75%;
				}

				.row > .off-9-large {
					margin-left: 75%;
				}

				.row > .col-10-large {
					width: 83.33333%;
				}

				.row > .off-10-large {
					margin-left: 83.33333%;
				}

				.row > .col-11-large {
					width: 91.66667%;
				}

				.row > .off-11-large {
					margin-left: 91.66667%;
				}

				.row > .col-12-large {
					width: 100%;
				}

				.row > .off-12-large {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.625em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.625em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.625em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.625em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1.25em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1.25em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1.25em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1.25em;
						}

					.row > * {
						padding: 0 0 0 2.5em;
					}

					.row.gtr-uniform {
						margin-top: -2.5em;
					}

						.row.gtr-uniform > * {
							padding-top: 2.5em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3.75em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3.75em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3.75em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3.75em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -5em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 5em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -5em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 5em;
						}

		}

		@media screen and (max-width: 980px) {

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-medium {
					order: -1;
				}

				.row > .col-1-medium {
					width: 8.33333%;
				}

				.row > .off-1-medium {
					margin-left: 8.33333%;
				}

				.row > .col-2-medium {
					width: 16.66667%;
				}

				.row > .off-2-medium {
					margin-left: 16.66667%;
				}

				.row > .col-3-medium {
					width: 25%;
				}

				.row > .off-3-medium {
					margin-left: 25%;
				}

				.row > .col-4-medium {
					width: 33.33333%;
				}

				.row > .off-4-medium {
					margin-left: 33.33333%;
				}

				.row > .col-5-medium {
					width: 41.66667%;
				}

				.row > .off-5-medium {
					margin-left: 41.66667%;
				}

				.row > .col-6-medium {
					width: 50%;
				}

				.row > .off-6-medium {
					margin-left: 50%;
				}

				.row > .col-7-medium {
					width: 58.33333%;
				}

				.row > .off-7-medium {
					margin-left: 58.33333%;
				}

				.row > .col-8-medium {
					width: 66.66667%;
				}

				.row > .off-8-medium {
					margin-left: 66.66667%;
				}

				.row > .col-9-medium {
					width: 75%;
				}

				.row > .off-9-medium {
					margin-left: 75%;
				}

				.row > .col-10-medium {
					width: 83.33333%;
				}

				.row > .off-10-medium {
					margin-left: 83.33333%;
				}

				.row > .col-11-medium {
					width: 91.66667%;
				}

				.row > .off-11-medium {
					margin-left: 91.66667%;
				}

				.row > .col-12-medium {
					width: 100%;
				}

				.row > .off-12-medium {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.625em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.625em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.625em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.625em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1.25em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1.25em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1.25em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1.25em;
						}

					.row > * {
						padding: 0 0 0 2.5em;
					}

					.row.gtr-uniform {
						margin-top: -2.5em;
					}

						.row.gtr-uniform > * {
							padding-top: 2.5em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3.75em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3.75em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3.75em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3.75em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -5em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 5em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -5em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 5em;
						}

		}

		@media screen and (max-width: 736px) {

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-small {
					order: -1;
				}

				.row > .col-1-small {
					width: 8.33333%;
				}

				.row > .off-1-small {
					margin-left: 8.33333%;
				}

				.row > .col-2-small {
					width: 16.66667%;
				}

				.row > .off-2-small {
					margin-left: 16.66667%;
				}

				.row > .col-3-small {
					width: 25%;
				}

				.row > .off-3-small {
					margin-left: 25%;
				}

				.row > .col-4-small {
					width: 33.33333%;
				}

				.row > .off-4-small {
					margin-left: 33.33333%;
				}

				.row > .col-5-small {
					width: 41.66667%;
				}

				.row > .off-5-small {
					margin-left: 41.66667%;
				}

				.row > .col-6-small {
					width: 50%;
				}

				.row > .off-6-small {
					margin-left: 50%;
				}

				.row > .col-7-small {
					width: 58.33333%;
				}

				.row > .off-7-small {
					margin-left: 58.33333%;
				}

				.row > .col-8-small {
					width: 66.66667%;
				}

				.row > .off-8-small {
					margin-left: 66.66667%;
				}

				.row > .col-9-small {
					width: 75%;
				}

				.row > .off-9-small {
					margin-left: 75%;
				}

				.row > .col-10-small {
					width: 83.33333%;
				}

				.row > .off-10-small {
					margin-left: 83.33333%;
				}

				.row > .col-11-small {
					width: 91.66667%;
				}

				.row > .off-11-small {
					margin-left: 91.66667%;
				}

				.row > .col-12-small {
					width: 100%;
				}

				.row > .off-12-small {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.625em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.625em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.625em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.625em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1.25em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1.25em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1.25em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1.25em;
						}

					.row > * {
						padding: 0 0 0 2.5em;
					}

					.row.gtr-uniform {
						margin-top: -2.5em;
					}

						.row.gtr-uniform > * {
							padding-top: 2.5em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3.75em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3.75em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3.75em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3.75em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -5em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 5em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -5em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 5em;
						}

		}

		@media screen and (max-width: 480px) {

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-xsmall {
					order: -1;
				}

				.row > .col-1-xsmall {
					width: 8.33333%;
				}

				.row > .off-1-xsmall {
					margin-left: 8.33333%;
				}

				.row > .col-2-xsmall {
					width: 16.66667%;
				}

				.row > .off-2-xsmall {
					margin-left: 16.66667%;
				}

				.row > .col-3-xsmall {
					width: 25%;
				}

				.row > .off-3-xsmall {
					margin-left: 25%;
				}

				.row > .col-4-xsmall {
					width: 33.33333%;
				}

				.row > .off-4-xsmall {
					margin-left: 33.33333%;
				}

				.row > .col-5-xsmall {
					width: 41.66667%;
				}

				.row > .off-5-xsmall {
					margin-left: 41.66667%;
				}

				.row > .col-6-xsmall {
					width: 50%;
				}

				.row > .off-6-xsmall {
					margin-left: 50%;
				}

				.row > .col-7-xsmall {
					width: 58.33333%;
				}

				.row > .off-7-xsmall {
					margin-left: 58.33333%;
				}

				.row > .col-8-xsmall {
					width: 66.66667%;
				}

				.row > .off-8-xsmall {
					margin-left: 66.66667%;
				}

				.row > .col-9-xsmall {
					width: 75%;
				}

				.row > .off-9-xsmall {
					margin-left: 75%;
				}

				.row > .col-10-xsmall {
					width: 83.33333%;
				}

				.row > .off-10-xsmall {
					margin-left: 83.33333%;
				}

				.row > .col-11-xsmall {
					width: 91.66667%;
				}

				.row > .off-11-xsmall {
					margin-left: 91.66667%;
				}

				.row > .col-12-xsmall {
					width: 100%;
				}

				.row > .off-12-xsmall {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.625em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.625em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.625em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.625em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1.25em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1.25em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1.25em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1.25em;
						}

					.row > * {
						padding: 0 0 0 2.5em;
					}

					.row.gtr-uniform {
						margin-top: -2.5em;
					}

						.row.gtr-uniform > * {
							padding-top: 0;
							padding-bottom: 0;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3.75em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3.75em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3.75em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3.75em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -5em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 5em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -5em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 5em;
						}

		}

/* Section/Article */

	body > div#page-wrapper > section:not(#banner),
	body.detailpage > div#page-wrapper > .container > section,
	body.detailpage .zmf_spotlistdetail_pop section {
		border-top:#4e4a5e;
		border-top-width: 2px;
		border-style: solid;
	}

	section.special, article.special {
		text-align: center;
	}

	header p {
		color: var(--text-color-typeB);
		position: relative;
		line-height: 2;
	}

	header h2 + p {
		font-size: 1.25em;
		margin-top: -1em;
		line-height: 1.75em;
	}

	header h3 + p {
		font-size: 1.1em;
		margin-top: -0.8em;
		line-height: 1.75em;
	}

	header h4 + p,
	header h5 + p,
	header h6 + p {
		font-size: 0.9em;
		margin-top: -0.6em;
		line-height: 1.5em;
	}

	header.major {
		margin: 0 0 1em 0;
		position: relative;
		text-align: center;
		display: grid;
		justify-items: center;
	}

	.zmf_slpopcontent header.major {
		display: none;
	}

	header.major h1 {
		font-size: 3em;
		font-weight: 400;
		margin: 2em 0 0 0;
		line-height: 1.5em;
		background-image: linear-gradient(to right, var(--headline-color-typeA), var(--text-color-typeA));
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
	}
		.style3 header.major h1 {
			background-image: linear-gradient(to right, var(--headline-color-typeB), var(--text-color-typeB));
		}
		.style4 header.major h1 {
			background-image: linear-gradient(to right, var(--headline-color-typeC), var(--text-color-typeC));
		}

	footer.major {
		margin: 4em 0 0 0;
	}

/* Form */

	form {
		margin: 0 0 2em 0;
	}

		form.cta {
			max-width: 35em;
			margin-left: auto;
			margin-right: auto;
		}

	label {
		color: #ffffff;
		display: block;
		font-size: 0.9em;
		font-weight: 300;
		margin: 0 0 1em 0;
	}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	select,
	textarea {
		appearance: none;
		transition: border-color 0.2s ease-in-out;
		background: transparent;
		border-radius: 4px;
		border: solid 1px rgba(255, 255, 255, 0.3);
		color: inherit;
		display: block;
		outline: 0;
		padding: 0 1em;
		text-decoration: none;
		width: 100%;
	}

		input[type="text"]:invalid,
		input[type="password"]:invalid,
		input[type="email"]:invalid,
		select:invalid,
		textarea:invalid {
			box-shadow: none;
		}

		input[type="text"]:focus,
		input[type="password"]:focus,
		input[type="email"]:focus,
		select:focus,
		textarea:focus {
			border-color: #e44c65;
		}

	select {
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='rgba(255, 255, 255, 0.3)' /%3E%3C/svg%3E");
		background-size: 1.25rem;
		background-repeat: no-repeat;
		background-position: calc(100% - 1rem) center;
		height: 3em;
		padding-right: 3em;
		text-overflow: ellipsis;
	}

		select option {
			color: #ffffff;
			background: #1c1d26;
		}

		select:focus::-ms-value {
			background-color: transparent;
		}

		select::-ms-expand {
			display: none;
		}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	select {
		height: 3em;
	}

	textarea {
		padding: 0.75em 1em;
	}

	input[type="checkbox"],
	input[type="radio"] {
		appearance: none;
		display: block;
		float: left;
		margin-right: -2em;
		opacity: 0;
		width: 1em;
		z-index: -1;
	}

		input[type="checkbox"] + label,
		input[type="radio"] + label {
			text-decoration: none;
			color: rgba(255, 255, 255, 0.75);
			cursor: pointer;
			display: inline-block;
			font-size: 1em;
			font-weight: 100;
			padding-left: 2.55em;
			padding-right: 0.75em;
			position: relative;
		}

			input[type="checkbox"] + label:before,
			input[type="radio"] + label:before {
				-moz-osx-font-smoothing: grayscale;
				-webkit-font-smoothing: antialiased;
				display: inline-block;
				font-style: normal;
				font-variant: normal;
				text-rendering: auto;
				line-height: 1;
				text-transform: none !important;
				font: var(--fa-font-solid);
				font-size: 2.5em;
			}

			input[type="checkbox"] + label:before,
			input[type="radio"] + label:before {
				border-radius: 4px;
				border: solid 1px rgba(255, 255, 255, 0.3);
				content: '';
				display: inline-block;
				font-size: 0.8em;
				height: 2.25em;
				left: 0;
				line-height: 2.25em;
				position: absolute;
				text-align: center;
				top: 0;
				width: 2.25em;
			}

		input[type="checkbox"]:checked + label:before,
		input[type="radio"]:checked + label:before {
			background: rgba(255, 255, 255, 0.25);
			color: #ffffff;
			content: '\f00c';
		}

		input[type="checkbox"]:focus + label:before,
		input[type="radio"]:focus + label:before {
			border-color: #e44c65;
		}

	input[type="checkbox"] + label:before {
		border-radius: 4px;
	}

	input[type="radio"] + label:before {
		border-radius: 100%;
	}

	::-webkit-input-placeholder {
		color: rgba(255, 255, 255, 0.5) !important;
		opacity: 1.0;
	}

	:-moz-placeholder {
		color: rgba(255, 255, 255, 0.5) !important;
		opacity: 1.0;
	}

	::-moz-placeholder {
		color: rgba(255, 255, 255, 0.5) !important;
		opacity: 1.0;
	}

	:-ms-input-placeholder {
		color: rgba(255, 255, 255, 0.5) !important;
		opacity: 1.0;
	}

/* Box */

	.box {
		border-radius: 4px;
		border: solid 1px rgba(255, 255, 255, 0.3);
		margin-bottom: 2em;
		padding: 1.5em;
		overflow: hidden;
	}

		.box > :last-child,
		.box > :last-child > :last-child,
		.box > :last-child > :last-child > :last-child {
			margin-bottom: 0;
		}

		.box.alt {
			border: 0;
			border-radius: 0;
			padding: 0;
		}

/* Icon */

	.icon {
		text-decoration: none;
		border-bottom: none;
		position: relative;
	}

		.icon:before {
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			display: inline-block;
			font-style: normal;
			font-variant: normal;
			text-rendering: auto;
			line-height: 1;
			text-transform: none !important;
			font: var(--fa-font-solid);
			font-size: 2.5em;
		}

		.icon > .label {
			display: none;
		}

		/*.icon:before {
			line-height: inherit;
		}*/

		.icon.solid:before {
			font-weight: 900 !important;
		}

		.icon.brands:before {
			font: var(--fa-font-brands) !important;
			font-size: 2.5em !important;
		}

		.icon.alt {
			text-decoration: none;
		}

			.icon.alt:before {
				-moz-osx-font-smoothing: grayscale;
				-webkit-font-smoothing: antialiased;
				display: inline-block;
				font-style: normal;
				font-variant: normal;
				text-rendering: auto;
				line-height: 1;
				text-transform: none !important;
				font: var(--fa-font-brands);
				font-size: 2.5em;
			}

			.icon.alt:before {
				color: #1c1d26;
				text-shadow: 1px 0 0 var(--text-color-typeA), -1px 0 0 var(--text-color-typeA), 0 1px 0 var(--text-color-typeA), 0 -1px 0 var(--text-color-typeA);
			}

		.icon.major {
			/*background: #272833;*/
			border-radius: 100%;
			cursor: default;
			display: inline-block;
			height: 6em;
			line-height: 5.65em;
			margin: 0 0 2em 0;
			text-align: center;
			width: 6em;
		}

			.icon.major:before {
				font-size: 2.25em;
			}

			.icon.major.alt {
				text-decoration: none;
			}

				.icon.major.alt:before {
					-moz-osx-font-smoothing: grayscale;
					-webkit-font-smoothing: antialiased;
					display: inline-block;
					font-style: normal;
					font-variant: normal;
					text-rendering: auto;
					line-height: 1;
					text-transform: none !important;
					font: var(--fa-font-solid);
					font-size: 2.5em;
				}


				.icon.major.alt:before {
					/*-webkit-text-stroke-color:var(--text-color-typeA);
					text-stroke-color:var(--text-color-typeA);
					-webkit-text-stroke-width:1px;
					text-stroke-width:1px;*/

					/*text-shadow: 1px 0 0 var(--text-color-typeA), -1px 0 0 var(--text-color-typeA), 0 1px 0 var(--text-color-typeA), 0 -1px 0 var(--text-color-typeA);*/
					text-shadow: none;


					-webkit-text-stroke-width: 4px;
					-webkit-background-clip: text;
					background-image: linear-gradient(135deg, var(--headline-color-typeA), var(--text-color-typeA));
					background-clip: text;
					-webkit-text-stroke: 4px transparent;
					color: #212633;
					padding: 6px;
				}
					.style3 .icon.major.alt:before {
						color: rgb(25, 29, 41);
						background-image: linear-gradient(135deg, var(--headline-color-typeB), var(--text-color-typeB));
					}
					.zmf_spotlistdetail_pop.style3 .icon.major.alt:before {
						color: #212633;
						background-image: linear-gradient(135deg, var(--headline-color-typeB), var(--text-color-typeB));
					}
					.style4 .icon.major.alt:before {
						background-image: linear-gradient(135deg, var(--headline-color-typeC), var(--text-color-typeC));
					}

/* Image */

	.image {
		border-radius: 4px;
		border: 0;
		display: inline-block;
		position: relative;
		overflow: hidden;
	}

		/*.image:before {
			content: '';
			display: block;
			position: absolute;
			left: 0;
			top: 0;
			background-image: url("images/overlay.png");
			width: 100%;
			height: 100%;
			z-index: 1;
		}*/

		.image img {
			border-radius: 50em;
			display: block;
		}
			.style1 .image img {
				border-radius: 1em;
				opacity: 70%;
			}

		.image.left {
			float: left;
			margin: 0 1.5em 1em 0;
			top: 0.25em;
		}

		.image.right {
			float: right;
			margin: 0 0 1em 1.5em;
			top: 0.25em;
		}

		.image.left, .image.right {
			max-width: 40%;
		}

			.image.left img, .image.right img {
				width: 100%;
			}

		.image.fit {
			display: block;
			margin: 0 0 2em 0;
			width: 100%;
		}

			.image.fit img {
				width: min(70%, 16em);
				margin-bottom: 2em;
			}

/* List */

	ol {
		list-style: decimal;
		margin: 0 0 2em 0;
		padding-left: 1.25em;
	}

		ol li {
			padding-left: 0.25em;
		}

	ul {
		list-style: disc;
		margin: 0 0 2em 0;
		padding-left: 1em;
	}

		ul li {
			padding-left: 0.5em;
		}

		ul.alt {
			list-style: none;
			padding-left: 0;
		}

			ul.alt li {
				border-top: solid 1px rgba(255, 255, 255, 0.3);
				padding: 0.5em 0;
			}

				ul.alt li:first-child {
					border-top: 0;
					padding-top: 0;
				}

	dl {
		margin: 0 0 2em 0;
	}

/* Icons */

	ul.icons {
		cursor: default;
		list-style: none;
		padding-left: 0;
	}

		ul.icons li {
			display: inline-block;
			height: 2.5em;
			line-height: 2.5em;
			padding: 0 1em;
			width: 4em;
		}

			ul.icons li .icon {
				font-size: 0.8em;
			}

				ul.icons li .icon:before {
					font-size: 2em;
				}

/* Actions */

	ul.actions {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		cursor: default;
		list-style: none;
		margin-left: -1em;
		padding-left: 0;
	}

		ul.actions li {
			padding: 0 0 0 1em;
			vertical-align: middle;
		}

		ul.actions.special {
			justify-content: center;
			width: 100%;
			margin-left: 0;
		}

			ul.actions.special li:first-child {
				padding-left: 0;
			}

		ul.actions.stacked {
			flex-direction: column;
			margin-left: 0;
		}

			ul.actions.stacked li {
				padding: 1.3em 0 0 0;
			}

				ul.actions.stacked li:first-child {
					padding-top: 0;
				}

		ul.actions.fit {
			width: calc(100% + 1em);
		}

			ul.actions.fit li {
				flex-grow: 1;
				flex-shrink: 1;
				width: 100%;
			}

				ul.actions.fit li > * {
					width: 100%;
				}

			ul.actions.fit.stacked {
				width: 100%;
			}

		@media screen and (max-width: 480px) {

			ul.actions:not(.fixed) {
				flex-direction: column;
				margin-left: 0;
				width: 100% !important;
			}

				ul.actions:not(.fixed) li {
					flex-grow: 1;
					flex-shrink: 1;
					padding: 1em 0 0 0;
					text-align: center;
					width: 100%;
				}

					ul.actions:not(.fixed) li > * {
						width: 100%;
					}

					ul.actions:not(.fixed) li:first-child {
						padding-top: 0;
					}

					ul.actions:not(.fixed) li input[type="submit"],
					ul.actions:not(.fixed) li input[type="reset"],
					ul.actions:not(.fixed) li input[type="button"],
					ul.actions:not(.fixed) li button,
					ul.actions:not(.fixed) li .button {
						width: 100%;
					}

						ul.actions:not(.fixed) li input[type="submit"].icon:before,
						ul.actions:not(.fixed) li input[type="reset"].icon:before,
						ul.actions:not(.fixed) li input[type="button"].icon:before,
						ul.actions:not(.fixed) li button.icon:before,
						ul.actions:not(.fixed) li .button.icon:before {
							margin-left: -0.5em;
						}

		}

/* Table */

	.table-wrapper {
		-webkit-overflow-scrolling: touch;
		overflow-x: auto;
	}

	table {
		margin: 0 0 2em 0;
		width: 100%;
	}

		table tbody tr {
			border: solid 1px rgba(255, 255, 255, 0.3);
			border-left: 0;
			border-right: 0;
		}

			table tbody tr:nth-child(2n + 1) {
				background-color: rgba(255, 255, 255, 0.075);
			}

		table td {
			padding: 0.75em 0.75em;
		}

		table th {
			color: #ffffff;
			font-size: 0.9em;
			font-weight: 300;
			padding: 0 0.75em 0.75em 0.75em;
			text-align: left;
		}

		table thead {
			border-bottom: solid 1px rgba(255, 255, 255, 0.3);
		}

		table tfoot {
			border-top: solid 1px rgba(255, 255, 255, 0.3);
		}

		table.alt {
			border-collapse: separate;
		}

			table.alt tbody tr td {
				border: solid 1px rgba(255, 255, 255, 0.3);
				border-left-width: 0;
				border-top-width: 0;
			}

				table.alt tbody tr td:first-child {
					border-left-width: 1px;
				}

			table.alt tbody tr:first-child td {
				border-top-width: 1px;
			}

			table.alt thead {
				border-bottom: 0;
			}

			table.alt tfoot {
				border-top: 0;
			}

/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	.button {
		appearance: none;
		transition: all 0.3s ease-in-out;
		background-color: transparent;
		border-radius: 4px;
		border: 0;
		box-shadow: inset 0 0 0 1px rgba(33, 33, 33, 0.6);
		color: #212121;
		cursor: pointer;
		display: inline-block;
		font-weight: 200;
		height: 3em;
		line-height: 3em;
		padding: 0 2.25em;
		text-align: center;
		text-decoration: none;
		white-space: nowrap;
	}

		input[type="submit"]:hover, input[type="submit"]:active,
		input[type="reset"]:hover,
		input[type="reset"]:active,
		input[type="button"]:hover,
		input[type="button"]:active,
		.button:hover,
		.button:active {
			box-shadow: inset 0 0 0 1px #e2dfdf;
			/*color: #e2dfdf !important;*/
		}

		input[type="submit"]:active,
		input[type="reset"]:active,
		input[type="button"]:active,
		.button:active {
			background-color: rgba(228, 76, 101, 0.15);
		}

		input[type="submit"].icon:before,
		input[type="reset"].icon:before,
		input[type="button"].icon:before,
		.button.icon:before {
			margin-right: 0.5em;
		}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		.button.fit {
			width: 100%;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		.button.small {
			font-size: 0.8em;
		}

		input[type="submit"].large,
		input[type="reset"].large,
		input[type="button"].large,
		.button.large {
			font-size: 1.35em;
		}

		input[type="submit"].primary,
		input[type="reset"].primary,
		input[type="button"].primary,
		.button.primary {
			background-color: #3141e3;
			box-shadow: none;
			/*color: #ffffff !important;*/
		}

			input[type="submit"].primary:hover,
			input[type="reset"].primary:hover,
			input[type="button"].primary:hover,
			.button.primary:hover {
				background-color: #3141e3;
			}

			input[type="submit"].primary:active,
			input[type="reset"].primary:active,
			input[type="button"].primary:active,
			.button.primary:active {
				background-color: #3141e3;
			}

		input[type="submit"].disabled, input[type="submit"]:disabled,
		input[type="reset"].disabled,
		input[type="reset"]:disabled,
		input[type="button"].disabled,
		input[type="button"]:disabled,
		.button.disabled,
		.button:disabled {
			background-color: rgba(255, 255, 255, 0.3) !important;
			box-shadow: none !important;
			color: #ffffff !important;
			cursor: default;
			opacity: 0.25;
		}

/* Goto Next */

	.zmf_logo {
		display: none;
		border: 0;
		top: 0;
		z-index: 1;
		justify-content: center;
		white-space: nowrap;
		margin: -1em 0 0 0;
    	padding-bottom: 1em;
	}

		.zmf_logo img {
			display: block;
			width: 12em;
		}


	.zmf_logo2 {
		display: grid;
		width: auto;
		position: absolute;
		border: 0;
		top: 0;
		z-index: 1;
		justify-content: left;
		white-space: nowrap;
		margin: 1em 0 0 1em;
    	padding-bottom: 1em;
	}

		.zmf_logo2 img {
			display: block;
			width: 18em;
		}

	.goto-next {
		border: 0;
		bottom: 0;
		display: block;
		height: 9em;
		left: 50%;
		margin: 0 0 0 -10em;
		overflow: hidden;
		position: absolute;
		padding: 1em 0 0 0;
		/*text-indent: 10em;*/
		white-space: nowrap;
		width: 20em;
		z-index: 1;
	}
	.detailpage section:last-child .goto-next {
		display: none;
	}

		.goto-next.notext {
			height: 8em;
			padding: 0 0 0 0;
		}

		.goto-next:before {
			background-image: url("images/arrow.svg");
			background-position: center center;
			background-repeat: no-repeat;
			background-size: contain;
			content: '';
			display: block;
			height: 1.5em;
			left: 50%;
			margin: -0.75em 0 0 -1em;
			position: absolute;
			top: 50%;
			width: 2em;
			z-index: 1;
		}

/* Spotlight */

	.spotlight {
		background-attachment: fixed;
		background-position: center center;
		background-size: cover;
		/*box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.25);*/
		height: auto;
		/*overflow: hidden;*/
		position: relative;
	}

	.detailpage .spotlight {
		opacity: 0;
		height: 150svh;
		transition: opacity 0.5s ease;
	}

		/*.spotlight:nth-last-of-type(1) {
			z-index: 1;
		}

		.spotlight:nth-last-of-type(2) {
			z-index: 2;
		}

		.spotlight:nth-last-of-type(3) {
			z-index: 3;
		}

		.spotlight:nth-last-of-type(4) {
			z-index: 4;
		}

		.spotlight:nth-last-of-type(5) {
			z-index: 5;
		}

		.spotlight:nth-last-of-type(6) {
			z-index: 6;
		}

		.spotlight:nth-last-of-type(7) {
			z-index: 7;
		}

		.spotlight:nth-last-of-type(8) {
			z-index: 8;
		}

		.spotlight:nth-last-of-type(9) {
			z-index: 9;
		}

		.spotlight:nth-last-of-type(10) {
			z-index: 10;
		}

		.spotlight:nth-last-of-type(11) {
			z-index: 11;
		}

		.spotlight:nth-last-of-type(12) {
			z-index: 12;
		}

		.spotlight:nth-last-of-type(13) {
			z-index: 13;
		}

		.spotlight:nth-last-of-type(14) {
			z-index: 14;
		}

		.spotlight:nth-last-of-type(15) {
			z-index: 15;
		}

		.spotlight:nth-last-of-type(16) {
			z-index: 16;
		}

		.spotlight:nth-last-of-type(17) {
			z-index: 17;
		}

		.spotlight:nth-last-of-type(18) {
			z-index: 18;
		}

		.spotlight:nth-last-of-type(19) {
			z-index: 19;
		}

		.spotlight:nth-last-of-type(20) {
			z-index: 20;
		}*/

		.spotlight:before {
			background-image: url("images/overlay.png");
			content: '';
			display: block;
			height: 100%;
			left: 0;
			top: 0;
			width: 100%;
		}
		.detailpage .spotlight:before {
			background-image: none;
		}

		.spotlight .image.main {
			display: none;
		}

			.spotlight .image.main img {
				position: relative;
			}

		.spotlight .content {
			transform: translate(0,0);
			transition: transform 2s ease, opacity 3s ease;
			/*background: rgba(23, 24, 32, 0.95);*/
			border-style: solid;
			opacity: 1;
			position: absolute;
			height: fit-content;
			text-align: center;
		}
			.spotlight .content header {
				display: grid;
				justify-items: center;
			}

		.spotlight.style1 .content {
			position: relative;
		}

		.spotlight .content h2 {
			width: fit-content;
			font-size: 3em;
			font-weight: 300;
			-webkit-background-clip: text;
			background-clip: text;
			-webkit-text-fill-color: transparent;
		}

		.spotlight .goto-next {
			transform: translate(0,0);
			transition: transform 0.75s ease, opacity 1s ease-in;
			transition-delay: 0.5s;
			opacity: 1;
		}

		.spotlight.top .content, .spotlight.bottom .content {
			left: 0;
			padding: 5.1em 0 3.1em 0;
			width: 100%;
		}

		.spotlight.top .content {
			/*border-bottom-width: 0.35em;*/
			top: 0;
		}

		.spotlight.bottom .content {
			/*border-top-width: 0.35em;*/
			bottom: 0;
		}

		.spotlight.left .content, .spotlight.right .content {
			padding: 6em max(3em, calc((100% - 3000px) / 2));
			top: 0;
			width: 100%;
		}

		.spotlight.left .content {
			border-right-width: 0.35em;
			left: 0;
		}

		.spotlight.right .content {
			border-left-width: 0.35em;
			right: 0;
		}

		.spotlight.style1 .content {
			border-color: #e44c65;
			border: 0 !important; 
			background: rgb(25, 29, 41);
		}
			.spotlight.style1 .content h2 {
				background-image: linear-gradient(to right, var(--headline-color-typeC), var(--text-color-typeA));
			}
			.spotlight.style1 .button {
				margin: 2em 0 4em 0;
				font-weight: 300;
			}

		.spotlight.style2 .content {
			/*border-color: #5480f1;*/
			border: 0 !important;
			background: rgb(33 38 51 / 90%);
		}
			.spotlight.style2 .content h2 {
				background-image: linear-gradient(to right, var(--headline-color-typeA), var(--text-color-typeA));
			}

		.spotlight.style3 .content {
			/*border-color: #39c088;*/
			border: 0 !important;
			background: rgb(25, 29, 41, 0.9);
		}
			.spotlight.style3 .content h2 {
				background-image: linear-gradient(to right, var(--headline-color-typeB), var(--text-color-typeB));
			}

		.spotlight.style4 .content {
			/*border-color: #39c088;*/
			border: 0 !important;
			background: rgb(33 38 51 / 90%);
		}
			.spotlight.style4 .content h2 {
				background-image: linear-gradient(to right, var(--headline-color-typeC), var(--text-color-typeC));
			}

		.spotlight.inactive .content {
			opacity: 0;
		}

		.zmf_mobpara {
			transform: translate(0,0) scale(1);
			transition: transform 2s ease, opacity 3s ease, filter 2s ease;
			filter: none;
			opacity: 1;
		}
		.zmf_mobpara.hoverScale {
			transition: transform .2s ease;
		}
		.zmf_mobpara.zmf_ueber_mich {
			transition: all 1.5s ease;
		}

		.is-preload .zmf_mobpara.inactive { /*Fixes scroll jump after reload*/
			transform: translate(0,0);
			opacity: 0;
		}
		.zmf_mobpara.inactive {
			transform: translate(0,10em);
			opacity: 0;
		}

		.is-preload .zmf_mobpara.scale.inactive {
			transform: scale(1);
			opacity: 0;
		}
		.zmf_mobpara.scale.inactive {
			transform: scale(0.5);
			opacity: 0;
		}

		.is-preload .zmf_spotmobenhance.zmf_mobpara.inactive {
			transform: translate(0,0);
			opacity: 0;
		}
		.zmf_spotmobenhance.zmf_mobpara.inactive {
			transform: translate(0,5em);
			opacity: 0;
		}

		.landing .zmf_mobpara.accordion {
			transform: none;
			opacity: 1;
		}

		.detailpage .zmf_mobpara.accordion {
			transform: translate(0,0);
			transition: transform 1.5s ease, opacity 2s ease;
			opacity: 1;
		}
		.detailpage .zmf_mobpara.accordion.inactive {
			transform: translate(0,0);
			opacity: 1;
		}

		.spotlight.inactive .goto-next {
			transform: translate(0,1.5em);
			opacity: 0;
		}

		.spotlight.inactive.top .content {
			transform: translate(0,-5em);
		}

		.spotlight.inactive.bottom .content {
			transform: translate(0,5em);
		}

		.spotlight.inactive.left .content {
			transform: translate(0,10em);
			opacity: 0;
		}

		.spotlight.inactive.right .content {
			transform: translate(0,10em);
			opacity: 0;
		}

		.is-preload .zmf_mobpara.zmf_ueber_mich.inactive {
			transform: scale(1);
			filter: none;
			opacity: 0;
		}
		.zmf_mobpara.zmf_ueber_mich.inactive {
			transform: scale(1.1);
			filter: blur(8px);
			opacity: 0;
		}

	.zmf_spotlist {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: min(3.5vw, 200px);
		padding: min(2.5vw, 150px) 0;
		margin-bottom: min(3.5vw, 200px);
	}
	.detailpage .zmf_spotlist {
		margin-bottom: 6em;
	}

	.zmf_spotlist li {
		width: clamp(24em, 40%, 36em);
		list-style-type: none;
		margin: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
		align-content: space-between;
		padding: 1em 2em 1em 2em;
		vertical-align: middle;
		background-color: rgba(40, 45, 57, 1);
		color: var(--text-color-typeA);
		border-radius: 0.75em;
		border-width: 2px;
		border-color: #404040;
		border-style: solid;
	}
		.zmf_spotlist li:hover {
			cursor: pointer;
		}
		.zmf_spotlist .hoverScale.hoverScaleSpecialHover {
			transform: scale(0.96);
		}

		.zmf_spotlist.styleB li {
			background-color: rgb(32, 36, 47, 1);
			color: var(--text-color-typeB);
			border-color: rgb(56,55,54);
		}
		.zmf_spotlist.styleC li {
			color: var(--text-color-typeC);
		}

		.zmf_spotlist .icon.major {
			display: block;
			flex-basis: 100%;
			height: 3em;
			line-height: 4em;
			margin: 0.5em 0 1em 0;
			font-size: 1em;
			text-align: center;
		}
			.zmf_spotlist .icon.major:hover {
				cursor: pointer;
			}

		.zmf_spotlist li .button {
			margin: 20px 0 6px 0;
			border-radius: 40px;
			width: 40px;
			height: 40px;
			line-height: normal;
			display: flex;
			align-items: center;
			justify-content: center;
			justify-self: center;
			box-shadow: inset 0 0 0 1px var(--text-color-typeA);
			color: var(--text-color-typeA) !important;
			font-size: 20px;
			font-weight: 300;
			padding: 0;
			transition: all 0.5s cubic-bezier(.3,.95,.7,1.25);
		}
			.style3 .zmf_spotlist li .button {
				box-shadow: inset 0 0 0 1px var(--text-color-typeB);
				color: var(--text-color-typeB) !important;
			}
			.style4 .zmf_spotlist li .button {
				box-shadow: inset 0 0 0 1px var(--text-color-typeC);
				color: var(--text-color-typeC) !important;
			}
			.zmf_spotlist li .button::after {
				content: 'Details ➜';
				font-size: 14px;
				color: #212121 !important;
				position: inherit;
				transition: all 0.5s cubic-bezier(.3,.95,.7,1);
				transition-delay: 0.3s;
				font-weight: 600;
				opacity: 0;
				width: 0;
				overflow: hidden;
				transform: scale(0.1);
				word-spacing: 0.3em;
			}

		.zmf_spotlist li.zmf_hover .button {
			width: 160px;
			font-size: 16px;
			color: #212121 !important;
			background-image: linear-gradient(to right, var(--headline-color-typeA), var(--text-color-typeA));
		}
			.style3 .zmf_spotlist li.zmf_hover .button  {
				background-image: linear-gradient(to right, var(--headline-color-typeB), var(--text-color-typeB));
			}
			.style4 .zmf_spotlist li.zmf_hover .button  {
				background-image: linear-gradient(to right, var(--headline-color-typeC), var(--text-color-typeC));
			}
			.zmf_spotlist li.zmf_hover .button::after {
				opacity: 1;
				width: auto;
				overflow: visible;
				transform: scale(1);
			}

	.zmf_spotlist li p {
		font-size: 0.885em;
		margin: 0;
		line-height: 1.5em;
		flex-basis: 100%;
		font-weight: 700;
		text-transform: uppercase;
		background-image: linear-gradient(to right, var(--headline-color-typeA), var(--text-color-typeA));
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
		text-wrap: balance;
	}
		.style3 .zmf_spotlist li p {
			background-image: linear-gradient(to right, var(--headline-color-typeB), var(--text-color-typeB));
		}
		.style4 .zmf_spotlist li p {
			background-image: linear-gradient(to right, var(--headline-color-typeC), var(--text-color-typeC));
		}

	.zmf_spotmobenhance {
		font-size: 2.25em;
		margin-top: 2em;
		line-height: 1.75em;
	}

	.zmf_spotlistcard {
		flex-basis: 100%;
		font-size: 0.815em;
		padding: 2em 0em 0.5em 0em;
		text-align: justify;
		hyphens: auto;
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		hyphenate-limit-chars: 8 4 4;
		font-weight: 300;
	}

	.zmf_spotlistdetail {
		display: none;
	}
	.zmf_spotlistdetail_pop {
		text-align: justify;
		font-weight: 200;
	}
		#zmf_spotlistpopover header {
			position: sticky;
			top: 0px;
			background: rgb(43 47 65);
			/*background-image: linear-gradient(rgba(3, 13, 61, 0.8) 30%, rgb(24 39 79)), url(/images/background.jpg);*/
			z-index: 10;
			flex-shrink: 0;
			align-self: stretch;
			background-repeat: no-repeat;
			background-position: center;
		}
		#zmf_spotlistpopover header.zmf_spotHeader {
			display: grid;
		}
		.zmf_spotlistdetail_pop section {
			padding: max(2.5em, 7.5%) max(2.5em, 7.5%);
			color: var(--text-color-popTypeA);
			position: relative;
			line-height: 1.8;
		}
			.detailpage .wrapper .container,
			.detailpage .zmf_spotlistdetail_pop section {
				padding: 72px max(max(2.5em, 7.5%), calc((100% - 3000px) / 2));
			}

			.detailpage .zmf_spotlistdetail_pop .section1,
			.zmf_spotlistdetail_pop .section1 {
				padding-top: 48px;
				background: #212633;
				text-align-last: center;
				/*background: linear-gradient(340deg, #282e3f, #212633);*/
			}
				.zmf_spotlistdetail_pop .section1 .centergrid {
					display: grid;
					justify-items: center;
					gap: 1.5em 0;
					margin-bottom: 1.5em;
				}

			.zmf_spotlistdetail_pop .section2 {
				background: rgb(25, 29, 41);
				/*background: linear-gradient(340deg, rgb(33 38 53), rgb(25, 29, 41));*/
			}
			.zmf_spotlistdetail_pop .section3 {
				/*background: #053041;*/
				background: linear-gradient(340deg, #04222f, #053041);
				color: var(--text-color-popTypeB);
				text-align-last: center;
			}
			.zmf_spotlistdetail_pop .section4 {
				background: rgb(25, 29, 41);
				/*background: linear-gradient(340deg, rgb(25, 29, 41), rgb(33 38 53));*/
			}
			.zmf_spotlistdetail_pop .section5 {
				background: #212633;
				text-align-last: center;
				/*background: linear-gradient(340deg, #282e3f, #212633);*/
			}

			.zmf_spotlistdetail_pop .section1 b {
				display: block;
				width: 90%;
				text-align-last: center;
				font-size: 1.2em;
				padding-top: 1em;
			}
			.zmf_spotlistdetail_pop .section1 img {
				margin: 2em 0 2em 0;
				width: clamp(40%, 60svh, 75%);
				text-align: center;
				border-radius: 2em;
				display: block;
				opacity: 0.85;
			}

	.zmf_spotlistdetail_pop h1 {
		text-wrap: balance;
	}

	.zmf_spotlistdetail_pop h3 {
		text-align: center;
		text-wrap: pretty;
		font-weight: 500;
		font-size: 3em;
		line-height: 1;
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
		text-transform: uppercase;
	}
		.zmf_spotlistdetail_pop .section2 h3 {
			background-image: linear-gradient(to right, #e5d746, var(--text-color-popTypeA));
		}
		.zmf_spotlistdetail_pop .section4 h3 {
			background-image: linear-gradient(to right, #00ff1c 10%, var(--text-color-popTypeA));
			letter-spacing: 10px;
		}

		.detailpage .zmf_spotlistdetail_pop h3,
		.detailpage .zmf_spotlistdetail_pop h4 {
			margin: 0 0 2em 0;
		}

	.zmf_spotlistdetail_pop h4 {
		text-align: center;
		font-weight: 400;
		font-size: 2em;
		line-height: 1.5;
		padding-bottom: 0.5em;
		text-wrap: pretty;
		hyphens: none;
		-ms-hyphens: none;
		-moz-hyphens: none;
	}

	.zmf_spotlistdetail_pop ul {
		list-style: none;
		padding: 0;
	}
	.zmf_spotlistdetail_pop li {
		padding: 1em 4px;
		text-align: left;
		border: #666666;
		border-width: 0px 0 1px 0;
		border-style: solid;
		display: flex;
		flex-wrap: wrap;
		line-height: 1.2;
	}
	
	.zmf_spotlistdetail_pop .icon.major.alt {
		height: auto;
		margin: 0;
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.zmf_spotlistdetail_pop li .zmf_project_header {
		width: 82%;
	}

	.zmf_spotlistdetail_pop li .zmf_project_header > p {
		width: fit-content;
		margin: 0;
		align-content: center;
		text-align: left;
		font-weight: 600;
		line-height: 1.4;
		cursor: pointer;
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
	}
		.zmf_spotlistdetail_pop .section2 li .zmf_project_header > p {
			background-image: linear-gradient(to right, #e4d859, var(--text-color-popTypeA) var(--gradient-percent));
		}
		.zmf_spotlistdetail_pop .section4 li .zmf_project_header > p {
			background-image: linear-gradient(to right, #47f45a, var(--text-color-popTypeA) var(--gradient-percent));
		}
		

	.zmf_spotlistdetail_pop li.open .zmf_project_header > p {
		animation: test-anim 0.5s ease forwards;
	}
	.zmf_spotlistdetail_pop li.closed .zmf_project_header > p {
		animation: test-animback 0.5s ease forwards;
	}

	@property --gradient-percent {
		syntax: '<percentage>';
		inherits: false;
		initial-value: 0%;
	}

	@keyframes test-anim {
		0% {
			--gradient-percent: 0%;
		}
		100% {
			--gradient-percent: 75%;
		}
	}

	@keyframes test-animback {
		0% {
			--gradient-percent: 75%;
		}
		100% {
			--gradient-percent: 0%;
		}
	}

	.zmf_spotlistdetail_pop li .zmf_project {
		display: inherit;
		justify-content: right;
		align-items: center;
		box-shadow: none;
		height: inherit;
		width: 18%;
		padding-right: max(3%, 24px);
		cursor: pointer;
	}
		.zmf_spotlistdetail_pop .zmf_projecttoggle {
			display: block;
			width: 24px;
			line-height: inherit;
			cursor: pointer;
			transition: all 0.5s ease;
			--project-toggle-color: var(--gradient-color);
		}

		.zmf_spotlistdetail_pop .open .zmf_projecttoggle {
			transform: rotate(180deg);
			z-index: 1;
		}

		.zmf_spotlistdetail_pop .section2 .closed .zmf_projecttoggle {
			animation: test-color-back 0.5s ease forwards;
		}
		.zmf_spotlistdetail_pop .section4 .closed .zmf_projecttoggle {
			animation: test-color2-back 0.5s ease forwards;
		}
		.zmf_spotlistdetail_pop .section2 .open .zmf_projecttoggle {
			animation: test-color 0.5s ease forwards;
		}
		.zmf_spotlistdetail_pop .section4 .open .zmf_projecttoggle {
			animation: test-color2 0.5s ease forwards;
		}

		@property --gradient-color {
			syntax: '<color>';
			inherits: false;
			initial-value: #666666;
		}

		@keyframes test-color {
			0% {
				--gradient-color: #666666;
			}
			100% {
				--gradient-color: #e4d859CC;
			}
		}
		@keyframes test-color-back {
			0% {
				--gradient-color: #e4d859CC;
			}
			100% {
				--gradient-color: #666666;
			}
		}

		@keyframes test-color2 {
			0% {
				--gradient-color: #666666;
			}
			100% {
				--gradient-color: #47f45aBB;
			}
		}
		@keyframes test-color2-back {
			0% {
				--gradient-color: #47f45aBB;
			}
			100% {
				--gradient-color: #666666;
			}
		}

	.zmf_spotlistdetail_pop li .zmf_project_detail {
		width: 100%;
		padding: 0;
		height: 0px;
		display: block;
		overflow-y: hidden;
		transition: all 0.5s ease;
	}

	.zmf_spotlistdetail_pop li .zmf_project_detail p {
		padding: 1em 0 0 0;
		height: auto;
		width: 98%;
		text-align: justify;
		line-height: 1.5;
	}

	.zmf_spotlistdetail_pop .section5 .zmf_icon_area {
		padding: 1em 2em 3em 2em;
		line-height: 1.5;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
		text-align: center;
		font-weight: 400;
	}
	.zmf_spotlistdetail_pop .section5 .zmf_ban_icon {
		color: #951111;
    	font-size: 1.5em;
		position: relative;
		padding: 1em 0 0.25em 0;
	}
	.zmf_spotlistdetail_pop .section5 .zmf_check_icon {
		color: #67a900;
    	font-size: 1.5em;
		position: relative;
		padding: 1em 0 0.25em 0;
	}

	.zmf_closing .button.primary,
	.zmf_spotlistdetail_pop .section5 .button.primary {
		color: var(--text-color-popTypeA);
		background-color: transparent;
		box-shadow: inset 0 0 0 1px var(--button-border-color-popTypeA);
    	margin: 2em 0 0 0;
	}
	.spotlight.style1 .button:active,
	.spotlight.style1 .button:hover,
	.zmf_closing .button.primary:active,
	.zmf_closing .button.primary:hover,
	.zmf_spotlistdetail_pop .section5 .button.primary:active,
	.zmf_spotlistdetail_pop .section5 .button.primary:hover {
		box-shadow: inset 0 0 0 1px var(--button-border-color-popTypeA);
		color: #212121;
		font-weight: 500;
		background-color: var(--button-border-color-popTypeA);
	}

	.landing .zmf_closing .button.primary {
		display: none;
		margin: 0;
	}

/* Popover in Spotlist */

	.zmf_popupoverlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 0%;
		background-color: rgba(0, 0, 0, 0.3);
		backdrop-filter: blur(8px);
		z-index: 999;
		justify-content: center;
		align-items: center;
		display: flex;
		opacity: 0;
		transition: opacity 0.4s cubic-bezier(0.4, 0.0, 0.2, 1) 0.15s, height 0.01s cubic-bezier(0.4, 0.0, 0.2, 1) 0.54s;
	}

	#body:has(nav ul li:hover > ul li) .zmf_popupoverlay {
		transition: opacity 0.4s cubic-bezier(0.4, 0.0, 0.2, 1);
		height: 100%;
		opacity: 1;
	}

	#body {
		transition: overflow 0.01s allow-discrete 0.2s;
	}

	#body.zmf_noscroll,
	#body.navPanel-visible,
	#body:has(nav ul li:hover > ul li) {
		transition: none;
		overflow: hidden;
	}

	#zmf_spotlistpopover {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 0;
		height: 0;
		background: rgb(43 47 65);
		border-radius: 20px;
		box-shadow: 0 0 24px rgb(0, 0, 0);
		overflow: hidden;
		opacity: 0;
		pointer-events: none;
		z-index: 1000;
		display: none;
		align-items: end;
		justify-content: center;
		-ms-overflow-style: none;
    	scrollbar-width: none;
		flex-flow: column;
	}

	#zmf_slpopHeadLine {
		display: flex;
		width: calc(100% - 48px);
    	justify-self: center;
		justify-content: center;
	}

	#zmf_slpopHead {
		padding: 24px 16px 16px 48px;
		position: sticky;
		top: 0px;
		color: var(--text-color-popHeader);
		margin: 0;
		text-align: center;
		font-weight: 400;
		font-size: 1em;
		width: 90%;
		cursor: unset;
		touch-action: none;
		text-wrap: balance;
	}

	#zmf_handle {
		display: none;
	}

	#zmf_spotlistpopover .zmf_slpopcontent {
		width: 100%;
		opacity: 1;
		text-align: center;
		color: #212121;
		line-height: 1.25;
		overflow: scroll;
		flex-shrink: 1;
		flex-grow: 1;
		scrollbar-width: none;
	}

	.zmf_slpopclose {
		color: var(--text-color-popHeader);
		border: none;
		border-radius: 100%;
		font-size: 3.5em;
		font-weight: 100;
		cursor: pointer;
		display: flex;
		z-index: 10;
		padding: 20px 0;
		align-self: center;
    	margin-top: -10px;
		height: 64px;
	}

	#zmf_spotlistpopover.open .zmf_slpopcontent {
		opacity: 1;
	}

	#zmf_spotlistpopover.open {
		pointer-events: all;
		overscroll-behavior-y: contain;
	}

	/*body.is-touch .spotlight {
		background-attachment: scroll;
	}*/

/* Wrapper */

	.wrapper .container {
		text-align: center;
		padding: 6em 0 4em 0;
		position: relative;
		min-height: calc(100svh - 420px);
	}
		.wrapper .container header {
			display: grid;
			justify-items: center;
		}

		.wrapper.style1 {
			position: relative;
			background: transparent;
			color: var(--text-color-typeB);
		}

		.landing .wrapper.style1 {
			padding-bottom: 4.5em;
		}
		.landing .wrapper.style1 a.jumpdetail {
			display: none;
		}
		.detailpage .wrapper.style1 a.scrolly {
			display: none;
		}

		.wrapper.style2 {
			position: relative;
			background: linear-gradient(340deg, #0b1229, #434353); /*rgb(49 48 57);*/
			color: var(--text-color-typeB);
		}

			.wrapper.style2 input[type="text"]:focus,
			.wrapper.style2 input[type="password"]:focus,
			.wrapper.style2 input[type="email"]:focus,
			.wrapper.style2 select:focus,
			.wrapper.style2 textarea:focus {
				border-color: rgba(255, 255, 255, 0.5);
			}

			.wrapper.style2 input[type="submit"]:hover, .wrapper.style2 input[type="submit"]:active,
			.wrapper.style2 input[type="reset"]:hover,
			.wrapper.style2 input[type="reset"]:active,
			.wrapper.style2 input[type="button"]:hover,
			.wrapper.style2 input[type="button"]:active,
			.wrapper.style2 .button:hover,
			.wrapper.style2 .button:active {
				background-color: rgba(255, 255, 255, 0.075) !important;
				box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.5) !important;
				color: #ffffff !important;
			}

			.wrapper.style2 input[type="submit"]:active,
			.wrapper.style2 input[type="reset"]:active,
			.wrapper.style2 input[type="button"]:active,
			.wrapper.style2 .button:active {
				background-color: rgba(255, 255, 255, 0.25) !important;
			}

			.wrapper.style2 input[type="submit"].primary,
			.wrapper.style2 input[type="reset"].primary,
			.wrapper.style2 input[type="button"].primary,
			.wrapper.style2 .button.primary {
				background-color: #ffffff;
				color: #e44c65 !important;
			}

				.wrapper.style2 input[type="submit"].primary:hover, .wrapper.style2 input[type="submit"].primary:active,
				.wrapper.style2 input[type="reset"].primary:hover,
				.wrapper.style2 input[type="reset"].primary:active,
				.wrapper.style2 input[type="button"].primary:hover,
				.wrapper.style2 input[type="button"].primary:active,
				.wrapper.style2 .button.primary:hover,
				.wrapper.style2 .button.primary:active {
					background-color: rgba(255, 255, 255, 0.075) !important;
					box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.5) !important;
					color: #ffffff !important;
				}

				.wrapper.style2 input[type="submit"].primary:active,
				.wrapper.style2 input[type="reset"].primary:active,
				.wrapper.style2 input[type="button"].primary:active,
				.wrapper.style2 .button.primary:active {
					background-color: rgba(255, 255, 255, 0.25) !important;
				}

		.wrapper.fade-down > .container {
			transform: translate(0,0);
			transition: transform 1s ease, opacity 1s ease;
			opacity: 1;
		}

		.wrapper.fade-down.inactive > .container {
			transform: translate(0,-1em);
			opacity: 0;
		}

		.wrapper.fade-up > .container {
			transform: translate(0,0);
			transition: transform 1s ease, opacity 1s ease;
			opacity: 1;
		}

		.wrapper.fade-up.inactive > .container {
			transform: translate(0,1em);
			opacity: 0;
		}

		.wrapper.fade > .container {
			transition: opacity 1s ease;
			opacity: 1;
		}

		.wrapper.fade.inactive > .container {
			opacity: 0;
		}


		.wrapper .zmf_counter_wrap {
			padding: 0 0 24px 0;
			transition-property: opacity, transform;
			transition-duration: 1s, 3s;
			transition-timing-function: ease, ease;
			transition-delay: inherit;
			transform: scale(1);
			opacity: 1;
			color: #e7b67d;
		}
		.wrapper .zmf_counter_wrap.inactive {
			transform: scale(0.6);
			opacity: 0;
		}
		.wrapper .zmf_counter {
			font-weight: 200;
			font-size: 100px;
			line-height: 1;
			background: linear-gradient(340deg, #e19b48, #b8b9b2);
			-webkit-background-clip: text;
			background-clip: text;
			-webkit-text-fill-color: transparent;
		}
	
	.wrapper .container section p {
		padding: 0 5%;
		font-size: 14px;
		line-height: 1.8;
	}
	.wrapper .container section p a {
		color: inherit;
		text-decoration-line: underline;
		text-decoration-style: dotted;
	}

	.wrapper.style1 .container section:before {
		background: linear-gradient(to right, #353536, var(--text-color-typeA));
		content: '';
		display: inline-block;
		height: 1px;
		width: 95%;
		border-radius: 1em;
		margin: 72px 0;
	}

	.wrapper.style1 .container .mini {
		font-size: 14px;
		font-weight: 300;
		text-transform: uppercase;
	}
	.wrapper.style1 .container h2 {
		width: fit-content;
		font-size: 3em;
		font-weight: 300;
		background: linear-gradient(to right, var(--headline-color-typeB), var(--text-color-typeA));
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
	}
	.wrapper.style1 .container h2 + p {
		font-size: inherit;
		text-align: justify;
		text-align-last: center;
		padding: 0 1em;
		hyphens: auto;
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		hyphenate-limit-chars: 8 4 4;
	}
	.wrapper.style1 .container h3 {
		font-size: 28px;
		font-weight: 400;
		margin-bottom: 0px;
		background: linear-gradient(to right, var(--headline-color-typeB), var(--text-color-typeB));
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
		text-transform: uppercase;
	}

	.wrapper.style1 .zmf_closing:before {
		background: linear-gradient(to right, #353536, var(--text-color-typeA));
		content: '';
		display: inline-block;
		height: 1px;
		width: 95%;
		border-radius: 1em;
		margin: 72px 0;
	}
	.wrapper.style1 .zmf_closing {
		position: relative;
		text-align: justify;
		text-align-last: center;
		hyphens: auto;
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		hyphenate-limit-chars: 8 4 4;
	}
	.wrapper.style1 .zmf_closing p {
		padding: 0 1em;
	}

	.detailpage .wrapper .container h2 {
		padding-top: 1em;
	}

	.wrapper.style2 .icon.major.alt {
		margin: 48px 0 0 0;
		height: auto;
		line-height: 1;
		font-size: 28px;
		cursor: pointer;
	}
	.wrapper.style2 .icon.major.alt:before {
		background-image: linear-gradient(135deg, var(--headline-color-typeB), var(--headline-color-typeA));;
	}
	.wrapper.style2 .container h2 {
		width: fit-content;
		font-size: 3em;
		font-weight: 300;
		background: linear-gradient(to right, var(--headline-color-typeA), var(--text-color-typeB));
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
	}
	.wrapper.style2 .container h2 + p {
		font-size: 18px;
		font-weight: 200;
		line-height: 1.8;
		padding: 0 0.5em;
	}
	.wrapper.style2 .container h3 {
		font-size: 22px;
		font-weight: 400;
		margin-bottom: 0px;
		background: linear-gradient(to right, var(--headline-color-typeA), var(--text-color-typeB));
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
		text-transform: uppercase;
	}
	.wrapper.style2 .container h3 + p {
		font-size: 1em;
		font-weight: 200;
		line-height: 1.8;
		margin: 0 0 48px 0;
		color: var(--text-color-typeB);
	}

	.wrapper.style2 .container a div {
		transition: all 0.5s ease;
	}
	.wrapper.style2 .container a:hover div {
		transform: scale(1.15);
	}


/* Header */

	#header {
		background: rgba(39, 40, 51, 0.965);
		box-shadow: 0 0 0.25em 0 rgba(0, 0, 0, 0.25);
		cursor: default;
		height: 3.5em;
		left: 0;
		line-height: 3.5em;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 100;
	}

		#header h1 {
			height: inherit;
			left: 1.25em;
			line-height: inherit;
			margin: 0;
			position: absolute;
			top: 0;
		}

		#body.navPanel-visible #titleBar nav {
			display: none;
			opacity: 0;
		}

		#titleBar nav {
			display: block;
			position: absolute;
			right: 6em;
    		top: 14px;
			opacity: 1;
			transition: opacity 0.5s ease, display 3600s allow-discrete; /*respect display in transition*/
		}
		@media screen and (max-height: 499px) and (min-width: 981px) {
			#titleBar nav {
				display: none;
				opacity: 0;
			}
		}

			#titleBar nav ul {
				margin: 0;
			}

				#titleBar nav ul li {
					display: inline-block;
					margin-left: 1em;
				}

					#titleBar nav ul li.noTitleBar {
						display: none;
					}
					.shortTitleBar {
						display: none;
					}
					#titleBar nav ul li shortTitleBar {
						display: inline-block;
					}

					#titleBar nav ul li a {
						border: 0;
						color: inherit;
						display: inline-block;
						height: inherit;
						line-height: inherit;
						outline: 0;
						color: #DDDDDD;
						font-weight: 300;
						transition: all 0.5s ease;
					}

					#titleBar nav ul li > ul,
					#titleBar nav ul li > ul li > ul {
						position: absolute;
    					top: 54px;
    					right: min(5.8em, calc(5.8em + 100dvw - 1032px));
						left: max(0px, calc(1032px - 100dvw));
						height: 0;
						overflow: hidden;
						opacity: 0;
						transition: opacity 0.5s ease, overflow 1.9s allow-discrete;
						z-index: 200;
					}
					#titleBar nav ul li > ul li > ul {
						right: 18.9em;
						left: inherit;
						top: 0;
						&:nth-child(1) {
							top: 1em;
						}
					}
					#titleBar nav ul li > ul li:nth-child(2) > ul {
						top: calc(3em - 4px);
					}
					#titleBar nav ul li > ul li:nth-child(3) > ul {
						top: calc(6em - 8px);
					}
					.landing #titleBar nav ul li > ul li > ul {
						right: 18.7em;
					}

					#titleBar nav ul li > ul:before,
					#titleBar nav ul li > ul li > ul:before {
						transform: rotate(45deg);
						border-width: 1px;
						border-color: #737981;
						border-style: solid;
						background-image: linear-gradient(45deg, rgb(89 89 105), rgb(50 53 63));
						content: '';
						display: block;
						height: 2em;
						position: absolute;
						right: max(0.9em, calc(0.9em + 1032px - 100dvw));
						top: -0.6em;
						width: 2em;
						z-index: -1;
					}
					#titleBar nav ul li > ul li > ul:before {
						right: -1.7em;
    					top: 0.45em;
					}
						#titleBar nav ul li:hover > ul,
						#titleBar nav ul li:hover > ul li:hover > ul {
							transition: opacity 0.5s ease, overflow 0.01s allow-discrete;
							opacity: 1;
							overflow: visible;
						}

						#titleBar nav ul li:hover > a:not(.onsite),
						#titleBar nav ul li:hover > ul li:hover > a:not(.onsite) {
							font-weight: 600;
						}
						#titleBar nav ul li:hover > a.onsite,
						#titleBar nav ul li:hover > ul li:hover > a.onsite {
							font-weight: 800;
						}
						
						#titleBar nav ul li > ul li,
						#titleBar nav ul li > ul li > ul li {
							width: 100%;
							border-top-width: 1px;
							border-color: #737981;
							border-style: solid;
							background-image: linear-gradient(to bottom, rgb(89 89 105), rgb(50 53 63));
							&:is(:last-child) {
								border-bottom-width: 1px;
							}
						}

							#titleBar nav ul li > ul li a,
							#titleBar nav ul li > ul li > ul li a {
								padding: 0 1em;
								width: 18.5em;
								height: 3em;
    							align-content: center;
								font-size: 0.9em;
    							font-weight: 300;
							}
							#titleBar nav ul li > ul li > ul li a {
								min-width: max-content;
    							width: 30em;
							}
							#titleBar nav ul li > ul li > ul li a .icon {
								font-size: 8px;
								color: #DDDDDD;
								padding-right: 5em;
								transition: all 0.5s ease;
								transform: scale(1.02);
							}
								#titleBar nav ul li:hover > ul li:hover > a .icon {
									transform: scale(1.12);
								}

		#titleBar nav ul li > a.onsite,
		#titleBar nav ul li > ul li > ul li a.onsite .icon,
		#titleBar nav ul li > ul li > a.onsite {
			font-weight: 700;
			background-image: linear-gradient(to right, var(--headline-color-typeA), var(--text-color-typeA));
			-webkit-background-clip: text;
			background-clip: text;
			-webkit-text-fill-color: transparent;
		}
			#titleBar nav ul li > a.onsite.style3,
			#titleBar nav ul li > ul li > ul li a.onsite.style3 .icon,
			#titleBar nav ul li > ul li > a.onsite.style3 {
				background-image: linear-gradient(to right, var(--headline-color-typeB), var(--text-color-typeB));
			}
			#titleBar nav ul li > a.onsite.style4,
			#titleBar nav ul li > ul li > ul li a.onsite.style4 .icon,
			#titleBar nav ul li > ul li > a.onsite.style4 {
				background-image: linear-gradient(to right, var(--headline-color-typeC), var(--text-color-typeC));
			}

	body.landing #page-wrapper {
		padding-top: 0;
	}

	/*body.landing #header {
		background: rgba(39, 40, 51, 0.965);
		box-shadow: 0 0 0.25em 0 rgba(0, 0, 0, 0.25);
		position: fixed;
	}*/

/* Dropotron */

/*	.dropotron {
		background: rgba(39, 40, 51, 0.965);
		border-radius: 4px;
		box-shadow: 0 0.075em 0.35em 0 rgba(0, 0, 0, 0.125);
		list-style: none;
		margin-top: calc(-0.25em + 1px);
		min-width: 12em;
		padding: 0.25em 0;
	}

		.dropotron > li {
			border-top: solid 1px rgba(255, 255, 255, 0.035);
			padding: 0;
		}

			.dropotron > li a, .dropotron > li span {
				border: 0;
				color: rgba(255, 255, 255, 0.75);
				display: block;
				padding: 0.1em 1em;
				text-decoration: none;
			}

			.dropotron > li:first-child {
				border-top: 0;
			}

			.dropotron > li.active > a, .dropotron > li.active > span {
				color: #e44c65;
			}

		.dropotron.level-0 {
			font-size: 0.8em;
			margin-top: 1em;
		}

			.dropotron.level-0:before {
				transform: rotate(45deg);
				background: #272833;
				content: '';
				display: block;
				height: 1em;
				position: absolute;
				right: 1.5em;
				top: -0.5em;
				width: 1em;
			}

	body.landing .dropotron.level-0 {
		margin-top: 0;
	}*/

/* Banner */

	#banner {
		background-attachment: fixed;
		background-position: center center;
		background-size: cover;
		min-height: 100vh;
		min-height: 100svh;
		position: relative;
		text-align: center;
	}

		#banner:after {
			background-color: rgba(12, 15, 22, 0.85);
			content: '';
			display: block;
			height: 100%;
			left: 0;
			position: absolute;
			top: 0;
			width: 100%;
		}

		#banner .content {
			padding: 6em 6em 2em 6em;
			position: relative;
			vertical-align: middle;
			z-index: 1;
			min-height: 100vh;
			min-height: 100svh;
			display: flex;
			flex-wrap: wrap;
			text-align: center;
			justify-content: center;
			align-content: space-between;
			vertical-align: top;
			font-family: 'Comfortaa', 'Nunito Sans', sans-serif;
		}
			#banner .content header {
				display: flex;
				flex-wrap: wrap;
				align-items: center;
				justify-content: center;
				flex-basis: 100%;
				gap: 3em;
				flex-direction: row-reverse;
				padding-top: calc(35svh - 280px);
				padding-bottom: 2em;
			}

				#banner .content header div {
					flex: 0 1 32em;
				}

				#banner .content header h2 {
					font-size: 3.2em;
					font-weight: 500;
					color: var(--banner-color);
					background: linear-gradient(340deg, #ed9934, #cdcdc9);
					-webkit-background-clip: text;
					background-clip: text;
					-webkit-text-fill-color: transparent;
					margin: 0em 0 0 0;
					opacity: 0;
					animation: fly-in-x1 1.2s ease-out 1s forwards;
				}

				@keyframes fly-in-x1 {
					0% {
						transform: translateX(+30px);
						opacity: 0;
					}
					100% {
						transform: translateX(0px);
						opacity: 1;
					}
				}

				#banner .content header p {
					margin: 0.5em 0 0.5em 0;
					top: 0;
					color: var(--banner-color);
					line-height: 1.5;
					transform: translateX(-30px);
					opacity: 0;
					animation: fly-in-x2 1.2s ease-out 1s forwards;
					font-size: 0.9em;
					padding: 0;
				}

				@keyframes fly-in-x2 {
					0% {
						transform: translateX(-30px);
						opacity: 0;
					}
					100% {
						transform: translateX(0px);
						opacity: 1;
					}
				}

			#banner .content .image {
				border-radius: 100%;
				display: grid;
				align-content: center;
				vertical-align: middle;
				justify-items: center;
				height: 13em;
				width: 13em;
				margin: 0;
				transform: scale(1.3);
				filter: blur(8px);
				opacity: 0;
				border-style: solid;
				border-width: 2px;
				border-color: var(--banner-color);
				animation: fly-in-scale 1.2s ease-out 1s forwards;
				flex: 0 0 auto;
			}

				#banner .content .image img {
					border-radius: 100%;
					width: 86%;
					height: auto;
				}

			@keyframes fly-in-scale {
				0% {
					transform: scale(1.3);
					filter: blur(8px);
					opacity: 0;
				}
				100% {
					transform: scale(1);
					filter: none;
					opacity: 1;
				}
			}

			#banner .content nav {
				font-family: 'Nunito Sans', sans-serif;
				font-size: 0.8em;
				display: inline-block;
				vertical-align: middle;
				height: auto;
				width: 95%;
				border-color: rgba(255, 255, 255, 0.5);
				border-width: 1px;
				border-style: solid;
				border-radius: 24px;
				margin: 0 0 1em 0;
				backdrop-filter: blur(4px);
				background-image: linear-gradient(to bottom, rgb(167 167 167 / 20%), rgb(109 109 109 / 10%));
				transform: translateY(+30px);
				opacity: 0;
				animation: fly-in-y 1.2s ease-in-out 2s forwards;
			}
				#banner .content nav li {
					list-style: none;
					transform: translateY(+30px);
					opacity: 0;
				}
					#banner .content nav li:nth-child(1) {
						animation: fly-in-y 1.2s ease-in-out 2.3s forwards;
					}
					#banner .content nav li:nth-child(2) {
						animation: fly-in-y 1.2s ease-in-out 2.45s forwards;
					}
					#banner .content nav li:nth-child(3) {
						animation: fly-in-y 1.2s ease-in-out 2.6s forwards;
					}

				#banner .content nav li a {
					color: #ffc47e;
					display: block;
					position: relative;
					margin: 1.5em 5%;
					border-color: rgba(255, 255, 255, 0.6);
					border-width: 1px;
					border-style: solid;
					border-radius: 8px;
					line-height: 3.5;
					background-color: transparent;
					box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
					transition: all 0.3s ease;
					font-weight: 400;
				}
					#banner .content nav li a:hover {
						transform: scale(1.05);
						background-color: rgba(255, 255, 255, 0.1);
						font-weight: 600;
					}

				@keyframes fly-in-y {
					0% {
						transform: translateY(+30px);
						opacity: 0;
					}
					100% {
						transform: translateY(0px);
						opacity: 1;
					}
				}
		
		#banner .content .bottomflex {
			width: 70%;
			max-width: 40em;
			display: grid;
			justify-items: center;
		}

		#banner .content .contact {
			display: flex;
			justify-content: space-between;
			width: 80%;
		}

		#banner .content .contact a {
			height: 48px;
			width: 48px;
			color: var(--banner-color);
			display: inline-grid;
			text-align: center;
			align-items: center;
			justify-items: center;
			position: relative;
			margin: 0.5em 0.2em;
			border-color: rgba(255, 255, 255, 0.6);
			border-width: 1px;
			border-style: solid;
			border-radius: 48px;
			/*background-color: rgba(255, 255, 255, 0.15);*/
			background-image: linear-gradient(to bottom, rgb(167 167 167 / 20%), rgb(109 109 109 / 10%));
			box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
			top: 30px;
			opacity: 0;
			transition: all 0.3s ease;
		}
			#banner .content .contact a:nth-child(1) {
				animation: fly-in-c 0.6s ease-in-out 3.0s forwards;
			}
			#banner .content .contact a:nth-child(2) {
				animation: fly-in-c 0.6s ease-in-out 3.1s forwards;
			}
			#banner .content .contact a:nth-child(3) {
				animation: fly-in-c 0.6s ease-in-out 3.2s forwards;
			}
			#banner .content .contact a:nth-child(4) {
				animation: fly-in-c 0.6s ease-in-out 3.3s forwards;
			}

			@keyframes fly-in-c {
				0% {
					top: 30px;
					opacity: 0;
				}
				100% {
					top: 0px;
					opacity: 1;
				}
			}

			#banner .content .contact a:hover {
				transform: scale(1.11) translateY(-3px);
				/*background-color: rgba(255, 255, 255, 0.3);*/
			}

		#banner .content .contact a span {
			justify-self: center;
			font-size: 20px;
			position: relative;
			color: rgb(222, 222, 222);
		}

	body.is-touch #banner {
		background-attachment: scroll;
	}

/* Footer */

	#footer {
		position: relative;
		background: rgb(26, 27, 28); /*rgb(7, 37, 73);*/
		padding: 6em 0 3em 0;
		text-align: center;
		border-top:#4e4a5e;
		border-top-width: 1px;
		border-style: solid;
		display: grid;
		justify-items: center;
	}

	#footer ul.icons {
		font-size: 10px;
	}

		#footer .icons .icon.alt {
			text-decoration: none;
		}

			#footer .icons .icon.alt:before {
				-moz-osx-font-smoothing: grayscale;
				-webkit-font-smoothing: antialiased;
				display: inline-block;
				font-style: normal;
				font-variant: normal;
				text-rendering: auto;
				line-height: 1;
				text-transform: none !important;
				font: var(--fa-font-solid);
				font-size: 2.5em;
				-webkit-text-stroke: 1px rgba(255, 255, 255, 0.5);
				text-shadow: none;
				color: transparent;
			}
			#footer .icons .icon.nonalt:before {
				color: rgba(255, 255, 255, 0.5);
			}

		#footer .copyright {
			color: rgba(255, 255, 255, 0.5);
			font-size: 0.8em;
			line-height: 1em;
			margin: 2em 0 0 0;
			padding: 0;
			text-align: center;
		}

			#footer .copyright li {
				border-left: solid 1px rgba(255, 255, 255, 0.3);
				display: inline-block;
				list-style: none;
				margin-left: 1.5em;
				padding-left: 1.5em;
                margin-top: 1em;
			}

				#footer .copyright li:first-child {
					border-left: 0;
					margin-left: 0;
					padding-left: 0;
				}

				#footer .copyright li a {
					color: inherit;
				}
	
	.zmf_footer_img {
		position: relative;
		justify-content: center;
		margin-bottom: 4em;
		width: fit-content;
	}
		.zmf_footer_img img {
			width: 14em;
			opacity: 0.5;
		}

/* Nav */
	
	#header {
		display: none;
	}

	#titleBar {
		backface-visibility: hidden;
		transition: all 0.5s ease;
		display: block;
		height: 60px;
		left: 0;
		position: fixed;
		top: 0px;
		width: 100%;
		z-index: 10002;
		background: rgba(111, 111, 111, 0.2);
		box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
		overscroll-behavior: contain;
		backdrop-filter: blur(32px);
		min-width: 320px;
	}

		#titleBar .title {
			color: #DDDDDD;
			display: block;
			font-weight: 300;
			height: 60px;
			line-height: 60px;
			text-align: left;
			overflow: hidden;
			padding-left: 12px;
			width: max-content;
		}

			#titleBar .title a {
				color: inherit;
				border: 0;
				display: flex;
				flex-wrap: nowrap;
				gap: 12px;
			}

			#titleBar .title img {
				height: 54px; 
				margin-top: 3px;
				opacity: 0.8;
			}

			#titleBar .title p {
				display: grid;
				justify-items: center;
				color: inherit;
				border: 0;
				line-height: 1;
				margin: 0;
				padding: 0;
				font-family: 'Comfortaa', 'Nunito Sans', sans-serif;
				&:first-child {
					padding-top: 11px;
					font-size: 26px;
					font-weight: 400;
				}
				&:last-child {
					font-size: 10px;
					letter-spacing: 2px;
        			padding-top: 2px;
				}
			}

		#titleBar .toggle {
			text-decoration: none;
			height: 60px;
			right: 0;
			position: absolute;
			top: 0;
			width: clamp(60px, 60px - 320px + 100dvw, 70px);
			outline: 0;
			border: 0;
			overflow: hidden;
		}

			#flyingMenu {
				width: 44px;
				height: 40px;
				position: fixed;
				top: 10px;
				right: -48px;
				opacity: 0;
				display: grid;
				justify-self: end;
				align-content: center;
				justify-items: center;
				z-index: 10;
				background: rgb(0 0 0 / 20%);;
				border-radius: 4px;
				transition: 0.5s ease-in-out;
				cursor: pointer;
			}

			#flyingMenu span {
				width: 32px;
				height: 4px;
				position: relative;
				margin: 2.5px 0;
				display: block;
				background: #a7a7a7;
				border-radius: 2px;
			}

			#titleBar .toggle #openMenu span {
				width: 32px;
				height: 4px;
				position: relative;
				top: 14px;
				left: 14px;
				margin: 5px 0;
				display: block;
				background: #DDDDDD;
				border-radius: 2px;
				transition: 0.2s ease-in-out;
				&:nth-child(1){
					transition-delay: 0.75s;
				}
				&:nth-child(2){
					transition-delay: 0.625s;
				}
				&:nth-child(3){
					transition-delay: 0.5s;
				}
			}

			#titleBar .toggle #closeMenu {
				transform: rotate(45deg);
				position: absolute;
				top: -7px;
				left: 9px;
				height: 60px;
				width: 60x;
				
				span {
					position: absolute;
					display: block;
					background: #DDDDDD;
					border-radius: 2px;
					transition: 0.2s ease-in-out;
					&:nth-child(1){
						top: 0px;
						left: 18px;
						height: 0px;
						width: 4px;
						transition-delay: 0s;
					}
					&:nth-child(2){
						top: 18px;
						left: 0px;
						height: 4px;
						width: 0px;
						transition-delay: 0.25s;
					
					}
				}
			}

	#navPanel {
		backface-visibility: hidden;
		transition: all 0.8s ease;
		display: flex;
		flex-wrap: wrap;
		height: 0;
		left: 0;
		overflow-x: hidden;
		overflow-y: hidden;
		scrollbar-width: none;
		position: fixed;
		top: 60px;
		width: 100%;
		z-index: 10001;
		background: rgba(0, 0, 0, 0.2);
		padding: 0em 1.25em;
		overscroll-behavior: contain;
		backdrop-filter: blur(128px);
	}

		#navPanel nav {
			width: 100%;
		}
		#navPanel .menuspan {
			position: relative;
			border: 0;
			color: rgba(255, 255, 255, 0.75);
			display: block;
			height: 48px;
			min-height: 48px;
			text-decoration: none;
			transition: all 0.5s ease;
			cursor: pointer;
		}

		#navPanel .icon {
			font-size: 8px;
			flex-basis: 6em;
			align-content: center;
			color: rgba(255, 255, 255, 0.75);
			padding-right: 1em;
		}

		#navPanel a {
			position: relative;
			display: inline-flex;
			border: 0;
			color: rgba(255, 255, 255, 0.75);
			min-height: 48px;
			line-height: 1.25;
			padding: 12px 0;
			text-decoration: none;
			flex-wrap: wrap;
			align-content: center;
			width: fit-content;
		}

		#navPanel .menuspan.onsite > .icon,
		#navPanel .menuspan.onsite > a {
			font-weight: 700;
			background-image: linear-gradient(to right, var(--headline-color-typeA), var(--text-color-typeA));
			-webkit-background-clip: text;
			background-clip: text;
			-webkit-text-fill-color: transparent;
		}
			#navPanel .menuspan.onsite.style3 > .icon,
			#navPanel .menuspan.onsite.style3 > a {
				background-image: linear-gradient(to right, var(--headline-color-typeB), var(--text-color-typeB));
			}
			#navPanel .menuspan.onsite.style4 > .icon,
			#navPanel .menuspan.onsite.style4 > a {
				background-image: linear-gradient(to right, var(--headline-color-typeC), var(--text-color-typeC));
			}

		#navPanel .zmf_submenuopen {
			position: relative;
			display: inline;
			--project-toggle-color: rgb(175, 175, 175);
			vertical-align: middle;
			margin-left: 1em;
			transition: all 0.5s ease;
		}
			#navPanel .open > .zmf_submenuopen {
				transform: rotate(180deg);
				z-index: 1;
			}

			#navPanel .submenu {
				width: 100%;
				flex-basis: 100%;
			}

			#navPanel .menuspan.depth-0:first-child {
				border-top: 0;
			}

			#navPanel .menuspan.depth-0 {
				color: #ffffff;
				font-weight: 400;
				font-size: 18px;
				border-top: solid 1px rgba(255, 255, 255, 0.05);
				overflow: hidden;
			}
			#navPanel .menuspan.depth-1 {
				color: #ffffff;
				font-weight: 250;
				font-size: 16px;
				padding-left: 2em;
				overflow: hidden;
			}
			#navPanel .menuspan.depth-2 {
				color: #ffffff;
				font-weight: 200;
				font-size: 15px;
				padding-left: 1.5em;
				height: auto;
				display: flex;
				flex-wrap: nowrap;
				align-content: center;
			}
			#navPanel .submenu.depth-1:has(.submenu.depth-2) {
				padding-bottom: 2.33333em;
			}
			#navPanel .menuspan.depth-1:not(:last-child) .menuspan.depth-2:last-child {
				padding-bottom: 3em;
			}

	body.navPanel-visible #titleBar .title {
		overscroll-behavior-block: contain;
	}
	body.navPanel-visible #titleBar .toggle {
		overscroll-behavior-block: contain;
	}

	body.navPanel-visible #navPanel {
		height: calc(100% - 60px);
		overflow-y: scroll;
		padding: 0.75em 1.25em;
	}

	body.navPanel-visible #titleBar .toggle #openMenu span {
		width: 0%;
		&:nth-child(1){
			transition-delay: 0s;
		}
		&:nth-child(2){
			transition-delay: 0.125s;
		}
		&:nth-child(3){
			transition-delay: 0.25s;
		}
	}

	body.navPanel-visible #titleBar .toggle #closeMenu span {
		&:nth-child(1){
			height: 40px;
			width: 4px;
			transition-delay: 0.75s;
		}
		&:nth-child(2){
			height: 4px;
			width: 40px;
			transition-delay: 0.5s;
		}
	}

/* Legal */

	.legal {
		margin: 4em 0 3em 0;
		padding: max(2em, 3.5%) max(15%, calc((100% - 3000px) / 2));
		color: #DDDDDD;
		font-size: inherit;
		hyphens: auto;
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		hyphenate-limit-chars: 8 4 4;
		text-align: justify;
	}
		.legal h1 {
			font-weight: 500;
			font-size: 2.25em;
			text-align: left;
			line-height: 1.25;
		}
		.legal h2 {
			margin: 2em 0 0.5em 0;
			font-weight: 300;
			font-size: 1.75em;
			text-align: left;
		}
		.legal p {
			margin: 0;
			font-size: 1em;
		}
		.legal ul {
			margin: 1em 0 2em 2em;
		}
		.legal li:not(:last-child) {
			padding-bottom: 0.75em;
		}
		.legal a {
			color: inherit;
			border-bottom-color: inherit;
			border-bottom-style: dotted;
			border-bottom-width: 1px;
		}
		.legal b {
			font-weight: 600;
		}

	.legal.sitemap {
		text-align: left;
	}
		.legal.sitemap > ul {
			list-style: upper-roman;
			font-size: 1.35em;
		}
		.legal.sitemap > ul > li:not(:last-child) > ul {
			list-style: upper-alpha;
			font-size: 0.75em;
		}
		.legal.sitemap > ul > li > ul {
			list-style: disc;
			font-size: 0.75em;
		}
		.legal.sitemap > ul ul ul {
			list-style: none;
			font-size: 0.9em;
			margin-left: 0.75em;
			padding-left: 0.75em;
		}
		.legal.sitemap > ul ul ul li {
			padding-bottom: 1.25em;
		}
		.legal.sitemap a {
			position: relative;
			display: inline-flex;
			border: 0;
			color: #DDDDDD;
			text-decoration: none;
			flex-wrap: nowrap;
			width: 100%;
			line-height: 1.5;
		}
		.legal.sitemap .icon {
			font-size: 8px;
			flex-basis: 6em;
			align-content: center;
			color: #DDDDDD;
			flex-grow: 0;
			flex-shrink: 0;
		}

	.legal.credits ul {
		text-align: left;
	}
	.legal.credits a.internal {
		border: none;
	}
		.legal.credits a:not(.internal):after {
			content: '\2197';
		}

.zmf_ueber_mich {
	margin: 2em 0 4em 0;
	width: clamp(40%, 60svh, 75%);
	max-width: 300px;
	text-align: center;
	border-radius: 2em;
	display: block;
	opacity: 1;
}