/* Global */

/* Global whitespace reset */
* {
	margin: 0px;
	padding: 0px;
}

/* setting the base font size to 90% allows even scaling by the user while keeping font-size 'xx-small' legible */
body {
	font-size: 80%;
	background: #809FFF;
	font-family: arial, helvetica, sans-serif;
}

a {
	color: #4c53e0;
	text-decoration: none;
}

a:focus, a:hover, a:active { 
	color: #eb8518;
}

h1, h2, h3, h4, h5, h6, p, li, div#booking-info {
	font-size: .9em;
	margin: 0px 50px 1.2em 70px;
	color: #00248F;
}

#header {
	position: relative;
	background: #000000;
	margin-bottom: 5px;
}

#container {
	width: 100%;
	float: left;
	margin-right: -200px;
}

#content-sec {
	margin-right: 195px;
	text-align: justify;
}

#sidebar {
	width: 180px;
	float: right;
}

#footer {
	border-top: 7px solid #00248F;
	clear: both;
	background: #ffffff;
	margin-right: 194px;
	padding: 5px 15px 5px 15px;
}

.clearing {
	clear: both;
	height: 0px;
}

#main {
	margin-left: 180px;
	margin-bottom: 20px;
}

body.no-nav #main, body.homepage #main {
	margin-left: 0px;
	margin-right: 0px;
}


div#home-box {
	margin-top: 15px;
	padding: 15px;
	background: url(../images/homepage_gradient.jpg) left top repeat-x;
	border-top: 1px solid #00248F;
	border-bottom: 1px solid #CDDAFF;
}

div#home-box img {
	float: left;
	width: 274px;
	height: 266px;
}

div.intro-box {
	height: auto !important;
	height: 248px;
	min-height: 248px;
	background: transparent;
	border: 1px solid #ffffff;
	margin-bottom: 5px;
	margin-left: 280px;
	background: #ffffff url(../images/intro-box-gradient.jpg) left top repeat-x;
}

#sub-box {
	background: transparent url(none);
	margin-left: 0px;
}

div.intro-box p {
	margin: 1em 15px 1em 15px;
}

div#main div.intro-box h3 {
	margin: 0px 0px 0px 0px;
	padding: 10px 10px 10px 10px;
	background: #ffffff url(../images/pattern_begin_section.jpg) left bottom repeat-x;
}

div.end-section {
	height: 50px;
	background: url(../images/pattern_end_section.gif) left top repeat-x;
}

.nav ul {
	list-style: none;
	text-indent: 0px;
}

/* navigation */

#nav {
	float: left;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	background: #00248F url() repeat-x top left;
	border-top: 1px solid #0049FF;
	border-bottom: 1px solid #0049FF;
	}


ul#tools {
	background: #000000 url(../images/tool_gradient.jpg) left top repeat-x;
	margin:0px 0px 0px 0px;
	padding: 8px 0px 8px 33px;
}
	  
   ul#tools a {
      margin:0px 0px 0px 0px;
      padding:2px 2px 2px 2px;
      text-decoration:none;
	  color: #5C63F5;
      }
	 
	 ul#tools a:hover {
	 	color: #ffffff;
	 }
    ul#tools li {
      display:inline;
      padding:0px 10px 0px 4px;
	  margin: 0px 0px 0px 0px;
      font-weight: bold;
      }
	  
#nav li {
	float: left;
	margin: 0px 0px 0px 0px;
	padding: 0 0 0 0;
	list-style: none;
	background: url() no-repeat top right;
	border-right: 1px solid #0049FF;
	font-weight: bold;
	}

li#t-contact { border-style: none; }
	
.nav-last {
	border-width: 0px 0px 0px 0px;
}

#nav a {
	display: block;
	padding: 4px 10px;
	text-decoration: none;
	color: #fff;
	background:transparent url(../images/nav_bg.jpg) left top repeat-x;
	
}


#nav a:hover, #nav a.active {
	color: #fff;
	background: #FF6600;
	background:transparent url(../images/nav_bg_hover.jpg) left top repeat-x;
	}
#nav a.active {
	font-weight: bold;
	background:transparent url(../images/nav_bg_sel.gif) left top repeat-x;
	}
