/*
 *
 * colors
 * dark blue: #003876
 *
 *
 
 */
body 
{
	font:  normal normal normal 10pt/1.17 "Lucida Sans", "Lucida Sans Unicode", verdana, arial, sans-serif;
	/*
    font-size: 10pt;
    font-family: "Lucida Sans", "Lucida Sans Unicode", verdana, arial, sans-serif;
	*/
    background: url('../resources/images/bg_gradient_body.gif') repeat-x;
    margin: 0px;
    padding: 0px;
    text-align: center;
}

img {
	border: none;
}

a, a:visited {
    color: #c55225;
}

a:hover {
    color: #003876;
}

h1, h2, h3, h4, h5 {
    margin: 0px;
    padding: 0px;
    color: #003876;
}

h1.pageTitle {
    padding-left: 20px;
    padding-top: 10px;
    font-size: 1.6em;
    color: #003876;
}

h1.sectionPageTitle {
	background: #003876;
	padding: 10px;
	color: white;
	border: 3px solid white;
	border-bottom: none;
}

h1.headingTimetable {
    font-size: 1.6em;
	padding-top: 6px;
	padding-bottom: 10px;
} 

.heading {
    color: #003876;
}

div {
    position: relative;
}

/*
 * main layout
 *
 * */
div#wrapper {
    position: relative;
    text-align: left;
    width: 996px;
    background-color: white;
    margin: 0 auto;
    border-left: 2px solid #8d9cae;
    border-right: 2px solid #8d9cae;
    /*
     border-bottom: 2px solid #8d9cae;
     */
}

div#colWrapper {
    background-color: white;
    background: url('../resources/images/bg_columns.jpg') repeat-x;
    padding: 5px 10px;
    margin: 0px 1px;
    position: relative;
}

div#navigation {
    padding: 5px;
}

div#pageFooter {
    padding: 5px 5px 0 5px;
}

div#disclaimer
{
	font-size: 8pt;
	color: Gray;
	padding-top: 5px;
	padding-right: 120px;
	padding-left: 120px;
}

div#email-disclaimer
{
	font-size: 8pt;
	color: Gray;
	padding: 5px;	
}

div#pageHeader {
    background: url('../resources/images/bg_navigation.gif') repeat-x;
    height: 74px;
}

div#navigation ul, div#pageFooter ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
    font-weight: bold;
    margin-top: 10px;
    margin-left: 10px;
}

div#navigation li, div#pageFooter li {
    display: inline;
    padding-right: 16px;
}

div#navigation li a, div#navigation li a:visited {
    text-decoration: none;
    color: black;
}

div#navigation li a:hover {
    text-decoration: underline;
    color: #003876;
}

div#pageFooter li a, div#pageFooter li a:visited {
    text-decoration: none;
    color: black;
}

div#pageFooter li a:hover {
    text-decoration: underline;
    color: #003876;
}

/*
 #leftCol, #rightCol {
 border: 1px solid black;
 }
 */
div#leftCol, div#rightCol {
    /*
     padding: 10px;
     */
}

div#leftCol {
    width: 666px;
}

div#rightCol {
    width: 290px;
}

div#pageFooter {
    background: url('../resources/images/bg_navigation.gif');
    height: 40px;
    width: 986px;
    margin: 0 auto;
    border-bottom: 2px solid #8d9cae;
    border-left: 2px solid #8d9cae;
    border-right: 2px solid #8d9cae;
}

/*
 *
 * page elements
 
 */
/*
div#breadcrumb {
    padding: 16px 20px;
    border-top: 1px solid #cbd5df;
    border-bottom: 1px solid #cbd5df;
    background: url('../resources/images/bg_breadcrumb.gif') repeat-x;
    font-weight: bold;
    margin-top: 6px;
    font-size: 0.9em;
}
*/

div#breadcrumb {
   background: #003876;
	padding: 10px 10px 10px 20px;
	color: white;
	border: 2px solid white;
	border-bottom: 0px;
    font-weight: bold;
}

#breadcrumb a, #breadcrumb a:hover {
	color: white;
}

div.article {
    padding: 6px 16px 20px 16px;
}

div.articlePix {
	display: inline; 
	float: left;
	padding: 10px;
}

