@import url(//fonts.googleapis.com/css?family=Fjalla+One|Rambla);
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 400;
    src: local("Open Sans"), local("OpenSans"), url("//themes.googleusercontent.com/static/fonts/opensans/v6/cJZKeOuBrn4kERxqtaUH3T8E0i7KZn-EPnyo3HZu7kw.woff") format("woff");
}
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 700;
    src: local("Open Sans Bold"), local("OpenSans-Bold"), url("//themes.googleusercontent.com/static/fonts/opensans/v6/k3k702ZOKiLJc3WVjuplzHhCUOGz7vYGh680lGh-uXM.woff") format("woff");
}
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 400;
    src: local("Open Sans Italic"), local("OpenSans-Italic"), url("//themes.googleusercontent.com/static/fonts/opensans/v6/xjAJXh38I15wypJXxuGMBobN6UDyHWBl620a-IRfuBk.woff") format("woff");
}
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 700;
    src: local("Open Sans Bold Italic"), local("OpenSans-BoldItalic"), url("//themes.googleusercontent.com/static/fonts/opensans/v6/PRmiXeptR36kaC0GEAetxjqR_3kx9_hJXbbyU8S6IN0.woff") format("woff");
}
@font-face {
	font-family: "Antic Slab";
	font-style: normal;
	font-weight: 400;
	src: url('/fonts/anticslab-regular.eot');
	src: url('/fonts/anticslab-regular.eot?#iefix') format('embedded-opentype'),
		url('/fonts/anticslab-regular.woff') format('woff'),
		url('/fonts/anticslab-regular.ttf') format('truetype'),
		url('/fonts/anticslab-regular.svg#webfont') format('svg');
}
@font-face {
	font-family: "PT Sans";
	font-style: normal;
	font-weight: 400;
	src: url('/fonts/pts55f.eot');
	src: url('/fonts/pts55f.eot?#iefix') format('embedded-opentype'),
		url('/fonts/pts55f.woff') format('woff'),
		url('/fonts/pts55f.ttf') format('truetype'),
		url('/fonts/pts55f.svg#webfont') format('svg');
}
@font-face {
	font-family: "PT Sans Italic";
	font-style: italic;
	font-weight: 400;
	src: url('/fonts/pts56f.eot');
	src: url('/fonts/pts56f.eot?#iefix') format('embedded-opentype'),
		url('/fonts/pts56f.woff') format('woff'),
		url('/fonts/pts56f.ttf') format('truetype'),
		url('/fonts/pts56f.svg#webfont') format('svg');
}
@font-face {
	font-family: "PT Sans Bold";
	font-style: normal;
	font-weight: 700;
	src: url('/fonts/pts75f.eot');
	src: url('/fonts/pts75f.eot?#iefix') format('embedded-opentype'),
		url('/fonts/pts75f.woff') format('woff'),
		url('/fonts/pts75f.ttf') format('truetype'),
		url('/fonts/pts75f.svg#webfont') format('svg');
}
@font-face {
	font-family: "PT Sans Bold Italic";
	font-style: italic;
	font-weight: 700;
	src: url('/fonts/pts76f.eot');
	src: url('/fonts/pts76f.eot?#iefix') format('embedded-opentype'),
		url('/fonts/pts76f.woff') format('woff'),
		url('/fonts/pts76f.ttf') format('truetype'),
		url('/fonts/pts76f.svg#webfont') format('svg');
}
body {
	font-family: "PT Sans", "Open Sans", "Arial", "Helvetica", sans-serif;
	font-size: 13px;
	color: #666;
	padding: 0;
	margin: 0;
}
*.print-only {
	display: none;
}
a {
	color: #ee2925;
}
a img {
	border: none;
}
#content {
	width: 100%;
	margin: 0;
	position: relative;
	top: 0;
	left: 0;
}
h1 {
	margin: 0;
	padding: 0;
	font-size: 32px;
	color: #c40000;
	line-height: 54px;
	height: 54px;
	background: #eee;
	font-family: "PT Sans", "Open Sans", "Arial", "Helvetica", sans-serif;
}
body.pop h1 {
	margin: -5px -10px 0 -10px;
	padding: 0 10px;
}
#provided {
	clear: both;
	text-align: center;
	font-size: 11px;
}
#footer {
	font-size: 11px;
}
#footer a {
	color: #ee2925;
}
table.stoppicker,
table.ticketlist,
table.verifypurchase,
table.paymentinfo,
table.schedule {
	border-collapse: collapse;
	margin: 0 auto 0 0;
}
table.stoppicker td {
	vertical-align: top;
	padding: 2px 5px;
}
table.stoppicker table {
	border-collapse: collapse;
	border-spacing: 0;
}
table.stoppicker td td {
	padding: 0 5px 1em 5px;
}
table.stoppicker th {
	min-width: 300px;
}
table.stoppicker th,
table.ticketlist th,
table.verifypurchase th,
table.paymentinfo th,
table.schedule th {
	color: black;
	padding: 10px 15px !important;
	background-color: #eee;
}
span.stopname {
	font-weight: bold;
	color: black;
}
table.internal {
	margin: 0 auto;
}
table.internal td {
	padding: 2px 5px;
	vertical-align: top;
}
table.small {
	font-size: 11px;
}
table.boardingpass td,
table.schedule td {
	padding: 2px 5px;
	font-size: 11px;
}
table.paymentinfo td,
table.verifypurchase td {
	padding: 7px 5px;
}
table.boardingpass {
	width: 100%;
	border: 1px solid #666;
	border-collapse: collapse;
	margin-top: 1em;
}
table.boardingpass td.carrier {
	font-size: 18px;
	font-weight: bold;
}
table.boardingpass td.carrier span {
	float: right;
	margin: 0;
}
table.boardingpass tr.toprule {
	border-top: 1px solid #666;
}
table.boardingpass td.departtime,
table.boardingpass td.schedulenumber,
table.boardingpass td.passengername,
table.boardingpass td.agentname {
	text-align: right;
}
table.boardingpass td.departtime span,
table.boardingpass td.schedulenumber,
table.boardingpass td.passengertype,
table.boardingpass td.summary {
	font-size: 16px;
}
table.schedule tr.stationinfo td {
	border-top: none;
	padding-left: 2em;
}
tr.unavailable td {
	background: #00d9ff;
}
#sale-info {
	display: none;
}
#sale-info h1 {
	font-size: 18px;
	text-align: center;
}
div.cal-container {
	display: none;
	position: absolute;
	top: 0px;
	left: 290px;
}
#ticketing div.cal-container table.cal,
table.date-error div.cal-container table.cal,
div.cal-container table.cal {
	visibility: hidden;
	background: white;
	border: 1px solid #666;
	border-spacing: 1px;
	empty-cells: hide;
	position: absolute;
	top: 0;
	left: 0;
}
table.date-error div.cal-container table.cal th {
	color: #abc3d6;
	background: #FFFFEE;
}
div.cal-container td,
table.date-error div.cal-container table.cal td {
	border: 1px solid #ccc;
	text-align: center;
	padding: 2px 4px;
}
div.cal-container .prevarrow {
	float: left;
	margin: 0;
}
div.cal-container .nextarrow {
	float: right;
	margin: 0;
}
div.cal-container a {
	text-decoration: none;
}
div.cal-container a:hover {
	color: red;
}
/* override general widget */
#ticketing {
	border: none !important;
	background: #EAEDF2 !important;
	color: #999999;
	width: auto !important;
	padding: 0 !important;
	border-radius: 0 !important;
	border-bottom: 2px solid #ee2925 !important;
}
#ticketing select {
	text-transform: none;
}
#ticketing tr > :first-child {
	padding-left: 10px !important;
}
#ticketing tr > :last-child {
	paddingright: 10px !important;
}
#ticketing tr td input {
	padding: 6px 2px !important;
}
#ticketing tr td {
	padding-top: 0.5em !important;
	padding-bottom: 0.5em !important;
}
#ticketing p {
	padding: 0 10px !important;
}
#ticketing p input {
	border: 1px solid #999;
	font-family: "Verdana", "Arial", serif;
	font-size: 13px;
	height: 16px;
	line-height: 16px;
	padding: 2px 2px;
	width: 248px;
}
#ticketing div.callist {
	width: 254px !important;
	top: 28px !important;
	left: 0 !important;
}
#ticketing div.citysearch {
	width: 252px !important;
	top: 28px !important;
	left: 0 !important;
}
#ticketing div.callist table {
	width: 254px;
	border-color: #999;
	border-top-width: 0;
}
#ticketing div.callist table td {
	width: 23px;
	padding: 2px 5px !important;
	font-size: 13px;
}
#user-section {
	margin: 1em 0 0 0 !important;
	padding: 1em 0 0 0 !important;
	border: none !important;
	border-top: 1px dashed #0a3c60 !important;
}
#ticketing div.cal-container table.cal {
	display: block;
	display: table;
}
p.route-select {
	border: none !important;
	padding: 0 !important;
	color: #0a3c60 !important;
	background: none !important;
}
span.stopname {
	color: inherit !important;
}
span.note {
	font-size: 11px;
}
div.mini-itinerary {
	border-top: 2px solid #B2AE95;
	background: #fff4ce url(/ticketing/FMT/selected-route-corner.png) no-repeat right bottom;
	padding: 10px;
	margin-bottom: 2em;
}
div.mini-itinerary h2 {
	margin: 0;
	font-weight: normal;
}
div.mini-itinerary p {
	padding-bottom: 0.5em;
	border-bottom: 3px dotted white;
}
div.mini-itinerary table {
	margin-left: 0;
}
div.confirm {
	background: #EAEDF2;
	margin-bottom: 2em;
	padding: 10px 0;
}
div.confirm table {
	width; 100%;
	color: black;
}
div.confirm td {
	text-align: center;
	padding: 0 15px;
	border-left: 3px dotted white;
}
div.confirm td:first-child {
	border-left: none;
}
table td {
	padding: 5px;
}
table.paxinfo {
	background: #EAEDF2;
	color: black;
}
table.paxinfo th {
	color: black;
}
table.account-info {
	color: black;
	max-width: 50%;
}
table.account-info p:first-child {
	margin-top: 0;
}
table.account-info p:last-child {
	margin-bottom: 0;
}
table.ticketlist,
table.date-error,
table.farelist,
table.verifypurchase,
table.paymentinfo {
	color: black;
	border: none !important;
}
table.farelist td,
table.date-error td {
	text-align: center !important;
	padding: 10px 15px !important;
	border: none !important;
}
table.ticketlist td {
	padding: 10px 15px !important;
	border: none !important;
}
table.verifypurchase td {
	text-align: left;
	border: none !important;
}
table.paymentinfo td {
	border: none !important;
}
table.ticketlist th.sorted {
	background: #555 url(/ticketing/FMT/sort-asc.png) no-repeat top center;
	color: #eee;
}
table.ticketlist th.revsorted {
	background: #555 url(/ticketing/FMT/sort-desc.png) no-repeat top center;
	color: #eee;
}
table.ticketlist tr:nth-child(even) td {
	background-color: #FFF4CE !important;
}
table.ticketlist tr:nth-child(odd) {
}
td.fare {
	color: #e57017 !important;
	font-weight: bold;
}
table.ticketlist a {
	color: #ee2925;
}
table.farelist td.restrictions span {
	color: inherit !important;
}
p.payment-header {
	color: #e57017 !important;
}
table.paymentinfo th.section-header {
	background: #516b7f;
	color: white !important;
	border: none !important;
}
table.paymentinfo th.top {
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
table.paymentinfo th {
}
table.paymentinfo td {
	text-align: left !important;
}
table.paymentinfo a {
	color: #ee2925;
}
.standard-case {
	text-transform: none !important;
}
.widget-note {
	font-style: italic !important;
}
.tandc {
	font-size: 16px !important;
}
#fare-note h2 {
	font-size: 1em;
	color: #25465F;
}
#fare-note strong {
	color: #8CA7BB;
}
#fare-note p.cc-info {
	padding-top: 1em;
	border-top: 2px solid #ccc;
}
div.verify-screen {
	background: #EAEDF2;
	border-radius: 10px;
	padding: 5px;
	overflow: auto;
	margin-top: 1em;
}
div.verify-screen table {
	background: white;
	border-radius: 10px;
	width: 75%;
	float: left;
}
div.verify-screen table table {
	width: 100%;
	margin-bottom: 1em;
	float: none;
}
div.verify-screen td {
	vertical-align: top;
}
div.verify-screen h2 {
	margin-top: 0;
}
div.verify-screen table.total {
	float: none;
	width: 23%;
	margin: 0 0 0 auto;
}
div.verify-screen tr.total td {
	color: #600;
	font-weight: bold;
	font-size: 125%;
}
div.verify-screen p.total {
	width: 23%;
	margin: 1em 0 1em auto;
}
div.verify-screen button {
	padding: 5px 20px;
}
#billing-info {
	background: #EAEDF2;
	border-radius: 10px;
	padding: 5px;
}
#billing-info h2 {
	margin-top: 0;
}
#billing-info table {
	background: white;
	border-radius: 10px;
	width: 75%;
	margin: 0 auto;
	font-size: 13px;
}
#billing-info th {
	padding: 5px;
}
#provided,
#footer {
	text-align: left !important;
}
button {
	font-family: 'Arial', 'Helvetica', sans-serif;
	margin: 0;
	vertical-align: baseline;
	*vertical-align: middle;
	line-height: normal;
	cursor: pointer;
	-webkit-appearance: button;
	*overflow: visible;
	cursor: pointer;
	color: #fff;
	border: none;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	padding: 5px 45px;
	background-color: #ee2925;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-khtml-border-radius: 6px;
	-o-border-radius: 6px;
	-moz-border-radius: 6px;
}
button:hover,
button:focus {
	text-decoration: none;
	background-color: #ee2925; /* change to a hover color */
}
button.tripactive {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	background-image: none;
	background-color: #EAEDF2;
	color: #adb6bf;
	text-transform: uppercase;
	line-height: 2em;
	font-size: 11px;
	padding: 5px 20px;
}
button.tripinactive {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	background-image: none;
	background-color: #ADB6BF;
	color: #eaedf2;
	text-transform: uppercase;
	line-height: 2em;
	font-size: 11px;
	padding: 5px 20px;
}
button.small,
a.button.small {
	padding: 4px 12px;
	font-weight: normal;
}
button.small:hover,
button.small:focus {
}
button.inactive {
	background-color: #eeeeee;
	font-weight: normal;
	color: black;
	text-shadow: none;
	/*
	background-image: -moz-linear-gradient(#cccccc 0%, #eeeeee 100%);
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#cccccc), to(#eeeeee));
	background-image: -webkit-linear-gradient(#cccccc 0%, #eeeeee 100%);
	background-image: -khtml-gradient(linear, 0% 0%, 0% 100%, from(#cccccc), to(#eeeeee));
	background-image: -o-linear-gradient(#cccccc 0%, #eeeeee 100%);
	background-image: -ms-linear-gradient(#cccccc 0%, #eeeeee 100%);
	background-image: linear-gradient(#cccccc 0%, #eeeeee 100%);
	*/
}
button.inactive:hover,
button.inactive:focus {
}
button.teal,
a.button.teal {
	color: #eee;
	text-shadow: none;
	background-color: #999;
	/*
	background-image: -moz-linear-gradient(#01c9c8 0%, #029998 100%);
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#01c9c8), to(#029998));
	background-image: -webkit-linear-gradient(#01c9c8 0%, #029998 100%);
	background-image: -khtml-gradient(linear, 0% 0%, 0% 100%, from(#01c9c8), to(#029998));
	background-image: -o-linear-gradient(#01c9c8 0%, #029998 100%);
	background-image: -ms-linear-gradient(#01c9c8 0%, #029998 100%);
	background-image: linear-gradient(#01c9c8 0%, #029998 100%);
	*/
}
button.teal:hover,
button.teal:focus {
	color: #222;
	background-color: #ccc;
	/*
	background-image: -moz-linear-gradient(#01eeed 0%, #00d3d2 100%);
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#01eeed), to(#00d3d2));
	background-image: -webkit-linear-gradient(#01eeed 0%, #00d3d2 100%);
	background-image: -khtml-gradient(linear, 0% 0%, 0% 100%, from(#01eeed), to(#00d3d2));
	background-image: -o-linear-gradient(#01eeed 0%, #00d3d2 100%);
	background-image: -ms-linear-gradient(#01eeed 0%, #00d3d2 100%);
	background-image: linear-gradient(#01eeed 0%, #00d3d2 100%);
	*/
}
button.big {
	padding:20px 0px;
	display:block;
	text-align: center;
}
button.big img {
	position: relative;
	top:-2px;
	margin:0px 4px 0px 0px;
}
p.triptype {
	background: #999;
	margin: 0 0 0 -10px;
}
p.triptype a {
	color: white;
	float: right;
	margin: 0;
	line-height: 32px;
	text-decoration: none;
}
p.triptype a:hover {
	color: yellow;
	text-decoration: underline;
}
p.triptype button {
	border-radius: 0;
	background: #999;
	color: white;
	text-transform: uppercase;
}
p.triptype button.active {
	background: #eee;
	color: red;
}
p.triptype button:hover {
	background: #eee;
	color: red;
}
p.triptype button img {
	vertical-align: middle;
}
tr.even {
	background: #ffe;
}
div.single-boarding-pass {
	position: relative;
	top: 0;
	left: 0;
}
table.verifypurchase th.payment,
table.paymentinfo th.payment {
	background: #70c0ff !important;
}
table.verifypurchase td.cc-info,
table.paymentinfo td.cc-info {
	background: #e7e7e7 !important;
}