html {
    /*height: 101%;*/
}

body {
    font-size: 0.8em;
    margin: 0;
    padding: 0;
    text-align: center;
    font-family: "Arial", Tahoma, Serif;
}

.clearer {
    clear: both;	
}

a {
	outline: none;
}

a:hover {
    text-decoration: none;	
}

a img {
	border: none;
}

h3 {
    margin: 10px 0px 10px 0px;
    padding: 0px;
    font-size: 95%;
    line-height: 1.2em;
}

h2 {
    margin: 10px 0px 10px 0px;
    font-size: 110%;
    line-height: 1.2em;
    padding: 0 0 7px 0;
    border-bottom:1px solid #CCC;
}

h2.accordion_title {
    margin:0;
    padding:5px 0 5px 0;
    background:url('../images/home_accordion_title.jpg') bottom right;
}

.accordion_content {
    display:none;
}

#accordion {
    margin-top:7px;
}

h1 {
	margin: 0px 0px 20px 10px;
	padding: 10px 0px 0px 0px;
	line-height: 1.2em;
	font-size: 130%;
}

.massive_header {
    font-size: 215% !important;
    line-height: 1.2em;
    margin: 10px 0px 5px 0px;
    width: 300px;
}

.massive_header.no_width {
    width: 100%;
}

.extra_margin {
    margin-top: 37px;	
}

.no_margin_bottom {
    margin-bottom: 0px;    
}

.no_margin {
    margin: 0px !important;    
}

p a {
    color: #4d4d4d; 	
}

.wsywig_content {
	font-size: 85%;
}

.wsywig_content p, .wsywig_content ul {
    font-size: 125% !important;
}

/*content container rules*/
.header_content {
    width: 960px;
    margin: auto;
    position: relative;          
    padding: 0px 10px 0px 0px;
}

.footer_content {
    width: 960px;
    margin: 0px auto 20px auto;
    position: relative;
    padding: 0px 10px 0px 0px;
}

.page_content {
	width: 970px;
	margin: auto;
	padding: 10px 0px 10px 0px;
	text-align: left;
	font-size: 100%;
	color: #4d4d4d;   
	min-height: 350px; 
	position: relative;

}

.page_content p {
    font-size: 85%;	
}

.promotion_container {
    position: absolute;
    width: 220px;
    z-index: 98;
    right: 9px;
    top: 10px;
}

.page_image_overlay {
    border: 5px solid #ffffff;
    position: absolute;
    top: 0px;
    left: 10px;
    width: 690px;
    height: 220px;
    display: block;
}

.page_image_overlay.news {
    height: 260px;
}

.promotion_image_overlay {
    border: 5px solid #ffffff;
    position: absolute;
    top: 0px;
    left: 10px;
    width: 590px;
    height: 260px;
    display: block;
}

.content {
	font-size: 100%;
}

.content li { 
	font-size: 100%; 
}

.page_image_container {
    width: 700px;
    height: 230px;
    margin: 0px 10px 0px 0px;  
    padding: 0px 0px 0px 10px;   
    float: right;
    position: relative; 
}
/*end content container rules*/

/*column rules*/
.tiny_column {
    width: 220px;
    margin: 0px 2px 0px 0px;
    padding: 0px 10px 0px 10px;	
    float: left;
    position: relative;
    font-size: 100%;
    overflow: hidden;
}

.small_column {
    width: 320px;
    padding: 0px 10px 0px 10px;  
    margin: 0px 2px 0px 0px; 
    float: left;
    position: relative; 
    font-size: 100%;
    overflow: hidden;
}

.medium_column {
    width: 460px;
    padding: 0px 10px 0px 10px;  
    margin: 0px 2px 0px 0px; 
    float: left;
    position: relative; 
    font-size: 100%;
    overflow: hidden;
}

.large_column {
    width: 600px; 
    padding: 0px 10px 0px 10px; 
    margin: 0px 2px 0px 0px;  
    float: left;
    position: relative; 
    font-size: 100%;
    overflow: hidden;
}

.massive_column {
    width: 700px;
    padding: 0px 10px 0px 10px;
    margin: 0px 2px 0px 0px;   
    float: left;
    font-size: 100%;
    overflow: hidden;
    position: relative;
}

