/* SteamshipAuthority.com
/* TABLE OF CONTENTS
/* --------------------------------------------------------------------- */
/*
/*  Browser resets
/*  Links and hr
/*  Images
/*  Lists
/*  Form elements
/*  Grouping elements
/*  Tables
/*  Page Specific
/*
/* --------------------------------------------------------------------- */

/* --------------------------------------------------------------------- */
/* Browser resets
/* --------------------------------------------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

.js-show-on-load {
	display: none;
}

/* --------------------------------------------------------------------- */
/* Main elements
/* --------------------------------------------------------------------- */

html {
	color: #626262;
	margin: 0;
	padding: 0;
	overflow-y: scroll;
}

body {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	background: #a8d5f1 url(/img/site/page_bg.jpg) no-repeat center top;
}

body, input.text, input.password, textarea, select {

}

.todo {
	color: #ff0000;
}

.print_only {
	display: none;
}

/* --------------------------------------------------------------------- */
/* Headers
/* --------------------------------------------------------------------- */

h1, h2, h3, h4, h5, h6 {
	margin-bottom: 0.3em;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: normal;
	margin-top: 0.8em;
	line-height: 100%;
}

h1 {
	font-size: 30px;
	line-height: 1.33;
	padding: 0;
	color: #019bb6;
}

h2 {
	font-size: 22px;
	line-height: 1.0;
	padding: 0;
	color: #42657b;
}

h3 {
	font-size: 18px;
	line-height: 1.14;
	padding: 0;
}

h4 {
	color: #444;
	font-size: 16px;
	line-height: 1.33;
	padding: 0;
}

h5 {
	font-family: "Arial", Helvetica, sans-serif;
	font-weight: bold;
	padding: 0;
}

h6 {
	font-weight: normal;
	padding: 0;
}

/* --------------------------------------------------------------------- */
/* Content holders
/* --------------------------------------------------------------------- */

div {

}

p, pre, blockquote {
	margin: 0 0 14px 0;
}

pre, code {
	background-color: #f8f8f8;
	font-size: 0.9em;
	font-family: "Ubuntu Mono", "Monaco", "Courier New", Courier, monospace;
}

pre {
	white-space: pre;
	overflow: auto;
	padding: 1em;
	border: 1px solid #ccc;
	display: block;
	width: 660px;
}

code {
	padding: 0.2em;
}

blockquote {
	background-color: #f8f8f8;
	padding: 1em;
	font-size: 1.2em;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
}

/* --------------------------------------------------------------------- */
/* Links and hr
/* --------------------------------------------------------------------- */

a {

}

a:link {
	color: #008c99;
}

a:visited {
	color: #008c99;
}

a:active {
	color: #008c99;
}

a:hover {
	color: #00417d;
}

hr {
	height: 1px;
	border: none;
	margin-top: 1em;
	color: #ccc;
	background-color: #ccc;
}

a.debit_card_modal_link,
a.cc_policies_modal_link,
a.po_box_modal_link,
a.pp_policies_modal_link,
a.cc_gift_card_policies_modal_link {
	text-decoration: none;
}

.actionable {
	font-weight: bold;
	color: #008C99;
}
.actionable:hover {
	color: #00417d;
	cursor: pointer;
}

/* --------------------------------------------------------------------- */
/* Images
/* --------------------------------------------------------------------- */

img {
	border: none;
}

/* --------------------------------------------------------------------- */
/* Lists
/* --------------------------------------------------------------------- */

ul, ol {
	margin: 15px 0 1.4em 0;
	padding: 0;
}

ul li {
	margin-left: 18px;
	margin-bottom: 8px;
}

	ul ul {
		margin-left: 38px;
	}

ol li {
	margin-left: 18px;
	margin-bottom: 8px;
}

	ol.ordered_alpha li {
		list-style-type: lower-alpha;
	}


/* --------------------------------------------------------------------- */
/* Form elements
/* --------------------------------------------------------------------- */

form {
	margin: 1em 0;
}

	select option {
		-webkit-appearance: none;
		outline: 0;
	}

	form fieldset {
		margin: 0 0 1.5em 0;
	}
	form fieldset h3 {
		margin-bottom: .3em;
		border-bottom: 1px solid #CCC;
	}
	.main form h3 {
		margin-bottom: 25px;
		padding-bottom: .3em;
	}
	form .text label,
	form .password label,
	form .radios label,
	form .checkboxes label,
	form .select label,
	form .textarea label,
	form .file label {
		display: block;
	}
		form .radios, form .checkboxes .checkbox label {
			display: inline;
		}

	form textarea {
		width: 100%;
	}

	form textarea,
	form .text input,
	form .password input {
		font-size: 13px;
		font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
		width: 157px;
		padding: 4px;
		border: 1px solid #cccccc;
		background: #fefefe url(/img/site/field_bg.jpg) repeat-x top;
	}

	form .text input.hasDatepicker {
		background-image: url(/img/site/calendar_field_bg.jpg);
		background-repeat: no-repeat;
		background-position: top right;
		background-color: #fdfdfd;
	}

	form .text.disabled input.hasDatepicker,
	form .text input.hasDatepicker.disabled
   	{
		background: url(/img/site/calendar_field_bg_disabled.jpg) top right no-repeat #fdfdfd;
	}

		.ui-datepicker-unselectable.ui-state-disabled {
			color: #cccccc;
		}


	form.availability {
		margin: 9px 0 0 0;
		position: relative;
	}

	form.availability select {
	}

		form.availability .text {
			float: left;
			height: 30px;
		}

		form.availability .text label {
			width: 49px;
		}

		form.availability .select {
			display: block;
			float: left;
		}

		form.availability .select label {
			width: 40px;
			float: none;
			display: block;
		}

		form.availability .depart_return_container label {
			padding-top: 5px;
		}

			form.availability label {
				float: left;
				color: #4f788d;
				font-size: 15px;
				margin-right: 10px;
				font-family: Georgia, "Times New Roman", serif;
			}

			form.availability .radios {
				display: block;
				float: left;
				margin: 4px 0 4px 0;
				width: 100%;
			}

			form.availability .high_speed_with_vehicle_container .radio {
				float: none;
				width: 100%;
			}

			form.availability .radio:first-child {
				margin-right: 5px;
			}

			form.availability .radio {
				float: left;
				margin-top: 0;
				margin-right: 0;
				width: 105px;
			}

				form.availability .radio input {
					float: left;
					margin-right: 4px;
				}

				form.availability .radio label {
					display: block;
					margin-right: 4px;
					color: #526471;
					font-size: 12px;
					width: auto;
					line-height: 19px;
					font-family: Arial, Helvetica, sans-serif;
				}

		form.availability .submit {
			margin: 0 auto;
			clear: both;
		}

	form.sign_in {
		margin: 20px 0 10px 0;
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
		border-radius: 4px;
		border: 1px solid #cccccc;
		padding: 12px;
		position: relative;
	}

		form.sign_in .forgot_password {
			font-size: 12px;
			margin: 7px 0 0 0;
		}

			form.sign_in .forgot_password a {
				text-decoration: underline;
			}

		form.sign_in .help_icon {
			line-height: 1em;
		}

		form.sign_in .text {
			float: left;
			margin-right: 4px;
		}

		form.sign_in .select {
			height: 30px;
			display: block;
			float: left;
			width: 122px;
			/*margin-right: 24px;*/
		}

			form.sign_in .password {
				height: 37px;
				display: block;
				margin-top: 7px;
			}

			form.sign_in .password label {
				line-height: 30px;
				width: 122px;
				/*margin-right: 24px;*/
			}

			form.sign_in label {
				float: left;
				color: #4f788d;
				font-size: 15px;
				/*margin-right: 4px;*/
			}

			form.sign_in .radios {
				height: 35px;
				display: block;
				clear: left;
				margin-top: 12px;
			}

			form.sign_in .radio {
				float: left;
				margin-top: 5px;
				margin-right: 10px;
			}

				form.sign_in .radio input {
					float: left;
					margin-right: 10px;
				}

				form.sign_in .radio label {
					display: block;
					margin-right: 4px;
					color: #526471;
					font-size: 12px;
					line-height: 19px;
				}

		form.sign_in .submit {

		}

		form.availability .disabled {
			opacity: .5;
		}

.single_trip_info {
	margin: 6px 0 19px 27px;
	padding: 0;
	float: left;
}

	.single_trip_info p {
		margin: 0;
		padding: 0;
		font-size: 14px;
	}

label {
	display: block;
	margin-bottom: 5px;
}

div.input select {
	padding: 4px 5px !important;
	width: 99% !important;
}

div.input textarea {
	width: 94% !important;
}

div.input {
	margin-bottom:15px;
}
	div.input input,
	div.input select,
	div.input textarea {
		width: 632px;
		padding: 5px 10px;
		border: 1px solid #cccccc;
		background: #fefefe url(/img/site/field_bg.jpg) repeat-x top;
		font-size: 13px;
		color: #444;
	}
	div.input div.stacked_input {
		float:left;
		width:500px;
	}
		div.input div.stacked_input input {
			margin-bottom:4px;
		}
div.two_column div.input {
	float:left;
	margin-right:2%;
	width:47.5%;
}

div.two_column div.input input {
	width: 296px;
}

div.three_column div.input {
	float:left;
	margin-right:13px;
	width:212px;
}
	div.two_column div.last,
	div.three_column div.last {
		margin-right: 0;
	}

	/*
	div.two_column div.input input,
	div.two_column div.input select,
	div.two_column div.input textarea {
		width:160px;
	}
	*/
	div.three_column div.input input,
	div.three_column div.input select,
	div.three_column div.input textarea {
		width:86%;
	}
	div.checkbox input,
	div.radio input,
	div.three_column div.checkbox input,
	div.three_column div.radio input {
		width:auto;
	}
	div.checkbox label,
	div.radio label,
	div.three_column div.checkbox label,
	div.three_column div.radio label {
		display:inline;
		float:none;
		width:auto;
	}

.days_of_the_week .radio {
	white-space: nowrap;
	float: left;
	margin-right: 1em;
}


/* --------------------------------------------------------------------- */
/* form styling
/* --------------------------------------------------------------------- */

form textarea, form .text input.text_field,
form .password input.text_field,
.text_area {
	margin: 0px 0 20px 0;
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

select {
	margin-bottom: 20px;
	outline: 0;
}

input[type=file] {
    margin-bottom: 2em;
}

input:focus,
textarea:focus,
select:focus {
	box-shadow: 0px 0px 3px #76c7ff;
	-moz-box-shadow: 0px 0px 3px #76c7ff;
	-webkit-box-shadow: 0px 0px 3px #76c7ff;
}

.text_area {
	resize: vertical;
	height: 150px;
}

form div.radios div label,
form div.checkboxes div label {
	display: inline;
}

/* --------------------------------------------------------------------- */
/* Grouping elements
/* --------------------------------------------------------------------- */

fieldset {
	/*border: 1px solid #ccc;*/
	padding: 0;
	margin: 0;
}

legend {
	padding: 0;
	font-size: 1.2em;
	font-family: Georgia, "Times New Roman", serif;
	text-transform: uppercase;
}

.group:after {
	clear: both;
	content: ".";
	font-size: 0;
	display: block;
	height: 0;
	visibility: hidden;
}

/* IE6 */
* html .group {
  height: 1%;
}

.full_width {
	width: 100%;
}

.left {
	float: left;
}

.right {
	float: right;
}

/* --------------------------------------------------------------------- */
/* Tables
/* --------------------------------------------------------------------- */

table {
	width: 100%;
	border-spacing: 0;
	margin-bottom: 25px;
	border-collapse: collapse;
	border: 1px solid #ccc;
}

table tr th.last {
	border-right: 1px solid #cccccc;
}

table thead {
	border-bottom: 1px solid #cccccc;
}

table th {
	padding: .83em;
	text-align: left;
	font-size: 15px;
	font-weight: normal;
	color: #ffffff;
	background: #3096c3 url(/img/site/table_th_bg.gif) repeat-x;
	border-right: 1px solid #75b8d4;
	font-family: Georgia, "Times New Roman", Times, serif;
}

table tr {
	border-bottom: 1px solid #CCC;
	background: #ffffff url(/img/site/table_bg.gif) repeat-x bottom;
}

table tr.odd {
	background-color: #ffffff;
	background-image: none;
}

table td {
	padding: .83em;
	border-right: 1px solid #cccccc;

}
	table td.input_center {
		text-align: center;
	}

table tr th.subhead {
	background: none;
	background: url(/img/site/th_subhead_bg.jpg) repeat-x top left #306da8;
	border-top: 1px solid #cccccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #cccccc;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: bold;
}

	table tr.change_of_days td {
		color: #146d94;
		background: #d6f0fd;
		font-weight: bold;
	}

/*tr:nth-child(even) td {
	background: #fff;
}*/


caption {
	font-size: 12px;
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}

/* --------------------------------------------------------------------- */
/* Header/Layout/Footer
/* --------------------------------------------------------------------- */

#print_header {
	display: none;
}

.old_browser {
	background: #4f85a5;
	border-bottom: 4px solid #fff;
	color: #fff;
	font-size: 16px;
	padding: 16px 15%;
}
	.old_browser a,
	.old_browser a:hover,
	.old_browser a:visited {
		color: #fff;
		text-decoration: underline;
	}

#site {
	width: 975px;
	margin: 0 auto;
	padding: 0;
}

	#header {
		padding: 0;
		margin: 15px 0 0 0;
		position: relative;
	}

		#header .user_utility {
			margin: 0 0 10px;
			padding: 0;
			width: 294px;
			border: 1px solid #ffffff;
			height: auto;
			float: left;
			background: url(/img/site/utility_bg.png) repeat-x top left #e3e8f1;
		}

			#header .user_utility ul {
				margin: 0;
				height: auto;
				padding: 6px 0 6px 10px;
				background: url(/img/site/tall_title_bg_cap.png) no-repeat left center;
			}

				#header .user_utility ul li {
					list-style-type: none;
					margin: 0;
					padding: 0;
					font-size: 14px;
				}

				#header .user_utility ul li.my_account,
				#header .user_utility ul li.sitemanager {
					margin: 0px 5px;
				}

				#header .user_utility ul li.sign_in {
					padding-top: 0;
					font-weight: bold;
				}

				#header .user_utility ul li.new_user {
					display: block;
					padding-top: 0;
					font-weight: bold;
					margin-top: 4px;
					padding-top: 4px;
					border-top: 1px solid #656562;
					width: 98%;
				}

				#header .user_utility ul li.my_account,
				#header .user_utility ul li.sitemanager,
				#header .user_utility ul li.sign_out {
					padding-top: 4px;
					font-weight: bold;
					float: left;
				}

				#header .user_utility ul li.user_name {
					color: #2e567f;
					font-size: 15px;
					padding-left: 5px;
					text-transform: uppercase;
					font-family: Georgia, Constantia, Lucida, serif;
					width: 270px;
				}

				#header .user_utility ul li.sitemanager a,
				#header .user_utility ul li.my_account a {
					border-right: 1px solid #656562;
					padding-right: 6px;
				}

					#header .user_utility ul li a {
						/*display: block;*/
						text-decoration: none;
					}

		#header ul.utility {
			margin: 0;
			padding: 0;
		}
			#header ul.utility li {
				margin: 0 10px 0 0;
				padding: 0 0 0 20px;
				list-style-type: none;
				float: left;
				line-height: 16px;
				margin-bottom: 16px;
			}

			#header ul.utility li.email_list {
				background: url(/img/site/utility_email_icon.png) no-repeat left center;
			}

			#header ul.utility li.return_home {
				background: url(/img/site/utility_home.png) no-repeat left center;
			}

			#header ul.utility li.contact {
				background: url(/img/site/utility_contact_icon.png) no-repeat left center;
			}

			#header ul.utility li.search {
				background: url(/img/site/utility_search_icon.png) no-repeat left center;
				margin-right: 0;
			}

				#header ul.utility li a {
					margin: 0;
					padding: 0;
					color: #284e80;
					font-size: 14px;
					text-decoration: none;
					font-weight: bold;
				}

				#header ul.utility li ~ li {
					margin-left: 9px;
				}

		#logo {
			margin: 0 25px 0 0;
			padding: 0;
			display: block;
			float: right;
		}

span#unstyled_title {
	visibility: hidden;
}

#torso {
	min-height: 300px;
	margin: 0;
	padding: 0;
	background: #FFFFFF url(/img/site/faux_supplemental_bg.png) repeat-y;
	width: 100%;
}

.faux_column {
	background: url(/img/site/faux_supplemental_bg.png) repeat-y;
	overflow: auto;
	/*width: 100%;*/
}
	.main {
		width: 737px;
		float: left;
		background-color: #feffff;
		margin: 0;
		padding: 0 0 14px 0;
		position: relative;
		z-index: 0;
	}

		.main ul, .full_width_main ul {
			margin: 20px 10px 25px 10px;
		}

			.main ul li, .full_width_main ul li {
				background: url(/img/site/bullet_bg.png) no-repeat 0 .4em;
				list-style-type: none;
				margin-left: 0;
				padding: 0 0 0 16px;
				line-height: 1.5;
				background-color: transparent;
			}

				.main ul li ul,
				.main ul li ul li
				.full_width_main ul li ul,
				.full_width_main ul li ul li {
					margin: 0px;
					padding: 0px;
					background: none;
				}

				.main ul li ul,
				.full_width_main ul li ul {
					margin: .2em 0 .3em;
				}

				.main ul li ul li,
				.full_width_main ul li ul li {
					margin: 0px;
					padding: 0px;
					background: none;
					background: url(/img/site/bullet_nested.png) no-repeat 4px 6px;
					padding-left: 16px;
				}

			.main ol li {
				line-height: 1.5;
			}

	.main_content {
		padding: 0 30px 80px 30px;
	}

		.main_content .callout {
			width: 185px;
			float: right;
			border: 1px solid #ccc;
			padding: 14px;
		}

		.main_content .note {
			background-color: #fff8e6;
			border-radius: 4px;
			border: solid 1px #ebd293;
			color: #755827;
			font-size: 1.1em;
			margin-bottom: 1.5em;
			padding: 10px;
		}
			.main_content > :last-child {
				margin-bottom: 0;
			}

			.main_content .note.thin {
				width: 59%;
			}

			.main_content .callout p {
				font-size: 13px;
				margin: 4px 0 0 0;
				float: left;
			}

	.main_content_vertical {
		float: left;
		margin: 0;
		padding: 30px;
		width: 423px;
	}

		.main .image_left {
			float: left;
			margin-right: 24px;
		}

		.main .image_right {
			float: right;
			margin-left: 24px;
		}

	.main .highlight {
		width: 675px;
		padding: 0;
		margin: 0 0 20px 0;
		display: block;
		background: url(/img/site/highlight_bg_top.jpg) repeat-x top left;
	}

	.main .group .section .highlight {
		width: auto;
		margin-top: 20px;
	}

		.main .highlight p {
			color: #534d3d;
			font-style: italic;
			font-size: 16px;
			text-align: center;
			font-family: Georgia, "Times New Roman", serif;
			margin: 0;
			padding: 16px 68px 27px 68px;
			background: url(/img/site/highlight_bg_bottom_bg.jpg) no-repeat bottom center;
		}

		.main .group .section .highlight p {
			padding: 16px 30px 27px;
		}

	.main a {
		text-decoration: none;
	}

	.main p {
		margin: 0 0 25px 0;
		padding: 0;
		line-height: 1.5;
	}

		.main h1, .full_width_main h1 {
			background-color: #ffffff;
			display: inline;
			padding-right: 3px;
		}

		.main h2 {
			margin-bottom: .7em;
			line-height: 1.3em;
		}

		.main h3 {
			color: #1d8073;
			margin: 16px 0 9px 0;
			padding: 0;
		}

		.main table h3 {
			margin: 0;
		}

			.main .title_marquee,
			.full_width_main .title_marquee {
				border-bottom: solid 1px #cfd0d1;
				margin-bottom: 13px;
				width: 100%;
			}

				.main .title_marquee h1, .full_width_main .title_marquee h1 {
					position: relative;
					bottom: -10px;
					padding-right: 5px;
				}

			.main .title_marquee_vertical {
				border-bottom: solid 1px #cfd0d1;
				margin: 13px 0;
				width: 62%;
			}

				.main .title_marquee_vertical h1,
				.full_width_main .title_marquee_vertical h1 {
					position: relative;
					bottom: -10px;
					padding-right: 5px;
				}


		.main .featured_photo_contain {
			position: relative;
			margin: 0;
			padding: 0;
			width: 737px;
			height: 234px;
		}

			.main .photo_treatment {
				position: relative;
				top: -18px;
				left: 0;
				height: 47px;
				background: url(/img/site/main_photo_treatment_bg.png) no-repeat;
			}

		.main .featured_photo_contain_vertical {
			position: relative;
			margin: 0 0 20px 30px;
			padding: 0;
			width: 254px;
			height: 493px;
			float: right;
		}

			.main .photo_treatment_vertical {
				position: relative;
				bottom: 23px;
				height: 26px;
				background: url(/img/site/main_vertical_photo_treatment_bg.png) no-repeat;
			}

