
/* navigation.css */

/** current color: #a061cf */

/* ... all navs  ...
-----------------------------------------------*/
.nav ul,
.nav li,
.nav a,
.nav li > span,
.nav strong {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border: 0 none;
  position: relative;
}
/* ... all navs ... END
-----------------------------------------------*/



/* ... lang nav ...
-----------------------------------------------*/
.i18nl10n_lang_style_disable {
	grid-column: 4/-1;
}
.i18nl10n_lang_style_disable ul {
  display: flex;
}
.i18nl10n_lang_style_disable li > span,
.i18nl10n_lang_style_disable li > a > span {
  display: block;
}
.i18nl10n_lang_style_disable i {
  display: none;
}
.i18nl10n_lang_style_disable .i18nl10n_label {
  /* sr only */
}
/** items */
.i18nl10n_lang_style_disable .i18nl10n_iso {
  text-transform: uppercase;
  padding: .5em;
  position: relative;
  font-size: 1.5rem;
}
.i18nl10n_lang_style_disable a {
  color: inherit;
}
/** pseudo border bottom */
.i18nl10n_lang_style_disable a:focus .i18nl10n_iso::after,
.i18nl10n_lang_style_disable a:hover .i18nl10n_iso::after,
.i18nl10n_lang_style_disable .active .i18nl10n_iso::after {
	content: "";
	position: absolute;
	height: 2px;
	width: calc(100% - 1em);
	background-color: #a061cf;
	left: 0;
	bottom: .25em;
	right: 0;
	margin: auto;
}
/** *
.i18nl10n_lang_style_disable a:focus .i18nl10n_iso::after,
.i18nl10n_lang_style_disable a:hover .i18nl10n_iso::after {
	bottom: auto;
  top: .25em;
}
/** */
/* ... lang nav ... END
-----------------------------------------------*/



/* ... service nav ...
-----------------------------------------------*
.servicenav ul {
  display: flex;
}
/** delimiter on list items *
.servicenav li {
	position: relative;
}
.servicenav li::before,
.servicenav li::after {
	content: "";
	position: absolute;
	width: 1px;
	height: calc(100% - .5em);
	background-color: #ddd;
	left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.servicenav li::after {
	left: auto;
  right: 0;
}
.servicenav li:first-child::before,
.servicenav li:last-child::after {
	width: 2px;
}
/** items *
.servicenav li a,
.servicenav li > span,
.servicenav strong {
  padding: .5em 1em;
  color: inherit;
  position: relative;
  font-size: 1rem;
}
/** pseudo border bottom *
.servicenav li a:focus::after,
.servicenav li a:hover::after,
.servicenav li .trail::after,
.servicenav li > span::after,
.servicenav strong::after {
	content: "";
	position: absolute;
	height: 2px;
	width: calc(100% - 2em);
	background-color: #a061cf;
  left:0;
  right: 0;
	bottom: .25em;
	margin: auto;
}
/** *
.servicenav li a:focus::after,
.servicenav li a:hover::after {
	bottom: auto;
  top: .1em;
}
/** */
/** with icons *
.servicenav li .icon {
	padding-left: calc(24px + 1.5em);
}
.servicenav li .icon::before {
	content: "";
	position: absolute;
	width: 24px;
	height: 100%;
	left: 1em;
	top: 0;
	bottom: 0;
	margin: auto;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 24px;
}
/** icon source files *
.servicenav li .newsletter::before {
	background-image: url(img/news.svg);
}
/* ... service nav ... END
-----------------------------------------------*/



/* ... mobile menu service nav ...
-----------------------------------------------*/
/* ... mobile menu service nav ... END
-----------------------------------------------*/



/* ... Social + Newsletter nav ...
-----------------------------------------------*/
.nav.social-nl-nav {
	position: fixed;
	background: #BABABA;
	top: 0;
  right: 0;
	margin-top: 50vh;
	transform: translateY(-50%);
  z-index: 1;
}
.social-nl-nav ul {
  display: flex;
  flex-direction: column;
}
.social-nl-nav li a,
.social-nl-nav li > span, /* contao 3 */
.social-nl-nav strong { /* contao 4 */
	width: 45px;
	height: 45px;
	text-indent: 60px;
	text-overflow: clip;
}
.social-nl-nav li a:focus,
.social-nl-nav li a:hover,
.social-nl-nav li .trail,
.social-nl-nav li > span,
.social-nl-nav strong {
	background-color: rgba(0,0,0,.5);
}
.social-nl-nav li > ::after {
	content: '?';
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	font-family: IcoFont;
	text-indent: 0;
	text-align: center;
	color: #fff;
	font-size: 2rem;
	line-height: 2.75rem;
}
.social-nl-nav li .newsletter::after {
  content: '\ef14';
}
.social-nl-nav li .instagram::after {
  content: '\ed46';
}
.social-nl-nav li .youtube::after {
  content: '\ecbb';
}
.social-nl-nav li .twitter::after {
  content: '\ed7a';
}
.social-nl-nav li .facebook::after {
  content: '\ed37';
}
/* ... Social + Newsletter nav ... END
-----------------------------------------------*/



