/*
=general
=page structure
=utility_navigation
=main_navigation
=sub_navigation
=sub_sub_navigation
=page_navigation
=booking_navigation
=page content
=calendar
=misc
*/


/*
=general
---------------------------------------------- */

* {
    margin: 0;
    padding: 0;
}

/* html */
html { height: 100%; }

html, body { width: 100%; }

body {
    font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, Arial, Helvetica, sans-serif;
    font-size: 69%; /* 11px */
    color: #666;
    line-height: 160%; /* 17px */
    text-align: center;
}

table, tr, td, input, select, textarea, ul, ol {
    font-size: 100%;
    vertical-align: top;
}

kbd {
    font-size: 100%; /* 11px */
    font-size: 11px;
    color: #333;
}

abbr { cursor: help; }

a img, img { border: 0; }

code, pre {
    font-size: 1.5em;
    color: #999;
    display: block;
    width: 500px;
}

h1, h2, h3, h4 { font-family: 'Lucida Grande', Arial, Helvetica, Verdana,  sans-serif; }

/* =h1 */
h1 {
    font-size: 32px;
    font-weight: normal;
    color: #54c200;
    padding: 0 0 7px 12px;
    background: transparent url(../images/bg-h1.gif) no-repeat 0% 100%;
    width: 372px; /* 386px */
    line-height: 120%;
    position: absolute;
    left: 0;
    bottom: 0;
}

h1.home_h1 {
    display: block;
    text-indent: -999em;
    background: transparent url(../images/bg-look-book-heading.gif) no-repeat 0px 0%;
    width: 370px;
    padding: 0px;
    height: 41px;
}

h1.noline { background: transparent url(../images/bg-h1-noline.gif) no-repeat 0% 100%; }

h1 a, h1 a:hover {
    color: #54c200;
}

/* =h2 */
h2 {
    font-size: 2em; /* 22px */
    font-weight: normal;
    margin-bottom: 5px;
    color: #333;
    padding: 0 0 3px 14px; /* 9px */
    border-bottom: 1px solid #DCDCDC;
    line-height: 130%;
}

h2.clear {
    clear: both;
    padding-top: .5em;
    margin-bottom: 1px;
    width: 913px;
}

h2 span { font-size: .5em; }


/* =h3 */
h3 {
    font-size: 1.455em; /* 16px */
    font-weight: normal;
    color: #54c200;
    border-bottom: 1px solid #DCDCDC;
    padding: 0 0 1px 14px; /* 7px */
    line-height: 140%;
}

h3 span {
    font-size: 11px;
    font-weight: normal !important;
    color: #6B8491;
}

h3.block {
    background: #EAEAEA url(../images/bg-panel-h3-block.gif) repeat-x 0% 100%;
    padding: .45em 12px; /* 10px */
    margin: 0;
    color: #333;
    font-weight: bold;
}

h3.space_above {
    margin-top: 10px;
    border-bottom: none;
}

h2 em, h3 em {
    font-style: normal;
    color: #999;
    font-size: .8em;
}

/* =h4 */
h4 {
    font-size: 1.18em; /* 13px */
    font-weight: normal;
    color: #49A800;
    line-height: 20px;
    margin: 0 14px 0px 14px;
}

/* =h5 */
h5 {
    font-size: 1em;
    font-weight: bold;
    color: #54c200;
    margin: 0 14px .25em;
}

/* =h6 */
h6 {
    color: #444;
    font-size: 1em;
}

h6.faq_question {
	margin-bottom: 5px;
}

/* =a */
a {
    text-decoration: none;
    color: #008aff;
}

a:hover  {
    color: #333;
}

/* =p */
p { margin: 0 14px 15px; }

ul { list-style: none; }

dl { margin: 0 14px 1em; }

dt {
    font-weight: normal;
    float: left;
    font-size: 1em;
    padding-right: 5px;
}

blockquote { margin: 0 14px 15px; }

.red { color: #ff0000; }

.grey, #panel p.grey { color: #666; }

dd p { margin-left: 0; }

/* =hr */
hr {
    background: #DCDCDC;
    height: 1px;
    border: none;
    margin: 0 0 1em;
    clear: left;
}

address { font-style: normal; }



/*
=page structure
---------------------------------------------- */

#container {
    margin: 0 auto;
    text-align: left;
    position: relative;
    width: 913px;
}

#wrapper {
    width: 100%;
    margin-bottom: 6em;
}

#content { padding: 10px 353px 0 0; /* 913px */ }


#header {
    width: 100%;
    position: relative;
}

#header img {
    float: left;
    margin-top: 11px;
}

/* =menu */
#header #menu {
    width: 487px;
    float: right;
    background: #1588c5 url(../images/bg-menu.gif) repeat-x 0% 100%;
    padding-top: 17px;
}

#header #menu .padding {
    width: 451px;
    margin-left: 18px;
}

#header #menu  #menu_top {
    width: 100%;
    margin-bottom: 3px;
}

#content.narrow {
    width: 386px;
    padding-right: 0;
}

#content.wide {
    padding-right: 0; /* 913px */
}



/* =form */
form { margin: 0; padding: 0; }

/* =search */
#search {
    float: left;
    width: 213px;
}

#search input.text {
    background-color: #389dd4 !important;
    color: #eff8fe;
    border-color: #49aee6;
    float: left;
}

/* =book */
#book {
    background: url(../images/bg-form-book.gif) repeat-y 0% 0%;
    width: 389px;
    position: relative;
    left: -4px;
    top: -14px;
    margin-bottom: 0;
    padding: 0;
}

#book_wrapper {
    background: transparent url(../images/bg-form-book-wrapper.gif) no-repeat 0% 0%;
    width: 381px;
    padding: 6px 2px 0px 6px;
}

#book_bottom {
    background: #fff url(../images/bg-form-book-bottom.gif) no-repeat 0% 0%;
    width: 100%;
    height: 4px;
    padding-bottom: 6px;
}

/* =logins */
#logins {
    background: transparent url(../images/bg-form-logins.gif) no-repeat 0% 0%;
    width: 390px;
    position: relative;
    left: -4px;
    padding: 1em 0 0;
    margin-top: 22px;
}

#logins form {
    margin-bottom: .5em;
}

#logins .bottom_form {
    background: transparent url(../images/bg-form-logins-bottom.gif) no-repeat 0% 100%;
    padding-bottom: .5em;
    margin-bottom: 0;
}

#logins .bottom_form fieldset {
    border-bottom: none;
}

#logins fieldset {
    padding: 0 0 .5em 13px;
    margin: 0 0 0 5px;
    width: 347px;
    border-bottom: 1px solid #B9DD9E;
}

#logins fieldset h4 {
    color: #54C200;
    font-weight: normal;
    margin: 0;
    padding: 0;
}

#logins p {
    margin-right: 8px;
}

#logins input {
    width: 116px; /* 128px */
}

#logins .button {
    margin-right: 0 !important;
}

div.form_container {
    border: 1px solid #BABABA;
}

/* =inline */
.inline {
    margin-bottom: .75em;
    width: 100%;
}

.inline label {
    font-size: 16px;
    color: #333;
    width: 200px;
    float: left;
    line-height: 120%;
}

.inline input.text {
    float: left;
    margin-right: 12px;
}

/* =fieldset */
fieldset {
    border: none;
    clear: left;
}

fieldset.odd, fieldset.even {
    border-bottom: 1px solid #fff;
    padding: 5px 0 5px 12px;
}

fieldset.odd {
    background-color: #DEEFFA;
}

fieldset.even {
    background: transparent url(../images/bg-fieldset-even.gif) repeat 0% 0%;
}

fieldset h3 {
    padding: 0;
    margin: 0;
    font-weight: bold;
}

fieldset h4 {
    color: #444;
    font-weight: bold;
    margin: 0;
}

fieldset p {
    float: left;
    margin: 0 17px .65em 0;
    padding: 0;
    width: auto !important;
}

fieldset .stronger {
    background-color: #E7F3FA;
    padding: 4px 6px;
    float: left;
    clear: left;
    margin-bottom: 2px;
}

fieldset span {
    display: block;
    margin: 2px 0;
    clear: left;
    line-height: 16px;
}

#content fieldset ul {
    margin: 0 0 2em;
    padding: 0;
}

