@charset "UTF-8";

/*
    colors 
    #f39400 orange
    #c99643 brownish
    #74ca4a mint
    #2c57f8 azur
    #ed2100 fire
*/

*		{ margin: 0; padding: 0; background: none; }

html	{ height: 100%; }
body	{ height: 100%; font-family: "Lucida Sans", "Lucida Sans Unicode", Tahoma, Arial, sans-serif; font-size: 100%; color: #000; background: #fff; }

h1		{ font-size: 150%; color: #c99643; font-weight: normal; margin: 0.5em 0; text-transform: uppercase; }
h2		{ font-size: 120%; color: #c99643; font-weight: normal; margin: 0.5em 0; text-transform: uppercase; }
h3		{ font-size: 100%; color: #c99643; font-weight: normal; font-variant: small-caps; margin-bottom: 0.5em; } 

img		{ border: none; }
p		{ font-size: 80%; line-height: 175%; margin-bottom: 0.5em; }
a		{ text-decoration: none; color: #2c57f8; }
a:hover	{ text-decoration: underline; }

ul      { font-size: 80%; }
li      { margin: 0 0 0.5em 2em; }

table	{ border-collapse: collapse; }
td,
th		{ padding: 0.25em 0.5em; }
td		{ vertical-align: top; }
th		{ vertical-align: bottom; text-align: left; }

blockquote { line-height: 150%; margin: 1em 2em; font-family: Lucida, Georgia, "Times New Roman", serif; color: #c99643; }
cite    { font-style: normal; text-transform: uppercase; letter-spacing: 0.1em; color: #000; font-size: 70%; }
address { font-size: 75%; line-height: 175%; font-style: normal; font-family: Lucida, Georgia, "Times New Roman", serif; color: #808080; margin: 1em 0 2em 0; }

input,
textarea,
select	        { padding: 0.125em; font-family: "Lucida Sans", "Lucida Sans Unicode", Tahoma, Arial, sans-serif; font-size: 100%; border: solid 1px; border-color: #444 #ddd #ddd #444; background: #e8e8e0; }
select          { border-style: solid; }
input.submit	{ border-color: #ddd #444 #444 #ddd; background: #909090; color: #fff; font-weight: bold; }

#page		{ position: relative; height: auto !important; height: 100%; min-height: 100%; }

#header		{ position: relative; background: #BFC4D3; margin-top: 1px; min-height: 200px; }

#main		{ position: relative; padding-bottom: 2em; }
#content	{ position: relative; max-width: 58em; margin-left: 4em; padding-top: 1em; }
#footer		{ position: absolute; clear: both; bottom: 0em; left: 0em; height: 2em; width: 100%; background: url(../img/site/footer_shadow_bg.png) repeat-x top left #f39400; }

#header ul,
#footer ul  { font-size: 100%; }
#header li,
#footer li  { margin: 0; }

#mainmenu                   { text-transform: lowercase; padding: 1em 0 0.25em 4em; background: url(../img/site/page_shadow_bg.png) repeat-x bottom left #f39400; }
#mainmenu_level_0			{  }
#mainmenu_level_0 ul		{ list-style-type: none; }
#mainmenu_level_0 li		{ float: left; font-size: 150%; margin: 0 1em 0.25em 0; }
#mainmenu_level_0 a			{ text-decoration: none; color: #fff; border: none; }
#mainmenu_level_0 .active	{ color: #B26E00; }

#mainmenu_level_1			{ text-transform: lowercase; width: 14em; min-height: 200px; background: url(../img/site/submenu_bg.png); padding-left: 4em; }
#mainmenu_level_1 ul		{ list-style-type: none; padding: 0.75em 0 0 0; }
#mainmenu_level_1 li		{ margin-bottom: 0.5em; font-size: 100%; }
#mainmenu_level_1 a			{ text-decoration: none; color: #fff; border: none; }
#mainmenu_level_1 .active	{ color: #ffaa00; text-shadow: #000 0px 0px 8px; }
#mainmenu_level_1 .active a	{ color: #ffaa00; text-shadow: #000 0px 0px 8px; }

#submenu    { width: 680px; float: left; height: 200px; background: url(../img/site/header_bg.png) no-repeat top left; }
#logo		{ float: left; margin: 30px 0 0 20px; }
#logo img   { display: block; width: 318px; margin-left: -80px; }
#languageMenu { text-align: right; font-size: 80%; margin-top: 1em; }

#auxmenu	{ text-transform: lowercase; padding: 0.25em 4em; }
#auxmenu ul	{ list-style-type: none; }
#auxmenu li	{ display: inline; padding:0 1em 0 0; font-size: 80%; }
#auxmenu a	{ border: none; color: #fff; }

.pageListMenu	{ font-size: 80%; letter-spacing: 0.5em; font-variant: small-caps; margin: 1em 0; }

/* news */
.newsVerbose,
.newsShort    { position: relative; }
.more,
.less         { position: relative; }     

.more .leftFloat,
.less .leftFloat { margin-right: 1em; }
.newsInfoShort,
.newsInfo { float: left; }

/* veranstaltung */
.veranstaltungTermine				{ font-size: 75%; }
.veranstaltungTermine .cancelled,
.veranstaltungTermine .premiere		{ background: url(../img/site/premiere_bg_narrow.png) top left no-repeat; border: solid 1px #ff6600; border-top-style: none; }
.veranstaltungTermine .cancelled td,
.veranstaltungTermine .premiere td	{ padding-top: 10px; }
.veranstaltungTermine .cancelled	{ background-image: url(../img/site/cancelled_bg_narrow.png); border-color: #ff0000; }

.veranstaltungSideBar	{ width: 240px; float: left; padding: 8px 8px 1em 8px; margin-right: 16px; background: #e8e8e8; }
.veranstaltungSideBar h2{ margin-top: 1em; }
.veranstaltungText		{ }

/* termine */
.terminliste th	{ padding-top: 1em; font-weight: normal; color: #ffaa00; }
.terminliste tr	{ border-top: solid 1px #e8e8e8; }
.terminliste td	{ vertical-align: bottom; font-size: 90%; vertical-align: middle; }
.terminliste .datum { }
.terminliste em	{ font-style: normal; font-variant: small-caps; color: #808080; }
.termineKommentar { border-bottom: dotted 1px #808080; border-top: dotted 1px #808080; color: #808080; font-size: 80%; padding: 0.25em 0; margin: 0.25em 0; } 

tr.premiere		{ background-color: #ffe0c0; background-image: url(../img/site/premiere_bg.png); background-repeat: no-repeat; background-position: 0 0; border-top-color: #fff; }
tr.premiere td	{ padding-top: 10px; }

tr.cancelled	{ background-color: #ffe0e0; background-image: url(../img/site/cancelled_bg.png); background-repeat: no-repeat; background-position: 0 0; border-top-color: #fff; }
tr.cancelled td	{ padding-top: 10px; }

/* Reservierung */
div.booking		    { width: 40em; margin-bottom: 1em; padding-left: 24px; background: url(../img/site/drop_shadow_left.png) no-repeat top left #fff; margin-left: -24px; }
.booking .shadow    { padding-right: 24px; background: url(../img/site/drop_shadow_right.png) no-repeat top right #fff; }
.booking form       { background: #fff; padding: 1em; border: solid 1px #f0f0f0; }
.booking table	    { font-size: 0.8em; }
.booking td	        { padding: 0.25em; line-height: 200%; }
.booking .error input { border: solid 2px #f00; }

/* Kontakt */
div.contact			    { width: 40em; margin-bottom: 1em; padding-left: 24px; background: url(../img/site/drop_shadow_left.png) no-repeat top left #fff; margin-left: -24px; }
.contact div            { padding-right: 24px; background: url(../img/site/drop_shadow_right.png) no-repeat top right #fff; }
.contact form           { background: #fff; padding: 1em; border: solid 1px #f0f0f0; }
.contact table   		{ font-size: 80%;  }

/* Locations */
.locationView .dates    { float: right; font-size: 70%; margin-left: 1em; }
.locationView caption   { padding: 0.25em 0.5em; text-align: left; font-weight: bold; }

/* Team */
.teamLinks              { list-style-type: none; margin-bottom: 2em; }
.sponsorImages          { width: 200px; float: right; margin: 0 2em 2em 0; padding: 16px 0 16px 16px; border-left: solid 1px #f0f0f0; }
.sponsorImages img      { padding-bottom: 8px; }

/* Programm */
div.program        { margin: 0.5em 0; padding: 0.5em 1em 3.5em 1em; background: url(../img/site/vertical_gradient_mint.png) repeat-x bottom left #dffccf; }
.program table     { font-size: 80%; }
.program th        { color: #74ca4a; }
.program td        { padding: 0.75em 0.5em 0.5em 0.5em; }
.program .row0     { background: #fff; }

/* Gruppen */
.groupProfile           { float: left; width: 200px; min-height: 25em; padding: 0.5em 0.5em 2em 0.5em; margin: 0 0.5em 1em 0; background: url(../img/site/vertical_gradient.png) repeat-x bottom left #BFC4D3; }
.groupProfile h2        { font-size: 90%; margin-bottom: 0.25em; color: #fff; }
.groupProfile .subTitle { color: #fff; }
.groupProfile p         { font-size: 75%; line-height: 150%; }
.groupProfile .more     { display: block; margin-top: 0.5em; }
h2 .subTitle            { display: block; }

.groupText              { margin-left: 300px; padding-left: 2em; }
.groupImages            { float: left; margin-right: 0.5em; padding-right: 0.5em; }
.groupImages img        { display: block; padding: 0.5em; background: #f0f0f0; margin-bottom: 0.5em; }
.subTitle               { text-transform: none; font-size: 70%; font-family: Lucida, Georgia, "Times New Roman", serif; }

/* Tickets */
.ticketInfo table       { font-size: 80%; }
.ticketInfo th,        
.ticketInfo td          { padding: 0.5em 1em 0.5em 0; }
.ticketInfo .infoBox    { margin: 0.5em 0; padding: 0.5em 1em 3.5em 1em; background: url(../img/site/vertical_gradient_mint.png) repeat-x bottom left #dffccf; }
.ticketInfo .infoBox h2 { text-transform: none; color: #74ca4a; }
.ticketInfo caption     { font-weight: bold; color: #c99643; text-align: left; font-size: 110%; }

/* Rahmenprogramm */
.fringe h2              { margin-top: 2em; }

/* Standard Classes */
.xs		{ width: 2em; }
.xss	{ width: 3em; }
.s		{ width: 4em; }
.ssm	{ width: 6em; }
.sm		{ width: 8em; }
.m		{ width: 10em; }
.mml	{ width: 13em; }
.ml		{ width: 16em; }
.l		{ width: 20em; }
.lxl	{ width: 25em; }
.xl		{ width: 30em; }
.xxl	{ width: 40em; }
.xxxl	{ width: 50em; }
.pct_100{ width: 100%; }

.rounded	{ background: #ffeabf; margin-bottom: 1em; }
.rounded .tl { background: url(../img/site/corner_tl.gif) no-repeat top left; height: 12px; }
.rounded .tr { background: url(../img/site/corner_tr.gif) no-repeat top right; height: 100%; }
.rounded .bl { background: url(../img/site/corner_bl.gif) no-repeat bottom left; height: 12px; }
.rounded .br { background: url(../img/site/corner_br.gif) no-repeat bottom right; height: 100%; }
.rounded .ctr { margin: 0 12px; }

.smaller	{ font-size: 80%; }
.right		{ text-align: right; }
.centered	{ text-align: center; }

.ieCompat { border: none; background: none; }

.inputImage	{ border: none; background: none; padding: 0em; vertical-align: middle; }

.error_message		{ border: solid 2px #f44; background: #fee; padding: 1.5em; font-size: 0.7em; font-weight: bold; color: #f44; margin: 1.5em 0em; line-height: 150%; }
.error				{ color: #f00; }
span.error input	{ background: #f88; }
.clearFloat			{ height: 0em; clear: both; }
.leftFloat			{ float: left; }

.pdfIcon,
.externLinkGfx		{ vertical-align: middle; }

ul.noList           { list-style-type: none; }
ul.noList li        { margin-left: 0; }

div.hr				{ margin: 1em auto; height: 0; border-top: solid 1px #404040; line-height: 0%; }