div.article table{
    position: relative;
}

div.promo, div.widget {
    background: white;
    margin-bottom: 10px;
}

div.promo {
	 border: 1px solid #cbd5df;
}

div.promoSectionItem {
	background: white;
	border-top: 1px solid #cbd5df;
	border-bottom: 2px solid #406a98;
	border-right: 2px solid #406a98;
	border-left: 1px solid #cbd5df;
	padding: 6px;
}

div.promoPromoItem {
	background: white;
	border: 1px solid #cbd5df;
	width: 186px;
	padding: 6px;
	margin: 0;
}

div.sidebar {
	width: 200px;
	background: white;
	border: 1px solid #cbd5df;
	padding: 6px;
}


div.sidebarItem {
	background: #cbd5df;
	margin-top: 10px;
	border: 1px solid #b7c7d8;
	text-align: left;
	padding: 6px;
	background: url(../resources/images/bg_breadcrumb.gif) repeat-x;
	margin-bottom: 10px;
}

div.sidebarContainer {
	padding: 10px;
	background: url(../resources/images/bg_carousel.jpg) repeat-x;
	border-top: none;
	border-bottom: 1px solid #cbd5df;
	border-left: 1px solid #cbd5df;
	border-right: 1px solid #cbd5df;	 
}

.sidebarContainer ul {
	margin: 0;
	margin-left: 4px;
	padding: 0;
	padding-left: 10px;
	
}

.sidebarContainer li {
	margin: 0;
	margin-left: 4px;
	padding-bottom: 6px;
	
}

.sidebarContainer li a {
	font-weight: bold;
	font-size: 0.9em;
	
}

div.promoSectionItemContent {
	text-align: center;
	border: 1px solid #cbd5df;
	background: url(../resources/images/bg_carousel.jpg) repeat-x;
	padding: 10px 6px;
	height: 80px;
	overflow: hidden;
}

div.promoSectionItemContent h4 
{
	font-size:10pt;
}

.promoSectionItem h3  {
	background: #f7a94d;
	padding: 6px;
	font-size: 1.1em;
}

div.promoSection {
	/*border: 1px solid #cbd5df;
	
	background: #fff4cc;
	*/
	background: url(../resources/images/bg_carousel.jpg) repeat-x;
	border-top: none;
	border-bottom: 1px solid #cbd5df;
	border-left: 1px solid #cbd5df;
	border-right: 1px solid #cbd5df;
	padding: 10px;
	margin: 0px 4px 10px 4px;
}

div.promotions {
	background: white url(../resources/images/bg_carousel.jpg) repeat-x;
	border: 1px solid #cbd5df;
	padding: 10px 6px;
	text-align: center;
}

.widget ul {
	list-style: none;
	margin: 0;
	padding: 0;
	padding-left: 6px;
}

.widget li {
	list-style: none;	
	padding-top: 5px;
	padding-bottom: 5px;
}

.delays td {
	padding-top: 8px;
}

.delays p {
	margin-top: 2px;
}

.noDelays {
	text-align: center;
	color: #89a3c0;
	font-weight: bold;
	padding: 6px;
}

.delayLabel
{
	 color: #003876;
	 padding: 6px;
}

.delayTime {
	padding: 0 10px;   
    font-weight: bold;
	font-size: 0.8em;
	font-family: verdana;	
	/*
	 color: white;
	 background: #003876;
	 */	
}

div.promo h3 {
	color: #003876;
}

div.mainPromo {
	background: none;
}

div.promoHeading {
	padding: 6px;
	margin: 1px;
    /*
	 background: url('../resources/images/bg_widget.gif') repeat-x;
     */
	background: url('../resources/images/bg_breadcrumb.gif') repeat-x;
}

div.widget {
	/*
border: 3px solid #f4f4f4;
*/
	border: 1px solid #cfd8e1;
	padding: 2px;
	
}

div.widgetWrapper {
	border: 1px solid #cfd8e1;
}

div.widget h3 {
	color: #003876;
	font-size: 1em;
	background: url('../resources/images/bg_widget.gif');
	padding-left: 5px;
	padding-top: 5px;
	padding-bottom: 5px;
	margin: 1px;
	border: 1px solid #a8b5c4;
}