.callout_right,
.callout_left,
.callout_center {
	float: right;
	border: solid 6px #ddd9cc;
	margin: 0 0 20px 40px;
	position: relative;
}

.callout_left {
	float: left;
	margin: 0 40px 20px 0;
}

.callout_left {
	float: none;
	margin: 0 auto 40px auto;
}

	.callout_right img.iya_ticketbooth {
		width:207px;
	}

.callout_right span,
.callout_left span,
.callout_center span {
	width: 100%;
	height: 100%;
	-moz-box-shadow: inset 2px 2px #efece6, inset -2px -2px #efece6, inset 0px 0px 8px #444, inset 0px 0px 10px #444;
	box-shadow: inset 2px 2px #efece6, inset -2px -2px #efece6, inset 0px 0px 8px #444, inset 0px 0px 10px #444;
	position: absolute;
}

.callout_right img,
.callout_left img,
.callout_center img {
	display: block;
}

img.callout_image {
	border: solid 6px #ddd9cc;
	margin: 0 0 5px 0;
	padding: 0;
}


/* Callout Buttons */

a.text_button,
.submit_button {
	color: #ffffff;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: .02em;
	padding: 10px 20px;
	background: url(/img/site/text_button.jpg) repeat-x top left #f98a0e;
	border: solid 1px #e87c00;
	border-radius: 4px;
	display: inline-block;
	text-decoration: none;
	font-size: 13px;
	line-height: 1em;
	margin: 0 0 1.4em 0;
	cursor: pointer;
}

.submit_button.disabled {
	background: url(/img/site/text_button_disabled.jpg) repeat-x top left #d7a46a;
	border: 1px solid #d7a86e;
	cursor: default;
}
	.submit_button.disabled:hover {
		background: url(/img/site/text_button_disabled.jpg) repeat-x top left #d7a46a;
		border: 1px solid #d7a86e;
		color: #FFFDDC;
	}

.text_button.delete,
.submit_button.delete {
    background: #888;
    border-color: #555;
}
    .text_button.delete:hover,
    .submit_button.delete:hover {
        background: #777;
        border-color: #555;
    }

a.text_button:hover,
.submit_button:hover {
	border-color: #b75a00;
	color: #fff;
	background: url(/img/site/text_button_hover.jpg) repeat-x top left #f87f0b;
}

.show_more {
	margin: 14px 20px;
}

.highlight a.text_button {
	margin: 0;
	font-style: normal;
}

	.main table {
		font-size: 12px;
	}

		.main table th {
		}

	.main table.fares {

	}

	.main table.fares th.fare_date {
		width: 153px;
	}

	.main table.fares th.fare_type {
		width: 74px;
	}

	.main table.parking th.lot_name {
		width: 179px;
	}

.export_button {
	float: right;
	font-size: 14px;
	padding: 6px 13px;
	text-decoration: none;
}

.currently_parking_callout {
	border-radius: 5px;
	background-color: #F9FDFF;
	border: 3px solid #A8D5F1;
	padding: 5px 15px 26px 15px;
	float: right;
	width: 168px;
	margin-left: 10px;
}

	.currently_parking_callout h4 {
		margin: 5px 0 7px 0;
		color: #006699;
		line-height: 1.2em;
	}

	.currently_parking_callout p {
		margin: 0;
		color: #333;
	}

	.currently_parking_callout ul {
		margin: 0 0 0 6px;
	}

	.supplemental {
		margin: 0;
		padding: 0 0 146px 0;
		width: 238px;
		float: left;
	}

		.supplemental .promo {
			margin: 28px auto 0 auto;
			padding: 0;
			width: 197px;
			position: relative;
		}

			.supplemental .promo .current_promo_ribbon {
				background: url(/img/site/supplemental_promo_ribbon.png) no-repeat;
				position: absolute;
				top: -17px;
				left: 0;
				width: 178px;
				height: 40px;
				margin: 0;
				padding: 0;
			}

				.supplemental .promo .current_promo_ribbon p {
					color: #42657b;
					font-size: 13px;
					font-family: Georgia, Constantia, Lucida, serif;
					margin: 0;
					padding: 9px 0 0 18px;
				}

			.supplemental .promo img {
				width: 194px;
			}

		.supplemental .supplemental_nav_wrapper {
			background: url(/img/site/supplemental_nav_bg.png) repeat-y;
		}

		.supplemental_nav_wrapper ul.supplemental_nav {
			margin: 0;
			padding: 12px 0 4px 5px;
			background: url(/img/site/supplemental_nav_wrapper_bg.png) no-repeat center bottom;
			border-bottom: 1px solid #aea48d;
			width: 233px;
		}

			.supplemental_nav_wrapper ul.supplemental_nav li {
				margin: 0;
				padding: 0;
				list-style-type: none;
				border-bottom: 1px solid #fefefe;
			}

			.supplemental_nav_wrapper ul.supplemental_nav li:last-child {
				border-bottom: none;
			}

				.supplemental_nav_wrapper ul.supplemental_nav li a {
					color: #5e5848;
					text-decoration: none;
					font-family: Georgia, "Times New Roman", serif;
					display: block;
					margin: 0;
					padding: 7px 0 7px 10px;
				}

					.supplemental_nav_wrapper ul.supplemental_nav li a:hover {
						color: #28251c;
					}

				.supplemental_nav_wrapper ul.supplemental_nav li.active {
					border-bottom: none;
					position: relative;
					top: -1px;
				}

				.supplemental_nav_wrapper ul.supplemental_nav li.active a {
					background: url(/img/site/supplemental_nav_active_item_bg.png) no-repeat;
                    background-size: 100% 100%;
					color: #e58311;
					font-weight: bold;
					padding: 10px 0 10px 5px;
				}

		.supplemental .callout {
			width: 206px;
			height: 37px;
			margin: 0 0 30px 0;
			padding: 16px;
			background: url(/img/site/supplemental_callout_button_bg.jpg) no-repeat;
		}

		.supplemental .callout .text_button {
			width: 154px;
			text-align: center;
			font-size: 18px;
			margin: -2px 0px 0px 4px;
		}

	a.tall_button {
		border: 1px solid #9fc0d5;
		background: url(/img/site/tall_title_bg_cap.png) no-repeat left 0;
		padding: 0 0 0 4px;
		display: block;
		color: #5a6166;
		text-decoration: none;
		float: left;
		text-transform: uppercase;
		font-family: Georgia, Constantia, Lucida, serif;
	}

		a.tall_button span {
			padding: 6px 11px;
			display: block;
			background: url(/img/site/tall_title_bg.png) repeat-x 0 bottom;
		}

		a.tall_button span span {
			padding: 0px;
			display: inline;
			background: none;
			text-transform: none;
		}

	a.tall_button.last {
		margin-left: 15px;
	}

	a.short_button {
		border: 1px solid #9fc0d5;
		background: url(/img/site/short_title_bg_cap.png) no-repeat left 0;
		display: block;
		color: #5a6166;
		text-decoration: none;
		float: left;
		font-size: 11px;
		padding: 0 0 0 3px;
		text-transform: uppercase;
		font-family: Georgia, Constantia, Lucida, serif;
	}

		a.short_button span {
			padding: 4px 7px;
			display: block;
			background: url(/img/site/short_title_bg.png) repeat-x 0 bottom;
		}

		.tab_container div.active {
			display: block;
		}

/* Return to Top */

a.top {
	background: url(/img/site/top_a.gif) no-repeat top right;
	float: left;
	display: block;
	height: 39px;
	padding: 0;
	text-decoration: none;
	font-size: 13px;
	font-family: Georgia, "Times New Roman", Times, serif;
	color: #4287a1;
	position: relative;
	top: -5px;
	left: -30px;
	line-height: 0px;
}

a.top:hover {
	color: #196987;
}

a.top span {
	display: block;
	padding: 15px 30px 35px 30px;
	background: url(/img/site/top_span.gif) no-repeat top left;
}

.alert_highlight {
	background: url(/img/site/highlight_alert_bg.jpg) repeat-y #E7E7E7;
	border:1px solid #000;
	width: 675px;
	padding: 0;
	margin: 0 auto 31px auto;
	position: relative;
}
	#homepage .alert_highlight {
		width: 933px;
	}

	#homepage .alert_highlight p.title {
		float: left;
		width: 205px;
		background: url(/img/site/highlight_title_bg.jpg) no-repeat #E7E7E7;
		text-align: left;
	}
	.alert_highlight p.title {
		background: url(/img/site/advisory-banner.png) repeat-x #c71b1b;
		color: #ffffff;
		font-size: 16px;
		font-family: Georgia, Constantia, Lucida, serif;
		line-height:35px;
		height:35px;
		margin: 0;
		padding: 0px 0 0px 8px;
		text-transform: uppercase;

		text-align: center;
	}
	.alert_highlight .advisories {
		background: url(/img/site/highlight_advisories_bg.jpg) repeat-x #E7E7E7;
		color: #5b5b5b;
		float:left;
		font-size: 13px;
		font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
		padding: 0 4px;
	}
		#homepage .advisories {
			width: 667px;
			padding: 0 25px;
			position: relative;
		}
		.alert_highlight .advisories h2 .date {
			color: #C51B1B;
			font-size: 15px;
			font-style: italic;
		}
		.alert_highlight .advisories p {
			margin-bottom: 0;
			margin-top: 8px;
			padding: 8px 0;
		}
		.alert_highlight .advisories p + p {
			border-top: 1px solid #ccc;
			padding-top: 16px;
		}

		#homepage .advisories.collapsed {
			height: 16em;
			overflow: hidden;
		}

			#homepage .advisories.expanded::after,
			#homepage .advisories.collapsed::after {
				background: linear-gradient(to bottom, rgba(0,0,0,0) 70%, #e7e7e7 85%);
				bottom: 0;
				color: #008c99;
				content: 'Read More';
				display: flex;
				display: flex;
				flex-flow: column-reverse;
				font-weight: bold;
				left: 0;
				line-height: 2;
				position: absolute;
				right: 0;
				text-align: center;
				text-decoration: underline;
				top: 0;
			}

			#homepage .advisories.expanded {
				padding-bottom: 1.5em;
			}

			#homepage .advisories.expanded::after {
				content: 'Close';
				background: transparent;
			}

	#footer {
		margin: 0;
		padding: 0;
		position: relative;
		background: url(/img/site/footer_bg.jpg) repeat-x top left #4f85a5;
	}

		#footer li {
			list-style-type: none;
		}

		#footer h4.title {
			background: url(/img/site/footer_title_bg_cap.png) no-repeat left 0;
			padding: 0 0 0 12px;
			display: block;
			color: #FFFFFF;
			text-decoration: none;
			float: left;
			text-transform: uppercase;
			font-family: Georgia, Constantia, Lucida, serif;
			font-size: 14px;
			line-height: normal;
			position: absolute;
			top: -20px;
			left: 12px;
			font-weight: normal;
		}

			#footer h4.title span {
				padding: 6px 9px 12px 0;
				display: block;
				background: url(/img/site/footer_title_bg.png) repeat-x right bottom;
				line-height: 16px;
			}

			#footer .reservations_offices {
				margin: 0;
				padding: 0px;
				float: left;
				position: relative;
				background: #3f7597;
				height: 220px;
			}

				#footer .reservations_offices h5 {
					color: #c4d3dd;
					text-transform: uppercase;
					clear: both;
					margin-bottom: .5em;
					font-family: Georgia, "Times New Roman", Times, serif;
					font-weight: normal;
					border-bottom: none;
				}

				#footer .reservations_offices .reservation_info,
				#footer .reservations_offices .general_offices {
					background: url(/img/site/footer_aside_bg.jpg) repeat-x top left #326589;
					padding: 22px 11px 20px 23px;
				}

				#footer .reservations_offices .general_offices {
					padding-top: 5px;
				}

				#footer .reservations_offices ul {
					margin: 5px 0 2px 0;
					padding: 0;
					float: left;
					display: block;
				}

				#footer .reservations_offices ul li {
					margin: 0;
					padding: 0;
					float: left;
					color: #eff7fc;
					font-size: 12px;
					margin-right: 22px;
					line-height: 15px;
				}

			#footer .terminal_locations {
				position: relative;
				margin: 0;
				padding: 23px;
				float: left;
			}

				#footer .terminal_locations ul {
					margin: 11px 0 0 0;
					padding: 0;
				}

					#footer .terminal_locations ul li {
						margin: 0;
						padding: 0;
						float: left;
						display: block;
						line-height: 15px;
						margin-right: 25px;
					}


					#footer .terminal_locations ul li.last {
						margin-right: 0;
					}


						#footer .terminal_locations ul li h5 {
							font-family: Georgia, Constantia, Lucida, serif;
							font-size: 14px;
							text-transform: uppercase;
							color: #ffffff;
							margin: 0 0 10px 0;
							padding: 0;
							border-bottom: none;
						}

						#footer .terminal_locations ul li h5 a {
							font-weight: normal;
						}

						#footer .terminal_locations ul li p {
							color: #eff7fc;
							font-size: 12px;
						}

						#footer .terminal_locations ul li p.phone_number {
							font-size: 11px;
							display: block;
						}

						#footer .terminal_locations ul li p.directions {
							color: #FFFFFF;
							margin: 0;
							padding: 0;
						}

						#footer .terminal_locations ul li a {
							color: #8feef4;
						}

						#footer .terminal_locations ul li span.terminal_detail {
							color: #9fcae5;
							font-size: 11px;
						}

						#footer .terminal_locations ul.direction_links {
							margin: 4px 0 0 0;
							padding: 0;
						}

							#footer .terminal_locations ul.direction_links li {
								font-size: 12px;
								float: left;
								width: auto;
								margin: 0 10px 0 0;
								padding: 0;
							}
		#footer #bottom {
			margin: 0;
			padding: 0;
			clear: both;
			background-color: #ffffff;
			height: 36px;
		}

			#footer #bottom .copyright {
				background-color: #f8f8f8;
				width: 260px;
				margin: 0;
				padding: 12px 0 10px 23px;
				float: left;
			}

				#footer #bottom p {
					margin: 0;
					padding: 0;
					color: #497a99;
					font-size: 11px;
				}

			#footer #bottom ul {
				margin: 13px 0 0 12px;
				padding: 0;
				float: left;
			}

				#footer #bottom ul li {
					margin: 0 10px;
					padding: 0;
					float: left;
					font-size: 11px;
				}

					#footer #bottom ul li a {
						text-decoration: none;
					}

/* --------------------------------------------------------------------- */
/* Navigation
/* --------------------------------------------------------------------- */

.nav_wrapper {
	 position: relative;
}

	.nav_placeholder {
		height: 50px;
		padding: 0;
		margin: 0;
		background: url(/img/site/secondary_nav_bg.png) repeat-x 0px 50px;
		width: 100%;
	}

		#close_button {
			margin: 0;
			padding: 5px 0 0 28px;
			position: absolute;
			top: 154px;
			left: 891px;
			background: url(/img/site/nav_dropdown_close.png) no-repeat;
			color: #5b5b5b;
			text-decoration: none;
			width: 56px;
			height: 24px;
			z-index: 1;
			display: none;
		}

		#filter_site_by {
			position: absolute;
			z-index: 1;
			width: 254px;
			height: 49px;
			right: 0;
			top: 0;
			background: url(/img/site/filter_site_by_bg.png) repeat-x;
		}

			#filter_site_by p {
				top: 16px;
				left: 14px;
				position: absolute;
				color: #375367;
				font-size: 15px;
				font-family: Georgia, Constantia, Lucida, serif;
			}

			#island_preference {
				position: absolute;
				right: 13px;
				top: 14px;
				z-index: 1;
			}
				#island_preference[disabled] {
					-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
					filter: alpha(opacity=70);
					opacity: .7;
				}

ul.primary_nav {
	position: absolute;
	top: 0;
	background: url(/img/site/primary_nav_bg.png) repeat-x 0 top;
	height: 50px;
	margin: 0;
	padding: 0;
	z-index: 1;
	width: 975px;
	-webkit-box-shadow: 0 6px 9px -9px #000;
	-moz-box-shadow: 0 6px 9px -9px #000;
	box-shadow: 0 6px 9px -9px #000;
}

	ul.primary_nav li {
		float: left;
		list-style-type: none;
		padding: 0;
		margin: 0;
		font-size: 18px;
		height: 50px;
		text-transform: uppercase;
		z-index: 1;
	}

		ul.primary_nav li a {
			display: block;
			padding: 17px;
			margin: 0;
			list-style-type: none;
			color: #28526d;
			text-decoration: none;
			font-size: 14px;
			font-family: Georgia, Constantia, Lucida, serif;
			cursor: pointer;
		}

			ul.primary_nav li.open {
				background: url(/img/site/secondary_open_arrow.png) no-repeat center 49px;
				height: 61px;
			}

			ul.primary_nav li.active.open {
				background: url(/img/site/secondary_open_arrow.png) no-repeat center 46px;
				height: 61px;
			}

		ul.primary_nav li.active {
			color: #E47B00;
			border-top: 3px solid #FFC409;
		}

			ul.primary_nav li.active a {
				color: #E47B00;
				padding-top: 14px;
			}

			.secondary_nav_container {
				width: 975px;
			}

ul.secondary_nav {
	display: none;
	margin: 0;
	padding: 10px 0 0 0;
	height: 132px;
	position: absolute;
	left: 0;
	top: 50px;
	width: 100%;
	z-index: -1;
	-webkit-box-shadow: 0 8px 13px -10px #222;
	-moz-box-shadow: 0 8px 13px -10px #222;
	box-shadow: 0 8px 13px -10px #222;
}

	ul.secondary_nav li {
		float: none;
		width: 173px;
		font-size: 12px;
		margin: 0 0 0 15px;
		padding: 6px 0 6px 10px;
		text-transform: none;
		height: auto;
		border-top: 1px solid #aad0dc;
		background: url(/img/site/secondary_nav_arrow.png) no-repeat left center;
	}

	ul.secondary_nav li.nav_column {
		float: left;
		width: auto;
		margin: 4px 0 0 0;
		border: none;
		background: none;
	}

	ul.secondary_nav li ul {
		margin: 0;
	}

		li.schedules ul.secondary_nav {
			background: url(/img/site/supplemental_coast.png) no-repeat bottom right;
		}

		li.reservations ul.secondary_nav {
			background: url(/img/site/supplemental_ship.png) no-repeat bottom right;
		}

		li.visitors ul.secondary_nav {
			background: url(/img/site/inline/2018/visitor-nav.png) no-repeat bottom right;
			background-size: auto 100%;
		}

		li.residents ul.secondary_nav {
			background: url(/img/site/inline/2018/residents-nav.png) no-repeat bottom right;
			background-size: auto 100%;
		}

		li.traveling_today ul.secondary_nav {
			background: url(/img/site/supplemental_travelers.png) no-repeat bottom right;
		}

		li.about ul.secondary_nav {
			background: url(/img/site/supplemental_captain.png) no-repeat bottom right;
		}

		ul.primary_nav ul.secondary_nav li.active {
			border-top: 1px solid #aad0dc;
		}

		ul.primary_nav ul.secondary_nav li.active:first-child {
			border-top: none;
		}

	ul.secondary_nav li:first-child {
		border-top: none;
	}

	ul.secondary_nav li a {
		font-size: 13px;
	}

	ul.primary_nav ul.secondary_nav li a {
		margin: 0;
		padding: 0;
		font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
		cursor: pointer;
		color: #28526D;
	}

		ul.primary_nav ul.secondary_nav li.active a {
			padding: 0;
			color: #E47B00;
		}

