
html, body, div, span, applet, object, iframe, table, caption, tbody, tfoot, thead, tr, th, td,
del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var,
h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend {
	margin: 0;
	padding: 0;
	border: 0 none;
	outline: 0;
	vertical-align: baseline;
	text-decoration: none;
	text-align: inherit;
}




/*! normalize.css v2.1.0 | MIT License | git.io/normalize */

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined in IE 8/9.
 */

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

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */

audio,
canvas,
video {
    display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
    display: none;
    height: 0;
}

/**
 * Address styling not present in IE 8/9.
 */

[hidden] {
    display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
    font-family: sans-serif; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
    margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */

a:focus {
    outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
    outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */

abbr[title] {
    border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,
strong {
    font-weight: bold;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */

dfn {
    font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
    background: #ff0;
    color: #000;
}

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */

pre {
    white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */

q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

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

sup {
				top: 0.5em
}

sub {
    bottom: -0.25em;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9.
 */

img {
    border: 0;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */

svg:not(:root) {
    overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari 5.
 */

figure {
    margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
    border: 0; /* 1 */
    padding: 0; /* 2 */
}

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */

button,
input,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 2 */
    margin: 0; /* 3 */
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,
input {
    line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */

button,
select {
    text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
    cursor: default;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
    border-collapse: collapse;
    border-spacing: 0;
}






nav, ol, ul {
	list-style: none outside;
}

#body input[type=number]::-webkit-outer-spin-button,
#body input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

#body input[type=number] {
    -moz-appearance:textfield;
}

.ui-dialog.jquery_dialog_without_closer .ui-dialog-titlebar-close {
  display: none !important;
}

.ui-dialog.jquery_dialog_without_buttons .ui-dialog-buttonpane {
  display: none !important;
}



* {
  -webkit-box-sizing: content-box !important;
     -moz-box-sizing: content-box !important;
          box-sizing: content-box !important;
}
*:before,
*:after {
  -webkit-box-sizing: content-box !important;
     -moz-box-sizing: content-box !important;
          box-sizing: content-box !important;
}







#_center_iframe_overlay {
  background: rgba(0,0,0,0.75);
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100001;
}

#_cio_container {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  box-sizing: border-box;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  max-width: calc(100% - 20px);
  max-height: calc(100% - 20px);
  min-height: 100px;
  background-color: #FFF;
}

#_cio_container #_cio_content {
  max-height: calc(100vh - 20px);
  width: 100%;
  height: 100%;
  overflow: hidden;
}

#_cio_container #_cio_content #_center_iframe_overlay_iframe {
  width: 100%;
  height: calc(100% - 1px);
  overflow: auto;
}


@media (min-width: 18em) {

}

@media (min-width: 36em) {

}



@media (min-width: 49em) {
  #_cio_container {
    width: calc(100% - 80px);
    height: calc(100% - 80px);
    max-width: calc(100% - 80px);
    max-height: calc(100% - 80px);
  }

  #_cio_container #_cio_content {
    max-height: calc(100vh - 80px);
  }

}






@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'), url('/ticket/tcult/styles/fonts/Roboto-Light.woff') format('woff');
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto Regular'), local('Roboto-Regular'), url('/ticket/tcult/styles/fonts/Roboto-Regular.woff') format('woff');
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'), url('/ticket/tcult/styles/fonts/Roboto-Bold.woff') format('woff');
}
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 300;
  src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url('/ticket/tcult/styles/fonts/Roboto-LightItalic.woff') format('woff');
}
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: local('Roboto Italic'), local('Roboto-Italic'), url('/ticket/tcult/styles/fonts/Roboto-Italic.woff') format('woff');
}
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 700;
  src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url('/ticket/tcult/styles/fonts/Roboto-BoldItalic.woff') format('woff');
}

body {
	font-size: 1em;
	font-family: "Roboto", "Lucida Sans Unicode", "Trebuchet MS", Verdana, Helvetica, Arial, Sans-Serif;
	font-weight: 300;
	color: var(--main-font-color);
}

b {
	font-weight: 500;
}

table th {
	font-weight: normal;
}

a {
	text-decoration:none;
}

a:link {
	color: #0E468D;
}

a:visited {
	color: #0E468D;
}

a:link:hover {
	text-decoration: underline;
}

a:active {
	color: #0E468D;
}

.language_debug_admin_link {
	text-decoration: underline;
	border: 1px solid #000000;
	cursor: pointer;
}

body h1 ,
body h2 ,
body h3 ,
body h4 ,
body h5 {
	margin-top: 0.7em;
	margin-bottom: 0.2em;
	color: #444;
	font-family: Georgia, Serif;
	font-weight: normal;
}

body h1 {
	font-size: 1.8em;
	line-height: 1.1em;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}

body .content > h1:first-child {
	margin-top: 0.2em;
}

body h2 {
	font-size: 1.5em;
}

body h3 {
	font-size: 1.3em;
}

body h4 {
	font-size: 1.2em;
}

body h5 {
	font-size: 1.15em;
	text-transform: none;
}







#language_select_container ul.language_select li {
	margin-bottom: -5px;
}






a.button,
:not(.ui-dialog-titlebar) > button ,
.ui-dialog-content a.button,
.ui-dialog-content button ,
.ui-widget-content .ui-widget-content .ui-dialog-buttonset button {
	display: inline-block;
	position: relative;
	padding: 0;
	margin-right: .4rem;
	margin-bottom: .4rem;
	text-decoration: none !important;
	cursor: pointer;
	text-align: center;
	line-height: 1;
	zoom: 1;
  min-width: 8rem;
  font-size: 1rem;
	overflow: visible;
	user-select: none;
	border: 1px solid var(--neutral-grey-medium);
	background: var(--neutral-grey-light);
	color: var(--main-font-color);
	border-radius: 0.25rem;
  box-shadow: 0 0.05rem 0.1rem rgba(0,0,0,0.3);
  transition: box-shadow 0.2s ease-out;
}

body.mobile_device .ui-widget-content .ui-widget-content .ui-dialog-buttonset button:has(+ button) {
  min-width: 0;
}



a.button:not(.button_disabled):active,
:not(.ui-dialog-titlebar) > button:not([disabled]):active ,
.ui-dialog-content a.button:not(.button_disabled):active,
.ui-dialog-content button:not([disabled]):active ,
.ui-widget-content .ui-widget-content .ui-dialog-buttonset button:not([disabled]):active {
  box-shadow: 0 0 0.5rem 0.3rem rgba(0,0,0,0.2);
}

