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

body {
	margin: 0px;
	padding: 0px;
	font: 0.85em Helvetica, Arial, sans-serif;
	color: #000000;
}
#big-wrap {
	background:url(../images/body-3.png) top no-repeat #FFF;
	height:100%;
	padding:0;
	margin:0;
}
a:link {
	color:#333;
	text-decoration:underline;
}

a:visited {
	color:#333;
	text-decoration:underline;
}

a:hover {
	text-decoration:none;
}

h2 {
	font-size: 1.4em;
	font-weight:bold;
	margin-bottom: 10px;
}
h3 {
	font-size: 1.3em;
	font-weight:bold;
	margin-bottom: 10px;
}
h4 {
	font-size: 1.4em;
	font-weight:normal;
	margin-bottom: 10px;
	margin-left:10px;
	border-bottom:1px solid #ccc;
	color:#666
}
h5 {
	font-size: 1.1em;
	font-weight:normal;
	margin-bottom: 10px;
	margin-left:10px;
	font-style:italic;
	color:#333
}
ul {
	padding-left: 40px;
}

ul li {
	list-style-image:url(../images/arrow.png)
}
.left {
	float:left;
}

.left-text {
	text-align:left;
}

.right {
	float:right;
}

.right-text {
	text-align:right;
}

.center-text {
	text-align:center;
}
.subheading {
	font-size: 1.2em;
	font-weight:bold;
	margin-bottom: 10px;
}
#wrapper-outer {
	height: auto;
	width: 830px;
	margin: 0 auto;
	padding:0;
}
#footer {
	width:830px;
	height:auto;
	display:block;
	margin:0;
	background:url(../images/base-bg.png) bottom no-repeat;
}
#footer .main {
	width:780px;
	margin:0 auto;
	text-align:left;
	padding:20px 0px 30px 5px;
	border-top: 1px solid #ccc;
	color:#999;
}
#footer .main a{
	color:#333;
}

#container-contents {
	width:830px;
	height:auto;
	margin:0px;
	background:url(../images/main-bg.png) top repeat-y;
}

#heading {
	width:785px;
	height:38px;
	margin:0 auto;
}
.menu { color:#fff;}
.item {padding:10px 5px 0 5px; float:left; list-style-type:none; display:block;}
.item a { color:#fff; font-size:1.1em;}
#container-contents .full-contents {
	float: left;
	height: auto;
	width: 785px;
	padding: 10px 10px 10px 0px;
	margin-left:23px;
}
#container-contents p {
	margin-bottom:10px;
	margin-left:10px;
	color:#333
}
#container-contents .left-contents {
	float: left;
	height: auto;
	width: 530px;
	padding: 10px 10px 10px 0px;
	margin-left:23px;
}
#container-contents .left-contents-tt {
	float: left;
	height: auto;
	width: 530px;
	padding: 10px 10px 10px 0px;
	margin-left:23px;
	border-right: 1px solid #CCC;
}
#container-contents .right-contents {
	float: right;
	height: auto;
	width: 230px;
	padding: 10px 0px 0px 10px;
	margin-right:23px;
	border-left: 1px solid #CCC;
}
#container-contents .right-contents-tt {
	float: right;
	height: auto;
	width: 230px;
	padding: 10px 0px 0px 10px;
	margin-right:23px;
}
.right-contents a {
	color:#999;
	font-size: 1.1em;
	text-decoration: underline;
	font-weight: bold;
}
.right-blurb {
	padding:5px;
	font-size:1.4em;
	font-weight:bold;
	color:#666;
	line-height:1.4;
}
.right-blurb a{
	font-size:0.8em;
	font-weight:normal
}
#top-img {
	width:830px;
	height:75px;
	margin:0;
	padding:0;
	background:url(../images/top-img.png) top no-repeat;
}
#top-bar {
	position:relative;
	width:830px;
	height:36px;
	margin:0;
}
#top-bar-menu {
	width:830px;
	height:38px;
	overflow:hidden;
	margin:0;
	padding:0;
	color:#ffffff;
}
#top-bar-menu .spacer {
	width:16px;
	height:auto;
	display:block;
	margin:0;
	text-align:center;
	float:left;
}
#top-bar-menu ul {
	list-style:none;
	margin:0px;
	padding:0px;
}
#top-bar-menu li {
	float:left;
	line-height:24px;
	position:relative;
	z-index:1;
	
}
#top-bar-menu li a {
	color:#ffffff;
	text-decoration:underline;
}
#top-bar-menu li a:hover {
	text-decoration:none;
}

.page-size {
	float: right;
	margin-top: 11px;
	margin-right:10px;
	padding: 0px;
	color:#fff;
	font-size:1.1em;
}
.changer:hover {
	text-decoration:none;
	cursor:pointer;
}
.searchbox {
	float:right;
	width:185px;
	height:25px;
	padding: 0;
	margin: 0;
	border:none;
	background:none;
	font-size:0.9em;
}
.cse-branding-form {
	text-align:right;
	float:right;
}
.searchbutton {
	float:right;
	margin-right:15px;
	background:#fff;
	border:dashed 1px #8cc63f;
}
.clean {
	float:right;
}
.clearfloat { /* this class should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
}
/* ---------PAGE HEADINGS -----------*/
.heading .left{
	width:540px;
	height:auto;
	float:left;
}

.heading .right{
	width:240px;
	height:auto;
	float:right;
}

/* --------- STORY BOXES -----------*/
#container-contents .story-box {
	float: left;
	height: auto;
	width: 530px;
	margin: 0px 0px 10px;
	padding: 0px 0px 10px;
	border-bottom: 1px solid #CCC;
}