.gradient {
    background: #ffffff url('../images/gradient_bg.jpg') repeat-x left top;
}

.header_gradient {
    background: #ffffff url('../images/header_gradient_bg.jpg') repeat-x left top;
    height: 230px;
    text-align: left;
    font-size: 100%;
}

.promotion_gradient {
    background: #ffffff url('../images/promo_gradient_bg.jpg') repeat-x left top;
    height: 270px;
    text-align: left;
    font-size: 100%;
}

.list {
	list-style: none;
    margin: 0px;
    padding: 0px;
}

.list_gradient {
	background: #ffffff url('../images/list_gradient_bg.jpg') repeat-x left top;
    height: 180px;
    text-align: left;
    font-size: 100%;
    margin-bottom: 5px;
    float: left;
    width: 100%;
    overflow: hidden;
}

.list_gradient.membership {
	width: 610px;
	margin: 0px 15px 0px 0px;
	padding: 0px;
	overflow: visible;
	height: auto;
}

.membership_header {
	height: 180px;
	overflow: hidden;
}

.membership_header p {
    height: 60px;
    overflow: hidden;
}

.membership_header .massive_header {
    height: 100px;
    overflow: hidden;
}

.list_gradient_sml {
	background: #ffffff url('../images/list_gradient_sml_bg.jpg') repeat-x left top;
    height: 140px;
    text-align: left;
    font-size: 100%;
    margin-bottom: 5px;
}

.list_image_overlay {
    border: 5px solid #ffffff;
    position: absolute;
    top: 0px;
    left: 10px;
    width: 210px;
    height: 170px;
    display: block;
    z-index: 50;
}

.list_image_overlay.news {
    height: 130px;
}

.list_gradient_sml a {
    margin-top: 40px;	
}
/*end column rules*/

/*bulleted list rules*/
.bullet_list {
    list-style-type: circle;
    margin: 0px 0px 0px 12px;
    font-size: 85%;
    position: relative;
    padding: 0px;
}

.bullet_list.error {
    width: 900px;
}

.bullet_list.error li {
    margin: 0px 0px 8px 10px;
    color: #4d4d4d;
    float: left;
    width: 280px;
}


.bullet_list li {
    margin: 0px 0px 8px 3px;
    color: #4d4d4d;
}

.bullet_list li a {
    color: #4d4d4d;
}
/*end bulleted list rules*/

/*category list rules*/
.category_list {
	list-style: none;
    margin: 0px;
    padding: 0px;
}

.category_list li {
    margin: 0px 0px 30px 0px;
    float: left;	
    
}

.category_list li p {
    margin-bottom: 0px;
}

.category_list li p.summary {
    color: #333333;
}

.category_list li p.pseudo_link {
    text-decoration: underline;
}

.category_list li a {
    font-size: 100%;
    display: block;
    text-decoration: none;
    padding-bottom: 20px;
}

.category_image_container {
    position: relative;	
    width: 220px;
    height: 72px;
}

.category_image_container.sports {
    margin-left: 5px;
    width: 220px;
    height: 150px;
}

.category_image_container .ribbon {
    position: absolute;
    width: 230px;
    height: 24px;
    top: 85px;
    left: -10px;
    z-index: 100;
    padding: 17px 0px 0px 0px;
    text-align: center;
}

.category_list .category_image_overlay {
	border: 5px solid #ffffff;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 210px;
	height: 62px;
	display: block;
	z-index: 50;
}

.category_list .category_image_overlay.sports {    
    height: 140px;
    width: 200px;
}
/*end category list rules*/

/*button rules*/
.btn_lrg {
    display: block;
    width: 220px;
    height: 56px;
    margin: 25px 0px 5px 0px;
    text-decoration: none;
    float: left;
}

.btn_lrg .btn_inner {
    margin: 0px 0px 0px 13px;
    padding: 12px 0px 0px 0px;
    display: block;
    height: 44px;
    text-align: left;
    color: #ffffff;
    font-size: 100%;
}

.btn_lrg .btn_inner .secondary {
    font-size: 80%;
    display: block;
    line-height: 1.2em;
}

.btn_lrg .btn_inner .primary {
    font-size: 125%;
    display: block;
}