div.widget p {
	padding: 6px;
	margin: 0;
	font-size: 0.9em;
}

div#onlineservices p {
	padding: 4px 6px;
}

div.quickfind {
	padding: 2px;
	padding-top: 6px;
	background: url('../resources/images/bg_quickfind.gif') repeat-x;
	background-position: 0px 1px;
	background-color: white;
}

div.promo td {
    vertical-align: top;
} 

.contentWrapper 
{
	min-height: 900px;
    margin-top: 8px;
	padding-bottom: 0;
}

div.txtWrapper {
	padding: 10px;
}

div.iconHeader {
	padding-right: 10px;
}

div.genInfoContainer {
	width: 350px;
}



/*
 *
 * Promo classess
 *
 *
 */
div.first {
    margin-top: 0px;
}

div.notice {
	padding: 6px;
	width: 300px;
	
}

.news {
	padding-top: 10px;
	padding-right: 10px;
	padding-left: 10px;
	border: none;
}
 
div.teaser {
    margin-left: 140px;	
}

div.thumb {
    width: 100px;
	
}

/*
 Delays front page
 */
td.tblDateRange {
    width: 20%;
}

td.tblLine {
    width: 112px;
	vertical-align: top;
	padding-right: 4px;
}

td.tblText {
	vertical-align: top;
	padding-left: 6px;
}

.tblText p {
	margin-top: 4px;
}

td.tblDate {
    width: 15%;
}

.plannedDelays table {
	margin: 6px;
}

/*
 *
 *Tabs
 */
/* root element for tabs  */
ul.css-tabs {
    margin: 0 !important;
    padding: 0;
    height: 30px;
    border-bottom: 1px solid #bccadb;
}

/* single tab */
ul.css-tabs li {
    float: left;
    padding: 0;
    margin: 0;
    list-style-type: none;	
}

/* link inside the tab. uses a background image */
ul.css-tabs a {
    float: left;
    font-size: 13px;
    display: block;
    padding: 5px 30px;
    text-decoration: none;
    border: 1px solid #bccadb;
    border-bottom: 0px;
    height: 18px;
    background-color: #dae2eb;
    color: #777;
    margin-right: 2px;
    position: relative;
    top: 1px;
	background: url(../resources/images/bg_white.gif);	
}

ul.css-tabs a:hover {
    background-color: #F7F7F7;
    color: #333;
}

/* selected tab */
ul.css-tabs a.current {
    background-color: white;
    border-bottom: 2px solid #dae2eb;
    color: #000;
    cursor: default;
	background: url(../resources/images/bg_tabs.gif) repeat-x;
	font-weight: bold;
}

/* tab pane */
div.main-pane {
	min-height: 150px;
	padding: 15px 20px;
	background-color: #dae2eb;
	border: 1px solid #bccadb;
	border-width: 0 1px 1px 1px;
}

div.main-pane .label {
	padding-bottom:2px;
	padding-top: 5px;
}

/* tab pane */


div.css-panes div div {
	display: block;
}

div.css-panes p {
    padding-top: 4px;
    padding-bottom: 4px;
    margin: 0;
	clear: left;
}

/* Thin tab variation - for having many tightly packed tabs */
ul.thin-css-tabs a
{
	padding:5px 15px;
}

/*
 *
 * line colours
 *
 *
 */ 
.line a {
	color:white;
}
 
.line 
{
	display: block;
	padding: 5px 10px 5px 10px;
	color: white;
	font-weight: bold;
	font-size: 0.9em;
	font-family: verdana;
	margin-bottom: 4px;
} 

.linesThumb
{
	float: left;
	width: 120px;
	margin: 10px;
	margin-left: 0px;
} 


.johnsonville {
    background: #6699cc;
} 

.melling {
    background: #ff6600;
} 

.wairarapa {
    background: #ffcc00;
} 

.kapiti {
    background: #33cc00;
}

.upperhutt 
{
    background: #cc0000;
}

.alllines 
{
    background: #cc00cc;
}


/*
 * 
 * Forms
 * 
 */
input.btn {
	background: url(../resources/images/bg_button.gif) repeat-x;
	border: 1px solid;
	border-color: #be5f0e;
	padding: 5px;
	color: white;
	font-family: "Lucida Sans", "Lucida Sans Unicode", verdana, arial, sans-serif;
	font-weight: bold;
	outline: none;
	margin-top: 10px;
}

