﻿/* Page structure */
body {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 0.8em;
    margin: 0px;
    color: #000;
    background: #fff url('//images.lucernefestival.ch.s3.amazonaws.com/structure/backgrounds/DA5893.gif') no-repeat 51% 0;
}
#container      {width: 977px; height: auto; margin: 0px auto 0px auto;}
#containerInner {width: 977px; height: auto; margin: 0px auto 0px auto; background-color: #F5F5F5;}

/* Splash */
#splash      {margin-top: 100px; border-top: solid 10px #DB5790; background-color: #F5F5F5; padding: 20px; height: 500px}
#splash p    {width: 75%}

/* Login bar */
#login            {font-size: 0.9em; margin-top: 3px; text-align: right; padding-right: 13px; color: #000000; background-color: #FFFFFF;}
#login a          {color: #000000;}
#login img        {background-color: #999999; margin: 0px 3px 0px 3px;}
#login span       {color: #000000; margin-left: 5px; margin-right: 5px;}

/* Search, language select bar */
#top            {font-size: 0.9em; padding-top: 3px; text-align: right; height: 24px; padding-right: 13px; color: #000000; background-color: #FFFFFF;}
#top a          {color: #000000;}
#top img        {background-color: #999999; margin: 0px 3px 0px 3px;}
#top span       {color: #000000; margin-left: 5px; margin-right: 5px;}
#top .button    {position: relative; top: 4px;}
#top .search    {border: solid 1px #B2B2B2; margin-left: 5px;}

/* Main logo */
#logo           {padding: 5px 0px 5px 13px; background-color: #FFFFFF;}

/* Primary navigation */
#nav            {padding: 10px 0px 27px 0px; font-size: 1.1em; word-spacing: 4px; background-color: #FFFFFF;}
#nav a:link     {color: #000000; text-decoration: none}
#nav a:visited  {color: #000000; text-decoration: none}
#navspacer      {background-color: #FFFFFF; width: 977px; height: 10px; font-size: 8px;}

/* Main content area */
#main       {min-height: 600px;}
#topBorder  {border-top: solid 13px #DA5893}