a.button > span ,
button > span ,
.ui-dialog-content a.button > span ,
.ui-dialog-content button > span ,
.ui-widget-content .ui-widget-content .ui-dialog-buttonset button > span {
	display: block;
	line-height: 1.2em;
	padding: 0.4em 1.5em;
	font-weight: var(--bold-font-weight);
}

body.mobile_device a.button > span ,
body.mobile_device button > span ,
body.mobile_device .ui-dialog-content a.button > span ,
body.mobile_device .ui-dialog-content button > span ,
body.mobile_device .ui-widget-content .ui-widget-content .ui-dialog-buttonset button > span {
	padding: 0.6em 2em;
}

.ui-dialog .ui-button-text-only .ui-button-text {
	padding: .2em 0.8em;
}

a.button.process ,
button.process ,
.ui-dialog-content a.button.process ,
.ui-dialog-content button.process ,
.ui-widget-content .ui-widget-content .ui-dialog-buttonset button.process {
	background: var(--main-color-dark);
	border-color: var(--main-color-dark);
  color: #FFF;
}


a.button.button_disabled ,
button.button_disabled ,
button[disabled] ,
button.submit[disabled] ,
button.process[disabled] ,
.ui-dialog-content a.button.button_disabled ,
.ui-dialog-content button.button_disabled ,
.ui-widget-content .ui-widget-content .ui-dialog-buttonset button.button_disabled ,
.ui-widget-content .ui-widget-content .ui-dialog-buttonset button[disabled] ,
.ui-widget-content .ui-widget-content .ui-dialog-buttonset button.submit[disabled] ,
.ui-widget-content .ui-widget-content .ui-dialog-buttonset button.process[disabled] {
	background: #CCC;
  border-color: #CCC;
  color: #888;
  cursor: default;
  box-shadow: none;
}


.ui-dialog-buttonset button.submit ,
.ui-dialog-buttonset button.process {
	float: left;
}










a.button.bigbutton.process {
	display: block;
	margin: 0.5em var(--mobile-padding-lr);
}

a.button.bigbutton.process > span:after {
	content: "▷";
	margin-left: 0.5em;
}

@media (min-width: 31em) {
	a.button.bigbutton.process {
		display: inline-block;
	}
}

span.ajax_button_loader {
	display: inline-block;
	width: 16px;
	height: 16px;
	vertical-align: middle;
	padding: 0 4px;
}


span.ajax_button_loader > span {
	background: url('/ticket/tcult/pics/spinner_white_16x16.gif') no-repeat center center;
	display: block;
	width: 16px;
	height: 16px;
}

span.ajax_button_loader_color > span {
	background-image: url('/ticket/tcult/pics/spinner_color_16x16.gif') ;
}

div.loadingAnimation {
	width: 100%;
	text-align: center;
}

div.loadingAnimation > span {
	background-image: url('/ticket/tcult/pics/loadingAnimation.gif');
	background-repeat: no-repeat;
	height: 13px;
	width: 208px;
	display: inline-block;
}


.progress_bar_animation_container {
  margin: 1em auto;
  width: 90%;
  max-width: 18em;
  height: 0.3em;
  position: relative;
  overflow: hidden;
  background-color: rgba(14, 70, 141, 0.2);
}

#_full_overlay_loader {
  backdrop-filter: blur(5px);
}

@supports not (backdrop-filter: blur(12px)) {
  #_full_overlay_loader {
    background-color: rgba(0, 0, 0, 0.85) !important;
  }
}

#_full_overlay_loader .progress_bar_animation_container {
	width: 18em;
	height: 0.7em;
	background-color: rgba(255, 255, 255, 0.7);
  position: relative;
}

.progress_bar_animation_container > div {
  position: absolute;
  left: 0;
  top: 0;
  width: 25%;
  height: 100%;
  background-color: #0E468D;
  animation: slideandwide 1500ms linear infinite;
}

@keyframes slideandwide {
  from {
    left: 0%;
    width: 5%;
  }
  to {
    left: 100%;
    width: 70%;
  }
}






.circular_loading_animation {
  position: relative;
  display: inline-block;
  width: 1em;
}
.circular_loading_animation:before {
  content: '';
  display: block;
  padding-top: 100%;
}

.circular_loading_animation .cla_circular {
  -webkit-animation: cla_rotate 3s linear infinite;
          animation: cla_rotate 3s linear infinite;
  height: 100%;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.circular_loading_animation .cla_circular .cla_path {
  stroke-dasharray: 1,200;
  stroke-dashoffset: 0;
	stroke: #0E468D;
  -webkit-animation: cla_dash 2s ease-in-out infinite;
          animation: cla_dash 2s ease-in-out infinite;
  stroke-linecap: round;
}

a.button.process .circular_loading_animation .cla_circular .cla_path {
	stroke: rgb(255,255,255);
}

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

@keyframes cla_rotate {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes cla_dash {
  0% {
    stroke-dasharray: 1,200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -35px;
  }
  100% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -124px;
  }
}
@keyframes cla_dash {
  0% {
    stroke-dasharray: 1,200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -35px;
  }
  100% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -124px;
  }
}



form table ,
form table > tbody ,
form table > tbody > tr ,
form table > tbody > tr > th ,
form table > tbody > tr > td {
	display: block;
}

form table > tbody > tr > th {
	text-align: left;
	padding: 0.4em 0.6em;
	background-color: #F2F2F2;
	font-weight: normal;
}

form table > tbody > tr > td {
	padding: 0.4em 0.6em;
	margin-bottom: 0.8em;
}

form table > tbody > tr > td > input[type="text"] ,
form table > tbody > tr > td > input[type="password"] ,
form table > tbody > tr > td > input[type="email"] ,
form table > tbody > tr > td > input[type="tel"] ,
form table > tbody > tr > td > input[type="number"] ,
form table > tbody > tr > td > input[type="date"] {
	display: block;
	width: 100%;
	width: calc(100% - 0.8em);
}

