/* @group Clear Stylesheet */
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,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;background-image:none;}body{line-height:1;color:black;background:white;text-align:left;}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0;}caption,th,td{text-align:left;font-weight:normal;}blockquote:before,blockquote:after,q:before,q:after{content:""}blockquote,q{quotes:"" "";}
/* @end */


* {
	margin: 0;
}

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

body {
	font-family: var(--font-default-family);
	font-weight: var(--font-default-weight);
	font-size: var(--font-default-size);
	background-color: var(--color-white);
	color: var(--color-text);
	-webkit-font-smoothing: antialiased;
	min-width: 360px;
}

img, picture, video, canvas, svg {
	display: block;
	max-width: 100%;
}

	img {
		height: auto;
	}

input, button, textarea, select {
	font: inherit;
	box-sizing: border-box;
}

b, strong {
	font-weight: var(--font-default-weight-bold);
}

i, em {
	/* there is no italic style for this font */
	font-style: normal;
}

.width {
	width: 100%;
	max-width: var(--width);
	padding: 0 20px;
	box-sizing: border-box;
	margin: 0 auto;
}

	.width.width-narrow {
		max-width: var(--width-narrow);
	}

 .embed-container { 
	position: relative;
	max-width: 100%;
	height: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
} 
 
	.embed-container > div {
		width: 100% !important;
	}

 	.embed-container iframe {
 		max-width: 100%;
 	}

 	.embed-container object,
 	.embed-container embed,
 	.embed-container video,
 	.embed-container img {
 		max-width: 100%;
 		height: auto;
 	}

 	.embed-container-responsive { 
		position: relative; 
		padding-bottom: 56.25%;
		overflow: hidden;
		max-width: 100%;
		height: auto;
	} 

		.embed-container-responsive iframe,
		.embed-container-responsive object,
		.embed-container-responsive embed,
		.embed-container-responsive .BorlabsCookie { 
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

.content {
	line-height: var(--font-default-line-height);
}

	.content small {
		font-size: 0.7em;
	}

	.content ul,
	.content ol {
		margin: 0;
		padding-left: 20px;
	}

		.content ul {
			list-style-type: disc;
		}

		.content ol {
			list-style-type: decimal;
		}

	.content ul.no-list-style,
	.content ol.no-list-style {
		padding: 0;
		list-style-type: none;
	}

	.content * + p,
	.content * + ul,
	.content * + ol,
	.content * + img,
	.content * + picture,
	.content * + svg,
	.content * + video,
	.content * + blockquote,
	.content * + dl,
	.content * + figure,
	.content * + form,
	.content * + h1,
	.content * + h2,
	.content * + h3,
	.content * + h4,
	.content * + h5,
	.content * + h6,
	.content * + hr,
	.content * + nav,
	.content * + pre,
	.content * + table {
		margin-top: 1em;
	}

	.content a {
		text-decoration: underline;
		color: var(--color-highlight);
		transition: color 300ms ease-in-out;
	}

		.content a:hover {
			text-decoration: none;
		}

	.content img {
		max-width: 100%;
		height: auto;
	}

.content blockquote {
	font-family: var(--font-quote-family);
	font-weight: var(--font-quote-weight);
	font-style: var(--font-quote-style);
	margin: var(--spacing) 0;
	font-size: 2em;
}

	.content blockquote:first-child {
		margin-top: 0;
	}

	@media ( max-width: 640px ) {

		.content blockquote {
			font-size: 1.4em;
		}

	}

input,
textarea,
button,
.button {
	display: inline-block;
	box-sizing: border-box;
	font: inherit;
	color: var(--color-text-inverted);
	background: var(--color-text);
	border: 1px solid var(--color-text);
	border-radius: 0;
	padding: 5px 10px;
	max-width: 100%;
}

	body.transition input,
	body.transition textarea,
	body.transition button,
	body.transition .button {
		transition: color 300ms ease-in-out, background 300ms ease-in-out;
	}

	input:focus,
	textarea:focus {
		background: var(--color-text-inverted);
		color: var(--color-text);
	}

	input[type="submit"],
	button,
	.button {
		background: transparent;
		border: 0;
		border-bottom: 1px solid var(--color-text);
		color: var(--color-text);
		padding: 5px 15px;
		text-align: center;
		cursor: pointer;
		position: relative;
		z-index: 5;
	}

		input[type="submit"]:hover,
		button:hover,
		.button:hover,
		input[type="submit"]:focus,
		button:focus,
		.button:focus,
		.button-wrapper:focus .button,
		.button-wrapper:hover .button {
			background: var(--color-text);
			color: var(--color-text-inverted);
		}

		button.button-outline,
		.button.button-outline {
			border: 2px solid var(--color-text);
		}

.np-mailchimp-form {
	border: 5px solid black;
	padding: 20px;
	margin: 2em 0;
	position: relative;
}

	.np-mailchimp-form.loading:after {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(255,255,255,0.8) url(../img/icons/loading.svg) no-repeat center center / 40px auto;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 20;
	}

	.np-mailchimp-form label {
		display: block;
	}
	
		.np-mailchimp-form label + label,
		.np-mailchimp-form button {
			margin-top: 0.5em;
		}

	.np-mailchimp-form .np-mailchimp-form-message {
		background: #eee;
		padding: 10px;
		display: block;
	}
	
		.np-mailchimp-form .np-mailchimp-form-message.np-mailchimp-form-success {
			color: var(--color-success);
		}

		.np-mailchimp-form .np-mailchimp-form-message.np-mailchimp-form-error {
			color: var(--color-warning);
		}

	.np-mailchimp-form .data-privacy-consent {
		font-size: 0.8em;
		margin: 0.5em 0;
	}

.columns {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

	.columns-2 .column {
		width: calc(50% - 10px);
	}

	.columns-2.reverse .column-1 {
		order: 2;
	}
	
	.columns-2.reverse .column-2 {
		order: 1;
	}

	@media ( max-width: 640px ) {

		.columns-2 .column {
			width: 100%;
		}

			.columns-2 .column + .column {
				margin-top: 1em;
			}

			.columns-2.reverse .column-1 {
				order: 1;
			}

			.columns-2.reverse .column-2 {
				order: 2;
			}

	}

.anchor {
	position: absolute;
	margin-top: calc(-20px + -1 * var(--header-height));
}

header.header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: var(--header-height);
	background: rgba(255,255,255,.85);
	z-index: 100;
	line-height: 1;
}

	body.transition header.header {
		-webkit-transition: margin 200ms ease-in-out;
		-o-transition: margin 200ms ease-in-out;
		transition: margin 200ms ease-in-out;
	}

	header.header.scrolled:not(.menu-open) {
		margin-top: calc(-1 * var(--header-height));
	}

	header.header:after {
		content: "";
		display: block;
		width: 100%;
		height: 40px;
		bottom: -40px;
		left: 0;
		position: absolute;
	}

	header.header .width {
		text-align: center;
		position: relative;
		height: 100%;
		max-width: unset;
		padding: 0 var(--spacing);
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	header.header #menu-social {
		display: inline;
		list-style-type: none;
		padding: 0;
	}

		header.header #menu-social li {
			display: inline;
		}

		header.header #menu-social a {
			display: inline-block;
			overflow: hidden;
			line-height: 2;
			height: 0;
			padding: 20px 0 0;
			width: 20px;
			background: var(--color-black);

			-webkit-transition: background-color 200ms ease-in-out;
			-o-transition: background-color 200ms ease-in-out;
			transition: background-color 200ms ease-in-out;
		}

			header.header.menu-open #menu-social a {
				background: var(--color-white);
			}
		
			header.header #menu-social li + li {
				margin-left: 5px;
			}

			header.header #menu-social .instagram a {
				-webkit-mask: url(../img/icons/social-instagram.svg) no-repeat center center / contain;
				mask: url(../img/icons/social-instagram.svg) no-repeat center center / contain;
			}

	header.header .logo {
		position: absolute;
		left: 50%;
		top: 50%;
		display: inline-block;
		width: 170px;
		padding-top: 40px;
		height: 0;
		overflow: hidden;
		line-height: 2;
		background: var(--color-black);
		color: transparent;
		overflow-wrap: hidden;
		text-align: center;

		-webkit-transition: background-color 200ms ease-in-out;
		-o-transition: background-color 200ms ease-in-out;
		transition: background-color 200ms ease-in-out;

		-webkit-transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);

		-webkit-mask: url(../img/logo.svg) no-repeat center center / contain;
		mask: url(../img/logo.svg) no-repeat center center / contain;
	}

		header.header.menu-open .logo {
			background: var(--color-white);
		}

	.header .menu-icon {
		display: block;
		width: 30px;
		height: 40px;
		cursor: pointer;
		z-index: 50;
		position: relative;
	}

		.header .menu-icon .icon,
		.header .menu-icon .icon:before,
		.header .menu-icon .icon:after {
			pointer-events: none;
			display: block;
			height: 3px;
			background: var(--color-black);
			width: 100%;
			left: 0;
			top: 50%;
			position: absolute;

			-moz-transform: translate(0px, -50%);
			-webkit-transform: translate(0px, -50%);
			-o-transform: translate(0px, -50%);
			-ms-transform: translate(0px, -50%);
			transform: translate(0px, -50%);

			-webkit-transition: all 200ms ease-in-out;
			-o-transition: all 200ms ease-in-out;
			transition: all 200ms ease-in-out;
		}

			.header .menu-icon .icon:before,
			.header .menu-icon .icon:after {
				content: "";
			}

			.header .menu-icon .icon:before {
				margin-top: -8px;
			}

				.header .menu-icon:hover .icon:before {
					margin-top: -6px;
				}

			.header .menu-icon .icon:after {
				margin-top: 8px;
			}

				.header .menu-icon:hover .icon:after {
					margin-top: 6px;
				}

		.header.menu-open .menu-icon .icon {
			background-color: transparent;
		}

			.header.menu-open .menu-icon .icon:before {
				background: var(--color-white);
				margin-top: 0;

				-moz-transform: rotate(45deg) translate(0px, 0px);
				-webkit-transform: rotate(45deg) translate(0px, 0px);
				-o-transform: rotate(45deg) translate(0px, 0px);
				-ms-transform: rotate(45deg) translate(0px, 0px);
				transform: rotate(45deg) translate(0px, 0px);
			}

			.header.menu-open .menu-icon .icon:after {
				background: var(--color-white);
				margin-top: 0;

				-moz-transform: rotate(-45deg) translate(0px, 0px);
				-webkit-transform: rotate(-45deg) translate(0px, 0px);
				-o-transform: rotate(-45deg) translate(0px, 0px);
				-ms-transform: rotate(-45deg) translate(0px, 0px);
				transform: rotate(-45deg) translate(0px, 0px);
			}

	.header .menu-overlay {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: var(--color-black);
		color: var(--color-white);
		z-index: -1;
		opacity: 0;
		pointer-events: none;
		box-sizing: border-box;
		padding: calc(var(--header-height) + var(--spacing)) var(--spacing) var(--spacing);

		-webkit-transition: opacity 200ms ease-in-out;
		-o-transition: opacity 200ms ease-in-out;
		transition: opacity 200ms ease-in-out;
	}

		.header.menu-open .menu-overlay {
			opacity: 1;
			pointer-events: all;
		}

		.header .menu-overlay a {
			color: inherit;
			text-decoration: none;
		}

			.header .menu-overlay a:hover,
			.header .menu-overlay .current-menu-item a {
				text-decoration: underline;
			}

		.header .menu-overlay-content {
			display: flex;
			width: 100%;
			min-height: 100%;
			justify-content: space-between;
			align-items: center;
			position: relative;
		}

		.header .menu-overlay #menu-categories {
			height: 80%;
			position: absolute;
			top: 10%;
			bottom: 10%;
			left: 0;
			display: flex;
			flex-direction: column;
			justify-content: space-around;
		}
		
			.header .menu-overlay #menu-categories > li > a {
				font-size: 2.8em;
				text-decoration: none;
			}
			
				.header .menu-overlay #menu-categories > li > a:before {
					content: "";
					width: 0.4em;
					height: 0.7em;
					margin-right: 0.1em;
					background: url(../img/icons/menu-overlay_category-arrow.svg) no-repeat right center / auto 100%;
					display: inline-block;

					-webkit-transition: width 200ms ease-in-out;
					-o-transition: width 200ms ease-in-out;
					transition: width 200ms ease-in-out;
				}
				
					.header .menu-overlay #menu-categories > li > a:hover:before,
					.header .menu-overlay #menu-categories > li.current-menu-item > a:before {
						width: 1em;
					}

			.header .menu-overlay #menu-categories .sub-menu {
				display: inline-block;
				margin-left: 10px;
				white-space: nowrap;
				opacity: 0;

				-moz-transform: translate(-40px, 0px);
				-webkit-transform: translate(-40px, 0px);
				-o-transform: translate(-40px, 0px);
				-ms-transform: translate(-40px, 0px);
				transform: translate(-40px, 0px);

				-webkit-transition: all 200ms ease-in-out;
				-o-transition: all 200ms ease-in-out;
				transition: all 200ms ease-in-out;
			}

				.header .menu-overlay #menu-categories > li > a:hover + .sub-menu,
				.header .menu-overlay #menu-categories > li.current-menu-item > a + .sub-menu {
					opacity: 1;

					-moz-transform: translate(0px, 0px);
					-webkit-transform: translate(0px, 0px);
					-o-transform: translate(0px, 0px);
					-ms-transform: translate(0px, 0px);
					transform: translate(0px, 0px);
				}
			
				.header .menu-overlay #menu-categories .sub-menu li {
					display: inline;
				}
				
				.header .menu-overlay #menu-categories .sub-menu li a {
					pointer-events: none;
					display: inline;
					text-decoration: none;
				}
				
					.header .menu-overlay #menu-categories .sub-menu li a:after {
						content: ', ';
					}
					
						.header .menu-overlay #menu-categories .sub-menu li:last-child a:after {
							content: '';
						}

		.header .menu-overlay #menu-main {
			text-align: right;
			font-size: 1.7em;
		}

			.header .menu-overlay #menu-main li {
				margin-bottom: 20px;
			}

				.header .menu-overlay #menu-main li:not(.small) + li.small {
					margin-top: 30px;
				}

			.header .menu-overlay #menu-main li.small {
				font-size: 1.2rem;
				margin-bottom: 10px;
			}

	@media ( max-width: 940px ) {

		.header .menu-overlay {
			overflow-x: hidden;
			overflow-y: auto;
		}

		.header .menu-overlay .menu-overlay-content {
			flex-wrap: wrap;
		}

		.header .menu-overlay #menu-categories {
			height: auto;
			position: static;
			width: 100%;
		}
		
			.header .menu-overlay #menu-categories > li + li {
				margin-top: 20px;
			}

		.header .menu-overlay .spacer {
			height: 40px;
			width: 100%;
		}

		.header .menu-overlay #menu-main {
			text-align: center;
			width: 100%;
		}
		
			.header .menu-overlay #menu-main li {
				display: inline;
			}
			
				.header .menu-overlay #menu-main li + li {
					margin-left: 0.7em;
				}
			
			.header .menu-overlay #menu-main li:not(.small) + li.small {
				margin-left: 0;
			}

				.header .menu-overlay #menu-main li:not(.small) + li.small:before {
					content: "";
					display: block;
					width: 100%;
					height: 1;
				}

	}

	@media ( max-width: 740px ) {

		.header .menu-overlay #menu-main {
			font-size: 1.4em;
		}

			.header .menu-overlay #menu-main li.small {
				font-size: 1rem;
			}

		.header .menu-overlay #menu-categories > li > a {
			font-size: 2em;
		}
		
		.header .menu-overlay #menu-categories > li + li {
			margin-top: 20px;
		}

		.header .menu-overlay #menu-categories .sub-menu {
			display: none;
		}

	}

	@media ( max-width: 440px ) {

		.header .menu-overlay #menu-main {
			font-size: 1.2em;
		}

	}

