/* this is needed for google maps API to work in IE */
v\:* {
	behavior:url(#default#VML);
}

/*---------------------------------------------
Sections:

1.GENERAL
2.HEADER
3.PAGE CONTAINER
4.GENERAL SUB-PAGE STYLING
5.MAP CONTAINER AND LINKS
6.HOME PAGE SPECIFIC CONTENT
7.DOCK SPECIFIC CONTENT
8.FARE SECTION CONTENT
9.INFORMATION SECTION CONTENT
10.STORE SECTION CONTENT
11.FOOTER
12.FORMS
13.TABLES

---------------------------------------------*/


/* --- 1.GENERAL --------------------------- */

/* zero "problem causers" for all elements */
* {
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
}

html, body {
	width: 100%;
	height: 100%;
	background: #FFF;
	font-size: 10px;
	color: #000;
	font-family: arial, sans serif;
}

/* sets grey bars w/ stars to the left and right of the header */
body { background: url(/images/header_greybar.gif) top center no-repeat; }

/* make <em> tags use a non-italic type. most <em> tags are just bolder text */
em { font-style: normal; }

a, a:active, a:visited, a:hover {
	color: #666;
	text-decoration: underline;
	outline: none;
}

/* g, o, r are the classes for the alerts. grey, orage, red. AWESOME! */
.g { color: #999; }
.o { color: #F90; }
.r { color: #F00; }

#center {
	position: relative;
	width: 802px;
	height: 100%;
	margin: 0 auto;
}

html>body #main-container {
	min-height: 675px;
	height: auto;
}
#main-container {
	float: left;
	width: 100%;
	height: 675px;
}

/* adds a margin on the top of images used as seperators, most yellow bars use this class */
.seperator-bar {
	margin: 10px 0 0 0;
	padding: 0;
}

.left {
	margin-right: 10px;
}

.fright {
	float: right;
}

h4 {
	padding: 10px;
	font-size: 11px;
	font-weight: bold;
	color: #777;
}

/* --- 2.HEADER --------------------------- */

#header {
	float: left;
	width: 802px;
	height: 130px;
	margin-bottom: 10px;
	background: url(/images/shadow.gif) 123px 123px repeat-x;
}


/* --- 3.PAGE CONTAINER --------------------------- */

#content-container {
	display: inline;
	float: left;
	width: 634px;
	margin-left: 10px;
	padding-bottom: 10px;
}


/* --- 4.GENERAL SUB-PAGE STYLING --------------------------- */

.sub-page {
	float: left;
	width: 600px;
	padding: 5px 10px 0 10px;
	font-size: 10px;
	color: #666;
	background: #FFF;
}

.sub-page .banner {
	margin-bottom: 20px;
}

.sub-page h4 {
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: bold;
	color: #FEBA35;
}

.sub-page p {
	margin: 10px 0;
	color: #666;
}

.sub-page strong {
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: bold;
	color: #666;
}

.sub-page ul {
	margin: 5px 0 10px 15px;
}


/* --- 5.MAP CONTAINER AND LINKS --------------------------- */

.map-link {
	z-index: 1000;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 30px;
	height: 30px;
}

.map-link a {
	z-index: 1000;
	display: block;
	float: left;
	width: 30px;
	height: 30px;
	text-decoration: none;
	background: url(/images/map_link.gif) top left no-repeat; /* IE would not make the link active with out a BG */
}

#main-map-chinatown { top: 443px; left: 282px; }
#main-map-madison { top: 316px; left: 265px; }
#main-map-lasalle { top: 181px; left: 346px; }
#main-map-michigan { top: 165px; left: 526px; }

#interactive-map {
	z-index: 1;
	display: block;
	float: left;
	width: 634px;
	height: 350px;
	background: #FFF;
	border: 1px solid #E6E6E6;
}

#map-notes {
	float: left;
	width: 636px;
	color: #666;
}

#map-notes em {
	display: inline;
	float: left;
	margin-top: 4px;
}

#map-notes p {
	display: inline;
	float: right;
	border-left: 1px solid #DADADA;
}