@media (min-width: 31em) {
	form table {
		display: table;
	}

	form table {
		border-spacing: 0.2em;
		border-collapse: separate;
	}

	form table > tbody {
		display: table-row-group;
	}

	form table > tbody > tr {
		display: table-row;
	}

	form table > tbody > tr > th ,
	form table > tbody > tr > td {
		display: table-cell;
		vertical-align: middle;
	}

	form table > tbody > tr > th {
		text-align: right;
	}

	form table > tbody > tr > td {
		margin-bottom: auto;
	}

	form table > tbody > tr > td > input[type="text"] ,
	form table > tbody > tr > td > input[type="password"] ,
	form table > tbody > tr > td > input[type="tel"] ,
	form table > tbody > tr > td > input[type="email"] ,
	form table > tbody > tr > td > input[type="number"] ,
	form table > tbody > tr > td > input[type="date"] {
		width: auto;
	}
}

#body input[type="text"] ,
#body input[type="password"] ,
#body input[type="tel"] ,
#body input[type="email"] ,
#body input[type="number"] ,
#body input[type="date"] ,
#body select {
	height: 1.6em;
	        box-sizing: content-box;
	   -moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
  -webkit-appearance: none;
}

#body input[type="text"] ,
#body input[type="password"] ,
#body input[type="tel"] ,
#body input[type="email"] ,
#body input[type="number"] ,
#body input[type="date"] ,
#body textarea ,
#body select {
	box-shadow: inset 0.1em 0.1em 0.1em rgba(0,0,0,0.2);
	-moz-box-shadow: inset 0.1em 0.1em 0.1em rgba(0,0,0,0.2);
  -webkit-box-shadow: inset 0.1em 0.1em 0.1em rgba(0,0,0,0.2);
	border: 1px solid rgba(14,70,141,0.6);
	padding: 0.3em;
	font-size: 16px;
}

#body input[type="text"]:focus ,
#body input[type="password"]:focus ,
#body input[type="tel"]:focus ,
#body input[type="email"]:focus ,
#body input[type="number"]:focus ,
#body input[type="date"]:focus ,
#body textarea:focus ,
#body select:focus {
	background-color: #D5DFEB;
}

#body input[type="text"][disabled] ,
#body input[type="password"][disabled] ,
#body input[type="tel"][disabled] ,
#body input[type="email"][disabled] ,
#body input[type="number"][disabled] ,
#body input[type="date"][disabled] ,
#body textarea[disabled] ,
#body select[disabled] {
	background-color: #DDD !important;
	color: #555 !important;
}

#body input[type=number]::-webkit-outer-spin-button,
#body input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

#body input[type=number] {
    -moz-appearance:textfield;
}

#body input[type="checkbox"] ,
#body input[type="radio"] {
	margin-left: 0.2em;
	margin-right: 0.4em;
}

#body.mobile_device input[type="checkbox"] ,
#body.mobile_device input[type="radio"] {
	width: 1em;
  height: 1em;
  margin: 0.2em 0.5em 0.2em 0;
  vertical-align: middle;
}

#body label {
	cursor: pointer;
}

#body div.show_password {
  padding: 0.5em 0 0.2em 0;
}

fieldset {
	border: 0 none;
	padding: 1.5em 1em 1em 1em;
	margin: 1.5em 0 1.5em 0;
	background-color: #FFFFFF;
}

.ticket fieldset > legend {
	font-size: 1.2em;
	padding: 0.3em;
	color: #0E468D;
}

.fieldset_container {
	padding: 0.5em 0;
	margin: 1em 0;
}

.fieldset_container > .fieldset_legend {
	display: block;
	font-size: 1.3em;
	margin: 0.3em 0 0.2em 0;
	font-family: Georgia, Serif;
	font-weight: normal;
	border-bottom: 1px solid rgba(0,0,0,0.3);
}

@media (min-width: 31em) {
	.fieldset_container {
		margin: 1.5em 0 1.5em 0;
	}
}

div.errormsg {
	border: 1px solid #C40000;
	margin: 0.3em 0;
}

div.errormsg > div {
	background-color: #C40000;
	color: #FFFFFF;
	padding: 0.5em;
}

div.errormsg > div > a {
	color: inherit;
	text-decoration: underline;
}

div.infomsg {
	border: 1px solid #1A5C0A;
}

div.infomsg > div {
	background-color: #1A5C0A;
	color: #FFFFFF;
	padding: 0.5em;
}

div.warningmsg {
	border: 1px solid #DD6600;
}

div.warningmsg > div {
	background-color: #DD6600;
	color: #FFFFFF;
	padding: 0.5em;
}

div.loadingmsg {
	border: 1px solid #CCC;
	padding: 0.1em;
}

div.loadingmsg > div {
	background-color: #CCC;
	background-image: url('/ticket/tcult/pics/loader.gif');
	background-position: 2px 2px;
	background-repeat: no-repeat;
	color: #000;
	padding: 0.2em 0.2em 0.2em 20px;
}

.err {
	color: #FF0000;
}

p.err {
	line-height: 1.3em;
}

input.err {
	background-color: #FFFFBB;
	color: #000;
	font-weight: normal;
}

select.err {
	background-color: #FFFFBB;
	color: #000;
	font-weight: normal;
}

body p {
	margin: 0.2em 0 0.4em 0;
}

body .content > p {
	padding: 0 0.3em;
}

@media (min-width: 31em) {
	body .content > p {
		padding: 0;
	}
}

body sup {
	vertical-align: top;
	font-size: 0.6em;
}

body:not(.mobile_device) .hover_tooltip_element {
	border-bottom: 2px dotted rgba(0,0,0,0.4);
}

body:not(.mobile_device) .hover_tooltip_element:hover {
	border-bottom: 2px dotted #0E468D;
	cursor: help;
}

._tooltip{
	position: absolute;
	z-index: 999;
	left: -9999px;
	top: -9999px;
	border: 1px solid #0E468D;
	padding: 0.8em;
	max-width: 31em;
	background-color: #F9F9F9;
	        box-shadow: 0.2em 0.2em 0.3em rgba(0,0,0,0.4);
	   -moz-box-shadow: 0.2em 0.2em 0.3em rgba(0,0,0,0.4);
	-webkit-box-shadow: 0.2em 0.2em 0.3em rgba(0,0,0,0.4);
}


body > div.ui-dialog > div#check_shopping_cart_error > p {
	font-size: 1.1em;
}

body > div.ui-dialog > div#check_shopping_cart_error > ul > li {
	margin: 0.8em 0 1em 0;
}

