/*!
Theme Name: Hafencasino
Theme URI: http://underscores.me/
Author: Gruppe für Gestaltung
Author URI: https://www.gfg-id.de/
Description: Hafencasino Theme
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: hc
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

HC is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*-----------------------------------------------------------------------------------*/
/* Fonts
/*-----------------------------------------------------------------------------------*/
/* roboto-regular - latin */
@font-face {
	font-display: swap;
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	src: url('assets/fonts/roboto-v30-latin/roboto-v30-latin-regular.eot'); /* IE9 Compat Modes */
	src: url('assets/fonts/roboto-v30-latin/roboto-v30-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
			 url('assets/fonts/roboto-v30-latin/roboto-v30-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
			 url('assets/fonts/roboto-v30-latin/roboto-v30-latin-regular.woff') format('woff'), /* Modern Browsers */
			 url('assets/fonts/roboto-v30-latin/roboto-v30-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
			 url('assets/fonts/roboto-v30-latin/roboto-v30-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-medium - latin */
@font-face {
	font-display: swap;
	font-family: 'Roboto Medium';
	font-style: normal;
	font-weight: 500;
	src: url('assets/fonts/roboto-v30-latin/roboto-v30-latin-500.eot'); /* IE9 Compat Modes */
	src: url('assets/fonts/roboto-v30-latin/roboto-v30-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
			 url('assets/fonts/roboto-v30-latin/roboto-v30-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
			 url('assets/fonts/roboto-v30-latin/roboto-v30-latin-500.woff') format('woff'), /* Modern Browsers */
			 url('assets/fonts/roboto-v30-latin/roboto-v30-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
			 url('assets/fonts/roboto-v30-latin/roboto-v30-latin-500.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* bigshot-one-regular - latin */
@font-face {
	font-display: swap;
	font-family: 'Bigshot One';
	font-style: normal;
	font-weight: 400;
	src: url('assets/fonts/bigshot-one-v25-latin/bigshot-one-v25-latin-regular.eot'); /* IE9 Compat Modes */
	src: url('assets/fonts/bigshot-one-v25-latin/bigshot-one-v25-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
			 url('assets/fonts/bigshot-one-v25-latin/bigshot-one-v25-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
			 url('assets/fonts/bigshot-one-v25-latin/bigshot-one-v25-latin-regular.woff') format('woff'), /* Modern Browsers */
			 url('assets/fonts/bigshot-one-v25-latin/bigshot-one-v25-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
			 url('assets/fonts/bigshot-one-v25-latin/bigshot-one-v25-latin-regular.svg#BerkshireSwash') format('svg'); /* Legacy iOS */
}

/*-----------------------------------------------------------------------------------*/
/* Reset
/*-----------------------------------------------------------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-smooth: always;
}

body.custom-background {
	background-color: #2C487D;
}

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

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

:focus {
	outline: 0;
}

::placeholder {
	color: rgba(0,0,0,.7);
}

nav ul {
	float: right;
	list-style: none;
}
footer nav ul {
	float: unset;
}
nav ul li {
	height: 3.4rem;
}

blockquote, q {
	quotes: none;
}

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

a.button, input.button {
	display: inline-block;
	font-family: 'Roboto Medium';
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: normal;
	color: #2C487D;
	background: transparent;
	width: auto;
	padding: .5rem .5rem;
	margin: 3rem 0 0;
	border: solid .2rem rgba(0, 0, 0, 0.7);
	border-radius: .3rem;
	cursor: pointer;
	-webkit-user-select: none; /* Safari */
			-ms-user-select: none; /* IE 10 and IE 11 */
					user-select: none; /* Standard syntax */
}
a.button:hover, input.button:hover {
	color: #fff !important;
	background: rgba(0, 0, 0, 0.7);
	border-color: transparent;
}

svg {
	overflow: visible;
}

/* change colours to suit your needs */
/* ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
} */

/* change colours to suit your needs */
/* mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
} */

span[style="font-weight: bold;"] {
	font-weight: 600 !important;
}

/* del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom: .1rem dotted;
	cursor: help;
} */

table {
	float: left;
	border-collapse: collapse;
	border-spacing: 0;
}
tbody {
	display: block;
}
tr {
	float: left;
	width: 100%;
}

hr {
	display: block;
	height: .1rem;
	border: 0;
	border-top: .1rem solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input, select {
	vertical-align: middle;
}

img {
	display: block;
	width: 100%;
	/* height: 100vh; */
	object-fit: cover;
	-webkit-user-select: none; /* Safari */
			-ms-user-select: none; /* IE 10 and IE 11 */
					user-select: none; /* Standard syntax */
}

.js .lazyload,
.js .lazyloading {
	opacity: 0;
}
.lazyloaded {
	opacity: 1;
	transition: opacity 200ms;
}

sub, sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sup {top: -.5rem;}
sub {top: .5rem;}

pre,
pre *,
pre *:before,
p a,
br {
	float: none !important;
}

p a,
p sub,
p sup,
p strong,
p span {
	float: none;
}

picture {
	width: 100%;
}

.extbase-debugger {
	position: relative;
	z-index: 15;
}

#typo3-preview-info {
	width: auto;
	display: none;
}

/*--------------------------------------------------------------
# Theme Fixes
--------------------------------------------------------------*/
html {
	position: relative;
	font-size: 62.5%;
	max-width: 100vw;
	min-height: 100%;
	min-height: 100vh;
	overflow-x: hidden;
}

body {
	/* float: left;
	position: relative; */
	font-family: 'Roboto', sans-serif;
	font-size: 2.2rem;
	font-weight: 400;
	line-height: 3rem;
	letter-spacing: normal !important;
	color: rgba(0, 0, 0, .7);
	width: 100%;
	min-height: 100%;
	min-height: 100vh;
	-webkit-hyphens: auto;
			-ms-hyphens: auto;
					hyphens: auto;
}

.page-content, .entry-content {
	margin: 0;
}

button, .teaserContainer,
input[type="button"],
input[type="reset"] {
	display: inline-block;
	background: transparent;
	border: .2rem solid rgba(0, 0, 0, 1);
	border-radius: unset;
	box-sizing: border-box;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.3999;
	padding: .5rem;
	cursor: pointer;
}

/* .site-footer button,
.site-footer .button,
.site-footer input[type="button"],
.site-footer input[type="reset"],
.site-footer input[type="submit"] {
	color: #000;
	background: #fff;
	border: .1rem solid #000;
} */

#site-generator {
	padding: 0;
}

#site-navigation {
	float: right;
	padding: 5rem 1rem;
}

button {
	color: #2C487D;
	letter-spacing: .1rem;
	text-transform: initial;
	border-radius: .3rem;
	-webkit-user-select: none; /* Safari */
			-ms-user-select: none; /* IE 10 and IE 11 */
					user-select: none; /* Standard syntax */
}

button:hover, .teaserContainer:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	color: #fff;
	background: rgba(0, 0, 0, .7);
	border-color: transparent;
}

button:active, button:focus-visible ,
.teaserContainer:active, .teaserContainer:focus-visible ,
input[type="button"]:active,
input[type="button"]:focus-visible ,
input[type="reset"]:active,
input[type="reset"]:focus-visible ,
input[type="submit"]:active,
input[type="submit"]:focus-visible  {
	color: #000;
	background: #fff;
	border: .2rem solid #000;
}

.site-footer button:hover,
.site-footer .button:hover,
.site-footer input[type="button"]:hover,
.site-footer input[type="reset"]:hover,
.site-footer input[type="submit"]:hover {
	color: #fff;
	background: rgba(0, 0, 0, 0.7);
}

.site-footer button:active,
.site-footer button:focus-visible ,
.site-footer .button:active,
.site-footer .button:focus-visible ,
.site-footer input[type="button"]:active,
.site-footer input[type="button"]:focus-visible ,
.site-footer input[type="reset"]:active,
.site-footer input[type="reset"]:focus-visible ,
.site-footer input[type="submit"]:active,
.site-footer input[type="submit"]:focus-visible  {
	background: #000;
}

h6, .blog-section-headline .archive-title-type, 
table caption, .wp-caption-text, .comment-notes, 
.comment-metadata, .site-info {
	font-family: 'Amita';
	font-size: 1.3rem;
}

.search-toggle {
	font-size: 1.8rem;
	color: rgba(255, 255, 255, .7);
	width: 7rem;
	border: .1rem solid transparent;
}

.custom-header-media .wp-custom-header img {
	height: 100vh !important;
}

.no-sidebar .alignwide {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: unset !important;
}

.wp-block-post-comments {
	display: none;
}

.singular-section .content-area .post-thumbnail, 
.post-navigation, .comments-title {
	margin: 0 !important;
}

#scrollup {
	font-size: 1.6rem;
	line-height: 1.7;
}

.main-navigation a {
	font-size: 1.5rem;
}

a {
	color: #2C487D;
	background: transparent;
	text-decoration: none;
	vertical-align: baseline;
	margin: 0;
	padding: 0;
}

a:hover, a:focus-visible , a:active {
	color: #000 !important;
}

b, /* strong, */ h1, h2, h3, h4, h5, h6 {
	font-family: 'Bigshot One', sans-serif;
}

h1 {
	display: inline-block;
	font-family: 'Bigshot One';
	font-size: 5.5rem !important;
	font-weight: normal;
	text-transform: none !important;
	line-height: normal;
	/* color: rgba(0, 0, 0, .7); */
	margin: 5rem 0 4rem !important;
}
h2 {
	font-family: 'Bigshot One';
	font-size: 4.5rem;
	font-weight: normal;
	line-height: 1.2;
	margin-bottom: 4rem;
}
h3 {
	font-size: 3.8rem;
	font-weight: normal;
}
h4 {
	font-size: 3rem;
	font-weight: normal;
	line-height: normal;
}
h5 {
	font-size: 2.4rem;
	font-weight: normal;
	line-height: 1.5;
	margin-bottom: 3rem;
}

p + p {
	margin-top: 1.5rem;
}

#page {
	padding: 0;
	/* overflow-x: hidden; */
}
#page.toggled {
	height: 100vh;
	overflow-y: hidden;
}

#page *:focus-visible {
	/* padding: 0.7rem; */
	border-color: #2C487D;
	outline: solid 0.2rem #2C487D;
}

a.button:focus, a.button:focus-visible {
	/* padding: 0.7rem; */
	border: solid 0.2rem #2C487D !important;
	outline: none !important;
}

.post-thumbnail {
	position: fixed;
	width: 100%;
	/* max-height: 76.8rem !important; */
	z-index: -1;
}
.post-thumbnail img {
	height: 100vh;
		-webkit-user-drag: none;
		 -khtml-user-drag: none;
		   -moz-user-drag: none;
				 -o-user-drag: none;
						user-drag: none;
}

main#primary {
	position: relative;
	top: calc(100vh - 15rem);
	z-index: 98;
}

main#primary article {
	position: relative;
	top: -16rem;
}

.entry-content {
	position: relative;
	background: url(/wp-content/uploads/2023/05/marjan-blan-papier-scaled.jpg) no-repeat repeat;
	background-size: cover;
	/* top: calc(100vh - 15rem); */
	padding: 0 !important;
	z-index: 98;
}

#masthead {
	/* position: absolute; */
	background-color: transparent;
	width: 100%;
	/* height: 76.8rem; */
	/* top: 0; */
	/* left: 0; */
	/* z-index: 99; */
}

#masthead .wrapper {
	padding: 0;
}

#masthead .container > a, #masthead .container > ul {
	float: left;
	position: relative;
	display: inline-block;
	max-height: 14rem;
	padding: 3.5rem 1rem;
	z-index: 1000;
}