#container-contents .story-box p {
	margin:5px 0px 0px;
	width: 390px;
	display: block;
	float: right;
	font-size:1.0em;
	color:#333
}
#container-contents .story-box a:link {
	color:#999;
	font-size: 1.1em;
	text-decoration: underline;
	font-weight: bold;
}

#container-contents .story-box a:visited {
	font-size: 1.1em;
	text-decoration: underline;
	font-weight: bold;
}

#container-contents .story-box a:hover {
	text-decoration: none;
}

#container-contents .story-box img {
	float: left;
	margin: 0px;
	padding-right:15px;
}
#container-contents .last {
	border-bottom:none;
	padding:0px;
	margin:0px;
}
#container-contents .last p{
	margin:5px 0px 0px;
	width: 390px;
	display: block;
	float: right;
}
/* --------- FLASH CONTAINERS -----------*/
#flash-content {
	width:830px;
	height:221px;
	margin:0;
	padding:0;
}
#main-anim {
	width:800px;
	height:221px;	
	margin-left:16px;
	margin-top:0px;
	padding:0;
	z-index:1;
}
#news-anim {
	width:40px;
	height:40px;
	margin-right:10px;
	float:left;
}
#clock-anim {
	height: 38px;
	width: 38px;
	position: absolute;
	margin-left: 780px;
	margin-top: 0px;
	z-index:100;
}
.time {
	padding-right:55px;
	padding-top:13px;
	font-size:1.1em
}
#web-anim {
	width:210px;
	height:415px;
	margin:0 auto;
}

/*****************************************************/
/* Start Timetable Styles                            */
/*****************************************************/
table.routelisting {width:500px; font-size:1.0em}
.via {font-size:0.8em}
.route-table {
	width:780px;
	font-size:0.85em;
}

.route-table a {
	font-weight: bold;
}

.route-table caption {
	text-align: left;
	padding:5px 5px 5px 28px;
	font-size:1.2em;
	background:#8cc63f;
	color:#FFFFFF;
}

.route-table th {
	text-align:left;
	padding-left:5px;
	vertical-align:middle;
}

.route-table th.route-no {
	font-weight:bold;
	text-align:center;
	padding:5px;
	width: 59px;
	border-left: 1px solid #FFFFFF;
	font-size: 1.2em;
}

.timing-point {
	margin: 0px;
	padding: 0px;
	width: 15px;
	text-align: center;
}

.route-table td {
	text-align:center;
	padding:5px;
	vertical-align:middle;
	min-width:25px;
}

.route-table tr.grey {
	background: #D9DEE6;
}

span.explanation {
	display: block;
	float: left;
	padding-left: 40px;
}

span.explanation-label {
	display: block;
	float: left;
	position: absolute;
	margin-left: -40px;
	font-weight: bold;
	width: 20px;
	text-align: center;
}
span.explanation-dash {
	display: block;
	float: left;
	position: absolute;
	margin-left: -20px;
	width: 20px;
	text-align: center;
}
/*****************************************************/
/* Start Timetable Styles   2                          */
/*****************************************************/
.left-text {text-align:left; padding:5px; margin:5px;}
.center-text {text-align:center; padding:5px; margin:5px;}
.highlight {
	background: #FFF8D9;
}
.route-table-2 {
	width:780px;
	font-size:0.85em;
}
th.route-no {
	font-weight:bold;
	text-align:center;
	padding:5px;
	width: 59px;
	border-left: 1px solid #FFFFFF;
	font-size: 1.2em;
}
.route-table-2 a {
	font-weight: bold;
}
.route-table-2 caption {
	text-align: left;
	padding:5px 5px 5px 28px;
	font-size:1.2em;
	background:#f78f1e;
	color:#FFFFFF;
}
.route-table-2 th {
	text-align:left;
	padding-left:5px;
	vertical-align:middle;
}

.route-table-2 th.route-no {
	font-weight:bold;
	text-align:center;
	padding:5px;
	width: 59px;
	border-left: 1px solid #FFFFFF;
	font-size: 1.2em;
}

.timing-point {
	margin: 0px;
	padding: 0px;
	width: 15px;
	text-align: center;
}

.route-table-2 td {
	text-align:center;
	padding:5px;
	vertical-align:middle;
	min-width:25px;
}

.route-table-2 tr.grey {
	background: #D9DEE6;
}
/*****************************************************/
/* Start Route 977 Styles                            */
/*****************************************************/

tr.r977 {
	color: #000000;
	background-color: #a3d063;
}

.r977-line {
	border-bottom:1px solid #a3d063
}

.exp-line-977 {
	width:100%;
	border-bottom:2px solid #a3d063;
	padding:2px 0px 0px 0px;
}

.highlight-r977 { background-color: #F0F5D4; }

/*****************************************************/
/* Start Route 978 Styles                            */
/*****************************************************/

tr.r978 {
	color: #000000;
	background-color: #f9a54b;
}

.r978-line {
	border-bottom:1px solid #f9a54b
}

.exp-line-978 {
	width:100%;
	border-bottom:2px solid #f9a54b;
	padding:2px 0px 0px 0px;
}

.highlight-r978 { background-color: #F0F5D4; }

/*****************************************************/
/* Added 21/9/09	                                 */
/*****************************************************/
.charter-request {
	border: 0px solid #CCCCCC;
	padding:8px;
}

.underline {
	border-bottom:solid 1px #cccccc;
	padding:2px 0;
}