input.btn:focus {
	border: none;
}

/*
 * 
 * 
 * Front page promo carousel classes
 * 
 * 
 * 
 */

.slideshowPromo {
    margin: 0 auto 0 8px;
    overflow: hidden;
    width: 642px !important;
    height: 230px !important;
    cursor: pointer;
}

/*
.slideshowPromo ul {   
	width: 5120px;
    list-style-image: none;
    list-style-position: outside;
    list-style-type: none;
	margin: 0px;
    padding: 0px;		 
} 
.slideshowPromo li {
    cursor: pointer;
    float: left;
	margin: 0px;
    margin-left: 15px;
	padding: 0px;     
} 
*/

.promoNav 
{
	display:none;
}

/*
 *
 *
 * Timetable classess
 *
 *
 */ 
.inlineNext {
	padding: 2px; 	
	font-weight: bold;
}
 
.key {
	line-height: 2em;
	height: 2em;
	font-weight: bold;
	font-size: 0.9em;
	font-family: verdana;
	text-align: center;
}

.express
{
	color: #CC0000;	
}

.transfer
{
	color: #0000CC;	
}
 
.nextTrain
{
	background: #f8c386;
	border: 1px solid #808080;
}
 
.fareTbl, .keyTbl {
    width: 322px;
    margin-left: 10px;
    margin-right: 10px;
    padding-bottom: 20px;
    vertical-align: top;
}

.fareTbl h3, .keyTbl h3 {
	font-size: 0.9em;
	padding-bottom: 10px;
}
 
.fareTbl th, .adult, .child {
	text-align:center;
	padding: 4px;
}

.fareTbl th, .adult, .child {
	padding: 6px;
}

.fareType {
	width: 50%;
}

.hiliteRow {
    background: #f8c386;
}

.adult, .child {
 }
 
.adult {
	background: #e3e9f0;
}

.fareTbl table, .keyTbl table {
	border-collapse: collapse;
	width: 100%;
	border: 1px solid #cbd5df;
	font-size: 0.9em;
}
 
.fareTbl td, .keyTbl td {
	padding: 4px;
}

a.prevPadLink {
	padding-left: 6px;
	padding-right: 30px;
	font-weight: bold;
}

a.nextPadLink {
	font-weight: bold;
	padding-right: 6px;
}

#timetable {
    text-align: left;
} 

#slideshow {
    /*
     border: 1px solid #777777;
     */
    overflow: hidden;
    width: 520px;
} 

#slideshow ul {
    width: 8500px;
    list-style-image: none;
    list-style-position: outside;
    list-style-type: none;
    margin: 0px;
    padding: 0px;
} 

#slideshow li {
    cursor: pointer;
    float: left;
	margin: 0px;	
    margin-left: 0px;
	padding: 0px;
    /*
     border: 1px solid black;
     */
} 

.stationsContainer {
	
}

.stationsContainer ul {
   
    list-style-image: none;
    list-style-position: outside;
    list-style-type: none;
    margin: 0px;
    padding: 0px;
} 

.stationsContainer li {
    cursor: pointer;
    float: left;
	margin: 0px;   
	padding: 0px;
    /*
     border: 1px solid black;
     */
} 

div#slideshow table {    
    border-bottom: 1px solid #cbd5df;     
    border-collapse: collapse;	
} 

div#slideshow td {
    text-align: center;
	border-right: 1px solid #cbd5df;
	padding: 0;
	margin: 0;
	width: 76px;
}

div#divKey
{
	font-size:8pt;
}

div#divKey td
{
	white-space: nowrap;
	padding: 0 2px 0 2px;
	width: 130px;
}

table.stations {
    width: 120px;
    border-collapse: collapse;
	border: none;
}

.stations tr, #slideshow tr {
	height: 2em;
}

td.tblKey {
    color: white;
	padding: 0;
	margin: 0;
}

tr.trKey {
    height: 2em;
	background: #cbd5df;
	font-family: verdana;
	
} 

.trKey td {
	border-right: 1px solid white;
	font-size: 0.9em;
	font-weight: bold;
}