#map-notes a {
	display: inline;
	float: left;
	height: 16px;
	padding: 1px 5px;
	line-height: 16px;
	text-decoration: none;
	color: #999;
	background: #FFF;
	border-right: 1px solid #DADADA;
	border-bottom: 1px solid #DADADA;
}

#map-notes a:hover, #map-notes a.here {
	color: #666;
	background: #F2F2F2;
}


/* --- 6.HOME PAGE SPECIFIC CONTENT --------------------------- */

#alerts {
	float: left;
	width: 634px;
	height: auto;
}

#alerts em {
	font-weight: bold;
}

#alerts ul {
	float: left;
	width: 614px;
	height: 1%;
	margin: -3px 0 0 0; /* IE is adding a 3px gap for some reason */
	padding: 5px 0 10px 20px;
	font-size: 11px;
	color: #656565;
	background: #F2F2F2;
}
/* for standards complient browsers */
html>body #alerts ul { margin: 0; }
/* IE 7 */
*+html>body #alerts ul { margin: -3px 0 0 0; }

#alerts ul li {
	margin: 0 0 5px 0;
}

#alerts ul li a { color: #FEBA35; }

#quick-links {
	float: left;
	width: 312px;
	height: auto;
}

#quick-links img { margin-bottom: 10px; }

#home-news {
	float: right;
	width: 312px;
	height: auto;
}

#home-news ul {
	float: left;
	padding-left: 20px;
	font-size: 11px;
	color: #656565;
}

#home-news ul li { margin: 3px 0; }

#home-news ul li a {
	text-decoration: none;
	color: #FEBA35;
}


/* --- 7.DOCK SPECIFIC CONTENT --------------------------- */

/* links from static maps to other dock pages */
#lasalle-map-michigan { top: 277px; left: 682px; }
#michigan-map-lasalle { top: 391px; left: 234px; }
#michigan-map-river-east { top: 287px; left: 717px; }
#river-east-map-michigan { top: 382px; left: 202px; }

#dock-schedule {
	float: left;
	width: 312px;
	height: auto;
	margin-right: 10px;
	color: #666;
}

#dock-connections {
	float: left;
	width: 312px;
	height: auto;
}

#dock-connections h4 a {
	font-weight: bold;
	text-decoration: none;
	color: #FEBA35;
}

#dock-attractions {
	float: left;
	width: 312px;
	height: auto;
}

#dock-location {
	float: left;
	width: 312px;
	height: auto;
}

.dock-extra {
	float: left;
	width: 312px;
	height: auto;
}

#dock-schedule h2 {
	float: left;
	width: 311px;
	height: 25px;
	font-size: 12px;
	line-height: 25px;
	text-align: center;
	color: #FFF;
	background: #666;
}

#dock-schedule h3 {
	float: left;
	width: 151px;
	height: 25px;
	font-size: 12px;
	line-height: 25px;
	text-align: center;
	color: #666;
	background: #F2F2F2;
	border-right:  1px solid #DADADA;
}

#dock-schedule h3.center {
	border-right: 7px solid #666;
	border-left:  1px solid #DADADA;
}

#dock-schedule h3.full {
	width: 309px;
	border-right: 1px solid #DADADA;
}

#dock-schedule h3.soon {
	border-bottom: 1px solid #DADADA;
}

#dock-schedule ul.schedule {
	float: left;
	width: 75px;
	list-style: none;
	text-align: center;
	color: #666;
	background: #FFF;
	border-right: 1px solid #DADADA;
	border-bottom: 1px solid #DADADA;
}

#dock-schedule ul.center {
	border-right: 7px solid #666;
}

#dock-schedule ul.full {
	width: 154px;
}

#dock-schedule ul.schedule li {
	display: block;
	width: 100%; /*75px;*/
	height: 15px;
	line-height: 15px;
	border-top:  1px solid #DADADA;
}

#dock-schedule ul.schedule li em {
	font-size: 11px;
	font-weight: bold;
}

#schedule-notes {
	float: left;
	width: 310px;
	height: 17px;
	margin-top: 5px;
	line-height: 17px;
	color: #666;
}

#schedule-notes.wide {
	width: 630px;
}

