@charset "UTF-8";
/*!
Theme Name: Bayreuth Tourismus
Theme URI: https://www.elimedia.de/
Author: Eli Media
Author URI: https://www.elimedia.de
Description: Bühne frei für Bayreuth
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: bmtg
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.

Bayreuth Tourismus is based on Underscores https://underscores.me/, (C) 2012-2017 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/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
:root {
  --max-width: 1280px;
  --contentSize: 1280px;
  --wideSize: 1280px;
  --font-primary: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
  --font-bold: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  --font-heading: "DidotLTPro-Roman", serif;
}

/**
 * Genericons
 */
.menu-item-has-children a:after,
.social-navigation a:before,
.dropdown-toggle:after,
.bypostauthor > article .fn:after,
.comment-reply-title small a:before,
.pagination .prev:before,
.pagination .next:before,
.pagination .nav-links:before,
.pagination .nav-links:after,
.search-submit:before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-family: "Genericons";
  font-size: 16px;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-align: center;
  text-decoration: inherit;
  text-transform: none;
  vertical-align: top;
}

.wp-block-button__link {
  background: #008aca;
  transition: all 0.2s;
}
.wp-block-button__link:visited {
  color: white;
}
.wp-block-button__link:hover, .wp-block-button__link:focus {
  opacity: 0.8;
}

.mobile-break {
  display: block;
}

@media screen and (min-width : 768px) {
  .mobile-break {
    display: none;
  }
}
.bold {
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
}

.normal {
  font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
}

.iexfit {
  object-fit: cover;
  font-family: "object-fit: cover";
}

@media screen and (max-width: 479px) {
  .hide-on-mobile {
    display: none;
  }
  .tablet-break {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .hide-on-mobile {
    display: none;
  }
}
@media screen and (min-width: 768px) and (max-width: 1224px) {
  .hide-on-tablet {
    display: none;
  }
}
@media screen and (min-width: 1224px) {
  .hide-on-desktop {
    display: none;
  }
}
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: Inconsolata, monospace;
}

pre {
  border: 1px solid #d1d1d1;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.3125;
  margin: 0 0 1.75em;
  max-width: 100%;
  overflow: auto;
  padding: 1.75em;
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  font-weight: 400;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: 0.4375em;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #333333;
  font-family: TheSans-SemiLight, Verdana, sans-serif;
  font-size: 18.4px;
  font-size: 1.15rem;
  line-height: 1.5;
}

h1,
h2,
h3 {
  clear: both;
  font-family: var(--font-heading);
  font-weight: normal;
  font-style: normal;
  color: #0061a1;
  text-rendering: optimizeLegibility;
  scroll-margin-block-start: 90px;
}

h4,
h5,
h6 {
  clear: both;
  font-family: var(--font-bold);
  font-style: normal;
  color: #121212;
  text-rendering: optimizeLegibility;
  font-weight: normal;
  scroll-margin-block-start: 90px;
}

h1 {
  font-size: 2.2rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.6rem;
  color: #121212;
}

h4 {
  font-size: 1.2rem;
}

h5 {
  font-size: 1.1rem;
}

h6 {
  font-size: 1rem;
}

@media screen and (max-width: 1200px) {
  h1 {
    font-size: 2rem;
  }
  h2 {
    font-size: 1.6rem;
  }
  h3 {
    font-size: 1.4rem;
    color: #121212;
  }
  h4 {
    font-size: 1rem;
  }
  h5 {
    font-size: 1rem;
  }
  h6 {
    font-size: 1rem;
  }
}
/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.75em;
}

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

figure {
  margin: 0;
  /* Extra wide images within figure tags don't overflow the content area. */
  margin-top: 1rem;
}

.wp-block-image figcaption {
  color: #555;
  font-size: 13px;
  text-align: center;
}

.wp-block-image figcaption {
  margin-top: 0.5em;
  margin-bottom: 1em;
}

.wp-block-table > table {
  border-collapse: separate;
  border-spacing: 0;
  border-width: 1px 0 0 1px;
  margin: 0 0 1.75em;
  table-layout: fixed;
  width: 100%;
}

.wp-block-table.is-style-stripes {
  border-bottom: none;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
.button,
input[type=button],
input[type=reset],
input[type=submit] {
  font-size: 13.6px;
  font-size: 0.85rem;
  cursor: pointer;
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  letter-spacing: 1.5px;
  background: #008aca;
  color: white;
  text-transform: uppercase;
  border-radius: 1.7em;
  padding: 0.9em 1.7em;
  transition: all 0.2s ease-in-out;
  border: none;
}
button:hover, button:active, button:focus,
.button:hover,
.button:active,
.button:focus,
input[type=button]:hover,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:hover,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:hover,
input[type=submit]:active,
input[type=submit]:focus {
  color: white;
  background: #7ac142;
}
button:focus-within,
.button:focus-within,
input[type=button]:focus-within,
input[type=reset]:focus-within,
input[type=submit]:focus-within {
  outline: 2px dashed #7ac142;
}
button:visited,
.button:visited,
input[type=button]:visited,
input[type=reset]:visited,
input[type=submit]:visited {
  color: white;
}

.wp-block-buttons .wp-block-button {
  margin: 1.5rem 0 !important;
}
.wp-block-buttons .wp-block-button a {
  transition: all 0.2s ease-in-out;
}
.wp-block-buttons .wp-block-button a:hover, .wp-block-buttons .wp-block-button a:focus {
  opacity: 0.8;
}
.wp-block-buttons .wp-block-button a:focus {
  outline: 4px #7ac142 dotted;
}

.wp-block-button__link {
  transition: all 0.2s ease-in-out;
}

.wp-block-button__link:hover,
.wp-block-button__link:focus {
  background-color: #7ac142; /* Using color from the theme.json palette */
  color: #ffffff;
  opacity: 0.8;
}

.wp-block-button__link:focus {
  outline: 4px dotted #7ac142;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #0061a1;
}
a:visited {
  color: #0061a1;
}
a:hover, a:focus, a:active {
  color: #7ac142;
}
a:focus {
  outline: 2px dotted;
}
a:hover, a:active {
  outline: 0;
}

a {
  color: #0061a1;
  text-decoration: none;
}
a:hover {
  color: #7ac142;
}

.page-content p a {
  text-decoration: underline;
}

.desktop-page-blogsingle p a {
  text-decoration: underline;
}

.orient {
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  color: #7ac142;
  text-transform: uppercase;
  font-size: 1.1rem;
  letter-spacing: 1.5px;
  transition: all 0.25s;
  line-height: 1.6rem;
}
.orient a {
  color: #7ac142;
}
.orient a:hover, .orient a:focus {
  color: #008aca;
}
.orient:hover {
  color: #7ac142;
}

.orientlink:hover, .orientlink:focus {
  color: #008aca;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.menu-label,
.favorites-label {
  transition: opacity 0.2s ease;
}

body.fixed-nav .menu-label {
  opacity: 0 !important;
}
body.fixed-nav .favorites-menu-mobile .favorites-label {
  opacity: 0 !important;
}

/**
 * 6.2 - Menus
 */
.menu-toggle {
  visibility: visible;
  opacity: 1;
  transition: all 1s;
  transform: translate3d(0);
  position: relative;
}
.menu-toggle span {
  position: absolute;
  bottom: -1px;
  right: 9px;
  font-size: 10px;
  color: #333;
  color: #0061a1;
}

body:not(.admin-bar) .menu-toggle {
  /* Styles for .menu-toggle when admin bar is NOT present */
  margin-top: 1.04rem;
}

.rathauslink {
  display: inline;
}

.rathaussvg {
  width: 16px;
  height: 16px;
  margin-bottom: -0.1rem;
}

@media screen and (max-width: 1223px) {
  #topnav .search-overlay-trigger {
    display: none;
  }
}
@media screen and (min-width: 1223px) {
  #topnav #searchform {
    display: none;
  }
}
.site-header-menu {
  display: none;
  -webkit-flex: 0 1 100%;
  -ms-flex: 0 1 100%;
  flex: 0 1 100%;
  margin: 0.875em 1rem;
}

.site-header-menu.toggled-on,
.no-js .site-header-menu {
  display: block;
}

.site-footer .main-navigation {
  margin-bottom: 1.75em;
}

.main-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.main-navigation ul a {
  font-family: var(--font-bold);
  letter-spacing: 1px;
  text-transform: uppercase;
}

.main-navigation li {
  position: relative;
}

.main-navigation ul > li > ul > li {
  border-bottom: 1px solid #d1d1d1;
}

.main-navigation ul > li > ul > li:first-child {
  border-top: 1px solid #d1d1d1;
}

.main-navigation ul > li > ul > li:last-child {
  border: none;
}

.main-navigation li {
  border-bottom: 1px solid #d1d1d1;
}

.mobile-openinghours {
  margin-top: 0 !important;
  padding-top: 1rem !important;
  padding-bottom: 5rem !important;
}
.mobile-openinghours h2,
.mobile-openinghours h3 {
  color: #fafafa;
}
.mobile-openinghours h2 {
  margin-bottom: 0;
}
.mobile-openinghours h3 {
  margin-bottom: 0;
  margin-top: 2rem;
}

.main-navigation a {
  color: #1a1a1a;
  display: block;
  line-height: 1.3125;
  outline-offset: -1px;
  padding: 0.84375em 0;
}

.main-navigation a:hover,
.main-navigation a.focus {
  color: #7ac142;
}

.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a {
  color: #7ac142 !important;
}

.current_page_ancestor .toggled-on {
  color: #7ac142;
}

#primary-menu > li > ul > li > ul a {
  color: #1a1a1a;
  text-transform: none;
  font-family: var(--font-primary);
}
#primary-menu > li > ul > li > ul a:hover, #primary-menu > li > ul > li > ul a:active, #primary-menu > li > ul > li > ul a:focus {
  color: #7ac142;
}
#primary-menu > li > ul > li > ul li {
  border-color: #d1d1d1;
}

.main-navigation ul ul {
  display: none;
  margin-left: 0.875em;
}

.no-js .main-navigation ul ul {
  display: block;
}

.main-navigation ul .toggled-on {
  display: block;
}

.main-navigation .menu-item-has-children > a {
  margin-right: 56px;
}

.dropdown-toggle {
  background-color: transparent;
  background: #efefef;
  background: radial-gradient(circle at 18.7% 37.8%, rgb(250, 250, 250) 0%, rgb(225, 234, 238) 90%);
  border: 0;
  border-radius: 0;
  color: #008aca;
  content: "";
  height: 48px;
  padding: 0;
  position: absolute;
  right: 0;
  text-transform: none;
  top: 0;
  width: 48px;
}

.dropdown-toggle:after {
  content: "\f431";
  font-size: 24px;
  left: 1px;
  position: relative;
  width: 48px;
}

.dropdown-toggle:hover,
.dropdown-toggle:focus {
  background: radial-gradient(circle at 18.7% 37.8%, rgb(250, 250, 250) 0%, rgb(225, 234, 238) 100%);
  color: #7ac142;
}

.dropdown-toggle:focus {
  outline: thin dotted;
  outline-offset: -1px;
}

.dropdown-toggle:focus:after {
  border-color: transparent;
}

.dropdown-toggle.toggled-on:after {
  content: "\f432";
}

.mobile-menu-button {
  padding: 1rem;
  background: none;
  border: none;
  margin: 0;
}
.mobile-menu-button:hover {
  background: none;
  color: #0061a1;
}
.mobile-menu-button .container {
  display: inline-block;
  cursor: pointer;
}
.mobile-menu-button .bar1,
.mobile-menu-button .bar2,
.mobile-menu-button .bar3 {
  width: 35px;
  height: 3px;
  background-color: #008aca;
  margin: 6px 0;
  transition: 0.4s;
}
.mobile-menu-button .change .bar1 {
  -webkit-transform: rotate(-45deg) translate(-6px, 6px);
  transform: rotate(-45deg) translate(-6px, 6px);
}
.mobile-menu-button .change .bar2 {
  opacity: 0;
}
.mobile-menu-button .change .bar3 {
  -webkit-transform: rotate(45deg) translate(-6px, -7px);
  transform: rotate(45deg) translate(-6px, -7px);
}

#mainmenuwrapper {
  background: white;
}

body.fixed-nav .santahat {
  display: none !important;
}

@media screen and (min-width : 1224px) {
  body.fixed-nav #mainmenuwrapper {
    max-width: var(--max-width);
    margin: 0 auto;
    position: fixed;
    top: 0;
    background: transparent;
    left: 0;
    right: 0;
    z-index: 50000;
  }
  body.fixed-nav #mainmenuwrapper .site-header-menu #site-navigation .menu-hauptmenu-container > ul > li,
  body.fixed-nav #mainmenuwrapper .site-header-menu #site-navigation .menu-hauptmenu-englisch-container > ul > li {
    padding-top: 0.4rem;
    padding-bottom: 0.4rem !important;
  }
  .fixed-nav {
    padding-top: 98px;
  }
  body.fixed-nav .main-navigation ul li ul {
    top: 2.3rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
  }
  body.fixed-nav.admin-bar #mainmenuwrapper {
    top: 32px;
  }
  body.fixed-nav #topnav {
    display: none;
  }
  body.fixed-nav .site-branding {
    margin: 0 !important;
  }
  body.fixed-nav .site-branding img {
    width: 120px;
    padding: 0;
    margin-top: -1.2rem;
  }
  .menufix {
    display: none;
    z-index: 40000;
    position: fixed;
    top: 0;
    width: 100%;
    height: 2.3rem;
    background: white;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.25);
  }
  body.fixed-nav .menufix {
    display: block;
  }
  body.fixed-nav.admin-bar .menufix {
    top: 32px;
  }
}
@media screen and (max-width: 1224px) {
  .menu img {
    max-width: 20px;
  }
}
@media screen and (min-width : 1224px) {
  #primary-menu .pll-parent-menu-item {
    display: none;
  }
}
#menu-top > li > a {
  pointer-events: none;
}

@media screen and (max-width: 1223px) {
  #menu-toggle {
    top: 0;
    right: 0;
    position: fixed;
    z-index: 600;
    transition: all 0.3s;
  }
  .site-header-frontpage {
    top: 106px;
  }
  .massive-toggler {
    margin-top: 60px;
  }
  .site-branding {
    transform: translate3d(0);
    margin: 0;
    padding: 0.5rem 1rem;
    position: fixed;
    top: 0px;
    background: white;
    left: 0;
    width: 100%;
    z-index: 500;
    transition: all 0.6s;
  }
  body.admin-bar #menu-toggle {
    top: 46px;
  }
  body.admin-bar .site-branding {
    top: 46px;
  }
  body.admin-bar.fixed-nav #menu-toggle {
    top: 5px;
  }
  body.admin-bar.fixed-nav .site-branding {
    top: 0;
  }
  body.admin-bar.fixed-nav.adminbar-visible .site-branding {
    top: 46px;
  }
  body.admin-bar.fixed-nav.adminbar-visible #menu-toggle {
    top: 48px;
  }
  .brandingimg {
    transition: all 0.3s;
  }
  body.fixed-nav .brandingimg {
    width: 100px;
  }
  body.fixed-nav .site-branding {
    padding-bottom: 0.3rem;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.15);
  }
  body.fixed-nav #menu-toggle {
    margin: 0 0.5rem 0 0;
  }
}
@media screen and (max-width: 1223px) {
  .hidemobilenav {
    transform: translate3d(0, -100px, 0);
  }
  .hidebottommenu {
    transform: translate3d(0, 100px, 0);
  }
  .toggled-on {
    transform: translate3d(0, 0, 0) !important;
  }
  .nohide3d {
    transform: translate3d(0, 0, 0) !important;
  }
  #menu-toggle.toggled-on .site-branding {
    transform: translate3d(0, 0, 0) !important;
  }
}
.favorites-menu-mobile {
  display: block;
  top: -1.2rem;
  right: 4.5rem;
  position: fixed;
  z-index: 99999;
  transition: all 0.3s;
}
.favorites-menu-mobile span {
  position: absolute;
  bottom: 16px;
  right: 0;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #0061a1;
  font-family: var(--font-bold);
}
.favorites-menu-mobile .heart-animation {
  margin: 0;
  padding: 0;
}
.favorites-menu-mobile .heart-animation .heart {
  margin-top: 0.7rem;
  margin-right: -1.2rem;
  height: 100px;
  width: 100px;
}

body.admin-bar .favorites-menu-mobile {
  top: 1.55rem;
}

body.fixed-nav.admin-bar .favorites-menu-mobile {
  top: -1.9rem;
}

body.fixed-nav.admin-bar.adminbar-visible .favorites-menu-mobile {
  top: 0.75rem;
}

body.fixed-nav .favorites-menu-mobile {
  top: -2rem;
}

@media screen and (min-width : 1224px) {
  .favorites-menu-mobile {
    display: none !important;
  }
}
.heart-animation {
  transition: all 0.2s;
}
.heart-animation:hover {
  opacity: 0.7;
}

.favorites-menu {
  display: none;
}

@media screen and (min-width : 1224px) {
  .favorites-menu {
    position: relative;
    padding-top: 0.7rem;
    margin-right: 1rem;
  }
  .favorites-menu .heart {
    cursor: default;
    pointer-events: none;
    position: absolute;
    left: -2.6rem;
    top: -0.4rem;
  }
  .favorites-menu a {
    transition: none;
    white-space: normal;
    font-size: 0.95rem;
    color: #1a1a1a;
    padding: 0.84375em 0;
    text-decoration: none;
    font-family: var(--font-bold);
    letter-spacing: 1px;
    text-transform: uppercase;
  }
  .favorites-menu a:hover, .favorites-menu a:focus {
    color: #7ac142;
    text-decoration: underline;
  }
  .favorites-menu a:hover .favorite-count, .favorites-menu a:focus .favorite-count {
    color: #7ac142;
  }
  .favorites-menu a .favorite-count {
    color: #1a1a1a;
    font-family: var(--font-bold);
    letter-spacing: 1px;
    text-transform: uppercase;
  }
  .favorites-menu:hover .heart, .favorites-menu:focus .heart {
    filter: invert(19%) sepia(88%) saturate(7468%) hue-rotate(358deg) brightness(107%) contrast(115%);
  }
  .favorites-menu:hover a, .favorites-menu:focus a {
    text-decoration: underline;
  }
}
@media screen and (min-width : 1224px) {
  .favorites-menu {
    display: block;
    justify-content: flex-end;
  }
}
.favorites-wrapper .favorites-info {
  opacity: 0;
  visibility: hidden;
  /* Fade in when the element becomes visible */
  transition: opacity 0.5s ease-in-out;
  z-index: 9999;
  border: 3px solid #008aca;
  background: #008aca;
  color: white;
  top: 4.2rem;
  right: 0;
  position: fixed;
  max-width: 155px;
  padding: 0.3rem 0.3rem 0.2rem;
  text-align: center;
  margin-right: 1rem;
  font-size: 0.9rem;
  transition: all 250ms ease;
}
.favorites-wrapper .favorites-info:hover, .favorites-wrapper .favorites-info:focus {
  background: #0061a1;
  border-color: #0061a1;
}
.favorites-wrapper .favorites-info:hover:before, .favorites-wrapper .favorites-info:focus:before {
  border-bottom-color: #0061a1;
}
.favorites-wrapper .favorites-info:before {
  transition: all 250ms ease;
  content: "";
  position: absolute;
  top: -20px;
  right: 4.14rem;
  border: 10px solid transparent;
  border-bottom: 10px solid #008aca;
}
.favorites-wrapper .favorites-info-active {
  opacity: 1;
  visibility: visible;
}

.user-favorites {
  transition: all 0.3s;
  width: 55px;
}

@media screen and (min-width : 1224px) {
  .searchform {
    flex: 0 1 auto !important;
    padding-left: 1rem;
  }
}
/* fade labels when mobile menu open */
.menu-label,
.favorites-label {
  transition: opacity 0.2s ease;
}

#menu-toggle.toggled-on .menu-label {
  opacity: 0;
}

#menu-toggle.toggled-on ~ .favorites-menu-mobile .favorites-label {
  opacity: 0;
}