#content fieldset ul li {
    margin: 0 0 1em;
    padding: 0;
    background: none;
    width: 100%;
    clear: left;
}

#content fieldset ul.border {
    margin: 0;
}

#content fieldset ul.border li {
    margin: 0;
    padding: 1em 0;
    border-bottom: 1px solid #DCDCDC;
}

fieldset ul li label {
    float: left;
    width: 117px;
}

#content ul.links {
    margin: -10px 0px 25px 0px;
    padding: 4px 13px 6px 13px;
    background: transparent url(../images/bg-sub-nav.gif) repeat 0% 0%;

}

fieldset ul li div {
    float: left;
}

/* =label */
label {
    color: #444;
    display: block;
}

/*input */
input, textarea, select {
    font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, Arial, Helvetica, sans-serif;
}

input.text, input.password {
    padding: .2em 5px;
    background: #eee !important;
    color: #444;
    border: 1px solid #D2D2D2;
    width: 150px; /* 160px */
    height: 15px;
}

input.text:focus, input.password:focus {
    border-color: #888888;
}

input.text.small {
    width: 50px; /* 60px */
}

input.text.large {
    width: 190px; /* 200px */
}

input.checkbox {
    position: relative;
    top: 3px;
}

input.radio, input.checkbox {
    position: relative;
    top: 3px;
    width: 13px;
    /*height: 13px;*/
}

select {
    width: 168px;
    border: 1px solid #aaa;
    height: 17px;
    padding: 0px;
    color: #333;
    line-height: 11px;
    background: #fff !important;
}

select.medium {
    width: 100px;
	margin-top: 1px;
}

select.medium_expiry_month {
    width: 100px;
	margin-right: 6px;
}

select.small {
    width: 55px;
}

option {
    padding-left: 4px;
    padding-bottom: 2px;
}

.input_wrapper {
    background-color: #EFF7FC;
    border: 1px solid #CEE0E8;
    float: left;
    padding: 5px 5px 3px 5px;
    margin: 6px 0px 0px 0px;
    width: 380px;
    position: relative;
    top: -12px;
}
/* =vehicles */

.vehicle_menu {
    width: 357px;
}

.vehicle_menu p {
    margin: 0;
    padding: 0;
}

.vehicle_menu label {
    padding: 4px 0;
    width: auto;
    float: left;
    height: 18px !important;
}

.vehicle_menu #novehicle_returning_tab, .vehicle_menu #novehicle_departing_tab {
	padding-right: 7px;
    display: inline;
}

.vehicle_menu #vehicle_returning_tab, .vehicle_menu #vehicle_departing_tab, .vehicle_menu #motorcycle_returning_tab, .vehicle_menu #motorcycle_departing_tab {
    padding-left: 7px;
    padding-right: 7px;
    /*margin: 0 0 0 12px;*/
    display: inline;
}

.vehicle_menu #vehicle_returning_tab.selected, .vehicle_menu #vehicle_departing_tab.selected, .vehicle_menu #motorcycle_returning_tab.selected, .vehicle_menu #motorcycle_departing_tab.selected 
{
	background: #DEEFFA;
    border: solid #ADC0C8;
    border-width: 1px 1px 0;
    padding: 2px 6px 5px 6px;
    position: relative;
    top: 1px;
}

.vehicle_types, #motorcycle_departing, #motorcycle_returning 
{
	clear: both;
    border: 1px solid #ADC0C8;
    width: 355px; /* 357px */
	background-color: #DEEFFA;
    margin: 0 0 6px;
    padding: 5px 0 0;
}

#motorcycle_departing p, #motorcycle_returning p {
    padding: 2px 5px 9px 5px;
    margin: 0;
    color: #444;
}


.vehicle_types input.text {
    width: 60px;
    margin: 0 0 0 4px;
}

.vehicle_types p {
    width: 100%;
    float: none;
    margin: 0 0 0;
}

.vehicle_types label {
    clear: left;
    background: transparent no-repeat 10px 50%;
    padding: .5em 0 .5em 60px;
}


.vehicle_types .selected, .vehicle_types label.length, .trailer_types .selected, .trailer_types label.length {
    background-color: #BFDDEB;
    width: 295px;
}

/* trailer types*/

.vehicle_types .trailers {
    background-color: #EFEFEF;
    margin: 10px 0 0;
    padding: 5px 0;
    border-top: 1px solid #CBDFE8;
}

.vehicle_types label.towed {
    padding: 0;
    margin: 2px 0 5px 12px;
    color: #555;
}

.vehicle_types .trailers label.towed span {
    color: #777;
    display: inline;
}

#different_return_vehicles_title, #passengers_returning {
	margin-top: 10px;
}


/* =messages */

.DPS_issue_info {
    border: 1px solid #F5F1C1;
    margin-bottom: 2em;
    padding: 5px 10px 6px 10px;
    color: #E71010;
    background-color: #FFFBCB;
}

.info {
    background-color: #FFFBCB;
    border: 1px solid #F5F1C1;
    margin-bottom: 2em;
    padding: 5px 10px 6px 10px;
    color: #333;
}

div.info.to_pay { float: right; margin-top: 6px; }
div.info.to_pay h3 { padding: 0; margin: 0; }
div.info.to_pay p { margin: 0; padding: 0; width: auto; line-height: 14px;  }

.below_booking_box {
    padding: 10px 10px 10px 10px;
    width: 891px; /* 913px */
}

.below_booking_box span {
    display: block;
    padding-top: 2px;
}

.info h3 {
    color: #E71010 !important;
    padding: 0;
}

.info p {
    margin: 0;
}

.note {
    background: url(../images/bg-note.gif) no-repeat 0% 2px;
    padding: 2px 0px 0 17px;
    color: #6b8491;
}

.down {
    background: transparent url(../images/bg-arrow-right-link.gif) no-repeat 0 50%;
    padding-left: 10px;
}

.down:hover {
    background: transparent url(../images/bg-arrow-down-link.gif) no-repeat 0% .5em;
    padding-left: 10px;
}

.req {
    color: #F43434;
}

.special_info {
    position: relative;
    top: 3px;
}

table .special {
    position: absolute !important;
    margin-left: 4px;
    margin-top: 1px;
}


/* =table */

.table_container { clear:both }

.table_container.narrow {
    width: 600px;
    margin-bottom: 25px;
}

.table_container.simple table {
    border-top: 1px solid #ccc;
    border-left: 1px solid #E7F2F9;
    border-right: 1px solid #E7F2F9;
    border-bottom: none;
}

.table_container.simple th {
    border-right: 2px solid #fff;
    border-left: none;
}

.table_container.simple td {
    padding-top: .4em;
    padding-bottom: .4em;
    border-right: 2px solid #fff;
    background: #E7F2F9;
    border-left: none;
}


.table_container.simple td.last, .table_container.simple td.last.hover {
    border-right: none !important;
    border-left: none;
}

.table_header {
    background: #EAEAEA url(../images/bg-table-header.gif) repeat-x 0% 100%;
    margin-top: 8px;
    padding: 6px 11px 6px 11px;
    font-weight: normal;
    color: #333;
    clear: both;
}

.table_header.footer {
    background: #EAEAEA url(../images/bg-table-footer.gif) repeat-x top left;
    margin: 0;
}


.table_header h3, #panel .table_header h3 {
    margin: 0;
    padding: 0 !important;
    color: #333;
    font-weight: bold;
}

 #sailing_total_price {
    font-size: 16px;
    font-weight: bold !important;
    color: #333 !important;
}

.table_header h4 {
    margin: 0;
    padding: 0;
}

.table_header h4 a {
    font-weight: normal;
    font-size: .9em;
    margin-left: .5em;
}

.table_header h3 em {
    font-size: 12px;
    font-weight: normal;
    font-style: normal;
    color: #333;
}

table {
    border: 1px solid #BABABA;
    color: #555;
    width: 100%;
}

#panel table {
    margin-bottom: 5px;
}

table.hover {
    border-color: #949494;
}

table.totals th {
    background: none;
    border: none;
    padding-left: 0;
}

table.totals h3 {
    padding-left: 0px;
    margin-left: 0px;
}

table.totals h3 span {
    font-size: 16px;
    color: #333;
    font-weight: bold !important;
}