#masthead .container > ul {
	float: right;
	padding: 5rem 0;
}

#masthead ul li {
	float: left;
	color: #fff;
	list-style: none;
	margin: 0 .5rem;
}

#masthead li a {
	display: inline-block !important;
	color: #fff !important;
	font-family: 'Roboto Medium';
	font-size: 2.2rem;
	line-height: 3rem;
	letter-spacing: .1rem;
}

#masthead li.current_page_item a, #masthead ul li a:hover, 
#masthead ul li a:active, #masthead ul li a:focus-visible {
	padding-bottom: .2rem;
	border-bottom: .3rem solid #fff;
}

.menu-toggle {
	float: right;
	display: none;
	position: relative;
	background: transparent !important;
	width: 5.4rem;
	height: 3.5rem;
	border: none;
	z-index: 1000;
}

.menu-toggle {
	border-radius: 0;
	cursor: pointer;
}

nav#site-navigation.toggled #primary-nav {
	display: block;
	position: fixed;
	background: #2C487D;
	width: 100vw;
	height: 100vh;
	left: 0;
	top: 0;
	z-index: 999;
}

nav#site-navigation.toggled li {
	display: inline-block;
	width: 100%;
	text-align: center;
	padding: 0 1rem;
	margin: 1.5rem 0;
}