footer.footer {
	background: var(--color-black);
	color: var(--color-white);
	padding: 40px 0;
	position: relative;
	overflow: hidden;
	clip-path: inset(0);
	height: var(--footer-height);
	line-height: 1;
}

	footer.footer .footer-inner {
		position: fixed;
		left: 0;
		bottom: 40px;
		width: 100%;
		z-index: -1;
	}

	footer.footer .width {
		position: relative;
	}

	footer.footer ul {
		display: inline;
		list-style-type: none;
		padding: 0;
	}

		footer.footer ul li + li,
		footer.footer ul + .privacy-notice {
			margin-top: 0.7em;
		}

	footer.footer a {
		color: inherit;
		text-decoration: none;
	}

		footer.footer a:hover,
		footer.footer .current-menu-item a {
			text-decoration: underline;
		}

		footer.footer #menu-footer-right {
			text-align: right;
		}

	footer.footer .width {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}

	footer.footer .logo {
		position: absolute;
		left: 50%;
		top: 50%;
		display: inline-block;
		width: 170px;
		height: 40px;
		background: url(../img/logo_white.svg) no-repeat center center / contain;
		color: transparent;
		overflow-wrap: hidden;
		text-align: center;
		-webkit-transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}

	footer.footer .privacy-notice {
		display: block;
	}

		/* hide the 'test environment' notice in our dev environment, so we don't fuck up the layout */
		footer.footer .privacy-notice a + span {
			opacity: 0;
			width: 0px;
			height: 0px;
			overflow: hidden;
			position: absolute;
			pointer-events: none;
		}

	@media ( max-width: 580px ) {

		:root {
			--footer-height: 170px;
		}

		footer.footer .width {
			flex-wrap: wrap;
		}

		footer.footer .logo-wrapper {
			order: 1;
			width: 100%;
			position: relative;
			text-align: center;
			padding: 20px 0;
		}

			footer.footer .logo {
				position: static;
				-webkit-transform: translate(0, 0);
				-moz-transform: translate(0, 0);
				transform: translate(0, 0);
			}

		footer.footer .menu {
			width: 50%;
			order: 2;
		}

		footer.footer .footer-right-wrapper {
			order: 3;
		}

	}

	@media ( max-width: 460px ) {

		:root {
			--footer-height: 300px;
		}

		footer.footer .menu,
		footer.footer .footer-right-wrapper {
			width: 100%;
			text-align: center;
			display: block;
		}

		footer.footer #menu-footer-right {
			text-align: center;
			margin-top: 1.5em;
		}

	}