/* --------------------------------------------------------------------- */
/* Common Styles
/* --------------------------------------------------------------------- */

.success,
.error {
	font-weight:bold;
	padding: 11px 10px 11px 70px !important;
}


.error {
	background: #fef4f4 url(/img/site/icons/error.jpg) no-repeat top left;
	color:#d04444;

}
	.main .error p {
		margin-bottom: 1em;
	}
	.main .error ul {
		margin-left: 0;
	}
	.main .error ul li {
		background-image:none;
		line-height:1.1em;
		list-style-type:square;
		padding-left:0;
	}
.success {
	background: #eefbee url(/img/site/icons/success.jpg) no-repeat top left;
	color: #217921;
}

#cancellation_summary table {
	display: none;
}

#cancellation_summary p.help {
	margin-top: 30px;
}

#cancellation_summary .full_width_main.cancelling .reminder_text {
	display: none;
}

#cancellation_summary .full_width_main.cancelling .page_only_buttons {
	margin-top: 30px;
}

.full_width_main.cancelling .success {
	background: #f8f8f8 url(/img/site/icons/cancelled.jpg) no-repeat top left;
	color: #575756;
}

.full_width_main.cancelling h2,
.full_width_main.cancelling h3, .full_width_main.cancelling h4 ,
.full_width_main.cancelling p {
	color: #575756 !important;
	box-shadow: none !important;
}

.full_width_main.cancelling table, .full_width_main.cancelling tr, .full_width_main.cancelling td,
.full_width_main.cancelling th {
	color: #575756 !important;
	border-color: #575756 !important;
	background-color: #f8f8f8 !important;
	box-shadow: none !important;
}

.full_width_main.cancelling table.trip_details {
	width: 103.7%;
}

/*.required {
	color:#DF0D3D;
}*/

/* filetype icons */

a.pdf,
a.word,
a.zip,
a.excel,
a.powerpoint,
a.image {
	padding: 10px 0 0 25px;
	background: url(/img/site/filetypes/16/default.png) no-repeat 0 .4em;
}

a.pdf { background: url(/img/site/filetypes/16/pdf.png) no-repeat 0 .6em; }
a.word { background: url(/img/site/filetypes/16/word.png) no-repeat 0 .4em; }
a.zip { background: url(/img/site/filetypes/16/zip.png) no-repeat 0 .4em; }
a.excel { background: url(/img/site/filetypes/16/excel.png) no-repeat 0 .4em; }
a.powerpoint { background: url(/img/site/filetypes/16/powerpoint.png) no-repeat 0 .4em; }
a.image { background: url(/img/site/filetypes/16/image.png) no-repeat 0 .4em; }

a.inline {
	background-position: 5px .7em;
}

ul li a.pdf {
	padding-top: 0;
}

/* --------------------------------------------------------------------- */
/* Two Columned Content
/* --------------------------------------------------------------------- */

.way_to_go .section:first-child,
.directions_block .section:first-child,
.advertising_content .section:first-child,
.accessibility_content .section:first-child,
.island_transportation_content .section:first-child,
.info_content .section:first-child,
.accommodations_content .section:first-child,
.contact_content .section:first-child,
.tour_content .section:first-child,
.security_content .section:first-child,
.wait_content .section:first-child {
	margin-right: 4%;
}

.way_to_go .section,
.directions_block .section,
.advertising_content .section,
.accessibility_content .section,
.island_transportation_content .section,
.info_content .section,
.accommodations_content .section,
.contact_content .section,
.tour_content .section,
.security_content .section,
.wait_content .section {
	width: 48%;
	float: left;
	margin-right: 0%;
}

.giftcards_content .section {
	width: 62%;
	float: left;
	margin-right: 0%;
}

.giftcards_content .section:first-child {
	margin-right: 4%;
	width: 30%;
}

.number_check {
	float: left;
	margin: 0;
	padding: 0;
	height: 73px;
}

.number_balance {
	margin: 0;
	padding: 0;
	float: left;
	width: 92%;
}

	.number_balance h2 {
		margin-top: 0;
		font-size: 22px;
	}

	.number_balance p.help {
		font-size: 18px;
	}

.gift_card_balance_details {
	color: #483717;
}

table td.on_time {
	background: url(/img/site/on_time_icon.png) no-repeat 7px 8px;
	padding-left: 26px;
	color: #3c9561;
}

	table td img.highspeed_icon {
		margin: -1px;
	}


table td.cancelled,
table td.diverted,
table td.delayed {
	background: url(/img/site/exception_icon.png) no-repeat 7px 8px;
	padding-left: 26px;
	color: #b5342d;
}


/* --------------------------------------------------------------------- */
/* Page Specific
/* --------------------------------------------------------------------- */

#homepage #torso {
	margin: 0;
	padding: 0;
	background-image: none;
	background-color: #ffffff;
}

	#homepage #torso h3 {
		color: #4f4f4f;
	}

	#homepage #torso .banner {
			width: 942px;
			margin: 0;
			padding: 29px 16px 0px 16px;
			float: left;
		}

		#homepage #torso .main {
			width: 642px;
			margin: 35px 0 0 0;
			padding: 0 10px 16px 16px;
			float: left;
		}

			#homepage #torso .main p {
				margin-top: 2px;
				line-height: 19px;
				margin-bottom: 26px;
			}

			#homepage #torso .main .section {
				width: 286px;
				margin: 0 0 0 0;
				padding: 0;
				float: left;
			}

			#homepage .title_marquee {
				background: url(/img/site/title_border_bg.png) repeat-x 0 2px;
				border: none;
			}

			#homepage .tall_button_marquee {
				background: url(/img/site/title_border_bg.png) repeat-x 0 5px;
				height: 19px;
				margin: 17px 0 0 0;
			}

			#homepage .short_button_marquee {
				background: url(/img/site/title_border_bg.png) repeat-x 0 2px;
				height: 25px;
				margin: -10px 0 35px 0;
			}

				#homepage #torso .main .section p {
					font-size: 13px;
					width: 245px;
					line-height: 16px;
				}

            #homepage #torso .section.high_speed_availability {
                width: auto;
                float: none;
                margin-right: 18px;
            }

                #homepage #torso .section.high_speed_availability .vehicle_space,
                #homepage #torso .section.high_speed_availability .high-speed_passenger_ferry {
                    width: 46%;
                    float: left;
                }
                #homepage #torso .section.high_speed_availability .high-speed_passenger_ferry {
                    float: right;
                }

			#homepage #torso .main .section .section_icon {
				float: right;
			}

		#homepage #torso .main h2 {
			color: #42657b;
			margin: 0;
			padding: 0;
			padding-right: 6px;
			background-color: #FFFFFF;
			display: inline;
			font-size: 21px;
		}

		#homepage #torso .supplemental {
			margin: 35px 0 0 0;
			padding: 0;
			float: left;
			background: none;
			background-image: none;
			width: auto;
		}

		#homepage #torso .supplemental .video {
			width: 286px;
		}
			#homepage #torso .supplemental .video iframe {
				max-width: 100%;
                height: auto;
			}

			#homepage #torso .supplemental .video .title_marquee {
				margin-bottom: 16px;
			}

			#homepage #torso .supplemental .video h2 {
				display: inline;
				padding: 0;
				margin: 0;
				padding-right: 6px;
				background-color: #fff;
			}

        #homepage #torso .supplemental .faqs {
            width: 286px;
            margin-bottom: 32px;
        }
            #homepage #torso .supplemental .faqs h2 {
				display: inline;
				padding: 0;
				margin: 0;
				padding-right: 6px;
				background-color: #fff;
			}


		#homepage #current_status {
			clear: both;
			padding: 24px 24px 0;
		}

			#homepage #current_status h1 {
				color: #42657b;
				left: 0;
				margin-top: 0;
				position: absolute;
				top: 0;
			}

		.tab_container {
			position: relative;
			margin: 0;
		}

			.tab_container h3 {
				margin: 9px 0 12px 0;
			}

			.tab_container .sections {
				display: flex;
				justify-content: space-between;
			}

			.tab_container .section {
				width: 276px;
			}

			.tab_container .section.parking {
				display: flex;
				flex-flow: column nowrap;
			}

		ul.status_tabs {
			z-index: 2;
			position: relative;
			margin: 0;
			padding: 0;
		}

		ul.status_tabs li {
			display: inline;
			margin: 0;
			padding: 0;
		}

			ul.status_tabs a {
				display: block;
				float: right;
				padding: 1em 2em;
				line-height: 1;
				border-top: 1px solid #8db5c8;
				border-right: 1px solid #8db5c8;
				border-bottom: none;
				border-left: 1px solid #8db5c8;
				font-weight: bold;
				color: #FFFFFF;
				text-decoration: none;
				border-left-width: 0;
				font-family: Georgia, Constantia, Lucida, serif;
				font-weight: normal;
				font-size: 16px;
				background: #489ACA;
				text-align: center;
			}

			ul.status_tabs .active a {
				background-image: none;
				border-bottom-color: #fafcfe;
				background-color: #E4F2FA;
				color: #42657b;
			}

			ul.status_tabs .first a {
				border-left-width: 1px;
			}

			.tab_content {
				clear: both;
				border: 1px solid #8db5c8;
				padding: 6px 16px 0;
				display: none;
				color: #666;
				position: relative;
				z-index: 1;
				top: -1px;
				background: #fafcfe url(/img/site/tab_content_bg.png) repeat-x 0 bottom;
			}

			p.disclaimer {
				font-size: 10px;
				float: left;
				line-height: 12px;
			}

			#homepage #torso .tab_content h2 {
				background-color: #f9fcfe;
				color: #42657b;
				margin: 0 0 0 53px;
				padding: 0 4px;
				text-align: center;
				display: inline;
				font-size: 21px;
			}

			#homepage #torso .tab_content h3 {
				border-bottom: 1px solid #6394a2;
				color: #1d5367;
				font-size: 16px;
				padding-bottom: 2px;
			}

				#homepage #torso .tab_content .vehicle_standby {
					clear: both;
					float: none;
				}

			#homepage #torso .tab_content table {
				margin: 3px 0 10px 0;
				padding: 0 0 5px;
				font-size: 11px;
				font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
				border: none;
			}

				#homepage #torso .tab_content thead {
					padding-bottom: 5px;
					border: none;
				}
						#homepage #torso .tab_content table th {
							padding: 0 0 8px 0;
							border: none;
							color: #627b8e;
							font-weight: bold;
							background: none;
							font-size: 11px;
							font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
						}

						#homepage #torso .tab_content table tr {
							border-bottom: none;
							background: none;
							background-image: none;
						}

						#homepage #torso .tab_content table td {
							margin: 0;
							padding: 0 0 6px 0;
							border: none;
							font-weight: normal;
							color: #7b8993;
							background: none;
							background-image: none;
						}

						#homepage #torso .tab_content table.ferry_departures .on_time {
							background: url(/img/site/on_time_icon.png) no-repeat left -1px;
							padding-left: 17px;
							color: #3c9561;
							font-weight: bold;
						}

						#homepage #torso .tab_content table.ferry_departures .cancelled,
						#homepage #torso .tab_content table.ferry_departures .diverted,
						#homepage #torso .tab_content table.ferry_departures .delayed {
							background: url(/img/site/exception_icon.png) no-repeat left -1px;
							padding-left: 17px;
							color: #b5342d;
							font-weight: bold;
						}

						#homepage #torso .tab_content table.ferry_departures th.departure_status {
							width: 69px;
						}

						#homepage #torso .tab_content table.parking_lot_status .parking_status {
							color: #45aa6e;
							font-weight: bold;
							text-transform: uppercase;
						}

						#homepage #torso .tab_content .view_all_and_alerts {
							align-items: center;
							display: flex;
							margin-bottom: 1.5em;
							width: 100%;
						}
							#homepage #torso .tab_content .view_all_and_alerts .short_button {
								border-width: 2px;
							}

						#homepage #torso .tab_content .upcoming_alerts {
							background: #fff url(/img/site/exception_icon.png) no-repeat 4px 50%;
							border-radius: 2px;
							border: 2px solid;
							color: #b5342d;
							flex-grow: 1;
							font-size: 11px;
							font-weight: bold;
							margin: 0 0 0 1em;
							padding: 2px 5px 3px 22px;
						}
							#homepage #torso .tab_content .upcoming_alerts a {
								color: inherit;
								text-decoration: none;
							}

					#homepage #torso .tab_content .travel_alerts {
						align-items: flex-end;
						display: flex;
						flex-flow: row nowrap;
						font-size: 11px;
						font-weight: bold;
						justify-content: space-between;
						margin-bottom: 1.25em;
					}
						#homepage #torso .tab_content .travel_alerts .alerts,
						#homepage #torso .tab_content .travel_alerts .bus {
							width: 130px;
						}

						#homepage #torso .tab_content .travel_alerts .alerts a,
						#homepage #torso .tab_content .travel_alerts .bus a {
							display: block;
						}

						#homepage #torso .tab_content .travel_alerts .alerts img {
							margin-bottom: 5px;
							width: 26px;
						}
						#homepage #torso .tab_content .travel_alerts .bus img {
							margin-bottom: -4px;
							width: 130px;
						}


					#homepage #torso .tab_content .last_updated {
						margin: auto 0 1em;
					}

						#homepage #torso .tab_content .last_updated p {
							color: #6394a2;
							font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
							font-size: 11px;
							line-height: 1.5;
							margin-bottom: 0;
						}

						#homepage #torso .tab_content table.last_updated_data {
							margin: 0 0 0 2px;
							padding: 0;
							border: none;
							font-weight: normal;
							color: #7b8993;
							width: 97%;
						}

							#homepage #torso .tab_content table.last_updated_data tr {
								margin: 0;
								padding: 0;
							}

								#homepage #torso .tab_content table.last_updated_data tr td {
										margin: 0;
										padding: 0 0 6px 0;
										border: none;
										font-weight: normal;
										color: #7b8993;
										font-size: 11px;
										text-align: right;
								}

		#homepage #torso .main ul {
				margin: 0;
				padding: 0;
			}
				#homepage #torso .main ul li {
					margin: 8px 0 0 0;
					padding: 0;
					list-style-type: none;
					padding: 0 0 0 14px;
					background: url(/img/site/link_arrow.png) no-repeat left 6px;
				}

					#homepage #torso .main ul li a {
						text-decoration: none;
						font-family: Georgia, Constantia, Lucida, serif;
						font-size: 15px;
					}

		#homepage .main .promo {
			display: block;
			margin: 0 0 30px 0;
			max-height: 220px;
			overflow: hidden;
			padding: 0;
			position: relative;
		}
			#homepage .main .promo img {
				max-width: 624px;
			}

		#homepage .main .promo .feature_icon {
			margin-right: 14px;
		}

		#homepage .main .promo_last {
			margin: 0 0 30px 0;
			padding: 0;
			float: left;
			position: relative;
			display: block;
		}

			#homepage .main .current_promo_ribbon {
				background: url(/img/site/promo_ribbon.png) no-repeat;
				position: absolute;
				top: -17px;
				left: 0;
				width: 178px;
				height: 40px;
				margin: 0;
				padding: 0;
			}

				#homepage .main .current_promo_ribbon p {
					color: #42657b;
					font-size: 14px;
					font-family: Georgia, Constantia, Lucida, serif;
					margin: 0;
					padding: 6px 0 0 27px;
				}

		#homepage #torso .main .social_icons {
			align-items: center;
			background-color: #ecf1f7;
			border-radius: 6px;
			clear: both;
			color: #42657b;
			display: flex;
			justify-content: space-between;
			margin-bottom: 30px;
			margin-right: 18px;
			padding: 7px 15px;
		}

			#homepage #torso .main .social_icons h2 {
				background: transparent;
			}

			#homepage #torso .main .social_icons ul {
				align-items: center;
				display: flex;
			}

			#homepage #torso .main .social_icons li {
				background: transparent;
				height: 26px;
				margin: 0;
				padding: 0;
				width: 26px;
			}

			#homepage #torso .main .social_icons li ~ li {
				margin-left: 20px;
			}

			#homepage #torso .main .social_icons a {
				align-items: center;
				display: flex;
				height: 100%;
			}

			#homepage #torso .main .social_icons img {
				max-height: 100%;
				max-width: 100%;
			}

	img#homepage_store {
		margin: .8em 0 1.5em;
	}

	/* slideshow */

	.slides_control {
		height: 298px !important;
	}
	#homepage #slides {
		width: 933px;
		height: 298px;
		margin: 0 auto;
		display: block;
		position: relative;
	}

		#homepage #slides p {
			color: #fff;
		}

		#homepage #slides .panel {
			height: 298px;
			width: 933px;
		}

		#homepage #slides a:link,
		#homepage #slides a:visited,
		#homepage #slides a:active,
		#homepage #slides a:hover {
			text-decoration: none;
		}

		#homepage #slides .panel_info {
			left: 0px;
			top: 0px;
			position: absolute;
			width: 100%;
		}

			#homepage #slides .panel_info p {
				color: #bedbf0;
				font-size: 16px;
				margin: 0px;
				padding: 15px 320px 15px 20px;
				background: url(/img/site/panel_overlay.png) repeat-x top left transparent;
				color: #ffffff;
				font-weight: bold;
				line-height: 21px;
			}
				#homepage #slides .panel_info a {
					color: #fff;
					font-weight: bold;
				}

		#homepage #slides .pagination {
			bottom: 13px;
			margin: 0;
			position: absolute;
			left: 19px;
			text-indent: -9999px;
			height: 19px;
			width: 86px;
			z-index: 20;
			padding: 5px 0 0 0;
			background: url(/img/site/slider_nav_bg.png) no-repeat;
		}

		#homepage #slides .pagination li {
			float: left;
			margin: 0 0 0 5px;
			list-style-type: none;
		}

		#homepage #slides .pagination li:first-child {
			margin: 0 0 0 11px;
		}

			#homepage #slides .pagination li a {
				display: block;
				height: 13px;
				outline: 0;
				width: 13px;
				background: url(/img/site/slider_bg.png) no-repeat;
			}

			#homepage #slides .pagination li.current a {
				background: url(/img/site/slider_bg_active.png) no-repeat;
			}

		#homepage #slides .panel_shadow {
			background: url(/img/site/panel_info_last_shadow.png) repeat-y 0 15px;
			width: 290px;
			height: 215px;
			position: absolute;
			z-index: 6;
			right: 0;
			margin-right: 5px;
		}

		#homepage #slides .panel_info_last {
			margin: 0 11px 0 0;
			padding: 11px 20px 0 20px;
			height: 300px;
			position: absolute;
			width: 230px;
			left: 11px;
			top: -14px;
			border-top: 1px solid #9cc1d3;
			border-right: 1px solid #9cc1d3;
			border-left: 1px solid #9cc1d3;
			background: url(/img/site/panel_info_last_bg.png) repeat-x;
		}

			#homepage #slides .panel_info_last h2 {
				background-color: #e2f0fd;
				padding: 0 4px;
				height: 19px;
				color: #42657b;
				margin: 0 0 0 42px;
				font-family: Georgia, Constantia, Lucida, serif;
				font-size: 21px;
				text-align: center;
				display: inline;
			}

.plan_now_submit {
	text-align: center;
}

.plan_now_submit input.submit_button {
	margin: 0px auto;
	font-size: 15px;
	padding-top: 7px;
	padding-bottom: 7px;
}

#accessibility .page_anchors_wrapper {
	margin: 0 0 15px 0;
	padding: 0;
}

	#accessibility .page_anchors_wrapper a {
		display: block;
	}

	#accessibility .page_anchors_wrapper .accessibility_anchor_list {
		width: 420px;
	}

		#accessibility .page_anchors_wrapper .accessibility_anchor_list ul {
			margin: 0;
			padding: 0;
		}

		#accessibility .page_anchors_wrapper .accessibility_anchor_list ul li {
			margin: 0 0 13px 0;
			list-style-type: none;
		}

#accessibility .bold_headers li.bold_header {
	font-weight: bold !important;
}

#accessibility .bold_headers li.bold_header span,
#accessibility .bold_headers li.bold_header ul li,
#accessibility .bold_headers li.bold_header ol li,
#accessibility .bold_headers li.bold_header p {
	font-weight: normal !important;
}

.interests span {
	font-size: 75%;
}