nav#site-navigation.toggled li:first-of-type {
	margin-top: 25vh;
}

nav#site-navigation.toggled a {
	font-size: 4rem;
}

/*-----------------------------------------------------------------------------------*/
/* Grid
/*-----------------------------------------------------------------------------------*/
.wrapper, .site-footer .wrapper {
	/* float: left; */
	clear: left;
	/* display: table; */
	width: 100%;
	max-width: 120rem;
	padding: 5rem 0;
	margin: 0 auto;
}

.wrapper .wrapper:last-of-type {
	padding-bottom: 10rem;
}

.wrapper.title {
	padding: 0;
}

.container {
	width: 100%;
	max-width: 108rem;
	padding: 0;
	margin: 0 auto;
}

.column {
	padding: 0  1rem;
	display: block;
}

.pageMedia.column {
	padding: 0;
}

.lowGutter {
	padding-left: .5rem;
	padding-right: .5rem;
}

.fLeft {
	float: left !important;
}

@media screen and (max-width:468px) {
 .sm1 { width:25%; }
 .sm2 { width:50%; }
 .sm3 { width:75%; }
 .sm4 { width:100%; }

 .mt50 {margin-top: 5rem;}
 .mt25 {margin-top: 2.5rem;}

 .mb50 {margin-bottom: 5rem;}
 .mb25 {margin-bottom: 2.5rem;}

 .p50 {
	padding-top: 5rem;
	padding-bottom: 5rem;
 }
}

