@charset "utf-8";
/* CSS Document */

div.main_bd .hd { width:954px; float:left; }

div.main_bd .hd #features-slideshow { width:647px; float:left; }
div.main_bd .hd .slideshow { position:relative; width:647px; height:271px; overflow:hidden; float:left; }
div.main_bd .hd .slideshow ul.feature-listing { position:absolute; width:129400px; height:271px; }
div.main_bd .hd .slideshow ul.feature-listing li.selected { width:647px; height:271px; float:left; overflow:hidden; }
div.main_bd .hd .slideshow ul.feature-listing li { position:relative; width:647px; height:271px; float:left; overflow:hidden; }
div.main_bd .hd .slideshow .pages { position:absolute; top:250px; left:0; width:627px; text-align:right; }

div.main_bd .hd .slideshow .pages .page { display:inline; cursor:pointer; padding:0 0 0 6px; }

div.main_bd .hd #quick-search { position:relative; width:268px; height:241px; float:right; background:transparent url('/images/backgrounds/quick-search.png') no-repeat top left; padding:15px; z-index:1; }
div.main_bd .hd #quick-search h2 { color:#fff; font-size:300%; }
div.main_bd .hd #quick-search p { position:relative; top:-4px; width:230px; color:#fff; font-size:92%; line-height:15px; }
div.main_bd .hd #quick-search form { padding:69px 0 0; }
div.main_bd .hd #quick-search form li { float:left; padding:0 0 7px; }
div.main_bd .hd #quick-search form li.element_submit_button { position:absolute; top:230px; width:268px; text-align:right; }
div.main_bd .hd #quick-search form label { width:91px; float:left; display:block; font-size:116%; font-weight:bold; color:#fff; padding:5px 0 0; }
div.main_bd .hd #quick-search form select { padding:4px; }

div.main_bd #main-content { padding:6px 0; }
div.main_bd #main-content #festivals { width:647px; float:left; padding-bottom:20px; }
div.main_bd #main-content #festivals .hd { height:66px; width:647px; float:left; background:transparent url('/images/backgrounds/homepage-festivals-hd.png') no-repeat bottom center; padding:8px 0 0; }
div.main_bd #main-content #festivals .hd h2 { width:175px; float:left; font-size:360%; color:#C30B00; padding:10px 0 0; }
div.main_bd #main-content #festivals .hd h3 { width:200px; float:left; font-family:"Century Gothic"; font-size:106%; font-weight:bold; line-height:15px; color:#C30B00; padding:20px 0 0; }

#homepage-festivals { border:1px solid #ececec; border-top:0; }
#homepage-festivals ul#festival-list { float:left; border:4px solid #e0e0e0; border-top:0; }
#homepage-festivals ul#festival-list li { min-height:163px; height:auto !important; height:122px; width:637px; float:left; background:transparent url('/images/backgrounds/homepage-festivals-li.png') no-repeat top right; border:1px solid #fff; }
#homepage-festivals ul#festival-list li .col-1 { width:231px; float:left; margin-bottom:6px; }
#homepage-festivals ul#festival-list li .col-2 h3 { font-size:167%; color:#333333; font-weight:bold; padding:7px 0 0px; }
#homepage-festivals ul#festival-list li .col-2 h4 { font-size:123.1%; color:#BB0900; font-weight:bold; padding:0 0 2px 1px; }
#homepage-festivals ul#festival-list li .col-2 p { font-size:92%; color:#333333; padding:0 0 0 1px }

#homepage-festivals ul#festival-list li .col-2 { width:188px; float:left; padding:0 0 0 12px; }
#homepage-festivals ul#festival-list li .col-3 { width:178px; float:right; padding:8px 11px 0 0; }
#homepage-festivals ul#festival-list li .col-3 .overview-hd { float:left; min-height:118px; height:auto !important; height:73px; padding:0 0 8px; }
#homepage-festivals ul#festival-list li .col-3 .product-overview { width:178px; float:left; background:transparent url('/images/backgrounds/product-overview-hd.png') no-repeat top left; }
#homepage-festivals ul#festival-list li .col-3 .product-overview-inner { width:178px; float:left; background:transparent url('/images/backgrounds/product-overview-ft.png') no-repeat bottom left; }
#homepage-festivals ul#festival-list li .col-3 .more { text-align:right; padding-bottom:6px; }

#homepage-festivals ul#festival-list li .col-3 .overview { width:125px; float:left; background-color:transparent; background-repeat:no-repeat; background-position:6px 5px; padding:5px 0 5px 45px; }
#homepage-festivals ul#festival-list li .col-3 .transport { background-image:url('/images/backgrounds/transport-overview.png'); }
#homepage-festivals ul#festival-list li .col-3 .accommodation { background-image:url('/images/backgrounds/accommodation-overview.png'); }
#homepage-festivals ul#festival-list li .col-3 .tickets { background-image:url('/images/backgrounds/tickets-overview.png'); }
#homepage-festivals ul#festival-list li .col-3 .description { width:80px; float:left; font-size:85%; color:#444444; padding:2px 0 0; }
#homepage-festivals ul#festival-list li .col-3 .price { width:45px; float:right; color:#C30B00; text-align:right; }
#homepage-festivals ul#festival-list li .col-3 .price span.text { font-size:85%; line-height:10px; }
#homepage-festivals ul#festival-list li .col-3 .price span.price { display:block; font-size:146.5%; line-height:18px; }
#homepage-festivals ul#festival-list li .col-3 .accommodation .description { width:60px; }
#homepage-festivals ul#festival-list li .col-3 .accommodation .price span.text { width:60px; text-align:right; }
#homepage-festivals ul#festival-list li .col-3 .accommodation .price span.pppn { width:10px; display:block; float:right; line-height:8px; font-size:72%;}
#homepage-festivals ul#festival-list li .col-3 .accommodation .price { width:60px; }
#homepage-festivals ul#festival-list li .col-3 .accommodation .price span.price { width:48px; float:left; text-align:right;}

/* #homepage-features { width:298px; background:#E2C04A url('/images/backgrounds/homepage-features.png') no-repeat top left; } */
#homepage-features { width:298px; float:left; padding:10px 0 0 9px; }

/* festivals landing page */