.aside,
.vessel_info {
	margin: 0 0 24px 0;
	padding: 12px 18px 12px 18px;
	border: 1px solid #bbc1cf;
	float: left;
	width: 95%;
	background: #eff8fe url(/img/site/vessel_info_bg.png) repeat;
	-webkit-box-shadow: 0px 1px 4px rgba(93, 145, 183, .6), inset 1px 1px 0 0 #ffffff;
	-moz-box-shadow: 0px 1px 4px rgba(93, 145, 183, .6), inset 1px 1px 0 0 #ffffff;
	box-shadow: 0px 1px 4px rgba(93, 145, 183, .6), inset 1px 1px 0 0 #ffffff;
	color: #20484D;
}

	.vessel_info ul li {
		margin: 5px 0;
	}

	.vessel_info h2 {
		margin-bottom: 0;
		margin-top: 1px;
		text-shadow: 1px 1px 0px rgba(255, 255, 255, 1);
		color: #3867a4;
	}

	.vessel_info .fast_facts {
		margin: 0;
		padding: 9px;
		float: right;
		width: 200px;
		background-color: #efefef;
	}

	.fare_info_links {
		margin: 0 0 24px 0;
		padding: 12px 18px 12px 18px;
		border: 1px solid #bbc1cf;
		float: left;
		background: #eff8fe url(/img/site/vessel_info_bg.png) repeat;
		-webkit-box-shadow: 0px 1px 4px rgba(93, 145, 183, .6), inset 1px 1px 0 0 #ffffff;
		-moz-box-shadow: 0px 1px 4px rgba(93, 145, 183, .6), inset 1px 1px 0 0 #ffffff;
		box-shadow: 0px 1px 4px rgba(93, 145, 183, .6), inset 1px 1px 0 0 #ffffff;
		color: #20484D;
		width: 636px;
	}

	.fare_info_links ul {
		margin: 0;
		padding: 0;
	}

.island_switcher {
	overflow: hidden;
}
	.island_switcher a,
	.island_switcher a.inactive:hover {
		display: inline-block;
		background: yellow;
		padding: 10px 20px;
		margin-left: 10px;
		border-radius: 2px;
		color: #fff;
		font-weight: bold;
		text-shadow: 1px 1px 0 rgba(0,0,0,.2);
		border: 1px solid #e87c00;
		box-shadow: inset 0 1px rgba(255,255,255,.2);
		background-image: linear-gradient(bottom, #FA8911 0%, #FFC83C 95%);
		background-image: -o-linear-gradient(bottom, #FA8911 0%, #FFC83C 95%);
		background-image: -moz-linear-gradient(bottom, #FA8911 0%, #FFC83C 95%);
		background-image: -webkit-linear-gradient(bottom, #FA8911 0%, #FFC83C 95%);
		background-image: -ms-linear-gradient(bottom, #FA8911 0%, #FFC83C 95%);

		background-image: -webkit-gradient(
		    linear,
		    left bottom,
		    left top,
		    color-stop(0, #FA8911),
		    color-stop(0.95, #FFC83C)
		);
	}
		.island_switcher a:hover {
			background: #FA8911;
		}

		.island_switcher a.inactive {
			border: 1px solid #bebebe;
			box-shadow: inset 0 1px rgba(255,255,255,.2);
			background-image: linear-gradient(bottom, #CFCFCF 0%, #DCDCDC 95%);
			background-image: -o-linear-gradient(bottom, #CFCFCF 0%, #DCDCDC 95%);
			background-image: -moz-linear-gradient(bottom, #CFCFCF 0%, #DCDCDC 95%);
			background-image: -webkit-linear-gradient(bottom, #CFCFCF 0%, #DCDCDC 95%);
			background-image: -ms-linear-gradient(bottom, #CFCFCF 0%, #DCDCDC 95%);
			background-image: -webkit-gradient(
				linear,
				left bottom,
				left top,
				color-stop(0, #CFCFCF),
				color-stop(0.95, #DCDCDC)
			);
		}

	#downloadable_schedules .downloadable_schedules_list {
		margin: 0 0 0 13px;
		padding: 0;
		width: 388px;
	}

		#downloadable_schedules .downloadable_schedules_list li {
			background: url(/img/site/filetypes/16/pdf.png) no-repeat 0 .5em;
			padding: 5px 0 0 25px;
		}

	#reservation_opening_dates .highlight {
		width: 342px;
		float: right;
	}

		#reservation_opening_dates .highlight p {
			font-size:  17px;
			padding: 16px 20px 27px 20px;
		}

	#plan_now form.availability,
	#check_space_availability form.availability {
		width: 100%;
		float: left;
		margin: 15px 0 0 0;
	}

	#plan_now form.availability select,
	#check_space_availability form.availability select {
		width: 224px;
		margin-right: 5px;
	}

	#plan_now form.availability .radio,
	#check_space_availability form.availability .radio {
		/*width: 45%;*/
		float: left;
	}

	#plan_now form.availability .radios,
	#check_space_availability form.availability .radios {
		clear: none;
		margin: 0 0 0 12px;
		height: 30px;
		display: block;
	}

	#plan_now form.availability .text,
	#check_space_availability form.availability .text {
		display: block;
		margin-right: 20px;
		float: left;
		height: 30px;
	}

	#plan_now form.availability .text label,
	#plan_now form.availability .select label,
	#check_space_availability form.availability .select label,
	#check_space_availability form.availability .text label {
		margin-top: 4px;
		font-size: 13px;
		font-family: Arial, Helvetica, sans-serif;
		width: 41px;
	}

	#plan_now form.availability .submit,
	#check_space_availability form.availability .submit {
		width: 111px;
		margin: 7px 0 0 0;
		float: left;
		display: block;
		clear: both;
	}

	table.trip_selection {
		width: 100%;
	}

		table.trip_selection td {
			padding: 6px 10px;
		}

		table.trip_selection td.align_time {
			text-align: right;
		}

		table.trip_selection tr {
			cursor: pointer;
			color: #343c4b;
		}

		table.trip_selection tr.supersaver td.availability {
			background: url(/img/site/icons/supersaver.png) no-repeat right center;
		}

		table.trip_selection tr.supersaver.selected td.availability {
			background-color: #008c99;
		}

		table.trip_selection tr.no_space {
			color: #bcc5c8;
		}

		table.trip_selection tr.hover {
			background-color: #eefeff;
			background-image: none;
		}

			table.trip_selection tr.selected {
				box-shadow: 0px 0px 20px #a8d5f1;
			}

			table.trip_selection tr.selected td {
				background: #008c99;
				color: #fff;
				border-color: #143c40;
				border-top: solid 1px #fff;
				border-bottom: solid 1px #fff;
				text-shadow: 0px 1px 1px #143c40;
			}

	#check_space_availability .group_widget {
		margin: 0;
		width: 100%;
		min-height: 232px;
		position: relative;
	}

		#check_space_availability .group_widget .spinner {
			position: absolute;
			top: 65px;
			left: 47.5%;
			text-align: center;
			width: 32px;
			height: 32px;
			display: none;
		}

		#check_space_availability table.trip_selection tr {
			cursor: default;
		}

		#check_space_availability .highlight.side {
			width: 45%;
			float: right;
			margin: 0 0 20px 30px;
		}

			#check_space_availability .highlight.side p {
				padding: 20px 20px 30px 20px;
			}

	ul.event_calendar_items {
		margin: 0;
		padding: 0;
	}

	ul.event_calendar_items li {
		background-image: none;
		margin-bottom: 17px;
		padding: 19px;
		border-bottom: 1px solid #e1e8ee;
		background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(218,226,232,0.27) 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(100%,rgba(218,226,232,0.27))); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(218,226,232,0.27) 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(218,226,232,0.27) 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(218,226,232,0.27) 100%); /* IE10+ */
		background: linear-gradient(top, rgba(255,255,255,0) 0%,rgba(218,226,232,0.27) 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#45dae2e8',GradientType=0 ); /* IE6-9 */
	}

		ul.event_calendar_items li p {
			margin: 0 0 6px 0;
			font-size: 15px;
		}

		ul.event_calendar_items p.event_date {
			color: #42657B;
			margin: 0;
			font-size: 13px;
		}

		ul.event_calendar_items h3 {
			margin: 0 0 4px 0;
		}

.main .vessel_gallery {
	margin: 12px 0 15px 0;
	padding: 0;
}

.main .vessel_gallery li:first-child {
	margin: 0 0 0 0;
}

.main .vessel_gallery li {
	float: left;
	background: #42657B;
	margin: 0 0 0 10px;
	padding: 0;
}
.vessel_gallery li.hidden {
	display:none;
}

.vessel_gallery li a {
	width: 200px;
	display: block;
	border: 3px solid #42657B;
	box-shadow: 1px 1px 0 #fff;
}

	.vessel_gallery li a:hover {
		border-color: #639ac6;
	}

	.vessel_gallery li a img {
		display: block;
		max-width: 100%;
	}

.dashboard_content .alert_highlight {
	width: 670px;
	height: 51px;
	padding: 0;
	margin: 0 auto 25px;
	background: url(/img/site/highlight_alert_bg.jpg) no-repeat;
	position: relative;
	display: none;
	float: left;
}

	.dashboard_content .alert_highlight p {
		font-size: 12px;
		line-height: 15px;
		font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
		color: #5b5b5b;
		margin: 0;
		padding: 5px 4px 7px 16px;
		float: left;
		width: 460px;
	}

	.dashboard_content .alert_highlight p.title {
		color: #ffffff;
		font-size: 17px;
		text-transform: uppercase;
		font-family: Georgia, Constantia, Lucida, serif;
		float: left;
		margin: 0;
		padding: 13px 0 13px 13px;
		width: 176px;
	}

.dashboard_content ul {
	margin: 0 0 2em 0;
	padding: 0;
	width: 100%;
	border-bottom: solid 1px #ccc;
}

	.dashboard_content ul li {
		background-image: none;
		list-style-type: none;
		margin: 0;
		padding: 0;
		float: left;
	}

		.dashboard_content ul li a {
			color: #ddfafc;
			font-weight: bold;
			text-transform: uppercase;
			padding: 10px 9px;
			background: rgb(42,143,163); /* Old browsers */
			background: -moz-linear-gradient(top,  rgba(42,143,163,1) 0%, rgba(44,149,168,1) 15%, rgba(51,161,178,1) 32%, rgba(74,198,210,1) 76%, rgba(79,207,218,1) 91%, rgba(78,209,219,1) 100%); /* FF3.6+ */
			background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(42,143,163,1)), color-stop(15%,rgba(44,149,168,1)), color-stop(32%,rgba(51,161,178,1)), color-stop(76%,rgba(74,198,210,1)), color-stop(91%,rgba(79,207,218,1)), color-stop(100%,rgba(78,209,219,1))); /* Chrome,Safari4+ */
			background: -webkit-linear-gradient(top,  rgba(42,143,163,1) 0%,rgba(44,149,168,1) 15%,rgba(51,161,178,1) 32%,rgba(74,198,210,1) 76%,rgba(79,207,218,1) 91%,rgba(78,209,219,1) 100%); /* Chrome10+,Safari5.1+ */
			background: -o-linear-gradient(top,  rgba(42,143,163,1) 0%,rgba(44,149,168,1) 15%,rgba(51,161,178,1) 32%,rgba(74,198,210,1) 76%,rgba(79,207,218,1) 91%,rgba(78,209,219,1) 100%); /* Opera 11.10+ */
			background: -ms-linear-gradient(top,  rgba(42,143,163,1) 0%,rgba(44,149,168,1) 15%,rgba(51,161,178,1) 32%,rgba(74,198,210,1) 76%,rgba(79,207,218,1) 91%,rgba(78,209,219,1) 100%); /* IE10+ */
			background: linear-gradient(top,  rgba(42,143,163,1) 0%,rgba(44,149,168,1) 15%,rgba(51,161,178,1) 32%,rgba(74,198,210,1) 76%,rgba(79,207,218,1) 91%,rgba(78,209,219,1) 100%); /* W3C */
			filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2a8fa3', endColorstr='#4ed1db',GradientType=0 ); /* IE6-9 */
			border-radius: 3px;
			border-bottom-left-radius: 0px;
			-moz-border-radius-bottomleft: 0px;
			border-bottom-right-radius: 0px;
			-moz-border-radius-bottomright: 0px;
			display: inline-block;
			text-decoration: none;
			font-size: 12px;
			line-height: 1em;
			margin: 5px 8px 0 0;
		}

		.dashboard_content ul li a:hover {
			color: #fff;
		}

		.dashboard_content ul li.active a {
			margin-top: 0px;
			padding: 12px 20px 12px;
			position: relative;
			top: 1px;
			color: #01768a;
			background: #fff;
			border: solid 1px #ccc;
			border-bottom: none;
			border-radius: 3px;
			border-bottom-left-radius: 0px;
			-moz-border-radius-bottomleft: 0px;
			border-bottom-right-radius: 0px;
			-moz-border-radius-bottomright: 0px;
			filter: none;
		}

		.dashboard_content ul li.book_now a {
			margin-right: 0;
			background: none;
			filter: none;
			color: #fffddc;
			background: url(/img/site/text_button.jpg) repeat-x 0px -1px #f88a0f;
		}

		.dashboard_content ul li.book_now a:hover {
			color: #fff;
			background: url(/img/site/text_button_hover.jpg) repeat-x 0px -1px #f88a0f;
		}

.payment_form .sticky_modules .sidebar_module p.agreement_reminder_text {
	clear: both;
	font-size: 11px;
	margin-top: 0;
	float: left;
}

select.reserve_select {
	font-size: 14px;
	-webkit-appearance: menulist-button;
	border: solid 1px #CCC9C2;
	margin-top: 2px;
}

p.reserve_helper_text {
	margin: 0;
	padding: 0 0 37px 0;
	float: left;
	background-color: #ffffff;
	display: block;
	clear: both;
}

#torso ul.reserve_nav {
	margin: 0 0 2em 0;
	padding: 0;
	width: auto;
	border-radius: 6px;
}

	#torso ul.reserve_nav li {
		background-image: none;
		list-style-type: none;
		padding: 0 0 0 30px;
		margin: 0;
		background: url(/img/site/progress.png) no-repeat left center;
		float: left;
	}

	#torso ul.reserve_nav li:first-child {
		padding-left: 0;
	}

		#torso ul.reserve_nav li a {
			display: block;
			color: #35688b;
			border-radius: 5px;
			-moz-border-radius: 5px;
			-webkit-border-radius: 5px;
			font-weight: bold;
			padding: 10px 15px;
			border: solid 1px #a2c7e6;
			background: rgb(234,247,255); /* Old browsers */
			background: -moz-linear-gradient(top,  rgba(234,247,255,1) 0%, rgba(233,246,254,1) 12%, rgba(220,237,247,1) 45%, rgba(219,237,249,1) 49%, rgba(214,232,246,1) 51%, rgba(210,229,244,1) 57%, rgba(197,220,236,1) 90%, rgba(194,220,237,1) 100%); /* FF3.6+ */
			background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(234,247,255,1)), color-stop(12%,rgba(233,246,254,1)), color-stop(45%,rgba(220,237,247,1)), color-stop(49%,rgba(219,237,249,1)), color-stop(51%,rgba(214,232,246,1)), color-stop(57%,rgba(210,229,244,1)), color-stop(90%,rgba(197,220,236,1)), color-stop(100%,rgba(194,220,237,1))); /* Chrome,Safari4+ */
			background: -webkit-linear-gradient(top,  rgba(234,247,255,1) 0%,rgba(233,246,254,1) 12%,rgba(220,237,247,1) 45%,rgba(219,237,249,1) 49%,rgba(214,232,246,1) 51%,rgba(210,229,244,1) 57%,rgba(197,220,236,1) 90%,rgba(194,220,237,1) 100%); /* Chrome10+,Safari5.1+ */
			background: -o-linear-gradient(top,  rgba(234,247,255,1) 0%,rgba(233,246,254,1) 12%,rgba(220,237,247,1) 45%,rgba(219,237,249,1) 49%,rgba(214,232,246,1) 51%,rgba(210,229,244,1) 57%,rgba(197,220,236,1) 90%,rgba(194,220,237,1) 100%); /* Opera 11.10+ */
			background: -ms-linear-gradient(top,  rgba(234,247,255,1) 0%,rgba(233,246,254,1) 12%,rgba(220,237,247,1) 45%,rgba(219,237,249,1) 49%,rgba(214,232,246,1) 51%,rgba(210,229,244,1) 57%,rgba(197,220,236,1) 90%,rgba(194,220,237,1) 100%); /* IE10+ */
			background: linear-gradient(top,  rgba(234,247,255,1) 0%,rgba(233,246,254,1) 12%,rgba(220,237,247,1) 45%,rgba(219,237,249,1) 49%,rgba(214,232,246,1) 51%,rgba(210,229,244,1) 57%,rgba(197,220,236,1) 90%,rgba(194,220,237,1) 100%); /* W3C */
			filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eaf7ff', endColorstr='#c2dced',GradientType=0 ); /* IE6-9 */
		}

		#torso ul.reserve_nav li a:hover {

		}

		#torso ul.reserve_nav li.active a {
			background: rgb(65,118,150); /* Old browsers */
			background: -moz-linear-gradient(top,  rgba(65,118,150,1) 0%, rgba(65,131,163,1) 28%, rgba(61,167,191,1) 84%, rgba(61,173,195,1) 100%); /* FF3.6+ */
			background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(65,118,150,1)), color-stop(28%,rgba(65,131,163,1)), color-stop(84%,rgba(61,167,191,1)), color-stop(100%,rgba(61,173,195,1))); /* Chrome,Safari4+ */
			background: -webkit-linear-gradient(top,  rgba(65,118,150,1) 0%,rgba(65,131,163,1) 28%,rgba(61,167,191,1) 84%,rgba(61,173,195,1) 100%); /* Chrome10+,Safari5.1+ */
			background: -o-linear-gradient(top,  rgba(65,118,150,1) 0%,rgba(65,131,163,1) 28%,rgba(61,167,191,1) 84%,rgba(61,173,195,1) 100%); /* Opera 11.10+ */
			background: -ms-linear-gradient(top,  rgba(65,118,150,1) 0%,rgba(65,131,163,1) 28%,rgba(61,167,191,1) 84%,rgba(61,173,195,1) 100%); /* IE10+ */
			background: linear-gradient(top,  rgba(65,118,150,1) 0%,rgba(65,131,163,1) 28%,rgba(61,167,191,1) 84%,rgba(61,173,195,1) 100%); /* W3C */
			filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#417696', endColorstr='#3dadc3',GradientType=0 ); /* IE6-9 */
			color: #fff;
			border-color: #285b89;
		}

.reservation_step_info {
	border: solid 1px #a8d5f1;
	padding: 11px 8px 8px 8px;
	border-radius: 5px;
	background: #eff8fe url(/img/site/vessel_info_bg.png) repeat;
	margin: 24px 13px 0 11px;
}

	.reservation_step_info h3 {
		margin: 1px 0 11px 0;
		font-size: 20px;
		color: #42657B;
	}

	.reservation_step_info p {
		line-height: 19px;
	}

	.reservation_step_info h4.details_title {
		font-weight: bold;
		color: #444;
		font-size: 15px;
		font-family: Arial, Helvetica, sans-serif;
	}
	.reservation_step_info .change {
		float: right;
		display: block;
		font-weight: normal;
		font-size: 12px;
	}
		.reservation_step_info .change a {
			text-decoration: none;
		}

.remember_defaults {
	position: absolute;
	left: -227px;
	top: 350px;
	width: 196px;
	border: solid 1px #a8d5f1;
	padding: 11px 8px 8px 8px;
	border-radius: 5px;
	background: #eff8fe url(/img/site/vessel_info_bg.png) repeat;
}

	.remember_defaults input[type=checkbox] {
		position: absolute;
	}

	.remember_defaults h4 {
		font-weight: bold;
		color: #444;
		margin-top: 0;
		font-size: 15px;
		font-family: Arial, Helvetica, sans-serif;
	}

	.remember_defaults label {
		padding-left: 25px;
	}

.payment_form .remember_defaults {
	position: relative;
	width: auto;
	left: auto;
	top: auto;
	background: #f9fdff;
	margin-bottom: 20px;
}

.my_profile .state_input {
	text-transform: uppercase;
}