table.totals th.totals_first_cell {
    width: 379px;
}

/*Specials*/

.table_container.specials {
    background-color: #636E79;
    padding: 0 12px 14px;
}

.table_container.specials p.special_detail {
    color: #fff;
    margin: 0;
}

.table_container.specials .table_header { background: none; padding-left: 0;}
.table_container.specials .table_header h3 { color: #fff; }
.table_container.specials .table_header h3 strong { color: #A8FF68; }
.table_container.specials table { border: 1px solid #000; }


/* =Cruisey pay */

div.grey_box {
    background-color: #f8f8f8;
    padding: 15px 12px;
    width: 836px;
}

.grey_box div { float: left; }

.grey_box .left { width: 283px; }
.grey_box .middle { width: 74px; }
.grey_box .right { width: 470px; }

.grey_box p {
    width: auto !important;
    margin: 0;
    color: #333;
    font-size: 1.087em;
}

.grey_box p.cost {
    font-size: 16px;
    margin: 2px 0 7px 0;
    font-weight: bold;
}

.grey_box .right p.cost {
    margin-bottom: 5px;
}

.grey_box p.cost span#admin_fee {
    font-size: 0.75em;
    font-weight: normal;
} 

.grey_box .middle p {
    position: relative;
    top: 20px;
    font-size: 17px;
    color: #676767;
}

.grey_box p.extra {color: #6f6f6f; }


/* =tr  */
.sailings tr.hover td.odd, .sailings tr.hover td.even, .sailings tr.hover td.kaitaki {
    background: #D5EEFF;
    border-left: 1px solid #D5EEFF;
}

.sailings td.odd.input.hover, .sailings td.even.input.hover, .sailings td.kaitaki.input.hover {
    background-color: #8BB5D0 !important;
    border-left: 1px solid #8BB5D0;
}

.sailings td.odd.last.input.hover, .sailings td.even.last.input.hover, .sailings td.kaitaki.input.hover {
    border-right: 1px solid #8BB5D0;
}

.sailings td.odd.input.hover label, .sailings td.even.input.hover label, .sailings td.kaitaki.input.hover label {
    color: #ffffff;
}

/*active block */

.sailings tr td.odd.active, .sailings tr td.even.active, .sailings tr td.kaitaki.active {
    background: #8BB5D0;
    border-left: 1px solid #D5EEFF;
}

.sailings td.odd.input.active label, .sailings td.even.input.active label, .sailings td.kaitaki.input.active label {
    color: #ffffff;
}

.sailings tr.hover td.last {
    border-right: 1px solid #D5EEFF;
}

tr.subtotal td, tr.total td {
    font-weight: bold;
    padding-top: 8px;
    padding-bottom: 8px;
    color: #222;
}

tr.subtotal td.last, tr.total td.last {
    border-left: none;
    border-right: none;
}

tr.subtotal td {
    background: #fff;
    border-top: 1px solid #DCDCDC;
}

tr.total td {
    background: #EAEAEA;
    font-size: 1.18em; /* 13px */
    border-left: 1px solid #EAEAEA;
}

tr.na td {
    background: transparent url(../images/bg-td-na.gif) repeat 0% 0%;
    color: #8A8A8A;
}

tr.on td.odd {
    background-image: url(../images/bg-td-odd-on.gif);
}

tr.on td.even {
    background-image: url(../images/bg-td-even-on.gif);
}

tr.on td.kaitaki {
    background: url(../images/bg-td-na.gif) repeat 0% 0%;
}

tr.bottom td {
    border-top: 1px solid #DCDCDC;
    border-right: none;
}

/*in the summary table*/
tr.there td { 
    line-height: 130%
}

tr.back td { 
    line-height: 130%;
    border-top: 1px solid #DCDCDC;
}

/* =th */
th {
    background: transparent url(../images/bg-th.gif) no-repeat 100% 100%;
    font-weight: bold;
    text-align: left;
    color: #526E7F;
    padding: .6em 11px;
    border-left: 1px solid #fff;
}

th:first-child, td:first-child, th.first, td.first {
}

th.last, td.last {
    background-position: -1px 100%;
    border-right: 1px solid #fff;
}

th.even {
    background-image: url(../images/bg-th-even.gif);
    color: #5E754D;
    width: 96px;
}

table.summary th.even { width: auto; }
.summary th, .summary td { padding: 6px 6px 6px 5px; }
.summary .summary_left_padding { padding-left: 10px; }
table.summary tr.penalty td { background: url(../images/bg-penalty.gif); }
th.even a { color: #5E754D !important; }
th.kaitaki { background: #fff; }

th.kaitaki a {
    display: block;
    text-indent: -999em;
    background: transparent url(../images/bg-td-kaitaki-plus.gif) no-repeat 0% 0%;
    width: 58px;
    height: 14px;
    margin-top: 3px;
}

/* =td */
td {
    padding: .4em 11px;
    border-left: 1px solid #fff;
    background: #fff url(../images/bg-td-odd.gif) no-repeat 100% 100%;
}

td.odd { background-image: url(../images/bg-td-odd.gif); }
td.even { background-image: url(../images/bg-td-even.gif); }
td.light_grey { color: #8A8A8A; }

.table_footer {
    background: #EFEFEF url(../images/bg-table-wrapper-bottom.gif) repeat-x 0% 0%;
    position: relative;
    width: 856px; /* 860px */
    padding-left: 4px;
    margin-bottom: 16px;
}

.space { margin-bottom: 27px; }

.specials .table_footer {
    background: #EFEFEF url(../images/bg-table-wrapper-bottom.gif) repeat-x 0% 0%;
    position: relative;
    width: 830px;
    margin: 0 0 0 1px;
}


.table_footer .button {
    margin: .5em 9px 0 0 !important;
}


/*
=error styles
-----------------------------------------------------*/
fieldset.passenger_error {
    background: #FFE6E6;
    border: 1px solid #f00 !important;
    margin: 0 0 2px 0;
}

fieldset.passenger_error h4 {
    color: #f00;
}

fieldset.passenger_error span.error_text {
    color: #f00;
    font-weight: bold;
    display: block;
    clear: both
}

label.passenger_error {
    background-color: #FFE6E6;
    border: 1px solid #f00;
    margin: 2px 0;
}

.error, #content .error {
    background: #FFE6E6;
    padding: 3px 0;
    border-left: 3px solid #ffe6e6;
    border-top: 1px solid #ffe6e6;
    border-bottom: 1px solid #ffe6e6;
}

#content #logins .error {
    padding: 3px 6px 3px 3px;
    line-height: 145%;
    width: 100%;
    clear:both;
}

/* Show the error text if parent class='error', otherwise don't show it */
.error_text {
    display: none;
}

.error .error_text {
    display: inline;
    color: #222;
    clear: none;
}

li .error { width: 100%; }
#content p.error { padding: 3px;}
.error label { color: #EE1F1F; }
.error label.stronger { background-color: transparent; }

.error div {
    margin-left: -3px;
    display: inline;
}

.error input, .error select {
    border-color: #ff0000;
    background-color: #FFEEEE !important;
}

li .error_text { margin: 2px 6px 0px 6px; }
/* =table_error */
.table_error .table_header { background: #FFE6E6; }
.table_error .error_text  { display: block; color: #EE1F1F; }
.table_error table, .table_error table.hover { border-color: #ff0000 !important; }

#logins div.error.homepage {
	padding: 0px;
	border: none;
	background: none;
	margin-left: -3px;
}

#logins div.error.homepage span, #panel .feature.grey p.directions_error {
	color: #EE1F1F;
}


/*
=buttons
-----------------------------------------------------*/

strong.button {
    float: left;
    margin: -2px 5px 0 0;
    height: 24px;
    font-weight: normal;
    white-space: nowrap;
}

strong.button a {
    float: left;
    line-height: 24px;
}

/*button search (go button for search)*/
#search strong.button {
    background: transparent url(../images/bt-1-right.gif) no-repeat 100% 0%;
    padding-right: 15px;
    background-color: #1588c5;
    margin: 0 0 0 5px;
    height: 22px;
}
#search strong.button a {
    padding: 0 0 0 11px;
    background: #1588c5 url(../images/bt-1-left.gif) no-repeat 0% 0%;
    color: #fff;
    line-height: 22px;
}

/*button two  (left pointing blue background return button*/
strong.button.two {
    background: transparent url(../images/bt-2-right.gif) no-repeat 100% 0%;
    padding-right: 20px;
}
strong.button.two a {
    padding: 0 6px 0 16px;
    background: transparent url(../images/bt-2-left.gif) no-repeat 0% 0%;
    color: #fff;
    line-height: 22px;
    height: 24px;
}
strong.button.two a:hover {
    color: #2a5063;
}

/*button three (light blue right pointing */
strong.button.three {
    background: transparent url(../images/bt-3-right.gif) no-repeat 100% 0%;
    padding-right: 13px;
    margin-top: 0;
    }
strong.button.three a {
    padding: 0 0 0 10px;
    background: transparent url(../images/bt-3-left.gif) no-repeat 0% 0%;
    line-height: 19px;
    height: 22px;
}

/*button four right pointing continue button*/
strong.button.four {
    background: transparent url(../images/bt-4-right.gif) no-repeat 100% 0%;
    padding-right: 16px;
    font-family: Helvetica, Arial, Verdana, sans-serif;
    font-weight: bold;
    font-size: 15px;
}
strong.button.four a, #panel .feature.grey strong.button.four a {
    background: transparent url(../images/bt-4-left.gif) no-repeat 0% 0%;
    color: #fff;
    padding-left: 12px;
    height: 24px;
}
strong.button.four a:hover, #panel .feature.grey strong.button.four a:hover {
    color: #2a5063;
}

/*button five (white bg left pointing back button*/
strong.button.five {
    background: transparent url(../images/bt-5-right.gif) no-repeat 100% 0%;
    padding-right: 12px;
    font-family: Helvetica, Arial, Verdana, sans-serif;
    font-weight: bold;
    font-size: 15px;
}
strong.button.five a {
    padding-left: 16px;
    background: transparent url(../images/bt-5-left.gif) no-repeat 0% 0%;
    color: #6fb4e1;
    height: 24px;
}
strong.button.five a:hover {
    color: #2a5063;
}

/*button six (rounded both ends blue border white bg left facing) */
strong.button.six {
    background: transparent url(../images/bt-6-right.gif) no-repeat 100% 0%;
    padding-right: 9px;
    margin-right: 9px;
    margin-top: 0;
    height: 20px;
}
strong.button.six a {
    padding: 0 0 0 19px;
    background: transparent url(../images/bt-6-left.gif) no-repeat 0% 0%;
}

span.button_six {
    padding: 0 0 0 19px;
    margin:0;
    background: transparent url(../images/bt-6-left.gif) no-repeat 0% 0%;
}

/*button seven  (rounded both ends blue border white bg right facing)*/
strong.button.seven {
    background: transparent url(../images/bt-7-right.gif) no-repeat 100% 0%;
    padding-right: 19px;
    margin-right: 9px;
    margin-top: 0;
    height: 20px;
}
strong.button.seven a {
    padding: 0 0 0 9px;
    background: transparent url(../images/bt-7-left.gif) no-repeat 0% 0%;
}

strong.button.six a, strong.button.seven a {
    line-height: 17px;
    height: 20px;
}

/*button eight (Final process button. Rounded both ends)*/
strong.button.eight {
    background: transparent url(../images/bt-8-right.gif) no-repeat 100% 0%;
    padding-right: 14px;
    font-family: Helvetica, Arial, Verdana, sans-serif;
    font-weight: bold;
    font-size: 15px;
}
strong.button.eight a {
    background: transparent url(../images/bt-8-left.gif) no-repeat 0% 0%;
    color: #fff;
    padding-left: 12px;
}
strong.button.eight a:hover {
    color: #2a5063;
}

.button_container {
    margin: 10px 0 8px 4px;
    height: 24px;
    padding: 2px 0;
}

/*
=panel
-----------------------------------------------------*/

#panel {
    width: 487px; /* 487 */
    float: right;
    background: #fff;
    padding: 0 0 4em 40px;

}

#panel ol { list-style: none; }
#panel img { float: left; }

#panel ul li div {
    float: left;
    width: 100%;
    background: #636F79 url(../images/bg-feature.gif) repeat-x 0% 0%;
    color: #fff;
    padding: 10px 0px 3px 0px;
    margin-bottom: 0px;
}