#schedule-notes #wave {
	display: inline;
	float: left;
	width: auto;
}

#schedule-notes #wave img {
	display: inline;
	float: left;
	margin-right: 5px;
}

#schedule-notes #express {
	display: inline;
	float: left;
	margin-right: 0px;
}

#schedule-notes #print {
	display: inline;
	float: right;
	width: auto;
	padding-top: 3px;
}
#schedule-notes>#print { padding-top: 1px; }

#schedule-notes #print a {
	text-decoration: none;
}

#schedule-notes #print img {
	display: inline;
	margin: 0 0 0 5px;
}

#dock-schedule img#buy {
	margin-top: 20px;
}

#dock-schedule ul .odd { background: #F2F2F2; }
#dock-schedule ul .even { background: #FFF; }
#dock-schedule ul.left { border-left: 1px solid #DADADA; margin-right: 0;}

#dock-schedule ul.travel, #dock-attractions ul, #dock-location ul {
	float: left;
	padding-left: 20px;
	font-size: 11px;
	color: #656565;
}

#dock-schedule ul.travel li, #dock-attractions ul li, #dock-location ul li { margin: 3px 0; }

#dock-schedule ul.travel li a, #dock-attractions ul li a, #dock-location ul li a { color: #FEBA35; }

#dock-connections .connection {
	display: block;
	font-size: 11px;
	margin-bottom: 10px;
	padding-left: 10px;
	color: #656565;
}

#dock-connections h4 {
	margin-bottom: 5px;
	padding-left: 10px;
	font-size: 12px;
	font-weight: bold;
	color: #FEBA35;
}

#dock-connections em {
	font-size: 11px;
	font-weight: bold;
}


/* --- 8.FARE SECTION CONTENT --------------------------- */

.fare-notes {
	margin: 5px 0;
	padding: 10px;
	text-align: center;
	color: #656565;
	background: #F2F2F2;
	bordeR: 1px solid #E6E6E6;
}

.fare-wrapper {
	float: left;
	width: 312px;
	height: auto;
	margin-bottom: 25px;
	color: #656565;
}

.fare-wrapper h4 {
	display: block;
	margin-bottom: 5px;
	padding: 10px 0 0 10px;
	font-size: 11px;
	font-weight: bold;
	color: #FEBA35;
}

.fare-wrapper em {
	display: block;
	margin-bottom: 5px;
	padding-left: 10px;
	font-size: 11px;
	font-weight: bold;
}

.fare-wrapper ul {
	display: block;
	float: left;
	width: auto;
	height: 80px;
	padding-left: 10px;
}

.fare-wrapper li {
	padding-left: 8px;
	list-style: none;
	background: url(/images/bullet.gif) 0 5px no-repeat;
}

#monthly-pass {
	float: left;
	width: 600px;
	padding: 5px 10px 0 10px;
	font-size: 11px;
	color: #666;
	background: #FFF;
}

#monthly-pass ul {
	padding-left: 15px;
}

#monthly-pass ul li{
	padding: 5px 0;
}

#monthly-pass ul#locations {
	padding-left: 15px;
}

#monthly-pass ul#locations li {
	padding: 5px 0;
	list-style: none;
}

#monthly-pass ul#locations li a {
	font-weight: bold;
	text-decoration: none;
	color: #FEBA35;
}

#monthly-pass h4 {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: bold;
	color: #FEBA35;
}

#monthly-pass strong {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	font-weight: bold;
	color: #666;
}

#monthly-pass em {
	font-size: 11px;
	font-weight: bold;
}

#monthly-pass a+em {
	padding-left: 5px;
}

#frequent-riders {
	float: left;
	width: 600px;
	padding: 5px 10px 0 10px;
	font-size: 10px;
	color: #666;
	background: #FFF;
}

#frequent-riders h3 {
	margin-bottom: 10px;
	font-size: 12px;
	font-weight: bold;
	color: #FEBA35;
}

#frequent-riders p {
	font-size: 11px;
	margin-bottom: 10px;
}

#frequent-riders p strong {
	font-weight: bold;
}