@media screen and (min-width:469px) and (max-width:768px) {
 .md1 {width:8.33333333333%;}
 .md2 {width:16.6666666667%;}
 .md3 {width:25.0%;}
 .md4 {width:33.3333333333%;}
 .md5 {width:41.6666666667%;}
 .md6 {width:50.0%;}
 .md7 {width:58.3333333333%;}
 .md8 {width:66.6666666667%;}
 .md9 {width:75.0%;}
 .md10 {width:83.3333333333%;}
 .md11 {width:91.6666666667%;}
 .md12 {width:100%;}

 .mt50 {margin-top: 5rem;}
 .mt25 {margin-top: 2.5rem;}

 .mb50 {margin-bottom: 5rem;}
 .mb25 {margin-bottom: 2.5rem;}

 .p50 {
	padding-top: 5rem;
	padding-bottom: 5rem;
 }
 
 .md12.push1, .md12.push2, .md12.push6, .md11.push2, .md11.push6, .md10.push6, .md9.push6, .md8.push6, .md7.push6 {
	 margin-left: 0;
	}
}

@media screen and (min-width:769px) {
 .lg1 {width:8.33333333333%;}
 .lg2 {width:16.6666666667%;}
 .lg3 {width:25.0%;}
 .lg4 {width:33.3333333333%;}
 .lg5 {width:41.6666666667%;}
 .lg6 {width:50.0%;}
 .lg7 {width:58.3333333333%;}
 .lg8 {width:66.6666666667%;}
 .lg9 {width:75.0%;}
 .lg10 {width:83.3333333333%;}
 .lg11 {width:91.6666666667%;}
 .lg12 {width:100%;}

 .h100 {height: 10rem;}
 .h50 {height: 5rem;}
 .h25 {height: 2.5rem;}

 .mt100 {margin-top: 10rem;}
 .mt50 {margin-top: 5rem;}
 .mt25 {margin-top: 2.5rem;}

 .mb100 {margin-bottom: 10rem;}
 .mb50 {margin-bottom: 5rem;}
 .mb25 {margin-bottom: 2.5rem;}

 .p100 {
	padding-top: 10rem;
	padding-bottom: 10rem;
 }
 .p50 {
	padding-top: 5rem;
	padding-bottom: 5rem;
 }
 .p25 {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
 }
 
 .lg12.push1, .lg12.push2, .lg12.push6, .lg11.push2, .lg11.push6, .lg10.push6, .lg9.push6, .lg8.push6, .lg7.push6 {
  margin-left: 0;
 }
}
@media screen and (min-width:469px) {
	.push1 {
		margin-left: 8.33333333333%;
	}
	.push2 {
		margin-left: 16.6666666667%;
	}
	.push6 {
		margin-left: 50%;
	}

	.pull1 {
		margin-left: -8.433333%;
	}
	.pull2 {
		margin-left: -16.6666666667%;
	}
 }