#panel ul li div img {
    border: 1px solid #505B63;
    margin: 4px 10px 16px 14px;
    display: inline;
}

#panel ol li div {
    float: left;
    width: 100%;
    background: #636F79 url(../images/bg-feature.gif) repeat-x 0% 0%;
    color: #fff;
    border-bottom: 1px solid #fff;
}

#panel ol li div img {
    background: transparent url(../images/bg-shade.gif) repeat-y 100% 0%;
    padding-right: 5px;
    margin: 0 9px 0 0;
}

#panel ol li div h3 {
    margin-left: 173px;
    padding-top: 11px;
}

#panel ol li div p {
    margin-bottom: 0;
}

img.shade {
    padding-top: 6px;
    background: transparent url(../images/bg-shadow-above-right-image.gif) no-repeat left top;
}

#panel a {
    color: #91ddff;
    border-bottom: 1px solid #7998ab;
}

#panel a:focus, #panel a:hover, #panel a:active {
    color: #fff;
    border-color: #fff;
}

#panel h5 a {
    border-bottom: none;
    padding-bottom: 1px;
    background: transparent url(../images/bg-panel-a.gif) repeat-x 0% 100%;
}

#panel h3 {
    color: #fff;
    border-bottom: none;
    margin-top: -3px;
    padding-bottom: 0;
}

#panel h5 {
	color: #fff;
    margin-bottom: .2em;
    border-bottom: none;
    font-weight: bold;
}

#panel p {
    color: #CCE3EC;
    line-height: 16px;
}

#panel p.grey {
    margin-top: 7px;
}

#panel p em {
    color: #cce3ec;
    font-style: normal;
}

#panel ul#home_news li div {
    padding-bottom: 0px;
}

/* =feature */

h2.feature_heading {
    margin-bottom: 1px;
}

.feature {
    float: left;
    width: 100%;
    background: #636F79 url(../images/bg-feature.gif) repeat-x 0% 0%;
    color: #fff;
    padding: 10px 0px 0px 0px;
}

.feature p {
    color:#CCE3EC;
}

.feature a, #content .feature a {
    color: #91ddff;
    border-bottom: 1px solid #7998ab;
}

.feature h2 {
    border-bottom: none;
}

.feature h3 {
    border-bottom: none;
    font-size: 15px;
    color: #fff;
}

.feature h4 {
    color: #fff;
}

/* =feature.three */
#panel .feature.grey {
    background: #F1F1F1 url(../images/bg-feature-grey.gif) no-repeat 0% 100%;
    color: #666;
    padding: 1em 0;
}

#panel .feature.grey p {
    color: #666;
}

#panel .feature.grey a {
    color: #008AFF;
    border-bottom: none;
}

#panel .feature.grey a:hover {
    color: #333;
    border-bottom: none;
}

#panel .feature.grey h3, #panel .feature.grey h4 {
    color: #333;
}

/* =file */
#panel ul.file {
    margin: 0 14px 1em;
    padding: 0;
}

#content ul.file {
    margin: 0 0 1em 0;
    width: 386px;
}

#panel ul.file li {
    width: 100%;
}

#content ul.file li {
    width: 324px;
    background: none;
    padding-left: 0;
}

#content a.file, #panel a.file {
    border: 1px solid #B3DBED !important;
    padding: .4em 30px .5em;
    margin: 0 0 1em 0 !important;
    display: block;
    color: #008AFF;
}

#panel a.file { background-color: #fff !important; }

#content a.file {
    width: 324px; /* 386px */
    background-color: #E7F5FF !important;
}

#panel a.file:focus, #panel a.file:hover, #panel a.file:active, #content a.file:focus, #content a.file:hover, #content a.file:active {
    border: 1px solid #999 !important;
    color: #333;
}

a.pdf { background: transparent url(../images/icons/pdf.gif) no-repeat 6px 50% !important; }
a.word { background: transparent url(../images/icons/word.gif) no-repeat 6px 50% !important; }
a.zip { background: transparent url(../images/icons/zip.gif) no-repeat 6px 50% !important; }

