/* Page */
* { font-family: 'Titillium Web', sans-serif; font-weight: 400; margin: 0px; padding: 0px; font-size: 15px; color: #000000; line-height: 1.2em;}
body{ overflow-y: scroll;}
body.noscroll{ overflow: hidden !important; }

/* General */
a{ text-decoration: none; color: #e94e1b; }
a:hover{ text-decoration: underline; }
a.button, div.button{ cursor: pointer; background: #ffffff; display: inline-block; border: 1px solid black; padding: 0px 10px; line-height: 26px; text-decoration: none; color: #000000; margin-right: 15px; font-size: 15px !important;}
a.button.nomargin, div.button.nomargin{ margin-right: 0px;}
a.button.active, div.button.active{ background: #e94e1b; color: #ffffff; border: 1px solid #e94e1b; }
a.button:hover, div.button:hover{ border: 1px solid #e94e1b; }
.c{ clear: both; float: none !important; height: auto !important; line-height: normal !important;}
.tc{ text-align: center;}
.nw{ white-space: nowrap;}
.toe{ overflow: hidden; text-overflow: ellipsis;}
.b{ font-weight: 800;}
.b600{ font-weight: 600;}
.hidden{ display: none;}
.fl{ float: left; }
.tr{ text-align: right;}
.nbt{ border-top: none !important;}
div.warning{ background: #ffe2e2; padding: 5px 10px; border: 1px solid #ff0000; }
.warning, .warning a{ color: #ff0000; }
div.warning a{ text-decoration: underline; }
div.message{ background: #e1ffe1; padding: 5px 10px; border: 1px solid #008700; }
.message, .message a{ color: #008700; }
div.message a{ text-decoration: underline; }

/* Tables */
div.table{}
div.table div.row.header { background: #dddddd; }
div.table div.row.header div{ font-weight: 600; font-size: 18px; padding: 5px 10px;}
div.table div.row.header div span{ font-weight: 600; font-size: 18px; }
div.table div.row{ padding: 5px 0px; position: relative;}
div.table div.row.rollover:hover{ background: #ffe2e2; }
div.table div.cell{ float: left; padding-left: 15px; box-sizing: border-box; }
div.table div.cell.fw{ float: none; width: 100%; }
div.table div.cell:first-child{ padding-left: 0px; }
div.table div.row::after{ clear: both; content: ""; display: block;}
/* Relative */
div.table.rel div.row div.cell:first-child:not(.fw){ float: none; overflow: hidden; text-overflow: ellipsis; }
div.table.rel div.row div.cell:last-child:not(.fw){ right: 0px; top: 5px; position: absolute; }
div.table.rel div.row div.cell:last-child:not(.fw) div { float: left; }
@media screen and (max-width: 500px){
	div.table.rel.s500 div.header{ display: none;}
	div.table.rel.s500 div.row div.cell{ width: 100% !important; padding-right: 0px; padding-left: 0px;}
	div.table.rel.s500 div.row div.cell:first-child{ text-align: center !important; margin-right: 0px !important; font-weight: 600 !important;}
	div.table.rel.s500 div.row div.cell:first-child div { text-align: center !important; font-weight: 600 !important;}
	div.table.rel.s500 div.row div.cell:last-child { position: inherit; text-align: center !important; width: 100%; }
	div.table.rel.s500 div.row div.cell:last-child div{ width: 100% !important; text-align: center !important;}
}
@media screen and (max-width: 600px){
	div.table.rel.s600 div.header{ display: none;}
	div.table.rel.s600 div.row div.cell{ width: 100% !important; padding-right: 0px; padding-left: 0px;}
	div.table.rel.s600 div.row div.cell:first-child{ text-align: center !important; margin-right: 0px !important; font-weight: 600 !important;}
	div.table.rel.s600 div.row div.cell:first-child div { text-align: center !important; font-weight: 600 !important;}
	div.table.rel.s600 div.row div.cell:last-child { position: inherit; text-align: center !important; width: 100%; }
	div.table.rel.s600 div.row div.cell:last-child div{ width: 100% !important; text-align: center !important;}
}
/* List */
div.table.list div.row{ border-top: 1px solid #e94e1b;}
div.table.list div.row:last-child{ border-bottom: 1px solid #e94e1b;}
/*div.advanced-list span.advancedlist-header-text{ float: left; }*/
/*div.advanced-list div.row.header{ min-height: 31px; }*/
div.advanced-list div.advancedlist-searchbtn-container{ position: absolute; right: 10px; top: 0px; height: 32px; cursor: pointer; padding: 9px 0px 0px 10px !important;}
div.advanced-list div.advancedlist-searchbtn-container img{ height: 21px; float: right; margin-left: 10px;}
div.advanced-list div.advancedlist-searchbtn-container span{ height: 21px; float: right; color: #e94e1b;}
div.advanced-list div.advancedlist-search-container{ position: absolute; left: 0px; right: 0px; top: 1px; display: none; z-index: 2;}
div.advanced-list div.advancedlist-search-container input.advancedlist-search{ background: #ffffff; width: 100%; box-sizing: border-box; text-align: center; }
div.advanced-list div.advancedlist-rownavigation a{ display: inline-block; width: 24px; border: 1px solid #e94e1b; text-align: center; line-height: 24px; margin: 1px; }
div.advanced-list div.advancedlist-rownavigation a:first-child{ margin-left: 0px; }
div.advanced-list div.advancedlist-rownavigation a:hover{ text-decoration: none; background: #e94e1b; color: #ffffff; }
div.advanced-list div.advancedlist-rownavigation a.disabled{ background: #ffffff !important; color: #dddddd !important; border: 1px solid #dddddd !important; cursor: default !important; }
div.advanced-list div.advancedlist-rownavigation select{ width: auto !important; height: 26px; margin: 0px 2px 2px 2px; padding: 0px 5px;}
div.advanced-list div.advancedlist-rownavigation select option{ }
div.advanced-list div.advancedlist-rownavigation div.advancedlist-searchresult-linkcontainer{ display: inline-block; }
/*div.advanced-list input.advancedlist-search:focus{ width: 100%; max-width: 300px;}*/
/* Form */
div.table.form div.row{ padding: 0px;}
div.table:not(.nmh).form div.cell{ padding: 5px 15px 5px 0px; min-height: 40px;}
div.table.form div.cell:last-child{ padding-right: 0px;}
div.table.form div.cell.submit{ text-align: right; }
@media screen and (max-width: 360px){
	div.table.form:not(.nobreak) div.cell{ width: 100% !important;}
	div.table.form:not(.nobreak) input[type="text"], div.table.form input[type="password"], div.table.form input[type="email"], div.table.form input[type="button"], div.table.form input[type="submit"], div.table.form select, div.table.form textarea{ width: 100% !important; box-sizing: border-box;}
}

div.table div.row.subheader div{ color: #e94e1b; font-weight: 800; }
/*div.table div.row.summary div{ color: #e94e1b; font-weight: 800; }*/

/* 3 Column layout */
div.col3{ width: 289px; float: left; border-left: 1px solid #e94e1b; border-right: 1px solid #e94e1b; padding: 0px 20px; margin-left: -1px;}
div.cola{ border-left: none; padding-left: 0px; margin-left: 0px;}
div.colc{ border-right: none; }
div.col3.colc{ padding-right: 0px;}
@media screen and (max-width: 1080px){
	div.col3{ width: 100%; border-left: none; border-right: none; margin-left: 0px; padding: 20px 0px 20px 0px; border-top: 1px solid #e94e1b;}
	div.cola{ border-top: none; padding-top: 0px;}
}

/* Alerts */
div.alerts-background{ z-index: 900; position: fixed; left: 0px; right: 0px; top: 0px; bottom: 0px; background: #000000; opacity: 0.5; }
div.alerts-message{ z-index: 901; background: #ffffff; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 90%; max-height: 90%; overflow-y: auto; }
div.alerts-message div.title{ font-weight: 800; background: #e94e1b; color: #ffffff; padding: 15px 20px; height: 100%; }
div.alerts-message div.content{ padding: 20px; word-wrap:break-word; }
div.alerts-message div.buttons{ padding: 0px 20px 10px 20px;}
@media screen and (max-width: 500px){
	div.alerts-message{ width: 100%; }
}
/* Page layout */
h1{ color: #e94e1b; font-size: 29px; margin-bottom: 10px;}
div.h1{ color: #e94e1b; font-size: 29px; margin-bottom: 10px;}
h2{ color: #000000; font-size: 15px; font-weight: 800;}
h2.orange{ color: #e94e1b; }
header{ background: #ffffff; position: fixed; left: 0px; right: 0px; top: 0px; height: 76px; padding-top: 30px; z-index:100;}
a.logo{ position: relative;}
img#header-logo-alternative{ position: absolute; left: 0px; top: -52px; max-height: 110px; }
a.logo.custom-image img#header-logo{ opacity: 0; }
a#header-hamburger{ display: none; }
div#hamburger-count{ display: none; width: 21px; height: 21px; background: url('../img/hamburger-count-bg.png') center center no-repeat; color: #ffffff; text-align: center; line-height: 21px;}
div#header-menu{ float: right; white-space: nowrap; }
div#header-menu a { display: inline-block; padding: 0px 14px; font-weight: 200; font-size: 18px; }
div#header-menu a.language:not(.first) { padding-left: 2px; }
div#header-menu a.language { padding-right: 2px; }
div#header-menu a:last-child{ padding-right: 0px; }
span#my-reservations-header-count{ color: #e94e1b;}
div#my-reservations-header{ margin-top: -24px; text-align: right; float: right; font-size: 14px;}
div#my-reservations-header span.time{ padding-left: 10px; color: #e94e1b; font-weight: 800; font-size: 20px;}
div#my-reservations-header-mobile{ display: none;}

div#top-spacer{ height: 96px;}

aside#banner{ overflow: hidden; margin-bottom: 10px; }
div#banner-container{ width: 4870px; }
div.banner-event{ width: 950px; float: left; margin-left: 15px; margin-right: 15px; opacity: 0.25;}
div.banner-event#banner-nr-2{ opacity: 1; }
div.banner-event:first-child{ margin-left: 0px;}
div.banner-event:last-child{ margin-right: 0px;}
div.banner-event div.banner-border{ position:  absolute; top: 0; left: 0; bottom: 0; right: 0; border: 1px solid #e94e1b; }
div.banner-event div.banner-image{ position: relative; width: 50%; float: left; background-repeat: no-repeat; background-size: cover;}
div.banner-event div.banner-image:before{ content: ""; display: block; padding-top: 35.16%; }
div.banner-event div.banner-image div.banner-border{ border-right: none; }
div.banner-event div.banner-content{ position: relative; padding: 0px; width: 50%; float: left; }
div.banner-event div.banner-content:before{ content: ""; display: block; padding-top: 35.16%; border-left: 1px solid #ffe2e2;}
div.banner-event div.banner-content div.banner-border{ border-left: none; }
div.banner-event div.banner-content div.title{ display: block; color: #e94e1b; font-weight: 800; font-size: 29px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; position: absolute; left: 5%; top: 10%; right: 5%;}
div.banner-event div.bottom-container{ position: absolute; left: 5%; bottom: 7%; right: 5%; }
div.banner-event div.banner-content div.date-location{ margin-top: 55px; display: block; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}
div.banner-event div.banner-content div.more-info{ margin-top: 5px; display: block; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}
@media only screen and (max-width: 1000px){
	div.banner-event{ margin-left: 0px; margin-right: 0px;}
	div#banner-nr-0, div#banner-nr-1, div#banner-nr-3, div#banner-nr-4{ display: none; }
	div#banner-container{ width: 90% !important; max-width: 950px !important; margin-left: auto; margin-right: auto; padding-left: 10px; padding-right: 10px; }
	div#banner-nr-2{ width: 100% !important; }
}
@media only screen and (max-width: 700px){
	div.banner-event div.banner-image, div.banner-event div.banner-content{ width: 100%;}
	div.banner-event div.banner-border{ border: 1px solid #e94e1b; border-top: none; }
	div.banner-event div.banner-content { height: 88px;}
	div.banner-event div.banner-content div.title{ left: 13px; top: 18px; right: 102px; }
	div.banner-event div.banner-content div.date-location{ margin-top: 20px;}
	div.banner-event div.bottom-container{ left: 13px; top: 35px; right: 13px; bottom: auto;}
	div.banner-event div.banner-content div.more-info{ position: absolute; top: -26px; right: 0px; width: 82px; }
	div.banner-event div.banner-content div.more-info a{ display: block; color: #ffffff; background: #e94e1b; text-align: center; height: 26px; line-height: 26px;}
}
@media only screen and (max-width: 575px){
	div.banner-event div.banner-content { height: 80px;}
	div.banner-event div.banner-content div.title{ font-size: 24px; }
	div.banner-event div.banner-content div.date-location{ margin-top: 15px;}
}
@media only screen and (max-width: 450px){
	div.banner-event div.banner-content { height: 80px;}
	div.banner-event div.banner-content div.title{ font-size: 20px; }
	div.banner-event div.banner-content div.date-location{ margin-top: 15px;}
}


nav{ background: #000000; height: 44px; }
nav.hidden{ height: 0px; overflow: hidden;}
nav ul{ list-style-type: none; display: block; text-align:center; font-size: 18px;}
nav ul li{ display: inline-block; }
nav ul li.seperator{ color: #e94e1b; line-height: 44px; padding: 0px 10px;}
nav ul li a{ display: block; line-height: 44px; color: #ffffff;}
nav div.mobile-close{ display: none; }

@media only screen and (min-width: 776px){
	nav.fixed{ position: fixed; left: 0px; right: 0px; z-index: 101; margin-top: 0px;}
}
@media only screen and (max-width: 775px){
	aside#banner{ display: none; height: 0px !important;}
	header{ height: auto; padding-bottom: 10px; border-bottom: 1px solid #dddddd; padding-top: 10px; border-top: 1px solid #dddddd;}
	header a.logo{ float: left; width: 70%; max-width: 223px;}
	div#hamburger-count{ position: absolute; right: -5px; top: -12px; }
	a#header-hamburger{ position: relative; display: block; float: right; max-width: 35px; width: 15.76%; margin-top: 5px;}
	a#header-hamburger img{ max-width: 40px; width: 100%;}
	img#header-logo{ width: 100%; max-width: 223px;}
	img#header-logo-alternative{ left: 0px; top: 0px; max-height: 48px; max-width: 200px;}
	div#header-menu{ display: none;}
	div#my-reservations-header{ display: none;}
	div#my-reservations-header-mobile{ display: block; float: right; color: #e94e1b; font-weight: 800; font-size: 18px; margin-right: 15px;}
	nav{ padding: 10px 0px 0px 0px;display: none; position: fixed; left: 0px; right: 0px; z-index: 101; height: auto;}
	nav.hidden{ height: auto; }
	nav ul li{ float: none; width: 100%; text-align: left; }
	nav ul li.seperator{ display: none; }
	nav ul li a{ line-height: 30px;}
	div#header-menu{ display: block; float: none; border-top: 2px solid #ffffff; margin-top: 5px; padding-top: 10px;}
	div#header-menu a{ display: block; width: 100%; color: #ffffff; margin: 0px; padding: 0px; font-size: 20px;}
	div#header-menu span.seperator{ display: none;}
	nav div.mobile-close{ display: block; clear: both; width: 100%; background: url('../img/arrow-up.png') center center no-repeat; height: 40px; cursor: pointer;}
}
@media only screen and (max-width: 775px) and (min-width: 477px){
	nav ul{ float: left; width: 160px; border-right: 1px solid #ffffff;}
	div#header-menu{ padding-left: 25px; float: left; width: 210px; border-top: none; margin-top: 0px; padding-top: 0px;}
	nav ul li a{ line-height: 40px;}
	div#header-menu a{ line-height: 40px;}
}
@media only screen and (max-width: 385px){
	header a.logo{ width: 60%;}
}
@media only screen and (max-width: 300px){
	header a.logo{ width: 50%;}
}

div#breadcrumps{ background: #e94e1b; padding: 5px 0px; }
div#breadcrumps.fixed{ position: fixed; top: 204px; left: 0px; right: 0px; z-index: 100; margin-top: 0px; }
div#breadcrumps * { color: #ffffff; }
div#breadcrumps a{ color: #000000; padding: 0px 5px; display: inline-block;}
div#breadcrumps a:last-child{ color: #000000; }

aside#search{ background: #dddddd; }
aside#search.fixed{ position: fixed; top: 140px; left: 0px; right: 0px; z-index: 100; margin-top: 0px; }
input#search-input{ width: 100%; height: 45px; line-height: 45px; text-align: center; font-size: 22px; margin: 10px 0px; border: none;}
@media only screen and (max-width: 775px){
	input#search-input{ margin: 10px 0px; height: 30px; line-height: 30px; font-size: 16px;}
}

div#page-content{ margin-top: 20px;}

footer{ background: #939598; margin-top: 20px; }
/*div#footer-content { padding: 20px 0px 17px 0px; }*/
div#footer-content div:not(.c){ box-sizing: border-box;margin: 20px -1px 17px 0px;float: left; width: 238px; padding: 0px 20px; height: 168px; border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; color: #ffffff; font-size: 12px; line-height: 20px;}
div#footer-content div:first-child{ border-left: 1px solid #ffffff; }
div#footer-content div h3{ font-size: 20px; color: #ffffff; height: 38px; margin-top: -5px;}
div#footer-content div h3 a{ font-size: 20px; color: #ffffff; }
div#footer-content div a{ display: block; color: #ffffff; font-size: 12px; line-height: 20px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap;}
div#footer-content div a.language{ display: block; line-height: 20px; float: left; padding-right: 5px;}
div#footer-content div.poweredby-footer a{ display: inline-block; margin-bottom: -5px; }
div#footer-content div.poweredby-footer img{ height: 20px; vertical-align: middle; margin-left: 10px;}

@media screen and (max-width: 1080px){
	div#footer-content div:not(.c){ width: 25% !important;}
}

@media screen and (max-width: 950px){
	div#footer-content div:not(.c){ display: none;}
	div#footer-content div:nth-child(4){ width: 100% !important; display: block; border: none;}
}

.full-width{}
.content-width{ width: 90% !important; max-width: 950px !important; margin-left: auto; margin-right: auto; padding-left: 10px; padding-right: 10px;}

div.model-view-left{ width: 290px; float: left; border-right: 1px solid #e94e1b; }
div.model-view-right{ width: 639px; float: left; padding-left: 20px; position: relative; margin-left: -1px; border-left: 1px solid #e94e1b;}
div.model-view-right div.button-group{ width: 100%; text-align: right;}
div.model-view-right div.button-group .button{ float: right; width: 166px; text-align: center;}
div.model-view-right div.button-group .button:first-child{ margin-right: 0px;}

@media screen and (max-width: 1080px){
	div.model-view-left{ width: 100%; border-right: none; border-bottom: 1px solid #e94e1b; padding-bottom: 20px;}
	div.model-view-right{ padding-left: 0px; width: 100%; border-left: none; padding-top: 20px; }
	div.model-view-right div.button-group{ float: none; width: 100%;}
	div.model-view-right div.button-group .button{ margin-top: 5px;}
	/*div.model-view-right div.button-group .lastbutton{ margin-right: 15px;}*/
}
@media screen and (max-width: 475px){
	div.model-view-right div.button-group .button{ float: none; width: 100%; margin-right: 0px; box-sizing: border-box;}
}

div.url{ display: block; color: #e94e1b;}
div.url{ display: inline-block; color: #e94e1b;}

.inactive{ color: #c8c8c8; }
.inactive *{ color: #c8c8c8; }

fieldset{ border: 1px solid #e94e1b; padding: 5px; display: inline-block;}

.span{ display: inline-block; }
.orange{ color: #e94e1b; }

.shadow-light-popup{ -webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,1); -moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,1); box-shadow: 0px 0px 20px 0px rgba(0,0,0,1); }