div.readonly {
	border: 1px solid #ccc;
	padding: 2px 6px;
	margin: 0 0 10px;
	height: 1.5em;
	color: #aaa;
	background: #FEFEFE url(/img/site/field_bg.jpg) repeat-x top;
}

/* Debugging */
pre.nice_exposed {
    border: 0;
    background: #383a3b;
    color: #fff;
    height: 16px;
    overflow: hidden;
    position: relative;
    font-size: 12px;
    padding: 4px 8px;
	display: block;
	margin: 2px;
    vertical-align: top;
	width: auto;
	line-height: 1.5;
	max-width: inherit;
}
pre.nice_exposed.open {
	height: 480px;
    padding: 16px 4px 8px;
	overflow: scroll;
}

/* --------------------------------------------------------------------- */
/* Datepicker Plugin
/* --------------------------------------------------------------------- */

#ui-datepicker-div {
	padding: 0;
	margin: 0;
	background-color: #8BD3DF;
	width: 280px;
	display: none;
	border: 1px solid #2EABC1;
	z-index: 10;
	text-align: center;
	margin-bottom: 0;
}

.ui-datepicker a {
	display: block;
}

.ui-datepicker-header {
	color: #EEEDB7;
	padding: 0;
	background: #2EABC1;
	text-align: center;
	font-weight: bold;
}
	.ui-datepicker-header a {
		color: #DDEEF5;
		font-size: 11px;
		padding: 7px 0;
	}
		.ui-datepicker-header a:hover {
			color: #FFF;
			background-color: #59d1e2;
		}
	.ui-datepicker-prev {
		float: left;
		width: 20%;
		cursor: pointer;
	}
	.ui-datepicker-next {
		float: right;
		width: 20%;
		cursor: pointer;
	}
	.ui-datepicker-title {
		padding: 5px 0 0 0;
		text-align: center;
		height: 22px;
	}

.ui-datepicker-calendar {
	width: 100%;
	border-collapse: collapse;
	border-color:#2EABC1;
	border-top: 1px solid #8BD3DF;
}
	.ui-datepicker-calendar a {
		color:#28526D;
		text-decoration: none;
	}

	.ui-datepicker-calendar td,
	.ui-datepicker-calendar th {
		background-image:none;
		background-color: #DDEEF5;
		border-color:#8BD3DF;
		text-align: center;
		width: 14.28%;
		padding: 0.35em 0;
	}
		.ui-datepicker-calendar td {
			font-size:12px;
			font-weight: bold;
		}

	.ui-datepicker-calendar th {
		background: #2EABC1;
		color: #FFF;
	}
	.ui-datepicker-calendar td.ui-datepicker-week-end {
		background-color: #DDEEF5;
	}
		td.ui-datepicker-week-end a {
			/*color:#28526D;*/
		}
	.ui-datepicker-calendar td.ui-datepicker-other-month,
	.ui-datepicker-calendar td.ui-datepicker-other-month:hover {
		background-color: #EEE;
	}
	.ui-datepicker-calendar td.ui-datepicker-current-day {
		background: #EEEDB7 !important;
		font-weight:bold;
	}

	.ui-datepicker-calendar td.ui-datepicker-current-day:hover {
		/*background-color: #fffda8 !important;*/
	}

	.ui-datepicker-calendar td.ui-datepicker-current-day:hover a {
		color: #285a74;
	}

	.ui-datepicker-calendar td:hover,
	.ui-datepicker-calendar th:hover {
		background-color: #2EABC1;
		color: #fff;
	}

	.ui-datepicker-calendar td:hover a {
		color: #fff;
	}

	.ui-datepicker-calendar td.ui-datepicker-today {
		background-color: #8BD3DF;
	}

	.ui-datepicker-calendar td.ui-datepicker-today {
		background-color: #ddeef5;
	}

		.ui-datepicker-calendar td.ui-datepicker-today:hover a,
		.ui-datepicker-calendar td.ui-datepicker-today:hover {
			color: #FFF;
			background-color: #2eabc1 !important;
		}


/* About > Jobs */

.job_item {
	border-bottom: 1px solid #e7e7e7;
}

.job_date {
	float: right;
}

#jobs p.intro {
	float: left;
	width: 54%;
}

.hours-and-qr-code {
	display: flex;
	align-items: center;
}

#jobs .hr_hours {
	width: 50%;
}

#jobs .qr_code {
	text-align: center;
	width: 50%;
}
#jobs .qr_code img {
	max-height: 200px;
	max-width: 100%;
}

#jobs img.half-width {
	max-width: 310px;
}

#jobs .hr_hours h3 {
	margin: 0 0 .3em 0;
}

#jobs h2 {
	margin-bottom: 1em;
}

#jobs .main .featured_photo_contain {
	height: auto;
}
#jobs .main .featured_photo_contain .main_photo {
	max-width: 100%;
}

/* About > Jobs > Application */

/* About > News */

.main .browse {
	margin-left: 0;
}

#news .browse li {
	background: none;
	border-bottom: 1px solid #f2f2f2;
	padding: 0 0 20px 0;
	margin-bottom: 20px;
}

#news .browse h3 {
	clear: left;
}

/* About > Info & Contact */

ul.members,
ul.members li {
	list-style-type: none;
	margin: 0;
	background: none;
	padding: 0;
}

ul.members {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 1.5em;
}

ul.members li {
	float: left;
	width: 33%;
	margin-bottom: 1.6em;
}

ul.members li .term {
	font-size: 13px;
	padding: 7px 0;
}

/* About > Freight */

.single_multiple p {
	width: 46%;
	float: left;
}

.single_multiple p.last {
	float: right;
}

/* About > Group Tours */

.why_groups_choose_us p {
	width: 48%;
	float: left;
}

.why_groups_choose_us p.last {
	float: right;
	width: 46%;
}


.benefits ul {
	columns: 2;
}

ul.activities li {
	float: left;
	width: 45%;
	margin-right: 2%;
}

.tour_sales p {
	width: 54%;
	float: left;
}

.tour_sales p.last {
	width: 40%;
	float: right;
}

/* Traveling Today */

.smooth_departure p {
	width: 47%;
	float: left;
}

.smooth_departure p.last {
	float: right;
}


/* Standby Page */

.main .standby_summary {
	align-items: center;
	display: flex;
	margin: 0;
}
	.main .standby_summary strong {
		color: #3b84a8;
		vertical-align: middle;
		font-size: 2em;
	}

	.main .standby_summary p {
		margin-bottom: 0;
		margin-left: 1em;
	}

.main .standby_line {
	counter-reset: standbyline;
	margin: 32px 0 25px;
}

	.main .standby_line li {
		background: #d6f0fd;
		border-radius: 4px;
		border: 1px solid #8ab9cd;
		counter-increment: standbyline;
		display: inline-block;
		line-height: 1;
		padding: 1.25em .5em .25em;
		position: relative;
	}

		.main .standby_line li::before {
			background: #8ab9cd;
			border-radius: 4px 4px 0 0;
			color: #dfecef;
			content: counter(standbyline);
			font-size: .75em;
			left: 0;
			padding: 2px 4px;
			position: absolute;
			right: 0;
			top: 0;
		}

		.main .standby_line li:first-child {
			width: 28px;
		}

		.main .standby_line li:first-child::before {
			background: #3f7a9c;
			color: #fff;
		}

		.main .standby_line li:first-child::after {
			background: url(/img/site/icons/bar.png) no-repeat center;
			bottom: 33px;
			content: '';
			height: 32px;
			left: 0;
			position: absolute;
			right: 0;
		}

/* Current Status */

#current_status .weather {
	border: solid 1px #8ab9cd;
	border-radius: 4px;
	padding: 15px;
	margin-bottom: 2em;
	background: rgb(214,240,253); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(214,240,253,1) 0%, rgba(242,249,254,1) 99%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(214,240,253,1)), color-stop(99%,rgba(242,249,254,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(214,240,253,1) 0%,rgba(242,249,254,1) 99%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(214,240,253,1) 0%,rgba(242,249,254,1) 99%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(214,240,253,1) 0%,rgba(242,249,254,1) 99%); /* IE10+ */
	background: linear-gradient(top,  rgba(214,240,253,1) 0%,rgba(242,249,254,1) 99%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d6f0fd', endColorstr='#f2f9fe',GradientType=0 ); /* IE6-9 */
}

#current_status .weather p {
	background: url(/img/site/weather/not_found.png) no-repeat -50px center;
	margin: 0 0 0 -15px;
	padding: 20px 0px 20px 124px;
	font-size: 15px;
}
	#current_status .weather p.clear_evening {
		background-image: url(/img/site/weather/clear_evening.png);
	}
	#current_status .weather p.cloudy {
		background-image: url(/img/site/weather/cloudy.png);
	}
	#current_status .weather p.cloudy_evening {
		background-image: url(/img/site/weather/cloudy_evening.png);
	}
	#current_status .weather p.flurries {
		background-image: url(/img/site/weather/flurries.png);
	}
	#current_status .weather p.flurries_evening {
		background-image: url(/img/site/weather/flurries_evening.png);
	}
	#current_status .weather p.fog {
		background-image: url(/img/site/weather/fog.png);
	}
	#current_status .weather p.ice {
		background-image: url(/img/site/weather/ice.png);
	}
	#current_status .weather p.mostly_cloudy {
		background-image: url(/img/site/weather/mostly_cloudy.png);
	}
	#current_status .weather p.mostly_cloudy_showers {
		background-image: url(/img/site/weather/mostly_cloudy_showers.png);
	}
	#current_status .weather p.mostly_sunny {
		background-image: url(/img/site/weather/mostly_sunny.png);
	}
	#current_status .weather p.partly_cloudy_evening {
		background-image: url(/img/site/weather/partly_cloudy_evening.png);
	}
	#current_status .weather p.partly_sunny {
		background-image: url(/img/site/weather/partly_sunny.png);
	}
	#current_status .weather p.partly_sunny_flurries {
		background-image: url(/img/site/weather/partly_sunny_flurries.png);
	}
	#current_status .weather p.partly_sunny_showers {
		background-image: url(/img/site/weather/partly_sunny_showers.png);
	}
	#current_status .weather p.partly_sunny_thunderstorm {
		background-image: url(/img/site/weather/partly_sunny_thunderstorm.png);
	}
	#current_status .weather p.rain {
		background-image: url(/img/site/weather/rain.png);
	}
	#current_status .weather p.rain_snow {
		background-image: url(/img/site/weather/rain_snow.png);
	}
	#current_status .weather p.showers {
		background-image: url(/img/site/weather/showers.png);
	}
	#current_status .weather p.showers_evening {
		background-image: url(/img/site/weather/showers_evening.png);
	}
	#current_status .weather p.sleet {
		background-image: url(/img/site/weather/sleet.png);
	}
	#current_status .weather p.snow {
		background-image: url(/img/site/weather/snow.png);
	}
	#current_status .weather p.snow_evening {
		background-image: url(/img/site/weather/snow_evening.png);
	}
	#current_status .weather p.sunny {
		background-image: url(/img/site/weather/sunny.png);
	}
	#current_status .weather p.thunderstorm {
		background-image: url(/img/site/weather/thunderstorm.png);
	}
	#current_status .weather p.thunderstorm_evening {
		background-image: url(/img/site/weather/thunderstorm_evening.png);
	}
	#current_status .weather p.windy {
		background-image: url(/img/site/weather/windy.png);
	}
	#current_status .weather p.windy {
		background-image: url(/img/site/weather/windy.png);
	}

#current_status .weather p a {
	display: block;
}

#current_status .weather h4 {
	background-color: #61a6c3;
	margin: -12px -12px 0px -12px;
	padding: 12px;
	color: #fff;
	border-radius: 2px;
	font-size: 16px;
	box-shadow: 0px 1px 0px #fff, inset 0px 1px 1px #357b98;
	-moz-box-shadow: 0px 1px 0px #fff, inset 0px 1px 1px #357b98;
	-webkit-box-shadow: 0px 1px 0px #fff, inset 0px 1px 1px #357b98;
}

#current_status .weather h4 em {
	display: block;
	float: right;
	color: #c7e2ef;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-style: normal;
	position: relative;
	top: 7px;
}


#current_status .terminal {
	border: solid 1px #daceae;
	border-radius: 4px;
	padding: 15px;
	margin-bottom: 2em;
	background: rgb(255,254,249); /* Old browsers */
	background: #fff7e4;
	background: -moz-linear-gradient(top,  rgba(255,254,249,1) 0%, rgba(255,247,227,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,254,249,1)), color-stop(100%,rgba(255,247,227,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(255,254,249,1) 0%,rgba(255,247,227,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(255,254,249,1) 0%,rgba(255,247,227,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(255,254,249,1) 0%,rgba(255,247,227,1) 100%); /* IE10+ */
	background: linear-gradient(top,  rgba(255,254,249,1) 0%,rgba(255,247,227,1) 100%); /* W3C */
}

	#current_status .terminal h4 {
		background-color: #f3e6c4;
		margin: -12px -12px 15px -12px;
		padding: 12px;
		color: #9e5c10;
		border-radius: 2px;
		font-size: 20px;
		font-family: Arial, Helvetica, sans-serif;
		box-shadow: 0px 2px 0px #fff, inset 0px 1px 1px #ab945a;
		-moz-box-shadow: 0px 2px 0px #fff, inset 0px 1px 1px #ab945a;
		-webkit-box-shadow: 0px 2px 0px #fff, inset 0px 1px 1px #ab945a;
	}

		#current_status .terminal h4 em {
			display: block;
			float: right;
			color: #be884a;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 12px;
			font-style: normal;
			position: relative;
			top: 7px;
		}

	#current_status .terminal .last_updated {
		clear: both;
		margin-left: 0;
		margin-right: 0;
		padding-left: 9px;
		padding-top: 15px;
	}

		#current_status .terminal .last_updated p {
			margin: 0;
			color: #222222;
		}

	#current_status .stats > div {
		margin-bottom: 20px;
	}

	#current_status .stats > :nth-child(2n) {
		margin-left: 31px;
	}

	#current_status .stats > :nth-child(2n+1) {
		clear: both;
	}

	#current_status .stats .gallery {
		display: block;
		height: 167px;
		margin-bottom: 1px;
	}
		#current_status .stats .gallery.-unavailable::before {
			align-items: center;
			background: #dcdcdc;
			content: 'Curently Unavailable';
			display: flex;
			float: right;
			height: 147px;
			justify-content: center;
			width: 308px;
		}

#current_status .directions {
	display: inline-block;
	font-size: 16px;
}

#current_status p.terminal_address {
	float: right;
	margin: 3px 0 11px 0;
	color: #776343;
}

#current_status .standby {
	padding: 15px;
	background-color: #fff;
	width: 277px;
	min-height: 117px;
	float: left;
	-webkit-box-shadow: 0px 1px 10px #f3e6c4;
	-moz-box-shadow: 0px 1px 10px #f3e6c4;
	box-shadow: 0px 1px 10px #f3e6c4;
	background: url(/img/site/icons/car_truck.gif) no-repeat center 36px #fff;
}

	#current_status .standby.blueline {
		background: url(/img/site/blue-line-corner.jpg) no-repeat top right,
			url(/img/site/icons/car.png) no-repeat 96px 66px #fff;
	}
		#current_status .standby.blueline.closed {
		background: url(/img/site/blue-line-corner.jpg) no-repeat top right #fff;
		}

		#current_status .standby.blueline .car_count {
			height: 65px;
			place-content: center;
		}

		#current_status .standby.blueline .next_vehicle {
			float: right;
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: .5rem;
			font-size: .875rem;
			padding: 0 2rem;
		}

		#current_status .standby.blueline .next_vehicle span {
			background: #d6f0fd;
			border-radius: 4px;
			border: 1px solid #8ab9cd;
			counter-increment: standbyline;
			display: inline-block;
			line-height: 1;
			padding: 1.25em .5em .25em;
			position: relative;
		}

		#current_status .standby.blueline .next_vehicle span::before {
			content: '1';
			background: #3f7a9c;
			border-radius: 4px 4px 0 0;
			color: #fff;
			font-size: .75em;
			left: 0;
			padding: 2px 4px;
			position: absolute;
			right: 0;
			top: 0;
		}

		#current_status .blueline_details {
			clear: both;
			float: left;
		}


#current_status .trip_status {
	padding: 15px;
	background-color: #fff;
	width: 277px;
	min-height: 117px;
	float: left;
	-webkit-box-shadow: 0px 1px 10px #f3e6c4;
	-moz-box-shadow: 0px 1px 10px #f3e6c4;
	box-shadow: 0px 1px 10px #f3e6c4;
	background: none;
	background-color: #fff;
}

#current_status .trip_status p,
#current_status .parking_availability p {
	font-size: 16px;
	margin: 0 0 .5em 0;
	line-height: 1.3em;
}

#current_status .parking_availability {
	position: relative;
}

#current_status .parking_availability {
	padding-right: 80px;
}

#current_status .parking_availability span {
	display: block;
	width: 50px;
	height: 50px;
	text-indent: -9999px;
	overflow: hidden;
	background: url(/img/site/icons/parking.png) no-repeat top left;
	float: right;
	margin: 0px 0px 0px 30px;
}

#current_status strong.available_park {
	color: #369d62;
	font-weight: bold;
}

ul.available_directions {
	margin: 0;
}

#current_status .trip_status p.ok {
	padding-left: 25px;
	background: url(/img/site/on_time_icon.png) no-repeat 0px 3px;
}

#current_status .trip_status p.alert {
	padding-left: 25px;
	background: url(/img/site/alert_icon.png) no-repeat 0px 3px;
}

#current_status .standby_message,
#current_status .parking_availability {
	padding: 15px;
	background-color: #fff;
	width: 277px;
	min-height: 117px;
	float: left;
	-webkit-box-shadow: 0px 1px 10px #f3e6c4;
	-moz-box-shadow: 0px 1px 10px #f3e6c4;
	box-shadow: 0px 1px 10px #f3e6c4;
	background-color: #fff;
}

#current_status .standby .cars,
#current_status .standby .trucks {
	display: block;
	float: left;
	width: 30%;
	position: relative;
	height: 65px;
	line-height: 65px;
	color: #603;
	font-size: 32px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	text-align: center;
}

#current_status .standby .cars {
	left: -15px;
}

#current_status .standby .trucks {
	float: right;
	right: -15px;
}

#current_status .standby  span.number_0 {
	color: #dbeaf0;
}

#current_status .standby .wait {
	display: block;
	width: 100%;
	clear: both;
	text-align: center;
	font-weight: bold;
	background: url(/img/site/exception_icon.png) no-repeat right 0;
	color: #b5342d;
	text-align: left;
}

#current_status .standby .none {
	color: #369d62;
	background: url(/img/site/on_time_icon.png) no-repeat right 0;
}

#current_status .terminal_photo {
	width: 307px;
	float: right;
	box-shadow: 0px 1px 10px #f3e6c4;
	height: 147px;
	overflow: hidden;
}
	#current_status .terminal_photo img {
		max-width: 100%;
	}

#current_status .main h5 {
	display: block;
	padding: 10px 15px;
	margin: -15px -15px 15px -15px;
	border-bottom: solid 2px #f3e6c4;
	color: #cd790d;
}

body#current_status .travel_alerts {
	background: #fafcfe;
	border-radius: 4px;
	border: solid 1px #8ab9cd;
	margin: 0 auto 1.5em;
	padding: 1em;
	width: 324px;
	align-items: flex-end;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
}
	body#current_status .travel_alerts.single_alert {
		align-items: center;
	}

	body#current_status .travel_alerts .alerts,
	body#current_status .travel_alerts .bus {
		width: 155px;
	}

	body#current_status .travel_alerts .alerts a,
	body#current_status .travel_alerts .bus a {
		display: block;
	}

	body#current_status .travel_alerts .alerts img {
		margin-bottom: 5px;
		width: 26px;
	}
	body#current_status .travel_alerts .bus img {
		margin-bottom: -4px;
		width: 155px;
	}


/* detail pages */

.link {
	background: url(/img/site/top_a.gif) no-repeat top right;
	float: left;
	display: block;
	height: 39px;
	padding: 0;
	text-decoration: none;
	font-size: 13px;
	font-family: Georgia, "Times New Roman", Times, serif;
	color: #4287a1;
	position: relative;
	top: -3px;
	left: -30px;
	line-height: 0px;
}