.favorites-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-contact-wrapper {
  background: #0061a1;
  /* Old browsers */
  background: -moz-linear-gradient(top, #0061a1 28%, #008aca 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #0061a1 28%, #008aca 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #0061a1 28%, #008aca 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0061a1", endColorstr="#008aca", GradientType=0);
  /* IE6-9 */
  display: none;
  color: white;
  padding: 0 1rem;
  width: 100%;
}
.menu-contact-wrapper a {
  color: white;
  text-decoration: underline;
}
.menu-contact-wrapper a:hover {
  color: #7ac142;
}
.menu-contact-wrapper p {
  margin: 1rem 0;
}
.menu-contact-wrapper .menu-contact-wrapper-inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.menu-contact-wrapper .menu-contact-wrapper-inner .menu-contact-wrapper-inner-left {
  flex: 1 0 auto;
}
.menu-contact-wrapper .menu-contact-wrapper-inner .menu-contact-wrapper-inner-right {
  flex: 0 1 auto;
}
.menu-contact-wrapper .menuhead {
  font-size: 1.5rem;
  line-height: 1.9rem;
  margin: 1rem 0 0;
}
.menu-contact-wrapper .menuhead a {
  color: white;
}
.menu-contact-wrapper .menuhead a:hover {
  color: #7ac142;
}

.massive-toggler {
  display: block;
}

.ajaxmenu {
  display: none;
}

@media screen and (min-width : 1224px) {
  .main-navigation div > ul > li:hover > ul,
  .main-navigation div > ul > li.force-show > ul {
    top: 6rem;
    left: 1rem;
    width: 1170px;
  }
  body.fixed-nav .main-navigation div > ul > li:hover > ul,
  body.fixed-nav .main-navigation div > ul > li.force-show > ul {
    top: 2.3rem;
  }
  .menu-contact-wrapper {
    display: none;
  }
  .site-header-main {
    display: flex;
    width: 100%;
    flex-flow: row wrap;
    align-items: flex-end !important;
    margin-bottom: 0;
    position: relative;
    align-items: flex-start;
    justify-content: space-between;
    padding-right: 1rem;
  }
  .site-branding {
    flex: 0 1 auto;
    width: 200px;
    margin: 2rem 0.2rem 0 0 !important;
    transition: all 0.25s;
    padding-right: 0;
  }
  .site-branding:hover {
    opacity: 0.8;
  }
  .site-header-menu {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin: 0;
    justify-content: flex-end;
    width: 80%;
  }
  .main-navigation li.focus > a {
    color: #7ac142;
  }
  .main-navigation a {
    transition: none;
    white-space: normal;
    font-size: 0.95rem;
  }
  .main-navigation div > ul > li {
    padding-left: 0.7rem;
    padding-right: 0.3rem;
  }
  .main-navigation div > ul > li:hover > ul, .main-navigation div > ul > li.force-show > ul {
    max-width: 1170px;
    visibility: visible;
    transform: translateY(0%);
    opacity: 1;
    display: flex;
  }
  .main-navigation li {
    position: static;
  }
  .main-navigation li:last-child {
    padding-right: 0 !important;
  }
  .main-navigation ul {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
  }
  .main-navigation ul li {
    border: none;
    padding-right: 1rem;
    padding-bottom: 0.7rem;
  }
  .main-navigation ul li a {
    margin-right: 0 !important;
    padding: 0;
    display: inline;
  }
  .main-navigation ul li > ul {
    transition-delay: 0.15s;
  }
  .main-navigation ul li ul {
    max-width: 1170px;
    padding-bottom: 20px;
    min-height: 585px;
    visibility: visible;
    opacity: 1;
    left: -16.4rem;
    right: 0;
    top: 2.1rem;
    background: white;
    z-index: 99999999999999;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.25);
    overflow: hidden;
    flex-flow: column;
    justify-content: flex-start;
    padding-top: 1rem;
    display: flex;
    flex-flow: column wrap;
    align-content: flex-start;
    visibility: hidden;
    opacity: 0;
  }
  .main-navigation ul li ul .selected .beforeli {
    width: 0.5rem;
    background: #7ac142;
    height: 100%;
    display: block;
    position: absolute;
    left: -2rem;
    top: 0;
  }
  .main-navigation ul li ul li {
    border: none;
    margin-left: 2rem;
    padding-bottom: 0;
    width: 14rem;
  }
  .main-navigation ul li ul li a {
    position: relative;
  }
  .main-navigation ul li ul li:first-child {
    border: none;
  }
  .main-navigation ul li ul li:hover ul, .main-navigation ul li ul li.force-show ul {
    top: 0;
    left: 15.6rem;
    right: auto;
    width: 56.4rem;
    background: transparent;
    box-shadow: none;
    display: flex;
    flex-flow: column wrap;
    justify-content: flex-start;
    padding-top: 0;
    visibility: visible;
    opacity: 1;
    border: none;
    height: 435px;
  }
  .main-navigation ul li ul li:hover ul li, .main-navigation ul li ul li.force-show ul li {
    padding-bottom: 0;
    border: none;
    visibility: visible;
    opacity: 1;
    padding-left: 2rem;
    padding-right: 0;
    margin-left: 0;
  }
  .main-navigation ul li ul li:hover ul li .beforeli, .main-navigation ul li ul li.force-show ul li .beforeli {
    display: none;
  }
  .main-navigation ul li ul li:hover ul li a:hover, .main-navigation ul li ul li.force-show ul li a:hover {
    padding-left: 0;
    border-left: none;
  }
  .main-navigation ul li ul li:hover ul li a:focus, .main-navigation ul li ul li.force-show ul li a:focus {
    padding-left: 0;
    border-left: none;
  }
  .main-navigation ul li ul li a {
    padding: 0.8rem 0;
    border-bottom: 1px solid #7ac142;
    color: #7ac142;
    display: inline-block;
    width: 14rem;
  }
  .main-navigation ul li ul li ul {
    top: 0;
    left: 15.6rem;
    right: auto;
    flex-flow: column wrap;
    margin-top: 1rem;
    width: 56.4rem;
    z-index: 1;
  }
  .main-navigation ul li ul li ul li {
    padding-left: 0 !important;
    margin-left: 2rem !important;
  }
  .main-navigation ul li ul li ul li a {
    border-color: #dedede;
  }
  .main-navigation ul li ul li ul li ul {
    display: none !important;
  }
  .main-navigation ul ul {
    display: flex;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0;
    z-index: 9;
    visibility: hidden;
    opacity: 0;
    position: absolute;
    right: 0;
    left: 0;
    top: 2.5rem;
  }
  .mainselect a {
    color: #7ac142;
  }
  .focus a.focus {
    color: #7ac142;
  }
  .dropdown-toggle,
  .main-navigation ul .dropdown-toggle.toggled-on,
  .menu-toggle,
  .site-header .social-navigation,
  .site-footer .main-navigation {
    display: none;
  }
  .menu-hauptmenu-container li.force-show ul,
  .menu-hauptmenu-container li:hover ul,
  .menu-hauptmenu-container li a:focus + ul,
  .menu-hauptmenu-englisch-container li.force-show ul,
  .menu-hauptmenu-englisch-container li:hover ul,
  .menu-hauptmenu-englisch-container li a:focus + ul {
    display: flex;
  }
  .ajaxmenu {
    display: block;
    z-index: -1;
    position: absolute;
    top: 0;
    left: 47.6rem;
    right: auto;
    color: black;
    width: 23rem;
    max-height: 34rem;
    margin-top: 2rem;
    padding-left: 1rem;
    overflow: hidden;
  }
  .ajaxmenu .ajlink {
    display: none;
  }
  .ajaxmenu a {
    text-transform: initial;
    font-weight: normal;
  }
  .ajaxmenu h2 {
    margin: 0.8rem 0 0.4rem;
    text-transform: initial;
    font-size: 1.4rem;
    line-height: 1.3;
  }
  .ajaxmenu p {
    margin: 0;
    font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
    font-weight: normal;
    color: #333333;
    text-transform: initial;
    letter-spacing: 0;
    line-height: 1.5rem;
  }
  .ajaxmenu .menuimagebox {
    height: 10.5rem;
  }
  .ajaxmenu img {
    width: 21rem;
    height: 10.5rem;
    object-fit: cover;
  }
  .activelink {
    display: block !important;
    visibility: visible;
    opacity: 1;
  }
  .navbg {
    position: absolute;
    min-height: 435px;
    opacity: 0;
    visibility: hidden;
    left: -16.4rem;
    right: 0;
    top: 2.1rem;
    background: white;
    z-index: 5;
    transition: all 0.25s;
  }
  .navbg-active {
    visibility: visible;
    opacity: 1;
    left: -16.4rem;
    right: 0;
    top: 2.1rem;
    z-index: 5;
  }
}
.sidebarmenu {
  z-index: 9;
  position: fixed;
  width: 18rem;
  right: -15.7rem;
  top: 38vh;
  display: flex;
  flex-flow: row;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  min-height: 10rem;
  max-height: 10rem;
  transition: all 0.4s;
  transition-timing-function: ease-in-out;
  overflow: hidden;
}
.sidebarmenu p a {
  text-transform: initial;
  line-height: 1.9rem;
}
.sidebarmenu .kontakttext {
  flex: 0 1 auto;
  background: #008aca;
  position: relative;
  width: 2.5rem;
  transition: all 0.7s;
}
.sidebarmenu .kontakttext p {
  visibility: visible;
  hyphens: none !important;
  opacity: 1;
  transition: all 0.5s;
  margin: 0;
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  color: white;
  font-size: 1rem;
  text-transform: uppercase;
  position: absolute;
  left: -13px;
  text-align: center;
  top: 4.3rem;
  transform: rotate(-90deg);
}
.sidebarmenu .kontaktinfotext {
  padding: 0 1rem;
  flex: 1 0 auto;
  width: 80%;
  background: white;
}
.sidebarmenu .kontaktinfotext h2 {
  margin-top: 0.5rem;
  margin-bottom: 0;
  font-size: 2rem;
}
.sidebarmenu:hover {
  max-height: 800px;
  right: 0;
}
.sidebarmenu:hover .kontakttext {
  width: 15px;
}
.sidebarmenu:hover .kontakttext p {
  visibility: none;
  opacity: 0;
}

@media screen and (max-width: 1235px) {
  #sidebarmenu {
    display: none;
  }
}
#topnav {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
#topnav .searchform {
  margin-bottom: 1.5rem;
  width: 50%;
  flex: 1 0 auto;
  order: 1;
}
#topnav .logo-oberfranken {
  order: 3;
  margin-bottom: 1.5rem;
  text-align: right;
}
#topnav .menu-top-container {
  display: none;
}

@media screen and (min-width : 1224px) {
  #topnav {
    z-index: 9;
    justify-content: flex-end;
    align-items: center;
    flex: 1 0 auto;
    width: 100%;
    text-align: right;
  }
  #topnav .menu-top-container {
    display: block;
  }
  #topnav .searchform {
    margin-bottom: initial;
    width: initial;
    order: initial;
  }
  #topnav .logo-oberfranken {
    order: initial;
    width: initial;
    flex: initial;
    margin: initial;
    margin-left: 1rem;
    transition: all 0.2s;
  }
  #topnav .logo-oberfranken:hover, #topnav .logo-oberfranken:focus {
    opacity: 0.7;
  }
  #topnav .logo-oberfranken img {
    width: 65px;
  }
  #topnav ul {
    width: 30px;
    list-style: none;
    display: inline-block;
    padding: 0;
    margin: 0;
  }
  #topnav ul li {
    padding: 0;
    margin: 0;
  }
  .menu-top-container {
    margin-left: 0.8rem;
    margin-top: 0.3rem;
  }
  .menu-top-container ul li {
    position: relative;
  }
  .menu-top-container ul li a img {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  }
  .menu-top-container ul li:hover .sub-menu, .menu-top-container ul li:focus .sub-menu {
    display: block !important;
  }
  .menu-top-container ul li .sub-menu {
    position: absolute;
    display: none !important;
  }
  .menu-top-container ul li .sub-menu.is-open {
    display: block !important;
  }
  .menu-top-container ul li .sub-menu a img {
    transition: all 0.25s;
    -webkit-font-smoothing: subpixel-antialiased;
  }
  .menu-top-container ul li .sub-menu a:hover img, .menu-top-container ul li .sub-menu a:focus img {
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
  }
}
/*--------------------------------------------------------------
# Paging Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Other Navigation
--------------------------------------------------------------*/
.bottom-paging-nav {
  width: 60%;
  margin: 0 auto;
}
.bottom-paging-nav button {
  width: 100%;
}

.comment-navigation,
.post-navigation,
.paging-navigation {
  padding: 1em 0;
  text-align: left;
  overflow: hidden;
}

@media screen and (min-width: 50em) {
  .comment-navigation,
  .post-navigation,
  .paging-navigation {
    padding: 2em 3em;
  }
}
.nav-links {
  max-width: 45em;
  margin: 0 auto;
  padding: 0 0.4em;
}

.comment-navigation a,
.post-navigation a,
.paging-navigation a {
  display: block;
  width: 100%;
  text-decoration: none;
  padding: 0.7em;
  border: 1px solid #c3c3c3;
  border-radius: 3px;
}

.comment-navigation a:hover,
.comment-navigation a:focus,
.post-navigation a:hover,
.post-navigation a:focus,
.paging-navigation a:hover,
.paging-navigation a:focus {
  border-color: #0061a1;
}

.post-navigation .post-title {
  font-size: 1.2em;
  font-weight: 700;
}

.post-navigation a:hover .post-title,
.post-navigation a:focus .post-title {
  text-decoration: underline;
}

.nav-previous {
  padding-bottom: 1em;
}

@media screen and (min-width: 30em) {
  .nav-links {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    padding: 0;
  }
  .comment-navigation .nav-previous,
  .post-navigation .nav-previous {
    display: flex;
    align-items: stretch;
    float: left;
    width: 48%;
  }
  .nav-previous {
    padding-bottom: 0;
  }
  .comment-navigation .nav-next,
  .post-navigation .nav-next {
    display: flex;
    align-items: stretch;
    float: right;
    text-align: right;
    width: 48%;
  }
}
.post-navigation .meta-nav {
  display: block;
}

@media screen and (min-width: 30em) {
  .post-navigation .meta-nav {
    padding-bottom: 1em;
  }
}
.paging-navigation {
  width: 100%;
  text-align: center;
}

.paging-navigation ul {
  display: inline-block;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.paging-navigation li {
  display: inline-block;
}

.paging-navigation li a {
  padding: 0.3em 1.4em;
}

.paging-navigation .current {
  padding: 0.8em 1.1em;
  font-weight: 700;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
aside {
  padding: 1rem;
  margin: 0;
  width: 100%;
  flex: 1 0 auto;
  height: fit-content;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.25);
  display: block;
  padding-top: 0.5rem;
  padding-bottom: 0;
}
aside .textfeld-topsidebar {
  padding-top: 1.5rem;
}
aside iframe {
  margin-top: 1rem;
}
aside section {
  flex: 1 0 auto;
}
aside p {
  margin-bottom: 0.3rem;
}
aside h2,
aside h3,
aside h4 {
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  color: black;
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  font-size: 1.1rem;
}
aside section {
  width: 100%;
}
aside .vgnWidget {
  margin: 0 auto;
}

@media screen and (min-width : 1224px) {
  aside {
    padding-top: 0;
    flex: 1 0 auto;
    margin: 0 0 0 1rem;
    width: 30%;
  }
  .widget-area {
    margin-bottom: 2rem;
  }
}
#searchform {
  display: inline-block;
  width: 100%;
}
#searchform > div {
  display: flex;
  flex-flow: row;
}
#searchform > div label {
  flex: 1 0 auto;
}
#searchform > div label input {
  border: none;
  border-bottom: 1px solid #008aca;
  border-radius: 0;
  width: 100%;
}
#searchform > div label input:focus {
  outline: none;
  border-color: #7ac142;
}
#searchform > div button[type=submit] {
  flex: 0 1 auto;
  border-radius: 50%;
  border: none;
  outline: none;
  box-shadow: none;
  display: inline-block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  padding: 0.7rem;
}
#searchform > div button[type=submit]:hover {
  background: #7ac142;
}
#searchform > div button[type=submit]:focus {
  background: #7ac142;
  border: 2px dotted grey;
}

.smmitte {
  background: #008aca;
  border-radius: 50%;
  border: none;
  outline: none;
  box-shadow: none;
  display: inline-block;
  width: 40px;
  height: 40px;
  border: 2px solid #f5f5f5;
  border-radius: 50%;
  padding: 0.7rem;
}
.smmitte:hover {
  background: #7ac142;
  cursor: pointer;
}
.smmitte:focus {
  background: #7ac142;
  border: 2px dotted grey;
}

#searchsubmit img {
  width: 1rem;
  height: 1rem;
}

.widget_categories a {
  font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
  text-transform: initial;
}

.widget_recent_entries a {
  font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
  text-transform: initial;
}

.tagcloud a {
  padding: 0 0 0 0.2rem;
  font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
  text-transform: initial;
  font-size: 0.9rem !important;
}

.widget {
  margin: 0 0 1.5em;
  width: 100%;
  /* Make sure select elements fit in widgets. */
}
.widget select {
  max-width: 100%;
}

.siblingmenu {
  padding: 0 1rem;
}
.siblingmenu ul {
  list-style: disc;
  padding: 0.5rem 0;
  margin: 0 0 0 1rem;
}
.siblingmenu ul a li {
  text-transform: none;
  font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
/**
 * 11.1 - Header
 */
.site-header {
  padding: 0;
}

.site-header {
  position: relative;
}
.site-header .site-header-main {
  max-width: var(--max-width);
  margin: 0 auto;
}

.site-header-frontpage {
  position: relative;
  height: calc(100vh - 60px);
  overflow: hidden;
}

.site-header-main {
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width : 1224px) {
  .site-header-main {
    height: 98px;
  }
  body.fixed-nav .site-header-main {
    height: initial;
  }
}
.my-icon:before {
  content: "\f101";
  font: normal 16px/1 "Genericons";
  display: inline-block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.site-branding {
  /* Avoid overflowing wide custom logo in small screens in Firefox and IEs */
  max-width: 100%;
  min-width: 0;
}
.site-branding h1 {
  margin: 0;
  padding: 0;
  line-height: 0;
}
.site-branding img {
  width: 170px;
}

.custom-logo-link {
  display: block;
}

.custom-logo {
  max-width: 180px;
}

.site-title {
  font-family: Montserrat, "Helvetica Neue", sans-serif;
  font-size: 23px;
  font-size: 1.4375rem;
  font-weight: 700;
  line-height: 1.2173913043;
  margin: 0;
}

.site-branding .site-title a {
  color: #1a1a1a;
}

.site-branding .site-title a:hover,
.site-branding .site-title a:focus {
  color: #007acc;
}

.wp-custom-logo .site-title {
  margin-top: 0.608695652em;
}

.site-description {
  color: #686868;
  display: none;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.0769230769;
  margin: 0.538461538em 0 0;
}

.menu-toggle {
  background-color: transparent;
  color: #1a1a1a;
  font-size: 13px;
  font-size: 0.8125rem;
  margin: 1.076923077em 0.5rem;
  padding: 0.769230769em;
}

.no-js .menu-toggle {
  display: none;
}

.menu-toggle:hover,
.menu-toggle:focus {
  background-color: transparent;
  border: 1px dotted #d1d1d1;
  outline: thin dotted;
  border-radius: 0;
}

.menu-toggle:focus {
  outline: 0;
}

.menu-toggle.toggled-on:focus {
  outline: thin dotted;
}

@media screen and (min-width : 768px) {
  .site-header-frontpage {
    box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.25);
    margin-bottom: 4rem;
    margin-left: 1rem;
    margin-right: 1rem;
  }
}
@media screen and (min-width : 1224px) {
  .site-branding {
    padding-left: 1rem;
  }
}
.santahat {
  display: none;
}

@media screen and (min-width: 1380px) {
  .site-branding {
    overflow: visible;
    position: relative;
  }
  .santahat {
    display: block !important;
    position: absolute;
    top: -30px;
    left: -35px;
    z-index: 5;
    pointer-events: none;
    width: 100px !important;
  }
}
@media screen and (max-width: 1224px) {
  .oberfranken-desktop {
    display: none !important;
  }
}
/*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus {
  outline: 0;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: #fff;
  cursor: pointer;
}

.flickity-button:focus {
  outline: 0;
  box-shadow: 0 0 0 5px #19f;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: 10px;
}

.flickity-prev-next-button.next {
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

.hometop h2 {
  width: 100%;
  padding: 0 !important;
}

.frontpageh2 {
  position: relative;
  margin-top: 2rem;
  margin-bottom: 2rem;
  margin-left: 1rem;
}

.frontpageh2::after {
  position: absolute;
  content: "";
  height: 1px;
  /* adjust this to move up and down. you may have to adjust the line height of the paragraph if you move it down a lot. */
  bottom: -12px;
  margin: 0 auto;
  left: 0;
  width: 7rem;
  background: #0061a1;
}

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

.center.frontpageh2::after {
  right: 0;
}