main {
	padding: calc(var(--spacing) + var(--header-height)) 0 calc(2 * var(--spacing));
	box-sizing: border-box;
	min-height: 100vh;
}

.article .article-header {
	margin-top: calc(-1 * var(--header-height) - var(--spacing));
}

	.article .article-header .article-headline {
		margin-top: calc(var(--spacing) / 2);
	}

	.article .article-header .header-image {
		background: var(--color-grey-light);
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		overflow: hidden;
	}

		.article .article-header .header-image img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
		}

			.article .article-header .header-image.header-image-alignment-vertical-top.header-image-alignment-horizontal-left img {
				object-position: top left;
			}
			.article .article-header .header-image.header-image-alignment-vertical-top.header-image-alignment-horizontal-center img {
				object-position: top center;
			}
			.article .article-header .header-image.header-image-alignment-vertical-top.header-image-alignment-horizontal-right img {
				object-position: top right;
			}

			.article .article-header .header-image.header-image-alignment-vertical-center.header-image-alignment-horizontal-left img {
				object-position: center left;
			}
			.article .article-header .header-image.header-image-alignment-vertical-center.header-image-alignment-horizontal-center img {
				object-position: center center;
			}
			.article .article-header .header-image.header-image-alignment-vertical-center.header-image-alignment-horizontal-right img {
				object-position: center right;
			}

			.article .article-header .header-image.header-image-alignment-vertical-bottom.header-image-alignment-horizontal-left img {
				object-position: bottom left;
			}
			.article .article-header .header-image.header-image-alignment-vertical-bottom.header-image-alignment-horizontal-center img {
				object-position: bottom center;
			}
			.article .article-header .header-image.header-image-alignment-vertical-bottom.header-image-alignment-horizontal-right img {
				object-position: bottom right;
			}

		.article .article-header .header-image .header-image-description {
			position: absolute;
			right: 0;
			bottom: 0;
			font-size: 0.7em;
			z-index: 20;
			background: var(--color-white);
			color: var(--color-black);
			padding: 5px 10px;
		}

	.article .article-header.article-header-layout-fullwidth .header-image {
		height: 100vh;
		min-height: 400px;
		margin-bottom: var(--spacing);
		clip-path: inset(0);
	}

	.article .article-header.article-header-layout-columns {
		width: 100%;
		min-height: 100vh;
		position: relative;
		margin-bottom: var(--spacing);
	}

		.article .article-header.article-header-layout-columns .header-text {
			position: relative;
			left: 0;
			top: 0;
			width: 50%;
			min-height: 100vh;
			display: flex;
			align-items: flex-end;
			padding: calc(var(--header-height) + var(--spacing)) 0 20px;
			margin-right: 50%;
			box-sizing: border-box;
		}
		
			.article .article-header.article-header-layout-columns .header-text .content {
				display: block;
			}
	
		.article .article-header.article-header-layout-columns .header-image {
			width: 50%;
			height: 100%;
			overflow: hidden;
			position: absolute;
			right: 0;
			top: 0;
		}

	.article .article-header .header-text:first-child {
		padding-top: calc(var(--header-height) + var(--spacing));
	}

	@media ( max-width: 840px ) or ( hover: none ) {

		.article .article-header .header-image img {
			height: auto;
		}

		.article .article-header.article-header-layout-fullwidth .header-image {
			height: auto;
			min-height: unset;
		}

			.article .article-header.article-header-layout-fullwidth .header-image img {
				position: static;
			}

		.article .article-header.article-header-layout-columns {
			min-height: unset;
		}

			.article .article-header.article-header-layout-columns .header-text {
				position: static;
				width: 100%;
				min-height: unset;
				margin: 0;
			}
			
			.article .article-header.article-header-layout-columns .header-image {
				width: 100%;
				height: auto;
				position: relative;
				right: unset;
				top: unset;
			}

			.article .article-header.article-header-layout-columns .header-text {
				padding: var(--spacing) 0;
			}

	}