#frequent-riders .even, #frequent-riders .odd {
	float: left;
	width: 100%;
	height: 75px;
	padding: 10px 0 0 20px;
}

#frequent-riders .even {
	background: #FFF;
}

#frequent-riders .odd {
	background: #F7F7F7;
	border-top: 1px solid #E2E2E2;
	border-bottom: 1px solid #E2E2E2;
}

#frequent-riders .even img, #frequent-riders .odd img {
	display: inline;	
	float: left;
	padding-right: 20px;
}

#frequent-riders .even p, #frequent-riders .odd p {
	display: inline;
	float: left;
	width: 510px;
}

#frequent-riders .even p strong, #frequent-riders .odd p strong {
	display: block;
	margin-bottom: 10px;
	color: #FEBA35;
}

#fr-signup {
	display: block;
	float: right;
	width: 100px;
	height: 18px;
	margin-top: 10px;
	line-height: 18px;
	text-align: center;
	font-size: 11px;
	font-weight: bold;
	color: #FFF;
	background: #6C6;
	border: 1px solid #393;
}

#fr-signup a {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 11px;
	font-weight: bold;
	text-decoration: none;
	color: #FFF;
}


/* --- 9.INFORMATION SECTION CONTENT --------------------------- */

#news {
	float: left;
	width: 600px;
	padding: 5px 10px 0 10px;
	font-size: 10px;
	color: #666;
	background: #FFF;
}

#news .news-wrapper {
	margin-bottom: 20px;
}

#news .news-wrapper h3 {
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: bold;
	color: #FEBA35;
}

#news .news-wrapper em {
	font-size: 10px;
	font-style: italic;
	font-weight: normal;
	color: #666;
}

#news strong {
	font-size: 11px;
	font-weight: bold;
	color: #666;
}

.connections-container, .attractions-container {
	float: left;
	width: 312px;
	height: auto;
	color: #666;
}

.connection-wrapper, .attraction-wrapper {
	float: left;
	width: 100%;
	margin-bottom: 20px;
	overflow: hidden;
}

.connections-container>.connection-wrapper, .attractions-container>.attraction-wrapper {
	height: auto;
}

.connection-wrapper h4, .attraction-wrapper h4 {
	padding: 0 0 10px 10px;
	font-size: 11px;
	font-weight: bold;
	color: #FEBA35;
}

.connection-wrapper p {
	float: left;
	width: 190px;
	padding: 0 10px;
}

.attraction-wrapper p {
	float: left;
	width: 210px;
	padding: 0 10px;
}

.connection-wrapper em, .attraction-wrapper em {
	display: block;
	padding-top: 5px;
}

.connection-wrapper img, .attraction-wrapper img {
	float: left;
}

#faq {
	float: left;
	width: 600px;
	padding: 5px 10px 0 10px;
	font-size: 11px;
	font-weight: bold;
	color: #FEBA35;
	list-style: none;
	background: #FFF;
}

#faq li {
	width: 600px;
	margin: 3px 0 10px 10px;
}

#faq li em {
	display: block;
	padding: 0 0 1px 15px;
	font-size: 10px;
	font-weight: normal;
	color: #666;
}

#chicago-links {
	float: left;
	padding-bottom: 15px;
}

#chicago-links a {
	float: left;
	padding-bottom: 7px;
}

#chicago-links a.fright {
	float: right;
}


/* --- 10.STORE SECTION CONTENT --------------------------- */

img#store {
	display: block;
	margin: 30px auto 0 auto;
}


/* --- 11.FOOTER --------------------------- */

#footer {
	float: left;
	margin: 20px 0 0 90px;
	width: 580px;
	height: 40px;
	line-height: 40px;
	color: #666;
}
html>body #footer { margin-left: 180px; }

#footer img {
	float: left;
	margin-right: 10px;
}

/* --- 12.FORMS --------------------------- */

input.required, select.required, textarea.required {
	background: #FEFFCC;
}

input.invalid, select.invalid, textarea.invalid {
	border: 1px solid #f00;
}

/* --- 12.TABLES --------------------------- */
td {
	font-size: 10px;
	color: #666;
	font-family: arial, sans serif;
	padding: 4px;
}