.hometopchild {
  margin: 0 0 4rem;
  display: block;
  transition: all 0.2s ease-in-out;
}
.hometopchild article {
  display: flex;
  flex-flow: column;
  height: 100%;
}
.hometopchild article h2,
.hometopchild article h3 {
  margin-bottom: 0.3rem;
  font-family: "DidotLTPro-Roman", serif;
  color: #0061a1;
  font-size: 1.3rem;
  line-height: 1.4;
  text-transform: initial;
  letter-spacing: 0;
}
.hometopchild article .posted-on {
  color: #7ac142;
  margin-bottom: 0.5rem;
  margin-top: 0;
}
.hometopchild img {
  width: 100%;
  display: block;
  height: 230px;
  object-fit: cover;
}
.hometopchild .anzeige {
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  text-transform: uppercase;
  position: absolute;
  left: 0;
  top: 0;
  padding: 0 0.5rem;
  letter-spacing: 2px;
  background: white;
  font-size: 0.8rem;
}
.hometopchild p {
  z-index: 9;
  color: #333333;
  margin-top: 0;
  flex: 1 0 auto;
}
.hometopchild .mehr {
  font-size: 0.9rem;
  color: #008aca;
  flex: 0 1 auto;
}
.hometopchild .shadowbox {
  position: relative;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0);
  transition: all 0.2s ease-in-out;
  height: 100%;
  width: 100%;
}
.hometopchild .shadowbox::after {
  content: "";
  position: absolute;
  top: -100%;
  z-index: -1;
  width: 100%;
  height: 100%;
  opacity: 0;
  border-radius: 5px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
  transition: opacity 0.2s ease-in-out;
}
.hometopchild p {
  transition: all 0.2s ease-in-out;
}
.hometopchild .image-container img,
.hometopchild .box img {
  transition: all 0.2s ease-in-out;
}
.hometopchild:hover img, .hometopchild:focus img {
  filter: grayscale(0);
  transform: scale(1.015);
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.15);
}
.hometopchild:hover h2,
.hometopchild:hover h3, .hometopchild:focus h2,
.hometopchild:focus h3 {
  color: #7ac142;
}
.hometopchild:hover .posted-on, .hometopchild:focus .posted-on {
  opacity: 0.7;
}
.hometopchild:hover p, .hometopchild:focus p {
  opacity: 0.7;
}
.hometopchild:hover .shadowbox::after, .hometopchild:focus .shadowbox::after {
  opacity: 1;
}
.hometopchild:hover .mehr, .hometopchild:focus .mehr {
  color: #7ac142;
  border-color: #7ac142;
}

.contentdownloads .hometopchild {
  text-align: center;
}
.contentdownloads .hometopchild .downloaditem {
  text-align: left;
}
.contentdownloads .hometopchild a img {
  max-height: 340px;
  width: auto;
  transition: all 0.2s;
  margin: 0 auto;
}
.contentdownloads .hometopchild img:hover, .contentdownloads .hometopchild img:focus {
  box-shadow: none !important;
}

@media screen and (min-width : 768px) {
  .sectionhighlights .frontpageh2 {
    margin-left: 0;
  }
  .archivbuttons {
    max-height: 45px;
    margin: 0 1rem 0 auto;
  }
  .hometop {
    max-width: var(--max-width);
    margin: 0 auto;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
  }
  .hometop h2 {
    width: 100%;
  }
  .hometop article {
    display: flex;
    flex-flow: column;
    height: 100%;
  }
  .hometop article h2,
  .hometop article h3 {
    margin-bottom: 0.3rem;
    font-family: "DidotLTPro-Roman", serif;
    color: #0061a1;
    font-size: 1.4rem;
    line-height: 1.4;
    text-transform: initial;
    letter-spacing: 0;
  }
  .hometop article .posted-on {
    margin-bottom: 0.5rem;
    margin-top: 0;
  }
  .hometop .hometopchild {
    display: flex;
    flex-flow: column;
    width: 29%;
    flex: 0 1 auto;
    margin: 1rem 1rem 2rem;
  }
  .hometop .hometopchild p {
    margin-bottom: 0.5rem;
  }
  .hometop .hometopchild .mehr {
    margin-bottom: 0;
  }
  .hometop-frontpage {
    justify-content: space-between;
  }
}
@media screen and (min-width : 1224px) {
  .hometop .hometopchild {
    width: 30.6%;
  }
}
.sectionhighlights {
  max-width: var(--max-width);
  margin: 0 auto;
}
.sectionhighlights .highlights h2 {
  width: 100%;
}
.sectionhighlights .highlights .highlights--child {
  display: block;
  margin-bottom: 4rem;
}
.sectionhighlights .highlights .highlights--child picture {
  overflow: hidden;
}
.sectionhighlights .highlights .highlights--child picture img {
  width: 100%;
  max-width: 100%;
  object-fit: cover;
  max-height: 400px;
}
.sectionhighlights .highlights .highlights--child .highlights--content {
  padding: 0 1rem;
}
.sectionhighlights .highlights .highlights--child .highlights--content h3 {
  color: #0061a1;
  margin: 1rem 0 0.5rem;
}
.sectionhighlights .highlights .highlights--child .highlights--content p {
  margin-top: 0;
  color: #333333;
  max-width: 360px;
}
.sectionhighlights .highlights .highlights--child .highlights--content .mehr {
  color: #0061a1;
}
.sectionhighlights .highlights .highlights--child:hover h3, .sectionhighlights .highlights .highlights--child:focus h3 {
  opacity: 0.7;
}
.sectionhighlights .highlights .highlights--child:hover p, .sectionhighlights .highlights .highlights--child:focus p {
  color: #0061a1;
}
.sectionhighlights .highlights .highlights--child:hover .mehr, .sectionhighlights .highlights .highlights--child:focus .mehr {
  opacity: 0.7;
}

@media screen and (min-width : 768px) {
  .sectionhighlights {
    padding: 0 1rem;
  }
  .sectionhighlights .highlights {
    background: #008aca;
    height: 1200px;
    padding: 0;
    display: grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: 25% 25% 25% 25%;
    gap: 0;
  }
  .sectionhighlights .highlights .highlights--child {
    margin: 0;
    width: 100%;
    grid-row: 1;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: transparent;
  }
  .sectionhighlights .highlights .highlights--child picture {
    height: 100%;
    width: 100%;
    overflow: hidden;
  }
  .sectionhighlights .highlights .highlights--child picture img {
    height: 100%;
    object-fit: cover;
    overflow: hidden;
    max-height: initial;
  }
  .sectionhighlights .highlights .highlights--child:hover h3, .sectionhighlights .highlights .highlights--child:focus h3 {
    opacity: 1;
    color: #008aca;
  }
  .sectionhighlights .highlights .highlights--child:hover p, .sectionhighlights .highlights .highlights--child:focus p {
    color: #008aca;
  }
  .sectionhighlights .highlights .highlights--child:hover .mehr, .sectionhighlights .highlights .highlights--child:focus .mehr {
    opacity: 1;
  }
  .sectionhighlights .highlights .highlights--child:hover picture img, .sectionhighlights .highlights .highlights--child:focus picture img {
    filter: grayscale(0);
    transform: scale(1.07) translateZ(0);
  }
  .sectionhighlights .highlights .highlights--child .highlights--content {
    padding: 0;
    position: absolute;
    left: 0;
    bottom: 1rem;
    display: block;
  }
  .sectionhighlights .highlights .highlights--child .highlights--content .mehr {
    display: none;
  }
  .sectionhighlights .highlights .highlights--child .highlights--content h3,
  .sectionhighlights .highlights .highlights--child .highlights--content p {
    display: block;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .sectionhighlights .highlights .highlights--child .highlights--content p {
    margin-bottom: 0;
    line-height: 1.7;
  }
  .sectionhighlights .highlights .highlights--child .highlights--content span {
    padding: 0.23em 0 0.05em;
    background-color: hsla(0, 0%, 100%, 0.9);
    box-shadow: 0.5rem 0 0 hsla(0, 0%, 100%, 0.9), -0.5rem 0 0 hsla(0, 0%, 100%, 0.9);
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(1) {
    grid-column: 1/5;
    grid-row: 1/3;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(1) img {
    filter: grayscale(0);
  }
  .sectionhighlights .highlights .highlights--child:nth-child(1) h3 {
    font-size: 2.2rem;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(2) {
    grid-column: 1/2;
    grid-row: 3;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(3) {
    grid-column: 2/3;
    grid-row: 3;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(4) {
    grid-column: 1/2;
    grid-row: 4;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(5) {
    grid-column: 2/3;
    grid-row: 4;
  }
}
@media screen and (min-width : 1224px) {
  .sectionhighlights .highlights {
    height: 570px;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }
  .sectionhighlights .highlights .highlights--child .highlights--content {
    left: 0.5rem;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(1) {
    grid-column: 1/3;
    grid-row: 1/span 3;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(1) img {
    filter: grayscale(0);
  }
  .sectionhighlights .highlights .highlights--child:nth-child(1) h3 {
    font-size: 2.2rem;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(2) {
    grid-column: 3/4;
    grid-row: 1;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(3) {
    grid-column: 4/5;
    grid-row: 1;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(4) {
    grid-column: 3/4;
    grid-row: 2;
  }
  .sectionhighlights .highlights .highlights--child:nth-child(5) {
    grid-column: 4/5;
    grid-row: 2;
  }
}
.front-sections {
  margin: 4rem 0;
  padding: 0 1rem;
}

.aufzug {
  display: flex;
  flex-flow: row wrap;
  max-width: var(--max-width);
  margin: 8rem auto 4rem;
  align-items: center;
}
.aufzug .front-secondtext {
  font-family: "DidotLTPro-Roman", serif;
  margin: 0 1rem;
  max-width: 1000px;
  color: #0061a1;
  font-size: 22px;
  line-height: 1.5;
  flex: 1 0 auto;
  width: 70%;
  order: 2;
}
.aufzug .opernhaus-badge {
  margin-bottom: 2rem;
  order: 1;
  width: 100%;
  text-align: center;
}
@media (min-width: 1224px) {
  .aufzug .opernhaus-badge {
    margin-bottom: 0;
  }
}
.aufzug .opernhaus-badge img {
  width: 100%;
}

@media (max-width: 1224px) {
  .bannerimage {
    transition: all 3s !important;
  }
  .greyscroll {
    transition: all 3s !important;
  }
  .colorin {
    filter: grayscale(0%) !important;
    opacity: 1 !important;
  }
  .colorin-header-mobile {
    filter: grayscale(0%) !important;
    opacity: 1 !important;
  }
}
.bannerimage {
  transition: all 1.5s !important;
}

@media screen and (min-width : 1224px) {
  .colorin-header {
    filter: grayscale(0%) !important;
    opacity: 1 !important;
  }
}
.relative {
  position: relative;
}

.frontpage-events {
  display: flex;
  flex-flow: row wrap;
  margin-top: -2rem;
}
.frontpage-events .kalendertext {
  margin: 0 1rem 1.5rem;
}
.frontpage-events .stadt-land-leben {
  width: 100%;
  margin: 0;
}
.frontpage-events .stadt-land-leben a {
  line-height: 0;
  display: block;
}
.frontpage-events .stadt-land-leben img {
  width: 100%;
  transition: all 0.2s;
}
.frontpage-events .stadt-land-leben img:hover, .frontpage-events .stadt-land-leben img:focus {
  opacity: 0.8;
}

@media screen and (min-width : 768px) {
  .frontpage-events {
    justify-content: center;
    align-items: center;
    padding-right: 1rem;
  }
  .frontpage-events .kalendertext {
    width: 30%;
    margin-left: 0;
  }
  .frontpage-events .stadt-land-leben {
    width: 65%;
  }
}
.newsletter {
  position: relative;
  color: white;
  padding: 2rem 1rem 3rem;
  margin: 4rem 0 4rem;
  font-size: 16px;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0061a1+28,008aca+100 */
  background: #0061a1;
  /* Old browsers */
  background: -moz-linear-gradient(top, #0061a1 28%, #008aca 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #0061a1 28%, #008aca 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #0061a1 28%, #008aca 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0061a1", endColorstr="#008aca", GradientType=0);
  /* IE6-9 */
}
.newsletter .newswrap {
  max-width: var(--max-width);
  margin: 1rem auto 0;
}
.newsletter .newswrap h2 {
  color: white;
  max-width: var(--max-width);
  margin: 0 auto;
}
@media screen and (min-width : 1224px) {
  .newsletter .newswrap h2 {
    text-align: center;
  }
  .newsletter .newswrap p {
    font-size: 18px;
    text-align: center;
    max-width: 940px;
    margin: 1rem auto;
  }
}
.newsletter .newswrap a {
  display: inline-block;
  margin: 1.5rem 0.5rem 0;
  background: #7ac142;
  text-align: center;
}
.newsletter .newswrap a:hover, .newsletter .newswrap a:focus {
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.25);
}

@media screen and (min-width : 1224px) {
  .newsletter .newswrap {
    font-size: 18px;
  }
  .newsletter .newswrap h2 {
    text-align: center;
  }
}
.grayscale {
  filter: grayscale(100%);
  transition: all 0.25s;
}

.smoothtransition {
  transition: all 0.25s;
}

.frontcomp {
  margin: 0 1rem;
}

.mehr {
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  display: block;
  margin-top: 0.5rem;
  margin-left: 0.2rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #008aca;
  transition: all 0.25s;
  letter-spacing: 1.25px;
  text-transform: uppercase;
}
.mehr:hover, .mehr:focus {
  border-color: #7ac142;
  border-bottom: 2px solid #7ac142;
}

.blognewslink {
  text-transform: none;
  font-size: 1.6rem;
}
.blognewslink:hover, .blognewslink:focus {
  color: #7ac142;
}

@media screen and (min-width : 768px) {
  .newswrap {
    padding: 1rem;
  }
  .front-sections {
    padding: 0;
  }
  .menulogowrap {
    box-shadow: none;
  }
  #nochmehrbayreuth {
    max-width: var(--max-width);
    margin: 5rem auto;
  }
}
@media screen and (min-width : 1224px) {
  .aufzug .opernhaus-badge {
    width: 20%;
    order: 2;
  }
  .site-header-frontpage {
    margin: 0 1rem;
    box-shadow: 3px 3px 33px rgba(0, 0, 0, 0.25);
  }
  .newsletter {
    max-width: 100% !important;
    margin: 6rem 0 !important;
  }
}
.type-news a h2,
.type-post a h2 {
  transition: all 0.5s;
  margin-top: 1rem;
}
.type-news a .mehr,
.type-post a .mehr {
  margin-top: 0.5rem;
}
.type-news a img,
.type-post a img {
  transition: all 0.5s;
  box-shadow: 3px 3px 30px rgba(0, 0, 0, 0);
}
.type-news a:hover h2, .type-news a:focus h2,
.type-post a:hover h2,
.type-post a:focus h2 {
  color: #7ac142;
}
.type-news a:hover img, .type-news a:focus img,
.type-post a:hover img,
.type-post a:focus img {
  box-shadow: 3px 3px 30px rgba(0, 0, 0, 0.25);
}

.ausblendenbutton:hover, .ausblendenbutton:focus {
  opacity: 1 !important;
}

.imfokustext.hide {
  width: auto;
  min-width: 120px;
  background: transparent;
  box-shadow: none;
  border: none;
  padding: 0.5rem 1rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.imfokustext.hide img {
  display: none;
}
.imfokustext.hide p {
  display: none;
}
.imfokustext.hide h2 {
  display: none;
}
.imfokustext.hide .innertextcontent {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.imfokustext.hide .ausblendenbutton {
  background: #ac742b !important;
  color: white !important;
  border: 2px solid #ac742b !important;
  margin: 0;
  padding: 0.5rem 1rem;
  font-size: 0.8rem;
  line-height: 1.2;
  border-radius: 20px;
  text-align: center;
  display: inline-block;
  width: auto;
  min-width: 100px;
}
.imfokustext.hide .fokusfirstbutton {
  display: none !important;
}

.imfokustext {
  position: absolute;
  z-index: 2;
  top: 7rem;
  left: 1rem;
  right: 1rem;
  background: #fefce8;
  margin: 1rem auto;
  padding: 1rem;
  border-radius: 15px;
  color: #ac742b;
  max-width: 850px;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);
}
.imfokustext .innertextcontent {
  position: relative;
}
.imfokustext .innertextcontent img {
  position: absolute;
  left: 0;
  top: 0.3rem;
  filter: invert(40%) sepia(71%) saturate(457%) hue-rotate(354deg) brightness(104%) contrast(88%);
}
.imfokustext .innertextcontent h2 {
  color: #ac742b;
  font-size: 1.3rem;
  margin-bottom: 0;
  padding-left: 2rem;
}
.imfokustext .innertextcontent p {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  flex: 1 0 auto;
  width: 100%;
}
.imfokustext .innertextcontent a:hover,
.imfokustext .innertextcontent a:focus {
  opacity: 0.7;
}
.imfokustext .innertextcontent .button {
  background: #ac742b;
  color: white;
  border: 2px solid #ac742b;
  margin: 0.5rem 0.5rem 0.5rem 0;
  padding: 0.5rem 1rem;
  font-size: 0.8rem;
  line-height: 1.2;
  border-radius: 20px;
  text-align: center;
  display: inline-block;
  text-decoration: none;
}
.imfokustext .innertextcontent .ausblendenbutton {
  background: transparent;
  color: #ac742b;
  border: 2px solid #ac742b;
  margin: 0.5rem 0.5rem 0.5rem 0;
  padding: 0.5rem 1rem;
  font-size: 0.8rem;
  line-height: 1.2;
  border-radius: 20px;
  text-align: center;
  display: inline-block;
}

body.admin-bar .imfokustext {
  top: 9.5rem;
}

@media screen and (min-width : 768px) {
  .imfokustext {
    top: 6.5rem;
    padding: 1rem;
  }
  .imfokustext h2 {
    margin-top: 0.5rem;
  }
  .imfokustext.hide {
    padding: 0.5rem 1rem;
    min-width: 100px;
  }
  .imfokustext.hide .ausblendenbutton {
    font-size: 0.7rem;
    padding: 0.4rem 0.8rem;
    min-width: 80px;
  }
  body.admin-bar .imfokustext {
    top: 8rem;
  }
}
.imfokus {
  padding: 0.5rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  width: 100%;
  max-width: var(--max-width);
  margin: 7rem auto 5rem;
  text-align: center;
}
.imfokus .fokitm {
  width: 50%;
}
.imfokus img {
  padding: 0.5rem;
  transition: all 0.3s;
}

@media screen and (min-width : 768px) {
  .imfokus {
    padding: 0;
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    text-align: initial;
  }
  .imfokus .fokitm {
    width: initial;
  }
  .imfokus img {
    padding: 1rem;
  }
}
.stickyloop a {
  margin-bottom: 1rem !important;
}

.newswrap .button .fokusbutton {
  line-height: 6 !important;
}

.infotext {
  margin: 1rem auto;
  font-size: 1rem;
  position: relative;
  line-height: 0;
}
.infotext picture {
  line-height: 0;
  margin: 0;
}
.infotext picture img {
  line-height: 0;
  margin: 0;
  width: 100%;
  object-fit: cover;
}
.infotext .textcontent {
  line-height: 1.5;
  top: 2rem;
  left: 1rem;
  right: 1rem;
  padding: 1rem;
}
.infotext .textcontent a {
  text-decoration: underline;
}
.infotext .textcontent .button {
  text-decoration: none;
}
.infotext .textcontent h2 {
  position: relative;
}
.infotext .textcontent h2::after {
  position: absolute;
  content: "";
  height: 1px;
  bottom: -7px;
  margin: 0 auto;
  left: 0;
  width: 5rem;
  background: #0061a1;
}

@media screen and (min-width : 768px) {
  .infotext {
    margin-bottom: -1rem;
  }
  .infotext picture img {
    min-height: 90vh;
    max-height: 90vh;
  }
  .infotext .textcontent {
    font-size: 18px;
    position: absolute;
    color: white;
    background: rgba(0, 0, 0, 0.7);
    padding: 0 2rem 2.5rem;
    left: 3rem;
    top: 3rem;
    max-width: 670px;
  }
  .infotext .textcontent .button {
    display: inline-block;
    text-decoration: none;
  }
  .infotext .textcontent .button:hover, .infotext .textcontent .button:focus {
    color: white;
  }
  .infotext .textcontent h2 {
    color: white;
  }
  .infotext .textcontent h2::after {
    background: white;
  }
  .infotext .textcontent a {
    color: white;
    text-decoration: underline;
  }
  .infotext .textcontent a:focus, .infotext .textcontent a:hover {
    color: #7ac142;
  }
}
@media screen and (min-width : 1224px) {
  .infotext {
    margin-bottom: -4rem;
  }
  .infotext .textcontent {
    top: 50%;
    left: 25%;
    transform: translate(-25%, -50%);
  }
}
.frontpage-video {
  margin-top: 5rem;
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto;
  max-height: 600px;
}

.frontpage-video iframe,
.frontpage-video object,
.frontpage-video embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.snow {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  pointer-events: none;
}
@media screen and (max-width: 1000px) {
  .snow {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .snow {
    display: none;
  }
}

.valentines-heart {
  position: fixed;
  font-size: 1.5rem;
  top: -1vh;
  transform: translateY(0);
  animation: fall 3s linear forwards;
}

@keyframes fall {
  from {
    transform: translateY(0vh) translateX(-10vw);
  }
  to {
    transform: translateY(105vh) translateX(10vw);
  }
}
@media screen and (min-width : 1224px) {
  .entry-content-frontpage {
    position: relative;
    margin-top: 11rem;
  }
  .buchungstool {
    z-index: 1;
    position: absolute;
    text-align: center;
    padding: 0rem;
    left: 0;
    right: 0;
    top: -12.5rem;
  }
  .buchungstool #buchungsform {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    width: 850px;
    margin: 0 auto;
    height: 100px;
  }
  .buchungstool #buchungsform .personen {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
  }
  .buchungstool #buchungsform .personen p {
    flex: 1 0 auto;
    width: 100%;
    margin: 0;
  }
  .buchungstool #buchungsform .personen input[type=number] {
    width: 1rem;
    font-size: 1.7rem;
  }
  .buchungstool #buchungsform .personen .personenanzahl {
    flex: 1 0 auto;
  }
  .buchungstool #buchungsform .personen .erwachsener {
    font-family: "DidotLTPro-Roman", serif;
    font-size: 1.7rem;
    letter-spacing: 0;
    flex: 1 0 auto;
    color: #0061a1;
    align-self: center;
    text-transform: initial;
    text-align: center;
  }
  .buchungstool img {
    filter: grayscale(0%);
  }
  .buchungstool .buchungsdatum {
    background: white;
    color: #008aca;
    font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 3px;
    display: block;
    flex: 1 0 auto;
    margin-right: 1.5rem;
    padding: 0.8rem 0.5rem 0.5rem;
    box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.25);
    display: flex;
    flex-flow: column wrap;
    width: 30%;
    align-content: center;
  }
  .buchungstool .buchungsdatum input {
    border: none;
    text-align: center;
    font-family: "DidotLTPro-Roman", serif;
    color: #0061a1;
    font-size: 1.8rem;
    background: Transparent;
    margin: 0;
    padding: 0;
  }
  .buchungstool .buchungsdatum input::placeholder {
    color: #0061a1;
  }
  .buchungstool .buchungsdatum input[type=text] {
    color: #0061a1;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
  }
  .buchungstool .buchungsdatum input[type=date] {
    color: #0061a1;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
  }
  .buchungstool .personen {
    margin-right: 0;
  }
  .buchungstool .buchungs-btn {
    border: none;
    box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.25);
    margin-top: 1.5rem;
    border-radius: 0;
    width: 100%;
    flex: 1 0 auto;
    background: #008aca;
    color: white;
    text-transform: uppercase;
    font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
    letter-spacing: 1.5px;
    font-size: 0.9rem;
    transition: all 0.4s;
  }
  .buchungstool .buchungs-btn:hover, .buchungstool .buchungs-btn:focus {
    background: #7ac142;
  }
}
.img-overflow img {
  width: 100%;
  height: 12rem;
  object-fit: cover !important;
}

.frontpageslider {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto !important;
  overflow: hidden;
}

.redbutton {
  background: hsl(0, 100%, 47%) !important;
  color: white !important;
  border: none !important;
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}
.redbutton:hover, .redbutton:focus {
  background: hsl(0, 100%, 50%) !important;
  box-shadow: 0 1px 12px rgba(0, 0, 0, 0.25);
}

.site-header-frontpage .herowrapper {
  overflow: hidden;
  height: calc(100vh - 145px);
  background: lightgrey;
  top: 85px;
  left: 0;
  width: 100%;
  text-align: center;
}
.site-header-frontpage .herowrapper img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.site-header-frontpage .herowrapper .outer {
  display: table;
  position: absolute;
  top: 0;
  left: 0;
  height: 75%;
  width: 100%;
}
.site-header-frontpage .herowrapper .middle {
  display: table-cell;
  vertical-align: middle;
}
.site-header-frontpage .herowrapper .inner {
  margin-top: 2.5rem;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.site-header-frontpage .herowrapper .inner h3 {
  word-break: break-word;
  color: #0061a1;
  text-transform: uppercase;
  font-size: 2.3rem;
  line-height: 1.2;
  margin-bottom: 1rem;
  padding: 0 4rem 1rem;
  text-shadow: 0px 0px 15px rgb(255, 255, 255);
}
.site-header-frontpage .herowrapper .inner .button {
  color: white;
  cursor: pointer;
  font-size: 0.9rem;
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  letter-spacing: 1.5px;
  background: #008aca;
  text-transform: uppercase;
}
.site-header-frontpage .herowrapper .inner .button:hover, .site-header-frontpage .herowrapper .inner .button:focus {
  background: #7ac142;
}

@media screen and (min-width : 768px) {
  .site-header-frontpage {
    height: 580px;
  }
  .site-header-frontpage .herowrapper {
    height: 580px;
  }
  .site-header-frontpage .herowrapper .outer {
    height: 100%;
    width: 100%;
  }
  .site-header-frontpage .herowrapper .outer .inner {
    width: 55%;
  }
  .site-header-frontpage .herowrapper .outer .inner h3 {
    margin-top: 0;
    margin-bottom: 1.5rem;
    padding: initial;
  }
  .site-header-frontpage .herowrapper .outer .inner .button {
    color: #008aca;
    font-size: 0.9rem;
    background: none;
    padding: 0.6rem 0;
    color: #008aca;
    border-radius: 0;
    border: none;
    border-bottom: 2px solid #008aca;
  }
  .site-header-frontpage .herowrapper .outer .inner .button:hover, .site-header-frontpage .herowrapper .outer .inner .button:focus {
    background: none;
    color: #7ac142;
    border-bottom: 2px solid #7ac142;
  }
}
@media screen and (min-width : 1224px) {
  .frontpageslider {
    margin-top: 0.3rem !important;
    height: 580px;
  }
  .site-header-frontpage .herowrapper {
    margin: 0;
    box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.25);
  }
  .site-header-frontpage .herowrapper img {
    transition: all 0.7s;
    filter: grayscale(100%);
    opacity: 0.75;
  }
  .site-header-frontpage .herowrapper:hover img, .site-header-frontpage .herowrapper:focus img {
    filter: grayscale(0);
    opacity: 1;
  }
  .site-header-frontpage .herowrapper .inner h3 {
    line-height: 1;
    max-width: 660px;
    font-size: 4.8rem;
    margin: 0 auto;
    text-shadow: 0px 0px 25px rgb(255, 255, 255);
  }
}
.home {
  font-size: 16px;
  font-size: 1rem;
}

.frontpageslider {
  margin: 0;
  position: relative;
  overflow: hidden;
}
.frontpageslider .site-header-frontpage {
  width: 100%;
  position: relative;
}
.frontpageslider .slideroverlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(rgba(255, 255, 255, 0.8), rgba(0, 0, 0, 0));
  transition: all 0.3s;
  opacity: 1;
}
@media screen and (min-width: 1850px) {
  .frontpageslider .flickity-button {
    position: absolute;
    border: none;
    color: #333;
    transition: all 0.2s;
  }
  .frontpageslider .flickity-button:hover {
    background: #008aca;
    color: white;
  }
  .frontpageslider .flickity-prev-next-button.next {
    right: -4rem;
  }
  .frontpageslider .flickity-prev-next-button.previous {
    left: -4rem;
  }
}

.pageloaded {
  overflow: initial;
}

html {
  scroll-behavior: smooth;
}

.autorimg {
  display: none;
}

.widget_author_avatars .author-list {
  text-align: left !important;
}

.widget_author_avatars .author-list .avatar img {
  border-radius: 50%;
}

.authorheader {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.authorheader img {
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.25);
  margin-left: 1rem;
  border-radius: 50%;
  width: 70px;
  height: 70px;
  margin-bottom: 1rem;
  align-self: center;
}
.authorheader h1 {
  flex: 0 1 auto;
  display: inline-block;
}

.archive-item {
  max-width: var(--max-width);
  margin: 0 auto;
}

.featured-image {
  max-height: 400px;
}
.featured-image a img {
  display: block;
  width: 100%;
  transition: all 0.25s;
}
.featured-image a img:hover {
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.25);
}

.featured-image {
  width: 100%;
}
.featured-image img {
  width: 100%;
}

.post-thumbnail {
  position: relative;
  width: 100%;
}
.post-thumbnail:hover .image-copyright {
  left: 0;
  opacity: 1;
  visibility: visible;
  color: white;
}
.post-thumbnail:hover .image-zoomicon {
  right: 0;
  opacity: 1;
  visibility: visible;
}

.post-thumbnail-events {
  position: relative;
  width: 150px;
  height: 150px;
}
.post-thumbnail-events:hover .image-copyright {
  left: 0;
  opacity: 1;
  visibility: visible;
  color: white;
}
.post-thumbnail-events:hover .image-zoomicon {
  right: 0;
  opacity: 1;
  visibility: visible;
}

.post-thumbnail-events-full {
  width: 100%;
  height: auto;
}

.image-copyright {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  position: absolute;
  opacity: 0;
  visibility: hidden;
  bottom: 0;
  left: -1rem;
  transition: all 0.25s;
  margin: 0;
  padding: 0.1rem 0.4rem;
  margin: 0.8rem 0.5rem;
  background: #0061a1;
  font-size: 0.9rem;
}

.image-zoomicon {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.25);
  position: absolute;
  opacity: 0;
  visibility: hidden;
  top: 0;
  right: -0.5rem;
  transition: all 0.25s;
  margin: 0.5rem 0.5rem;
  padding: 0.5rem;
  border-radius: 50%;
  border: none;
  background: #008aca;
  pointer-events: none;
  height: 40px;
  width: 40px;
}

a.post-thumbnail {
  line-height: 0;
  width: 100%;
}
a.post-thumbnail img {
  display: block;
  transition: all 0.25s;
  width: 100%;
  line-height: 0;
}
a.post-thumbnail img:hover {
  box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.25);
}

.sticky {
  display: block;
}

.updated:not(.published) {
  display: none;
}

.entry-title {
  word-break: break-word;
  flex: 1 0 auto;
  margin: 1rem 1rem 0.5rem 1rem;
  max-width: 820px;
}
.entry-title a {
  transition: all 0.25s;
  font-family: var(--font-heading);
  text-transform: none;
  font-size: 1.8rem;
  transition-delay: 0;
}

.page-content,
.entry-content,
.entry-summary {
  margin-bottom: 3rem;
  padding: 0 1rem;
}

.entry-header {
  margin-top: 8rem;
}

.entry-meta {
  margin: 0 1rem 1rem;
  color: #7ac142;
}
.entry-meta a {
  color: #7ac142;
}

.entry-index-meta {
  margin: 0 1rem 3rem;
  max-width: 820px;
}

.entry-footer {
  margin: 0 1rem;
}

.blog-footer {
  margin-bottom: 3rem;
}

.page-content {
  margin: 1.5rem 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

#breadcrumbs {
  max-width: 820px;
  margin: 0 1rem;
  color: #7ac142;
  font-family: var(--font-bold);
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: 1px;
  flex: 1 0 auto;
  margin-top: 2rem !important;
  display: block;
  font-size: 1rem;
}
#breadcrumbs a {
  font-family: var(--font-bold);
  font-weight: normal;
  color: #7ac142;
  letter-spacing: 1px;
}
#breadcrumbs a:hover {
  color: #008aca;
}