li#t-home a {
	margin-left: 25px;
	background: url() no-repeat top left;
	}


img#logo {
	position: absolute;
	top: 25px;
	right: 30px;
	border-style: none;
}

/* Typography */

#header p {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	color: #ffffff;
}

#footer img {
	margin-right: 35px;
}



#header ul {
	margin: 0px 0px 0px 0px;
}

fieldset {
	padding: .5em;
}

#main {
	margin-left: 170px;
}

#main p, #main h2, #main h3, #main h4 {
	line-height: 1.6em;
}

.subactive {
	font-weight: bold;
}


#footer p {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px .3em 0px;
	font-size: .8em;
}

.clearing {
	height: 0px;
	clear: both;
	line-height: 0px;
}

#main h2 {
	font-weight: bold;
	margin-bottom: 0px;
	margin-top: 0px;
	padding-top: 5px;
	color: #00248F;
	background: url(../images/h3_underline.jpg) left bottom no-repeat;
	text-align: left;
}


h2#main-title {
	margin: 0px 0px 0px 30px;
	padding: 9px 0px 4px 37px;
	font-size: 1.4em;
	line-height: 1em;
	color: #00248F;
	background: url(../images/maintitle_bg2.gif) 0px 7px no-repeat;
}

body.homepage h2#main-title {
	margin: 0px 0px 0px 10px;
}

#main h3 {
	margin-top: 2em;
	margin-bottom: 0px;
	padding-top: 10px;
	background: url(../images/h3_bg.gif) 0px 0px no-repeat;
	text-align: left;
}


.feature-box {
	height: auto !important;
	height: 140px;
	min-height: 140px;
	margin: 0px 0px 3px 0px;
	padding: 0px 0px 0px 0px;
	background: #BFCFFF url(../images/feature_box_bottom.jpg) left bottom no-repeat;
}

.feature-box h3 {
	text-align: center;
	margin: 0px 0px 0px 0px;
	padding: 20px 5px 15px 5px;
	background: #BFCFFF url(../images/feature_box_top.jpg) left top no-repeat;
	color: #ffffff;
}

.feature-box p {
	padding: 10px 15px 15px 15px;
	margin: 0px 7px 0px 7px;
	color: #ffffff;
	border-top: 1px solid #809FFF;
}

.feature-box a {
	color: #ffffff;
}

.feature-box a:hover {
	color: #FF6600;
}

ul#submenu {
	padding-left: 13px;
	background:url(../images/cc_sides2_nav.gif) repeat-y 0 0;
}

body.no-nav ul#submenu, body.homepage ul#submenu {
	display: none;
}

ul#submenu li {
	float: left;
	width: 100%;
	list-style: none;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	border-bottom: 1px solid #0033CC;
      color: #FF6600;
      font-weight: 900;
}

ul#submenu li a {
	display: block;
	color: #ffffff;
	background: url(../images/menu_li_bg.jpg) right top repeat-y;
      font-weight: normal;
}

ul#submenu li a:hover, .subactive {
	background: url(../images/menu_li_bg2.jpg) right top repeat-y;	
}


/* CSS for text replacements
================================================ */

/* Thanks to Feckless Mind for the DIR */

/* Shared rules - If you need more replaced elements you must add them here */
.text-replace, h1#branding, h1#branding:after, td.book-cell a, td.book-cell a:after {
	display: block;
	white-space: nowrap;
}

h1#branding, h1#branding:after, h1#branding span, td.book-cell a, td.book-cell a:after, td.book-cell a span {
	line-height: 1em;
	font-size: 1em;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

h1#branding:after, td.book-cell a:after {
	margin-top: -1em;
}

/* Set some specific heights and widths and margins for different headers */
h1#branding, h1#branding:after, h1#branding span { height: 56px; width: 327px; }
td.book-cell a, td.book-cell a:after, td.book-cell span { height: 15px; width: 40px; }

/* backslash hack to hide some definitions from Mac IE5 \*/

h1#branding, h1#branding:after, h1#branding span, td.book-cell a {
	overflow: hidden;
}