.link {
	color: #196987;
}

.link span {
	display: block;
	padding: 15px 30px 35px 30px;
	background: url(/img/site/top_span.gif) no-repeat top left;
}

img.justified_full,
img.justified_right,
img.justified_left,
img.justified_center {
	display: block;
	margin: 0 0 30px 0;
	padding: 2px;
	background-color: #efece6;
	border: solid 6px #ddd9cc;
}

img.justified_full,
img.justified_center {
	margin: 0 auto 30px auto;
}

img.justified_right {
	float: right;
	margin: 0 0 30px 30px;
}

img.justified_left {
	float: left;
	margin: 0 30px 30px 0;
}

.please_sign_in_or_create_an_account .main {
	width: auto;
}

.please_sign_in_or_create_an_account .main .title_marquee {
	margin-bottom: 0;
}

.new-users,
.guest-users {
	float: left;
	width: 21%;
	padding-left: 3.5%;
	margin-left: 1.5%;
	background: url(/img/site/signin-shadow.png) top left no-repeat;
	min-height: 348px;
}

.existing-users {
	float: left;
	width: 48%;
}

.guest-users {
	float: right;
}

.existing-users .username_password .text,
.existing-users .username_password .password {
	width: 45%;
	margin-right: 5%;
	float: left;
}


.existing_new .existing-users .text input,
.existing_new .existing-users .password input {
	margin-bottom: 15px;
}

.existing_new .existing-users a.forgot {
	display: block;
	height: 37px;
}

.existing_new .existing-users .signin_with {
	margin-bottom: 5px;
}

.existing_new .existing-users .signin_with select {
	display: inline;
}

div.as_a_guest input[type=text],
div.as_a_guest select {
	width: 100%;
	margin-bottom: 1.5em;
}

.as_a_guest .first_name_last_name > div {
	float: left;
	width: 48%;
	margin-left: 4%;
}
	.as_a_guest .first_name_last_name > div:first-child {
		margin-left: 0;
	}

.as_a_guest .country_state_zip > div {
	float: left;
	width: 30%;
	margin-left: 5%;
}
	.as_a_guest .country_state_zip > div:first-child {
		margin-left: 0;
	}

.as_a_guest .help {
	margin: 2em 0;
}

.as_a_guest .home_phone,
.as_a_guest .island_phone {
	float: left;
	width: 48%;
}

.as_a_guest .work_phone,
.as_a_guest .cell_phone {
	float: right;
	width: 48%;
}


.submit .forgot {
	float: right;
}

.submit .forgot a {
	display: block;
}

.signin_with .help {
	float: right;
	position: relative;
}

.signin_with .help a {
	width: 20px;
	height: 20px;
	line-height: 20px;
	font-weight: bold;
	background-color: #4a7e9e;
	color: #fff;
	display: block;
	text-align: center;
	border-radius: 10px;
	text-decoration: none;
}

.signin_with .help .tooltip {
	width: 250px;
	background-color: #fff;
	padding: 10px 15px 7px;
	position: absolute;
	top: 10px;
	left: 10px;
	display: none;
	border: solid 1px #ddd;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	z-index: 200;
	box-shadow: 0px 3px 10px #90a1ad;
}

.signin_with .help .tooltip p,
.signin_with .help .tooltip ul {
	margin-bottom: .5em;
}


.signin_with .help:hover .tooltip {
	display: block;
}

.signin_with select {
	margin-bottom: 5px;
}

/*.review_and_purchase .address {
	width: 60%;
	float: left;
}

.review_and_purchase .contact {
	width: 30%;
	float: right;
}

.review_and_purchase .address .first_name {
	width: 47.5%;
	float: left;
}

.review_and_purchase .address .last_name {
	width: 47.5%;
	float: right;
}

.review_and_purchase .address .city {
	float: left;
	width: 42%;
	margin-right: 5%;
}

.review_and_purchase .address .state {
	float: left;
	width: 28%;
	margin-right: 5%;
}*/

.review_and_purchase .address .zip {
	width: 20%;
	float: right;
}

.my_profile .address {
	width: 60%;
	float: left;
}

.my_profile #torso .contact {
	width: 30%;
	float: right;
}

.my_profile .address .first_name {
	width: 47.5%;
	float: left;
}

.my_profile .address .last_name {
	width: 47.5%;
	float: right;
}

.my_profile .address .city,
.my_profile .address .country {
	float: left;
	width: 42%;
	margin-right: 5%;
}

.my_profile .address .state {
	float: left;
	width: 28%;
	margin-right: 5%;
}

.my_profile .address .zip {
	width: 20%;
	float: left;
}

.my_profile .default_direction {
	float: left;
	width: 42%;
	margin-right: 5%;
}
	.my_profile .country select,
	.my_profile .default_direction select,
	.my_profile .default_reservation_type select {
		width: 235px;
	}

.my_profile .contact .checkbox {
    padding-bottom: 1em;
    padding-left: 2em;
    position: relative;
}
    .my_profile .contact .checkbox input[type=checkbox] {
        position: absolute;
        left: 0;
        top: 0;
    }

.ticket_books_list,
.parking_permits_list {
	margin-bottom: 18px;
}

table.total_price_quantities {
	background-image: none;
	background: none;
	background-color: transparent;
	width: 100%;
}

	table.total_price_quantities th, table.total_price_quantities td {
		background-image: none;
		background: none;
		background-color: transparent;
	}

	table.total_price_quantities th {
		border-right: 1px solid #ccc;
	}

	table.total_price_quantities th.amount_label {
		width: 32%;
	}

	table.total_price_quantities td.ticketbook_grand_total {
		width: 50%;
		text-align: left;
		font-size: 2em;
	}

		table.total_price_quantities th.amount_label h2,
		table.total_price_quantities th.amount_label h4 {
			margin: 0;
		}

.checkbox_line {
	margin-bottom: 12px;
}

.main_content .recent_purchases {
	border: 1px solid #d7eaf3;
}

	.main_content .recent_purchases ul.used_tickets {
		margin: 4px 0 0 0;
		padding: 0;
	}

		.main_content .recent_purchases ul.used_tickets li {
			color: #333;
			font-size: 13px;
			float: left;
			margin: 10px;
			padding: 10px;
			border: 1px solid #4c81a1;
			border-radius: 6px;
			width: 28%;
			background: #fafdff;
		}

.recent_purchases h2.ticket_book_type_title {
	font-size: 19px;
	padding: 13px 0 13px 15px;
	margin: 0;
}

.main_content .purchase {
	background-image: none;
	border-bottom: 1px solid #d7eaf3;
	background-color: #edf8fc;
	margin: 0;
	padding: 15px 12px;
}

.main_content .purchase:last-child {
	border-bottom: none;
}

	.main_content .purchase.even {
		background-color: #f8fcfe;
	}

	.main_content .purchase a.details {
		float: right;
	}

	.main_content .purchase a.text_button {
		padding: 7px 15px;
		margin: 0;
	}

	.main_content .purchase p {
		margin: 0 0 2px 0;
		line-height: 1.4;
		color: #222222;
		font-size: 13px;
	}

	.main_content .purchase p.title {
			color: #307190;
			font-size: 15px;
			text-shadow: 1px 1px 0 #ffffff;
	}

		.main_content .purchase ul {
			margin: 0;
			padding: 0;
		}

.gift_card_amount {
	width: 59%;
	margin-top: 11px;
}

.show_card_number {
	margin-bottom: 25px;
	font-size: 16px;
}

.actions .options a.text_button {
	margin-right: 0;
	font-size: 11.5px;
	padding: 8px 10px;
	line-height: 1em;
	margin-bottom: 8px;
}

	.actions .options {
		margin: 12px 0 12px 0;
	}

.full_width_main {
	width: 100%;
	float: none;
	margin: 0px;
	padding: 0px;
	background-color: #ffffff;
	min-height: 315px;
	height: auto !important;
	height: 315px;
}

	.full_width_main h1 {
		padding-top: 11px;
		margin-top: 0;
	}

/* vehicles */

.dashboard .vehicle {
	width: 296px;
}

.my_vehicles_contain {
	margin: 0 auto;
	padding: 0;
}

.existing_vehicle_list {
	margin: 0 0 23px 0;
	padding: 0;
}

	.existing_vehicle_list .vehicle:first-child {
		margin: 0;
	}

.vehicle_color {
	width: 38%;
}

.vehicle {
	width: 256px;
	border: solid 1px #4c81a1;
	float: left;
	margin: 0 0 0 25px;
	padding: 15px 10px;
	border-radius: 6px;
	background-color: #fafdff;
}

.vehicle .state_number {
	width: auto;
	padding: 5px 5px 2px 5px;
	border-radius: 5px;
	background-color: #4c81a1;
	font-size: 1.7em;
	margin: -16px -11px 15px -11px;
	line-height: 1em;
}

.vehicle .state_number .plate_state {
	float: right;
	display: block;
	background-color: #fff;
	padding: 15px;
	text-transform: uppercase;
	font-weight: bold;
	border-radius: 3px;
	color: #4c81a1;
}

.vehicle .state_number .plate_number {
	float: left;
	display: block;
	letter-spacing: 1px;
	padding: 8px 0px 8px 8px;
	color: #fff;
}

.vehicle .state_number .plate_number span {
	display: block;
	font-size: 12px;
	color: #cde8f0;
	line-height: 1em;
	padding-bottom: 6px;
}

.vehicle .year_make {
	font-size: 1.3em;
	font-weight: bold;
	color: #294e64;
}

.vehicle .model {
	color: #4c81a1;
	margin-bottom: 0;
}

.vehicle .year_make .year,
.vehicle .year_make .make {
	float: left;
	padding-right: 5px;
	margin-bottom: .3em;
}

#my_vehicles .vehicle a.text_button {
	margin: 0;
}

.vehicle a.update,
.vehicle a.delete {
	display: block;
	color: #f98b10;
	line-height: 1em;
	text-transform: uppercase;
	font-size: 12px;
	margin: 0px 20px 10px 0px;
	text-transform: uppercase;
	font-weight: bold;
	float: left;
}

.vehicle a.delete {
	margin-right: 0px;
}

.vehicle a.update:hover,
.vehicle a.delete:hover {
	color: #d57302;
}

.vehicle .size_weight {
	margin-bottom: 1.2em;
	padding-top: 10px;
	width: 172px;
}

.dashboard .vehicle .size_weight {
	width: auto;
}

	.vehicle .size_weight .size_key {
		float: right;
		width: 100px;
		height: 50px;
		background-size: contain;
	}
	.vehicle .size_weight .size_key.car {
		background: url('/img/site/vehicle_size_100.png') no-repeat right;
	}
	.vehicle .size_weight .size_key.truck {
		background: url('/img/site/vehicle_size_truck_100.png') no-repeat right;
	}

.edit_state_number .text {
	float: left;
	margin-right: 30px;
	font-size: 16px;
}

#dashboard .vehicle .size_weight img {
	float: right;
	width: 85px;
	height: auto;
}

.vehicle .size_weight span {
	font-weight: normal;
	display:inline-block;
	width: 50px;
	padding-right: 5px;
	text-align: right;
}

.vehicle .size_weight div {
	margin-bottom: 3px;
	font-weight: bold;
}

.vehicle .island_vehicle {
	margin-bottom: 0;
	margin-top: 0;
	color: #4c81a1;
}

	.vehicle .island_vehicle p {
		margin: 0;
	}

.vehicle .island_vehicle strong {
	color: #284e64;
}

.state_number .state {
	width: 15%;
	float: left;
	margin-right: 5%;
}

.state_number .number {
	width: 25%;
	float: left;
}

.year_make_model div {
	float: left;
	margin-right: 5%;
}

.length_width_height div {
	width: 15%;
	float: left;
	margin-right: 5%;
}

.dashboard_sub_nav {
	margin: 0;
	padding: 0;
	height: 50px;
	display: block;
}
	.dashboard_sub_nav ul {
		margin: 1px 0 20px 0;
		float: left;
	}

		.dashboard_sub_nav ul li {
			background: none;
			padding: 0;
			margin: 0;
		}
			.dashboard_sub_nav ul li a {
				background: none;
				color: #4c81a1;
				margin: 0;
			}
				.dashboard_sub_nav ul li a:hover {
					color: #4c81a1;
					background: none;
				}

.profile {
	float: left;
	width: 270px;
}

	.profile h2 {
		margin: 0 0 8px 0;
	}

.profile .address {
	float: left;
	margin-right: 6px;
}

	.profile .address .address1,
	.profile .address .address2,
	.profile .address .city_subdivision_zip,
	.profile .profile_number {
		margin-bottom: 4px;
	}

	.profile .address .country,
	.profile .email {
		margin-bottom: 24px;
	}

.profile .home_phone, .profile .work_phone,
.profile .cell_phone, .profile .island_phone,
.profile .update_profile {
	margin-bottom: 4px;
}

.profile .home_phone span, .profile .work_phone span,
.profile .cell_phone span, .profile .island_phone span,
.profile .email span, .profile .update_profile span {
	font-weight: bold;
	color: #555;
}

.profile .contact {
	float: left;
	overflow: hidden;
	word-wrap: break-word;
}

.profile .contact span {
	width: 110px;
	display: inline-block;
	text-align: right;
	color: #888;
	font-family: Georgia, "Times New Roman", Times, serif;
	padding-right: 5px;
}

.profile .address .update_profile {
	padding-top: 13px;
}

.dashboard .recently_used_vehicle {
	width: 236px;
}

.recently_used_vehicle {
	float: right;
	margin: 0px;
	width: 236px;
}

	.recently_used_vehicle h2 {
		margin-top: 0;
		margin-bottom: 7px;
	}

	.recently_used_vehicle .vehicle {
		float: none;
		width: auto;
		margin: 0px;
	}

.buttons {
	height: 43px;
}

.buttons .cancel, .cancel {
	float: left;
}

.buttons .submit {
	float: right;
}

.plan_widget .route_container {
	width: 37%;
	float: left;
	padding-bottom: 20px;
}

#homepage div.route_container {
	margin-bottom: 8px;
}

	#homepage .route_container select.route {
		margin-bottom: 0;
	}

.plan_widget .depart_return_container {
	width: 58%;
	float: right;
}

#homepage div.depart_return_container {
	margin-bottom: 3px;
}

.plan_widget .depart_return_container label {
	display: block;
	float: none;
	width: auto;
}

#homepage form.availability .radios label {
	margin-bottom: 2px;
}

.plan_widget .depart_return_container .depart {
	float: left;
}

.plan_widget .depart_return_container .depart input,
.plan_widget .depart_return_container .return input {
	width: 175px;
}

.check_space_availability .plan_widget .depart_return_container .return {
	margin-left: 20px;
}

.plan_widget .depart_return_container .return {
	float: left;
	margin-left: 88px;
}

.plan_widget .depart_return_container .text.return.disabled input,
.wait_list_container input.date.disabled {
	color: #dddfe1;
}

.plan_widget .depart_return_change_reservation {
	margin-bottom: 1rem;
}

	.plan_widget .depart_return_change_reservation .depart {
		margin-right: 7%;
		float: left;
	}

	.plan_widget .depart_return_change_reservation .return {
		float: left;
	}

.change_reservation_submit {
	float: left;
	margin-top: 240px;
}

.plan_widget .one_way_round_trip_container div {
	float: left;
	margin: 10px 5% 15px 0;
}

.check_space_availability .plan_widget .high_speed_with_vehicle_container {
	width: 524px;
}

.plan_widget .high_speed_with_vehicle_container {
	display: block;
	width: 742px;
	padding-top: 8px;
	border-top: solid 1px #ccc;
	float: left;
}

.plan_widget .high_speed_with_vehicle_container div {
	float: left;
	margin: 10px 5% 20px 0;
}

.plan_widget .trip_extras {
	float: left;
	width: 82%;
}

.plan_widget .submit {
	float: right;
	padding: 0px;
}

.plan_widget .disabled label {
	color: #dddfe1;
}

.plan_widget .submit input {
	margin: 42px 0px 30px;
}

#my_purchases .upcoming_reservations, #my_purchases .past_purchases {
	position: relative;
}

#my_purchases .upcoming_reservations,
#my_purchases .ticket_books_items, #my_purchases .parking_permits_items,
#my_purchases .past_purchases {
	width: 100%;
	margin-bottom: 22px;
}

#dashboard .upcoming_reservations {
	margin-bottom: 22px;
}

	#my_purchases .purchases_spinner {
		position: absolute;
		top: 50%;
		left: 48.5%;
		text-align: center;
		width: 32px;
		height: 32px;
		display: none;
	}

#dashboard .cancelled,
#my_purchases .cancelled {
	background: none;
	font-size: .85em;
	padding: 6px 15px;
	background-color: #888;
	color: #fff;
	border: solid 1px #555;
	float: right;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	font-family: Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	font-weight: bold;
}

.how_many, .towing, .carrying, .what_vehicle, .bicycles {
	margin: 0 0 1.5em 0;
	border-radius: 7px;
	-moz-border-radius: 7px;
	-webkit-border-radius: 7px;
	padding: 1px 15px 7px 15px;
	border: solid 1px #88c1ee;
	box-shadow: 0px 3px 0px #eee;
	font-size: 17px;
}
.how_many .help, .towing .help, .carrying .help, .what_vehicle .help, .bicycles .help {
	font-size: 15px;
}

.how_many h2, .towing h2, .carrying h2, .what_vehicle h2, .bicycles h2 {
	font-size: 17px;
	padding-bottom: .3em;
	border-bottom: solid 1px #88c1ee;
	margin-bottom: 1.4em;
	color: #5493c2;
}

/* #specify_passenger_and_vehicle_details h2 span,
#passenger_details h2 span,
#update_passenger_vehicle_details h2 span,
#complete_vehicle  Commenting this out for Now, in case something looks wrong,
it can just be uncommented */

h2 span {
	display: inline-block;
	padding-right: 10px;
	border-right: solid 1px #c4dcec;
	margin-right: 10px;
	color: #2e7b93;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	font-size: 1.1em;
}

.how_many h3, .towing h3, .carrying h3, .what_vehicle h3, .bicycles h3 {
	border-bottom: none;
	margin-bottom: .7em;
}

.what_vehicle ul,
.what_vehicle ul li {
	margin: 0px;
	padding: 0px;
}

.more_options .change_trip_vehicle {
	margin-right: 0;
}

.change_trip_vehicle {
	margin: 10px 0 10px 0;
	border-radius: 5px;
	display: block;
	background-color: #fafdff;
	border: solid 1px #4c81a1;
	padding: 0;
	cursor: default;
}

.change_trip_vehicle label,
.change_trip_vehicle label {
	padding: 15px 20px;
}

.what_vehicle .vehicle_option {
	display: block;
	padding: 0;
	margin: 0px 0px 21px 0px;
}
.what_vehicle .add_or_rental .rental {
	float: right;
}

.what_vehicle .vehicle_option .rental {
	padding: 0;
	color: #008c99;
}
	.what_vehicle .rental input[type=checkbox] {
		margin-top: 3px;
	}

.rental_options {
	display: flex;
	margin: 0 -.5rem 1.5rem;
}

	.rental_options .rental_option {
		flex-basis: 50%;
		font-size: 15px;
		margin-right: 1.5rem;
		padding: .5rem;
		border: solid 1px transparent;
	}

	.rental_option {
		border: solid 1px transparent;
	}

		.rental_option label {
			cursor: pointer;
		}

		.rental_option input + strong {
			display: inline-block;
			margin-bottom: 5px;
		}

	.rental_option.selected {
		border-radius: 5px;
		border: solid 1px #a8d5f1;
	}

		.rental_options .rental_option p {
			margin-bottom: 0;
		}

.vehicle_option select {
	margin: 0;
	padding: 0;
	width: 100%;
	font-size: 17px;
	-webkit-appearance: menulist-button;
	border: solid 1px #CCC9C2;
	color: #333333;
}

.what_vehicle .vehicle_option input,
.what_vehicle .vehicle_option label,
.change_trip_vehicle input,
.change_trip_vehicle label {
	display: block;
}

.change_trip_vehicle label {
	cursor: default;
	padding-top: 18px;
}

.what_vehicle .vehicle_option label {
	padding: 15px 20px 15px 0;
	cursor: pointer;
	margin: 0;
}