body > div.ui-dialog > div#check_shopping_cart_error > ul > li > ul {
	margin: 0 1em;
}

body > div.ui-dialog > div#check_shopping_cart_error > ul > li > ul > li {
	background-color: #F4F4F4;
	border: 1px solid #CC3333;
	font-weight: normal;
	margin: 0.9em 0;
	padding: 0.1em 0.3em;
}

div.ticket div.show_only_on_print {
	display: none !important;
}

.ui-dialog {
	z-index: 1004 !important;
	max-width: 100%;
}



.ui-dialog.no_close .ui-dialog-titlebar .ui-dialog-titlebar-close {
	display: none;
}




@media print {
	body {
		font-size: 12pt;
		font-family: Georgia, Serif, "Lucida Sans Unicode", "Trebuchet MS", Verdana, Helvetica, Arial, Sans-Serif;
		color: #000;
	}

	div.ticket div.show_only_on_print {
		display: block !important;
	}

	a ,
	a:link ,
	a:visited ,
	a:active {
		text-decoration: underline;
		color: #0E468D;
		font-weight: 500;
		background: transparent;
	}

	a:link:after ,
	a:visited:after {
		content: " (" attr(href) ") ";
		font-size: 80%;
		font-weight: normal;
	}

	a[href^="/"]:after {
		content: " (http://www.culturall.com" attr(href) ") ";
	}

	a[href^="#"]:after ,
	a[href^="javascript"]:after ,
	a.button:link:after ,
	a.button:visited:after {
		content: "";
	}

	a.button.bigbutton.process {
		display: none;
	}

	a.button,
	a.button:link,
	button,
	.ui-dialog-content
	a.button,
	.ui-dialog-content a.button:link,
	.ui-dialog-content button,
	.ui-widget-content .ui-widget-content .ui-dialog-buttonset button {
		background-color: transparent !important;
		border: 2px ridge #ccc !important;
	}
}




.ui-corner-all, .ui-corner-bottom, .ui-corner-top, .ui-corner-right, .ui-corner-left, .ui-corner-br {
}

body .ui-widget-content {
	font-size: 1em;
	font-family: "Roboto", "Lucida Sans Unicode", "Trebuchet MS", Verdana, Helvetica, Arial, Sans-Serif;
	font-weight: 300;
	color: #272727;
}


body .ui-dialog {
	z-index: 1004 !important;
	max-width: 95%;
  margin: 0 auto;
	padding: 0;
	border: 0 none;
	clear: both;
  box-shadow: 0 0.3rem 0.5rem rgba(0,0,0,0.3);
  overflow: hidden;
  flex-shrink: 0;
}

.ui-dialog {
	z-index: 1004 !important;
	max-width: 100%;
}

.ui-dialog.no_close .ui-dialog-titlebar .ui-dialog-titlebar-close {
	display: none;
}

.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close {
  right: .7rem;
  top: 1.1rem;
  background: 0 none;
  height: 1.5rem;
  width: 1.5rem;
}

.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close:is(:hover, :active) {
  background-color: rgba(255,255,25,0.1);
}

.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close > span {
  display: none;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close::after {
  content: "✕";
  font-weight: bold;
  position: absolute;
  top: -0.2rem;
  right: 0.25rem;
  font-size: 1.2em;
}

body .ui-dialog .ui-widget-header {
	font-weight: 500;
  margin: 0;
}

.ui-dialog-titlebar {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
	border: 0 none;
}

.ui-dialog-titlebar button.ui-button-icon-only {
  border: 0 none;
  background-color: transparent;
  background-image:  url("/ticket/tcult/styles/jqueryui/images/ui-icons_ffffff_256x240.png");
}

.no_close_dialog .ui-dialog-titlebar button.ui-button-icon-only ,
._general_error_message_dialog .ui-dialog-titlebar button.ui-button-icon-only {
  display: none;
}

body .ui-dialog .ui-dialog-content {
	padding: 0.6em;
}

.ui-tabs.ui-widget.ui-widget-content {
	border: 0 none;
}

#body .ui-dialog .ui-dialog-buttonpane {
	border-top: 0;
  background-color: rgb(250,250,250);
  padding: .3em 1rem .5em 1rem;
}

#body.mobile_device .ui-dialog .ui-dialog-buttonpane {
	text-align: right;
}

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
	float: none !important;
	text-align: right;
}

#body:not(.mobile_device) .ui-widget-content .ui-widget-content .ui-dialog-buttonset button.submit ,
#body:not(.mobile_device) .ui-widget-content .ui-widget-content .ui-dialog-buttonset button.process {
	float: left;
}

.ui-dialog-buttonset > button:last-child {
	margin-right: 0 !important;
}

._general_error_message_dialog .ui-dialog-buttonpane .ui-dialog-buttonset button.process {
  width: 100%;
  box-sizing: border-box;
}

button.ui-button > span.ui-icon {
	padding: 0;
}

.ui-widget-content a {
	color: #0E468D;
}

@media (min-width: 36em) {
}

body .ui-dialog._general_message_dialog {
  min-width: 25rem;
  max-width: 100vw;
}


.ticket > div.content div.ui-tabs > ul.ui-widget-header {
	background-color: #CCC;
	border: 0 none;
}

.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-default {
	background: #0E468D;
}

.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-hover {
	background: ;
}

.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-active {
	background: #FFF none;
}

.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-default > a ,
.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-hover > a ,
.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-default > a > span ,
.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-hover > a > span {
	color: #FFF;
}

.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-active > a > span ,
.ticket > div.content div.ui-tabs > ul.ui-tabs-nav > li.ui-state-active > a {
	color: #000;
}

.ui-widget-content a {
	color: #0E468D;
}

body .ui-tooltip {
	border: 1px solid #0E468D;
	padding: 0.8em;
	max-width: 31em;
	background-color: #F9F9F9;
	        box-shadow: 0.2em 0.2em 0.4em rgba(0,0,0,0.3);
	   -moz-box-shadow: 0.2em 0.2em 0.4em rgba(0,0,0,0.3);
	-webkit-box-shadow: 0.2em 0.2em 0.4em rgba(0,0,0,0.3);
	z-index: 9998;
}

body .ui-accordion .ui-accordion-content {
	padding: 0;
	overflow: visible;
}

body .ui-accordion .ui-widget-content {
	background-color: transparent;
	background-image: none;
	border: 0 none;
}