.my-marker-inner {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px solid #f00;
}

.page-header {
  max-width: var(--max-width);
  margin: 0 auto;
}
.page-header h1 {
  font-family: var(--font-bold);
  letter-spacing: 1.25px;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1rem;
  color: #0061a1;
}
.page-header .page-title {
  padding: 0 1rem;
  font-family: var(--font-heading);
  margin-top: 0.5rem;
  font-size: 1.3rem;
}

.tags-links {
  display: block;
}

.cat-links {
  display: block;
}

.edit-link {
  display: block;
}

.uebersichtsrow {
  padding: 0 1rem;
}

@media screen and (min-width : 1224px) {
  .uebersichtsrow {
    padding: 0;
  }
  .autorimg {
    display: block;
  }
  .featured-image {
    width: auto;
    margin: 1rem;
  }
  .index {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    max-width: var(--max-width);
    margin: 0 auto;
  }
  .index .post-thumbnail {
    width: 100%;
    height: 14rem;
    background: #ccc;
  }
  .index .post-thumbnail img {
    height: 100%;
    object-fit: cover;
  }
  .next-index-article {
    flex: 0 1 auto;
    width: 45%;
    margin: 0 1rem 4rem;
    display: flex;
    flex-flow: column wrap;
  }
  .next-index-article .entry-header {
    flex: 0 1 auto;
    margin: 0;
    margin-top: 1rem;
  }
  .next-index-article .entry-header .entry-title {
    margin: 0;
  }
  .next-index-article .entry-header .entry-meta {
    margin: 0;
  }
}
.deck {
  font-family: var(--font-primary);
}

.eventdeck {
  padding: 0 1rem;
}

.uebersichts-page {
  margin-bottom: 1rem !important;
}

.uebersichts-deck {
  padding: 0 !important;
  margin-bottom: 0;
}
.uebersichts-deck p {
  margin-top: 0;
}

@media screen and (max-width: 1223px) {
  .deck {
    padding: 0 1rem;
  }
}
@media screen and (min-width : 1224px) {
  .deck {
    padding: 0;
  }
  .eventdeck {
    padding: 0;
  }
  .indexheader {
    margin-left: -1rem;
  }
  .page-content,
  .entry-content,
  .entry-summary {
    padding: 0;
  }
  .uebersichts-content {
    padding: 0 1rem;
  }
  .indexwrapper {
    margin-top: 1rem;
    padding: 0 1rem;
    display: flex;
    flex-flow: row wrap;
  }
  .archivewrapper {
    margin-top: 1rem;
    padding: 0 1rem;
    flex-flow: row;
  }
  .archivewrapper .entry-title {
    margin-bottom: 2rem;
  }
  .next-index-article {
    margin-left: 0;
    margin-right: 0;
  }
  .next-index-article:nth-child(odd) {
    padding-right: 2rem;
  }
  .featured-image {
    margin: 0;
  }
  .entry-index-meta {
    margin: 0 0 2.5rem;
  }
  .entry-header {
    max-width: var(--max-width);
    margin: 0 auto;
    min-width: 1170px;
  }
  .entry-header h1 {
    margin-top: 2rem;
    font-size: 3.2rem;
    line-height: 1.2;
    margin-bottom: 0.2rem;
  }
  .entry-content {
    max-width: var(--max-width);
    margin: 0 auto;
  }
  .page-header {
    padding: 1rem;
  }
  .page-header h1 {
    margin-left: 0;
  }
  .page-header .page-title {
    font-size: 2.5rem;
    padding: 0;
  }
  .site-main article footer {
    max-width: var(--max-width);
    margin: 0 auto 4rem;
  }
  #breadcrumbs {
    margin: 0;
    font-size: 0.9rem;
  }
  #breadcrumbs a {
    font-size: 0.9rem;
  }
  .entry-title {
    margin: 0;
  }
  .desktop-page {
    max-width: var(--max-width);
    margin: 0 auto 4rem;
    display: flex;
    flex-flow: row wrap;
    padding: 0 1rem;
  }
  .desktop-page .main-section {
    margin-right: 1.5rem;
    width: 65%;
    flex: 1 0 auto;
    align-content: flex-start;
  }
  .desktop-page-blogsingle {
    max-width: var(--max-width);
    margin: 1rem auto;
    width: 100%;
    display: flex;
    flex-flow: row wrap;
  }
  .desktop-page-blogsingle .main-section {
    width: 65%;
    flex: 1 0 auto;
  }
  .page-content {
    margin-left: 0;
  }
  .entry-meta {
    margin: 0 0 1rem;
  }
  .page-head p:last-child {
    margin-top: 0;
    margin-bottom: 2rem;
    max-width: 820px;
  }
}
.entry-header-blog {
  padding: 0 1rem;
}

.newsletter-anmeldung {
  max-width: 600px;
  padding: 1rem;
}

.fancybox-close-small:hover {
  border-radius: 50%;
  background: lightgrey;
}

.fullwidth-page {
  width: 100%;
  margin: 0 auto;
  max-width: initial;
}

.issuu-embed-container {
  position: relative;
  padding-bottom: 56.25%;
  /* set the aspect ratio here as (height / width) * 100% */
  height: 0;
  overflow: hidden;
  max-width: 100%;
  background: white;
}

.issuu-embed-container iframe {
  background: white;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.issuu-embed-container iframe body {
  background: white;
}

#newsletterembed body {
  background: transparent !important;
}

.page-thumb {
  width: 100%;
  max-height: 600px;
  aspect-ratio: 820/350;
}

.featured-image-events {
  float: right;
  margin-right: 1rem;
  margin-top: 1rem;
}

.featured-image-events-full {
  margin-right: 1rem;
  margin-top: 1rem;
}

.eventfooter {
  margin-top: 2rem;
  color: #7ac142;
}

.gmapsembed {
  line-height: 0;
  margin: 0 -1rem;
}

.archive-sidebar {
  margin-top: 2rem;
}

.top5front {
  max-width: var(--max-width);
  margin: 0 auto;
}
.top5front h2 {
  text-align: center;
}

.mitarbeiterchild {
  padding: 1rem;
}

@media screen and (min-width: 768px) {
  .mitarbeiterchild {
    padding: 0;
  }
  .mitarbeiter-placeholder {
    flex: 1 0 auto;
    min-height: 400px;
    max-width: 295px;
    background: #f9f9f9;
  }
  .mitarbeiter {
    height: 400px;
    max-width: 295px;
    justify-content: center;
    display: flex;
    flex-direction: row;
    overflow: hidden;
  }
}
.mitarbeiter {
  min-height: 400px;
  max-width: 295px;
  justify-content: center;
  display: flex;
  flex-direction: row;
  overflow: hidden;
}
.mitarbeiter img {
  flex: 1;
  height: 100%;
}
.mitarbeiter:hover {
  box-shadow: none !important;
}

.thumbplaceholder {
  height: 230px;
  width: 100%;
  background: #fafafa;
}

.firstpostlink article .mehr {
  color: #008aca;
}

.ujic-hold {
  padding-top: 3rem;
  padding-bottom: 2rem;
}

.wpcf7-form {
  max-width: 40rem;
  border: 1px solid #ccc;
  padding: 0.3em 1em;
  margin-bottom: 1em;
  background-color: #fafafa;
  border-radius: 10px;
}
.wpcf7-form input {
  border-radius: none;
}
.wpcf7-form label {
  font-weight: 400;
}
.wpcf7-form select {
  font-size: 1em;
  padding: 0.1em;
  margin-top: 0.3em;
  min-width: 10em;
}

.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 textarea {
  width: 100%;
}

span.wpcf7-list-item {
  display: block;
}

.prospekt-send {
  margin-top: 1rem;
  margin-bottom: 2rem;
  font-size: 1rem !important;
}

.event-ajax-loader {
  width: 100%;
  padding: 5rem 2rem 2rem;
  text-align: center;
}

.lds-default {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
}

.lds-default div {
  position: absolute;
  width: 6px;
  height: 6px;
  background: #777;
  border-radius: 50%;
  animation: lds-default 1.2s linear infinite;
}

.lds-default div:nth-child(1) {
  animation-delay: 0s;
  top: 37px;
  left: 66px;
}

.lds-default div:nth-child(2) {
  animation-delay: -0.1s;
  top: 22px;
  left: 62px;
}

.lds-default div:nth-child(3) {
  animation-delay: -0.2s;
  top: 11px;
  left: 52px;
}

.lds-default div:nth-child(4) {
  animation-delay: -0.3s;
  top: 7px;
  left: 37px;
}

.lds-default div:nth-child(5) {
  animation-delay: -0.4s;
  top: 11px;
  left: 22px;
}

.lds-default div:nth-child(6) {
  animation-delay: -0.5s;
  top: 22px;
  left: 11px;
}

.lds-default div:nth-child(7) {
  animation-delay: -0.6s;
  top: 37px;
  left: 7px;
}

.lds-default div:nth-child(8) {
  animation-delay: -0.7s;
  top: 52px;
  left: 11px;
}

.lds-default div:nth-child(9) {
  animation-delay: -0.8s;
  top: 62px;
  left: 22px;
}

.lds-default div:nth-child(10) {
  animation-delay: -0.9s;
  top: 66px;
  left: 37px;
}

.lds-default div:nth-child(11) {
  animation-delay: -1s;
  top: 62px;
  left: 52px;
}

.lds-default div:nth-child(12) {
  animation-delay: -1.1s;
  top: 52px;
  left: 62px;
}

@keyframes lds-default {
  0%, 20%, 80%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.5);
  }
}
.ajax-loader2 {
  width: 100%;
  padding: 5rem 2rem 2rem;
  text-align: center;
}

.lds-default {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
}

.lds-default div {
  position: absolute;
  width: 6px;
  height: 6px;
  background: #777;
  border-radius: 50%;
  animation: lds-default 1.2s linear infinite;
}

.lds-default div:nth-child(1) {
  animation-delay: 0s;
  top: 37px;
  left: 66px;
}

.lds-default div:nth-child(2) {
  animation-delay: -0.1s;
  top: 22px;
  left: 62px;
}

.lds-default div:nth-child(3) {
  animation-delay: -0.2s;
  top: 11px;
  left: 52px;
}

.lds-default div:nth-child(4) {
  animation-delay: -0.3s;
  top: 7px;
  left: 37px;
}

.lds-default div:nth-child(5) {
  animation-delay: -0.4s;
  top: 11px;
  left: 22px;
}

.lds-default div:nth-child(6) {
  animation-delay: -0.5s;
  top: 22px;
  left: 11px;
}