.what_vehicle .vehicle_option input,
.change_trip_vehicle input {
	float: left;
	margin-right: 10px;
	margin-top: 21px;
	margin-left: 10px;
}

.what_vehicle .vehicle_option span.year,
.change_trip_vehicle span.year {
	font-size: 1.2em;
	color: #294e64;
}

.what_vehicle .vehicle_option span.make,
.change_trip_vehicle span.make {
	font-size: 1.1em;
	color: #4c81a1;
}

.what_vehicle .vehicle_option span.model,
.change_trip_vehicle span.model {
	font-size: .9em;
	color: #444;
}

.what_vehicle .vehicle_option span.plate_number,
.change_trip_vehicle span.plate_number {
	display: block;
	float: right;
	font-size: 1.2em;
	color: #4c81a1;
}

.what_vehicle .vehicle_option span.plate_number em,
.change_trip_vehicle span.plate_number em {
	font-size: .7em;
	color: #999;
	font-style: normal;
}

.how_many .highlight {
	width: 100%;
}

.more_options div {
	margin-right: 5%;
}

.trailer_length_height .text,
.racks_length_height .text {
	margin-bottom: 1.5em;
	float: left;
	margin-right: 30px;
	width: auto;
}

.trailer_length_height .text label,
.racks_length_height .text label {
	margin-bottom: .6em;
	padding-right: 5px;
}

.trailer_length_height .text input,
.racks_length_height .text input {
	width: 30px;
}

.trailer_length_height .text span,
.racks_length_height .text span {
	font-size: .85em;
	color: #888;
}

.trailer .help {
	font-size: .9em;
}

.carrying img,
.towing img {
	float: right;
	margin: -5px 0px 20px 40px;
}

#specify_passenger_and_vehicle_details .year_make_model div,
#specify_passenger_and_vehicle_details .length_width_height div {
	float: left;
	margin-right: 5%;
	margin-bottom: 10px;
}

.length_width_height div {
	margin-bottom: 0px;
}

.length_width_height div input {
	width: 100px;
}

.vehicle_selection {
	margin: 0 -.5rem;
	padding: .5rem;
}

.vehicle_selection .length_width_height input#vehicle-length,
.vehicle_selection .length_width_height input#vehicle-width,
.vehicle_selection .length_width_height input#vehicle-height {
	border: none;
	padding: 0px;
	background: none;
	border-bottom: dashed 1px #ccc;
}

.vehicle_selection .length_width_height .text {
	float: left;
	width: auto;
	margin-right: 30px;
}

.vehicle_selection p.info {
	margin: 2em 0;
}

label.specify_vehicle_label {
	margin-bottom: 1rem;
}

label.specify_vehicle_label,
label.rental_description {
	font-size: 15px;
	display: inline-block;
}

.steps {
	float: right;
	font-size: 1.3em;
	padding-top: 8px;
	padding-bottom: 5px;
	color: #779bb9;
}

.steps strong {
	color: #009bb6;
	font-size: 1.3em;
}

p.interruption {
	border: 1px solid #800;
	background: #d04444;
	color: #fff;
	padding: 1em;
	margin: 1em;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

p.help, #reservation_details p.help {
	border: solid 1px #ebd293;
	border-radius: 4px;
	padding: 10px 60px 12px 20px;
	margin: 0 0 2em;
	line-height: 1.3em;
	font-size: 1.1em;
	color: #755827;
	background: url(/img/site/speech.gif) no-repeat top right #fff8e6;
}

#contact_information p.help span {
	font-size: 1.3em;
	position: relative;
	top: 4px;
	margin-right: 20px;
}

#contact_information p.help a.text_button {
	margin-right: 10px;
	margin-bottom: 0px;
}

.main .contacts li {
    clear: both;
}
    .main .contacts li img {
        height: 20px;
        padding-left: .5em;
        vertical-align: top;
    }

#contact_the_steamship_authority .input div.help {
    margin-bottom: 1em;
    font-size: .875em;
}

#contact_the_steamship_authority .input textarea {
    width: 654px !important;
}

#contact_the_steamship_authority input[type=file] {
    margin-bottom: 2em;
}

#contact_the_steamship_authority .submit {
    padding-right: 2em;
    padding-top: 1em;
    text-align: right;
}

.passengers div {
	margin-bottom: 20px;
}

.passengers div input {
	width: 60px;
	float: left;
	margin-right: 10px;
}

.passengers div.note {
	font-style: italic;
	color: #999;
	font-family: Georgia, "Times New Roman", Times, serif;
}

.passengers:last-child {
	margin-bottom: 0;
}

.buttons a {
	margin: 0px;
}

.buttons .cancel a, .cancel a{
	background: none;
	font-size: .85em;
	display: block;
	padding: 6px 15px;
	background-color: #888;
	color: #fff;
	border: solid 1px #555;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	text-transform: uppercase;
}

.buttons .cancel a:hover, .cancel a:hover {
	background-color: #666;
}

#complete_vehicle .edit_state_number p {
	margin-bottom: 14px;
	font-size: 15px;
}

#complete_vehicle .state_numbers {
	margin-bottom: 16px;
	float: left;
}

.bicycles select {
	margin: 17px 0px 0px;
	float: left;
}

.bicycles h2 {
	border: none;
	margin-bottom: 14px;
	float: left;
	margin-right: 20px;
}

/* registration */

.enter_password div {
	float: left;
	width: 45%;
	margin-right: 5%;
}

.enter_password div.last {
	float: right;
	width: 47.5%;
	margin-right: 0px;
}

#create_sign_in_credentials .registration .password {
	margin-bottom: 10px;
}

.registration .note {
	color: #888;
	font-size: 12px;
	line-height: 1.2em;
	margin-bottom: 10px;
}

.registration .enable_sms {
    padding-top: .5em;
    padding-bottom: 1em;
}

.registration .note .strong_note {
	color: #727376;
}

.registration .submit_button {
	float: right;
	margin: 0px;
}

.registration .have_profile {
	margin-bottom: 2em;
}

.registration .have_profile p {
	width: 47.5%;
	float: left;
}

.registration .have_profile .profile_pin_form {
	width: 47.5%;
	float: right;
}

.registration .have_profile .profile_pin_form .profile_pin div  {
	width: 47.5%;
	float: left;
}

.registration .have_profile .profile_pin_form .profile_pin div.last  {
	width: 47.5%;
	float: right;
}

.registration .username_email div,
.registration .numbers div {
	float: left;
	width: 47.5%;
}

.registration .username_email div.last,
.registration .first_last div.last,
.registration .numbers div.last {
	float: right;
}

.registration .country_state_zip div {
	float: left;
	margin-right: 5%;
}

.registration .city_state_zip div.city {
	width: 47.5%
}

.registration .city_state_zip div.state {
	width: 30%
}

.registration .city_state_zip div.zip {
	width: 12.5%;
	margin-right: 0px;
	float: right;
}

.registration .account_type .select {
	float: left;
	width: 47.5%;
}

.registration .account_type .business_name {
	float: right;
	width: 47.5%;
	margin-left: 5%;
}

.forgot_your_password .forgot_password_email {
	display: block;
}

#registration .invalid {
	background-color: #ffdddd;
	background-image: none;
}

fieldset.forgot_password {
	margin-bottom: 0;
}

fieldset.forgot_password .select,
fieldset.forgot_password .text,
fieldset.forgot_password .submit {
	float: left;
	margin-right: 15px;
}

fieldset.forgot_password .submit {
	float: right;
	margin-right: 0;
	margin-top: -7px;
}

fieldset.forgot_password .text input {
	width: 250px;
}

/* payment */

.payment_form {
	position: relative;
}

.payment_form .address_info .address {
	width: 47.5%;
	float: left;
}

.payment_form .address_info .po_box {
	width: 43%;
	margin-top: 0px;
	border: solid 1px #98caed;
	background-color: #f1f9ff;
	padding: 6px 15px;
	border-radius: 5px;
	float: right;
}

.payment_form .address_info .po_box p {
	padding: 0px;
	margin: 0px;
	line-height: 1.2em;
}

.payment_form .country_state_zip div {
	float: left;
	margin-right: 5%;
}

.payment_form .country_state_zip .city {
	width: 47.5%;
}

.payment_form .ticket_book_type_quantity {
	float: left;
	margin-right: 5%;
	width: 45%;
}

.ticket_books_card_info {
	clear: both;
}

.payment_form .number_of_vehicles {
	font-size: 1.2em;
	margin: 1.3em 0;
}

.payment_form .number_of_vehicles label {
	font-size: .9em;
	font-weight: bold;
}


.vehicle_info {
	margin-bottom:12px;
}
.total_amount_due {

}
	.total_amount_due .amount_title {
		float: left;
		width: 111px;
	}
	.remaining_amount_due .amount_title {
		width: 167px;
	}
		.gift_card_paid .amount_title h2,
		.total_amount_due .amount_title h2 {
			margin: 0;
		}

	.total_amount_due .ticketbook_grand_total,
	.gift_card_paid .permit_grand_total,
	.total_amount_due .permit_grand_total {
		width: 160px;
		margin-left: 3px;
		text-align: left;
		font-size: 1.5em;
	}

#purchase_parking_permits .gift_card_paid,
#purchase_parking_permits .total_amount_due {
	padding: 0 28px 0 0;
	margin: 0 0 27px 0;
}

#purchase_parking_permits .permit_grand_total {
	width: 78px;
}

#purchase_parking_permits .permit_type_select_vehicle {
	clear: both;
	margin-bottom: 15px;
}

#purchase_parking_permits .payment_form .select_vehicle_type {
	width: 43.5%;
}

#purchase_parking_permits .agree_to_policies {
	clear: both;
}



	.select_vehicles .first {
		float: left;
		width: 44%;
		margin-right: 6%;
	}

	.select_vehicles .last {
		float: left;
		width: 44%;
	}

.payment_form .parking_permit_type {
	width: 41.5%;
	margin-right: 0;
	float: left;
}

.payment_form .select_vehicle_type {
	width: 52.5%;
	float: left;
}

.payment_form .country_state_zip .country {
	width: 47.5%;
}
	.payment_form .country select {
		width: 100%;
	}

.payment_form .country_state_zip .state {
	width: 27.5%;
}
	.payment_form .state {
		width: 100%;
	}

.payment_form .country_state_zip .zip {
	width: 13%;
	margin-right: 0px;
	float: right;
}

.payment_form .card_number_expiration .card_number {
	width: 47.5%;
	float: left;
}

.payment_form .card_number_expiration .card_number span {
	font-size: 11px;
}

.payment_form .card_number_expiration .expiration {
	width: 47.5%;
	float: right;
}

.payment_form .card_number_expiration .expiration select {
	width: 47.5%;
	float: left;
}

.payment_form .card_number_expiration .expiration select.last {
	width: 47.5%;
	float: right;
}

.payment_form .cvv {
	width: 25%;
	float: left;
	margin-right: 5%;
}

.payment_form .where_to_find {
	width: 300px;
	float: left;
}

.payment_form #cvv_code_assist {
	height: 47px;
	width: 298px;
	background: url(/img/site/cvv_assist.jpg) no-repeat top left;
	border: solid 1px #6390a7;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.payment_form .agreements {
	margin-bottom: 0;
}

	#purchase_parking_permits .payment_form .agreements .checkbox {
		margin-bottom: .4em;
	}

	.payment_form .agreements .checkbox {
		margin-bottom: 25px;
	}

	.payment_form .agreements h2 {
		margin-bottom: 6px;
		margin-top: 0;
	}

.payment_form .cancel a {
	float: left;
	opacity: .5;
	text-decoration: none;
}

.payment_form .cancel:hover a {
	opacity: 1;
}

.payment_form .submit {
	float: right;
}

.payment_form .submit_left {
	float: left;
	margin-top: 14px;
}

.payment_form .submit input {
	margin: 0px;
}

.payment_form .card_number_expiration p {
	font-size: 12px;
	color: #666;
	font-style: italic;
	position: relative;
	top: -10px;
}

.payment_form .card_number_expiration label span {
	font-size: 12px;
	color: #888;
	font-style: italic;
	padding-left: 10px;
}

.payment_form .sticky_modules {
	position: absolute;
	bottom: -100px;
	left: -250px;
	width: 200px;
}

.payment_form .sticky_modules .sidebar_module,
.purchase_parking_permits .payment_form .gift_card_apply,
.purchase_ticket_books .payment_form .gift_card_apply {
	border: solid 1px #a8d5f1;
	padding: 5px 15px 15px;
	border-radius: 5px;
	background-color: #f9fdff;
	margin: 0 0 20px;
}

.payment_form .sticky_modules .sidebar_module h4 {
	margin: 5px 0 10px;
	color: #069;
	line-height: 1.2em;
}

.purchase_parking_permits .payment_form .gift_card_apply h4,
.purchase_ticket_books .payment_form .gift_card_apply h4 {
	margin: 5px 0 2px 0;
	color: #069;
	line-height: 1.2em;
}

.payment_form .sticky_modules .sidebar_module .submit input,
.purchase_parking_permits .payment_form .gift_card_apply .submit input,
.purchase_ticket_books .payment_form .gift_card_apply .submit input {
	padding: 5px 10px;
	line-height: 1em;
	font-size: .9em;
}

.payment_form .sticky_modules .sidebar_module .text input,
.purchase_parking_permits .payment_form .gift_card_apply .text input,
.purchase_ticket_books .payment_form .gift_card_apply .text input {
	margin-bottom: 10px;
}

.payment_form .sticky_modules .sidebar_module p,
.purchase_parking_permits .payment_form .gift_card_apply p,
.purchase_ticket_books .payment_form .gift_card_apply p {
	margin: 0 0 10px;
	line-height: 1.2em;
	font-size: .9em;
}

.payment_form .sticky_modules .sidebar_module .select,
.purchase_parking_permits .payment_form .gift_card_apply .select,
.purchase_ticket_books .payment_form .gift_card_apply .select {
	background-color: #fff;
	border: solid 1px #d9ebf6;
	border-radius: 3px;
	padding: 7px 10px;
	margin: 0 0 10px;
}

.payment_form .sticky_modules .sidebar_module .select select,
.payment_form .sticky_modules .sidebar_module .select p,
.purchase_parking_permits .payment_form .gift_card_apply .select select,
.purchase_parking_permits .payment_form .gift_card_apply .select p,
.purchase_ticket_books .payment_form .gift_card_apply .select select,
.purchase_ticket_books .payment_form .gift_card_apply .select p{
	margin: 0;
}

.embedded-policies {
    border-bottom: 0;
    border-radius: 5px 5px 0 0;
    border: 1px solid #a8d5f1;
    font-size: 12px;
    margin-top: 3em;
    max-height: 455px;
    overflow-x: hidden;
    overflow: scroll;
    padding: 15px;
}

    .embedded-policies p {
        margin: 0 0 .5em;
        line-height: 1.1;
    }

    .embedded-policies .download {
        float: right;
        margin: .2em 0 0;
    }

    .main .embedded-policies h3 {
        border-bottom: 1px solid #ddd;
        color: inherit;
        font-family: inherit;
        font-size: 14px;
        font-weight: bold;
        margin: 0 0 .2em;
        padding: 0 0 .1em;
    }

.agree_to_policies {
	border: solid 1px #a8d5f1;
	padding: 15px;
	border-radius: 0 0 5px 5px;
	background-color: #f9fdff;
	margin: 0 0 20px 0;
}

	.agree_to_policies label {
		display: inline;
	}

table td.sub_total {
	text-align: right;
	width: 150px;
}

table td.grand_total {
	text-align: left;
	width: 100px;
	font-size: 2em;
}

.payment_form #payment_submit {
	font-size: 1.5em;
}

.select_dates .full_width_main {
	padding-top: 23px;
	padding-bottom: 35px;
}

	.select_dates .full_width_main p.help {
		margin: 24px 0 0 0;
	}

table.trip_details tr.payment th.payment_method,
table.trip_details tr.payment td.price {
	color: #489669;
	font-weight: bold;
}

table.trip_details tr.refund th.payment_method,
table.trip_details tr.refund td.price {
	color: #d25d3b;
	font-weight: bold;
}

/* Reservation Summary */

.reservation_summary_view table.trip_details tr.penalty_fees th,
.reservation_summary_view table.trip_details tr.penalty_fees td {
	color: #ac2c0a;
	background-color: #fffaf7;
}

.reservation_summary_view table.trip_details tr.penalty_fees th

.reservation_summary_view table.trip_details tr.penalty_fees td {
	font-weight: bold;
}

.reservation_summary_view table.trip_details tr.ticket_book_refund th,
.reservation_summary_view table.trip_details tr.ticket_book_refund td {
	color: #ac2c0a;
	background-color: #fffaf7;
}


#reservation_summary .main,
#reservation_details .main {
	width: 100%;
	float: none;
	margin: 0px;
	padding: 0px;
}

#reservation_summary .main_content,
#reservation_details .main_content {
	padding-top: 20px;
}

#reservation_summary .main_content table.trip_details,
#reservation_details .main_content table.trip_details {
	width: 103.7%;
}

#reservation_details p {
	padding: 0;
	margin: 0 0 4px 0;
	font-size: 13px;
}

.reservation_progress {
	width: 677px;
	height: 31px;
	margin: 20px auto;
	background: url('/img/site/passenger_progress.jpg');
}
	.reservation_progress.vehicle_progress {
		background: url('/img/site/vehicle_progress.jpg');
	}
	.reservation_progress.select_dates {
		background-position: 0 250px;
	}
	.reservation_progress.select_vehicle {
		background-position: 0 200px;
	}
	.reservation_progress.select_high_speed {
		background-position: 0 200px;
	}
	.reservation_progress.select_trips {
		background-position: 0 150px;
	}
	.reservation_progress.payment {
		background-position: 0 100px;
	}

p.no_cancel_online {
	font-weight: bold;
	font-size: 15px;
	color: #970308;
	margin-bottom: 7px;
}

.reservation_summary_view table,
.reservation_summary_view table th,
.reservation_summary_view table td,
.reservation_summary_view table tr {
	border: 0px;
	margin: 0px;
	padding: 0px;
	background: none;
	color: #444;
	vertical-align: top;
}

.reservation_summary_view table {
	border: solid 1px #85b0cb;
}

.reservation_summary_view table table {
	border-top: solid 2px #a8d5f1;
	margin: 0px 0px -16px -16px;
	width: 103.7%;
}

.reservation_summary_view table h2 {
	margin: 1.5em 0 .5em;
	font-size: 22px;
}

.reservation_summary_view table h3 {
	font-size: 18px;
}

.reservation_summary_view table h4 {
	font-size: 16px;
	color: #C60;
	margin-top: 0px;
}

.reservation_summary_view table h2.departure,
.reservation_summary_view table h2.passengers,
.reservation_summary_view table h2.reservation_vehicle,
.reservation_summary_view table h2.wait_list,
.reservation_summary_view table h2.payments {
	margin: 0 0 .5em;
}

.reservation_summary_view table th,
.reservation_summary_view table td {
	border: solid 1px #bedcef;
	padding: 15px;
}

.reservation_summary_view table td {
	padding: 15px;
	font-size: 14px;
}

.reservation_summary_view table th {
	font-size: 15px;
}

.reservation_summary_view table th.amount_label {
	text-align: right;
	width: 80%;
	background-color: #f4fbff;
	box-shadow: inset 0px -20px 20px #fff, inset -3px 1px 5px #d6e4ed;
}

.reservation_summary_view table.trip_details th.payment_method {
	width: 80%;
}

.reservation_summary_view table td.price {
	width: 17.8%;
	text-align: right;
	background-color: #fbffff;
	font-size: 1.4em;
}

.reservation_summary_view table td.subtotal {
	font-weight: bold;
	background-color: #f0fdff;
	text-align: right;
}

.reservation_summary_view table td.date {
	width: 120px;
}

.reservation_summary_view table td.time {
	width: 70px;
}

.reservation_summary_view table td.vessel {
	width: 200px;
}

.reservation_summary_view table td.amount_due {
	font-size: 1.5em;
	color: #064b4b;
	background-color: #f7fefa;
}

.reservation_summary_view table td.grand_total {
	font-size: 2em;
	color: #064a2e;
	background-color: #f0fff6;
}