body .ui-accordion .ui-accordion-content-active {
	background-color: rgba(0,0,0,0.07);
	background-image: none;
}

body .ui-accordion .ui-accordion-header {
	margin-top: 1em;
	background-color: #808080;
	color: #FFF;
}

body .ui-accordion .ui-accordion-header-active {
	background-color: #000;
}

body .ui-accordion .ui-accordion-header-active .ui-icon {
	background-image: url("/ticket/tcult/styles/jqueryui/images/ui-icons_ffffff_256x240.png");
}


.ui-widget-header ,
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default ,
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
	background-image: none;
}

body > .ui-widget-overlay {
  backdrop-filter: blur(5px);
}

@supports not (backdrop-filter: blur(12px)) {
  body > .ui-widget-overlay {
    background-color: rgba(0, 0, 0, 0.85) !important;
  }

}

.ui-widget {
  font-size: 1em;
}




@media print {
	body .ui-widget-content {
		font-size: 12pt;
		font-family: Georgia, Serif, "Lucida Sans Unicode", "Trebuchet MS", Verdana, Helvetica, Arial, Sans-Serif;
		color: #000;
	}
}




#menu > ul {
	display: block;
	line-height: 2.4em;
	font-size: 1.2em;
}

#menu ul > li ,
#menu ul > li > div {
	display: block;
	line-height: inherit;
}

#menu ul > li > div > span.text_only > span ,
#menu ul > li > div > span > a {
	color: #FFF;
	line-height: inherit;
	display: block;
  white-space: nowrap;
}

#menu ul > li > div > span.text_only > span ,
#menu ul > li > div > span > a {
	border-top: 1px solid rgba(0,0,0,0.3);
}

#menu ul > li.expand > div > span.text_only > span:after ,
#menu ul > li.expand > div > span > a:after {
	content: "\25BC";
	float: right;
}

#menu > ul > li.expand.align_from_right > div > ul > li.expand > div > span > :is(span, a):after {
  content: "";
}

#menu ul > li.expand.hover > div > span.text_only > span:after ,
#menu ul > li.expand.hover > div > span > a:after {
	content: "\25B2";
	float: right;
}

#menu > ul > li > div > span > a ,
#menu > ul > li > div > span.text_only > span {
	padding: 0 0.9em;
	cursor: pointer;
}

#menu > ul > li ul {
	background-color: rgba(255,255,255,0.1);
	font-size: 0.95em;
	display: none;
}

#menu ul > li.hover > div > ul {
	display: block;
}

#menu > ul > li > div > ul > li > div > span > a ,
#menu > ul > li > div > ul > li > div > span.text_only > span {
	padding: 0 0.9em;
}

#menu > ul > li > div > ul > li > div > ul > li > div > span > a ,
#menu > ul > li > div > ul > li > div > ul > li > div > span.text_only > span {
	padding: 0 0.9em;
}

@media (min-width: 49em) {

	body:not(.mobile_device) #menu_container #menu {
		display: table;
		width: 100%;
		table-layout: fixed;
		z-index: 20;
	}


	body:not(.mobile_device) #menu ul > li li ,
	body:not(.mobile_device) #menu ul > li > div {
		position: relative;
		width: 100%;
		display: block;
		line-height: inherit;
	}

	body:not(.mobile_device) #menu ul > li:hover > div {
		background-color: rgba(255,255,255,0.1);
	}

	body:not(.mobile_device) #menu ul > li > div > ul {
		position: absolute;
		top: 100%;
		left: 0;
		background-color: #646161;
		box-shadow: 0 0.2em 0.4em -0.1em rgba(0, 0, 0, 0.7);
	}

	body:not(.mobile_device) #menu ul > li > div > span.text_only > span ,
	body:not(.mobile_device) #menu ul > li > div > span > a {
		border-top: 0 none;
		color: inherit;
		line-height: inherit;
		display: block;
	}

	body:not(.mobile_device) #menu > ul {
		display: table-row;
		line-height: 2em;
		text-align: center;
	}

	body:not(.mobile_device) #menu > ul > li {
		display: table-cell;
		line-height: inherit;
	}

	body:not(.mobile_device) #menu > ul > li > div > span {
		width: 100%;
	}

	body:not(.mobile_device) #menu > ul > li.expand > div > span.text_only > span:after ,
	body:not(.mobile_device) #menu > ul > li.expand > div > span > a:after {
		content: " ▽";
		margin-left: 0.5em;
		opacity: 0.4;
    white-space: nowrap;
	}

	body:not(.mobile_device) #menu > ul > li.expand:hover > div > span.text_only > span:after ,
	body:not(.mobile_device) #menu > ul > li.expand:hover > div > span > a:after {
		content: " ▼";
		opacity: 1;
	}

	body:not(.mobile_device) #menu > ul > li > div > span.text_only > span ,
	body:not(.mobile_device) #menu > ul > li > div > span > a {
		display: inline-block;
	}


	body:not(.mobile_device) #menu > ul > li > div > ul {
		line-height: 2em;
	}

	body:not(.mobile_device) #menu > ul li:hover > div > ul {
		display: block;
		min-width: 100%;
	}

	body:not(.mobile_device) #menu > ul > li.align_from_left > div > ul {
		left: 0;
		right: auto;
	}

	body:not(.mobile_device) #menu > ul > li.align_from_right > div > ul {
		right: 0;
		left: auto;
	}

	body:not(.mobile_device) #menu > ul > li > div ul > li > div {
		border-top: 1px solid rgba(255,255,255,0.3);
		width: 100%;
		text-align: center;
	}

	body:not(.mobile_device) #menu > ul > li.align_from_right > div ul > li > div {
		text-align: center;
	}

	body:not(.mobile_device) #menu > ul > li > div ul > li > div > span ,
	body:not(.mobile_device) #menu > ul > li > div ul > li > div > span > a {
		display: block;
		white-space: nowrap;
		padding-right: 1em;
	}

	body:not(.mobile_device) #menu > ul > li.align_from_right > div ul > li > div > span ,
	body:not(.mobile_device) #menu > ul > lialign_from_right > div ul > li > div > span > a {
		padding-right: 0em;
		padding-left: 1em;
	}

	body:not(.mobile_device) #menu > ul > li.expand > div > ul > li.expand:hover > div > span.text_only:after ,
	body:not(.mobile_device) #menu > ul > li.expand > div > ul > li.expand:hover > div > span > a:after {
		content: "";
	}

	body:not(.mobile_device) #menu > ul > li.expand > div > ul > li.expand > div > span > a:after {
		content: " ▷";
		margin-right: 0.5em;
		color: #FFF;
		position: absolute;
		top: 0;
		right: 0.5em;
	}

	body:not(.mobile_device) #menu > ul > li.expand > div > ul > li.expand:hover > div > span > a:after {
		content: " ▶";
	}

	body:not(.mobile_device) #menu > ul > li.expand.align_from_right > div > ul > li.expand > div > span > a:after {
		content: " ";
	}

	body:not(.mobile_device) #menu > ul > li.expand.align_from_right > div > ul > li.expand > div:before {
		content: " ◁";
		margin-left: 0.5em;
		float: left;
		color: #FFF;
	}

	body:not(.mobile_device) #menu > ul > li.expand.align_from_right > div > ul > li.expand:hover > div:before {
		content: " ◀";
	}


	body:not(.mobile_device) #menu > ul > li > div > ul > li:hover > div > ul {
		top: -1px;
	}

	body:not(.mobile_device) #menu > ul > li.align_from_left > div > ul > li:hover > div > ul {
		left: 100%;
		right: auto;
	}

	body:not(.mobile_device) #menu > ul > li.align_from_right > div > ul > li:hover > div > ul {
		right: 100%;
		left: auto;
	}




	body:not(.mobile_device) #menu > ul > li > div > ul { z-index: 21; }
	body:not(.mobile_device) #menu > ul > li > div > ul > li { z-index: 2;}
	body:not(.mobile_device) #menu > ul > li > div > ul > li > div > ul { z-index: 22; }
	body:not(.mobile_device) #menu > ul > li > div > ul > li > div > ul > li {	z-index: 4; background-color: rgba(255,255,255,0.2)}
	body:not(.mobile_device) #menu > ul > li > div > ul > li > div > ul > li > div > ul {	z-index: 23; }
	body:not(.mobile_device) #menu > ul > li > div > ul > li > div > ul > li > div > ul > li {	background-color: rgba(255,255,255,0.3) }



}