/* =footer */
#footer {
    clear: both;
    border-top: 1px solid #c3c3c3;
    width: 100%;
    line-height: 150%; /* 16px */
    padding: .5em 0 2em;
}

#footer ul {
    width: 100%;

}

#footer ul li {
    width: 195px;
    float: left;
    margin-left: 12px;
    display: inline;
}

#footer ul li.utility_navigation {
    margin-left: 24px;
}

#footer ul li.copy_right {
    float: right;
    text-align: right;
    margin-right: 13px;
    margin-left: 0;
}

#footer ul ul {
    margin-bottom: 1em;
}

#footer ul ul li {
    float: none;
    display: block;
    width: 100%;
    margin: 0;
    padding: 0 0 .25em;
}

#footer h5 {
    margin: 0;
}

#footer a {
    background: transparent url(../images/bg-footer-a.gif) repeat-x 0% 100% !important;
    padding-bottom: 2px;
    color: #777;
}

#footer a:hover, #footer a:active, #footer li.current a {
    background-image: url(../images/bg-footer-a-on.gif) !important;
    color: #333;
}

#footer h5 a {
	color: #54c200;
	background: none !important;
}
#footer h5 a:focus, #footer h5 a:hover, #footer h5 a:active{
	background: none !important;
	color: #008aff;
}

/*
=utility_navigation
---------------------------------------------- */

ul.utility_navigation {
    list-style: none;
    margin: 0;
    padding-right: 9px;
    width: 200px; /* 209px */
    color: #003333;
    float: right;
    text-align: right;
}

ul.utility_navigation li {
    display: inline;
}

ul.utility_navigation a {
    background: transparent url(../images/bg-utility-nav-a.gif) repeat-x 0% 100%;
    padding-bottom: 1px;
    color: #003333;
}

ul.utility_navigation a:focus, ul.utility_navigation a:hover, ul.utility_navigation a:active, ul.utility_navigation li.current a {
    color: #fff;
}

ul.utility_navigation li.current a {
    background-image: url(../images/bg-utility-nav-a-on.gif);
}

/*
=main_navigation
---------------------------------------------- */

#main_navigation {
    margin-bottom: 16px;
    width: 100%;
}

#main_navigation ul {
    list-style: none;
    margin: 0 29px 0 0;
    width: 131px;
    float: left;
}

#main_navigation ul.right {
    margin-right: 0;
}

#main_navigation li {
    background: transparent url(../images/bg-main-nav-a.gif) repeat-x 0% 100%;
    width: 100%;
}

#main_navigation a {
    background: transparent url(../images/bg-arrow-54A8D3.gif) no-repeat 0% .75em;
    display: block;
    color: #D1E9F5;
    padding: 2px 0 2px 10px;
    width: 121px; /* 131px */
}

#main_navigation a:focus, #main_navigation a:hover, #main_navigation a:active, #main_navigation li.current a {
    color: #fff;
    background-image: url(../images/bg-arrow-fff.gif);
}

#main_navigation li.current {
    background-image: url(../images/bg-main-nav-a-current.gif);
}

/*
=sub_navigation
---------------------------------------------- */

#content #sub_navigation {
    background: transparent url(../images/bg-sub-nav.gif) repeat 0% 0%;
    margin: 0 0 .5em 0;
    padding: 8px 0 16px 14px;
    position: relative;
    top: -10px;
    width: 372px; /* 386px */
}

#content #sub_navigation li {
    border-bottom: 1px solid #D7E1E8;
    width: 210px; /* 221px */
    padding: 1px 0 .25em 11px;
    background: transparent url(../images/bg-arrow-54A8D3.gif) no-repeat 0% .6em;
}

#content #sub_navigation li.current {
    border-bottom: 1px solid #989898;
    background-image: url(../images/bg-arrow-5A5A5A.gif);
}

#content #sub_navigation a:focus, #content #sub_navigation a:hover, #content #sub_navigation a:active, #content #sub_navigation li.current a {
    color: #333;
}

#content #sub_navigation.booking {
    width: 899px; /* 920px */
    border-top: 1px solid #949494;
    position: relative;
    top: -10px;
}

#content #sub_navigation.booking li {
    width: 560px; /* 920px */
}

#content #sub_navigation.two_level li.current {
    border-bottom: 1px solid #D7E1E8;
    background: #D9ECF8 url(../images/bg-arrow-333-down.gif) no-repeat 0% .6em;
}

/*
=sub_sub_navigation
---------------------------------------------- */

#content #sub_navigation ul {
    background: #D9ECF8;
    padding: 0 6px .5em 6px;
    margin: 0;
}

#content #sub_navigation ul li {
    background: none;
    border: none;
    padding: 0;
    margin: 0;
}

#content #sub_navigation ul a {
    padding: 0;
    color: #008AFF !important;
}

#content #sub_navigation ul a:focus, #content #sub_navigation ul a:hover, #content #sub_navigation ul a:active, #content #sub_navigation ul li.current a  {
    color: #333 !important;
}

#content #sub_navigation ul li.current {
    background: none !important;
    border: none !important;
}

/*
=page_navigation
---------------------------------------------- */

#content .page_navigation {
    border-top: 1px solid #DCDCDC;
    width: 913px;
    background: #F2F2F2 url(../images/bg-pagination.gif) repeat-x 0% 0%;
    padding: .6em 0 .6em 15px;
    margin: 0;
}

#content .page_navigation li {
    background: none;
    float: left;
    padding: 0;
}

#content .page_navigation li.previous a {
    background: transparent url(../images/bg-arrow-prev-blue.gif) no-repeat 0% .5em !important;
    border: none !important;
    padding-left: 11px;
    /*color: #999;*/
}

#content .page_navigation li.next a {
    background: transparent url(../images/bg-arrow-229AFF.gif) no-repeat 100% .5em !important;
    border: none !important;
    padding-right: 11px;
}

#content .page_navigation a {
    display: block;
    border: 1px solid #B5DDF6;
    background: #E2F3FC;
    padding: 0 5px;
    margin-right: 4px;
    float: left;
}

#content .page_navigation a:focus, #content .page_navigation a:hover, #content .page_navigation a:active, #content .page_navigation li.current a {
    border: 1px solid #D0D0D0;
    background: #fff;
    color: #333;
}

/* =booking_container */
.booking_container {
    position: relative;
    top: -14px;
    left: -3px;
    width: 920px;
    background: transparent url(../images/bg-booking-container.gif) no-repeat 0% 0%;
    margin-bottom: 2em;
    padding-top: 26px;
}

.booking_container.under {
    top: 0;
    background-image: url(../images/bg-booking-container-under.gif);
}

.booking_wrapper {
    background: transparent url(../images/bg-booking-wrapper.gif) no-repeat 0% 100%;
    padding-bottom: 6px;
}

.booking_wrapper p, .booking_wrapper h4, .booking_wrapper dl {
    margin-left: 0px;
}

/* =booking_content */
.booking_content {
    width: 860px; /* 920px */
    padding: 0 30px;
    margin: 0;
    color: #6B8491;
}

.booking_content h2 {
    margin-bottom: .5em;
    padding: 0;
    color: #333;
    border: none;
    font-weight: bold;
}

.booking_content h3 {
    font-weight: bold;
    color: #333;
    border: none;
    padding: 0px 0px 3px 0px;
}

.booking_content h4 {
    font-size: 13px;
    font-weight: bold;
    color: #333;
    padding: 0;
}

.booking_content h5 {
    color: #333;
    margin: 0;
}

.booking_content dt {
    color: #333;
    margin-bottom: .5em;
}

.booking_content dd { margin-bottom: .5em; }
.booking_content p { width: 620px; }
.booking_content strong { color: #333; }
.barcode { float: right; }

/* =booking_item */
.booking_item {
    border: 2px solid #C7E5F9;
    margin: 15px 0px 15px 0px;
    padding: 9px 10px 9px;
    width: 836px; /* 860px */
}

.booking_item p {
    margin: 2px 14px 5px 0px;
}

.booking_item h3 {
    padding: 0;
    margin: 0 0 6px 0;
}

.booking_item h3.line {
    border-bottom: 1px solid #ddd;
    margin-bottom: 14px;
}

.booking_item h4 {
    padding: 0px;
    margin: 0px 14px 2px 0;
}

.booking_item dl {
    float: left;
    margin: 0 100px 1em 0;
}

.booking_item.stronger {
    border-color: #98C6E4;
    padding-bottom: 0px;
}

.booking_item.stronger label {
    font-size: 1.18em; /* 13px */
    width: 165px;
}

.booking_item.stronger p {
    margin-top: 0px;
}

.booking_item.stronger fieldset, .booking_item.stronger form {
    margin: 2px 0px 4px 0px;
}

#content .booking_item ul {
    margin-left: 1px;
}