.lds-default div:nth-child(7) {
  animation-delay: -0.6s;
  top: 37px;
  left: 7px;
}

.lds-default div:nth-child(8) {
  animation-delay: -0.7s;
  top: 52px;
  left: 11px;
}

.lds-default div:nth-child(9) {
  animation-delay: -0.8s;
  top: 62px;
  left: 22px;
}

.lds-default div:nth-child(10) {
  animation-delay: -0.9s;
  top: 66px;
  left: 37px;
}

.lds-default div:nth-child(11) {
  animation-delay: -1s;
  top: 62px;
  left: 52px;
}

.lds-default div:nth-child(12) {
  animation-delay: -1.1s;
  top: 52px;
  left: 62px;
}

@keyframes lds-default {
  0%, 20%, 80%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.5);
  }
}
.moreinterests {
  margin-top: 6rem;
  padding: 1rem;
  padding-top: 1.5rem;
  width: 100%;
}

.weitereseiten {
  display: flex;
  flex-flow: row wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}
.weitereseiten img {
  filter: grayscale(100%);
  transition: all 0.2s;
}
.weitereseiten img:hover, .weitereseiten img:focus {
  filter: grayscale(0%);
}
.weitereseiten p {
  font-size: 16px;
}
.weitereseiten .mehr {
  margin-top: 0.5rem;
  font-size: 14px;
}
.weitereseiten a {
  display: flex;
  flex-flow: column;
  height: 100%;
  margin: 0;
}
.weitereseiten li {
  width: 29%;
  flex: 1 0 auto;
  padding: 0;
  max-width: 400px;
}
.weitereseiten li:nth-child(1) {
  margin-right: 1rem;
}
.weitereseiten li:nth-child(2) {
  margin-right: 1rem;
}

@media screen and (max-width: 500px) {
  .weitereseiten li {
    width: 100%;
    margin-bottom: 2rem;
  }
}
.page-content a {
  /* old name */
  hyphens: auto;
}

.uebersichts-page p {
  max-width: var(--max-width);
}

.wp-block-pb-accordion-item {
  margin: 1.5rem 0;
  padding: 0.7rem 1rem;
  border: 1px solid #ddd;
}
.wp-block-pb-accordion-item button::after {
  color: #0061a1;
}

table {
  margin-bottom: 0;
}

.wpgpxmaps_summary {
  display: flex;
}
.wpgpxmaps_summary > span {
  padding-right: 0.5rem;
}

.uebersichts-h1 {
  max-width: initial;
}

@media screen and (max-width: 600px) {
  .is-stacked-on-mobile .wp-block-media-text__content {
    padding: 0;
  }
}
.sectiontext {
  width: 100%;
}

@media screen and (min-width : 768px) {
  .sectiontext {
    padding: 0 1rem 0.5rem;
    max-width: 860px;
  }
  .sectiontext h2 {
    margin-bottom: 0.5rem;
  }
}
body.post-type-archive-newsletter .index a {
  transition: all 0.2s !important;
}
body.post-type-archive-newsletter .index a .newsletter {
  margin: 0 !important;
}
body.post-type-archive-newsletter .index a:hover, body.post-type-archive-newsletter .index a:focus {
  opacity: 0.95;
}
body.post-type-archive-newsletter .index a:hover h2, body.post-type-archive-newsletter .index a:focus h2 {
  color: white;
}
body.post-type-archive-newsletter .index a:hover .mehr, body.post-type-archive-newsletter .index a:focus .mehr {
  color: white;
  border-color: white !important;
}

.post-type-archive-newsletter .newsletter {
  padding: 0;
  margin: 0;
}
.post-type-archive-newsletter .newsletter h2 {
  color: #efefef;
  padding: 0 2rem;
  margin-bottom: 0;
}
.post-type-archive-newsletter .newsletter .orient {
  padding: 0 2rem;
}
.post-type-archive-newsletter .newsletter .mehr {
  color: #cecece;
  border-color: #cecece;
  padding-bottom: 0.5rem;
  margin: 1rem 2rem 3rem;
}

@media screen and (min-width : 1224px) {
  .moreinterests {
    padding: 1.5rem 0 0;
  }
}
@media screen and (max-width: 1224px) {
  .tagungen-template-default .content-area {
    margin-top: 6rem !important;
  }
}
@media screen and (min-width: 1224px) {
  .tagungen-template-default .site-footer {
    margin-top: 0;
  }
}
@media screen and (min-width : 1224px) {
  .tagungen-template-default .sharelikebar {
    justify-content: flex-end;
  }
  .tagungen-template-default .sharelikebar .share-dialog {
    left: initial;
    right: -5.4rem;
  }
}
.mice-location-data {
  margin-top: 0;
  color: #444444;
  display: flex;
}

/* Styles for tables with .mice-table class */
.mice-table {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.mice-table table {
  margin-bottom: 0;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.mice-table table th,
.mice-table table td {
  padding: 8px;
  border: 1px solid #ddd;
  white-space: wrap;
  overflow: visible;
}
@media screen and (max-width: 767px) {
  .mice-table table {
    width: auto;
    max-width: none;
  }
  .mice-table table th,
  .mice-table table td {
    min-width: 115px;
  }
}

.mice-header {
  text-align: center;
  margin-bottom: 3rem;
}
.mice-header h1 {
  margin-top: 3rem;
}

.post-type-archive-tagungen .mehr {
  margin-top: 0.5rem;
}

.post-type-archive-tagungen .mehr {
  margin-top: 0.5rem;
}

.mice-data {
  color: #444;
  font-size: 16px;
  display: flex;
  margin-bottom: 1rem;
  margin-top: 0.2rem;
}

.mice-map {
  height: 600px;
  background: lightgrey;
  width: 100%;
}

.gm-style-iw {
  padding: 0 !important;
}

.gm-style-iw-d {
  overflow: hidden !important;
}

.custom-info-window {
  max-width: 300px;
}
.custom-info-window h3 {
  margin-bottom: 0.2rem !important;
  padding-bottom: 0;
}

.info-window-image {
  width: 100%;
  height: 150px;
  background-size: cover;
  background-position: center;
  position: relative;
}

.info-window-close {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
  background-color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: opacity 200ms;
}
.info-window-close:hover, .info-window-close:focus {
  opacity: 0.8;
}

.info-window-close::before,
.info-window-close::after {
  content: "";
  position: absolute;
  width: 15px;
  height: 2px;
  background-color: black;
}

.info-window-close::before {
  transform: rotate(45deg);
}

.info-window-close::after {
  transform: rotate(-45deg);
}

.info-window-content {
  padding: 15px;
}

.info-window-content h3 {
  margin-top: 0;
  margin-bottom: 10px;
}

.info-row {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.info-window-content p {
  margin: 10px 0;
}

.info-window-content a {
  display: inline-block;
  padding: 5px 10px;
  background-color: #008aca;
  color: white;
  text-decoration: none;
  border-radius: 3px;
  text-transform: uppercase;
  transition: all 0.2s;
  font-family: var(--font-bold);
}

.info-window-content a:hover,
.info-window-content a:focus {
  background-color: #7ac142;
}

.post-type-archive-tagungen .gm-style-iw-chr {
  display: none;
}

.post-type-archive-tagungen .no-results {
  text-align: center;
}

@media screen and (max-width: 768px) {
  .eb-cd-digit {
    font-size: 37px !important;
    line-height: 1.1em;
    color: rgb(75, 75, 75);
  }
  .eb-cd-label {
    font-size: 15px !important;
    text-transform: uppercase;
    color: rgb(75, 75, 75);
  }
}
.iframe-container {
  position: relative;
  width: 100%;
  height: calc(100vh - 37px); /* Adjust for sticky menu height */
  height: calc(100vh - 87px); /* Adjust for sticky menu + downnload bar 57 px height */
  overflow: hidden;
}

body.admin-bar .iframe-container {
  height: calc(100vh - 70px); /* Adjust for sticky menu + download bar + admin bar height */
}

.iframe-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.fixed-nav--360 {
  padding-top: 37px;
}

body.admin-bar.fixed-nav--360 {
  padding-top: 37px;
}

body.page-template-page_360 #bottommenu {
  display: none !important;
}

body.page-template-page_360 .sidebarmenu {
  display: none !important;
}

.restaurant-opening-hours {
  container-type: inline-size;
  container-name: opening-hours;
}
.restaurant-opening-hours h2.opening-hours-heading {
  margin-top: 0;
}
.restaurant-opening-hours .opening-status {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  font-size: 0.9375rem;
  line-height: 1.5;
}
.restaurant-opening-hours .opening-status__icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.restaurant-opening-hours .opening-status__message {
  font-weight: 600;
}
.restaurant-opening-hours .opening-status__separator {
  color: #666;
  margin: 0 0.25rem;
}
.restaurant-opening-hours .opening-status__time {
  color: #333;
}
.restaurant-opening-hours .opening-status--open .opening-status__icon {
  color: #7ac142;
}
.restaurant-opening-hours .opening-status--open .opening-status__message {
  color: #7ac142;
}
.restaurant-opening-hours .opening-status--closed .opening-status__icon {
  color: #ef4444;
}
.restaurant-opening-hours .opening-status--closed .opening-status__message {
  color: #ef4444;
}
.restaurant-opening-hours .opening-hours-table {
  width: 100%;
  border-collapse: collapse;
  margin: 1rem 0;
  border: 1px solid #d1d1d1;
}
.restaurant-opening-hours .opening-hours-table tbody tr {
  border-bottom: 1px solid #e5e5e5;
}
.restaurant-opening-hours .opening-hours-table tbody tr:last-child {
  border-bottom: none;
}
.restaurant-opening-hours .opening-hours-table tbody td {
  padding: 0.5rem 0.75rem;
  vertical-align: top;
}
.restaurant-opening-hours .opening-hours-table tbody td:first-child {
  text-align: left;
  border-right: 1px solid #e5e5e5;
  width: 30%;
}
.restaurant-opening-hours .opening-hours-table tbody td:last-child {
  text-align: right;
}
.restaurant-opening-hours .opening-hours-table .closed {
  color: #999;
  font-style: italic;
}
.restaurant-opening-hours .opening-hours-table .day-name-short {
  display: inline;
}
.restaurant-opening-hours .opening-hours-table .day-name-full {
  display: none;
}
@container opening-hours (min-width: 300px) {
  .restaurant-opening-hours .opening-hours-table .day-name-short {
    display: none;
  }
  .restaurant-opening-hours .opening-hours-table .day-name-full {
    display: inline;
  }
}

.archive-restaurants-header .archive-restaurants-authorheader {
  flex-direction: column;
  align-items: flex-start;
}
.archive-restaurants-header .archive-restaurants-authorheader h1 {
  margin-bottom: 1rem;
}

.archive-restaurants-content .desktop-page {
  padding: 0 !important;
}

.archive-restaurants-filters {
  display: flex !important;
  align-items: center;
  width: fit-content;
  gap: 1rem;
  padding: 0.75rem 1rem;
  margin-bottom: 1.25rem;
  margin-right: 1rem;
  margin-left: 1rem;
  border-radius: 999px;
  background: rgba(15, 22, 33, 0.04);
  border: 1px solid rgba(15, 22, 33, 0.08);
}

.archive-filter-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  cursor: pointer;
  font-weight: 600;
  color: #1a1f2b;
}
.archive-filter-toggle input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
}
.archive-filter-toggle__visual {
  position: relative;
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: rgba(15, 22, 33, 0.25);
  transition: background 180ms ease;
}
.archive-filter-toggle__visual::after {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  top: 3px;
  left: 4px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  transition: transform 180ms ease;
}
.archive-filter-toggle input:checked + .archive-filter-toggle__visual {
  background: rgba(122, 193, 66, 0.7);
}
.archive-filter-toggle input:checked + .archive-filter-toggle__visual::after {
  transform: translateX(18px);
}
.archive-filter-toggle__label {
  font-size: 0.95rem;
  line-height: 1.4;
}

.archive-restaurants-empty {
  margin: 0 1rem 1rem 1rem;
  padding: 0.5rem 0.25rem;
  font-style: italic;
  color: #6b7280;
}

.hometopchild.is-hidden-by-filter {
  display: none !important;
}

.hometopchild .box {
  position: relative;
}
.hometopchild .opening-status--badge {
  position: absolute;
  left: 0.6rem;
  right: auto;
  bottom: 0.55rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  font-size: 0.9rem;
  line-height: 1.4;
  background: rgba(12, 15, 21, 0.55);
  color: #fff;
  z-index: 2;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(6px);
  transition: transform 180ms ease, box-shadow 180ms ease;
  width: fit-content;
  max-width: calc(100% - 1.7rem);
}
.hometopchild .opening-status__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  color: inherit;
}
.hometopchild .opening-status__icon svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}
.hometopchild .opening-status__message {
  font-weight: 600;
}
.hometopchild .opening-status__separator {
  color: rgba(255, 255, 255, 0.7);
}
.hometopchild .opening-status__time {
  font-weight: 500;
  color: rgba(255, 255, 255, 0.86);
  display: inline-flex;
  align-items: center;
}
.hometopchild .opening-status--open .opening-status__icon--status,
.hometopchild .opening-status--open .opening-status__message {
  color: #7ac142;
}
.hometopchild .opening-status--closed .opening-status__icon--status,
.hometopchild .opening-status--closed .opening-status__message {
  color: #ef4444;
}
@media (hover: hover) {
  .hometopchild:hover .opening-status--badge, .hometopchild:focus .opening-status--badge {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25);
  }
}

.archive-restaurants-description {
  margin-bottom: 1rem;
}

.indexarticle {
  display: flex;
  flex-flow: column;
  flex: 1 0 auto;
}
.indexarticle .entry-title {
  margin-bottom: 1rem;
}

.indexitem {
  width: 100%;
  flex: 0 1 auto;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  margin-bottom: 4rem;
}
.indexitem .box img {
  width: 100%;
}
.indexitem img {
  transition: all 0.3s;
  box-shadow: 1px 1px 20px rgba(0, 0, 0, 0);
}
.indexitem h2 {
  flex: 0 1 auto;
  margin-top: 1rem;
  transition: all 0.3s;
}
.indexitem .orient {
  flex: 1 0 auto;
  margin: 0.5rem 1rem;
}
.indexitem .mehr {
  margin: 0 1rem;
}
.indexitem:hover h2, .indexitem:focus h2 {
  color: #7ac142;
}
.indexitem:hover .mehr, .indexitem:focus .mehr {
  border-color: #7ac142;
}

@media screen and (min-width : 768px) {
  .indexarticle {
    display: flex;
    flex-flow: column;
    flex: 1 0 auto;
  }
  .indexitem {
    width: 50%;
    flex: 0 1 auto;
    padding: 0 1rem;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    margin-bottom: 4rem;
  }
  .indexitem img {
    transition: all 0.3s;
    box-shadow: 1px 1px 20px rgba(0, 0, 0, 0);
  }
  .indexitem h2 {
    flex: 0 1 auto;
    margin: 1rem 0 0 0;
    transition: all 0.3s;
  }
  .indexitem .orient {
    flex: 1 0 auto;
    margin: 0 0 0.5rem;
  }
  .indexitem .mehr {
    margin: 0;
  }
}
@media screen and (min-width : 1224px) {
  .indexitem {
    margin-left: -1rem;
  }
}
.search-no-results .page-header {
  padding: 1rem 0 0 !important;
}

.search-results .page-title {
  margin-bottom: 0;
}
.search-results .desktop-page-blogsingle {
  margin-top: 0;
}

@media screen and (max-width: 1224px) {
  .search {
    margin-top: 6rem;
  }
}
@media screen and (max-width: 768px) {
  .search .hometopchild a {
    margin: 0 1rem;
  }
  .search .hometopchild .mehr {
    margin: 0 1rem;
  }
  .search .hometopchild p,
  .search .hometopchild h2 {
    padding: 0 1rem !important;
  }
  .search .hometopchild h2 {
    margin-bottom: 0;
  }
}

.eventcontent {
  min-height: 600px;
  padding-left: 1rem;
  padding-right: 1rem;
}

@media screen and (min-width: 1220px) {
  .eventcontent {
    padding-right: 0;
  }
}
.eventitem {
  width: 100%;
  order: 1;
}
.eventitem img {
  height: 200px;
  object-fit: cover;
}

.eventthumbplaceholder {
  height: 170px;
  width: 100%;
  background: #fafafa;
}

.dayslider {
  visibility: hidden;
}

.doneloadin {
  visibility: visible;
  opacity: 1;
}

.stickyevent {
  width: 100% !important;
  padding-right: 0 !important;
}
.stickyevent img {
  height: 450px;
  width: 100%;
}

.thumbplace1 {
  height: 200px;
  object-fit: cover;
}

.thumbplace2 {
  height: 200px;
  object-fit: cover;
}

.estyle {
  width: 100%;
  margin: 0;
}

.eventarchivepage {
  margin-bottom: 4rem;
}

.eportal {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin-bottom: 3rem;
}
.eportal .eportal__left {
  overflow: hidden;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.25);
}
.eportal .eportal__left .eportal__cal {
  width: 100%;
  height: 100%;
  padding: 1rem;
  text-align: center;
}
.eportal .eportal__right {
  display: flex;
  flex-flow: column;
  justify-content: flex-end;
  width: 100%;
  flex: 1 0 auto;
}
.eportal .eportal__kategorien {
  order: 1;
  margin: 1.5rem 0 1rem;
  padding: 0 1rem;
}
.eportal .eportal__suche {
  padding: 0 1rem;
  order: 2;
  margin-top: 0.5rem;
}

.eportal__rahmenevent a {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffa84c+0,ffe70f+100 */
  background: #ffa84c; /* Old browsers */
  background: -moz-linear-gradient(45deg, #ffa84c 0%, #ffe70f 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(45deg, #ffa84c 0%, #ffe70f 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(45deg, #ffa84c 0%, #ffe70f 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffa84c", endColorstr="#ffe70f",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  padding: 0.5rem 0.8rem;
  display: inline-block;
  color: #333;
  font-style: italic;
  transition: all 0.3s;
  box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
  margin-bottom: 2rem;
}
.eportal__rahmenevent a:hover, .eportal__rahmenevent a:focus, .eportal__rahmenevent a:active {
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.35);
}

.tagumfassend {
  margin-top: 0.7rem;
  flex: 1 0 auto;
  width: 12.5%;
  align-self: flex-start;
  display: flex;
  flex-flow: column;
  color: #0061a1;
  cursor: pointer;
}
.tagumfassend .tagletter {
  font-size: 0.8rem;
}
.tagumfassend .tag span {
  display: inline-block;
  border-bottom: 2px solid #0061a1;
  padding: 2px 5px 5px 5px;
  width: 34px;
}
.tagumfassend .calmarker span {
  color: white;
  background: #7ac142 !important;
  border: none;
  border-radius: 50%;
}
.tagumfassend:hover, .tagumfassend:focus, .tagumfassend:active {
  color: #7ac142;
}
.tagumfassend:hover span, .tagumfassend:focus span, .tagumfassend:active span {
  border-color: #7ac142;
}

.ajax-loader {
  width: 100%;
  text-align: center;
  display: none;
}

.secondajax-loader {
  width: 100%;
  text-align: center;
  display: none;
}

.monat {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-flow: column;
  max-height: 45px;
  overflow: hidden;
}
.monat h2 {
  display: inline;
  margin: 0.5rem;
  color: #7ac142;
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 1.6rem;
  transition: all 0.3s;
}
.monat h2:hover {
  color: #008aca;
}
.monat h2:hover svg path {
  fill: #008aca;
}
.monat h2 svg {
  width: 22px;
  height: 22px;
}
.monat h2 svg path {
  transition: all 0.3s;
  fill: #7ac142;
}

.listenansicht {
  width: 50%;
  border: 1px solid #eee;
  margin-bottom: 1rem;
}

.eventarchiveh1 {
  margin-left: 1rem;
  font-size: 1.6rem;
}