.reservation_summary_view table td.vessel a.info,
a.vessel_information {
	display: inline-block;
	width: 18px;
	height: 18px;
	background: url(/img/site/info_icon.gif) no-repeat center center;
	line-height: 18px;
	text-indent: -9999px;
	overflow: hidden;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	margin-left: 5px;
	position: relative;
	/*top: -2px;*/
}

.reservation_summary_view table td.vessel span,
span.vessel {
	position: relative;
	/*top: -5px;*/
}

.reservation_summary_view table td.vessel a.tooltip {
	display: block;
	margin: 10px 0 0 0;
}

.reservation_summary_view #incomplete,
.reservation_summary_view #barcode {
	display: none;
}

.reservation_summary_view table.trip_details {
	width: 105%;
}

.reservation_summary_view table.trip_details th {
	background-color: #fbffff;
}

th.date_th {
	width: 21%;
}

.reservation_summary_view .vehicle_confirmation .vehicle_details {
	float: left;
	margin-right: 20px;
}

.reservation_summary_view .vehicle_confirmation .vehicle_details strong {
	display: block;
}

.reservation_summary_view .vehicle_confirmation .vehicle_legend {
	width: 155px;
	height: 97px;
	float: left;
	position: relative;
	margin-right: 20px;
}
	.reservation_summary_view .vehicle_confirmation .vehicle_legend.car {
		background: url(/img/site/vehicle_size_car.png) no-repeat top left;
		width: 180px;
	}
	.reservation_summary_view .vehicle_confirmation .vehicle_legend.car_with_trailer {
		background: url(/img/site/towing_size_car.png) no-repeat top left;
		width: 230px;
	}

	.reservation_summary_view .vehicle_confirmation .vehicle_legend.car_with_trailer .long,
	.reservation_summary_view .vehicle_confirmation .vehicle_legend.truck_with_trailer .long {
		width: 160px;
	}

	.reservation_summary_view .vehicle_confirmation .vehicle_legend.truck {
		background: url(/img/site/vehicle_size_truck.png) no-repeat top left;
		width: 180px;
	}
	.reservation_summary_view .vehicle_confirmation .vehicle_legend.truck_with_trailer {
		background: url(/img/site/towing_size_truck.png) no-repeat top left;
		width: 230px;
	}

.reservation_summary_view .vehicle_confirmation .vehicle_legend .long {
	display: block;
	position: absolute;
	width: 130px;
	bottom: 0px;
	left: 0px;
	text-align: center;
}

.reservation_summary_view .vehicle_confirmation .vehicle_legend .tall {
	display: block;
	position: absolute;
	top: 20%;
	right: 0px;
	text-align: left;
}

.reservation_summary_view .vehicle_confirmation .vehicle_dimensions_note {
	float: right;
	width: 220px;
	font-style: italic;
	color: #777;
}

/* advertising */

.supplemental .promo img { width: 194px; }

.supplemental .text_promo {
	padding: 10px 20px;
	border-bottom: solid 1px #ccc;
	font-size: .9em;
}

	.supplemental .text_promo h4 {
		font-weight: bold;
		font-family: inherit;
		color: #008c99;
	}
	.supplemental .text_promo a {
		line-height: 1.3em;
		text-decoration: none;
		display: block;
	}

.supplemental .text_promo a:hover {
	text-decoration: underline;
}

.supplemental .text_promo:last-child {
	padding: 20px;
	border: none;
	line-height: 1.4em;
}

/* Open Reservation */
.open_reservation {
	border: solid 1px #ccc;
	padding: 10px 20px;
	margin: 20px 0;
	background: white url(/img/site/table_bg.gif) repeat-x bottom;
}

/* wait list */

.wait_list_container {
	background-color: #fffdf7;
	border: solid 2px #f7b515;
	height: 19px;
	-webkit-transition: height .5s;
	-moz-transition: height .5s;
	-o-transition: height .5s;
	-ms-transition: height .5s;
	transition: height .5s;
}
	.change_wait_list .wait_list_container {
		height: auto;
	}
	.wait_list_container.showing {
		height: 475px;
	}

.wait_list_container .wait_list_content {
	padding: 10px 20px;
}

.wait_list_container .wait_list_cutoff .user_drop_date {
	background-image: url("/img/site/calendar_field_bg.jpg");
	width: 150px;
	font-size: 13px;
	padding: 4px;
	display: inline-block;
	margin-bottom: 1.5em;
}

p.currently_scheduled {
	color: #333333;
	font-weight: bold;
	margin-bottom: 11px;
}

#change_waitlist div.wait_list {
	margin-bottom: 12px;
}

.wait_list_radios {
	margin-bottom: 13px;
}

.wait_list_tip {
	clear: both;
}

	p.wait_list_tip {
		margin-top: 11px;
	}

.show_partial {
	overflow: hidden;
	position: relative;
	margin-bottom: 2em;
	min-height: 1.4em;
	padding: 10px 20px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.show_partial .expand {
	display: block;
	outline: none;
	text-decoration: none;
	font-weight: bold;
	margin: 0;
	padding: 0 0 10px 0;
	color: #b17900;
	background: url(/img/site/expand_arrows.png) no-repeat right center;
	cursor: pointer;
}

.show_partial .expand:hover {
	color: #855100;
}

.show_partial .expand.showing {
	color: #d5a94b;
	background: url(/img/site/hide_arrows.png) no-repeat right center;
}

.wait_list_container .trips_from {
	width: 47.5%;
	float: left;
	margin-bottom: 1em;
}

.wait_list_container .trips_until {
	width: 47.5%;
	float: right;
	margin-bottom: 1em;
}

.wait_list_container .trips_from h2,
.wait_list_container .trips_until h2,
.wait_list_container h2 {
	margin-bottom: .3em;
	margin-top: 0px;
}

.wait_list_container .trips_from input.date,
.wait_list_container .trips_until input.date,
.wait_list_container input.date {
	width: 55%;
	display: inline-block;
	font-size: 13px;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	padding: 4px;
	color: #000000;
	background-image: url(/img/site/calendar_field_bg.jpg);
	background-color: #fdfdfd;
	background-position: top right;
	background-repeat: no-repeat;
}

.wait_list_container .wait_list_depart,
.wait_list_container .wait_list_end {
	width: 47%;
}

	.wait_list_container .wait_list_depart select,
	.wait_list_container .wait_list_end select {
		margin-bottom: 0;
	}

.wait_list_container .wait_list_end {
	float: left;
}

.wait_list_container .wait_list_end .time {
	margin-top: 5px;
	margin-left: 7px;
}

.wait_list_container .wait_list_depart {
	float: left;
}

.wait_list_radios .yes_add_waitlist {
	margin-left: 38px;
}

.wait_list_container .trips_from select,
.wait_list_container .trips_until select {
	margin-left: 10px;
	margin-bottom: 0;
}

.wait_list_container p.current_departure {
	margin: 0 ;
}

.wait_list_container .checkbox input,
.wait_list_container .checkbox p {
	float: left;
	display: block;
}

	.wait_list_container p.disabled {
		color: #ccc;
	}

.wait_list_container .checkbox input {
	display: block !important;
	margin-right: 10px;
	margin-bottom: 20px;
}

.wait_list_container .checkbox p {
	overflow: hidden;
	width: 600px;
	font-weight: bold;
	font-size: .9em;
	margin-bottom: 10px;
}

.wait_list_container .submit {
	text-align: center;
}

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


#reservations .reservation_system {
	width: 50%;
	float: left;
}

#reservations .helpful_information {
	width: 44%;
	float: right;
}

.prev_next_dates input {
	border: none;
	padding: 5px 10px;
	line-height: 1em;
	font-size: 11px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	background-color: #e2f2fb;
	color: #34688b;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border: solid 1px #a2c7e6;
	cursor: pointer;
	margin-bottom: 40px;
}

.prev_next_dates input:hover {
	background-color: #f5fbff;
}

.prev_next_dates input.prev {
	float: left;
}

.prev_next_dates input.next {
	float: right;
}

.required_note {
	color: #a6a6a6;
}

span.required {
	color: #C30;
	font-weight: bold;
}

.departures h2 {

}

form .departures input.date,
form .returns input.date {
	border: solid 1px #d4dfe1;
	font-size: 22px;
	font-family: Georgia, "Times New Roman", Times, serif;
	color: #42657b;
	width: 567px;
	line-height: 1em;
	background: url(/img/site/change_date.gif) no-repeat right center;
	padding: 5px 100px 5px 8px;
}

form .departures input.user_drop_date,
form .returns input.user_drop_date {
	background-image: url("/img/site/calendar_field_bg.jpg");
	width: 150px;
	font-size: 13px;
	padding: 4px;
	display: inline-block;
	margin-bottom: 1.5em;
}

#debit_card_modal_content,
#po_box_modal_content,
#cc_policies_modal_content,
#pp_policies_modal_content,
#cc_gift_card_policies_modal_content,
#single_trip_modal_content {
	display: none;
}

/* Basic Modal Popup Styling */
#simplemodal-overlay {
	background-color: #000;
}

#simplemodal-container {
	height: 420px;
	width: 600px;
	color: #626262;
	background-color: #f1f9ff;
	border: 4px solid #a8d5f1;
	padding: 12px;
	-webkit-border-radius: 9px;
	-moz-border-radius: 9px;
	border-radius: 9px;
	-webkit-box-shadow: 2px 2px 8px #333;
	-moz-box-shadow: 2px 2px 8px #333;
	box-shadow: 2px 2px 8px #333;
}

#simplemodal-container p {
	color: #444444;
	line-height: 19px;
}

#simplemodal-container h2 {
	margin: 0 0 14px 0;
	padding: 0;
}

#simplemodal-container .simplemodal-data {
	padding: 8px;
}

#simplemodal-container a {
	color: #069;
}

#simplemodal-container a.modalCloseImg {
	background:url(/img/site/styled_modal_close.png) no-repeat;
	width: 25px;
	height: 29px;
	display: inline;
	z-index: 3200;
	position: absolute;
	top: -15px;
	right: -16px;
	cursor: pointer;
}

	#simplemodal-container ul {
		margin: 20px 10px 25px 10px;
	}

		#simplemodal-container ul li {
			background: url(/img/site/bullet_bg.png) no-repeat 0 .4em;
			list-style-type: none;
			margin-left: 0;
			padding: 0 0 0 16px;
			line-height: 1.5;
			background-color: transparent;
		}

a.steamship_mobile {
	display: block;
	float: right;
	margin: -20px 0 30px 30px;
}

.payment_information .card_name {
	width: 47.5%;
}

.purchase_ticket_books .payment_form .card_name {
	clear: both;
}

/**
 * Weather class icons
 */
 .thunderstorm {

 }


/* gift card styling */


.check_gift_code {
	max-width: 780px;
}

.shipping_address .text input {
	margin: 0px 0 20px 0;
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

.shipping_address .first_last .first {
	width: 47.5%;
	float: left;
}

.shipping_address .first_last .last {
	width: 47.5%;
	float: right;
}

.shipping_address .city_state_zip_country .text {
	float: left;
	margin-right: 5%;
}

.shipping_address .city_state_zip_country .city {
	width: 30%;
}

.shipping_address .city_state_zip_country .state {
	width: 20%;
}

.shipping_address .city_state_zip_country .zip {
	width: 10%;
	margin-right: 0;
}

.shipping_address .city_state_zip_country .country {
	float: right;
	margin-right: 0%;
	width: 25%;
}


.shipping_address .cell_numbers .text {
	float: left;
	margin-right: 5%;
	width: 30%;
}

.shipping_address .cell_numbers .last {
	float: right;
	margin-right: 0%;
}

.purchase_gift_cards .email_addresses .text {
	width: 47.5%;
	float: left;
}

.purchase_gift_cards .email_addresses .last {
	float: right;
}

.gift_card_details {
	padding: 20px;
	background-color: #f9fdff;
	border: solid 1px #a8d5f1;
	border-radius: 5px;
	margin-bottom: 2em;
}

.gift_card_details .gift_card_batch {
	margin: 0 0 1.2em;
	font-size: 1.2em;
}

.gift_card_details .gift_card_batch span {
	font-size: .9em;
	color: #8f9a9f;
}

.gift_card_details .gift_card_batch input.quantity,
.gift_card_details .gift_card_batch input.value {
	width: 40px;
	font-size: 1.4em;
	margin: 0px 5px;
}

.gift_card_details .gift_card_batch input.value {
	width: 120px;
	margin-left: 0;
}

a.additional_cards {
	background-color: #ec8a0c;
	display: block;
	padding: 5px 10px;
	border-radius: 3px;
	float: left;
	color: #fff;
	font-size: 10px;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
	border: 1px solid #c87717;
}

	a.additional_cards:hover {
		border: 1px solid #c87717;
	}

.second_batch,
.third_batch,
.fourth_batch,
.fifth_batch {
	display: none;
}

/* reload */

.reload_card {
	margin-bottom: 2em;
}

.reload_card h2 {
	font-size: 20px;
}

.gift_code {
	width: 30%;
	float: left;
}

.gift_code .text input {
	font-size: 1.4em;
}

.gift_card_amount {
	width: 65%;
	float: right;
	margin: 0;
}

.gift_card_amount .text input.text_field {
	width: 200px;
	float: left;
	font-size: 1.4em;
	margin-right: 20px;
}

	.gift_card_amount .text span.dollar_position {
		float: left;
		display: block;
		font-size: 25px;
		margin: 2px 6px 0 0;
	}

.gift_card_amount em {
	display: block;
	float: left;
	padding-top: 10px;
}

/* check balance */

.check_balance label,
.check_balance .text,
.check_balance .submit_left {
	float: left;
	margin: 0;
	margin-right: 15px;
}

.guest_check_balance .submit_left {
	margin-top: 1em;
}

form .check_balance h2 {
	font-size: 22px;
	margin: 0;
	margin-top: 5px;
}

form .check_balance .text input {
	font-size: 1.4em;
	padding: 7px 4px 6px;
	width: 250px;
}

/* gift card main */

.gift_card_options a.text_button {
	margin-top: 20px;
	margin-right: 30px;
}

/* Headstart Details */

#headstart_details .radios {
	display: block;
	margin-bottom: 20px;
	margin-top: 25px;
}

#headstart_details .radios .radio {
	padding-bottom: 10px;
	font-size: 1.1em;
}
	#headstart_details .radios .radio.none_left {
		color: #ccc;
	}

.help.not_listed {
	margin: 2em 0 0;
}

#transfer_details #torso input {
	margin-bottom: 10px;
}

#transfer_details .plate_address {
}

#transfer_details .plate_info div {
	float: left;
	margin-right: 30px;
	margin-bottom: 1.5em;
}

#transfer_details .plate_info div input {
	width: 200px;
}

#transfer_details .phone_email {
	margin-top: 2em;
}
#transfer_details .phone_email input {
	width: 100%;
}
	#transfer_details .phone_email .phone.text {
		float: left;
		width: 47%;
	}
		#transfer_details .phone_email .phone.text.even {
			float: right;
		}

#transfer_details .full_name div {
	float: left;
	width: 47%;
	padding-right: 0;
}

#transfer_details .full_name div input {
	width: 100%;
}

#transfer_details .full_name div.last {
	float: right;
}

#transfer_details .address div input {
	width: 100%;
}

#transfer_details .city_country_state_zip div {
	float: left;
	margin-right: 16px;
}

#transfer_details .city_country_state_zip div.zip {
	float: right;
	margin-right: 0px;
}

#transfer_details .city_country_state_zip div.city input {
	width: 159px;
}

#transfer_details .city_country_state_zip div.country input {
	width: 100px;
}

#transfer_details .city_country_state_zip div.state input {
	width: 30px;
}

#transfer_details .city_country_state_zip div input {
	width: 50px;
}

#transfer_details .transfer_email input {
	width: 100%;
}

/* Unsettled Balances / Credits */

ul.unsettled_reservations {
	margin: 0 0 2em 0;
	padding: 0;
}

ul.unsettled_reservations li {
	width: 350px;
	float: left;
	margin: 0 0 20px 0;
	background: none;
	padding: 10px 15px;
	border: solid 1px #a8d5f1;
	padding-right: 80px;
	border-radius: 5px;
	font-size: 15px;
	background: url(/img/site/icons/credit.gif) no-repeat right center #eef7fc;
}

ul.unsettled_reservations li.balance {
	border: solid 1px #f1c4a8;
	background: url(/img/site/icons/balance.gif) no-repeat right center #fcf3ee;
}

ul.unsettled_reservations li.even {
	float: right;
}

.legend img {
	vertical-align: middle;
}


#forgot_your_password .forgot_password_email {
	float: left;
}

#forgot_your_password .submit {
	float: right;
	margin-top: -8px;
}

#forgot_your_password .forgot_password_email input.text {
	width: 280px;
	margin-left: 20px;
}


ul.trip_advisories,
ul.trip_advisories li {

}

ul.trip_advisories {
	border-radius: 5px;
	background-color: #fefaf8;
	border: solid 2px #ffdaca;
	padding: 2px 15px;
	margin: 0 0 2em 0;
}

ul.trip_advisories li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	background: url(/img/site/icons/alert.gif) no-repeat 0px .4em;
	min-height: 30px;
	text-shadow: 0px 1px 1px #fff;
	border-bottom: solid 1px #ffdaca;
	padding: 9px 0 5px 40px;
	color: #502d24;
}

ul.trip_advisories li:last-child {
	border-bottom: none;
}

#residents .boat_whistle_container {
	float: right;
	margin: -5px 0 10px 30px;
}

.main_content .vessel_tracker {
	float: right;
	margin: 4px 0 20px 40px;
}

#review_and_purchase .cancellations {
	margin-top: 3em;
}
#boat_whistle {
	height: 217px;
	width: 196px;
}


#purchase_ticket_books label h4 {
	color: #628aa4;
	font-size: 18px;
}

#purchase_ticket_books .ticket_book_type div {
	float: left;
	margin-right: 50px;
}

.ticketbook_grand_total {
	color: #063;
	font-weight: bold;
	font-size: 1.5em;
}

.gift_card_payment {
	color: #066;
	font-size: 1.2em;
	font-weight: bold;
}

.test_mode {
	background: #383a3b;
	bottom: 12px;
	color: #fff;
	font-family: 'Ubuntu Mono', Consolas, monospace;
	height: 36px;
	left: 12px;
	overflow: hidden;
	position: fixed;
	white-space: pre;
	width: 36px;
}

	.test_mode.open {
		height: auto;
		overflow: auto;
		right: 12px;
		top: 12px;
		width: auto;
		z-index: 9999;
	}

.site_banner {
	padding: 0;
	line-height: 41px;
	border-top: 1px solid #8db5c8;
	border-right: 1px solid #8db5c8;
	border-bottom: none;
	border-left: 1px solid #8db5c8;
	font-weight: bold;
	color: #FFFFFF;
	text-decoration: none;
	border-left-width: 0;
	font-family: Georgia, Constantia, Lucida, serif;
	font-weight: normal;
	font-size: 20px;
	background: url(/img/site/tab_bg.jpg) repeat-x;
	text-align: center;
}
	.site_banner a,
	.site_banner a:visited {
		color: #fff;
	}

.columns {
    display: table;
    table-layout: fixed;
    width: 100%;

}

.columns > div {
	display: table-cell;
}

.columns > hr {
	background: none;
	border: 0;
	display: table-cell;
	width: 1em;
}

/* Parking Attendant Styles */
.parking_status_manager {
    padding: 20px 0;
}

.parking_lot_status_card {
    background-color: #F9FDFF;
    border: 3px solid #A8D5F1;
    border-radius: 5px;
    padding: 15px;
    margin-bottom: 20px;
}

.parking_lot_status_card h3 {
    color: #006699;
    margin: 0 0 15px 0;
}

.status_controls,
.message_controls {
    margin-bottom: 15px;
}

.status_controls label,
.message_controls label {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
}

.lot-status {
    width: 200px;
    padding: 5px;
    border: 1px solid #A8D5F1;
    border-radius: 3px;
}

.lot-message {
    width: 100%;
    height: 60px;
    padding: 5px;
    border: 1px solid #A8D5F1;
    border-radius: 3px;
    resize: vertical;
}

.last_updated {
    font-size: 0.9em;
    color: #666;
    margin-top: 10px;
}

.update-status {
    background-color: #006699;
    color: white;
    border: none;
    padding: 8px 15px;
    border-radius: 3px;
    cursor: pointer;
}

.update-status:hover {
    background-color: #005580;
}