/* - home page */
.nimgOnHome                         {background-color: #DB5790;}
#flashPanel                         {width: 977px; height: 467px;}
#flashPanel div.no-flash            {width: 977px; height: 460px; padding-top: 7px; color: #FFF;}
#flashPanel div.no-flash h2    {color: #FFF; width: 300px;}
#flashPanel div.no-flash div.no-flash-message   {margin-left: 600px; width: 320px; background: url('../images/structure/no_flash/homepage_blacktextbox.png'); background-position: right bottom}
#flashPanel div.no-flash div.no-flash-message div.inner {padding: 10px 16px 20px 10px}
#flashPanel div.no-flash div.no-flash-message div.super-title   {text-transform: uppercase; font-weight: bold}
#flashPanel div.no-flash div.no-flash-message div.date   {margin-bottom: 8px}
#flashPanel div.no-flash div.no-flash-message p   {font-size: 0.9em}
#flashPanelBorder                   {border-top: solid 13px #DB5790;}
#homePanels                         {margin-top: 6px; margin-bottom: 20px}
#homePanels div.panel               {float: left; width: 242px; background-color: #F5F5F5; overflow: hidden;}
#homePanels div.border              {border-right: solid 2px #DB5790;}
#homePanels div.panel div.head      {padding: 10px 9px 10px 9px; background-color: #EBEBEB;}
#homePanels div.panel div.headright {padding: 10px 11px 10px 9px; background-color: #EBEBEB;}
#homePanels div.panel div.content   {padding: 6px 15px 6px 15px; min-height: 180px; overflow: hidden;}
#homePanels div.panel div.content div.item      {position: relative; margin-bottom: 12px; height: 160px;}
#homePanels div.panel div.content div.item p    {font-size: 0.9em; margin-bottom: 2px}
#homePanels div.panel div.content div.itemshop  {position: relative; margin-bottom: 12px; height: 75px;}
#homePanels div.panel div.content div.itemshop p {font-size: 0.9em; margin-bottom: 2px}
#homePanels div.panel div.content div.item div.links {position: absolute; bottom: 0px; width: 100%;}
#homePanels div.panel div.content div.item div.links img {margin: 3px 5px 0 3px; float: right;}
#homePanels div.panel div.content div.item div.links .left {float: left;}
#homePanels div.panel div.calendarContainer     {padding: 6px 13px 6px 13px; min-height: 180px;}
table.calendar               {width: 100%; border-color: #F5F5F5; background-color: #F5F5F5;}
table.calendar td            {background-color: #F5F5F5; font-size: 0.9em;}
table.calendar td a          {font-weight: bold;}
table.calendar td.future     {background-color: #D2D2D2;}
table.calendar td.easter     {background-color: #958FC5;}
table.calendar td.summer     {background-color: #DA5893;}
table.calendar td.piano      {background-color: #89C761;}

/* - breadcrumb */
#breadcrumb     {color: #646464; background-color: #F5F5F5; padding: 6px 10px 6px 10px; font-size: 0.85em; text-transform: uppercase}
#breadcrumb img, #breadcrumb span, #breadcrumb a {margin-right: 6px; vertical-align: middle}

/* - content panel */
#contentPanel           {background-color: #F5F5F5; float: left; width: 620px; min-height: 506px; padding: 30px 70px 30px 50px; border-right: solid 5px #DFDFDF;}
#contentPanelLeft       {float: left; width: 400px; margin-top: 20px; font-size: 1em}
#contentPanelRight      {float: right; width: 170px; margin-top: 20px}
#contentPanel.payment   {width: 790px; min-height: 506px; padding: 26px 136px 39px 50px; border-top: none; border-left: none; border-right: none; border-bottom: solid 10px #D9D9D9; padding-bottom: 100px;}
#contentPanel.fullWidth {width: 857px}

    /* - festival specific */
    .festivalTitle                  {display: block; margin-bottom: 10px; background-color: #DA5893;}
    div.festivalDate                {border-bottom: solid 1px #BCBCBC; font-size: 1.2em; font-weight: bold; color: #000000; padding-bottom: 6px; margin-bottom: 20px;}
    div.festivalCopy p              {width: 454px; margin-bottom: 0px; padding-bottom: 0px;}
    table.featuredEvents1, table.featuredEvents2   {width: 620px}
    table.featuredEvents1 td        {padding: 0px; padding-bottom: 26px; vertical-align: top}
    table.featuredEvents1 td.alt    {padding-left: 20px}
    table.featuredEvents1 td p      {margin-bottom: 2px; width: 300px; font-size: 0.9em}
    table.featuredEvents2 td        {padding: 0px; padding-bottom: 26px; vertical-align: top;}
    table.featuredEvents2 td.alt    {padding-left: 20px}
    table.featuredEvents2 td p      {margin-bottom: 2px; width: 170px; font-size: 0.9em}
    table.featuredEvents2 td div.pic    {float: left; width: 130px}
    table.featuredEvents2 td div.details    {float: left; width: 170px}
    div.topArticle                      {background-color: #E6E6E6; padding: 10px; margin-bottom: 20px}
    div.topArticle div.pic              {float: left; margin-right: 20px; width: 120px}
    div.topArticle div.text             {float: left; width: 400px}
    div.topArticle div.text-no-pic      {float: left; width: 560px}
    div.topArticle p                    {margin-bottom: 2px; font-size: 0.9em}
    table.articleList                   {width: 620px}
    table.articleList td                {padding: 0px; padding-bottom: 26px; vertical-align: top}
    table.articleList td.alt            {padding-left: 20px}
    table.articleList td p              {margin-bottom: 2px; font-size: 0.9em}
    table.articleList td div.article    {background-color: #E6E6E6; width: 278px; padding: 10px}
    table.articleList td div.article div.pic        {float: left; width: 130px}
    table.articleList td div.article div.details    {float: left; width: 140px}
    #ctl00_cphMain_pnlOutOfSeason p {width: 454px; margin-top: 35px; margin-bottom: 20px;}
    
    /* - event/library specific */
    #eventStats                 {text-align: left; border-top: solid 1px #BCBCBC; font-size: 0.9em; color: #000; padding: 4px 0px 10px 0px}    
    .eventTop                   {margin: 0; padding: 0; font-weight: normal; font-size: 1em;}
    div.eventCart               {margin-top: 10px; margin-bottom: 10px; padding: 10px 0px 0px 0px; border-top: solid 1px #CECECE; border-bottom: solid 1px #CECECE}
    div.eventCart select        {font-size: 12px; margin-right: 4px; height: 19px}
    div.selectionMethod         {border-bottom: dashed 1px #CECECE; padding-bottom: 8px; margin-bottom: 12px; text-align: left}
    div.eventAvailability       {margin-bottom: 10px; padding-bottom: 10px; border-bottom: solid 1px #CECECE}
    div.eventCartRow            {display: block; height: 30px;}
    div.eventCartRow .shiftup   {position: relative; bottom: 1px;}
    div.eventCaption            {font-size: 0.8em; color: #646464; padding: 4px 0px 4px 0px; margin-bottom: 10px;}
    div.eventCaption a.selected {color: #000}
    div.left                    {float: left; text-align: left}
    div.right                   {float: right; text-align: right}
    div.eventCaption a          {font-size: 1em; color: #646464; text-decoration: none; padding-left: 5px}
    div.eventCaption a:visited  {color: #646464; text-decoration: none}
    div.eventCaption a:hover    {color: #000000; text-decoration: none}
    div.eventCaption a:active   {color: #000000; text-decoration: none}
    p.eventInfo                 {color: #646464; font-size: 1em; margin-bottom: 2px; padding-bottom: 2px}
    p.credit                    {font-size:0.8em;padding-top:10px;}
    div.imagePanel              {background-color: #F5F5F5; background-repeat: no-repeat}
    div.imagePaging             {padding-top: 285px; padding-left: 540px; font-size: 16px; font-weight: bold}
    div.imagePaging a           {color: #FFF; margin-left: 4px}
    
    /* - article specific */
    #articleContainer           {border-top: solid 1px #BCBCBC; padding-top: 10px; margin-top: 10px; width: 620px;}
    #articleRight               {float: right; width: 150px; margin-top: 20px; font-size: 1em; padding-top: 5px}
    #articleCopy                {float: left; width: 410px; margin-top: 0px; font-size: 1em}
    #articleCopy span.date      {display: block; color: #646464; font-size: 0.9em}
    
    table.documentDownloadList  {width: 100%; border-top: solid 1px #7B7B7B}
    table.documentDownloadList tr td {border-top: solid 1px #CECECE; padding: 6px; vertical-align: top}
    table.documentDownloadList thead tr td {border-top: none; font-size: 0.9em}
    table.documentDownloadList div.title {font-weight: bold; font-size: 1.1em}
    
    table.photoGallery          {width: 100%; border-top: solid 1px #7B7B7B}
    table.photoGallery td       {padding: 6px}
    table.photoGallery td div.caption       {margin-top: 4px; margin-bottom: 8px}
    
    /* - artists directory specific */
    #artistsDirectoryNav {width: 100%; margin-top: 5px; clear: both; }
    #artistsDirectoryNav div.start {width: 3.9%; float: left; text-align: left;}
    #artistsDirectoryNav div.other {width: 3.9%; float: left; text-align: left; padding-bottom: 5px;}
    #artistsDirectoryNav div.end {width: 0%; float: left; text-align: right;}
    #artistsDirectoryContainer {width: 100%; border-top: solid 1px #BCBCBC;}
    #artistsDirectoryContainer .itemContainer {width: 100%; border-top: solid 1px #D2D2D2; clear: both;}
    #artistsDirectoryContainer .itemCopy {width: 430px; float: left; margin: 10px 0px 5px 0px;}
    #artistsDirectoryContainer .itemImage {float: right; width: 180px; padding-top: 10px; padding-bottom: 10px;}
    #artistsDirectoryContainer .itemImage div {font-size: 0.85em; margin-top: 4px; width: 180px; }
    #artistsDirectoryContainer .itemBottom {border-top: solid 1px #BCBCBC; clear: both;}
    #artistsDirectoryContainer .head {font-size: 1.2em}
    #artistsDirectoryContainer span.subHeading {color: #646464; font-size: 1em;}
    
    /* - composers directory specific */
    #composersDirectoryNav {width: 100%; margin-top: 5px; clear: both;}
    #composersDirectoryNav div.start {width: 3.9%; float: left; text-align: left;}
    #composersDirectoryNav div.other {width: 3.9%; float: left; text-align: left; padding-bottom: 5px;}
    #composersDirectoryNav div.end {width: 0%; float: left; text-align: right;}
    #composersDirectoryContainer {width: 100%; border-top: solid 1px #BCBCBC;}
    #composersDirectoryContainer .itemContainer {width: 100%; border-top: solid 1px #D2D2D2; clear: both;}
    #composersDirectoryContainer .itemCopy {width: 430px; float: left; margin: 10px 0px 5px 0px;}
    #composersDirectoryContainer .itemImage {float: right; padding-top: 10px; padding-bottom: 10px;}
    #composersDirectoryContainer .itemImage div {font-size: 0.85em; margin-top: 4px}
    #composersDirectoryContainer .itemBottom {border-top: solid 1px #BCBCBC; clear: both;}
    #composersDirectoryContainer .head {font-size: 1.2em;}
    #composersDirectoryContainer span.subHeading {color: #646464; font-size: 1em;}
    
    /* - venue specific */
    #venueContainer {border-top: solid 1px #BCBCBC; padding-top: 15px;}
    #venueContainer p {width: 400px;}
    #venueMedia {width: 100%;}
    #venueMedia .mainImage {float: left;}
    #venueMedia .mainImage img {margin-bottom: 5px;}
    #venueMedia .mainImage span {color: #646464; font-size: 1em;}
    #venueContainer .seatingPlan {float: right;}
    #venueContainer .seatingPlan img {margin-bottom: 10px;}
    #venueContainer h4 {width: 210px; border-bottom: solid 1px #BCBCBC; padding-bottom: 4px; margin-bottom: 8px}
    #venueEventContainer {clear: both; padding-top: 25px;}
    #venueEventContainer .back {margin-top: 15px; padding: 4px 5px 0px 5px; text-decoration: none;}
    #venueEventContainer td.cell    {width: 250px}
    #venueEventContainer td.cellRight    {width: 210px}
    #venueEventContainer td.cellRight select    {font-size: 12px; margin-right: 4px; height: 19px}
    #venueEventContainer p.smaller    {width: 200px}
    
    /* - staff directory specific */
    #staffDirectoryContainer {width: 100%;}
    #staffDirectoryContainer .head {width: 100%; border-top: solid 1px #D2D2D2; padding: 10px 0px 10px 0px; font-size: 1.6em;}
    #staffDirectoryContainer .head_on {width: 100%; border-top: solid 1px #D2D2D2; padding: 10px 0px 10px 0px; font-size: 1.6em;}
    #staffDirectoryContainer .content {width: 100%; padding: 10px 0px 10px 0px; clear: both;}
    #staffDirectoryContainer .content img {margin-right: 10px; float: left; clear: left;}
    #staffDirectoryContainer .content .name {font-size: 1.2em; font-weight: bold; display: block; vertical-align: top;}
    #staffDirectoryContainer .content .summary {width: 380px; display: block;}
    #staffDirectoryContainer .footer {width: 100%; border-top: solid 1px #D2D2D2;}
    
    /* - staff specific */
    #staffContainer {border-top: 2px solid #7F7F7F}
    #staffCopy {float: left; width: 410px; margin-top: 20px; font-size: 1em}
    
    /* - article list specific */
    #ArticleListContainer {width: 100%; margin-top: 10px; border-top: 2px solid #7F7F7F;}
    #ArticleListContainer .itemContainer {width: 100%; margin-top: 5px; border-top: solid 1px #D2D2D2; padding-top: 10px; clear: both;}
    #ArticleListContainer .itemCopy {float: left; width: 400px;}
    #ArticleListContainer .itemCopy span.date {color: #646464;}
    #ArticleListContainer .itemImage {float: right; padding-bottom: 10px;}
    #ArticleListContainer .head {font-size: 1.2em; margin: 2px 0 8px 0; display: block}
    #ArticleListTopNav {width: 100%; padding-top: 5px; color: #646464; text-align: right; clear: both;}
    #ArticleListTopNav span {margin: 0px 5px 0px 5px;}
    #ArticleListLowNav {width: 100%; margin-top: 5px; padding-top: 5px; padding-bottom: 5px; border-top: 2px solid #7F7F7F; color: #646464; text-align: right; clear: both;}
    #ArticleListLowNav span {margin: 0px 5px 0px 5px;}
    
    /* - article gallery specific */
    #ArticleGalleryContainer {width: 100%; margin-top: 10px; border-top: 2px solid #7F7F7F;}
    #ArticleGalleryContainer .itemContainer {width: 100%; margin-top: 5px; border-top: solid 1px #D2D2D2; padding-top: 10px; clear: both;}
    #ArticleGalleryContainer .itemCopy {float: left; width: 400px;}
    #ArticleGalleryContainer .itemCopy span.date {color: #646464;}
    #ArticleGalleryContainer .itemImage {float: right; padding-bottom: 10px;}
    #ArticleGalleryContainer .head {font-size: 1.2em;}
    #ArticleGalleryContainer div.image {float:left; width:49%; margin-bottom:10px; height:125px;}
    #ArticleGalleryTopNav {width: 100%; padding-top: 5px; color: #646464; text-align: right; clear: both;}
    #ArticleGalleryTopNav span {margin: 0px 5px 0px 5px;}
    #ArticleGalleryLowNav {width: 100%; margin-top: 5px; padding-top: 5px; padding-bottom: 5px; border-top: 2px solid #7F7F7F; color: #646464; text-align: right; clear: both;}
    #ArticleGalleryLowNav span {margin: 0px 5px 0px 5px;}
    
    /* - press search specific */
    #pressSearchTop p.copy {width: 400px;}
    #pressSearchContainer {background-color: #E6E6E6; padding: 10px;}
    #pressSearchContainer .header {font-size: 1.2em; font-weight: bold;}
    #pressSearchContainer table {width: 100%; font-size: 10px}
    #pressSearchContainer input, #pressSearchContainer select {font-size: 10px}
    #pressSearchContainer td.right {text-align: right;}
    #pressCategories {margin-top: 15px; border-top: solid 2px #7F7F7F; padding-top: 10px;}
    #pressCategories .header {font-size: 1.2em; font-weight: bold;}
    #pressCategories .dgCategories {margin-top: 10px;}
    #pressCategories .caption {color: #646464;}
    #pressResultsContainer {width: 100%; margin-top: 10px; border-top: 2px solid #7F7F7F;}
    #pressResultsContainer .itemContainer {width: 100%; margin-top: 5px; border-top: solid 1px #D2D2D2; padding-top: 10px; clear: both;}
    #pressResultsContainer .image {width: 215px; float: left; padding-bottom: 10px;}
    #pressResultsContainer .copy {width: 405px; float: left;}
    #pressResultsContainer .copy span.head {font-size: 1.2em; font-weight: bold;}
    #pressResultsContainer .copy span.head {font-size: 1em; color: #646464;}
    #pressResultsTopNav {width: 100%; padding-top: 5px; color: #646464; text-align: right; clear: both;}
    #pressResultsTopNav span {margin: 0px 5px 0px 5px;}
    #pressResultsTopNav .viewall {margin-left: 10px;}
    #pressResultsLowNav {width: 100%; margin-top: 5px; padding-top: 5px; padding-bottom: 5px; border-top: 2px solid #7F7F7F; color: #646464; text-align: right; clear: both;}
    #pressResultsLowNav span {margin: 0px 5px 0px 5px;}
    #pressResultsLowNav .viewall {margin-left: 10px;}
    
    /* - press mailing specific */
    #ctl00_cphMain_pnlForm .pressForm {background-color: #E6E6E6; padding: 10px; margin-top: 25px; margin-bottom: 25px;}
    #ctl00_cphMain_pnlForm .pressForm h4 {font-size: 1.6em; font-weight: normal;}
    #ctl00_cphMain_pnlForm .pressForm table {margin-top: 10px; margin-bottom: 10px;}
    #ctl00_cphMain_pnlForm .pressForm table .warning {color:red}
    #ctl00_cphMain_pnlForm .pressForm th {text-align: left; font-weight: normal;}
    #ctl00_cphMain_pnlForm .pressForm th.top {vertical-align: top; padding-top: 3px;}
    #ctl00_cphMain_pnlForm .pressForm .text {border: solid 1px #C6C6C6; width: 300px;}
    #ctl00_cphMain_pnlForm .pressForm .longtext {border: solid 1px #C6C6C6; width: 99%;}
    #ctl00_cphMain_pnlForm .pressForm .shorttext {border: solid 1px #C6C6C6; width: 100px;}
    #ctl00_cphMain_pnlForm .pressForm .spaced {margin-top: 5px;}
    #ctl00_cphMain_pnlForm .pressForm p {margin-top: 20px;}
    #ctl00_cphMain_pnlForm .pressForm span.subheading {font-weight: bold;}
    
    /* - concierge specific */
    #ctl00_cphMain_pnlForm .conciergeForm {background-color: #E6E6E6; padding: 10px; margin-top: 15px; margin-bottom: 10px;}
    #ctl00_cphMain_pnlForm .conciergeForm h4 {font-size: 1.6em; font-weight: normal;}
    #ctl00_cphMain_pnlForm .conciergeForm table {margin-top: 10px;}
    #ctl00_cphMain_pnlForm .conciergeForm th {text-align: left; font-weight: normal; vertical-align: top}
    #ctl00_cphMain_pnlForm .conciergeForm th.top {vertical-align: top; padding-top: 3px;}
    #ctl00_cphMain_pnlForm .conciergeForm .text {border: solid 1px #C6C6C6; width: 300px;}
    #ctl00_cphMain_pnlForm .conciergeForm .spaced {margin-top: 5px;}
    #ctl00_cphMain_pnlForm .conciergeForm p {margin-top: 20px;}
    #ctl00_cphMain_pnlForm .conciergeForm span.subheading {font-weight: bold;}
    #ctl00_cphMain_pnlForm .button {float: right; margin-left: 5px;}
    #ctl00_cphMain_pnlForm .normal {color: #000000;}
    #ctl00_cphMain_pnlForm .grey {color: #B6B6B6;}
    
    /* - newsletters/press sign-ip specific */
    #ctl00_cphMain_pnlForm .signUpForm {padding: 10px; margin-top: 10px; margin-bottom: 10px;}
    #ctl00_cphMain_pnlForm .signUpForm h4 {font-size: 1.6em; font-weight: normal;}
    #ctl00_cphMain_pnlForm .signUpForm table {margin-top: 10px; margin-bottom: 10px;}
    #ctl00_cphMain_pnlForm .signUpForm table .warning {color:red}
    #ctl00_cphMain_pnlForm .signUpForm th {text-align: left; font-weight: normal; vertical-align: top}
    #ctl00_cphMain_pnlForm .signUpForm td {vertical-align: top}
    #ctl00_cphMain_pnlForm .signUpForm th.top {vertical-align: top; padding-top: 3px;}
    #ctl00_cphMain_pnlForm .signUpForm .text {border: solid 1px #C6C6C6; width: 300px;}
    #ctl00_cphMain_pnlForm .signUpForm p {margin-top: 10px;}
    #ctl00_cphMain_pnlForm .signUpForm span.subheading {font-weight: bold;}
    
    /* search specific */
    #searchResultsDetails {margin-top: 25px; margin-bottom: 5px;}
    #ctl00_cphMain_searchResultsContainer {border-top: solid 2px #7F7F7F;}
    #ctl00_cphMain_searchResultsContainer .pageDetails {margin: 5px 0px 5px 0px;}
    #ctl00_cphMain_searchResultsContainer .paging {text-align: right;}
    #ctl00_cphMain_searchResultsContainer .bottom {border-top: solid 2px #7F7F7F; padding-top: 5px;}
    #ctl00_cphMain_searchResultsContainer .searchResultsItem {border-top: solid 1px #C6C6C6; padding: 10px 0px 5px 0px;}
    #ctl00_cphMain_searchResultsContainer .searchResultsItem p {width: 400px;}
    
    /* sitemap specific */
    #sitemapContainer {border-top: solid 2px #7F7F7F; border-bottom: solid 2px #7F7F7F; margin-top: 25px; margin-top: 25px; padding-bottom: 25px;}
    #sitemapContainer h3 {border-bottom: none; margin-bottom: 10px;}
    #sitemapContainer .root {margin-left: 20px;}
    #sitemapContainer .leaf {margin-left: 40px;}
    #sitemapContainer .line {width: 100%; border-top: solid 1px #C6C6C6; margin-top: 10px;}
    
    /* - programme specific */    
    .nimgOnProgramme            {background-color: #DA5893;}
    #programme                  {width: 100%;}
    #programmeContainer         {width: 100%;}
    #programmeSearchContainer   {width: 620px; padding: 0px 0px 0px 0px; background-color: #F5F5F5}
    #programmeSearch            {padding: 25px 15px 15px 15px; background-color: #E6E6E6;}
    #programmeSearch .smallButton   {color: #FFFFFF; font-size: 1em;}
    #programmeSearch table td   {padding: 4px; font-size: 0.9em}
    #programmeSearch table td span   {font-size: 0.9em}
    #programmeSearch input, #programmeSearch select   {font-size: 0.9em; color: #333333;}
    #programme tr.header        {font-size: 1.4em;}
    #programme tr.header td     {padding-top: 20px; padding-bottom: 5px;}
    #programme tr.subheader     {font-size: 1.2em; font-weight: bold; color: #000000}
    #programme tr.subheader td  {padding-bottom: 5px;}
    #programme tr.subheader2    {text-align: right;}
    #programme tr.subheader2 td {padding-bottom: 5px;}
    #programme tr.subheader2 .cart  {margin: 0px 3px 0px 0px;}
    #programme tr.title         {padding: 3px 0px 3px 8px; color: #000000; background-color: #CCCCCC; font-weight: bold;}
    #programme td.cellTitle     {border-right: 1px solid #FFFFFF; padding: 3px 8px 3px 8px;}
    #programme td.cellTitleLeft {padding: 3px 8px 3px 8px}
    #programme td.cellLeft      {border-right: 1px solid #BFBFBF; border-bottom: 1px solid #BFBFBF; border-left: 1px solid #BFBFBF; padding: 8px 8px 8px 8px; vertical-align: top;}
    #programme td.cell          {border-right: 1px solid #BFBFBF; border-bottom: 1px solid #BFBFBF; padding: 8px 8px 8px 8px; vertical-align: top;}
    #programme td.cell .eventTitle  {font-weight: bold; display: block;}
    #programme td.cell .eventComposers  {font-weight: normal; display: block; margin-top: 2px; margin-bottom: 2px}
    #programme td.cellRight     {border-right: 1px solid #BFBFBF; border-bottom: 1px solid #BFBFBF; padding: 8px 8px 8px 8px; vertical-align: top; width: 160px; text-align: center}
    #programme td.viewAll       {text-align: right; padding: 4px; padding-bottom: 12px}
    #programme td.viewAll a     {font-size: 0.9em}
    #programme select           {font-size: 0.9em}
    #programme div.cartRow      {padding: 5px 0 5px 0;}
    #programme select           {font-size: 0.9em; margin-right: 2px}
    .itemAddedMessage           {font-weight: bold; display: block; margin-top: 16px; margin-bottom: 16px; color:Red;}
    
    /* - products specific */
    #productsContainer {width: 100%; border-top: solid 1px #BCBCBC;}
    #productsContainer table {margin-top: 25px; width: 100%;}
    #productsContainer td.right {text-align: right; padding: 5px 0px 5px 0px;}
    #productsContainer tr.headings {background-color: #D2D3D5; text-align: left; font-weight: bold;}
    #productsContainer tr.headings td {padding: 3px 0px 3px 8px;}
    #productsContainer tr.headings td.left {width: 120px;}
    #productsContainer tr.headings td.middle {border-right: solid 1px #FFFFFF;}
    #productsContainer tr.main {background-color: #E6E7E9; font-size: 1em; text-align: left; vertical-align: top; border-bottom: solid 1px #FFFFFF;}
    #productsContainer tr.main td {padding: 8px 8px 8px 8px; border-bottom: solid 1px #FFFFFF;}
    #productsContainer tr.main p {width: 270px;}
    #productsContainer tr.main td.middle {border-right: solid 1px #FFFFFF;}
    #productsContainer tr.main td.right {padding-top: 3px; text-align: left;}
    #productsContainer div.cartRow {padding: 5px 0 5px 0;}
    #productsContainer select   {font-size: 0.9em}
    
    /* - product specific */
    #productContainer {width: 100%; border-top: solid 1px #BCBCBC; min-height: 560px;}
    #productCopy {float: left; width: 410px; margin-top: 20px;}
    #productCopy h3 {border: none; margin-bottom: 5px; padding-bottom: 0px;}
    #productContainer div.cartRow {padding: 5px 0 5px 0;}
        
    /* - progress bar */
    #progressBar h1                         {float: left; width: 200px}
    #progressBar div.bar                    {float: left; width: 530px; background-color: #FFF; margin-top: 6px}
    #progressBar div.bar div                {float: left; height: 19px; padding-top: 3px}    
    #progressBar div.bar div.on             {background-color: #C8C8C8}
    #progressBar div.bar div img            {vertical-align: middle; margin-left: 8px; margin-right: 8px}
    #progressBar div.bar div span           {vertical-align: middle; color: #c8c8c8; font-size: 12px; margin-right: 16px}
    #progressBar div.bar div.on span        {color: #FFF}
    #progressBar div.bar div.arrow          {padding-top: 0px}
    #progressBar div.bar div.arrow img      {margin-left: 0px; margin-right: 8px}   
   
    /* - cart specific */
    #cartContainer                          {width: 790px; margin-top: 12px}
    #cartContainer table.cart               {width: 790px; color: #000000; border-left: none; border-bottom: none}
    #cartContainer tr.header h2             {margin-bottom: 5px; padding-bottom: 0px; font-size: 1.7em;}
    #cartContainer td.subHeader             {text-align: right; vertical-align: bottom; padding-bottom: 5px;}
    #cartContainer tr.headings              {background-color: #D2D3D5; font-size: 0.9em; text-align: left;}
    #cartContainer tr.headings th           {padding: 3px 8px 3px 8px; border-right: solid 1px #FFFFFF;}
    #cartContainer tr.headings th.right     {border-right: 0;}
    #cartContainer tr.main                  {background-color: #E6E7E9; font-size: 1em; text-align: left;}
    #cartContainer tr.main td               {padding: 8px; border-bottom: solid 1px #FFFFFF; border-right: solid 1px #FFFFFF; vertical-align: top;}
    #cartContainer tr.main td.right         {border-right: 0;}
    #cartContainer tr.order td              {padding: 4px 8px 0px 8px; border-top: solid 1px #FFFFFF; border-bottom: none}
    #cartContainer tr.order-detail td       {border-bottom: none; padding: 4px 8px 4px 8px}
    #cartContainer td.seatingRequest        {padding: 8px 8px 8px 8px; background-color: #E6E7E9; border-bottom: solid 1px #FFFFFF;}
    #cartContainer td.seatingRequest input  {width: 380px; margin-left: 30px; height: 16px; border: solid 1px #C6C6C6;}
    #cartContainer td.seatingRequest span   {margin-left: 46px;}
    #cartContainer td.bookingAndPostage     {padding: 8px 8px 8px 8px; background-color: #E6E7E9;}
    #cartContainer td.footer                {padding-top: 10px;}
    #cartContainer td.footer span           {display: block;}
    #cartContainer td.date                  {width: 170px; padding-bottom: 4px !important}
    #cartContainer td.event                 {width: 260px; padding-bottom: 4px !important}
    #cartContainer td.seat                  {width: 260px}
    #cartContainer td.product               {width: 410px}
    #cartContainer td.options               {width: 100px}
    #cartContainer td.quantity              {width: 74px;}
    #cartContainer td.price                 {width: 127px}
    #cartContainer td.total                 {width: 145px}
    #cartContainer td.total span            {float: left;}
    #cartContainer td.total a               {float: right;}
    #cartContainer table.cart td.terms      {font-size: 0.85em; color: #000; padding-top: 16px; width: 580px}
    #cartContainer table.cart td.terms span      {font-weight: bold}
    #cartContainer table.cart td.grandTotal      {font-size: 1.35em; color: #000; font-weight: bold; padding-top: 16px; text-align: right}
    #termsAndConditions                     {font-size: 0.80em;}
    #termsAndConditions span                {font-weight: bold;}
    
    /* - registration specific */
    #divLogin                               {width: 380px; margin-top: 50px; margin-bottom: 35px; float: left;}
    #divLoginHeader                         {width: 372px; height: 21px; background-color: #D2D3D5; padding: 4px 0px 0px 8px;}
    #divLoginHeader span                    {font-weight: bold;}
    #loginContent                           {background-color: #E6E7E9; padding: 8px 8px 8px 8px;}
    #loginContent table input.textbox       {width: 278px; height: 18px; border: solid 1px #C6C6C6;}
    #divLogin .resetButton                  {float: right; margin-top: 10px;}
    #divRegisterButtons                     {clear: both;}
    #ctl00_cphMain_pnlLoginForm             {width: 372px; height: 142px; background-color: #E6E7E9; padding: 8px 0px 0px 8px;}
    #ctl00_cphMain_pnlLoginForm input.textbox {width: 278px; height: 18px; border: solid 1px #C6C6C6; float: right;}
    #ctl00_cphMain_pnlPasswordResetForm     {width: 372px; height: 142px; background-color: #E6E7E9; padding: 8px 0px 0px 8px;}
    #ctl00_cphMain_pnlPasswordResetForm table   {width: 364px;}
    #ctl00_cphMain_pnlPasswordResetForm input.textbox   {width: 278px; height: 18px; border: solid 1px #C6C6C6; float: right;}
    #divRegister                            {width: 380px; margin-top: 50px; margin-bottom: 35px; float: left; margin-right: 28px}
    #divRegisterHeader                      {width: 372px; height: 21px; background-color: #D2D3D5; padding: 4px 0px 0px 8px;}
    #divRegisterHeader span                 {font-weight: bold;}
    #divRegisterContent                     {width: 364px; background-color: #E6E7E9; padding: 8px 8px 8px 8px;}
    #divRegisterContent span                {font-weight: bold;}
    #divRegistrationForm                    {width: 790px; margin-top: 50px; margin-bottom: 25px;}
    #divRegistrationFormHeader              {width: 786px; height: 21px; background-color: #D2D3D5; padding: 4px 0px 0px 8px;}
    #divRegistrationFormHeader span         {font-weight: bold;}
    #divRegistrationFormContent             {background-color: #E6E7E9; padding: 8px;}
    #divRegistrationFormContent input.textbox   {width: 220px; height: 16px; border: 1px solid #C6C6C6;}
    #divRegistrationFormContent td          {vertical-align: top}
    
    #divDontWantToRegister                  {margin-top: 12px; background-color: #E6E7E9}
    #divDontWantToRegisterHeader            {width: 372px; height: 21px; background-color: #D2D3D5; padding: 4px 0px 0px 8px; font-weight: bold}
    #divDontWantToRegisterContent           {padding: 8px}
    #divDontWantToRegisterContent table     {width: 352px; height: 59px}
    
    /* - billing specific */
    #divBillingContainer                    {width: 790px; margin-top: 50px; margin-bottom: 25px;}
    #divBillingHeader                       {width: 786px; height: 21px; background-color: #D2D3D5; padding: 4px 0px 0px 8px;}
    #divBillingHeader span                  {font-weight: bold;}
    #divBillingContent                      {width: 786px; background-color: #E6E7E9; padding: 4px 0px 50px 8px;}
    #divBillingContent .textbox             {width: 300px; border: 1px solid #C6C6C6;}
    #divBillingContent .grey                {color: #B6B6B6;}
    #divBillingContent td                   {vertical-align: top}                     
    #divBillingContent td.spaced            {padding-bottom:10px;}
    
    /* - payment specific */
    #divPaymentContainer                    {width: 790px; margin-top: 25px; margin-bottom: 25px;}
    #divPaymentContainer .textbox           {border: 1px solid #C6C6C6;}
    #divPaymentContainer .wide              {width: 150px;}
    #divPaymentHeader                       {width: 786px; height: 21px; background-color: #D2D3D5; padding: 4px 0px 0px 8px;}
    #divPaymentHeader span                  {font-weight: bold;}
    #divPaymentContent                      {width: 786px; background-color: #E6E7E9; padding: 15px 0px 35px 8px;}
    #divPaymentContent td                   {vertical-align: top}
    #divPaymentContent td.card              {padding-right: 10px;}
    #paymentButtons                         {margin-top: 25px;}
    
    /* - confirmation specific */
    #divConfirmationContainer               {width: 790px; margin-top: 50px; margin-bottom: 35px;}
    #divConfirmationHeader                  {width: 786px; height: 21px; background-color: #D2D3D5; padding: 4px 0px 0px 8px;}
    #divConfirmationHeader span             {font-weight: bold;}
    #divConfirmationContent                 {width: 786px; background-color: #E6E7E9; padding: 15px 0px 15px 8px;}
    #divConfirmationContent p               {width: 385px}
    #divConfirmationContent hr              {width: 385px; text-align: left; margin: 0 auto 12px 0; }
    #divConfirmationLinks span              {font-weight: bold;}
    #divConfirmationLinks table             {margin-top: 20px;}
    #divConfirmationLinks td.right          {text-align: right; padding-left: 30px; padding-top: 5px;}
    
    /* - edit my details specific */
    #divMyDetailsContainer                    {width: 790px; margin-top: 0px; margin-bottom: 25px;}
    #divMyDetailsHeader                       {width: 786px; height: 21px; background-color: #D2D3D5; padding: 4px 0px 0px 8px;}
    #divMyDetailsHeader span                  {font-weight: bold;}
    #divMyDetailsHeader a                     {font-weight: bold; color: #666}
    #divMyDetailsContent                      {width: 786px; background-color: #E6E7E9; padding: 4px 0px 50px 8px;}
    #divMyDetailsContent .textbox             {width: 300px; border: 1px solid #C6C6C6;}
    #divMyDetailsContent .grey                {color: #B6B6B6;}
    #divMyDetailsContent td                   {vertical-align: top}                     
    #divMyDetailsContent td.spaced            {padding-bottom:10px;}
    #divMyDetailsContent h2                   {font-size: 1.1em; font-weight: bold; margin-bottom: 4px}                     
        
/* - sidebar panel */
#sideBarPanel        {float: left; width: 216px; padding: 30px 0px 30px 14px; background-color: #F5F5F5; height: 100%;}
#sideBarPanel .h4    {padding: 0px 0px 4px 0px; border-bottom: solid 1px #05AEF3}
#sideBarPanel h5    {margin-top: 8px; padding: 0px; font-size: 0.9em; font-weight: bold}
#sideBarPanel div.linkGroup             {margin-bottom: 8px}
#sideBarPanel div.linkGroup div.bullet, #sideBarPanel div.relatedLinkGroup div.bullet {float: left; width: 25px; margin-top: 7px}
#sideBarPanel div.linkGroup div.links, #sideBarPanel div.relatedLinkGroup div.links {float: left; width: 191px}
#sideBarPanel div.linkGroup div.links img, #sideBarPanel div.relatedLinkGroup div.links img {display: block; margin: 10px 0px 2px 0px}
#sideBarPanel div.linkGroup div.links p, #sideBarPanel div.relatedLinkGroup div.links p {margin: 4px 0px 2px 0px; font-size: 0.9em; width: 160px}   
#sideBarPanel div.linkGroup select, #sideBarPanel div.relatedLinkGroup select {width: 180px; font-size: 0.9em}
#sideBarPanel div.relatedLinkGroup p {padding:0;margin:0;}
#sideBarPanel div.spacer {height:8px;}

/* 2D Seating Plan */
#seatingPlanFrame   {background-color: #FFF; float: left; width: 670px}
#seatingPlanScoller {width: 650px; height: 800px; overflow: auto}
#seatingPlan	    {position: relative; width: 1241px; height: 1544px}
#seatingPlan .seat          {width: 14px; height: 14px; position: absolute}
#seatingPlan .available     {cursor: pointer}
#seatingPlan .unavailable   {background-color: #333}

#seatingPlanSelections	{}
#seatingPlanSelections div.titleBar div	{float: left; background-color: #3F3F3F; color: #FFF; font-size: 1.1em; font-weight: bold; padding: 4px 8px 4px 8px; border-left: solid 1px #FFF}
#seatingPlanSelections div.titleBar div.category    {width: 447px; border-left: none; font-size: 1.2em}
#seatingPlanSelections div.titleBar div.seats    {width: 180px; padding-top: 6px}
#seatingPlanSelections div.titleBar div.price    {width: 180px; padding-top: 6px}
#seatingPlanSelections div.titleBar div.clear   {float: none; background-color: #FFF; padding: 0px}
#seatingPlanSelections div.footerBar    {background-color: #CCCDCC}
#seatingPlanSelections div.footerBar div.left    {float: left; padding: 4px}
#seatingPlanSelections div.footerBar div.right    {float: right; padding: 4px}
#seatingPlanSelections div.footerBar span.detailTitle      {font-weight: bold}
#seatingPlanSelections ul   {list-style: none; margin: 0px; padding: 0px; background-color: #FFF}
#seatingPlanSelections li   {margin: 0px; padding: 0px}
#seatingPlanSelections li.category   {}
#seatingPlanSelections li.expanded   {background-color: #CCCCCC}
#seatingPlanSelections li.category div  {padding: 4px}
#seatingPlanSelections li.category div.toggle   {float: left; width: 20px}
#seatingPlanSelections li.category div.toggle img   {cursor: pointer}
#seatingPlanSelections li.category div.category {float: left; width: 427px; border-right: solid 1px #B2B2B2}
#seatingPlanSelections li.category div.categorySeats {float: left; width: 184px; padding-left: 8px; border-right: solid 1px #B2B2B2}
#seatingPlanSelections li.category div.categoryPrice {float: left; width: 180px; padding-left: 8px; }
#seatingPlanSelections li.category div.clear {padding: 0px}
#seatingPlanSelections li.seat   {}
#seatingPlanSelections li.seat div  {padding: 4px}
#seatingPlanSelections li.seat div.seatDetails {float: left; width: 427px; border-right: solid 1px #B2B2B2; border-left: solid 28px #CCCCCC}
#seatingPlanSelections li.seat div.seats {float: left; width: 184px; padding-left: 8px; border-right: solid 1px #B2B2B2}
#seatingPlanSelections li.seat div.price {float: left; width: 110px; padding-left: 8px}
#seatingPlanSelections li.seat div.remove {float: left; width: 50px; padding-top: 4px}
#seatingPlanSelections li.seat div.clear {padding: 0px}

#seatingPlanMessage	{padding: 4px; color: #65B644; font-weight: bold}
#seatingPlanPriceCategories	{float: left; width: 174px; height: 800px; background-color: #FFFFFF;}
#seatingPlanPriceCategories h4 {margin-top: 16px; border-bottom: solid 1px #BCBCBC; padding-bottom: 4px}
#seatingPlanPriceCategories	ul {list-style: none; margin: 0px; padding: 0px}
#seatingPlanPriceCategories	ul li   {margin: 0px 0px 4px 4px;}
#seatingPlanPriceCategories	ul li span.box {width: 14px; height: 14px; display: inline-block; margin-right: 8px}
#seatingPlanPriceCategories	ul li span  {vertical-align: middle}
#seatingPlanPriceCategories select  {font-size: 12px}
#seatingPlanPriceCategories div  {margin-top: 8px; margin-bottom: 8px}

/* Footer */
#footer     {font-size:0.9em; width: 977px; background-color: #FFFFFF; text-align: right; padding-top: 5px; clear: both; padding-bottom:16px;}
#footer a   {color: #848484; word-spacing: 4px;}
#footer span   {color: #848484;}

/* Creds strip */
#creds  {background-color: #FFFFFF; clear: both; padding-bottom:30px;}
#creds div {color: #848484; margin-bottom: 2px; font-size: 0.9em}

/* Error Pages */
#fullPanel           {background-color: #F5F5F5; min-height: 506px; padding: 30px 70px 30px 50px;}

/* Currency converter */
.modalBackground {
    background-color:#666;
    filter:alpha(opacity=80);
    opacity:0.8;
}
.modalPopup {
    background-color: #F5F5F5; border: solid 1px #BDBDBD; width: 230px
}
.modalPopup div.head {
    background-color: #DA5893; padding: 4px
}
.modalPopup div.head div.title {
    color: #FFF; float: left; width: 190px; cursor: move
}
.modalPopup div.head div.close {
    float: left; width: 24px; 
}
.modalPopup div.head div.close a {
    color: #FFF; text-decoration: none; border: solid 1px #FFF; padding-left: 4px; padding-right: 4px;
}
.modalPopup table {
    width: 95%; margin-left: auto; margin-right: auto
}
.modalPopup table td {
    padding: 2px; 
}
.modalPopup table tr.total td {
    font-weight: bold; padding-top: 4px; padding-bottom: 4px; border-top: solid 1px #979797
}
.modalPopup select, .modalPopup input {
    font-size: 0.9em
}

/* General styles */
h1          {margin: 0px}
h2          {margin: 10px 0px 10px 0px; width: 464px; font-size: 2.2em; color: #000; font-weight: normal}
h2 span     {font-size: 0.6em; font-weight: normal; margin-left: 20px}
h3          {padding: 0px 0px 4px 0px; border-bottom: solid 1px #BCBCBC; font-size: 1.6em; font-weight: normal}
h3 a        {float: right; font-size: 13px; font-weight: normal; position: relative; top: -23px}
h4, .h4     {display: block; margin: 0px 0px 4px 0px; font-weight: bold; font-size: 1.2em}
#contentPanelRight h4   {font-size: 1.0em}
h5, .h5     {display: block; margin: 0px 0px 7px 0px; font-weight: normal; font-size: 1.4em}
h6          {margin: 10px 0px 5px 0px; font-size: 1.8em; color: #000; font-weight: normal}
h7, .h7     {display: block; font-weight: bold; font-size: 1.2em; color: #000000;}
p           {margin: 0px 0px 14px 0px}
p.smaller   {margin-top: 2px; font-size: 0.85em; margin-bottom: 6px}
a           {color: #ca2c69; text-decoration: none}
a.small     {font-size: 0.85em}
a.cartItem  {font-weight:bold;}
a:hover     {text-decoration: underline}
a.viewMedia:hover {cursor:pointer;}
br.tiny     {font-size: 4px}
.bold       {font-weight:bold}
.right      {text-align: right}
span.required {color: red}
.message    {display: block; margin-bottom: 8px; color:red;}
.message-info    {display: block; margin-bottom: 8px; color:green;}


/* Button styles */
.smallButton            {height: 18px; border: none; padding-bottom: 2px; background-color: #999999; color: #FFFFFF; font-size: 0.85em; text-transform: uppercase; cursor: pointer; font-weight: bold}
.middleButton           {min-width: 100px; height: 18px; border: none; padding-bottom: 4px; background-color: #999999; color: #FFFFFF; font-size: 0.85em; text-transform: uppercase; cursor: pointer; font-size: 12px !important; font-weight: bold}
.bigButton              {min-width: 129px; height: 26px; float: right; border: none; padding-bottom: 3px; background-color: #999999; color: #FFFFFF; font-size: 0.85em; text-transform: uppercase; cursor: pointer; font-weight: bold}
.saveAndContinueButton  {min-width: 140px; height: 18px; float: right; border: none; padding-bottom: 3px; background-color: #999999; color: #FFFFFF; font-size: 0.85em; text-transform: uppercase; cursor: pointer; font-weight: bold; background-color: #ED000C}
.registerButton         {height: 18px; border: none; margin-top: 5px; padding-bottom: 3px; background-color: #999999; color: #FFFFFF; font-size: 0.85em; text-transform: uppercase; cursor: pointer; text-align: left; font-weight: bold}
a.buttonStyle           {height: 18px; padding: 4px 16px 3px 16px; color: #FFFFFF; font-size: 0.85em; text-transform: uppercase; cursor: pointer; font-size: 12px !important; font-weight: bold}
a.buttonStyle:hover     {text-decoration: none; background-color: #999999}
a.buttonStylePay        {background-color: #ED000C !important; padding-top: 2px; padding-bottom: 0px}
a.buttonStylePay:hover  {color: #ED000C !important; background-color: #999999 !important}

img         {border: 0px}
.clear      {clear: both; font-size: 1px; height: 1px}
.inline     {display: inline}
.block      {display: block}
.error      {color: red}
.normal     {font-weight: normal}