/* End of Mac IE5 hack */

/* Generate the images and set the overflow for CSS 2 compliant browsers */

h1#branding:after { content: url(../images/logo2.gif); }
td.book-cell a:after { content: url(../images/book_me.gif); }

/* Awful IE trickery */

* html td.book-cell a, * html h1#branding {
	background-image: expression(this.runtimeStyle.backgroundImage = "none",this.innerHTML +=  '<span class="text-replace"></span>');
	position: relative;
	z-index: 1;
	white-space: normal;
}

.text-replace {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

* html h1#branding span { background: url(../images/logo2.gif) no-repeat; }
* html td.book-cell a span { background: url(../images/book_me.gif) no-repeat; }

/* End of trickery */

/* End of replacements */

/* ======== End ========= */

/* CSS for the box starts here
================================================*/
/* Default styling. Used when JavaScript is unsupported */
.cbb {
	padding:0 10px;
	margin:1em 0;
	background:#ffffff;
	border: 5px solid #ffffff;
}
div#content-sec .cbb {
	float: left;
	width: 180px;
	color: #ffffff;
	background:#00248F;
	margin:0px 0px 0px 0px;
}

.cbb h1 {
	margin:0 -10px;
	padding:0.3em 10px;
	background:#efece6;
	font:bold 1.2em/1 Arial, Helvetica, sans-serif;
}
/* Insert the custom corners and borders for browsers with sufficient JavaScript support */

/* Two of the boxes are floated just for this demo. Adjust to your needs. */
.cb {
	width: 95%;
	margin: 0px 0px 0px 5px;
	padding: 0px 0px 0px 0px;
	background: #ffffff url(../images/cc_sides2.gif) 100% 0 repeat-y ;
}

div#content-sec .cb {
	display: inline;
	float: left;
	text-align: left;
	width: 180px;
	margin-left: 8px;
	margin-bottom: 7px;
	background: #00248F url(../images/cc_sides2_nav.gif) 100% 0 repeat-y;
	color: #ffffff;
}

body.no-nav div#content-sec .cb, body.homepage div#content-sec .cb {
	display: none;
}

/*
div#main-title .cb {
	background: #ffffff url(../images/cc_sides2_title.gif) repeat-y 100% 0;
}
*/
/* Rules for the top corners and border */

.bt {
	background:url(../images/cc_box1.gif) no-repeat 100% 0;
	margin:0 0 0 0;
	height:16px;
}

div#content-sec .bt {
	background:url(../images/cc_box_nav.gif) no-repeat 100% 0;
}
/*
div#main-title .bt {
	background: url(../images/cc_box_title.gif) no-repeat 100% 0;
}
*/

.bt div {
	height:16px;
	width:18px;
	background:url(../images/cc_box1.gif) no-repeat 0 0;
}

div#content-sec .bt div {
	background:url(../images/cc_box_nav.gif) no-repeat 0 0;
}
/*
div#main-title .bt div {
	background:url(../images/cc_box_title.gif) no-repeat 0 0;
}
*/
/* Rules for the bottom corners and border */
.bb {
	background:url(../images/cc_box1.gif) no-repeat 100% 100%;
	margin:0 0 0 0px;
	height:16px;
}

div#content-sec .bb {
	background:url(../images/cc_box_nav.gif) no-repeat 100% 100%;
}
/*
div#main-title .bb {
	background:url(../images/cc_box_title.gif) no-repeat 100% 100%;
}
*/
.bb div {
	height:16px;
	width:18px;
	background:url(../images/cc_box1.gif) no-repeat 0 100%;
}

div#content-sec .bb div {
	background:url(../images/cc_box_nav.gif) no-repeat 0 100%;
}
/*
div#main-title .bb div {
	background:url(../images/cc_box_title.gif) no-repeat 0 100%;
}
*/
/* Insert the left border */
.i1 {
	padding:0 0 0 7px;
	background:url(../images/cc_sides.gif) repeat-y 0 0;
}