.btn_lrg:hover {
    background-position: left -66px;
}

.btn_lrg:hover .btn_inner {
    background-position: right -66px;
}

.btn_sml {
    margin: 5px 3px 0px 0px;
    height: 23px;
    float: left;
    display: block;
    text-decoration: none;
}

.btn_sml.right {
    float: right;
    margin-right: 0px;
}

.btn_sml span {
   margin: 0px 0px 0px 8px;
   height: 21px;
   padding: 2px 17px 0px 7px;
   font-size: 90%;
   display: block;
}

.btn_sml:hover {
    background-position: left -33px;
}

.btn_sml:hover span {
    background-position: right -33px;
}

.btn {
    margin: 5px 0px 5px 0px;
    height: 36px;
    width: 220px;
    float: left;
    display: block;
    text-decoration: none;
}

.btn span {
   margin: 0px 0px 0px 12px;
   height: 26px;
   padding: 10px 0px 0px 0px;
   font-size: 110%;
   display: block;
}

.btn:hover {
    background-position: left -46px;
}

.btn:hover span {
    background-position: right -46px;
}

button { 
    position: relative;
    border: 0; 
    padding: 0;
    cursor: pointer;
    overflow: visible; /* removes extra side padding in IE */
}

button span { 
    position: relative;
    display: block; 
    white-space: nowrap;    
}

.promotion_container .btn_lrg {
    margin: 0px 0px 5px 0px;    
}

.medium_column .btn_lrg {
    margin-right: 10px;	
}
/*end button rules*/

/*social link rules*/
.social_links {
	float: left;
	list-style: none;
	padding: 0px;
	margin: 0px;
}

.social_links li {
   float: left;
   margin: 5px 5px 0px 0px;
}  
/*end social link rules*/

/*form rules*/
form {
	margin: 0px;
	padding: 0px;
}

form label {
    font-size: 85%;	
    height: 19px;
    display: block;
    float: left;
}

form .element_wrapper {
	float: left;
	position: relative;
	left: 0px;
	top: 0px;
}

form label.check {
    margin: 0px 0px 0px 10px;
    float: left;
    width: auto;
}

form .check_group {
	float: left;
	width: 470px;
	margin: 0px 0px 20px 0px;
}

form .check_group.membership {
    width: 450px;
}

form .check_group .checkbox_wrapper,
form .radio_group .radio_wrapper {
    float: left;
}

form .check_group.membership .checkbox_wrapper {
    clear: both;
} 

form input {
	float: left;
   	background-color: #eaeaea;
   	border: 1px solid #a2a2a2;
   	height: 17px;
   	font-size: 85%;
   	color: #4d4d4d;
   	padding: 2px 3px 0px 3px;
}

form input.form_checkbox {
    width: auto;	
    height: auto;
    clear: both;
    margin: 8px 0px 0px 0px;
}

form input.error {   
    border: 1px solid #ee3434;
}

.form_errors {
    color: #4f0707;
    font-size: 85%;
    font-weight: bold;
    margin: 7px 0px 0px 20px;
    display: block;
    background-color: #ffd1d1;
    border-top: 1px solid #f6afaf;
    border-bottom: 1px solid #f6afaf; 
    margin: 0px 0px 5px 0px;
    padding: 5px 0px 5px 10px;
    list-style: none;
}

.form_errors li {
	border: none !important;
	padding: 2px !important;
	margin: 0px !important;
	background-color: #ffd1d1 !important;
}

.form_success {
    color: #5DC121;
    font-size: 85%;
    font-weight: bold;
    margin: 7px 0px 0px 20px;
    display: block;
    background-color: #e2FFD1 ;
    border-top: 1px solid #99CC00;
    border-bottom: 1px solid #99CC00; 
    margin: 0px 0px 25px 0px;
    padding: 5px 0px 5px 10px;
    list-style: none;
}

.form_success li {
    border: none !important;
    padding: 2px !important;
    margin: 0px !important;
    background-color: #e2FFD1 !important;
}
/*end form rules*/

/*widget rules*/
#subscription_widget input {
    width: 212px;
}

.news_widget {
	list-style: none;
    margin: 0px;
    padding: 0px;
}