/*--------------------------------------------------------------
# Beitragsseiten
--------------------------------------------------------------*/
.single #masthead {
	position: unset;
	background-color: #2C487D;
	height: 50.65rem;
	overflow-x: hidden;
}

.single h1 {
	clear: left;
	float: left;
	display: block;
	color: #fff;
	margin: 7rem 0 4rem !important;
}

.single .date, .sinlge .price {
	float: left;
	display: block;
	color: #fff;
	text-align: right;
	padding-left: 0;
	margin: 7rem 0 4rem !important;
}

.single .date span, .single .price span, .singleEvent .date span {
	font-family: 'Roboto Medium';
	font-size: 3.8rem;
	line-height: 1.25;
	padding-left: 1rem;
}

.single .date span:first-of-type, .single .price span:first-of-type {
	font-family: 'Roboto Medium';
	font-size: 6rem;
	font-weight: 900;
	padding-left: 0;
}

.single .date p, .single .price p {
	font-family: 'Roboto Medium';
	font-size: 2rem;
	font-weight: 900;
	margin-top: 1rem;
	line-height: 1;
}

.wrapper.events h2 {
	padding-bottom: 3rem;
	margin-bottom: 0;
}

.singleEvent h3 {
	font-family: 'Roboto';
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1.07;
	text-align: left;
	color: rgba(0,0,0,.7);
}

.singleEvent {
	clear: left;
	border-bottom: 0.2rem solid #000;
}

.singleEvent:first-of-type {
	border-top: 0.2rem solid #000;
}

.singleEvent div {
	float: left;
}

.singleEvent h3 + p {
	font-size: 2.2rem;
	line-height: 1.36;
	text-align: left !important;
	padding-top: 1rem;
}

.singleEvent a {
	display: inline-block;
	margin: 2.5rem 0;
}

.singleEvent .date {
	padding: 0 1rem;
	margin: 1.5rem 0 !important;
}

.singleEvent span {
	display: block;
	font-size: 2rem !important;
	font-weight: 900;
	text-align: center;
	color: rgba(0,0,0,.7);
	width: 100%;
}

.singleEvent p {
	font-weight: 400 !important;
	color: rgba(0,0,0,.7);
	text-align: center;
	width: 100%;
	max-height: 16rem;
	overflow: hidden;
}

.singleEvent span:first-of-type {
	font-size: 5rem !important;
	color: #2C487D;
}

main#primary.post {
	top: 0;
}

main#primary.post article {
	position: relative;
	top: -3rem;
	z-index: 99;
}

.single .entry-content {
	position: relative;
	background: url(/wp-content/uploads/2023/05/marjan-blan-papier-scaled.jpg) no-repeat repeat;
	background-size: cover;
	min-height: 80rem;
}

/* .single .entry-content {
	top: -3rem;
	z-index: 99;
} */

nav.post-navigation {
	width: 50%;
}

.single .nav-subtitle {
	display: inline-block;
	font-family: 'dashicons';
	font-size: 5rem;
	font-weight: 600;
	line-height: 0;
}

.single a[rel="prev"] .nav-title {
	padding-left: 1rem;
}

.single a[rel="next"] .nav-title {
	padding-right: 1rem;
}

.single footer {
	position: absolute;
	max-height: 56.6rem;
	top: calc(100% - 6rem);
	/* bottom: 0; */
}


/*--------------------------------------------------------------
# Social Impressionen Slider
--------------------------------------------------------------*/
.socialSlider {
	position: relative;
	display: inline-block;
	width: 100%;
}

.slick-list.draggable {
	overflow-x: hidden;
}

.socialSlider .slick-track {
	transform: none !important;
}

.socialSlider figure {
	display: block !important;
}

.socialSlider span.slick-arrow {
	position: absolute;
	font-size: 4.4rem;
	font-weight: normal;
	width: 2.3rem;
	top: -8.5rem;
	right: 1rem;
	cursor: pointer;
	-webkit-user-select: none; /* Safari */
			-ms-user-select: none; /* IE 10 and IE 11 */
					user-select: none; /* Standard syntax */
}
.socialSlider span.slick-prev {
	right: 5rem !important;
}
.socialSlider span.slick-disabled {
	color: rgba(0, 0, 0, .5);
	cursor: unset;
}