.calicon::after {
  content: "";
  content: "\f307";
  font: normal 18px/1 "Genericons";
  display: inline-block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.tokenfield .tokenfield-set > ul > li {
  line-height: 1.85rem !important;
}

.dayslider {
  margin: 0 auto;
  width: 91%;
}
.dayslider .slick-prev,
.dayslider .slick-next {
  top: 2.5rem;
  padding: 0.2rem;
}
.dayslider .slick-prev:focus,
.dayslider .slick-next:focus {
  background: #008aca;
}
.dayslider .slick-prev:hover,
.dayslider .slick-next:hover {
  background: #7ac142 !important;
}
.dayslider .slick-prev {
  left: -1.5rem;
}
.dayslider .slick-next {
  right: -1.5rem;
}

.weekslider {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
}

.thisisslide {
  display: flex;
  flex-flow: row wrap;
  margin: 0 auto;
  justify-content: flex-start;
  width: 97%;
}

@media screen and (min-width : 768px) {
  .dayfiller {
    display: none;
  }
  .eportal .eportal__cal {
    overflow: hidden;
  }
  .eventitem {
    width: 32%;
  }
  .thisisslide {
    display: flex;
    flex-flow: row;
    margin: 0 auto;
    width: 97%;
  }
  .thisisslide .tagumfassend {
    margin-top: 0;
    width: 6.25%;
  }
  .dayslider {
    margin: 0 auto;
    width: 91%;
  }
  .dayslider .slick-prev,
  .dayslider .slick-next {
    top: 1.2rem;
    padding: 0.55rem;
  }
  .dayslider .slick-prev:focus,
  .dayslider .slick-next:focus {
    background: #008aca;
  }
  .dayslider .slick-prev:hover,
  .dayslider .slick-next:hover {
    background: #7ac142 !important;
  }
  .dayslider .slick-prev {
    left: -2.1rem;
  }
  .dayslider .slick-next {
    right: -2.1rem;
  }
}
@media screen and (min-width : 1224px) {
  .eportal .eportal__cal {
    max-height: 125px;
  }
  .estyle {
    margin-right: -1rem;
  }
  .eventarchiveh1 {
    margin-left: 0;
  }
  .eportal .eportal__left {
    width: 62%;
    flex: 1 0 auto;
    max-height: 125px;
  }
  .eportal .eportal__right {
    padding: 0;
    margin-left: 1rem;
    margin-left: 4rem;
    width: 28%;
    flex: 1 0 auto;
  }
  .eportal .eportal__suche {
    order: 1;
    padding: 0;
    flex: 0 1 auto;
    width: 100%;
  }
  .eportal .eportal__kategorien {
    margin-bottom: 0;
    order: 2;
    padding: 0;
    flex: 0 1 auto;
    width: 100%;
    padding-right: 1rem;
  }
  .thisisslide {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
  }
}
.placemarker {
  pointer-events: none;
}

@media screen and (max-width: 1224px) {
  .daterangepicker {
    font-size: 1.3rem !important;
  }
  .dayslider {
    width: 100% !important;
  }
  .dayslider .slick-prev,
  .dayslider .slick-next {
    top: -2.3rem;
    padding: 0.5rem;
  }
  .dayslider .slick-prev {
    left: 0.9rem;
  }
  .dayslider .slick-next {
    right: 0.9rem;
  }
  .eportal {
    margin-bottom: -86px !important;
  }
  .eportal .eportal__right {
    order: 0;
    margin-bottom: 1rem;
    display: flex;
    flex-flow: row;
  }
  .eportal .eportal__right .eportal__kategorien {
    width: 50%;
    margin: 0;
    padding-right: 0.5rem !important;
  }
  .eportal .eportal__right .eportal__suche {
    padding: 0 0.5rem !important;
    padding-right: 0 !important;
    width: 50%;
    overflow: hidden;
  }
  .eportal .eportal__right .eportal__suche .eventsearch {
    display: inline-block;
    width: 70% !important;
  }
  .eportal .eportal__right .eportal__suche .eventsearch label input {
    border: none;
    width: 60% !important;
  }
  .eportal .eportal__right .eportal__suche .eventsearch button[type=submit] {
    border-radius: 50%;
    display: inline-block;
    width: 40px;
    height: 40px;
    border: 2px solid #f5f5f5;
    border-radius: 50%;
    padding: 0.7rem;
  }
  .eportal .eportal__left {
    order: 1;
    transition: all 0.3s;
  }
}
#resetbutton {
  height: 40px;
  width: 40px;
  padding: 0.75rem;
}
#resetbutton .reseticon path {
  fill: #ffffff;
}

.eventitem article .box {
  position: relative;
}

.rahmenevent {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffa84c+0,ffe70f+100 */
  background: #ffa84c; /* Old browsers */
  background: -moz-linear-gradient(45deg, #ffa84c 0%, #ffe70f 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(45deg, #ffa84c 0%, #ffe70f 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(45deg, #ffa84c 0%, #ffe70f 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffa84c", endColorstr="#ffe70f",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  margin: 0 auto;
  padding: 0.3rem 0.5rem;
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: Center;
  color: black;
  font-style: italic;
}
.rahmenevent:hover, .rahmenevent:focus, .rahmenevent:active {
  color: #313131;
}

#bottommenu {
  transition: all 0.6s, opacity 0.3s;
  z-index: 9;
  position: fixed;
  bottom: 0;
  left: 0;
  background: #0061a1;
  width: 100%;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 0 0.5rem;
  padding-top: 0.2rem;
  margin: 0;
  height: 3.7rem;
}
#bottommenu a {
  font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
  color: white;
  font-size: 0.6rem;
  letter-spacing: 1px;
  line-height: 1.2rem;
  padding-bottom: calc(0.05rem + env(safe-area-inset-bottom));
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  opacity: 0.8;
}
#bottommenu a img {
  width: 28px;
  height: 28px;
  margin-bottom: 3px;
}
#bottommenu a:hover, #bottommenu a:active, #bottommenu a:focus {
  opacity: 1;
}
#bottommenu .pageactive {
  font-size: 0.8;
  opacity: 1;
  font-size: 0.7rem;
}
#bottommenu .pageactive img {
  width: 32px;
  height: 32px;
}

@media screen and (min-width : 1224px) {
  #bottommenu {
    display: none;
  }
}
.padding {
  height: 10rem;
  width: 100%;
  margin-bottom: 10rem;
  padding-bottom: 10rem;
}

.site-footer {
  background: #0061a1;
  color: white;
}
.site-footer a {
  color: white;
}

.footer-inner {
  position: relative;
  background: #0061a1;
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
}

.footermenu {
  display: flex;
  flex-flow: row wrap;
  background: #0061a1;
  color: white;
  width: 100%;
  max-width: var(--max-width);
  margin-top: 1rem;
  padding: 0 1rem 2rem;
}
.footermenu .footermenubox {
  padding-right: 1rem;
}
.footermenu .footermenubox a {
  font-size: 1rem;
  text-decoration: underline;
}
.footermenu .footermenubox a:hover, .footermenu .footermenubox a:focus {
  color: #7ac142;
}
.footermenu .footermenubox a.button {
  text-decoration: none;
}
.footermenu .footermenubox a.button:hover, .footermenu .footermenubox a.button:focus {
  color: white;
}
.footermenu .footermenu-wrapper {
  height: 200px;
  overflow: hidden;
}
.footermenu .footer-anschrift {
  width: 50%;
}
.footermenu .footer-anschrift p {
  line-height: 1.5;
}
.footermenu .footer-bmtg {
  width: 50%;
}
.footermenu .footer-bmtg a {
  text-decoration: none;
}
.footermenu ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-flow: column wrap;
  justify-content: flex-start;
}
.footermenu ul li {
  align-self: flex-start;
}
.footermenu ul li a {
  text-transform: none;
  font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
  letter-spacing: 0;
}
.footermenu ul li a:hover {
  color: #7ac142;
}
.footermenu ul li a:active {
  color: #7ac142;
}
.footermenu h3 {
  color: white;
  line-height: 1.2;
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.social-icons {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  max-width: 13rem;
}
.social-icons a {
  width: 30%;
}
.social-icons img {
  padding-right: 0.8rem;
  height: 50px;
  transition: all 0.25s;
}
.social-icons img:hover {
  opacity: 0.8;
}

.svgpath {
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
  z-index: 2;
  position: absolute;
  left: 0;
  top: -5px;
  background: #0061a1;
  margin-bottom: 2rem;
}

.footer-social-tablet {
  display: none;
}

.site-info {
  background: white;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  width: 100%;
  max-width: var(--max-width);
  margin: 0 auto;
  position: absolute;
  top: 12rem;
  right: 0;
  left: 0;
  z-index: 3;
  padding: 2rem 1rem 4rem;
  line-height: 1rem;
}
.site-info p {
  width: 48%;
  align-self: flex-end;
}
.site-info a {
  font-size: 0.6rem;
  line-height: 1.1;
  color: #333333;
  font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
}
.site-info img {
  align-self: flex-end;
  max-width: 180px;
  padding-bottom: 0.2rem;
}

@media screen and (max-width: 415px) {
  .site-info {
    top: 4rem;
  }
  .site-info img {
    width: 50%;
    margin-bottom: 2rem;
  }
  .site-info p {
    text-align: center;
    margin-bottom: 2rem;
  }
}
@media screen and (min-width : 768px) {
  .footer-social-mobile {
    display: none;
  }
  .footer-social-tablet {
    display: block;
  }
  .site-info {
    padding: 0 2rem 5.5rem;
  }
  .footer-social {
    margin-top: 4rem;
  }
  .social-icons a {
    width: 15%;
    height: 65px !important;
    margin-right: 0.5rem;
  }
  .social-icons a img {
    width: 40px;
    height: 40px;
    padding: 0;
  }
  .footermenu .footer-anschrift {
    width: 33%;
  }
  .footermenu .footer-bmtg {
    width: 33%;
  }
  .footermenu .footer-newsletter {
    width: 40%;
    order: 4;
  }
  .footermenu .footer-social-tablet {
    width: 25%;
    margin-top: 0;
    order: 3;
  }
  .footermenu .footer-social-tablet a {
    width: 60px;
    height: 50px;
  }
}
@media screen and (min-width : 1224px) {
  .social-icons a {
    width: 40px !important;
    height: 50px !important;
    margin-right: 0.5rem;
    margin-bottom: 0.5rem;
  }
  .social-icons a img {
    width: 35px !important;
    height: 35px !important;
    padding: 0;
  }
  .footermenu .footer-anschrift {
    width: 23%;
  }
  .footermenu .footer-bmtg {
    width: 32%;
  }
  .footermenu .footer-newsletter {
    width: 20%;
    order: 3;
  }
  .footermenu .footer-newsletter p {
    margin-bottom: 1rem !important;
  }
  .footermenu .footer-social-tablet {
    width: 20%;
    order: 4;
    padding-right: 0 !important;
  }
  .footermenu .footer-social-tablet a {
    width: 35px;
    height: 35px;
  }
  .site-footer {
    margin-top: 4rem;
    background: #0061a1;
    color: white;
  }
  .site-footer a {
    font-size: 0.8rem;
    color: white;
  }
  .page-template-page_kampagne .site-footer {
    margin-top: 0 !important;
  }
  .page-template-page_xmas .site-footer {
    margin-top: 0 !important;
  }
  .footer-inner {
    position: relative;
    background: #0061a1;
    margin: 0;
    padding: 0;
    font-size: 0;
    line-height: 0;
  }
  .footermenu {
    display: flex;
    flex-flow: row wrap;
    padding: 2rem 1rem 0;
    background: #0061a1;
    color: white;
    width: 100%;
    max-width: var(--max-width);
    margin: 0 auto;
  }
  .footermenu .footermenubox {
    padding-right: 1rem;
    flex: 1 0 auto;
  }
  .footermenu .footermenu-wrapper {
    height: 200px;
    overflow: hidden;
  }
  .footermenu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-flow: column wrap;
    height: 150px;
    justify-content: flex-start;
  }
  .footermenu ul li {
    align-self: flex-start;
    padding-right: 0.5rem;
  }
  .footermenu ul li a {
    text-transform: none;
    font-family: "TheSans-SemiLight", Verdana, Geneva, Tahoma, sans-serif;
    font-size: 1rem;
    letter-spacing: 0;
  }
  .footermenu ul li a:hover {
    color: #7ac142;
  }
  .footermenu ul li a:active {
    color: #7ac142;
  }
  .footermenu h3 {
    color: white;
    font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
  }
  .svgpath {
    margin: 0;
    padding: 0;
    font-size: 0;
    line-height: 0;
    z-index: 2;
    position: absolute;
    left: 0;
    top: -5px;
    background: #0061a1;
    margin-bottom: 2rem;
  }
  .site-info {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    width: 100%;
    max-width: var(--max-width);
    margin: 0 auto;
    position: absolute;
    top: 20vh;
    right: 0;
    left: 0;
    z-index: 3;
    padding: 2rem 1rem 4rem;
    line-height: 1rem;
    margin-top: 5rem;
  }
  .site-info p {
    align-self: flex-end;
  }
  .site-info a {
    color: #0061a1;
  }
  .site-info img {
    max-width: 300px;
  }
}
@media screen and (min-width : 1224px) and (max-width: 415px) {
  .site-info {
    top: 4rem;
  }
  .site-info img {
    width: 100%;
  }
  .site-info p {
    text-align: center;
    margin-bottom: 2rem;
  }
}
.p-back-to-top-displayed {
  display: block;
}

.back-to-top {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 50%;
  bottom: 0;
  display: block;
  font-size: 0.75rem;
  padding: 0;
  position: fixed;
  right: 0rem;
  margin: 0.3rem 0;
  transition: 0.2s ease-in-out;
  height: 2.6rem;
  width: 2.6rem;
  z-index: 800;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.15);
}
.back-to-top::before {
  background-color: #515151;
  content: "";
  display: block;
  height: 1em;
  left: 50%;
  margin: -0.3em 0 0 -0.18em;
  position: absolute;
  top: 50%;
  width: 0.36em;
  transform: rotate(-45deg);
  transform-origin: top left;
}
.back-to-top::after {
  transform-origin: top right;
  background-color: #515151;
  content: "";
  display: block;
  height: 1em;
  left: 50%;
  margin: -0.3em 0 0 -0.18em;
  position: absolute;
  top: 50%;
  width: 0.36em;
  transform: rotate(45deg);
  transform-origin: top right;
}
.back-to-top span {
  display: none;
}

#upwescroll {
  z-index: 15;
  position: fixed;
  right: 0.5rem;
  bottom: -6rem;
  transition: 0.2s ease-in-out;
}
#upwescroll:hover {
  background: #7ac142;
}
#upwescroll:active, #upwescroll:focus {
  background-color: #fff;
}

.scrollactive {
  bottom: 0 !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.prospekteq {
  border-radius: 0.7rem;
  overflow: hidden;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
.prospekteq:hover {
  box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transform: scale(0.995);
  transition: background-color 0.5s ease;
}
.prospekteq:hover img {
  opacity: 0.4;
}
.prospekteq:hover .prospektpreiscenter {
  opacity: 1;
}
.prospekteq:hover .prospekticon {
  font-size: 2rem;
  height: 60%;
  padding-right: 42%;
}

.prospekteq .subpagetext {
  padding-bottom: 1rem;
}
.prospekteq .subpagetext h2 {
  font-size: 1.2rem;
}
.prospekteq .subpagetext p {
  font-size: 1rem;
}

.bmtglinkgrid > .wp-block-group .has-light-blue-color {
  transition: all 0.2s ease-in-out;
}
.bmtglinkgrid > .wp-block-group img {
  transition: all 0.2s ease-in-out;
}
.bmtglinkgrid > .wp-block-group div:has(> p.has-light-blue-color) {
  transition: all 0.2s ease-in-out;
}
.bmtglinkgrid > .wp-block-group:hover img, .bmtglinkgrid > .wp-block-group:focus img {
  filter: grayscale(0);
  transform: scale(1.015);
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.15);
}
.bmtglinkgrid > .wp-block-group:hover .has-light-blue-color, .bmtglinkgrid > .wp-block-group:focus .has-light-blue-color {
  color: #7ac142 !important;
}
.bmtglinkgrid > .wp-block-group:hover div:has(> p.has-light-blue-color), .bmtglinkgrid > .wp-block-group:focus div:has(> p.has-light-blue-color) {
  border-color: #7ac142 !important;
}

/* TEMPLATE Fullwidth Page */
.fullwidth-page > * {
  max-width: var(--contentSize);
  margin-left: auto !important;
  margin-right: auto !important;
}

.fullwidth-page > .alignwide {
  max-width: var(--wideSize);
}

.fullwidth-page > .alignfull {
  max-width: none;
}

.fullwidth-page > .alignleft {
  float: left;
  margin-right: 2em;
}

.fullwidth-page > .alignright {
  float: right;
  margin-right: 2em;
}

/* TEMPLATE Tagungen Page */
.tagungen-block-content > * {
  max-width: var(--contentSize);
  margin-left: auto !important;
  margin-right: auto !important;
}

.tagungen-block-content > .alignwide {
  max-width: var(--wideSize);
}

.tagungen-block-content > .alignfull {
  max-width: none;
}

.tagungen-block-content > .alignleft {
  float: left;
  margin-right: 2em;
}

.tagungen-block-content > .alignright {
  float: right;
  margin-right: 2em;
}

.page-id-127144,
.page-id-129777,
.page-id-137730 {
  background-color: hsl(120, 50%, 97%); /* Hue: 120 (green), Saturation: 50%, Lightness: 95% */
  background-image: url("/wp-content/themes/bmtg/dist/eco-bg.73ebf646.png");
  background-repeat: repeat;
}

.sustainability-archive-page {
  overflow-x: hidden;
}

.sustainability-filters {
  display: none;
  margin-right: 0.4rem;
  position: absolute;
}
.sustainability-filters form {
  background: white;
  border: 1px solid #dedede;
  border-radius: 6px;
  padding: 0 1rem 1.5rem;
}
.sustainability-filters h2 {
  font-size: 1.4rem;
  color: #111;
}
.sustainability-filters label {
  cursor: pointer;
}

.sustainability-index {
  width: 100%;
}

.sustainability-listings .sus-category-filter {
  font-family: "TheSans-SemiBold", Verdana, Geneva, Tahoma, sans-serif;
}
.sustainability-listings .extended-sus-content {
  /* Start in a collapsed state */
  display: none;
  padding-top: 1rem !important;
}
.sustainability-listings .extended-sus-content h3 {
  margin-top: 0;
  font-size: 1.2rem;
  margin-bottom: 0.3rem;
}
.sustainability-listings .extended-sus-content p {
  margin: 0.4rem 0;
}
.sustainability-listings article {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  background: white;
  border: 1px solid #dedede;
  border-radius: 6px;
  margin-bottom: 1.5rem;
  position: relative;
}
.sustainability-listings article .sustainability-extend-btn {
  background: #f2f2f2;
  height: 30px;
  width: 100%;
  text-align: center;
  font-size: 13px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  color: #666;
}
.sustainability-listings article .extended-sus-content {
  width: 100%;
  flex: 1 0 auto;
  padding: 0 1.5rem 1rem;
  background: #fafafa;
  font-size: 16px;
}
.sustainability-listings article .sustainability-image {
  flex: 1 0 auto;
  width: 100%;
  padding: 1rem;
  text-align: center;
  height: 250px;
  position: relative;
}
.sustainability-listings article .sustainability-image img {
  width: 100%;
  height: 270px;
  max-width: 450px;
  object-fit: cover;
  border-radius: 6px;
  overflow: hidden;
}
.sustainability-listings article .sustainability-image .sus-edit-post-link {
  position: absolute;
  left: 1.5rem;
  top: 1.5rem;
  color: lightgrey;
  background: rgba(0, 0, 0, 0.3);
  padding: 0.3rem 0.5rem;
  border-radius: 10px;
  font-size: 14px;
}
.sustainability-listings article .sustainability-textcontent {
  padding: 1rem;
  text-align: center;
  margin-top: 5rem;
}
.sustainability-listings article .sustainability-textcontent h2 {
  font-size: 1.3rem;
  margin: 1rem;
}
.sustainability-listings article .sustainability-features {
  padding: 0.7rem 0 2rem;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
}
.sustainability-listings article .sustainability-features .sus-tacho {
  width: 250px;
  height: 91px;
  text-align: center;
  align-self: center;
  top: 14rem;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  max-width: 100%;
  pointer-events: none;
}
.sustainability-listings article .sustainability-features .sus-pointer {
  position: relative;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sustainability-listings article .sustainability-features .sus-pointer img {
  position: absolute;
  bottom: 7.5px;
  width: 29px;
  height: 91px;
  transform-origin: 15px 79px;
  /* Apply animation */
  transform: rotate(-90deg);
}
@keyframes rotatePointer {
  0% {
    /* Start at -90 degrees */
    transform: rotate(-90deg);
  }
  5%, 20% {
    /* Initial wiggle effect */
    transform: rotate(-95deg);
  }
  10% {
    transform: rotate(-85deg);
  }
  20% {
    /* End initial wiggle and start moving towards target */
    transform: rotate(-90deg);
  }
  50% {
    /* Shoot towards and slightly overshoot the target value */
    transform: rotate(calc(var(--rotate-degrees) + 5deg));
  }
  65% {
    /* First part of final wiggle after overshooting */
    transform: rotate(calc(var(--rotate-degrees) - 3deg));
  }
  75% {
    /* Second part of final wiggle */
    transform: rotate(calc(var(--rotate-degrees) + 2deg));
  }
  85% {
    transform: rotate(calc(var(--rotate-degrees) - 1deg));
  }
  100% {
    /* Settle at the final value */
    transform: rotate(var(--rotate-degrees));
  }
}
.sustainability-listings article .sustainability-features .sus-text-rating {
  width: 100%;
  text-align: centeR;
  margin-top: 0;
  font-size: 15px;
  justify-self: flex-start;
}
.sustainability-listings article .sustainability-features .sus-book-btn-wrap {
  margin: 0;
  justify-self: flex-end;
}
.sustainability-listings article .sustainability-features .book-btn {
  background: transparent;
  color: grey;
  border: 2px solid grey;
  border-radius: 1.7em;
  text-transform: uppercase;
  font-size: 0.85rem;
  letter-spacing: 1.5px;
  line-height: 1.5;
  padding: 0.7em 1.6em;
  background: #0061a1 !important;
  color: white !important;
  transition: all 0.3s;
}
.sustainability-listings article .sustainability-features .book-btn:hover, .sustainability-listings article .sustainability-features .book-btn:focus {
  background: #008aca !important;
}
.sustainability-listings article .sustainability-features .sus-btn {
  display: inline-block;
  background: #0061a1;
  padding: 0.25rem 0.8rem;
  border-radius: 10px;
  color: white;
  font-weight: bold;
  border: 2px solid #0061a1;
}
.sustainability-listings article .sustainability-features .sustainability-booking-btn {
  background: #088aca;
  border-color: #088aca;
}
.sustainability-listings article .sustainability--categories {
  font-size: 0.9rem;
}

.sustainability-index {
  margin-top: 1.5rem;
  padding: 0 1rem;
}

.sus-label-wrapper {
  display: flex;
  width: 100%;
  justify-content: space-between;
}

.sus-custom-checkbox-label {
  display: flex;
  align-items: start;
  margin-bottom: 0.35rem;
  font-size: 15px;
}

.sus-custom-checkbox-label input[type=checkbox] {
  /* Align the checkbox to the top if it's taller than one line of text */
  margin-top: 0.25rem;
  align-self: start;
}

.sus-filter-count {
  margin-left: 0.2rem;
  font-size: 14px;
  width: 30px;
  text-align: right;
}

.sus-sorting {
  background: white;
  border: 1px solid #dedede;
  border-radius: 6px;
  padding: 0.5rem 1rem;
  margin-bottom: 0.4rem;
}

@media screen and (min-width: 1100px) {
  .filter-popover-button {
    display: none;
  }
  .filter-popover {
    display: none;
  }
  #filter-toggle {
    display: none;
  }
  .sustainability-index {
    display: flex;
    flex-flow: row wrap;
  }
  .sustainability-filters {
    position: initial;
    display: block;
    flex: 1 0 auto;
    width: 300px;
    font-size: 1rem;
    flex-grow: 0;
  }
  .sustainability-listings {
    flex: 1 0 auto;
    width: 60%;
  }
  .sustainability-listings .extended-sus-content {
    column-count: 2;
    column-gap: 20px;
    width: 100%;
  }
  .sustainability-listings .extended-sus-content .content-block {
    break-inside: avoid; /* Prevents the block from being split across columns */
    margin-bottom: 1.5rem;
  }
  .sustainability-listings article {
    display: flex;
  }
  .sustainability-listings article .sustainability-image {
    flex: 1 0 auto;
    width: 25%;
    order: initial;
  }
  .sustainability-listings article .sustainability-image img {
    object-fit: cover;
    border-radius: 6px;
    overflow: hidden;
    max-height: 190px;
    overflow: hidden;
  }
  .sustainability-listings article .sustainability-textcontent {
    margin-top: 0;
    margin-left: 1rem;
    flex: 1 0 auto;
    width: 45%;
    padding: 0;
    padding-top: 1rem;
    order: initial;
    text-align: left;
  }
  .sustainability-listings article .sustainability-textcontent h2 {
    font-size: 1.5rem;
    margin: 0;
  }
  .sustainability-listings article .sustainability-features {
    position: relative;
    flex: 1 0 auto;
    width: 25%;
    text-align: right;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    padding-right: 1rem;
    order: initial;
    padding-bottom: 3rem;
  }
  .sustainability-listings article .sustainability-features .sus-tacho {
    position: relative;
    top: initial;
    left: initial;
    right: initial;
    transform: initial;
  }
}
/* Hide filters on screens smaller than 1200px */
.filter-popover {
  display: none;
}

/* Show filters on screens 1200px and wider */
@media (min-width: 1200px) {
  .filter-popover {
    display: block; /* or other display property as needed */
  }
}
@media screen and (max-width: 1099px) {
  /* Popover container */
  .filter-popover {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: none; /* Initially hidden */
    z-index: 999999; /* Ensure it's above other content */
    overflow-y: auto; /* Allow scrolling within the popover */
    background: rgba(0, 0, 0, 0.8); /* Semi-transparent background */
    padding-bottom: 1rem;
  }
  #filter-toggle {
    margin-bottom: 0.5rem;
  }
  .adminbar-visible .filter-popover {
    padding-top: 2.5rem;
  }
  /* Sticky button */
  .filter-popover-button {
    background: rgba(0, 0, 0, 0.8); /* Semi-transparent background */
    position: sticky;
    bottom: 0;
    width: calc(100% - 2rem); /* Adjust width to account for margin */
    margin: 1rem;
    padding: 10px 20px;
    background-color: #008aca; /* Bootstrap primary color, adjust as needed */
    color: white;
    text-align: center;
    cursor: pointer;
    box-sizing: border-box; /* Ensure padding and border are included in width */
    border-radius: 30px !important;
  }
  /* Prevent scrolling of the background */
  .body-no-scroll {
    overflow: hidden;
  }
}
/* accordion on page-nachhaltige-unterkuenfte */
.sus-acc h3 {
  margin-top: 0;
  margin-bottom: 0;
}