.news_widget li {
    margin: 0px 0px 10px 0px;
    border-bottom:1px solid #CCC;
}

.news_widget img {
    float: left;
    margin: 0px 5px 0px 0px;
    width: 60px;
    height: 60px;   
}

.news_widget a,
.news_widget p {
    float: left;
    font-size: 85%; 
    width: 155px; 
    color: #4d4d4d; 
}
/*end widget rules*/

/*main header rules*/
.main_header {
    background: #ffffff url('../images/header_bg.jpg') repeat-x left top;
    height: 25px;
    width: 100%;
    margin: 0px 0px 1px 0px;
}

.logo {
	display: block;    
    float: left;
}

.logo img {
    margin: 0px 0px 0px 10px;
    float: left;
}

.main_navigation {
    margin: 6px 0px 0px 0px;
    padding: 0px;
    float: right;
    font-size: 100%;
    list-style: none;
    position: absolute;
    top: 0px;
    right: 492px;
}

.main_navigation li {
    float: left;
    color: #b1b1b1;
    margin: 0px 3px 0px 0px;
    font-size: 80%;
}

.main_navigation li a {
    color: #b1b1b1;
    margin: 0px 3px 0px 0px;
    text-decoration: none;
    font-size: 100%;
}

.main_navigation li:hover a {
    text-decoration: underline;
}

#google_translate_element {
    display: inline-block;
    width:200px;
    position: absolute;
    top: 0px;
    right: -20px;
}

#google_translate_element .goog-te-menu-value {
    background: url("../images/ui-bg_loop_25_000000_21x21.png") repeat scroll 50% 50% #000000;
    border: 1px solid #555555;
    color: #B1B1B1 !important;
    font-size:12px; padding-right:3px
}

#google_translate_element .goog-te-gadget-simple {
    background: transparent;
    border: 0px;
}

.site_list,
.ui-autocomplete-input {
	height: 18px;
	margin: 2px 0px 0px 0px;
	padding: 0px 2px 0px 2px;
	font-size: 80% !important;
	color: #B1B1B1 !important;
	position: absolute;
	top: 0px;
	right: 188px;
	width: 282px;
}

.ui-button {
    position: absolute !important;
    top: 2px !important;
    right: 170px !important;
    height: 20px !important;
    width: 18px !important;
}

.ui-autocomplete li {
   	font-size: 70% !important;
}

.ui-button-icon-only .ui-icon {
    left: 0px !important;
    margin-left: 0px !important;
    margin-top: 0px !important;
    top: 2px !important;
}
/*end main header rules*/

/*site header rules*/
.site_header {
	height: 90px;
}

.header_bg {
    width: 960px;
    height: 90px;	
    margin: 0px 10px 0px 0px;
    font-size: 100%;
}

.header_address {
	height: 70px;
	text-align: right;
	font-size: 80%;
	margin: 20px 0px 0px 0px;
	float: right;
	width: 150px;	
}

.header_address p {
	margin: 0px;
}

.site_logo {
    display: block;    
    float: left;
}

.site_logo img {
    margin: 0px;
    float: left;
}
/*end site header rules*/

/*site navigation rules*/
.navigation {
    height: 35px;    
}

.site_navigation {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

.site_navigation li {
    float: left;
}

.site_navigation li a {
    display: block;
    height: 24px;
    outline: none;
    text-decoration: none;
    font-size: 90%;
    font-weight: bold;
    padding: 11px 10px 0px 10px;
    float: left;
}

.site_navigation li a:hover,
.site_navigation li a.selected {
    background-position: left -45px;
}

/*second level nav rules*/
.site_navigation li ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
    clear:both;
    position: absolute;
    left: -999em;
    width: 80px;
    z-index:99;
    padding-top: 35px;
}

.site_navigation li:hover ul,
.site_navigation li .pseudo_hover {
    left: auto;
    background-position: left -45px;
}

.site_navigation ul li {
    float: left;
    clear: both;
    width: 80px;
    height: 33px;
    text-align: left;
}


.site_navigation ul li a {
         display: block;
	 outline: none;
	 height: 24px;
	 width: 100%;
	 padding: 6px 10px 5px 10px;
}
/*end second level nav rules*/



/*end site navigation rules*/