div.timetableContainer {
  /*
  border: 1px solid #dae2eb;
*/
    position: relative;
}

div.stationsContainer {
    float: left;
}

div.timetableContainer li.firstPage table
{
	border-left: 2px solid #cbd5df !important;
}

div.timetableContainer li.lastPage table
{
	border-right: 2px solid #cbd5df !important;
}

a.bNext .disabled 
{
	color:#cbd5df;
}

tr.alt {
   /*
 background-color: #dae2eb;

    
font-weight: bold;
*/

} 

.station {
	background: #e7ecf2;	
}

.terminating {
	font-weight: bold;	
} 

.stations td, #slideshow td {
	/*
	border-top: 2px solid white;
		border-bottom: 2px solid white;
	*/
	margin: 0;
	padding: 0;
	padding-left: 4px;
}

.peakFares 
{
	border: 1px solid #808080;
	border-top-style: none;
    background-color: #003876;
}

td.tblEmpty {
    background: white;
	
	
} 

td.now
{
	background: #f8c386;
	font-weight: bold;
}

tr.now
{
	background: #f8c386;
	font-weight: bold;
}

div.timetableNav {
    padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 4px;
	padding-right: 4px;
    border-top: 4px solid #cbd5df;
	   /*
	  border-bottom: 1px solid #cbd5df;
			 background: #f5f7fa;
	*/    
	/*
	 background: url('../resources/images/bg_breadcrumb.gif') repeat-x;
	*/
    font-weight: bold;
    font-size: 0.9em;
}

div.timetablePageHeading {
	margin: 2px;
	padding-bottom: 16px;
	margin-top:0px;
    background: #eaeff5;
}

#breadcrumb.ttBreadcrumb {
    padding-left: 10px;
}

/*
 .inlineNext {
 background: #f8c386;
 padding: 4px;
 }
/*
 * Forms
 * 
 */
.contactForm {
	padding: 10px;
}

.contactForm label {
	display: block;
	margin-top: 6px;
	font-weight: bold;
}

input.textInput {
	width: 300px;
	margin-top: 6px;
	margin-bottom: 6px;
}

span.textInput {
	margin-top: 6px;
	margin-bottom: 6px;
	vertical-align: text-top;
}

/*
 * helper classess
 *
 * */ 
 .first {
    margin-top: 0px;
} 

.halfFixed {
    width: 320px; 
} 

.lefty {
    float: left;
} 

.righty {
    float: right;
} 

.whiteBg {
    background-color: #fff;
}

.white {
	color: white;
}

a.white, a.white:visited {
    color: white;
}

.txtSml {
}

.lineShort {
	width:20%;
}

.linkSmall {
	font-weight:bold;
	font-size: 0.8em;
}

.center {
	text-align: center;
}

.right {
    text-align: right;
}

.full {
    width: 100%;
}

.imgVmid {
	vertical-align: middle;
}

div.divider {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #a8b5c4;	
}

div.clear {
    clear: both;
}

ul {
    position: relative;
}

.not {
    display: none;
}

.selLine, .selFrom, .selTo, .selDay {
    list-style: none;
    width: 100px;
    float: left;
}

.selLine li, .selFrom li, .selTo li, .selDay li {
    margin: 0px;
}

.hilite {
    background: yellow;
}

.trail {
    background: #ffcf96;
    padding: 10px;
    border: 1px solid #f7a94d;
}

.ttPadder {
    padding: 6px;
}

.note {
    color: #919191;
}

.goTrain {
    text-align: right;
    padding-right: 10px;
	padding-bottom: 10px;
	vertical-align: bottom !important;
}

.promoHolder {
    padding-left: 15px;
    padding-top: 20px;
    vertical-align: middle;
}
       
.items h4 {
    color: white;
    font-size: 1.4em;
}
            
div.scrollable {
    /* required settings */
    position: relative;
    overflow: hidden;
    width: 664px;
    height: 180px;
}

/*
 root element for scrollable items. Must be absolutely positioned
 and it should have a super large width to accomodate scrollable items.
 it's enough that you set width and height for the root element and
 not for this element.
 */
div.scrollable div.items {
    /* this cannot be too large */
    width: 5000px;
    position: absolute;
}