.m-b-0 {
  margin-bottom: 0;
}

.tooltip-anchor {
  position: relative;
  display: inline-block;
}

.tooltip-content {
  visibility: hidden;
  width: 360px;
  background-color: hsla(0, 0%, 0%, 0.8);
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 10px 10px;
  position: absolute;
  z-index: 1;
  bottom: 100%;
  left: -2rem;
  margin-left: 0px; /* Use half of the width to center the tooltip */
  opacity: 0;
  transition: opacity 0.3s;
  font-size: 14px;
}

@media screen and (min-width: 1200px) {
  .tooltip-content {
    width: 400px;
    bottom: 120%;
    left: 50%;
    margin-left: -200px;
  }
  .tooltip-content::after {
    content: "";
    position: absolute;
    top: 100%; /* Position the arrow at the bottom of the tooltip */
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: black transparent transparent transparent;
  }
}
.tooltip-anchor:hover .tooltip-content {
  visibility: visible;
  opacity: 1;
}

.irr-icon {
  margin-bottom: -2px;
}

.sus-info-accs {
  margin-top: 0.5rem;
}
.sus-info-accs h3 {
  font-size: 1.3rem;
}
.sus-info-accs .wp-block-pb-accordion-item {
  background: white;
  margin: 0 0 0.5rem;
  padding: 0.5rem 1rem;
}

@media screen and (max-width: 781px) {
  .sus-info-accs {
    gap: 0;
  }
  .m-t-0 {
    margin-top: 0;
  }
}
/* kaushan-script-regular - latin */
@font-face {
  font-family: "Kaushan Script";
  font-style: normal;
  font-weight: 400;
  src: url("/wp-content/themes/bmtg/dist/kaushan-script-v14-latin-regular.38523d7e.eot");
  /* IE9 Compat Modes */
  src: local(""), url("/wp-content/themes/bmtg/dist/kaushan-script-v14-latin-regular.38523d7e.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/bmtg/dist/kaushan-script-v14-latin-regular.b972b3ce.woff2") format("woff2"), url("/wp-content/themes/bmtg/dist/kaushan-script-v14-latin-regular.01b389d4.woff") format("woff"), url("/wp-content/themes/bmtg/dist/kaushan-script-v14-latin-regular.0c1f1d98.ttf") format("truetype"), url("/wp-content/themes/bmtg/dist/kaushan-script-v14-latin-regular.f97cff65.svg#KaushanScript") format("svg");
  /* Legacy iOS */
}
.blockwidthsmall {
  max-width: 820px;
  margin: 0 auto;
}

.campaignsitedownbtn {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 5rem;
  text-align: center;
  display: inline;
  width: 4rem;
  margin: 0 auto;
  animation: MoveUpDown 2s linear infinite;
  position: absolute;
  left: 0;
  bottom: 0;
}
.campaignsitedownbtn .downsvg {
  height: 48px;
  width: 48px;
  fill: white;
}

@keyframes MoveUpDown {
  0%, 100% {
    bottom: 4rem;
  }
  50% {
    bottom: 5rem;
  }
}
@media screen and (min-width : 1224px) {
  @keyframes MoveUpDown {
    0%, 100% {
      bottom: 2rem;
    }
    50% {
      bottom: 3rem;
    }
  }
}
.campaigncontent ul li {
  font-size: 1.1rem;
}
@media screen and (min-width : 768px) {
  .campaigncontent h2 {
    font-size: 4.5rem;
    line-height: 1.2;
    margin: 2rem 0;
  }
}

.contentblue {
  background: #0061a1;
}
.contentblue section h1,
.contentblue section h2,
.contentblue section h3,
.contentblue section h4 {
  color: #fefefe;
  margin: 2rem 0;
}
.contentblue section p {
  color: #efefef;
}

.campaigncontentcontent section {
  text-align: center;
  padding: 3rem 1rem;
  max-width: 1200px;
  margin: 0 auto;
}
.campaigncontentcontent .greenbutton {
  display: inline-block;
  background: #7ac142;
  margin-top: 1rem;
  font-size: 1rem;
  padding: 0.7rem 2rem;
}
.campaigncontentcontent .greenbutton:hover, .campaigncontentcontent .greenbutton:active, .campaigncontentcontent .greenbutton:focus {
  background: #008aca;
}

@media screen and (max-width: 1224px) {
  .campaign-area {
    margin-top: 0 !important;
  }
}
.kampagnenlogo {
  position: fixed;
  z-index: 9;
  width: 100% !important;
}
.kampagnenlogo .kampagnen-branding {
  margin-top: 0.5rem;
  max-width: 140px;
  margin-left: 1rem;
  background: rgba(255, 255, 255, 0.95);
  padding: 0.6rem 0.8rem 0.4rem;
  border-radius: 10px;
  filter: drop-shadow(0.1rem 0.1rem 0.2rem rgba(0, 0, 0, 0.3));
}

.campaignslider {
  z-index: 0;
  width: 100%;
  background: black;
  height: calc(100vh - 7rem);
}
@media screen and (min-width : 768px) {
  .campaignslider {
    height: calc(100vh - 5rem);
  }
}
@media screen and (min-width : 1224px) {
  .campaignslider {
    height: 98vh;
  }
}
.campaignslider .flickity-page-dots {
  bottom: 1rem;
}
.campaignslider .flickity-page-dots .dot {
  background: white;
}
.campaignslider .slide {
  height: calc(100vh - 7rem);
  overflow: hidden;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
@media screen and (min-width : 768px) {
  .campaignslider .slide {
    height: calc(100vh - 5rem);
  }
}
@media screen and (min-width : 1224px) {
  .campaignslider .slide {
    height: 98vh;
  }
}
.campaignslider .slide .slidertext {
  flex: 1 0 auto;
  position: absolute;
  text-align: center;
}
.campaignslider .slide .slidertext .slidertextinner h1,
.campaignslider .slide .slidertext .slidertextinner h2,
.campaignslider .slide .slidertext .slidertextinner .slidertitle {
  font-family: "Kaushan Script", cursive;
  color: white;
  font-size: 2.5rem;
  max-width: 70vw;
  line-height: 1.2;
  margin: 0 auto;
}
@media screen and (min-width : 768px) {
  .campaignslider .slide .slidertext .slidertextinner h1,
  .campaignslider .slide .slidertext .slidertextinner h2,
  .campaignslider .slide .slidertext .slidertextinner .slidertitle {
    font-size: 6rem;
  }
}
@media screen and (min-width : 1224px) {
  .campaignslider .slide .slidertext .slidertextinner h1,
  .campaignslider .slide .slidertext .slidertextinner h2,
  .campaignslider .slide .slidertext .slidertextinner .slidertitle {
    font-size: 7rem;
  }
}
.campaignslider .slide .slidertext .slidertextinner p {
  font-size: 1rem;
}
@media screen and (min-width : 768px) {
  .campaignslider .slide .slidertext .slidertextinner p {
    font-size: 1.2rem;
  }
}
@media screen and (min-width : 1224px) {
  .campaignslider .slide .slidertext .slidertextinner p {
    font-size: 1.3rem;
  }
}
.campaignslider .slide > img {
  overflow: hidden;
  object-fit: cover;
  width: 100%;
  height: 100%;
  opacity: 0.6;
}

.campaigncontent {
  width: 100%;
}
.campaigncontent section {
  margin: 8rem auto;
}
.campaigncontent section.imagetext {
  display: flex;
  flex-flow: column;
  align-items: center;
  max-width: 1200px;
  display: flex;
  flex-flow: row wrap;
}
.campaigncontent section.imagetext h2 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}
.campaigncontent section.imagetext p {
  margin-top: 0;
}
.campaigncontent section.imagetext a.button {
  display: inline-block;
  margin-top: 1rem;
}
.campaigncontent section.imagetext .imagetext-image {
  flex: 1 0 auto;
  width: 100%;
}
@media screen and (min-width : 768px) {
  .campaigncontent section.imagetext .imagetext-image {
    width: 45%;
  }
}
.campaigncontent section.imagetext .imagetext-text {
  padding: 0 1rem;
  flex: 1 0 auto;
  width: 100%;
}
@media screen and (min-width : 768px) {
  .campaigncontent section.imagetext .imagetext-text {
    padding-left: 4rem;
    width: 55%;
  }
}

#blogandnewscampaign #blog {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}
#blogandnewscampaign #blog footer .btnwrap {
  text-align: center;
}
#blogandnewscampaign #blog .blogblock {
  flex: 1 0 auto;
  width: 100%;
  margin: 0;
}
@media screen and (min-width : 768px) {
  #blogandnewscampaign #blog .blogblock {
    width: 50%;
  }
}
#blogandnewscampaign #blog .blogblock:hover img, #blogandnewscampaign #blog .blogblock:focus img, #blogandnewscampaign #blog .blogblock:active img {
  box-shadow: none;
}
#blogandnewscampaign #blog .blogblock article {
  padding: 1rem;
}
#blogandnewscampaign #blog .blogblock article .article-content {
  margin: 0;
  width: 100%;
  height: auto;
}
#blogandnewscampaign #blog .blogblock article .article-content h2 {
  margin: 1rem 0 0.5rem;
  font-size: 1.6rem;
}
#blogandnewscampaign #blog .blogblock article .article-content p {
  margin: 0 0 0.5rem;
  line-height: 1.4;
}
#blogandnewscampaign #blog .blogblock article .article-content .mehr {
  margin-top: 1rem;
  font-size: 1rem;
}
#blogandnewscampaign #blog .blogblock article img {
  width: 100%;
  height: 330px;
}

.panels {
  overflow: hidden;
  display: flex;
  flex-flow: column;
}

.panel {
  position: relative;
  cursor: pointer;
  box-shadow: inset 0 0 0 5px rgba(255, 255, 255, 0.1);
  color: white;
  text-align: center;
  align-items: center;
  /* Safari transitionend event.propertyName === flex */
  /* Chrome + FF transitionend event.propertyName === flex-grow */
  transition: font-size 0.7s cubic-bezier(0.61, -0.19, 0.7, -0.11), flex 0.7s cubic-bezier(0.61, -0.19, 0.7, -0.11), background 0.2s;
  font-size: 1.6rem;
  background-size: cover;
  background-position: center;
  flex: 1;
  justify-content: center;
  display: flex;
  flex-direction: column;
  min-height: 250px;
}
.panel img {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

@media screen and (min-width : 768px) {
  .panel {
    min-height: initial;
  }
  .panels {
    min-height: 60vh;
    flex-flow: row;
  }
  .campaignpanels {
    display: flex;
  }
}
@media screen and (min-width : 1224px) {
  .panels {
    min-height: 85vh;
    margin-bottom: -8rem;
  }
}
/* Flex Items */
.panel > * {
  margin: 0;
  width: 100%;
  transition: transform 0.5s;
  flex: 1 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.panel > *:first-child {
  transform: translateY(-100%);
  opacity: 0;
}

.panel.open-active > *:first-child {
  transform: translateY(0);
  opacity: 1;
}

.panel > *:last-child {
  transform: translateY(100%);
  opacity: 0;
}

.panel.open-active > *:last-child {
  transform: translateY(0);
  opacity: 1;
}

.panel p {
  font-family: "Kaushan Script";
  word-break: normal;
  text-shadow: 0 0 9px rgb(0, 0, 0), 0 0 19px rgb(0, 0, 0);
  padding: 0 1rem;
}

.panel.open {
  flex: 3;
  font-size: 2rem;
}

@media only screen and (min-width: 768px) {
  .panel {
    font-size: 2rem;
  }
  .panel.open {
    font-size: 3rem;
  }
}
@media only screen and (min-width: 1224px) {
  .panel {
    font-size: 3rem;
  }
  .panel.open {
    font-size: 4rem;
  }
}
.article-content h2 {
  line-height: 2rem !important;
}

/* Main column width */
.wp-block {
  max-width: 960px;
}

/* Width of "wide" blocks */
.wp-block[data-align=wide] {
  max-width: 1080px;
}

/* Width of "full-wide" blocks */
.wp-block[data-align=full] {
  max-width: none;
}

.campaign-blockcontent {
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .campaign-blockcontent {
    padding: 0 1rem;
  }
}
.campaign-blockcontent p {
  max-width: 785px;
  margin: 0.5rem auto;
}
.campaign-blockcontent .mehr {
  width: 100%;
}
.campaign-blockcontent .wp-block-media-text {
  margin-top: 4rem !important;
  margin-bottom: 4rem !important;
}
.campaign-blockcontent .wp-block-media-text p {
  max-width: initial;
}
.campaign-blockcontent .wp-block-image {
  margin: 0 auto;
}
.campaign-blockcontent .wp-block-gallery > ul,
.campaign-blockcontent ol {
  max-width: initial;
}
.campaign-blockcontent .alignwide {
  max-width: 1600px;
  margin: 0 auto;
  margin-bottom: 0.9em;
}

.wp-block-bod-modal-block button {
  font-size: 1.15rem;
  line-height: 1.5;
  text-transform: initial !important;
  letter-spacing: 1.05px !important;
  padding: calc(0.667em + 2px) calc(1.333em + 2px) !important;
  border-radius: 30px !important;
  font-family: "TheSans-SemiLight" !important;
}

.bod-block-popup-wrap.active .bod-block-popup {
  padding: 1.5rem !important;
}

.kampagnenlogo-xmas {
  position: fixed;
  z-index: 9;
  width: 100% !important;
}
.kampagnenlogo-xmas .kampagnen-branding-xmas {
  margin: 2.5rem auto 0;
  max-width: 150px;
  background: rgba(255, 255, 255, 0.95);
  padding: 0.6rem 0.8rem 0.4rem;
  border-radius: 10px;
  position: relative;
  filter: drop-shadow(0.1rem 0.1rem 0.2rem rgba(0, 0, 0, 0.3));
}
.kampagnenlogo-xmas .kampagnen-branding-xmas .santahat {
  position: absolute;
  left: -1.3rem;
  top: -2.3rem;
  filter: drop-shadow(0.1rem 0.1rem 0.2rem rgba(0, 0, 0, 0.3));
}

@media screen and (min-width : 1224px) {
  .kampagnenlogo-xmas .kampagnen-branding-xmas {
    margin-top: 2.4rem;
    max-width: 180px;
    margin-left: 1.5rem;
  }
}
.xmas-quote-subtitle {
  margin-top: -1.5rem !important;
  margin-bottom: 1rem !important;
}

.xmas-avatar {
  width: 150px !important;
  height: initial !important;
  object-fit: initial !important;
  position: absolute !important;
  bottom: -1.5rem;
  left: 0rem;
  opacity: 1 !important;
}

@media screen and (min-width : 1224px) {
  .xmas-avatar {
    width: 450px !important;
  }
}
.snow,
.snow:before,
.snow:after {
  position: absolute;
  top: -650px;
  left: 0;
  bottom: 0;
  right: 0;
  background-image: radial-gradient(4px 4px at 100px 50px, #fff, transparent), radial-gradient(6px 6px at 200px 150px, #fff, transparent), radial-gradient(3px 3px at 300px 250px, #fff 50%, transparent), radial-gradient(4px 4px at 400px 350px, #fff 50%, transparent), radial-gradient(6px 6px at 500px 100px, #fff 50%, transparent), radial-gradient(3px 3px at 50px 200px, #fff 50%, transparent), radial-gradient(4px 4px at 150px 300px, #fff 50%, transparent), radial-gradient(6px 6px at 250px 400px, #fff 50%, transparent), radial-gradient(3px 3px at 350px 500px, #fff 50%, transparent);
  background-size: 650px 650px;
  animation: snow 3s linear infinite;
  content: "";
}

.snow:after {
  margin-left: -250px;
  opacity: 0.5;
  filter: blur(2px);
  animation-duration: 6s;
  animation-direction: reverse;
}

.snow:before {
  margin-left: -350px;
  opacity: 0.7;
  filter: blur(1px);
  animation-duration: 9s;
  animation-direction: reverse;
}

@keyframes snow {
  to {
    transform: translateY(650px);
  }
}
.slidertextinner .textcontent {
  z-index: 999;
  position: relative;
  color: white;
  font-size: 120%;
  max-width: 1000px;
  margin: 3rem 0.5rem 0;
}
@media screen and (min-width : 1224px) {
  .slidertextinner .textcontent {
    margin: 3rem auto 0;
  }
}

.opacity-4 {
  opacity: 0.4 !important;
}

#bottommenu-xmas {
  margin-top: 3rem;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
  justify-items: center;
}
#bottommenu-xmas a {
  font-size: 1rem;
  margin: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 25px;
  display: flex;
  transition: all 0.2s ease-in-out;
  color: white;
  border-bottom: 2px solid #ffcf40;
  border-top: 2px solid rgba(0, 0, 0, 0);
}
#bottommenu-xmas a:hover, #bottommenu-xmas a:focus {
  border-top: 2px solid #ffcf40;
  color: #ffcf40;
}
#bottommenu-xmas a img {
  width: 25px;
  height: 25px;
  margin-right: 0.5rem;
}