.socialSlider .slick-slide {
	float: left;
	display: none;
}
.slick-slide.slick-current.slick-active, .slick-slide.slick-current.slick-active + .slick-slide, .slick-slide.slick-current.slick-active + .slick-slide + .slick-slide {
	display: block;
}
/* .socialSlider .slick-active:first-of-type {
	padding-right: 2rem;
}
.socialSlider .slick-active:last-of-type {
	padding-left: 2rem;
} */

/*--------------------------------------------------------------
# Footer & Kontakt
--------------------------------------------------------------*/
footer {
	position: relative;
	display: inline-block;
	width: 100%;
	background: #000;
	top: calc(100vh - 31rem);
	/* bottom: 0rem; */
	z-index: 99;
}

/* footer section {
	display: inline-block;
} */

footer section:last-of-type {
	display: table;
	max-width: 108rem;
	padding-top: 5rem;
	padding-bottom: 5rem;
	margin: 0 auto;
}

footer .logo {
	display: block;
	max-width: 16.5rem;
	margin: 5rem auto 2.5rem;
}

footer nav {
	float: left;
	width: 50%;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	margin-bottom: 3.5rem;
	padding-left: 1rem;
	padding-right: 2.5rem;
	border-right: .1rem solid #fff;
}

footer nav:last-of-type {
	padding-left: 0;
	padding-left: 2.5rem;
	padding-right: 1rem;
	border: none;
}

footer nav a {
	display: inline-flex;
	font-size: 2rem;
	color: #fff;
	padding-bottom: .2rem;
}

footer nav a:hover, footer nav a:focus-visible , footer nav a:active {
	color: #fff !important;
	border-bottom: 0.3rem solid #fff;
	padding: 0;
}

footer nav a:focus-visible  {
	padding-bottom: .2rem;
}

footer hr:first-of-type {
	display: none;
}

.contact h2 {
	position: unset;
	font-size: 3rem;
	line-height: normal;
	margin-top: 2rem;
	margin-bottom: 0;
}
.contact h2:first-of-type {
	margin-top: 0;
}

.contact p {
	margin-top: 1rem;
}

footer .contact {
	background: #2C487D;
	color: #fff;
	max-width: 160rem;
	min-height: 30rem;
	padding: 0;
}

footer .contact #contact h4:last-of-type {
	margin-top: 2rem;
}

footer .contact #contact a {
	color: #fff;
	text-decoration: underline;
}

/* footer .contact a:hover {
	color: rgba(0, 0, 0, .7);
} */

footer .contact.column {
	float: left;
	/* clear: left; */
	color: #fff;
	background: #2C487D;
	/* max-width: 54rem; */
	/* width: 50%; */
	padding: 3rem 2rem 1rem;
	margin: 0 !important;
}

footer .contact.column a {
	color: #fff;
}

footer .contact.column a:hover {
	color: #fff !important;
	border-bottom: 0.3rem solid #fff;
}

.maps {
	float: left;
	/* clear: left; */
	/* width: 50%; */
	height: 30rem;
	max-width: unset;
	margin: 0 !important;
	-webkit-user-select: none; /* Safari */
			-ms-user-select: none; /* IE 10 and IE 11 */
					user-select: none; /* Standard syntax */
}

.maps iframe {
	/* display: none; */
	background: #f7f7f7;
}

.acceptMe {
	/* clear: left; */
	/* float: left; */
	position: absolute;
	color: rgba(0, 0, 0, .7);
	background: #f7f7f7;
	max-width: 54rem;
	padding: 3rem 2rem 1rem;
	margin-left: calc(50% - 54rem);
	margin-right: unset;
}

.acceptMe h2 {
	font-size: 3rem;
	line-height: normal;
	margin-bottom: 0;
}

.acceptMe p {
	font-size: 2rem;
	line-height: 1.4;
	margin: 1.5rem 0;
}

footer nav.social li {
	/* float: left;
	clear: left;
	display: inline-flex; */
	float: unset;
	clear: unset;
	display: table;
	padding-bottom: 2rem;
	margin: 0 auto;
}

footer nav.social li:last-of-type {
	padding: 0;
}

footer nav.social a {
	display: flex !important;
	padding: 0;
}

footer nav.social a:hover, footer nav.social a:active, footer nav.social a:focus-visible {
	border: 0;
}