#content-column-bd #festival-list-outer { float:left; border:1px solid #ececec; }
#content-column-bd #festival-list-outer ul#festival-list { float:left; border:4px solid #e0e0e0; }
#content-column-bd #festival-list-outer ul#festival-list li { width:496px; min-height:122px; height:auto !important; height:122px; float:left; list-style:none; background:transparent url('/images/backgrounds/homepage-festivals-li.png') no-repeat top right; border:1px solid #fff; margin:0; }
#content-column-bd #festival-list-outer ul#festival-list li .col-1 { width:231px; float:left; }
#content-column-bd #festival-list-outer ul#festival-list li .col-2 h3 { font-size:167%; color:#333333; font-weight:bold; padding:7px 0 0px; }
#content-column-bd #festival-list-outer ul#festival-list li .col-2 h4 { font-size:123.1%; color:#BB0900; font-weight:bold; padding:0 0 2px 1px; }
#content-column-bd #festival-list-outer ul#festival-list li .col-2 p { font-size:92%; color:#333333; padding:0 0 0 1px }

#content-column-bd #festival-list-outer ul#festival-list li .col-2 { width:246px; float:left; padding:0 0 0 12px; }
#content-column-bd #festival-list-outer ul#festival-list li .col-2 .more { text-align:right; padding:6px 0; }

/* festivals */

#festival-main-content { width:725px; float:left; }

#festival-breadcrumb { width:720px; float:left; padding: 5px 0 20px 5px; }
#festival-breadcrumb a { font-size:92%; color:#C30B00; }
#festival-breadcrumb strong { font-size:92%; font-weight:bold; color:#7C0701; }

#festival-navigation { width:205px; min-height:672px; height:auto !important; height:672px; float:left; background:transparent url('/images/backgrounds/festival-navigation-outer.png') no-repeat top right; }
#festival-navigation h2 { font-size:138.5%; font-weight:bold; letter-spacing:-0.2px; color:#C30B00; background:transparent url('/images/backgrounds/festival-navigation-hd.png') no-repeat 6px 15px; padding:4px 0 0 18px; }
#festival-navigation h2 a { color:inherit; text-decoration:inherit; }
#festival-navigation-inner { width:189px; background:transparent url('/images/backgrounds/festival-navigation-inner.png') repeat-x top left; padding:0; }
#festival-navigation .festival-navigation-bd { padding:1px 0 0 18px; }
#festival-navigation .festival-navigation-bd li { padding:0 0 1px; }
#festival-navigation .festival-navigation-bd li a { font-size:138.5%; color:#4E4E50; text-decoration:none; }
#festival-navigation .festival-navigation-bd li a.active { /* color:#C30B00; */ text-decoration:underline; }
#festival-navigation .festival-navigation-bd li a:hover { text-decoration:underline; }
#festival-navigation .festival-navigation-bd li ul { padding:0 0 2px; }
#festival-navigation .festival-navigation-bd li li { background:transparent url('/images/backgrounds/festival-navigation-li-secondary.png') no-repeat 13px 10px; padding:2px 0 1px 19px; }
#festival-navigation .festival-navigation-bd li li a { font-size:92%; color:#404040; }
#festival-navigation .festival-navigation-bd li li a.active { color:#3F3F3F; font-weight:bold; text-decoration:none; }
#festival-navigation .festival-navigation-ft { padding:17px 0 25px; }
#festival-navigation .festival-navigation-ft img { border-width:1px 0; border-style:solid; border-color:#e5e5e5; }

.content-column { float:left; padding:3px 7px; }
.column-width-506 { width:506px; }
.column-width-711 { width:711px; }

.column-width-506 #content-column-hd { width:500px; }
.column-width-711 #content-column-hd { width:705px; }
.column-width-100-percent #content-column-hd { width:100%; }