/*footer rules*/
.footer {
	background-color: #1b1b1b;
	height: 120px;
	margin: 50px 0px 0px 0px;
	padding: 10px 0px 0px 0px;
	position: relative;
}

.footer .main_header {
    position: absolute;
    bottom: 0px;	
}

.footer_logo {
	background: transparent url('../images/footer_logo.png') no-repeat left top;
	width: 110px;
	height: 120px;
	position: absolute;
	top: -65px;
	right: 0px;
}

.id_logo {
    float: right;	
    margin: 70px 20px 0px 0px;
    color: #b1b1b1;
    display: block;
    font-size: 75%;
    text-decoration: none;
}

.id_logo img {
    vertical-align: middle;	
}

.footer_navigation {
    float: left;
    margin: 0px 0px 5px 10px;
    list-style: none;
    padding: 0px;
}

.footer_navigation li {
    float: left;
    color: #b1b1b1;
    margin: 0px 5px 0px 0px;
    font-size: 85%;
}

.footer_navigation li a {
    color: #b1b1b1;
    margin: 0px 5px 0px 0px;
    text-decoration: none;
    font-size: 100%;
}

.footer_navigation li:hover a {
    text-decoration: underline;
}
/*end footer rules*/


/*homepage rules*/
.homepage_feature {
    height: 200px;   
}

.flash_container {
    position: relative;
    margin: auto;
    width: 970px;
    height: 200px;
}

#flash_content {
    z-index: 50;	
}

.flash_container #image_container {
    width: 970px;
    height:200px;
    overflow:hidden;
}

.content_container {
    float: left;
}
/*end homepage rules*/

/*booking rules*/
.booking_list {
	list-style: none;
    margin: 0px;
    padding: 0px;
}