.loginTeaser {
	display: block;
	vertical-align: top;
	text-align: left;
  line-height: 2.5em;
  min-height: 2.5em;
}

.loginTeaser a {
	vertical-align: top;
	color: inherit;
}

.loginTeaser > span.modus ,
.loginTeaser > .please_login_text ,
.loginTeaser > .new_customer_text ,
.loginTeaser > .logged_in_text {
	display: none;
}

.loginTeaser a.logged_in ,
.loginTeaser a.login_teaser_link_to_login {
	text-overflow: ellipsis;
	overflow: hidden;
	max-width: 65%;
	white-space: nowrap;
	padding-left: 0.5em;
	display: inline-block;
}

.loginTeaser a.login_teaser_link_to_logout ,
.loginTeaser a.login_teaser_link_to_register {
	float: right;
	padding-right: 0.5em;
}





div.shopping_cart_teaser {
	background-color: rgba(14, 70, 141, 0.1);
	padding: 0.3em;
	margin: 0 0 0.2em 0;
	font-size: 0.9em;
	min-height: 1.75em;
}

div.shopping_cart_teaser * {
	vertical-align: inherit;
}

div.shopping_cart_teaser.empty {
	display: none;
}

div.shopping_cart_teaser span.scsmall {
	display: none;
}

div.shopping_cart_teaser div.shopping_cart_count {
	float: left;
}

div.shopping_cart_teaser .sct_mw ,
div.shopping_cart_teaser .sct_T ,
div.shopping_cart_teaser .sct_TA {
	display: none;
}

div.shopping_cart_teaser div.shopping_cart_time {
	float: right;
}

div.shopping_cart_teaser:after {
	content: "";
	clear: both;
	float: none;
	display: block;
	height: 0;
}

.ui-tooltip.shopping_cart_teaser_tooltip {
	max-width: 33em;
}

div.shopping_cart_teaser_tooltip_content {
	font-size: 0.9em;
}

div.shopping_cart_teaser_tooltip_content .shopping_cart_teaser_tooltip_closer {
	line-height: 1em;
	float: right;
	margin: 0 0.5em;
}

div.shopping_cart_teaser_tooltip_content .time_box {
	margin-top: 1.5em;
}

div.shopping_cart_teaser_tooltip_content .time_box tr > th {
	font-weight: 300;
}

div.shopping_cart_teaser_tooltip_content .time_box tr > td {
	font-weight: 500;
	padding: 0.1em 0.3em;
	font-size: 1.3em;
	text-align: right;
}




.buying_process_teaser {
	display: none;
}

body.mobile_device .teasers.first_teasers a.button.bigbutton.process {
	display: none;
}

.ticket_help_teaser {
	display: none;
}



@media (min-width: 31em) {
	.buying_process_bigbutton {
		text-align: right;
	}
}

@media (min-width: 36em) {
	div.shopping_cart_teaser .sct_T ,
	div.shopping_cart_teaser .sct_TA {
		display: inline;
	}

	.loginTeaser {
		text-align: right;
	}

	.loginTeaser > .please_login_text ,
	.loginTeaser > .new_customer_text ,
	.loginTeaser > .logged_in_text {
		display: inline;
	}

	.loginTeaser > .please_login_text ,
	.loginTeaser > .logged_in_text {
		padding-left: 0.5em;
	}


	.loginTeaser > a.login_teaser_link_to_register ,
	.loginTeaser > span.new_customer_text {
		float: none;
	}

	.loginTeaser > span.new_customer_text {
		padding-left: 0.5em;
	}

	.loginTeaser a {
		color: inherit;
	}

}