/* ... social nav ...
-----------------------------------------------*/
.socialnav ul {
  display: flex;
  justify-content: flex-end;
}
.socialnav li a,
.socialnav li > span,
.socialnav strong {
	width: 42px;
	height: 32px;
	text-indent: 50px;
	text-overflow: clip;
	line-height: 2rem;
}
.socialnav li a:focus,
.socialnav li a:hover,
.socialnav li .trail,
.socialnav li > span,
.socialnav strong {
	background-color: rgba(0,0,0,.5);
}
.socialnav li > ::after {
	content: '?';
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	font-family: IcoFont;
	text-indent: 0;
	text-align: center;
	color: #fff;
	font-size: 1.5rem;
}
.socialnav li .newsletter::after {
  content: '\ef14';
}
.socialnav li .instagram::after {
  content: '\ed46';
}
.socialnav li .youtube::after {
  content: '\ecbb';
}
.socialnav li .twitter::after {
  content: '\ed7a';
}
.socialnav li .facebook::after {
  content: '\ed37';
}

/* ... social nav ... END
-----------------------------------------------*/



/* ... contact-nav ...
-----------------------------------------------*/
.contact-nav ul {
	display: flex;
	justify-content: flex-start;
	/** margin-right: -12px; */
}
/** items */
.contact-nav li a,
.contact-nav li > span,
.contact-nav strong {
  padding: 0 1em;
  color: #eee;
  line-height: 2rem;
}
.contact-nav li a:focus,
.contact-nav li a:hover,
.contact-nav li > span,
.contact-nav strong {
  color: #fff;
  opacity: .5;
  background-color: rgba(0,0,0,.5);
}
/* ... contact-nav ... END
-----------------------------------------------*/



/* ... nl-nav ... Newsletter only
-----------------------------------------------*/
/** items */
.nl-nav li {
	text-align: center;
}
.nl-nav li a,
.nl-nav li > span,
.nl-nav strong {
  display: inline-block;
	padding: 0 1em;
	color: #eee;
	line-height: 2rem;
	text-align: center;
  border: 1px solid;
}
.mobile_menu .nl-nav li a,
.mobile_menu .nl-nav li > span,
.mobile_menu .nl-nav strong {
	color: inherit;
  opacity: .5;
}
.nl-nav li a::before,
.nl-nav li > span::before,
.nl-nav strong::before {
  content: '\ef14';
  font-family: IcoFont;
  font-size: 1.5rem;
  vertical-align: bottom;
  padding-right: .5em;
}
.nl-nav li a:focus,
.nl-nav li a:hover,
.nl-nav li > span,
.nl-nav strong {
  color: #fff;
  opacity: .5;
  background-color: rgba(0,0,0,.5);
}
.mobile_menu .nl-nav li a:focus,
.mobile_menu .nl-nav li a:hover,
.mobile_menu .nl-nav li > span,
.mobile_menu .nl-nav strong {
  color: inherit;
  opacity: 1;
  background-color: inherit;
}
/* ... nl-nav ... END
-----------------------------------------------*/



/* ... breadcrumb ...
-----------------------------------------------*/
.mod_breadcrumb ul {
	display: flex;
  flex-wrap: wrap;
  font-size: 1rem;
}
/** items */
.mod_breadcrumb a {
  color: inherit;
}
.mod_breadcrumb li a,
.mod_breadcrumb strong {
	padding: .5em 2em .5em 0;
	position: relative;
	font-weight: normal;
  color: inherit0;
}
.mod_breadcrumb a:focus,
.mod_breadcrumb a:hover {
  color: #a061cf;
}
.mod_breadcrumb a span::after {
	content: "";
	position: absolute;
	width: 2em;
	height: 2em;
	right: 0;
  background-image: url(img/crumb.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	top: 0;
}
/* ... breadcrumb ... END
-----------------------------------------------*/



/* ... anchor navs ...
-----------------------------------------------*/
heder {
  /* outline: thin dotted; */
}
#readerAnchornav {
	position: relative;
	z-index: 1;
	/* outline: thin dotted; */
	max-width: 1392px;
	margin: auto;
}
#readerAnchornavInner {
	/* outline: thin dotted; */
	position: fixed;
	/* left: 0; */
	top: calc(2rem + 1rem + 1rem + 120px + 2rem);
	transition: all .1s ease 0s;
	padding: .5em;
	background-color: transparent;
}
.scrolled #readerAnchornavInner {
	top: calc(2rem + 1rem + 1rem + 120px + 2rem - 40px - 2rem); /* main inside padding top + 2rem - difference of new header height - 2em*/
}
/** items */
.reader_anchornav a {
  font-size: 1rem;
	padding: .125em 0;
	color: inherit;
  display: inline-block;
  border-bottom: 2px solid transparent;
}
.reader_anchornav a:focus,
.reader_anchornav a:hover,
.anchornav000 a:focus,
.anchornav000 a:hover {
  border-color: #a061cf;
}
.ticketLink {
	display: inline-block;
	border: 2px solid #111;
	border-radius: 4px;
	text-transform: uppercase;
	text-align: center;
	padding: .25em .75em .125em;
	font-size: 1rem;
}
.ticketLink:focus,
.ticketLink:hover {
	color: #fff;
	background-color: #111;
}
/* ... anchor navs ... END
-----------------------------------------------*/



/* ... event menu ...
-----------------------------------------------*/
/** items */
.mod_eventmenu li > * {
  font-size: 1rem;
	padding: .125em 0;
	color: inherit;
  display: inline-block;
  border-bottom: 2px solid transparent;
}
.mod_eventmenu .quantity {
  display: inline;
  opacity: .5;
}
.mod_eventmenu a:focus,
.mod_eventmenu a:hover {
  border-color: #a061cf;
}
.mod_eventmenu .quantity {
  display: none;
}
/* ... event menu ... END
-----------------------------------------------*/



/* ... pagination ...
-----------------------------------------------*/
.pagination ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 1;
}
/** the rest is done by foundation */
/* ... pagination ... END
-----------------------------------------------*/