.membership_forms {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

.booking_list li {
    border: 1px solid #a6a6a6;
    padding: 10px 10px 5px 10px;	
    margin: 0px 0px 10px 0px;
    background-color: #ffffff;
    font-size: 100%;
}

.booking_list li h2 {
    float: left;
    width: 500px;
    padding: 0px;
    height: 22px;
}

.booking_list li h2.open {
    font-size: 130%;
}

.booking_list li a {
    float: right;
    font-size: 90%;
    margin-top: 2px;
    text-decoration: none;
    height: 22px;
    width: 60px;
}

.expandable_area {
    display: none;	
}

.expandable_area.open {
    display: block;  
}

.booking_form {
    margin: 0px 0px 20px 0px;	
}

.booking_form label {
   	width: 550px;
   	height: auto;
   	margin: 0px 5px 5px 0px;
   	padding-top: 8px;
   	clear: both;
   	float: none;
}

.booking_form input {
    width: 550px;
    height: 24px;
    border: 1px solid #a6a6a6;
    background: #ffffff url('../images/form_input_bg.jpg') repeat-x left top;
    margin: 0px 0px 10px 0px;
    padding-top: 5px;
    font-size: 90%;
}

.booking_form .required_flag {
    display: block;
    height: 18px;
    margin: 0px 0px 12px 0px;
    position: absolute;
    right: -10px;
    bottom: 0px;
}

.booking_form .disclaimer {
    display: block;
    width: 395px;
    height: 10px;
    margin: 0px 0px 5px 0px;
    float: left;   
    font-size: 80%; 
}

.booking_form button {
    clear: both;
}

.booking_form .custom_checkbox {
    width: 18px;
    height: 18px;
    background: #ffffff url('../images/checkbox_bg.png') no-repeat left top;
    float: left;
    margin: 6px 0px 0px 0px;    
    clear: both;
}

.booking_form .custom_checkbox.selected {
    background-position: left -28px;
}

.booking_form .custom_checkbox input.form_checkbox {
    width: 18px;
    height: 18px;
    outline: none;
    cursor: pointer;
    margin: 0px;
}

.booking_form .checkbox_wrapper label,
.booking_form .radio_wrapper label {
    width: auto;
    clear: none;
}

.booking_form .custom_radio {
    width: 18px;
    height: 18px;
    background: #ffffff url('../images/radio_bg.png') no-repeat left top;
    float: left;
    margin: 6px 0px 0px 0px;    
    clear: both;
}

.booking_form .custom_radio.selected {
    background-position: left -28px;
}

.booking_form .custom_radio input.form_radio {
    width: 18px !important;
    height: 18px;
    outline: none;
    cursor: pointer;
    margin: 0px;
}

.booking_form .faux_file_input {
   	position: relative;
   	float: left;
   	width: 405px;
}

.booking_form .faux_file_input input {
    z-index: 10;    
    position: relative;
    float: right;
    width: auto !important;
    height: 31px;
    margin-right: 2px;
}

.booking_form .faux_file_input .faux_file_button {
    z-index: 5; 
    width: 70px;
    height: 31px;
    position: absolute;
    display: block;    
    top: 0px;
    right: 3px;
    margin: 0px;
}

.booking_form .faux_file_input .faux_file_button span {    
    height: 22px;
    font-size: 95%;
    padding-top: 9px;
}

.booking_form .faux_file_input .faux_file_text {
    z-index: 5; 
    width: 323px;
    height: 22px;
    position: absolute;
    display: block;    
    top: 0px;
    right: 74px;
    border: 1px solid #a6a6a6;
    background: #ffffff url('../images/form_input_bg.jpg') repeat-x left top;
    padding: 7px 3px 0px 3px; 
    font-size: 90%;   
}
/*end booking rules*/

/*form response*/
.response_success {
    background: transparent url('../images/response_success.png') no-repeat left top;	
    height: 80px;
    margin: 20px 0px 0px 35px;
    padding: 0px 0px 0px 70px;
}

.response_success p {
	margin-top: 0px;
}

.response_success .result {
    margin-bottom: 5px;
    margin-top: 0px;
}

.response_failure {
    background: transparent url('../images/response_failure.png') no-repeat left top;   
    height: 80px;
    margin: 20px 0px 0px 35px;
    padding: 0px 0px 0px 70px;
}

.response_failure p {
    margin-top: 0px;
}

.response_failure .result {
    margin-bottom: 5px;
    margin-top: 0px;
    color: #ee3434;
}
/*end form response*/

/*membership_rules*/
.membership_header_image {
    margin: 0px 0px 30px 0px;
    float: right;
}
/*end membership rules*/

.application {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 8;
    display: none;
}

.application.active {
    display: block;
}

.application_container {
	margin: 150px auto 0px auto;
    background: #ffffff url('../images/gradient_bg.jpg') repeat-x left top;
    border: 1px solid #a6a6a6;
    text-align: left;
    width: 520px;    
    padding: 0px 10px 0px 10px; 
    position: relative;    
}

.application_container .loader {
    width: 200px;
    height: 200px;
    margin: 50px auto 0px auto;
    font-size: 85%;
    text-align: center;
    display: none;
    background: none;
}

.application_container .close {
   	width: 27px;
   	position: absolute;
   	top: 2px;
   	right: 2px;
}

.application_container .close span {
    padding-left: 0px;
    padding-right: 0px;
    margin-left: 10px;
}

.application_container h2 {
    margin-bottom: 30px;
}

.blockout {
	width: 100%;
    height: 100%;
    position: fixed;
    left: 0px;
    top: 0px;
    background-color: #000000;
    z-index: 2;
    display: none;
}

.blockout.active {
    display: block;
}

.contact_details {
    font-size: 85%;
}

.contact_details tr td {
    width: 50px;
    height: 20px;
}

.contact_details .information {
    width: 165px;
}

.contact_details.operating_hours tr td {
    width: 80px;
    height: 20px;
}

.contact_details.operating_hours .information {
    width: 135px;
}

.trading_hours_area {
    width: 220px;                 
}

.expand_link h3 {
    margin-bottom: 0px;	
}

.hours_disclaimer {
	font-size: 70% !important;
	margin: 0px;
	display: none;
}

.hours_disclaimer.open {
    display: block;
}

.map {
    width: 455px;
    height: 290px;    
}

#subscription_form input {
	width: 550px;
}

#subscription_form .disclaimer,
#subscription_form button {
    margin-left: 0px;
}

#subscription_form input.form_checkbox {
    width: 18px;
    float: left;
    clear: none;
}

#subscription_form .check_group {
    width: 600px;
}