/*
 a single item. must be floated on horizontal scrolling
 typically this element is the one that *you* will style
 the most.
 */
div.scrollable div.items div.itemholder {
    float: left;
	 width:664px;
}

div.items table {
   
	height: 180px;
	
}

/* you may want to setup some decorations to active item */
div.items div.active {
}

/* prev, next, prevPage and nextPage buttons */
a.prev, a.next, a.prevpromo, a.nextpromo, a.prevbanner, a.nextbanner, a.prevPage, a.nextPage {   
    padding-top:2px;
    cursor: pointer;   	
}

/* mouseover state 
a.prev:hover, a.next:hover, a.prevPage:hover, a.nextPage:hover {
    background-position: 0px -18px;
}
*/
/* disabled navigational button */
a.disabled
{	
	opacity:0.4;
	filter:alpha(opacity=40)
    /*visibility: hidden !important;*/
}

/* next button uses another background image */
a.next, a.nextpromo, a.nextbanner, a.nextPage 
{   
	border-right: none;	
	float:right
}

/* next button uses another background image */
a.prev, a.prevpromo, a.prevbanner, a.prevPage  
{ 
	border-right: none;	
	float:right
}

div.scroll {
    background: url('../resources/images/bg_top_promo.jpg') repeat-x;
	height: 216px;
}

.promoTxt {
    font-size: 1.1em;
    font-weight: bold;
    padding-top: 10px;
}

div.preview
{
	background: url(../resources/images/bg_navigation.gif) repeat-x;
	position: absolute;
	top: 0px;
	right: 0px;
	padding:0 5px 5px 5px;
	color: white;
	font-weight: bold;
	font-size:12pt;
	z-index:auto;
}

.btnPreview
{
	background: url(../resources/images/bg_button.gif) repeat-x;
	border: 1px solid;
	border-color: #be5f0e;
	padding: 5px;
	color: white;
	font-family: "Lucida Sans", "Lucida Sans Unicode", verdana, arial, sans-serif;
	font-weight: bold;
	outline: none;
	margin: 0px;
	cursor: pointer;
}

/* ************ Custom Styles: Temp DF Styles ************* 

*/

.preview
{
	background: url('../resources/images/preview.gif') repeat;
}

.sitemap li 
{
	margin-top:10px;
}

.articleIntro 
{
	font-weight:bold;
}

textarea.textInput {
	width: 300px;
	margin-top: 6px;
	margin-bottom: 6px;
}

select.textInput {
	width: 300px;
	margin-top: 6px;
	margin-bottom: 6px;
}

table.news
{
	width: 100%;
	margin: 0 0 0 0px;
	padding: 0 20px 0 0;
}

table.news td
{
	padding: 0 10px 10px 0;
	vertical-align: top;
}

table.news .thumb 
{
	width: 10px;
}

table.withSidebar
{
	width: 390px;
}

div.promoSectionItemContent {
	padding: 6px 4px;
}

div.tblDateRange {
    width: 20%;
}

div.linesHorizontal {
	margin: 6px 0;
}

div.linesHorizontal div.line {
	float: left;
	width: 92px;
}

.contactForm .shortlabel label {
	display:inline;
}

input.btn {
	cursor:pointer;
}

.timetableContainer {
	margin-left: 5px;
}

.timetableContainer #slideshow {
	width: 537px;
}

.timetable
{
	border-style: solid;
	border-width: 1px;
	width: 236px;
	font-weight: bold;
}

div#error
{
	width: 966px;
	height: 512px;
	background-color: #FFFFFF;
	border: 2px solid #FF0000;
	padding: 2px;
}

div#outage
{
	width: 966px;
	height: 512px;
	background-color: #FFFFFF;
	border: 2px solid #FF0000;
	padding: 2px;
}

.mt-special a, .mt-special
{
	font-weight: bold;
	color: #C50142;
	height:20px;
	padding: 2 0 2 0;
}

.inlineLabel label
{
	display:inline !important;
}

#printHeader, #printFooter
{
	DISPLAY: none;
}

/*
 *
 *
 * On time performance graphing
 *
 *
 */ 
.graph canvas  
{
	position:absolute;
	left:0px;
	right:0px;
}

.graph_legend table
{
	margin-left:auto;
	margin-right:auto;
}