#content-column-hd { height:55px; float:left; padding:0 3px 7px; }
.content-hd,
.festival-content-hd { border-bottom:1px solid #EBEBEB; }
#content-column-hd h2 { float:left; font-size:420%; color:#C30B00; }
#content-column-hd h3 { float:left; font-size:195%; color:#333333; padding:0 0 0 8px;}
#festival-banner-image { padding:0 3px 13px; }
#content-column-bd { width:100%; float:left; }
#content-column-bd h2 { font-size:182%; color:#C30B00; letter-spacing:0.1px; padding:10px 3px 20px; }
#content-column-bd h3 { font-size:123.1%; font-weight:bold; color:#545454; letter-spacing:0.1px; padding:0 3px 10px; }
#content-column-bd h4 { font-size:116%; font-weight:bold; color:#C30B00; letter-spacing:0.1px; padding:0 3px 10px; }
#content-column-bd li { list-style:disc; font-size:100%; color:#333333; padding:0 3px 5px 5px; margin:0 0 0 20px; }
#content-column-bd ul#message-list li { list-style:none; font-size:108%; font-weight:bold; color:#C30B00; padding:0 3px; margin:0; }
#content-column-bd ul { padding:0 0 10px; }
#content-column-bd p { font-size:100%; color:#333333; padding:0 3px 15px; }
#content-column-bd p strong { font-weight:bold; }
#content-column-bd p em { font-style:italic; }

#content-column-bd p.intro { font-size:108%; color:#C30B00; padding:15px 3px 15px; }
#content-column-bd a { color:#333333; }

#featival-features { width:234px; float:right; }
#featival-features-hd { width:235px; height:106px; float:left; overflow:hidden; background-color:transparent; background-repeat:no-repeat; background-position:bottom right; }
#featival-features .blank { background:none; }
#festival-features-bd { width:224px; float:left; background:url('/images/backgrounds/featured-panel-outer.png') no-repeat top left; padding:0 0 0 11px; }

#features-right_column_features .panel,
#featival-features .panel { float:left; margin:0 0 7px; }
#featival-features .info-panel { width:200px; min-height:186px; height:auto !important; height:186px; float:left; overflow:hidden; color:#fff; background:#C21300 url('/images/backgrounds/key-festival-facts.png') no-repeat bottom left; padding:12px 12px 40px; }
#featival-features .info-panel h3 { font-size:200%; }
#featival-features .info-panel p,
#featival-features .info-panel h3 { padding:0 0 5px; }
#featival-features .info-panel p,
#featival-features .info-panel li { font-size:92%; }
#featival-features .info-panel li { list-style:disc; margin-left:13px; padding: 0 0 8px; }
#featival-features .info-panel a { color:#fff; }

#featival-features .booking-info { width:216px; float:left; padding:3px 0 0 6px; }
#featival-features .booking-info h2 { font-size:123.1%; font-weight:bold; padding:0 0 0 2px; }
#featival-features .booking-info a { color:#53504D; }
#featival-features .booking-info .overview { width:180px; float:left; background-color:transparent; background-repeat:no-repeat; background-position:0px 6px; padding:5px 0 5px 36px; }
#featival-features .booking-info .transport { background-image:url('/images/backgrounds/transport-overview.png'); }
#featival-features .booking-info .accommodation { background-image:url('/images/backgrounds/accommodation-overview.png'); }
#featival-features .booking-info .tickets { background-image:url('/images/backgrounds/tickets-overview.png'); }
#featival-features .booking-info .description { width:80px; float:left; font-size:85%; color:#444444; background:transparent url('/images/icons/arrow-bullet.png') no-repeat 0px 7px; padding:4px 0 0 11px; }
#featival-features .booking-info .price { width:45px; float:right; color:#53504D; text-align:right; }
#featival-features .booking-info .price span.text { font-size:85%; line-height:10px; }
#featival-features .booking-info .price span.price { display:block; font-size:146.5%; line-height:18px; }
#featival-features .booking-info .accommodation .description { width:60px; }
#featival-features .booking-info .accommodation .price span.text { width:60px; text-align:right; }
#featival-features .booking-info .accommodation .price span.pppn { width:10px; display:block; float:right; line-height:8px; font-size:72%;}
#featival-features .booking-info .accommodation .price { width:60px; }
#featival-features .booking-info .accommodation .price span.price { width:48px; float:left; text-align:right;}

/* transport */

div.route-inner h2 { font-size:138.5%; font-weight:bold; }
#content-column-bd div.route-inner h3 { font-size:116%; }
div.route-inner div.route-dates { width:239px; float:left; background-color:#e0e0e0; border:1px solid #ececec; padding:5px 5px 0; }
#content-column-bd div.route-inner h4 { font-size:108%; font-weight:bold; padding:0 0 3px; }
#content-column-bd div.route-inner ul { width:236px; float:left; background:#fff url('/images/backgrounds/homepage-festivals-li.png') repeat-x top center; border:1px solid #fff; margin:0 0 10px; }
table.times-list { width:100%; margin-bottom:16px; }
table.times-list td.route { width:50%; vertical-align:top; border-right:4px solid #fff; margin:0; }
table.times-list td.return { border-right:0px; }

#content-column-bd ul.route-times { padding:0; }
#content-column-bd ul.route-times li { width:228px; float:left; font-size:108%; font-weight:bold; list-style:none; padding:0 4px; margin:0; }
ul.route-times li div.route-times-content { min-height:70px; height:auto !important; height:70px; }
ul.route-times li span.title { width:80px; float:left; display:block; padding:5px 0 4px; }
ul.route-times li span.price { float:left; display:block; color:#C30B00; padding:5px 0 4px; }
ul.route-times li span.button { float:right; display:block; padding:2px 0 0; }

form#bookTransport { width:100%; float:left; }
form#bookTransport h3 { font-size:123.1%; font-weight:bold; margin:0; padding:0 0 3px; }
form#bookTransport h4 { font-size:100%; font-weight:bold; color:#C30B00; margin:0; padding:0 0 3px; }
form#bookTransport h5 { font-size:100%; font-weight:bold; margin:0; padding:0 0 3px; }
form#bookTransport p { font-size:100%; margin:0; padding:0 0 3px; }
form#bookTransport div.transport-outward,
form#bookTransport div.transport-inward { width:236px; float:left; background-color:#e0e0e0; border:1px solid #ececec; padding:6px; }
form#bookTransport div.transport-outward { margin-right:5px; }
form#bookTransport div.content { min-height:60px; height:auto !important; height:110px; }
form#bookTransport div.select select { font-size:100%; }
form#bookTransport div.select select.date-and-time { width:230px; }
form#bookTransport div.select-time { padding:0 0 6px; }
form#bookTransport #submitForm { float:right; padding:5px 0 0; }

/* accommodation */

#paginator { width:100%; float:left; text-align:right; padding:0 0 6px; }
#paginator li { display:inline; padding:0 3px; margin:0; }
#paginator li a { color:#333; text-decoration:none; }
#paginator li.selected a { font-weight:bold; text-decoration:underline; }

#accommodation-list { float:left; margin-bottom: 20px; }

/** listings **/

#accommodation-list .hotel-item { position:relative; width:496px; float:left; background:url("/images/backgrounds/homepage-festivals-li.png") repeat-x scroll right top transparent; border:4px solid #e0e0e0; margin-bottom:6px; }
#accommodation-list .hotel-item-inner { width:494px; float:left; border:1px solid #fff; }
#accommodation-list .hotel-item h3 { font-size:153.9%; color:#333333; line-height:22px; padding:3px 0 2px; }
#accommodation-list .hotel-item p.reference { font-size:116%; font-weight:normal; color:#C30B00; padding:0 0 3px; }
#accommodation-list .hotel-item p { color: #333333; font-size: 92%; padding: 0 0 0 1px; }
#accommodation-list .hotel-item strong { color: #C30B00; font-size: 92%; font-weight:bold; }
#content-column-bd #accommodation-list .hotel-item ul { padding:0; }
#content-column-bd #accommodation-list .hotel-item ul.prices { padding:0 0 10px; }
#accommodation-list .hotel-item li { list-style:disc; padding:0 0 2px; margin:0 0 0 15px; }

#accommodation-list .hotel-item .sold-out { position:absolute; width:100%; height:100%; top:0; left:0; background:transparent url("/images/icons/sold-out.png") no-repeat 50% 50%; }

#accommodation-list .hotel-item-image { position:relative; width:193px; float:left; padding:7px 0 7px 7px; }
#accommodation-list .hotel-item-more,
#accommodation-list .hotel-item-content { width:273px; float:right; padding:5px 5px 0 0; }
#accommodation-list .hotel-item-more { text-align:right; padding:7px 5px 5px; }

/** featured *

#accommodation-list .featured-hotel { position:relative; width:504px; float:left; background:transparent url("/images/backgrounds/featured-hotel-hd.png") repeat-x top left; border:0px; padding-top:33px; margin-bottom:6px; }
#accommodation-list .featured-hotel .hotel-item-inner { width:504px; float:left; background:#C41400 url("/images/backgrounds/featured-hotel-bd.png") repeat-x top left; border:0; }
#accommodation-list .featured-hotel h3 { font-size:153.9%; color:#FFFFFF; line-height:22px; padding:3px 0 2px; }
#accommodation-list .featured-hotel p.reference { font-size:116%; font-weight:normal; color:#FFFFFF; padding:0 0 3px; }
#accommodation-list .featured-hotel p { font-size: 92%; color:#FFFFFF; padding: 0 0 0 1px; }
#accommodation-list .featured-hotel p a { color:#ffffff; }
#accommodation-list .featured-hotel li { list-style:disc; color:#FFFFFF; padding:0 0 2px; margin:0 0 0 15px; }
#accommodation-list .featured-hotel .hotel-item-image { position:relative; width:193px; float:left; padding:7px 0 7px 7px; }
#accommodation-list .featured-hotel .hotel-item-more,
#accommodation-list .featured-hotel .hotel-item-content { width:273px; float:right; padding:5px 5px 0 0; }
#accommodation-list .featured-hotel .hotel-item-more { text-align:right; padding:7px 10px 10px 5px; }

*/

#accommodation-thumbnails { position:relative; width:506px; float:left; padding:4px; margin-bottom:20px; }
#accommodation-thumbnails a { margin:0; }

#content-column-bd .hotel-heading { width:506px; float:left; }
#content-column-bd .hotel-heading h2 { float:left; width:380px; }
#content-column-bd .hotel-heading p { float:right; width:114px; font-size:123.1%; font-weight:bold; color:#C30B00; text-align:right; padding:19px 3px 20px; }

#content-column-bd .thumbnails-scroll { padding:0; }
#content-column-bd .thumbnails-scroll #accommodation-thumbnails-inner { float:left; width:458px; height:104px; border:2px solid #E0E0E0; overflow:hidden; padding:0; }
#content-column-bd .thumbnails-scroll #accommodation-thumbnails-inner .image-list { float:left; white-space:nowrap; }
#content-column-bd .thumbnails-scroll #accommodation-thumbnails-inner .image-list li { display:inline; list-style:none; padding:0; margin:0; }
#content-column-bd .thumbnails-scroll #accommodation-thumbnails-inner .image-list li img { border:2px solid #FFFFFF; }
#content-column-bd .thumbnails-scroll .left { width:21px; height:108px; float:left; border-right:1px solid #fff; background:transparent url('/images/backgrounds/accommodation-gallery-left.png') no-repeat top left; }
#content-column-bd .thumbnails-scroll .right { width:21px; height:108px; float:left; border-left:1px solid #fff; background:transparent url('/images/backgrounds/accommodation-gallery-right.png') no-repeat top left;; }

#accommodation-rooms { width:498px; float:left; border:4px solid #e0e0e0; }
#accommodation-rooms .accommodation-room { position:relative; width:496px; float:left; background:url("/images/backgrounds/homepage-festivals-li.png") repeat-x scroll right top transparent; border:1px solid #fff; }

#accommodation-rooms .accommodation-room-image { width:193px; float:left; }
#accommodation-rooms .accommodation-room-content { width:297px; float:right; padding:4px 0 1px; }

#accommodation-rooms h5 { font-size:123.1%; font-weight:bold; color:#C30B00; padding:0 0 5px;}
#accommodation-rooms h6 { font-size:108%; font-weight:bold; color:#333333; padding:0 0 3px;}
#accommodation-rooms p { padding:0 0 3px; }
#accommodation-rooms p strong { font-weight:bold; }

#accommodation-rooms .accommodation-room-prices li { width:284px; float:left; list-style:none; background-color:#e0e0e0; padding:5px; margin:0 0 1px;}
#accommodation-rooms span { float:left; display:block;  }
#accommodation-rooms span.accommodation-room-prices-left { width:190px; float:left; }
#accommodation-rooms span.length-of-stay { width:190px; font-size:92%; font-weight:bold; }
#accommodation-rooms span.price { width:190px; font-size:92%; }
#accommodation-rooms span.button{ width:89px; float:right; padding:4px 5px 0 0; }

#bookAccommodation label { width:100%; display:block; font-weight:bold; }

#search-accommodation { width:188px; height:287px; float:left; background:transparent url('/images/backgrounds/search-accommodation-bg.png') no-repeat top left; padding:40px 18px 0; margin:0 0 7px; }
#search-accommodation .form-element { width:184px; float:left; padding:0 0 7px; }
#search-accommodation .price-form-element { width:auto; float:left; padding:4px 13px 7px 0; }
#search-accommodation .submit-form-element { width:184px; float:left; padding:3px 0 0; }
#search-accommodation label { display:block; font-size:92%; font-weight:bold; color:#fff; padding:0 0 3px; }
#search-accommodation input#name,
#search-accommodation input#per,
#search-accommodation input#reference { width:169px; padding:2px 3px; }
#search-accommodation select { padding:2px 3px; }

/* tickets */

.festival-ticket-list { float:left; border:4px solid #e0e0e0; margin-bottom:20px; }
.festival-ticket-list .festival-ticket { position:relative; width:496px; float:left; background:url("/images/backgrounds/homepage-festivals-li.png") repeat-x scroll right top transparent; border:1px solid #fff; padding:5px 5px 4px; }
.column-width-711 .festival-ticket-list .festival-ticket {width:691px; }

#content-column-bd .festival-ticket-list .festival-ticket h3 { font-size:116%; font-weight:bold; color:#C21300; padding:0; }
#content-column-bd .festival-ticket-list .festival-ticket p { color: #333333; font-size: 108%; padding: 0 0 0 1px; }
.festival-ticket-list .festival-ticket li { list-style:disc; padding:0 0 2px; margin:0 0 0 15px; }
.festival-ticket-list .festival-ticket-left { width:350px; float:left; }
.festival-ticket-list .festival-ticket-right { width:146px; float:right; text-align:right; }
.festival-ticket-list .festival-ticket-right select { margin-bottom:3px; }

/* ticket shop */

#ticket-shop-hd { width:100%; float:left; }
#ticket-shop-bd { width:100%; float:left; }
.ticket-shop-heading { float:left; display:block; padding:10px 10px 0 0; }
.ticket-shop-heading h2 { font-size:450%; font-weight:bold; color:#c21300; }
.ticket-shop-standfirst { float:left; display:block; width:242px; font-size:108%; font-weight:bold; color:#c21300; padding:21px 0 0; }

#ticket-shop-festivals { position:relative; top:-7px; width:100%; float:left; padding:10px 0 40px; }
#ticket-shop-festivals-hd { width:957px; height:51px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-shop-festivals-hd.png') repeat-x bottom left; }

#ticket-shop-festivals-heading { height:34px; width:164px; overflow:hidden; float:left; background:transparent url('/images/ticket-shop/bg/ticket-shop-festivals-heading.png') no-repeat top left; margin-top:17px; padding-right:15px; } 
#ticket-shop-festivals-heading h2 { font-size:123.1%; font-weight:bold; color:#FFFFFF; text-align:center; padding:5px; margin:0; }
#ticket-shop-festivals-sortby { height:27px; width:778px; float:left; font-size:93%; font-weight:bold; color:#C30B00; background:transparent url('/images/ticket-shop/bg/ticket-shop-festivals-sortby.png') no-repeat bottom right; padding:24px 0 0 0; } 
#ticket-shop-festivals-sortby a { font-weight:normal; color:#000000; text-decoration:none; background:transparent url('/images/ticket-shop/bg/ticket-shop-festivals-sortby-link-divide.png') no-repeat bottom right; padding:0 16px 0 15px; }
#ticket-shop-festivals-sortby a.selected,
#ticket-shop-festivals-sortby a:hover { text-decoration:underline; }

#ticket-shop-festivals-list { width:957px; float:left; padding:1px 0 0; }
#ticket-shop-festivals-list .festival-item { width:957px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-shop-festivals-item.png') repeat-x bottom left; padding:0; }
#ticket-shop-festivals-list .festival-item-image { width:157px; height:93px; float:left; padding:9px 0 14px 9px; }
#ticket-shop-festivals-list .festival-item-content { width:650px; float:left; padding:12px 0 0; }

#ticket-shop-festivals-list .festival-item-content h3 { font-size:167%; color:#333333; }
#ticket-shop-festivals-list .festival-item-content h4 { font-size:108%; color:#666666; }
#ticket-shop-festivals-list .festival-item-content h4 span { font-weight:bold; color:#C30B00; }
#ticket-shop-festivals-list .festival-item-content p { font-size:93%; color:#2C2C2C; padding:8px 0 0; }

#ticket-shop-festivals-list .festival-item-overview { width:141px; height:113px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-shop-festivals-item-overview.png') repeat-x top left; }
#ticket-shop-festivals-list .festival-item-overview-button { text-align:right; padding:0 7px 0 0; }

#ticket-shop-festivals-list .festival-item-price-from-inner { width:83px; float:left; background:transparent url('/images/ticket-shop/bg/festival-item-overview-inner.png') no-repeat top left; padding:7px 7px 3px; }
#ticket-shop-festivals-list .festival-item-price-from-outer { width:97px; float:right; background:transparent url('/images/ticket-shop/bg/festival-item-overview-outer.png') no-repeat bottom left; margin:7px; }
#ticket-shop-festivals-list .festival-item-price-from-inner p { font-size:85%; font-weight:normal; color:#C30B00; text-align:right; padding:0; }
#ticket-shop-festivals-list .festival-item-price-from-inner p.price { font-size:197%; font-weight:normal; padding:0; }

#ticket-festival-shop { width:739px; float:left; padding:3px 0 0 7px; }

#ticket-festival-shop-hd { position:relative; top:-13px; width:739px; height:72px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-shop-festival-hd.png') no-repeat top left; padding:20px 0 0; }
#ticket-festival-shop-bd { position:relative; top:-13px; width:739px; min-height:200px; height:auto !important; height:200px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-shop-festival-bd.png') no-repeat top left; }

.ticket-festival-shop-bd-image { width:208px; height:150px; float:left; padding:15px 5px 15px 15px; }
.ticket-festival-shop-bd-content { width:485px; float:left; padding:10px; }

.ticket-festival-shop-bd-content h2 { font-size:197%; font-weight:bold; color:#FFFFFF; padding:0 0 2px; }
.ticket-festival-shop-bd-content h3 { font-size:138.5%; font-weight:normal; color:#FECC04; padding:0 0 2px; }
.ticket-festival-shop-bd-content p { font-size:116%; font-weight:normal; color:#FFFFFF; }

#ticket-festival-shop-list { position:relative; top:-32px; left:-2px; width:743px; float:left; }
#ticket-festival-shop-list-hd { width:743px; height:35px; background:transparent url('/images/ticket-shop/bg/ticket-festival-shop-list-hd.png') no-repeat top left; margin:0; }
#ticket-festival-shop-list-hd h3 { width:208px; font-size:146.5%; font-weight:bold; color:#C30B00; text-align:center; padding:6px 0 0 17px; }

.ticket-output-list-outer { width:743px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-output-list-bd-inner.png') repeat-y top left; }
.ticket-output-list-inner { width:743px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-output-list-bd-outer.png') no-repeat bottom left; } 

.ticket-output-list-inner .package-output, 
.ticket-output-list-inner .ticket-output { width:739px; min-height:61px; height:auto !important; height:61px;  float:left; background:transparent url('/images/ticket-shop/bg/ticket-output-list-item.png') no-repeat top left; margin:0 2px; }
.ticket-output-list-inner .first-package-output, 
.ticket-output-list-inner .first-ticket-output { min-height:54px; height:auto !important; height:54px; background:transparent url('/images/ticket-shop/bg/ticket-output-list-item-first.png') no-repeat top left; padding:0px; }

.ticket-output-list-inner .package-output, 
.ticket-output-list-inner .first-package-output { background-image:none; }

.ticket-output-list-inner .package-output .ticket-output-description { width:235px; float:left; padding:13px 0 0 12px; }

.ticket-output-list-inner .ticket-output-description { width:205px; float:left; padding:16px 0 0 41px; }
.ticket-output-list-inner .first-ticket-output .ticket-output-description { padding-top:8px; }

.ticket-output-list-inner .ticket-output-description h4 { font-size:108%; font-weight:bold; }
.ticket-output-list-inner .ticket-output-description h5 { font-size:100%; color:#C30B00; font-weight:normal; }

.ticket-output-list-inner .ticket-output-price { float:left; padding:0 11px 0 0 }
.ticket-output-list-inner .ticket-output-price .label { float:left; font-size:93%; font-weight:bold; padding:36px 0 0; }
.ticket-output-list-inner .ticket-output-price .price { float:left; font-size:161.6%; font-weight:normal; color:#C30B00; padding:29px 0 0 4px; }

.ticket-output-list-inner .first-ticket-output .ticket-output-price .label { padding-top:29px; }
.ticket-output-list-inner .first-ticket-output .ticket-output-price .price { padding-top:22px; }

.ticket-output-list-inner .package-price .label { padding:26px 0 0; }
.ticket-output-list-inner .package-price .price { padding:19px 0 0 4px; }
.ticket-output-list-inner .first-ticket-output .package-price .label { padding:25px 0 0; }
.ticket-output-list-inner .first-ticket-output .package-price .price { padding:16px 0 0 4px; }

.ticket-output-list-inner .ticket-output-booking-fee { float:left; font-size:85%; font-weight:normal; padding:37px 11px 0 0; }
.ticket-output-list-inner .package-fee { padding:27px 11px 0 0; }

.ticket-output-list-inner .first-ticket-output .ticket-output-booking-fee { padding-top:28px; }
.ticket-output-list-inner .first-ticket-output .package-fee { padding:24px 11px 0 0; }


.ticket-output-list-inner .ticket-output-booking-fee span { font-weight:bold; color:#C30B00; }

.ticket-output-list-inner .ticket-output-form { float:right; height:41px; border-left:1px solid #E8E8E8; padding:0 15px; margin:10px 0; }
.ticket-output-list-inner .first-ticket-output .ticket-output-form { margin:0 0 10px; }

.ticket-output-list-inner .packages-right .ticket-output-form { margin:10px 0 0; }
.ticket-output-list-inner .first-ticket-output .packages-right .ticket-output-form { width:200px; margin:0 0 0; }


.ticket-output-list-inner .ticket-output-form .ticket-output-form-element { width:70px; float:left; padding:0 12px 0 0; }
.ticket-output-list-inner .ticket-output-form .ticket-output-form-soldout { width:70px; float:left; font-size:119%; font-weight:bold; color:#C30B00; padding:12px 12px 0 0; }

.ticket-output-list-inner .ticket-output-form .ticket-output-form-submit { width:107px; float:right; padding:7px 0 0; }
.ticket-output-list-inner .ticket-output-form label { display:block; font-size:85%; font-weight:bold; padding:0 0 3px; }
.ticket-output-list-inner .ticket-output-form #number { width:60px; height:20px; }

#ticket-festival-shop-information { position:relative; top:-13px; width:743px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-festival-shop-information.png') no-repeat top left; padding:20px 0 0; }
#ticket-festival-shop-information-hd { width:743px; height:38px; float:left; background:transparent url('/images/ticket-shop/bg/ticket-festival-shop-information-hd.png') repeat-y top left; }
#ticket-festival-shop-information-hd h3 { width:206px; font-size:108%; font-weight:bold; color:#C30B00; padding:10px 0 0 37px; }
#ticket-festival-shop-information-bd { width:702px; float:left; border:1px solid #DADADA; padding:20px 22px 20px 15px; }
#ticket-festival-shop-information-bd-left { width:390px; float:left; }
#ticket-festival-shop-information-bd-left p { font-size:100%; color:#333333; line-height:20px; padding:0 0 10px; }
#ticket-festival-shop-information-bd-right { width:282px; float:right; padding:2px 0 0; }
#ticket-festival-shop-information-bd-right img { margin-bottom:10px; }
/*
.ticket-holder-list { width:498px; float:left; border:4px solid #e0e0e0; }
#bookTickets .ticket-holder { width:488px; float:left; background:url("/images/backgrounds/homepage-festivals-li.png") repeat-x scroll right top transparent; border:1px solid #fff; padding:5px; }
#bookTickets .ticket-holder span { display:block; float:left; padding:0 3px 0 0; }
#bookTickets .ticket-holder span .ticket-holder-title { width:60px; padding:2px 3px; }
#bookTickets .ticket-holder span .ticket-holder-first { width:201px; padding:2px 3px; }
#bookTickets .ticket-holder span .ticket-holder-last { width:202px; padding:2px 3px; }
#bookTickets .ticket-holder span .ticket-holder-name { width:500px; padding:2px 3px; }
#bookTickets #submitForm { float:right; padding:8px 3px 0; }
*/

.packages-top { border-top:1px solid #e8e8e8; }
.first-ticket-output .packages-top { border-top:0px; }

.packages-bottom,
.packages-top  { float:left; width:739px; }
.packages-left { float:left; width:510px; }
.packages-left-top,
.packages-left-bottom { float:left; width:510px; } 
.packages-right { float:right; width:220px; }

.packages-contents { width:709px; padding:0 0 0 10px; margin:8px 10px 0; }

.packages-contents .accommodation,
.packages-contents .transport,
.packages-contents .tickets { width:186px; min-height:20px; font-size:85%; color:#333; vertical-align:top; background-colour:transparent; background-repeat:no-repeat; background-position:top left; padding:3px 10px 8px 40px; }

.packages-contents strong { font-weight:bold; }

.packages-contents .accommodation { background-image: url("/images/backgrounds/accommodation-overview.png"); }
.packages-contents .transport { background-image: url("/images/backgrounds/transport-overview.png"); }
.packages-contents .tickets { background-image: url("/images/backgrounds/tickets-overview.png"); }

#packages-book .package-form-inner { width:100%; float:left; padding:15px 0 0; }
#packages-book .package-form-inner-first { width:100%; float:left; }
#packages-book .accommodation-form div,
#packages-book .transport-form div { width:100%; padding:0 3px 4px; }
#packages-book .accommodation-form div label,
#packages-book .transport-form div label { display:block; font-weight:bold; }
#packages-book .accommodation-form div label em,
#packages-book .transport-form div label em { font-weight:bold; color:#C21300; }
#packages-book .back,
#packages-book .submit { padding-top:25px; }
#packages-book ul.errors { padding:0; }
#packages-book ul.errors li { list-style:none; color:#c21300; font-size:108%; font-weight:bold; padding:0; margin-left:0; }

/* basket */

#basket-panel { width:183px; float:left; border:1px solid #C9C9C9; }
#basket-panel-inner { width:179px; float:left; background:#f0f0f0 url('/images/backgrounds/basket-panel-bg.png') repeat-x top left; border:1px solid #DBDBDB; }
#basket-panel-hd { width:145px; height:22px; float:left; background:transparent url('/images/backgrounds/basket-panel-hd.png') no-repeat top left; padding:8px 0 0 34px; }
#basket-panel-inner h3 { width:96px; float:left; font-size:108%; font-weight:bold; color:#C21300; }
#basket-panel-inner h4 { width:165px; height:20px; float:left; font-size:100%; font-weight:bold; color:#fff; background:transparent url('/images/backgrounds/basket-festival-heading.jpg') no-repeat top left; padding:2px 0 0 10px; }
#basket-panel-inner h5 { width:155px; height:16px; float:left; font-size:93%; font-weight:bold; color:#fff; background:transparent url('/images/backgrounds/basket-type-heading.jpg') repeat-x top left; padding:1px 0 1px 21px; margin-top:1px; }
#basket-panel-inner h6 { font-size:93%; font-weight:bold; color:#C00000; padding:3px 0 0 10px; }
#basket-panel-inner p { font-size:85%; font-weight:normal; color:#333; padding:1px 0 0 10px; }

#basket-panel-inner span { width:47px; float:left; }
#basket-panel-bd { width:174px; float:left; padding:2px; }
#basket-panel-bd .basket-item { width:174px; float:left; background:#FCFCFC; border-top:1px dashed #D2D2D2; padding:5px 0 7px; }
#basket-panel-bd .first-item { border-top:0px; }

#basket-panel-inner #basket-total { width:174px; float:left; font-size:108%; font-weight:bold; text-align:right; padding:3px 0 0; }
#basket-panel-inner #basket-checkout-button { width:174px; float:left; text-align:right; padding:3px 3px 7px 3px; }

.basket h2 { width:100%; font-size:108%; font-weight:bold; }
#festival-main-content .content-column .basket p.right { width:704px; float:left; padding:15px 3px; }
.basket .basket-hd { width:100%; float:left; }
#content-column-bd .basket-hd h2 { width:320px; float:left; padding-bottom:5px; }
.basket .buttons { width:380px; float:right; padding-top:13px; }
.basket .buttons li { float:right; height:23px; overflow:hidden; padding:0 0 2px 5px; }
.basket table.basket-table { width:100%; float:left; margin-bottom:10px; }
.basket table.basket-table th { font-size:92%; font-weight:bold; color:#dbdbdb; background-color:#606060; }

.basket table.basket-table .even td { background-color:#efefef; }
.basket table.basket-table .odd td { background-color:#dbdbdb; }
#content-column-bd table.basket-table td h4 { font-size:108%; font-weight:normal; color:#C30B00; padding:0 }
#content-column-bd table.basket-table td p { font-size:100%; font-weight:normal; padding:0 }
#content-column-bd table.basket-table td p.delete-item { font-size:85%; font-weight:bold; padding:3px 0 0; }
#content-column-bd table.basket-table td p.delete-item a { text-decoration:none; }
#content-column-bd table.basket-table td p.delete-item a:hover { text-decoration:underline; }
.basket table.basket-table th,
.basket table.basket-table td { padding:7px 5px 8px; vertical-align:middle;}

.basket table.basket-table .description { background-color:transparent; background-position:10px 10px; background-repeat:no-repeat; padding-left:42px; }
.basket table.basket-table .accommodation .description { background-image:url('/images/icons/basket-icon-accommodation.gif'); }
.basket table.basket-table .ticket .description { background-image:url('/images/icons/basket-icon-tickets.gif'); }
.basket table.basket-table .transport .description { background-image:url('/images/icons/basket-icon-transport.gif'); }

.basket table.basket-table .quantity { width:80px; text-align:center; }
.basket table.basket-table .price { width:85px; text-align:right; }
.basket table.basket-table .quantity select { width:115px; }
.content-column .basket p { padding:0; }

.basket .totalOutput { width:100%; border-bottom: 1px solid #E0E0E0;
    border-top: 1px solid #E0E0E0;
    float: left;
    margin-top: 7px;
    padding:5px 0; }
.basket .totalOutput .totalHeading { width:467px; float:left; font-size:123.1%; font-weight:bold; padding:5px; }
.basket .totalOutput .refresh { width:129px; float:left; padding:3px 5px; }
.basket .totalOutput .total { width:85px; float:right; font-size:123.1%; font-weight:bold; color:#C30B00; text-align:right; padding:3px; }

.basket table.basket-table .package .description { padding:7px 5px 8px; }
.basket table.basket-table .package .description h5 { font-weight:bold; padding:3px 0 1px 0; }
#content-column-bd table.basket-table .package .description p { font-size:92%; }
.basket table.basket-table .package div { background-color:transparent; background-position:10px 10px; background-repeat:no-repeat; padding-left:42px; }
.basket table.basket-table .package .package-basket-accommodation { background-image:url('/images/icons/basket-icon-accommodation.gif'); }
.basket table.basket-table .package .package-basket-transport { background-image:url('/images/icons/basket-icon-tickets.gif'); }
.basket table.basket-table .package .package-basket-tickets { background-image:url('/images/icons/basket-icon-transport.gif'); }

/* checkout */

div.transaction-fee { width:100%; float:left; padding:0; }
div.transaction-fee-inner { float:right; padding:0 6px 0 0; }
div.transaction-fee span { font-weight:bold; color:#545454; }
div.checkout-total { width:100%; float:left; padding:0; }
div.checkout-total-inner { float:right; padding:0 6px 0 0 }
div.checkout-total span { font-weight:bold; font-size:123.1%; color:#545454; }
div.checkout-total span.amount { color:#C00000 }

div.back { width:250px; float:left; text-align:left; padding:4px 0 0; }
form#checkoutForm { width:250px; float:right; text-align:right; padding:4px 0 0; }

form#tandcForm label { color: #333333; font-size: 108%; }
form#tandcForm div.checkbox { padding: 0 3px 15px; }
form#tandcForm a img { float:left; display:inline; }
form#tandcForm input#process { float:right; display:inline; }
form#tandcForm ul.errors li { color: #C00000; font-weight:bold; font-size: 108%; padding:2px 0 0 16px; }

/* register and login */

.loginForms { width:703px; float:left; border:4px solid #e0e0e0; }
.loginForms .login,
.loginForms .register { width:339px; float:left; background:url("/images/backgrounds/homepage-festivals-li.png") repeat-x scroll right top transparent; border:1px solid #fff; padding:5px 5px 0; }
.loginForms div { width:339px; float:left; padding:0 0 7px; }
.loginForms div label { width:90px; float:left; font-size:108%; font-weight:bold; color:#545454; padding:3px 0 0; }
.loginForms div input { width:235px; float:right; padding:4px; }
.loginForms div.checkbox input { width:auto; float:left; margin:5px 8px 0 2px; }
.loginForms div.checkbox label { width:315px; float:left; font-size:100%; font-weight:normal; }
#content-column-bd .loginForms p.description { width:235px; float:left; font-size:85%; padding:1px 0 0 100px; margin:0; }
#content-column-bd .loginForms ul.errors li { width:235px; float:left; font-size:85%; color:#C30B00; padding:1px 0 0 100px; margin:0; }
#content-column-bd .loginForms div.checkbox ul.errors li { width:315px; padding:1px 0 0 23px; }

.loginForms #loginSubmit,
.loginForms #registerSubmit { width:auto; float:right; }

/* members */

#select-a-festival { width:100%; float:left; background-color:#e0e0e0; }
#select-a-festival li { float:left; padding:12px 6px 12px 12px; }

#content-column-bd h3.itinerary-heading { font-size:167%; font-weight:normal; }

#content-column-bd #itinerary-tickets .festival-ticket p { font-size:92%; }
#content-column-bd #itinerary-transport h5 { font-size:108%; font-weight:bold; padding:0 0 4px; }
#content-column-bd #itinerary-transport p { font-size:92%; padding:0 0 1px; }
#content-column-bd #itinerary-transport p.no-coach { font-size:108%; }
#content-column-bd #itinerary-transport p.buttons { text-align:right; padding:7px 0 0; }
#content-column-bd #itinerary-transport ul li { font-size:100%; font-weight:normal; padding:5px; }
#content-column-bd #itinerary-accommodation .hotel-item-more { padding:10px 5px 5px; }

.status-incomplete { font-weight:bold; text-transform:uppercase; color:#c10000; }
.status-complete { font-weight:bold; text-transform:uppercase; color:#00c100; }
.status-confirmed { font-weight:bold; text-transform:uppercase; color:#0000c1; }

#update-form { width:498px; float:left; border:4px solid #E9E9E9; }
#update-form form { width:480px; float:left; background-color:#F3F3F3; border:1px solid #FFFFFF; padding:8px; }
#update-form form p { width:330px; font-size:85%; padding:2px 0 0; }
#reminderForm input#email { width:300px; }


form .ticket-holder-list-outer { width:498px; float:left; border:4px solid #E9E9E9; }
form .ticket-holder-list { width:480px; float:left; background-color:#F3F3F3; border:1px solid #FFFFFF; padding:8px 8px 0; }
form .ticket-holder-list .errors { width:480px; float:left; font-weight:bold; color:#c10000; background-color:#F3F3F3; padding:0 0 6px; }
form .ticket-holder { position:relative; width:480px; float:left; padding-bottom:8px; }
form .ticket-holder span { display:block; float:left; padding:0 3px 0 0; }
form .ticket-holder span span { display:block; float:none; padding:0; }
form .ticket-holder span.label { font-size:93%; }
form .ticket-holder span.value { font-size:100%; background:#F8F8F8; border:1px solid #888; padding:2px 3px; }
form .ticket-holder .controls { position:absolute; top:15px; left:440px; width:40px; display:none; padding:2px 3px; }
form .ticket-holder .controls img { float:right; margin:0 0 0 2px; }
form .ticket-holder span .ticket-holder-name,
form .ticket-holder span .person-name { width:435px; padding:2px 3px; }
form .passport span span.person-name,
form .passport span .ticket-holder-name { width:275px; padding:2px 3px; }
form .passport span span.person-passport,
form .passport span .ticket-holder-passport { width:150px; padding:2px 3px; }
form div.back { float:left; padding:8px 0 0 3px; }
form div.submit { float:right; padding:8px 3px 0; }

#update-form div { width:488px; float:left; padding:3px 5px; }
#update-form div.flight_details { padding:0; }
#update-form div.flight_details div { width:auto; float:left; padding:3px 10px 3px 5px; }
#update-form label { display:block; font-weight:bold; }
#update-form ul.errors li { width:330px; font-size:85%; color:#c10000; }

#update-form div.back { width:200px; float:left; text-align:left; padding:4px 0 3px 5px; }
#update-form div.submit { width:200px; float:right; text-align:right; padding:4px 5px 3px 0; }

#confirm-booking { cursor:pointer; }

/* news and updates */

#blog-list { border-top:1px solid #e0e0e0; }
#content-column-bd #blog-list li { width:100%; float:left; list-style:none; border-bottom:1px solid #e0e0e0; margin:0; }
#blog-list li .thumbnail { width:165px; float:left; padding:15px; }

#blog-list li .content { width:500px; float:left; margin:15px 15px 15px 0; }
.column-width-506 #blog-list li .content { width:295px; }
#blog-list li .content p.button { padding-bottom:0; }
#blog-list li.odd { background-color:#f9f9f9; }
#blog-list li.even { background-color:#f5f5f5; }
#blog-list li h2 { font-size:123.1%; font-weight:bold; color:#c10000; padding:0 3px 10px; }
#blog-list li h2 a { color:#c10000; text-decoration:none; }