@media (min-width: 36em)
and (min-height: 36em){
	.ticket_help_teaser {
		display: none;
		position: fixed;
		background-color: #F5F5F5;
		right: 0;
		top: 9em;
		box-shadow: 0 0.1em 0.4em rgba(0, 0, 0, 0.45);
		font-size: 1.4em;
		line-height: 2em;
		z-index: 30;
		opacity: 0.65;
		        transform: rotate(270deg);
		    -ms-transform: rotate(270deg);
		-webkit-transform: rotate(270deg);
		        transform-origin: 100% 100% 0;
		    -ms-transform-origin: 100% 100% 0;
		-webkit-transform-origin: 100% 100% 0;
	}

	body.mobile_device .ticket_help_teaser {
		top: 5em;
	}

	body.mobile_device.process_mode_quick .ticket_help_teaser {
		top: 0;
	}

	.ticket_help_teaser.ticket_help_teaser_toggled {
		display: block;
	}

	.ticket_help_teaser .ticket_help_button {
		font-size: inherit;
		color: inherit;
		padding: 0.3em 0.7em 0.3em 0;
		cursor: pointer;
		line-height: inherit;
		display: inline-block;
	}

	.ticket_help_teaser .ticket_help_button:before {
		content: "❓";
		color: #FFF;
		background-color: #0E468D;
		border-radius: 50%;
		display: inline-block;
		width: 1.1em;
		height: 1.3em;
		line-height: 1.5em;
		padding-left: 0.2em;
		border: 0.1em solid #FFF;
		box-shadow: 0.1em 0.1em 0.1em rgba(0,0,0,0.3);
		margin: 0 0.6em 0 0;
		        transform: rotate(90deg);
		    -ms-transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
	}

	.ticket_help_teaser:hover {
		background-color: #0E468D;
		color: #FFF;
		opacity: 1;
	}

	.ticket_help_teaser.highlighted {
		background-color: #0E468D;
		color: #FFF;
		opacity: 1;
	}


	.ticket_help_teaser .ticket_help_teaser_toggle {
		background-color: #CCC;
		cursor: pointer;
		display: inline-block;
		line-height: 2.6em;
		padding: 0 0.6em;
		color: #333;
	}
}



@media (min-width: 49em) {
	div.shopping_cart_teaser .sct_mw {
		display: inline;
	}
}




@media (min-width: 65em) {
	.buying_process_teaser {
		display: inline-block;
		line-height: 2.3em;
	}

	.buying_process_teaser > ul {
		padding: 0;
		margin: 0 0.9em 0 0;
		text-align: right;
	}

	.buying_process_teaser > ul > li {
		display: inline-block;
		padding-left: 0.3em;
		color: #AAA;
	}

	.buying_process_teaser > ul > li:after {
		content: ' |';
	}

	.buying_process_teaser > ul > li:before {
		content: '\a';
	}

	.buying_process_teaser > ul > li:last-child:after {
		content: '';
	}

	.buying_process_teaser > ul > li.step_active > a {
		color: #444;
	}

	.buying_process_teaser > ul > li.step_done > a {
		color: #666;
		position: relative;
	}

	.buying_process_teaser > ul > li.step_done > a:after {
		content: "✔";
		position: absolute;
		bottom: -0.25em;
		right: -0.25em;
		z-index: 1;
		color: #22AA22;
		font-size: 2em;
		font-weight: 500;
		opacity: 0.8;
	}

	.buying_process_teaser > ul > li.step_done:hover > a:after {
		opacity: 0.4;
	}

  .teasers a.button.bigbutton.process {
    margin-right: 0;
  }
}




@media (min-width: 73em) {
	.ticket_help_teaser {
		opacity: 1;
	}

	.ticket_help_teaser .ticket_help_teaser_toggle {
		display: none;
	}

	.ticket_help_teaser .ticket_help_button {
		padding: 0.3em 0.7em;
	}
}


@media (min-width: 65em)
	and  (min-height: 36em) {
	body.mobile_device .teasers.first_teasers a.button.bigbutton.process {
		display: inline-block;
	}
}



@media print {
	.buying_process_teaser ,
	.ticket_help_teaser ,
	.ticket_help_teaser.ticket_help_teaser_toggled {
		display: none;
	}

	div.shopping_cart_teaser {
		display: none;
	}
}




#footer {
	text-align: right;
	margin: 0 auto;
	padding: 0.2em;
	max-width: 65rem;
}

#culturall_info_footer {
	display: inline-block;
}

#culturall_info_footer > div {
	display: inline-block;
	font-size: 0.9em;
}

#culturall_info_footer > .text {
	vertical-align: middle;
	max-width: 10em;
	text-align: right;
}

#culturall_info_footer > .image {
	vertical-align: middle;
}

#culturall_info_footer > .image img {
	height: 4em;
}

#bigbutton_footer {
	display: inline-block;
	float: right;
}

#backbutton_container {
	display: inline-block;
	float: left;
}

#footer a.button  {
	margin: 0.1em 0;
}

#footer a.button > span {
	line-height: 1.5em;
	font-size: 1.1em;
}


@media (min-width: 31em) {
	#culturall_info_footer > .text {
		text-align: left;
		max-width: none;
	}
}






@media print {
	#footer_container {
		background-color: transparent;
		color: #000;
	}

	#culturall_info_footer > .image a:link:after ,
	#culturall_info_footer > .image a:visited:after {
		content: "";
	}
}


:root {
  --mobile-padding-lr: 0.7rem;
  --desktop-padding-lr: 2rem;
  --main-font-color: rgb(60, 60, 60);
  --link-color: #0E468D;
  --bold-font-weight: 500;
  --main-color-dark: #0E468D;
  --neutral-grey-light: #EEE;
  --neutral-grey-medium: #DDD;
  --brighter-background-transparent: rgba(255,255,255,0.5);
  --darker-background-transparent: rgba(0,0,0,0.075);
  --darker-background: rgb(236,236,236);
}


#cookie_info_box {
	background-color: #F4F4F4;
	box-shadow: 0 0 0.4em rgba(0,0,0,0.5);
}

@media print {
  #cookie_info_box {
    display: none;
  }
}

body.mobile_device #cookie_info_box {
	width: 100%;
	background-color: rgba(0, 0, 0, 0.9);
	color: #AAA;
}

body.mobile_device #cookie_info_box.cookie_info_box_additional_info_open {
	position: relative;
	bottom: auto;
	top: 0;
}

#cookie_info_box > p {
	padding: 0.1em 0.3em;
	text-align: center;
	margin: 0;
}

body.mobile_device #cookie_info_box > p {
	font-size: 0.8em;
}

#cookie_info_box > p a {
	margin-left: 1em;
}

#cookie_info_box > p a:not(.button) {
	color: inherit;
	text-decoration: underline;
}

#cookie_info_box > p a.button {
	margin-bottom: 0;
}

#cookie_info_box_additional_info {
	font-size: 0.9em;
	padding: 0.4em;
	background-color: rgba(255,255,255,0.02);
}