#subscription_form .custom_checkbox {
    clear: none;
}

#subscription_form .custom_radio {
    clear: none;
}

#subscription_form label.check {
    width: 170px;
}
	
#subscription_form h3 {
    clear: both;
    float: left;
    width: 600px;
}

#subscription_form h3.extra_margin {
    margin-top: 20px;
}

#subscription_form p {
    margin-top: 0px;
    float: left;
}

#application_form input {
   	width: 510px;
}

/* start timetable rules */
.timetable_calender,  .timetable_overview{
    border:collapse;
    border-spacing:0px;
    font-size:85%;
    width:100%;
    margin:0px;
    padding:0px;
}

.timetable_calender td,  .timetable_overview td {
    min-height:20px;
    margin:0px;
    padding: 0px;
    width:12.5%;
    vertical-align:top;
    border-right: 1px solid;
    border-bottom: 1px solid;
}

.timetable_calender tbody td{
    padding: 4px;
}

.timetable_overview td {
    border-right: 0px;
}

.timetable_overview tbody td{
    font-weight: bold;
}


.timetable_calender thead td, .timetable_calender tfoot td {
    border-bottom: 0px;
    padding:0px;
    font-weight:bold;
}

.timetable_calender td label{
    display:block;
    margin:10px 0px 24px 7px;
}


.timetable_calender thead td span, .timetable_overview td span {
    display: block;
    margin:7px 5px 5px 5px;
}


.timetable_overview h1 {
    margin:0px;
    padding:0px;
}

.timetable_calender td a{
    display:block;
    margin-bottom:2px;
    padding: 5px 4px;
    color: #000000;
    text-decoration: none;
}

.timetable_overview tbody td a {
    text-decoration: underline;
    font-weight: normal;
}

.timetable_calender thead td, .timetable_overview thead td {
    font-weight: bold;
    font-size: 120%;
}

.timetable_overview tfoot td {
    border-bottom: 0px;
}

.timetable_list {
   list-style: none;
   padding-left: 0px;
}

.timetable_list ul li{
   width:100%
}


.timetable_info {
   display:none;
   z-index: 99;
   height:auto;
   width:260px;
   left:10px;
   background-color:transparent;
}

.timetable_info table {
   border-spacing: 0px;
   border: collapse;
   margin: 0px;
}

.timetable_info table td {
   padding: 0px;
   margin: 0px;
}


.timetable_info .timetable_info_body {
  border: 1px solid;
  padding:7px 7px 7px 7px;
  width:245px;
  vertical-align:top;
  border-color: #A2A2A2;
  background-color:#FFFFFF;
}

.timetable_info .timetable_info_body div {
  border: 1px solid;
  float:right;
  font-size: 12px;
  height:auto;
  padding:0px 10px 10px 10px;
  width:230px;
  vertical-align:top;
  background-color:#077BC8;
  color: #000000;
  border-color: #A2A2A2;
}

.timetable_info .timetable_info_body div h2 {
  font-size: 11px;
}

.timetable_info .timetable_info_body div img {
  float:left;
  border: 1px solid #FFFFFF;
}

.timetable_info h2 {
 font-weight:bold;
 margin:4px 0px 5px 0px;;
}

.timetable_info .timetable_info_body span{
  vertical-align:top;
  display: block;
  float:right;
  width: 180px;
}

.timetable_info td .arrow {
   float:right;
   position: relative;
   left: 1px;
   padding:0px;
   margin:0px;
   width:13px;
   height:26px;
   background: transparent url('../images/tt_tooltip_arrow.png') no-repeat right top;

}

/* end timetable rules */

.ui-autocomplete {
	z-index: 1000 !important;
	max-height: 395px;
    overflow-y: auto;
}   

.ui-menu-item {
    text-align: left;
}

.weather_box {
    border-bottom: 1px solid #CCCCCC;
    float: left;
    margin-top: 10px;
    padding-bottom: 6px;    
}

.weather_box img {
    float:left;
}

.weather_box .weather_content {
    float:left;
    width:160px;
    margin-left:10px;
}
.weather_box .weather_data {
    clear:both;
    float:left;
    font-size:11px;
    margin-top:5px;
}

.opening_times {
    margin:5px 0 5px 0;
}