.article .article-headline {
	margin: var(--spacing) 0;
}

.article-fadeout {
	position: relative;
}

	.article-fadeout:after {
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		left: 0;
		bottom: 0;
		background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 50%);
		z-index: 80;
	}

.article-categories {

}

	.article-category + .article-category {
		margin-left: 1em;
	}

	.article-main-category {
		font-weight: var(--font-default-weight-bold);
	}

		.article-subcategories:before {
			content: ' - ';
		}

.article-teaser {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

	.article-teaser .article-categories a {
		color: inherit;
	}
	
		.article-teaser .article-categories a:hover {
			color: var(--color-highlight);
		}

	.article-teaser:hover .article-teaser-headline {
		color: var(--color-highlight);
	}

	.article-teaser + .article-teaser {
		margin-top: 60px;
	}

	.article-teaser .article-teaser-permalink {
		color: transparent;
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 1;
	}

	.article-teaser .article-categories {
		position: relative;
		z-index: 5;
	}

	.article-teaser .article-teaser-thumbnail {
		width: calc(50% - 10px);
		order: 1;
	}
	
	.article-teaser .article-teaser-content {
		width: calc(50% - 10px);
		order: 2;
	}

		.article-teaser:nth-child(2n) .article-teaser-thumbnail {
			order: 2;
		}
	
		.article-teaser:nth-child(2n) .article-teaser-content {
			order: 1;
		}
	
	.article-teaser .article-teaser-text {
		margin-top: 0.5em;
		display: block;
	}

	.article-teaser.article-teaser-layout-column {
		flex-wrap: wrap;
	}
	
		.article-teaser.article-teaser-layout-column .article-teaser-thumbnail,
		.article-teaser.article-teaser-layout-column .article-teaser-content {
			width: 100%;
		}
		
			.article-teaser.article-teaser-layout-column .article-teaser-thumbnail {
				order: 1;
			}
		
			.article-teaser.article-teaser-layout-column .article-teaser-content {
				margin-top: 1em;
				order: 2;
			}

	.article-teaser.article-teaser-small {
		font-size: 0.8em;
	}
		.article-teaser.article-teaser-small .article-teaser-text {
			display: none;
		}

	@media ( max-width: 640px ) {

		.articlelist .article-teaser {
			flex-wrap: wrap;
		}
		
			.articlelist .article-teaser .article-teaser-thumbnail,
			.articlelist .article-teaser .article-teaser-content {
				width: 100%;
			}
			
				.articlelist .article-teaser .article-teaser-thumbnail {
					order: 1;
				}
			
				.articlelist .article-teaser .article-teaser-content {
					margin-top: 1em;
					order: 2;
				}
				
				.articlelist .article-teaser .article-teaser-text {
					display: none;
				}

	}

.archive-header,
.search-header {
	padding: var(--spacing) 0 calc(2 * var(--spacing));
	text-align: center;
}

	.archive-header h1,
	.search-header h1 {
		font-size: 2em;
		margin-bottom: 20px;
	}

	.search-header strong {
		text-transform: uppercase;
	}

	@media ( max-width: 640px ) {

		.archive-header,
		.search-header {
			padding: 0 0 var(--spacing);
		}

			.archive-header h1,
			.search-header h1 {
				font-size: 1.6em;
			}

	}

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

.content .pagination {
	text-align: center;
	display: block;
	margin: var(--spacing) 0 0;
}

	.pagination .screen-reader-text {
		display: none;
	}

	.pagination a {
		color: var(--color-text);
	}

	.pagination .page-numbers {
		display: inline-block;
		text-decoration: none;
		border: 1px solid var(--color-text);
		padding: 5px;
		line-height: 1;
		width: 1em;
		height: 1em;
	}

		.pagination a.page-numbers {
			transition: color 300ms ease-in-out, background-color 300ms ease-in-out;
		}
	
		.pagination a.page-numbers:hover,
		.pagination a.page-numbers:active,
		.pagination .page-numbers.current {
			background: var(--color-black);
			color: var(--color-white);
		}

.credits {

}

	.credits .headline {
		display: inline-block;
		margin-right: 0.2em;
	}

	.credits .creditlist {
		display: inline-block;
		margin-top: 0.5em;
	}

.tags {

}

	.tags .headline {
		display: inline-block;
		margin-right: 0.2em;
	}

	.tags .taglist {
		list-style-type: none;
		margin: 0.5em 0 0;
		padding: 0;
		display: inline-block;
	}

		.tags .taglist li {
			display: inline-block;
		}
		
			.tags .taglist li + li:before {
				content: " | ";
			}

.password-form-wrapper {
	text-align: center;
	border: 5px solid var(--color-black);
	box-sizing: border-box;
	padding: 20px;
	margin: 2em 0;
	position: relative;
}