.privacy {
    margin-bottom: 15px;
    margin-top: 12px;
}

ul.no_bot_margin {
	margin-bottom: 0 !important;
}

/*
=cruisey pay
-----------------------------------------------------*/
.installment_schedule {  width: 100%; }
.installment_schedule h3 { float: left; }
.installment_schedule .button.seven { float: left; margin-top: 2px; }

p.cps {
    clear: both;
    float: left;
    margin: 0;
    width: auto;
    margin: 2px 5px 5px 0;
}

.booking_item.cruiseypay td {
    padding-top: 2px;
    padding-bottom: 3px;
}



/*
=booking_navigation
---------------------------------------------- */

#content #booking_navigation {
    background: #E1F0FA;
    position: relative;
    top: -20px;
    margin: 0 0 0 6px;
    padding: 1em 10px 0;
    width: 888px; /* 908px */
    list-style: none;
}

#content #booking_navigation li {
    background: none;
    float: left;
    padding-left: 1px;
}

#content #booking_navigation li.current {
    border-left: 1px solid #97B1C1;
    background: transparent url(../images/bg-booking-nav-li-current.gif) no-repeat 100% 0%;
    padding-left: 0;
}

#content #booking_navigation a, #content #booking_navigation span {
    float: left;
    display: block;
    padding: .75em 18px .25em 15px;
}

#content #booking_navigation a:focus, #content #booking_navigation a:hover, #content #booking_navigation a:active, #content #booking_navigation li.current a {
    color: #222;
}

#content #booking_navigation a.step, #content #booking_navigation span.step {
    background: transparent url(../images/bg-booking-nav-a-grey.gif) no-repeat 100% 1.35em;
    padding-right: 30px;
    margin-right: 18px;
    display: inline;
}

#content #booking_navigation li.current span.step {
    background: transparent url(../images/bg-booking-nav-a-black.gif) no-repeat 100% 1.35em;
    color: #222;
}

#content #booking_navigation li.complete a.step {
    background: transparent url(../images/bg-booking-nav-a-blue.gif) no-repeat 100% 1.35em;
}

#content #booking_navigation li.complete a {
    color: #087EE2;
}

/*
=process_navigation
---------------------------------------------- */

#content ul#process_navigation {
    background: #DEEFFA;
    width: 908px; /* 908px */
    color: #444;
    margin: 0px 0px 0px 6px;
    padding: 0px;
    list-style: none;
    clear: both !important;
}

#content #process_navigation li {
    float: left;
    margin: 0;
    padding: 14px 6px 9px 10px;
    background-image: none;
}

#content #process_navigation li.border {
    border-left: 2px solid #fff;
    padding-left: 12px;
}

.home_continue {
    margin: 5px 0 0;
}


/*
=page content
---------------------------------------------- */

/* =wide_content */
#content .wide_content {
    position: relative;
    top: -11px;
    padding: 0 553px 0 0;
    width: 360px; /* 913px */
    _overflow: hidden;
}

#content .wide_content img.bg {
    background: transparent url(/images/img-bg.gif) no-repeat 0% 0%;
    display: block;
    width: 913px; /* 918px */
    height: 297px; /* 302px */
    padding: 5px 0 0 5px;
    left: -5px;
    position: relative;
    margin: 0 0 20px 0;
}

#content .wide_content blockquote {
    font-size: 30px;
    line-height: 130%;
    color: #54C200;
    margin: 20px 0 0 0;
    width: 913px;
}

#content .wide_content cite {
    color: #999;
    font-size: 10px;
    text-transform: uppercase;
    font-style: normal;
    text-align: left;
    width: 913px;
    display: block;
    margin: 0 0 5px 0;
	padding: 0px;
}

#content .wide_content p { margin-left: 0; margin-right: 0; }

#content .top {
    display: block;
    background: transparent url(../images/bg-arrow-up.gif) no-repeat 0% 55%;
    padding-left: 11px;
}

#content .top.indent {
    margin: 0 28px 2em;
}

#content .enlarge, blockquote {
    font-size: 1.18em; /* 13px */
    line-height: 165%; /* 21px */
}

#content .indent {
   margin-left: 14px;
}

#content ul {
    margin: 0 16px 1.55em 16px; /* 36px */
}

#content li {
    padding-left: 9px;
    background: transparent url(../images/bg-arrow.gif) no-repeat 0% .6em;
}


/* =search_results */
#content #search_results {
    width: 913px;
}

#content #search_results dl {
    margin: 2em 0;
}

#content #search_results dt {
    float: none;
    font-size: 1.18em; /* 13px */
    line-height: 160%; /* 21px */
    margin: 0 14px; /* 19px */
}

#content #search_results dd {
    margin: 0 0 2em 30px;
    width: 580px;
}

/* =faq */
#content .faq {
    margin: 0 14px;
    padding: .5em 14px;
}

#content .faq2 {
    background-color: #F3FDEB;
    margin-bottom: 1em;
    margin: 0 14px;
    padding: .5em 14px;
}

#content .faq dt, #content .faq2 dt {
    float: none;
    font-size: 1.18em; /* 13px */
    line-height: 160%; /* 21px */
    color: #49A800;
}

#content dl.faq  {
	margin-bottom: 15px;
}

#divFAQ p {
	margin: 1em 0 0 0;
}
#divFAQ a.top {
	margin-top: 0.5em;
}
#divFAQ h6 {
	margin: 1em 0 -1em 0;
}
#divFAQ dt {
	margin-bottom: -9px;
}
#divFAQ ol {
	margin-left: 20px;
}
#divFAQ ol li {
	background-image: none;
}

/* =highlight */
#content .highlight, #content.narrow .highlight {
    padding: 4px 14px 8px;
    background: #E7F2D3;
    margin: 5px 0px 15px 0px;
    color: #333;
}

#content .highlight.clear {
    clear: left;
}

#content .highlight ul {
    margin: 0;
    padding: 0;
}

#content .highlight li {
    margin: 0;
    padding: 0 0 6px;
    background: none;
}

#content .highlight p {
    margin: -2px 0px 4px 0px;
}

/* =page links */
#content .page_links {
    font-size: 1.18em; /* 13px */
    color: #008aff;
    padding: 0 14px .75em;
    margin: 5px 0 1em;
    border-bottom: 1px solid #DCDCDC;
}

#content .page_links li {
    margin-bottom: .5em;
    padding-left: 15px;
    background: transparent url(../images/bg-arrow-down.gif) no-repeat 0% .35em;
}

#content .page_links li span { color: #666; }

#content .f_left {
    float: left;
    margin: 5px 10px 0 14px;
}

#content .green_box {
    background: transparent url(../images/bg-green-box.gif) no-repeat 100% 100%;
    border-top: 1px solid #CCE5A9;
    width: 100%;
}

#panel ul#home_news li div ul {
	margin: 0 0 1.5em 14px; padding: 0;
}

/* =features */
#content .features {
    border-top: 1px solid #DCDCDC;
    margin: 0 0 2em;
    padding: 1px 0 0;
    width: 915px;
}

#content .features li {
    padding: 0;
    margin: 0;
    float: left;
    width: 304px; /* 305px */
    border-right: 1px solid #fff;
}

#content .features li img {
    width: 304px !important;
    height: 123px !important;
    float: left;
}

#content .features div {
    background: #636F79 url(../images/bg-feature.gif) repeat-x 0% 0%;
    width: 304px;
    color: #fff;
    padding: .75em 0 .25em;
    margin-bottom: 1em;
    float: left;
}

#content .features div h3 {
    border-bottom: none;
    font-size: 15px;
    color: #fff;
}

#content .features div h4 {
    color: #fff;
}

#content .features ul {
    border-top: none;
    margin: 0 16px 1.55em; /* 36px */
    padding: 0;
    width: auto;
    overflow: visible;
}

