/*
        This font software is the property of Commercial Type.

        You may not modify the font software, use it on another website, or install it on a computer.

        License information is available at http://commercialtype.com/eula
        For more information please visit Commercial Type at http://commercialtype.com or email us at info[at]commercialtype.com

        Copyright (C) 2013 Schwartzco Inc.
        License: 1602-EOWFHG     
*/


@font-face {
  font-family: 'Graphik Web';
  src: url('../themes/medienfalle/assets/css/graphikregular/Graphik-Regular-Web.eot');
  src: url('../themes/medienfalle/assets/css/graphikregular/Graphik-Regular-Web.eot?#iefix') format('embedded-opentype'),
     url('../themes/medienfalle/assets/css/graphikregular/Graphik-Regular-Web.woff') format('woff');
  font-weight:  400;
  font-style:   normal;
  font-stretch: normal;
}

.Graphik-Regular-Web {
  font-family: 'Graphik Web';
  font-weight:  400;
  font-style:   normal;
  font-stretch: normal;
}


/*!
 * froala_editor v2.3.4 (https://www.froala.com/wysiwyg-editor)
 * License https://froala.com/wysiwyg-editor/terms/
 * Copyright 2014-2016 Froala Labs
 */

.clearfix::after{clear:both;display:block;content:""}.fr-view strong{font-weight:700}.fr-view table{border:0;border-collapse:collapse;empty-cells:show;max-width:100%}.fr-view table.fr-dashed-borders td,.fr-view table.fr-dashed-borders th{border-style:dashed}.fr-view table.fr-alternate-rows tbody tr:nth-child(2n){background:#f5f5f5}.fr-view table td,.fr-view table th{border:1px solid #ddd}.fr-view table td:empty,.fr-view table th:empty{height:20px}.fr-view table td.fr-highlighted,.fr-view table th.fr-highlighted{border:1px double red}.fr-view table td.fr-thick,.fr-view table th.fr-thick{border-width:2px}.fr-view table th{background:#e6e6e6}.fr-view hr{clear:both;user-select:none;-o-user-select:none;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;page-break-after:always}.fr-view .fr-file{position:relative}.fr-view .fr-file::after{position:relative;content:"\1F4CE";font-weight:400}.fr-view pre{white-space:pre-wrap;word-wrap:break-word}.fr-view[dir=rtl] blockquote{border-left:0;border-right:solid 2px #5e35b1;margin-right:0;padding-right:5px;padding-left:0}.fr-view[dir=rtl] blockquote blockquote{border-color:#00bcd4}.fr-view[dir=rtl] blockquote blockquote blockquote{border-color:#43a047}.fr-view blockquote{border-left:solid 2px #5e35b1;margin-left:0;padding-left:5px;color:#5e35b1}.fr-view blockquote blockquote{border-color:#00bcd4;color:#00bcd4}.fr-view blockquote blockquote blockquote{border-color:#43a047;color:#43a047}.fr-view span.fr-emoticon{font-weight:400;font-family:"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols;display:inline;line-height:0}.fr-view span.fr-emoticon.fr-emoticon-img{background-repeat:no-repeat!important;font-size:inherit;height:1em;width:1em;min-height:20px;min-width:20px;display:inline-block;margin:-.1em .1em .1em;line-height:1;vertical-align:middle}.fr-view .fr-text-gray{color:#AAA!important}.fr-view .fr-text-bordered{border-top:solid 1px #222;border-bottom:solid 1px #222;padding:10px 0}.fr-view .fr-text-spaced{letter-spacing:1px}.fr-view .fr-text-uppercase{text-transform:uppercase}.fr-view img{position:relative;max-width:100%}.fr-view img.fr-dib{margin:5px auto;display:block;float:none;vertical-align:top}.fr-view img.fr-dib.fr-fil{margin-left:0}.fr-view img.fr-dib.fr-fir{margin-right:0}.fr-view img.fr-dii{display:inline-block;float:none;vertical-align:bottom;margin-left:5px;margin-right:5px;max-width:calc(100% - (2 * 5px))}.fr-view img.fr-dii.fr-fil{float:left;margin:5px 5px 5px 0;max-width:calc(100% - 5px)}.fr-view img.fr-dii.fr-fir{float:right;margin:5px 0 5px 5px;max-width:calc(100% - 5px)}.fr-view img.fr-rounded{border-radius:100%;-moz-border-radius:100%;-webkit-border-radius:100%;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.fr-view img.fr-bordered{border:solid 10px #CCC;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.fr-view .fr-video{text-align:center;position:relative}.fr-view .fr-video>*{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;max-width:100%;border:0}.fr-view .fr-video.fr-dvb{display:block;clear:both}.fr-view .fr-video.fr-dvb.fr-fvl{text-align:left}.fr-view .fr-video.fr-dvb.fr-fvr{text-align:right}.fr-view .fr-video.fr-dvi{display:inline-block}.fr-view .fr-video.fr-dvi.fr-fvl{float:left}.fr-view .fr-video.fr-dvi.fr-fvr{float:right}.fr-view a.fr-strong{font-weight:700}.fr-view a.fr-green{color:green}.fr-view button.fr-rounded,.fr-view input.fr-rounded,.fr-view textarea.fr-rounded{border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.fr-view button.fr-large,.fr-view input.fr-large,.fr-view textarea.fr-large{font-size:24px}a.fr-view.fr-strong{font-weight:700}a.fr-view.fr-green{color:green}img.fr-view{position:relative;max-width:100%}img.fr-view.fr-dib{margin:5px auto;display:block;float:none;vertical-align:top}img.fr-view.fr-dib.fr-fil{margin-left:0}img.fr-view.fr-dib.fr-fir{margin-right:0}img.fr-view.fr-dii{display:inline-block;float:none;vertical-align:bottom;margin-left:5px;margin-right:5px;max-width:calc(100% - (2 * 5px))}img.fr-view.fr-dii.fr-fil{float:left;margin:5px 5px 5px 0;max-width:calc(100% - 5px)}img.fr-view.fr-dii.fr-fir{float:right;margin:5px 0 5px 5px;max-width:calc(100% - 5px)}img.fr-view.fr-rounded{border-radius:100%;-moz-border-radius:100%;-webkit-border-radius:100%;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}img.fr-view.fr-bordered{border:solid 10px #CCC;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}
html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
  font-size: 22px;
}
#bodywrap {
  min-height: 100%;
  position: relative;
}
#pagebody {
  padding-bottom: 120px;
}
#footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 56px;
}
#footer a {
  position: absolute;
  left: 20px;
  font-size: 12px;
}
#footer a:hover img {
  transform: translate(3px, -1px) scale(1.05, 1.05);
}
#footer img {
  width: 130px;
  vertical-align: middle;
  transition: transform 0.2s;
}
body {
  font-family: 'Graphik Web';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  font-size: 0.75rem;
  line-height: 1rem;
  color: rgba(0, 0, 0, 0.8);
  overflow-y: scroll;
  overflow-x: hidden;
  max-width: 100%;
}
h1,
h2,
h3,
h4,
.pretitle,
header {
  color: #191919;
  font-weight: normal;
}
h1 {
  font-size: 1.5rem;
  line-height: 1.75rem;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
}
h2 {
  font-size: 1rem;
  line-height: 1.25rem;
  margin: 10px 0;
}
h3,
.offer {
  font-size: 0.6rem;
  line-height: 0.7rem;
}
h4 {
  font-size: 0.6rem;
  line-height: 0.7rem;
}
.pure-button {
  background-color: rgba(166, 13, 2, 0.81);
  margin: 14px 0;
  color: white;
}
.pure-form {
  color: #747474;
}
.pure-g,
.pure-g [class*="pure-u"] {
  font-family: inherit;
}
#uiblock {
  position: fixed;
  z-index: 140;
  overflow: scroll;
  opacity: 0.5;
  background-color: #6f5c5e;
  width: 100%;
  height: 102%;
}
a,
a:hover,
a:active,
a:visited {
  text-decoration: none;
  color: inherit;
}
small {
  font-size: smaller;
}
nav li.search:not(.active):hover,
.dropdown a:hover,
.schedule a:hover,
a:hover,
.sideinfo .dates a:hover {
  color: rgba(166, 13, 2, 0.8);
}
nav li.active {
  color: #a60d02;
}
.offers {
  width: 100%;
  position: relative;
  overflow: hidden;
  margin-left: -20px;
  margin-right: -20px;
  padding-left: 20px;
  padding-right: 20px;
}
.schedule {
  display: none;
}
body.programm .schedule {
  display: block;
}
input {
  min-height: 40px;
}
input#newsletter {
  min-height: 0px;
  margin-right: 13px;
}
.offer {
  display: inline-block;
  position: relative;
  padding: 0;
  margin: 10px 0 20px 0;
  border: none;
  width: calc(100% - 40px);
  height: 260px;
  color: inherit;
  background-color: white;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  box-sizing: content-box;
}
.offer .hover {
  width: 100%;
  height: 100%;
  transition: background-color 0.2s;
}
.offer > .offerDescription {
  position: absolute;
  width: calc(102%);
  bottom: -1px;
  height: 80px;
  padding: 5px 0px;
  background-color: white;
  transform: none;
  box-sizing: border-box;
}
.offerDescription > div {
  width: calc(100% - 30px);
  overflow: hidden;
}
.offer .offerPretitle {
  margin-top: 5px;
  font-size: 12px;
  line-height: 14px;
}
.offer .offerPretitle span {
  color: #333;
}
.offer .offerTitle {
  font-size: 20px;
  line-height: 25px;
  margin-top: 5px;
}
.offer span {
  margin: auto 0;
  color: #222;
}
body:not([touch]) .offers:not(.tileanim) .offer:hover {
  transform: translate3d(0, 0, 0) scale(1.05);
  z-index: 20;
}
body:not([touch]) .offers:not(.tileanim) .offer:hover .hover {
  background-color: rgba(166, 13, 2, 0.4);
}
body:not([touch]) .offer:hover {
  transition: 0.4s;
}
.offers.tileanim .offer:hover {
  transition: 0s;
}
.content,
.articleContent {
  padding: 162px 1rem;
  padding-bottom: 0;
}
body.angebot .content,
body.angebot .articleContent {
  padding-top: 190px;
}
@keyframes marquee {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-100%, 0);
  }
}
.news {
  position: absolute;
  top: 148px;
  margin: 0;
  overflow: hidden;
  white-space: nowrap;
  box-sizing: border-box;
  width: 100%;
  display: none;
  z-index: 100;
}
body.angebot .news {
  display: block;
}
.news p {
  font-size: 1rem;
  margin: 0;
  display: inline-block;
  padding-left: 100%;
  animation: marquee 5s linear infinite;
  animation-delay: 0.2s;
}
.news p span {
  white-space: pre;
}
.news p span:nth-child(even) {
  color: #F79D6C;
}
.news p span:nth-child(odd) {
  color: #7BB3D3;
}
@media (min-width: 400px) and (max-width: 699px) {
  body:not(.programm) .offer {
    margin-right: 20px;
    width: calc(50% - 30px);
    height: 250px;
  }
  body .offers {
    padding-right: 0;
    width: calc(100% + 20px);
  }
}
@media (min-width: 480px) {
  body.programm .offer {
    margin-right: 20px;
    width: calc(50% - 30px);
    height: 240px;
  }
}
@media (min-width: 700px) {
  body:not(.programm) .offer {
    margin-right: 20px;
    width: calc(50% - 30px);
    height: 270px;
  }
  body:not(.programm) .offers {
    padding-right: 0;
    width: calc(100% + 20px);
  }
  body.programm .offers {
    padding-right: 0;
    width: calc(100% + 20px);
  }
}
@media (min-width: 750px) {
  body:not(.programm) .offer {
    margin-right: 20px;
    width: calc(33% - 25px);
  }
  body:not(.programm) .offers {
    padding-right: 0;
  }
}
@media (min-width: 820px) {
  .content,
  .articleContent {
    padding-left: calc(((100% - 240px) / 12) + 30px);
    padding-right: calc(((100% - 240px) / 12) + 30px);
  }
  body.programm .offer {
    margin-right: 20px;
    width: calc(50% - 30px);
    height: 270px;
  }
  body.programm .offers {
    padding-right: 0;
    width: calc(100% + 20px);
  }
  body.programm .offers {
    width: 61%;
  }
  .schedule {
    width: 39%;
    position: absolute;
    right: 0;
    padding-right: calc(((100% - 240px) / 12) + 30px);
    padding-left: 0px;
  }
}
@media (min-width: 1269px) {
  body.programm .offer {
    margin-right: 20px;
    width: calc(33% - 25px);
  }
  body.programm .offers {
    padding-right: 0;
  }
}
@media screen and (min-width: 1180px) {
  body:not(.programm) .offer {
    width: 270px;
  }
}
@media (min-width: 1934px) {
  body.programm .offer {
    width: 270px;
  }
}
.offer > .sticky {
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 110px 110px 0 0;
  border-color: rgba(166, 13, 2, 0.9) transparent transparent transparent;
}
.offer > .sticky span {
  transform: translate(10px, -80px) rotate(-45deg);
  position: absolute;
  color: #eee;
  top: 0;
  left: 0;
  font-size: 20px;
  line-height: 100%;
}
body.about .offer:not(.about),
body:not(.about) .offer.about {
  display: none;
}
body.about .offer.about,
body:not(.about) .offer:not(.about),
body.suche .offer {
  display: inline-block !important;
}
.isotope-hidden {
  display: none;
}
.logo {
  display: block;
  width: 110px;
  height: 70px;
  position: relative;
  float: left;
  background-image: url('../themes/medienfalle/assets/images/logo-medienfalle.png');
  background-size: 100%;
  background-repeat: no-repeat;
  margin: 0;
  transition: all 0.5s;
  margin-top: 4px;
}
.fr-view blockquote {
  color: inherit;
  border-left-color: inherit;
  padding-left: 15px;
}
nav {
  display: block;
  float: left;
  position: relative;
  margin-left: 20px;
  font-size: 20px;
  line-height: 25px;
  transition: margin-left 0.5s;
}
nav ul {
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
}
nav li {
  line-height: 0;
  list-style-type: none;
}
nav li.search {
  position: relative;
}
nav li.search.active a {
  color: #9f9f9f;
  pointer-events: none;
}
nav input {
  cursor: pointer;
  position: absolute;
  padding: 0;
  left: 0;
  top: 0;
  min-height: 0;
  outline: none;
  border: none;
  line-height: 125%;
  background: none;
  color: rgba(0, 0, 0, 0);
}
nav li.search.active input {
  color: inherit;
}
.adresseAll {
  padding: 100px 20px 20px 20px;
  font-size: 1rem;
  line-height: 125%;
  position: absolute;
  float: left;
  right: 0;
  top: 0;
  box-sizing: border-box;
  width: 100%;
  box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.48);
  background-color: white;
  left: 100%;
  left: calc(100% + 11px);
  transition: left 0.2s ease-in-out;
}
.adresseAllMenu {
  left: 0;
  opacity: 1;
}
.adresse {
  display: inline-block;
  padding-right: 15px;
  vertical-align: top;
  padding-bottom: 40px;
}
.adresse p {
  margin: 0;
}
header {
  top: 0;
  padding: 10px 10px 10px 20px;
  margin-left: auto;
  margin-right: auto;
  position: fixed;
  background-color: rgba(255, 255, 255, 0.98);
  width: 100%;
  z-index: 200;
  box-sizing: border-box;
  transition: all 0.5s;
  transition: box-shadow 0.2s;
}
nav a {
  height: 100%;
}
nav a,
nav input {
  transition: all 0.5s ease 0.1s;
  transition: opacity 0.15s ease 0.1s;
  transition: margin-left 2s ease 0s;
  line-height: 125%;
  display: block;
}
.contactBurger {
  display: block;
  z-index: 3000;
  height: 60px;
  width: 50px;
  position: absolute;
  margin-top: 0px;
  right: 18px;
  font-size: 12px;
  transition: all 0.1s;
}
.contactBurger span {
  position: absolute;
  right: 0;
  top: 0;
}
span.burger {
  display: block;
  background-color: black;
  height: 3px;
  right: 2px;
  top: 30px;
  width: 28px;
  font-size: 0;
  border-radius: 3px;
  transition: transform 0.3s, right .3s;
}
span.burger::before,
span.burger::after {
  content: "";
  width: 100%;
  height: 3px;
  right: 0;
  display: block;
  position: absolute;
  background-color: black;
  border-radius: 3px;
  box-sizing: inherit;
}
span.burger::before {
  top: -8px;
  transform-origin: top left;
  transition: transform .3s, width .3s, top .3s;
}
span.burger::after {
  bottom: -8px;
  transition: transform .3s, width .3s, bottom .3s;
}
span.burger.isopen {
  transform: rotate(180deg);
  right: 6px;
}
span.burger.isopen::before,
span.burger.isopen::after {
  width: 50%;
}
span.burger.isopen::before {
  top: 0;
  transform: translateX(-16px) translateY(1px) rotate(-45deg);
}
span.burger.isopen::after {
  bottom: 0;
  transform: translateX(-17px) translateY(4px) rotate(45deg);
}
header.scrolled {
  box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.3);
}
@media (max-width: 699px) {
  header.reduced .logo {
    width: 80px;
    height: 44px;
  }
  header.reduced nav li:not(.active) a {
    opacity: 0 !important;
    line-height: 0;
    pointer-events: none;
  }
  header.reduced nav li.active a {
    position: absolute;
    top: 10px;
    left: 0px;
  }
  header.reduced nav input {
    top: 10px;
  }
  header.reduced nav li:not(.active) input {
    display: none;
  }
  header.reduced .contactBurger {
    display: none;
  }
}
@media (min-width: 700px) {
  .logo {
    width: 140px;
    height: 80px;
    margin: 0;
  }
  .adresseAll {
    display: block;
    padding: 0;
    top: auto;
    font-size: 12px;
    background: none;
    box-shadow: none;
    width: auto;
    left: auto;
    right: 0;
    transition: left 0s;
  }
  .adresse {
    padding-bottom: 1em;
    max-width: 150px;
  }
  .contactBurger {
    display: none;
  }
  header {
    padding: 20px;
  }
  nav {
    margin-left: 40px;
  }
}
@media (min-width: 800px) {
  .adresse {
    padding-right: 40px;
  }
}
@media (min-width: 980px) {
  .adresseAll {
    right: auto;
    left: 620px;
  }
}
body:not(.angebot) .filter {
  display: none;
}
.filterMenu {
  width: 100%;
  position: relative;
}
.filterMenu:after {
  content: " ";
  display: block;
  clear: both;
  visibility: hidden;
  font-size: 0;
}
.filterTags {
  display: inline-block;
  margin-bottom: 0px;
  min-height: 25px;
}
.filterTags > a {
  display: block;
  float: left;
  padding-right: 10px;
  margin-top: 2px;
  margin-right: 2px;
  color: #a60d02;
}
.filterTags > a:hover {
  color: rgba(166, 13, 2, 0.8);
}
.filterTags .removeTag {
  padding: 0 3px 0 6px;
  font-size: 0.5rem;
  vertical-align: middle;
}
.dropbtn {
  text-align: left;
  display: table-cell;
  position: relative;
  z-index: 2;
  border: none;
  cursor: pointer;
  padding: 0;
  background-color: white;
  width: 100%;
  height: 34px;
  font-size: 1rem;
  line-height: 1.25rem;
}
.dropbtn span {
  display: inline-block;
  position: absolute;
  top: 0;
}
.dropbtn,
.dropdown-content {
  text-align: left;
}
.dropdown:not(:last-child) .dropbtn {
  border-right: none;
}
.dropdown-content {
  border-top: none;
}
.dropdown {
  display: block;
  float: left;
  z-index: 50;
  margin: 0;
  padding: 0;
  width: 50%;
  max-width: 160px;
  box-sizing: border-box;
}
.dropdown-content {
  display: none;
  opacity: 0;
  z-index: 3;
  position: absolute;
  background-color: rgba(255, 255, 255, 0.92);
  min-width: 230px;
  margin-top: 0px;
  padding-bottom: 1rem;
}
.dropdown-content a {
  padding: 8px 0;
  text-decoration: none;
  display: block;
  font-size: 0.75rem;
  line-height: 1.25rem;
}
.dropdown-content a.active {
  color: #9b0000;
  background-color: rgba(120, 9, 1, 0.1);
}
.dropdown.hovered .dropdown-content {
  opacity: 1;
  display: block;
}
.dropdown.hovered .dropbtn {
  color: rgba(166, 13, 2, 0.8);
  border-bottom-color: white;
  border-radius: 0;
}
@media (min-width: 520px) {
  .dropbtn a {
    line-height: 1.25rem;
  }
  .dropdown-content {
    margin-top: -1px;
  }
  .dropdown-content a {
    padding: 0;
  }
  .dropdown-content > div {
    height: 1px;
    background-color: white;
    margin-top: -1px;
    width: 159px;
    position: absolute;
  }
  .dropdown:last-child .dropdown-content > div {
    width: 158px;
  }
}
@media (max-width: 519px) {
  .dropdown-content {
    position: absolute;
    left: 0;
    width: calc(100% - 2px);
  }
}
.article {
  width: 100%;
  top: 0;
  left: 0;
  z-index: 100;
  background-color: white;
  transform-origin: left top;
}
.article-transition {
  transition: transform 0.5s;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
}
.textsection {
  clear: left;
  overflow: hidden;
}
@media (min-width: 1050px) {
  .textsection {
    padding-left: calc((66.66% - 100px) / 6);
  }
}
.textsection h1,
.textsection h2,
.textsection h3,
.textsection h4 {
  font-size: 0.6rem;
  line-height: 0.7rem;
  margin: 0.7rem 0 0 0;
  text-transform: uppercase;
  color: black;
}
.textsection ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.textsection .oc-text-spaced,
.textsection li {
  font-size: 0.6rem;
  line-height: 0.7rem;
  margin: 0;
  padding: 0;
  color: rgba(0, 0, 0, 0.7);
}
.textsection img,
.sideinfo img {
  max-width: 100%;
}
.textsection p,
.sideinfo p {
  padding: 0;
  margin: 0;
}
.textsection iframe {
  margin: 20px 0;
  background-color: black;
}
.textsection .gallery {
  width: 100%;
  margin-top: 20px;
}
.clear {
  clear: both;
}
.sideinfo p {
  color: rgba(0, 0, 0, 0.7);
}
.sideinfo h1,
.sideinfo h2,
.sideinfo h3,
.sideinfo h4 {
  font-size: 0.6rem;
  line-height: 0.7rem;
  margin: 0.7rem 0 0 0;
  padding: 0;
  text-transform: uppercase;
  color: black;
}
.pretitle {
  font-size: 1rem;
  display: block;
  margin-bottom: 5px;
  margin-top: 0;
  color: black;
}
.sideinfo div:first-of-type > :first-child {
  margin-top: 0;
}
.sideinfo .dates {
  margin-bottom: 20px;
}
.sideinfo {
  font-size: 0.6rem;
  line-height: 0.7rem;
  margin-bottom: 20px;
}
.sideinfo.bottom {
  margin-bottom: 0;
  margin-top: 40px;
}
.sideinfo .wysiwyg {
  word-break: break-word;
  margin-bottom: 20px;
}
.titlesection {
  width: 100%;
}
.suggestions {
  margin-top: 0px;
  width: 100%;
  line-height: 21px;
  word-break: break-word;
}
.sideinfo:not(.bottom) .suggestions {
  display: none;
}
.ticket h3 {
  color: #646464;
  margin-top: 25px;
  margin-bottom: 0px;
}
.ticket h2 {
  margin-top: 10px;
}
.ticketdate {
  color: #a60d02;
}
.ticket .coverPicture {
  width: 100%;
  padding-top: 100%;
  background-size: cover;
  background-position: center;
}
.ticketform {
  margin-top: 40px;
}
.ticketFormCategory {
  margin-bottom: 10px;
}
.mainpage,
.sidepage {
  width: 100%;
  overflow-wrap: break-word;
  box-sizing: border-box;
}
.ticket .sidepage {
  display: none;
}
.schedule {
  width: 100%;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
  padding-bottom: 20px;
  font-size: 0.6rem;
  line-height: 0.7rem;
}
@media (min-width: 820px) {
  .schedule {
    width: 39%;
    position: absolute;
    right: 0;
    padding-right: calc(((100% - 240px) / 12) + 30px);
    padding-left: 0px;
  }
}
.schedule a,
.schedule p,
.sideinfo .dates a,
.sideinfo .dates p {
  font-family: "Roboto Mono";
  padding: 7px 0 7px 3px;
  margin: 0;
  width: 100%;
  display: block;
  color: rgba(0, 0, 0, 0.7);
}
html.no-touchevents .schedule a,
html.no-touchevents .schedule p,
html.no-touchevents .sideinfo .dates a,
html.no-touchevents .sideinfo .dates p {
  padding: 0;
}
.schedule a,
.schedule p {
  white-space: pre-wrap;
}
.additionalText {
  padding: 0 6px;
}
.schedule .date {
  display: inline-block;
}
.schedule h2 {
  margin-top: 10px;
  margin-bottom: 0;
  font-size: 0.6rem;
  line-height: 0.7rem;
  text-transform: uppercase;
}
@media (min-width: 760px) {
  .mainpage {
    width: 61%;
    max-width: 1000px;
    float: left;
  }
  .sidepage {
    width: 39%;
    float: left;
    padding-left: 40px;
  }
  .ticket .sidepage {
    display: block;
  }
}
.articleContent {
  transition: opacity 0.45s;
  transition-timing-function: ease-in;
  max-width: 1100px;
}
.suggestions a {
  position: inherit;
  display: block;
  width: 100%;
  height: 70px;
  margin: 5px 0;
  box-shadow: none;
  overflow: hidden;
}
.suggestions .sugThumb {
  height: 100%;
  width: 70px;
  background-repeat: no-repeat;
  background-size: cover;
  float: left;
}
.suggestions .sugText {
  box-sizing: border-box;
  float: left;
  width: calc(100% - 70px);
  height: 100%;
  color: rgba(0, 0, 0, 0.8);
  display: table;
}
.suggestions .sugText span {
  display: table-cell;
  vertical-align: middle;
  padding: 5px;
  padding-left: 15px;
  font-size: 0.75rem;
  line-height: 1rem;
}
.suggestions a:hover {
  box-shadow: 3px 3px 10px -2px rgba(78, 78, 78, 0.68);
  transition: 0.3s;
  transform: scale(1.02);
}
span.ticketInfo,
span.bookedOut,
.giftlink {
  padding: 0 5px;
  font-style: italic;
}
.textsection a,
.wysiwyg a {
  text-decoration: underline;
}
.topsection h2 {
  color: rgba(0, 0, 0, 0.8);
}
@media (min-width: 600px) {
  .article .topsection,
  .article .textsection {
    width: 67%;
    max-width: 1000px;
    float: left;
    box-sizing: border-box;
  }
  .sideinfo {
    width: 33%;
    float: right;
    padding-left: 20px;
    box-sizing: border-box;
  }
  .sideinfo:not(.bottom) .suggestions {
    display: initial;
  }
  .bottom .suggestions {
    display: none;
  }
}
@media (max-width: 350px) {
  header {
    padding-left: 10px;
  }
  nav {
    margin-left: 5px;
  }
}