@media screen and (min-width : 768px) {
  #bottommenu-xmas {
    padding: 0 2rem;
  }
  #bottommenu-xmas a {
    font-size: 1.2rem;
  }
  #bottommenu-xmas img {
    max-width: 100px;
    margin-right: 0.7rem;
  }
}
.xmasstars {
  opacity: 0.06;
  z-index: -1;
  position: fixed;
  left: 20%;
  top: 10%;
  width: 100%;
  height: 100px;
}
.xmasstars .star-1 {
  position: fixed;
  left: 7%;
  top: 20%;
}
.xmasstars .star-2 {
  position: fixed;
  left: 12%;
  top: 60%;
}
.xmasstars .star-3 {
  position: fixed;
  left: initial;
  right: 20%;
  top: 70%;
}
.xmasstars .star-4 {
  position: fixed;
  left: initial;
  right: 50%;
  top: 40%;
}
.xmasstars .star-5 {
  position: fixed;
  left: initial;
  right: 7%;
  top: 30%;
}

@media screen and (min-width : 768px) {
  .page-template-page_xmas .wp-block-media-text,
  .page-template-page_xmas .wp-block-columns {
    padding: 0 2rem;
  }
}
.touren-meta {
  font-family: "TheSans-SemiBold";
  display: flex;
  flex-flow: row;
  align-items: flex-end;
  padding: 0 0 0 1rem;
  margin-top: -0.5rem;
  margin-bottom: 1.5rem;
  color: #7ac142;
}
.touren-meta > div {
  display: flex;
  flex-flow: row;
  align-items: center;
  font-size: 0.9rem;
}
.touren-meta > div .svgicon {
  height: 0.7rem;
  width: 0.7rem;
  margin-right: 0.4rem;
}
.touren-meta > div .data {
  padding-right: 0.5rem;
}
.touren-meta > div .last {
  padding-right: 0;
}
@media screen and (min-width : 500px) {
  .touren-meta > div {
    font-size: 1rem;
  }
  .touren-meta > div .svgicon {
    height: 1.1rem;
    width: 1.1rem;
    margin-right: 0.4rem;
  }
  .touren-meta > div .data {
    padding-right: 1.2rem;
  }
}
@media screen and (min-width : 1224px) {
  .touren-meta {
    padding: 0;
  }
  .touren-meta > div {
    font-size: 1.1rem;
  }
  .touren-meta > div .svgicon {
    height: 1.2rem;
    width: 1.2rem;
    margin-right: 0.5rem;
  }
  .touren-meta > div .data {
    padding-right: 2rem;
  }
}

.tourindexitem .touren-meta {
  width: 100%;
  justify-content: space-between;
  padding-right: 0.5rem;
}
@media screen and (min-width : 768px) {
  .tourindexitem .touren-meta {
    padding-left: 0;
    padding-right: 0;
  }
  .tourindexitem .touren-meta > div {
    font-size: 1rem;
  }
  .tourindexitem .touren-meta > div .svgicon {
    height: 1rem;
    width: 1rem;
    margin-right: 0.2rem;
  }
  .tourindexitem .touren-meta > div .data {
    padding-right: 0.2rem;
  }
}
@media screen and (min-width : 1224px) {
  .tourindexitem .touren-meta > div {
    font-size: 1.1rem;
  }
  .tourindexitem .touren-meta > div .svgicon {
    height: 1rem;
    width: 1rem;
    margin-right: 0.2rem;
  }
  .tourindexitem .touren-meta > div .data {
    line-height: 0.9;
    padding-right: 1.5rem;
  }
}
.tourindexitem .box {
  transition: all 0.2s;
  overflow: hidden;
  line-height: 0;
  margin-bottom: 0.5rem;
}
.tourindexitem:hover .box img, .tourindexitem:focus .box img {
  transform: scale(1.07);
}

.tourenheader {
  margin-left: 0;
}

.tourenheader .entry-title {
  margin-bottom: 0.5rem;
}

.touren-categories {
  margin-top: 0;
  margin-bottom: 2rem;
  padding: 0 1rem;
}
.touren-categories a {
  display: inline-block;
  background: #008aca;
}
.touren-categories a:hover, .touren-categories a:focus {
  color: white;
  background: #7ac142;
}

@media screen and (min-width : 1224px) {
  .touren-categories {
    padding: 0;
  }
}
.totlen,
.totaleleup,
.totaleledown {
  margin-right: 1rem;
  margin-bottom: 0.8rem;
}
.totlen .summarylabel,
.totaleleup .summarylabel,
.totaleledown .summarylabel {
  width: 16px;
  height: 16px;
  line-height: 2;
}
.totlen .summaryvalue,
.totaleleup .summaryvalue,
.totaleledown .summaryvalue {
  color: #7ac142;
  font-size: 18px;
}

/* TABS  */
#tourentabs {
  margin-top: 2rem;
}
#tourentabs .tabbed figure {
  display: block;
  margin-left: 0;
  border-bottom: 1px solid silver;
  clear: both;
}
#tourentabs .tabbed > input,
#tourentabs .tabbed figure > div {
  display: none;
}
#tourentabs .tabbed figure > div {
  padding: 20px 5px;
  width: 100%;
  border: 1px solid silver;
  background: #fff;
  line-height: 1.5em;
  letter-spacing: 0.3px;
  color: #444;
}
#tourentabs #tab1:checked ~ figure .tab1,
#tourentabs #tab2:checked ~ figure .tab2,
#tourentabs #tab3:checked ~ figure .tab3 {
  display: block;
}
#tourentabs #tab1:checked ~ figure .tab1 iframe,
#tourentabs #tab2:checked ~ figure .tab2 iframe,
#tourentabs #tab3:checked ~ figure .tab3 iframe {
  border: none !important;
}
#tourentabs nav label {
  float: left;
  padding: 15px 15px;
  border-top: 1px solid silver;
  border-right: 1px solid silver;
  background: hsl(210, 50%, 50%);
  color: #eee;
  cursor: pointer;
}
#tourentabs nav label:nth-child(1) {
  border-left: 1px solid silver;
}
#tourentabs nav label:hover {
  background: hsl(210, 50%, 40%);
}
#tourentabs nav label:active {
  background: #ffffff;
}
#tourentabs #tab1:checked ~ nav label[for=tab1],
#tourentabs #tab2:checked ~ nav label[for=tab2],
#tourentabs #tab3:checked ~ nav label[for=tab3] {
  background: white;
  color: #111;
  position: relative;
  border-bottom: none;
}
#tourentabs #tab1:checked ~ nav label[for=tab1]:after,
#tourentabs #tab2:checked ~ nav label[for=tab2]:after,
#tourentabs #tab3:checked ~ nav label[for=tab3]:after {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: white;
  left: 0;
  bottom: -1px;
}

.banderole p {
  position: relative;
  margin: 0;
  padding: 0;
}
.banderole p span {
  padding-right: 10px;
}
.banderole .pline:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 3.7rem;
  right: 3.4rem;
  height: 0.6rem;
  border-top: 1px solid white;
  z-index: -1;
}

.cr {
  font-size: 0.9rem;
  width: 250px;
  padding: 0.25rem;
  position: absolute;
  text-align: left;
  text-transform: uppercase;
  color: white;
  line-height: 1.2rem;
  padding-left: 5rem;
}

.cr-sticky {
  position: absolute;
}

/* Positions */
.cr-top {
  top: 35px;
}

.cr-right {
  right: -60px;
}

/* Rotations */
.cr-bottom.cr-right {
  transform: rotate(-45deg);
}

.cr-top.cr-right {
  transform: rotate(45deg);
}

/* Colors */
.cr-blue {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0061a1+0,0079c1+25,0079c1+78,0061a1+100 */
  background: #0061a1; /* Old browsers */
  background: -moz-linear-gradient(left, #0061a1 0%, #0079c1 25%, #0079c1 78%, #0061a1 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #0061a1 0%, #0079c1 25%, #0079c1 78%, #0061a1 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #0061a1 0%, #0079c1 25%, #0079c1 78%, #0061a1 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#0061a1", endColorstr="#0061a1",GradientType=1 );
  /* IE6-9 */
}

.heart-animation {
  margin-top: -0.6rem;
}
.heart-animation .heart {
  margin-top: -1.2rem;
  margin-left: -1.6rem;
  width: 100px;
  height: 100px;
  background: url("/wp-content/themes/bmtg/dist/heart.83b4f17f.png") no-repeat;
  background-position: 0 0;
  cursor: pointer;
  transition: background-position 1s steps(28);
  transition-duration: 0s;
}
.heart-animation .heart.heart-liked {
  transition-duration: 1s;
  background-position: -2800px 0;
}
.heart-animation .stage {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.heart-animation span {
  margin-left: -0.2rem;
  margin-top: -1.6rem;
  color: grey;
}
.heart-animation .gemerkt {
  color: red;
}

#merkliste {
  padding: 0 1rem 3rem;
}

.sharelikebar {
  height: 60px;
  max-width: 823px;
  display: flex;
  flex-flow: row;
  text-align: center;
  gap: 1.2rem;
  margin: 0;
  margin-bottom: 1rem;
}
.sharelikebar .share-button span,
.sharelikebar .heart-animation span {
  font-size: 0.7rem;
  text-transform: uppercase;
  display: block;
}
@media screen and (max-width: 1223px) {
  .sharelikebar {
    padding-left: 1rem;
  }
}

.sorting-icon {
  height: 20px;
  width: 30px;
}

.share-button {
  transition: all 0.2s;
  margin-top: 0.4rem !important;
}
.share-button svg {
  transition: all 0.2s;
}
.share-button span {
  margin-top: -0.3rem;
}
.share-button:hover span, .share-button:focus span {
  text-decoration: underline;
}
.share-button .hidden {
  display: none;
}
.share-button svg {
  width: 50px;
  height: 35px;
  filter: invert(77%) sepia(9%) saturate(373%) hue-rotate(160deg) brightness(97%) contrast(83%);
}
.share-button span {
  text-align: center;
  color: #888;
}
.share-button .share-dialog {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.sharelikebar {
  position: relative;
}
.sharelikebar .user-favorites:hover, .sharelikebar .user-favorites:focus {
  opacity: 1 !important;
  box-shadow: rgba(0, 0, 0, 0.25);
}
.sharelikebar .user-favorites:hover .merken, .sharelikebar .user-favorites:focus .merken {
  text-decoration: underline;
}
.sharelikebar .share-dialog {
  background: white;
  padding: 0.7rem 1rem;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.25);
  z-index: 99999;
  position: absolute;
  left: 0;
  top: 5rem;
  display: none;
  border: 1px solid #ddd;
}
@media screen and (min-width : 1224px) {
  .sharelikebar .share-dialog {
    left: -0.85rem;
  }
}
.sharelikebar .share-dialog a {
  display: flex;
  flex-flow: row;
  align-items: center;
  text-align: left;
  line-height: 40px;
}
.sharelikebar .share-dialog a img {
  margin-right: 0.5rem;
}
.sharelikebar .share-dialog a:hover img, .sharelikebar .share-dialog a:focus img {
  opacity: 0.7;
}
.sharelikebar .share-dialog:after, .sharelikebar .share-dialog:before {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.sharelikebar .share-dialog:after {
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 15px;
  margin-left: -15px;
}
.sharelikebar .share-dialog:before {
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 16px;
  margin-left: -16px;
}
.sharelikebar .share-dialog.is-open {
  display: block;
  z-index: 2;
}

.share-dialog-open span {
  color: #008aca;
}
.share-dialog-open svg {
  filter: invert(28%) sepia(80%) saturate(1963%) hue-rotate(177deg) brightness(105%) contrast(101%);
}

@media screen {
  #merkliste ol {
    list-style-position: inside;
    list-style: none;
    counter-reset: item;
    padding-left: 0;
    margin: 0;
    padding-top: 0;
  }
  #merkliste ol li.remove-item {
    opacity: 0.6;
  }
  #merkliste ol li.remove-item a {
    text-decoration: line-through;
  }
  #merkliste ol li.remove-item:before {
    background: lightgrey !important;
    text-decoration: line-through;
  }
  #merkliste ol li:hover:before {
    background: #7ac142;
  }
  #merkliste ol li {
    counter-increment: item;
    margin-bottom: 5px;
    margin: 0 0 1rem 0;
    border-radius: 10px;
    background: #f5f5f5;
    padding-left: 1rem;
    position: relative;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
  }
  #merkliste ol li .merkliste-url {
    display: block;
    width: 100%;
    flex: 1 0 auto;
    color: grey;
    display: none;
  }
}
@media screen and (min-width : 768px) {
  #merkliste ol li {
    min-width: 740px;
  }
}
@media screen {
  #merkliste ol li a {
    min-width: calc(100% - 6.2rem);
    cursor: pointer !important;
    padding: 1rem 0;
    display: inline-block;
    margin-right: 4rem;
    margin-left: 2.2rem;
  }
  #merkliste ol li .delete-favorite {
    position: absolute;
    display: inline-block;
    right: 0;
    border-left: 1px solid #e5e5e5;
    height: 100%;
    padding: 1rem 1.2rem;
    border-radius: 0 10px 10px 0;
    display: flex;
    align-items: center;
    opacity: 0.7;
  }
  #merkliste ol li .delete-favorite:hover {
    cursor: pointer;
    opacity: 1;
  }
  #merkliste ol li:before {
    transition: all 0.2s;
    position: absolute;
    left: 0.7rem;
    margin-right: 0.8rem;
    content: counter(item);
    background: #0061a1;
    border-radius: 100%;
    color: white;
    width: 1.5em;
    text-align: center;
    display: inline-block;
  }
  #merkliste ol li:hover {
    cursor: grab;
  }
  #merkliste ol.no-entries li {
    padding: 1rem;
    cursor: default;
  }
  #merkliste ol.no-entries li:before {
    display: none !important;
  }
}

@media screen {
  .hidden-logo {
    display: none;
  }
}
@media print {
  .hidden-logo {
    display: block !important;
    margin-bottom: 3rem;
  }
  #merkliste ol {
    padding-left: 1.5rem;
    padding-top: 0;
  }
  #merkliste ol li {
    margin-bottom: 1rem;
  }
  #merkliste ol li .merkliste-url {
    display: block;
  }
}
.print-button {
  display: inline-block;
  flex: 0 1 auto;
  align-items: center;
  border-radius: 40px;
  position: relative;
  background: #008aca;
  color: white !important;
  transition: all 0.2s;
  padding: 0.7em 1.2em;
  margin-top: 2rem;
}
.print-button svg {
  position: absolute;
  top: 0.6rem;
  left: 1.5rem;
  fill: white;
  width: 20px;
  margin-right: 0.5rem;
}
.print-button span {
  padding-left: 2.2rem;
}
.print-button:hover, .print-button:focus {
  background: #7ac142;
}

@media screen and (max-width: 768px) {
  .ais-Hits-list .ais-Hits-item {
    padding-bottom: 13px !important;
    margin: 0 0 1rem 0 !important;
  }
  .ais-Hits-list .ais-hits--thumbnail {
    display: none !important;
  }
  .ais-Hits-list .ais-hits--content h2 {
    font-size: 1.1rem !important;
  }
  .ais-Hits-list .ais-hits--content .excerpt {
    display: none !important;
  }
}
@media screen and (max-width: 1224px) {
  .ais-Hits-list .ais-hits--content h2 {
    font-size: 1.2rem !important;
  }
}
/* Hide default marker */
summary::-webkit-details-marker,
summary::marker {
  display: none !important;
  content: "" !important;
}

summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none !important;
  outline: none !important;
  border-radius: 8px !important;
  padding: 10px 10px 10px 3.1rem !important;
  margin: 0 -2rem;
  background: #f5f5f5;
  color: #007dbd;
  cursor: pointer;
  position: relative;
  min-height: 0;
  height: auto;
  line-height: 1.4;
  font-weight: 600;
  font-size: 1.1em;
}

summary:focus-visible {
  background: #444 !important;
  color: white !important;
}

/* Icon before summary text */
summary::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  width: 25px;
  height: 25px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23008ad1' viewBox='0 0 512 512'%3E%3Cpath d='M480 256A224 224 0 1 1 32 256a224 224 0 1 1 448 0zM0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM235.3 379.3l112-112c6.2-6.2 6.2-16.4 0-22.6l-112-112c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L313.4 256 212.7 356.7c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform 0.3s ease;
}

details[open] summary::before {
  transform: translateY(-50%) rotate(90deg);
}

details[open] {
  padding-bottom: 1rem;
}

/* Remove bottom border radius when details are open */
details[open] summary {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

/* Animate only the content, not the summary */
details > *:not(summary) {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s, padding 0.3s;
  will-change: max-height, opacity, padding;
}

details[open] > *:not(summary) {
  max-height: 2000px;
  opacity: 1;
  padding-bottom: 1.2em;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s 0.1s, padding 0.3s;
  padding: 0;
}

/* Style the details block */
details {
  border-radius: 8px;
  box-shadow: 0 0 0 1px #e5e5e5;
  background: #fff;
  margin-bottom: 1.5rem;
  overflow: visible;
  padding: 0 2rem;
}

/* Mobile optimizations */
@media (max-width: 600px) {
  summary {
    font-size: 1em;
    padding: 12px 10px 12px 2.5rem !important;
  }
  summary::before {
    left: 8px;
    width: 20px;
    height: 20px;
  }
}
/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Nprogress Bar
--------------------------------------------------------------*/
/* Make clicks pass-through */
#nprogress {
  pointer-events: none;
}

#nprogress .bar {
  background: #7ac142;
  position: fixed;
  z-index: 999991031;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
}

/* Fancy blur effect */
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0px;
  width: 100px;
  height: 100%;
  box-shadow: 0 0 10px #7ac142, 0 0 5px #7ac142;
  opacity: 1;
  -webkit-transform: rotate(3deg) translate(0px, -4px);
  -ms-transform: rotate(3deg) translate(0px, -4px);
  transform: rotate(3deg) translate(0px, -4px);
}

/* Remove these to get rid of the spinner */
#nprogress .spinner {
  display: block;
  position: fixed;
  z-index: 1031;
  top: 15px;
  right: 15px;
}

#nprogress .spinner-icon {
  width: 18px;
  height: 18px;
  box-sizing: border-box;
  border: solid 2px transparent;
  border-top-color: #7ac142;
  border-left-color: #7ac142;
  border-radius: 50%;
  -webkit-animation: nprogress-spinner 400ms linear infinite;
  animation: nprogress-spinner 400ms linear infinite;
}

.nprogress-custom-parent {
  overflow: hidden;
  position: relative;
}

.nprogress-custom-parent #nprogress .spinner,
.nprogress-custom-parent #nprogress .bar {
  position: absolute;
}

@-webkit-keyframes nprogress-spinner {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes nprogress-spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Print
--------------------------------------------------------------*/
@media print {
  #breadcrumbs {
    display: none;
  }
  .merkliste-excerpt {
    display: none;
  }
  .print-button {
    display: none;
  }
  .delete-favorite {
    display: none !important;
  }
  .buchungstool {
    display: none;
  }
  #masthead {
    display: none;
  }
  #colophon {
    display: none;
  }
  #bottommenu {
    display: none;
  }
  #sidebarmenu {
    display: none;
  }
  #menuwrapper {
    display: none;
  }
  .notfrontpagecontent {
    top: 15vh;
  }
  .headerFront {
    display: none;
  }
  .full-content {
    box-shadow: none;
  }
  .mehr {
    display: none;
  }
  .eportal {
    display: none;
  }
  .eventcontent {
    margin-top: -12rem;
  }
  .bottom-paging-nav {
    display: none;
  }
  #views {
    display: none;
  }
  .bannerbottom {
    display: none;
  }
  .archivewrapper {
    display: none;
  }
  .content-area {
    margin-top: -7rem;
  }
  p {
    break-after: avoid-page;
  }
}
/* BEFORE AFTER SLIDER PLUIGIN */

/*# sourceMappingURL=/wp-content/themes/bmtg/dist/bundle.css.map */