#content .features p {
    margin-bottom: 10px;
    /*color: #dfe5e9;*/
    color: #666;
}

#content .features li div p {
    margin-bottom: 10px;
    color: #dfe5e9;
}

#content .features ul li {
    padding: 0 0 0 9px;
    margin: 0 0 .25em;
    float: none;
    width: auto;
    border-right: none;
    background: transparent url(../images/bg-arrow.gif) no-repeat 0% .6em;
}

/* =column */
.column_wrapper {
    padding-bottom: 2em;
    border-bottom: 1px solid #DCDCDC;
    margin-bottom: 1px;
    width: 100%;
}

.column {
    float: left;
    border-right: 1px solid #fff;
    width: 304px; /* 305px */
}

.column img {
    width: 304px;
    height: 123px;
    float: left;
}

.column.end, .column.end img {
    width: 303px;
    height: 123px;
    border-right: none;
}

.column .feature {
    margin-bottom: 1.5em;
}

/* =site_map */
#content #site_map {
    margin: 0 14px;
    font-size: 16px;
}

#content #site_map li {
    padding: .5em 0;
    border-bottom: 1px solid #ddd;
    background: none;
}

#content #site_map li a {
    background: transparent url(../images/bg-arrow-54A8D3.gif) no-repeat 0% 50%;
    padding-left: 10px;
}

#content #site_map li a:focus, #content #site_map li a:hover, #content #site_map li a:active {
    background-image: url(../images/bg-arrow-5A5A5A.gif);
}

#content #site_map ul {
    margin: 0 23px;
    padding: .5em 0;
    font-size: 13px;
}

#content #site_map ul li {
    padding: .2em 0;
    border-bottom: none;

}

#content #site_map ul li a {
    background: none !important;
    padding-left: 0;
}

#content #site_map ul ul {
    margin: 0 12px;
    padding: .25em 0 1em;
    font-size: 11px;
}

#content #site_map ul ul li {
    padding: .1em 0;
    border-bottom: none;
}

#content #site_map ul ul li a {
    background: none !important;
    padding-left: 0;
}

/* =photo_gallery */
#content #photo_gallery {
    margin-left: 0px;
    width: 384px;
}


#content #photo_gallery li {
    background: transparent url(../images/bg-photo-gallery.gif) repeat-x 0% 100%;
    float: left;
    padding: 0 0 3px;
    margin: 0 0 25px;
    border-right: 1px solid #fff;
    width: 127px;
    height: 84px;
}

#content #photo_gallery li img {
    display: block;
}

#panel.photo_gallery {
    padding-bottom: 45px;
}

/* google_maps */
#map_wellington, #map_picton {
    width: 487px;
    height: 375px;
    background: #F1F1F1 url(../images/bg-map.gif) repeat-y 0% 0%;
}

.picton_terminal label {
    padding: 0;
    width: auto;
    float: left;
    height: 18px !important;
    display:inline;
    margin:0 0 10px 15px;
}


/*
=promotions
-----------------------------------------------------*/
.itinerary h3 {
    margin: 20px 0 0;
}

.itinerary dt.first, .itinerary dd.first {
    border: none;
}

.itinerary dl {
    position: relative;
    left: -12px;
}

.itinerary dt {
    color: #333;
    width: 155px;
    margin: 0;
    padding: 7px 0 7px 12px;
    border-top: 1px solid #E3E3E3;
}

.itinerary dd {
    margin: 0 0 0 167px;
    padding: 7px 0;
    border-top: 1px solid #E3E3E3;
}

.itinerary ul {
    padding: 8px 0 0;
}

/*
=calendar
---------------------------------------------- */

.calendar_div {
    position: relative;
    float: left;
    top: 5px;
    z-index: 1;
}

.returning .calendar_div {
    z-index: -1 !important;
}

.calendar_div .calendar_open {
    background: transparent url(../images/bt-calendar-open.gif) no-repeat 0% 0%;
    width: 16px;
    height: 12px;
    text-indent: -999em;
    display: block;
    position: relative;
    outline: none;
}

.calendar_container {
    background: transparent url(../images/bg-calendar-container.png) no-repeat 0% 0%;
    width: 261px;
    height: 245px;
    padding: 28px 5px 5px;
    position: absolute;
    top: -9px;
    left: -9px;
    z-index: 100;
}

.calendar_wrapper {
    width: 239px; /* 261px */
    padding: 0 10px 10px;
    background: #F1FFE6;
    border-left: 1px solid #959595;
}

.calendar_wrapper h4 {
    color: #333;
    margin: -1px 0 .15em;
    padding: 0;
    float: left;
}

.calendar_close {
    background: transparent url(../images/bt-calendar-close.gif) no-repeat 0% 0%;
    width: 13px;
    height: 13px;
    display: block;
    text-indent: -999em;
    float: right;
    position: relative;
    top: 2px;
    outline: 0; /* remove outline from close button */
}

.calendar_content {
    clear: left;
    border: 1px solid #BCCBB0;
    width: 237px; /* 240px */
    background: #fff;
}

.days {
    clear: left;
    width: 100%;
    border-bottom: 1px solid #E2E2E2;
}

.days div {
    background: #EFEFEF;
    display: block;
    float: left;
    text-align: center;
    width: 34px;
    padding: 0;
    color: #8F8F8F;
}

.days .last {
    width: 33px;
}

.days abbr {
    border: none;
}

.dates {
    float: left;
}

.dates a, .dates span {
    display: block;
    float: left;
    width: 34px;
    text-align: center;
    padding: 5px 0;
    background: transparent url(../images/bg-dates.gif) no-repeat 100% 100%;
    clear: none;
    margin: 0;
    color: #008AFF;
}

.dates span {
    color: #999;
    line-height: 160%;
}

.dates .last {
    background-position: 0% 100%;
    width: 33px;
}