.gallery {
    width: 100%;
    background-color: black;
    overflow: hidden;
    margin-bottom: 40px;
}
.gallery-cell {
    position: relative;
    overflow: hidden;
}
.gallery-cell.is-selected {
    z-index: 2;
}
.textsection .noGallery .gallery-cell {
    display: inline-block;
}
.textsection .noGallery {
    padding-top: 10px;
    padding-bottom: 10px;
}
.noGallery .gallery-cell img, .topsection .gallery-cell {
    cursor: pointer; 
}
.textsection iframe, .topsection iframe, .gallery, .gallery .gallery-cell, .topsection .noGallery .gallery-cell  {
    width: 100% !important;
    height: 450px !important;
    max-height: calc(90vw);
}
a.gallery-cell {
    cursor: inherit;
}
.gallery .gallery-cell, .topsection .noGallery .gallery-cell {
    margin: 0;
    padding: 0;
    left: 0;
}
.gallery .flickity-prev-next-button {
    opacity: 0;
    transition: opacity 0.5s;
}
.gallery:hover .flickity-prev-next-button {
    opacity: 1;
}
.gallery .flickity-prev-next-button:disabled, .gallery:hover .flickity-prev-next-button:disabled {
    opacity: 0.01;
}
.gallery .flickity-prev-next-button {
    background: none;
}
.gallery .flickity-prev-next-button .arrow {
    fill: white;
}
.gallery .flickity-prev-next-button:hover {
    background: rgba(255,255,255,0.3);
}
.gallery .flickity-page-dots .dot {
    width: 7px; height: 7px;
    margin: 0 3px;
    border-radius: 0;
    border: 2px solid black;
    background-color: white;
}
.gallery .flickity-page-dots .dot.is-selected {
    border-color: white;
    background-color: black;
}
.gallery img {
    max-width: 100%;
    max-height: 100%;
    margin: auto auto;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
form button .spinner {
    display: none;
}
form.blocked {
    pointer-events: none;
}
form.blocked button .spinner {
    display: inline-block;
    font-size: 10px;
    margin-left: -5px;
    margin-right: 5px;
    text-indent: -9999em;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #ffffff;
    background: -moz-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    background: -webkit-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    background: -o-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    background: -ms-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    background: linear-gradient(to right, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    position: relative;
    -webkit-animation: load3 1.4s infinite linear;
    animation: load3 1.4s infinite linear;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
}
form.blocked button .spinner:before {
    width: 50%;
    height: 50%;
    background: #ffffff;
    border-radius: 100% 0 0 0;
    position: absolute;
    top: 0;
    left: 0;
    content: '';
}
form.blocked button .spinner:after {
    background: rgb(166, 13, 2);
    width: 75%;
    height: 75%;
    border-radius: 50%;
    content: '';
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

@-webkit-keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}