div#content-sec .i1 {
	background:url(../images/cc_sides2_nav.gif) repeat-y 0 0;
	padding-left: 0px;
}
/*
div#main-title .i1 {
	background:url(../images/cc_sides2_title.gif) repeat-y 0 0;
	padding-left: 0px;
}
*/
/* Insert the right border */
.i2 {
	padding:0 7px 0 0;
	background:url(../images/cc_sides.gif) repeat-y 100% 0;
}

div#content-sec .i2 {
	background:url(../images/cc_sides2_nav.gif) repeat-y 100% 0;
}
/*
div#main-title .i2 {
	background:url(../images/cc_sides2_title.gif) repeat-y 100% 0;
}
*/
/* Wrapper for the content. Use it to set the background colour and insert some padding between the borders and the content. */
.i3 {
	background: transparent;
	margin: 0px 0px 0px 0px;
	padding-right: 7px;
}

/* CSS for the box ends here */

/* Clearing floats without structural markup - Apply class to elements that you need to clear after - thanks to Position is Everything */

.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

.clearfix {display: inline-table;}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

/* End of float clearing */

	div#booking-info {
		border: 1px solid #D6E0FF;
		margin-top: 1em;
	}
	div#booking-info ul {
	}
	ul#daysofweek {
		margin:0;
		padding:6px 0 5px 0;
		background: #00248F url(../images/daysofweek_bg.gif) left top repeat-x;
		list-style-type:none;
		border-bottom:1px solid #677DC1;
	}
	ul#daysofweek li {
		display:inline;
		margin:0;
		padding:0;
		font-weight: bold;
	}
	
	div#booking-info ul#daysofweek a:link,
	div#booking-info ul#daysofweek a:visited,
	div#booking-info ul#daysofweek a:hover {
		font-weight:bold;
		color:#17358F;
		text-decoration:none;
		padding:4px;
	    background:transparent url(../images/daysofweek_bg.gif) left top repeat-x;
	}
	div#booking-info ul#daysofweek a:hover {
		background:transparent url(../images/daysofweek_hover_bg.gif) left top repeat-x;
	}
	div#booking-info ul#daysofweek li.sel a:link,
	div#booking-info ul#daysofweek li.sel a:visited,
	div#booking-info ul#daysofweek li.sel a:hover {
		text-transform:none;
		font-weight: bold;
		background:transparent url(../images/daysofweek_sel_bg.gif) left top repeat-x;
	}
			
	div#booking-info  p#full-date {
		color: #000;
		margin: 0px 0px 0px 0px;
		padding: 1px 2px 2px 5px;
		color: #ffffff;
		font-weight: bold;
		border-bottom: 1px solid #D85600;
	}
	
	p#full-date {
		background: #ff6600 url(../images/fulldate_bg.gif) left bottom repeat-x;
	}
	
	table.book-table {
		width: 35%;
		font-size: 1em;
		margin: 0px 0px 5px 0px;
		border-collapse: collapse;
	}
	
	table.price-table {
		float: right;
		width: 60%;
		font-size: 1em;
		margin: 0px 0px 5px 0px;
		border-collapse: collapse;
	}
	
	table.book-table caption, table.price-table caption {
		display: none;
	}
	
	table.book-table td, table.book-table th, table.price-table td, table.price-table th, table.time-table td, table.time-table th {
		margin: 0px 0px 0px 0px;
		padding: 3px;
		border: 1px solid #D6E0FF;
		border-top: 0px solid #ffffff;
	}
	
	table.book-table th, table.price-table th, table.time-table th {
		font-weight: bold;
		color: #000000;
		background: url(../images/th_icon.gif) bottom left repeat-x;
		
	}
	
	table.price-table td {
		padding: 4px;
	}
	
	th#price, th#item {
		display: none;
	}
	
	
	.row-norm {
		background: #EEF2FF;
	}
	
	.row-alt {
		background: #ffffff;
	}
	
	td.book-cell {
		text-align: right;
	}
	
	td.book-cell a {
	cursor: pointer;
	}
	
	tr#row-foot {
	}
	
	tr#row-foot td {
		text-align: center;
		padding: 15px 1px 15px 1px;
		border-bottom: 1px solid #D6E0FF;
	}
	
	tr#row-foot td a {
	padding: 2px;
	}