.dates a.ntm { color: #83bff3 !important; }
.dates .inv { color: #999; }
.dates .today { background-color: #d1ecbd; }
.dates .bottom, .dates .bottom { background-position: 100% 0%; }
.dates .bottom.last { background-image: none; }
.dates a:hover, .dates a:focus, .dates a:active, a.ntm:hover {
    background-color: #DEEFFA;
    color: #333 !important;
}

.months {
    background: #fff url(../images/cal_month_shadow.gif) repeat-x 0 0;
    width: 235px;
    clear: left;
    padding: 3px 2px;
    line-height: 16px;
}

.months a {
    margin-left: 3px;
    color: #008AFF;
}

.months .month_prev {
    background: transparent url(../images/bt-month-prev.gif) no-repeat 0% 55%;
    padding: 0px 0px 0px 15px;
    float: left;
    margin-left: 3px;
}

.months .month_next {
    background: transparent url(../images/bt-month-next.gif) no-repeat 100% 4px;
    padding: 0px 15px 0px 0;
    float: right;
    margin-right: 3px;
}

#returning { clear: both; }

#passengers_returning {
    clear: left;
    padding: 0f 0 0;
    width: 100%;
}

#terms {
    height: 200px;
    border: 1px solid #C7E5F9;
    margin: 2em 0;
    padding: 10px;
    overflow: auto;
}


/*
=misc
---------------------------------------------- */

.nmc_check input {
    margin:2px 4px 0 0
}

th.extras { width: 320px; }

/* fare conditions */ 

.full_fare_conditions td {
    padding: 0;
    height: 0;
    background-color: #F0F9E9;
}

div.full_fare_conditions {
    background-color: #F0F9E9;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 12px 14px 4px;
    clear:both;
    margin-left: -4px;
    color: #666;
}

.full_fare_conditions div {
    padding: 12px 12px 4px;
    border-top: 1px solid #DCDCDC;
}
.full_fare_conditions h4 {
    color: #5e754d;
    margin: 0 0 2px;
}
.full_fare_conditions p {
    margin: 0 0 7px;
    line-height: 140%;
    width: 500px;
}
.full_fare_conditions img {
    float: right;
}


.fare_details {
    background: transparent url(../images/bg-fare-info.gif) repeat 0% 0%;
    padding: .5em 11px;
    float: right;
    width: 456px;
}

.fare_details a {
    font-weight: normal;
}
.booking_content .fare_details p {
    width: auto;
    margin: 0 0 .5em;
}
.fare_details a:hover { color: #333; }


.specials .fare_details {
    width: 456px;
}











p.remove {
    margin: 18px 0 0;
}
p.remove label {
    color: #f00;
}
p.remove input {
    margin: 4px 2px 0;
}


fieldset.passenger_names div {
    clear: both;
    float: left;
    width: 100%;
    border-bottom: 1px solid #DCDCDC;
    padding: 0 0 4px;
}

fieldset.passenger_names input.text.large, fieldset.contact_details input.text.large {
    width: 197px;
}
fieldset.passenger_names input.text.medium, fieldset.contact_details input.text.medium {
    width: 140px;
}
fieldset.passenger_names input.text.small, fieldset.contact_details input.text.small {
    width: 45px;
}

fieldset.contact_details div {
    clear: both;
    float: left;
    width: 100%;
    margin: 0 0 10px;
}

.divider {
    border-top: 1px solid #dcdcdc;
    padding: 5px 0 2px;
}

.booking_content .promote {
    font-size: 1.2em;
    color: #333;
    line-height: 140%;
    width: auto;
    padding-bottom: 6px;
}


fieldset .display_additional {
    border: 1px solid #BBF0B1;
    background-color: #E6FFE0;
    float: right;
    padding: 1px 6px;
    margin: 0 12px 0 0;
}

.float {
    float: left !important;
    padding-right: 5px !important;
}

.hide {
    position: absolute;
    left: -999em;
}

/* =self clearing floats */
#header:after,
#header #menu  #menu_top:after,
#main_navigation:after,
#wrapper:after,
#panel ul li:after,
#panel ol li:after,
.clearfix:after,
fieldset:after,
.table_container.specials:after,
.vehicle_menu:after,
.vehicle_types:after,
#content .page_navigation:after,
#content fieldset ul li:after,
.below_booking_box:after,
.booking_content:after,
.table_footer:after,
.booking_item:after,
#content #booking_navigation:after,
#content ul#process_navigation:after,
#content .features:after,
#passengers_returning:after,
.calendar_container:after,
.calendar_content:after,
.months:after,
.days:after,
#footer ul:after,
.travelbug_select:after  {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.clearfix { display: inline-block; }

.office_details, .print_only { 
     display: none; 
} 

.if_IE6_only { 
     display: none; 
}

/*
=video clips
-----------------------------------------------------*/

div#video_thumbs {
	background: transparent url(../images/the-voyage-bg.gif) repeat 0 0;
	border: 1px solid #e3e3e3;
	padding:  0 0 0px 14px;
}

div#video_thumbs ul {
	margin: 0;
	padding: 0;
	padding-bottom: 18px;
	padding-top: 8px;
}

div#video_thumbs ul li {
	float: left;
	margin: 0 10px;
	background: transparent url(../images/the-voyage-thumb-bg.gif) no-repeat 0 0;
	width: 133px;
	height: 121px;
	padding: 1px 0 0 1px;
	margin-top: 10px;
	display: inline;
}

div#video_thumbs ul li a {
	display: block;
	height: 97px;
	border: none;
	color: #555;
	position: relative;
}

div#video_thumbs ul li a:hover {color: #000;}

div#video_thumbs ul li#voyage_1 a {background: transparent url(../images/the-voyage-wellington.jpg) no-repeat 0 0;}
div#video_thumbs ul li#voyage_2 a {background: transparent url(../images/the-voyage-pencarrow.jpg) no-repeat 0 0;}
div#video_thumbs ul li#voyage_3 a {background: transparent url(../images/the-voyage-cook.jpg) no-repeat 0 0;}
div#video_thumbs ul li#voyage_4 a {background: transparent url(../images/the-voyage-marlborough.jpg) no-repeat 0 0;}
div#video_thumbs ul li#voyage_5 a {background: transparent url(../images/the-voyage-tory.jpg) no-repeat 0 0;}
div#video_thumbs ul li#voyage_6 a {background: transparent url(../images/the-voyage-charlotte.jpg) no-repeat 0 0;}
div#video_thumbs ul li#voyage_7 a {background: transparent url(../images/the-voyage-picton.jpg) no-repeat 0 0;}

div#video_thumbs ul li a span {
	position: absolute;
	left: 54px;
	top: 40px;
	width: 21px;
	height: 21px;
	background: transparent url(../images/button-video-play.png) no-repeat 0 0;
}

div#video_thumbs ul li a.over span {background: transparent url(../images/button-video-play-hover.png) no-repeat 0 0;}

div#video_thumbs ul li a em {
	position: absolute;
	left: -1px;
	bottom: -21px;
	font-style: normal;
	width: 131px;
}

/*
=promo code
-----------------------------------------------------*/

.booking_item.promo_code {
     background-color: #FFFBDF;
     border: 1px solid #BABABA;
     padding-bottom: 6px;
     padding-right: 12px;
}

.promo_code label {
     float: left;
     margin: 0 5px 0 0;
}

.promo_code strong.button {
     float: left;
}

.booking_content .promo_code p {
     clear: both;
     margin: 0;
     color: #666;
     width: auto
}

.promo_code a.open {
     background: transparent url(../images/expand.gif) no-repeat 0 2px;
     padding: 0 0 0 13px;
}

.promo_code strong.button {
     background: transparent url(../images/bt-3-right-round.gif) no-repeat 100% 0%; }

.booking_item.promo_code.invalidated {
     background: transparent url(../images/bg-penalty.gif) repeat 0 0;
     border: 1px solid red;
     padding-bottom: 10px;
}

.booking_item.promo_code.invalid {
     background: transparent url(../images/bg-penalty.gif) repeat 0 0; }

.booking_item.promo_code.invalid label input.text {
     background-color: #FFE6E6 !important;
     border: 1px solid #f00;
     color: #f00;
     font-weight: bold;
}

dl.booking_cost {
     margin: 0;
     width: 16em;
}

dl.booking_cost dd {
     text-align: right;
}

/*---------- confirmation page - Travelbug----------*/

.travelbug_select {
	background: url('../Images/TravelBug/travelbug-bot.png') no-repeat left bottom;  
    width:  867px;
    margin-left: -6px;
    padding: 0 0 17px 20px;
}

p.travelbug_intro {
    color: #333;
    margin-bottom: 7px;
}

.travelbug_top {
	background: url('../Images/TravelBug/travelbug-top.png') no-repeat left top;  
    height: 9px;
    width:  867px;
    margin: 0 0 0 -6px;
}

#travelbug_where {
    width:  164px;
    float:  left;
    margin: 0 29px 0 0;
    display: inline;
}

#travelbug_when {
	width:  500px;
    float:  left;
}

form.travelbug select {
	margin: 0 10px 10px 0;	
	float: left;
	display: inline;
}

form.travelbug label {
   float: left; 
   margin: 0 10px 0 0;
   font-size: 13px;
   font-weight: bold;
   width: 27px;
   display: inline;
}

.travelbug_select h3 {
    font-size: 16px;
    color:  #333;
    border-bottom: 1px solid #adc9da;
    padding: 9px 0 2px 0; 
    margin-bottom: 9px;
    font-weight:  normal;
}

.travelbug_select h3.when {
    width: 316px;
}
.clear {
    clear:  both;
}

h4#travelbug_head {
   color: #008aff; 
   margin-top: 27px;
   font-size: 1.333em;
}

a.cal_icon img {
	display: block;
	float:  left;
	margin-top: 3px;
}

#content form ul {
    padding: 0;
    margin: 0;
}

.travel_submit {
    border:  1px solid blue;
    width: 80px;
    float:  left;
}
input#travelbug_search {    
	background:transparent url('../Images/TravelBug/travelbug-search.png') no-repeat left top;
	border: medium none;
	cursor: pointer;
	height: 24px;
	line-height: 18px;
	text-indent: -9999px;
	width: 78px;
	margin-left: 10px; 
	margin-top: -3px;
}

input#travelbug_search:hover {
   background:transparent url('../Images/TravelBug/travelbug-search.png') no-repeat left bottom;

}

#travelbug_where select {
	width: 165px;  
}

#travelbug_when .select_day {
   width: 119px; 
}

#travelbug_when .select_month_year {
   width: 130px;
   margin-right: 6px; 
}