#cookie_info_box_additional_info ul li {
	list-style: inside disc;
}

html ,
body {
	height: 100%;
}

body {
  display: flex;
  flex-direction: column;
}


#main_container {
	width: 100%;
  flex: 1;
  display: flex;
  flex-direction: column;
}

#main {
	width: 100%;
	margin: 0 auto;
	max-width: 65rem;
	min-height: 80%;
  padding-bottom: 1em;
	position: relative;
  flex: 1;
}

#footer_container {
	color: #444;
	background-color: var(--darker-background);
}

#header {
}

#menu_container {
	background-color: #0E468D;
}


.loginTeaser {
	display: none;
	background-color: rgb(100, 100, 100);
	color: #FFF;
}

.menu_toggled .loginTeaser {
	display: block;
}

.language_select_container {
	display: none;
	text-align: right;
	background-color: #0E468D;
	line-height: 2.2em;
}

.menu_toggled .language_select_container ,
body.process_mode_quick .language_select_container {
	display: block;
}

body.process_mode_quick .language_select_container .language_select_links a {
	font-size: 0.8em;
}

#header_top {
	display: none;
}

.language_select_container a {
	color: rgba(255,255,255, 0.8);
	padding: 0 0.5em;
	line-height: inherit;
	display: inline-block;
}

.language_select_container a.selected {
	color: #FFFFFF;
}

.language_select_container a:hover {
	background-color: rgba(255,255,255, 0.1);
}

#menu_toggle {
	text-align: right;
	line-height: 2em;
	font-size: 1.4em;
	min-height: 2em;
	color: #FFF;
	position: relative;
}


@media (min-height: 31em) {
  #menu_toggle {
    line-height: 2em;
    font-size: 1.9em;
    min-height: 2em;
    color: #FFF;
    position: relative;
  }
}

#menu_service {
	color: inherit;
	display: inline-block;
	padding: 0 0.5em;
}

#menu {
	display: none;
	color: #FFF;
}

.menu_toggled #menu {
	display: block;
}

#headline_container {
	line-height: inherit;
	color: inherit;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-shadow: inherit;
	background-image: url('/ticket/tcult/pics/customer_screen/logo.png');
	background-repeat: no-repeat;
	background-size: auto 90%;
	background-position: 0.3% center;
	z-index: 1;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 85%;
	width: calc(100% - 2em);
}

#headline {
	padding-left: 2.5em;
	height: 100%;
	text-align: left;
}

#headline img {
	max-height: 50%;
	margin: 0.5em 0;
}

.content {
	padding: 0.2em var(--mobile-padding-lr);
}









div.interne_debug_info {
	text-align:center;
}
div.interne_debug_info > span{
	font-size: 100%;
	text-align:center;
	border-color: #aa0000;
	border-width: 1px;
	border-style: solid;
}







@media (min-width: 36em) {
	#cookie_info_box > p {
		padding: 0.3em;
	}

	body.mobile_device #cookie_info_box > p {
		font-size: 0.9em;
	}

}


@media (min-width: 49em) {

	#main {
		max-width: 100%;
	}


	body:not(.mobile_device) #header_top_container {
		background-color: #0E468D;
		min-height: 3em;
	}

	body:not(.mobile_device) #menu_toggle ,
	body:not(.mobile_device) #menu_container .language_select_container ,
	body:not(.mobile_device) #menu_container .loginTeaser {
		display: none;
	}

	body:not(.mobile_device) #menu ,
	body:not(.mobile_device) #header_top {
		display: block;
	}

	body:not(.mobile_device) #header_top {
		position: relative;
		height: 4em;
		padding: 0.5em 0;
		vertical-align: middle;
		color: #FFFFFF;
	}

	body:not(.mobile_device) #header_top_logo {
		height: inherit;
		background-image: url('/ticket/tcult/pics/customer_screen/logo.png');
		background-repeat: no-repeat;
		background-size: auto 100%;
		background-position: 0 0;
		display: inline-block;
		width: 15em;
		vertical-align: middle;
		margin-left: 0.4em;
	}

	body:not(.mobile_device) #header_top_text {
		color: #0E468D;
		display: inline-block;
		width: 83.5%;
		vertical-align: middle;
		height: 100%;
	}

	body:not(.mobile_device) #header_top_text img {
		max-height: 75%;
		margin: 0.5em 0;
	}

	body:not(.mobile_device) #header_top .language_select_container {
		display: block;
		background-color: transparent;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 2;
		color: inherit;
	}

	body:not(.mobile_device) #header_top .loginTeaser {
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 2;
		color: inherit;
	}

	body:not(.mobile_device) .language_select_container a {
		color: rgba(255,255,255, 0.8);
		text-shadow: none;
	}

	body:not(.mobile_device) .language_select_container a.selected {
		color: #FFF;
	}

	body:not(.mobile_device) .language_select_container a:hover {
		background-color: rgba(255,255,255, 0.6);
	}

	body:not(.mobile_device) .loginTeaser {
		display: block;
		padding: 0.5em 0 0 0;
		background-color: transparent;
	}

	body:not(.mobile_device) #menu {
    margin-top: 1em;
  }

	body:not(.mobile_device) #header_top ,
	body:not(.mobile_device) #menu_container ,
	#content_container {
		width: 100%;
		margin: 0 auto;
		font-size: 1em;
		max-width: 65rem;
	}
}


@media (min-width: 65rem) {
	body:not(.mobile_device) #header_top_logo {
		margin-left: 0;
	}

  body.mobile_device #menu_container {
    max-width: 65rem;
    margin: 0 auto;
  }

	.content {
		padding: 0.5em 0;
	}
}







@media print {
	#header_container {
		display: none;
	}

	#main {
		width: auto;
		max-width: none;
		margin: 0 2%;
		padding: 0;
		color: #000;
		background: transparent;
	}

	#footer_container {
		box-shadow: none;
	}

	h1 ,
	h2 ,
	h3 ,
	h4 ,
	h5 ,
	h6 {
		page-break-after:avoid;
		page-break-inside:avoid
	}
	img {
		page-break-inside:avoid;
		page-break-after:avoid;
	}

	blockquote ,
	table ,
	pre {
		page-break-inside:avoid;
	}

	ul ,
	ol ,
	dl {
		page-break-before:avoid;
	}
}