footer .backToTop {
	cursor: pointer;
}

/*--------------------------------------------------------------
# Impressum & Datenschutz
--------------------------------------------------------------*/
.legal h2 {
	font-size: 2.8rem;
	line-height: 1.1;
	margin: 3rem 0 0.5rem;
}

/*--------------------------------------------------------------
# Media Queries
--------------------------------------------------------------*/
@media screen and (min-height: 1200px) {
	main#primary, footer {
		top: unset;
		bottom: -50vh;
	}
	main#primary article {
		top: 0;
	}
}
@media screen and (max-width: 1080px) {
	#primary-nav {
		display: none;
	}
	.menu-toggle {
		display: block;
	}
	.acceptMe, footer .contact {
		min-height: 31.3rem;
		max-height: 31.3rem;
		padding: 1rem;
	}
	.maps, .maps iframe {
		min-height: 31.3rem;
		max-height: 31.3rem;
	}
}
@media screen and (min-width: 769px) {
	/* footer {
		padding: 0 0 5rem;
	} */
	footer .logo {
		float: left;
		max-width: unset;
		margin: 5rem 0 4rem;
		padding-left: 1rem;
	}
	footer nav {
		margin: 0;
	}
}
@media screen and (min-width: 468px) {
	.wrapper, .site-footer .wrapper {
		padding: 3rem 0;
	}
	.speiseKarte td {
		float: left;
		padding: .2rem 1rem;
	}
}

@media screen and (max-width: 1200px) {
	.acceptMe {
		max-width: 50vw;
		margin-left: 0;
	}
}
@media screen and (max-width: 960px) {
	h1 {
		font-size: 4.5rem !important;
	}
	.single .date span:first-of-type, .single .price span:first-of-type {
		font-size: 5rem !important;
	}
	.single .date span, .single .price span, .singleEvent .date span {
		font-size: 3.3rem;
	}
	.single .date p, .single .price p {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 768px) {
	body, .acceptMe p, .singleEvent h3 + p {
		font-size: 1.7rem;
		line-height: 2.2rem;
	}
	.acceptMe p {
		margin: 1rem 0;
	}
	h2 {
		font-size: 4rem;
	}
	.singleEvent h3 {
		font-size: 2.3rem;
	}
	.singleEvent span {
		font-size: 1.8rem !important;
	}
	.single .date p, .single .price p {
		font-size: 1.7rem;
	}
	.socialSlider span.slick-arrow {
		top: -7rem;
	}
	.single footer {
		max-height: 78.1rem;
	}
	.acceptMe, footer .contact {
		height: 50vw;
	}
	footer .logo {
		margin-top: 0;
	}
	footer nav {
		margin: 0;
	}
	footer nav li {
		float: unset;
		clear: unset;
		display: table;
		padding-bottom: 2rem;
		margin: 0 auto;
	}
}
@media screen and (max-width: 600px) {
	h1 {
		font-size: 4rem !important;
	}
	h2 {
		font-size: 3.8rem;
	}
	.socialSlide h2 {
		width: 85%;
		line-height: 1;
	}
	.single .date span:first-of-type, .single .price span:first-of-type {
		font-size: 4rem !important;
	}
	.single .date span, .single .price span, .singleEvent .date span {
		font-size: 2.8rem;
	}
	.single .date p, .single .price p {
		font-size: 1.6rem;
	}
	.speiseKarte .cat {
		width: 100%;
	}
	.speiseKarte .foodMenuNav {
		margin-bottom: 1rem;
	}
}
@media screen and (max-width: 468px) {
	.socialSlider span.slick-arrow {
		font-size: 3.8rem;
		width: 2rem;
	}
	.socialSlider span.slick-prev {
		right: 4.5rem !important;
	}
	.maps, .maps iframe, footer .contact {
		height: 100vw;
	}
	.speiseKarte .left, .speiseKarte .right {
		margin-top: 1rem;
		margin-bottom: 0;
	}
	.speiseKarte td {
		width: 15%;
		padding: .25rem;
	}
	.speiseKarte .food .nr {
		width: 85%;
	}
	.speiseKarte .food td {
		padding: .5rem;
}
	.speiseKarte .drink .nr {
		width: 40%;
	}
	.speiseKarte td * {
		font-size: 1.4rem;
		line-height: 1.8rem;
	}
}
@media screen and (max-width: 368px) {
	
}