
/************************* Reset styles
/* Based on: http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/
 */
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,
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-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    font-family: inherit;
    vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
    outline: 0;
}

html {
    text-align: center;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 16px;
    background: #fff url('../images/header_bg.jpg') top left repeat-x;
    overflow-y: scroll;
}

table {
    empty-cells: hide;
}

body {
    line-height: 1;
    color: #000;
}

body.popup {
    background: #fff;
}

em {
    color: #2c5cb1;
    font-weight: bold;
}

hr {
    border: none;
    border-bottom: 1px dashed #aaa;
    margin-bottom: 15px;
}
.error,
#booking_wizard #contact_panel div.row span.error
{ 
    color: #f32a30;
}
.ok { color: #4f9e00; }
.none { color: #999; }
.warning { color: #2c5cb1; }
.inline { display: inline; }
.bold { font-weight: bold; }
.notes {
    font-size: 0.9em;
    color: #999;
    padding: 0.3em 0 1em 0;
    margin: 0;
}
strong { font-weight: bold; }

ol, ul {
    list-style: none;
}

.clear {
    clear: both;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
    border-collapse: separate;
    border-spacing: 0;
}

caption, th, td {
    text-align: left;
    font-weight: normal;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content: "";
}

blockquote, q {
    quotes: "" "";
}

.button {
    background-color: #2c5cb1;
    display: inline-block;
    padding: 6px 15px;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    line-height: 1;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-box-shadow: 0 1px 3px #999;
    -webkit-box-shadow: 0 1px 3px #999;
    border: none;
    position: relative;
    cursor: pointer;
}

.button:hover {
    background-color: #666;
}

.button.disabled {
    background-color: #999;
	cursor: auto;
}

/*************************
 Page styles
*************************/
#container {
	width: 960px;
	margin: 0 auto;
	text-align: left;
	font-size: 100%;
	line-height: 1.25;
    position: relative;
}

a {
	color: #2c5cb1;
}

a:visited {
	color: #3536a0;
}

a:hover {
	color: #f32a30;
}

h1 {
    font-size: 1.4em;
    font-weight: bold;
    margin: 0 0 0.3em 0;
    color: #2c5cb1;
}

h1 span {
    margin-left: 5px;
    font-weight: normal;
    text-transform: uppercase;
}

h2,
legend {
    font-size: 1.2em;
    font-weight: bold;
    margin: 0 0 0.3em 0;
    color: #2c5cb1;
}

div.ui-datepicker {
    font-size: 0.7em;
}

/*************************
 Header
*************************/
#header {
    margin-top: -30px;
	height: 250px;
	position: relative;
}

#header span {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 100%;
	background: url('../images/header.jpg');
}

#background_shadow {
    height: 50px;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    top: 180px;
    width: 1450px;
}

#background_shadow .left {
    height: 50px;
    width: 250px;
    background: transparent url('../images/header_sprite.jpg') 0 0 no-repeat;
    position: absolute;
    left: 0;
}

#background_shadow .right {
    height: 50px;
    width: 250px;
    background: transparent url('../images/header_sprite.jpg') -250px 0 no-repeat;
    position: absolute;
    right: 0;
}

/*************************
 Shadow
*************************/
#shadow {
    height: 18px;
}

#shadow .left {
    height: 18px;
    width: 250px;
    background: transparent url('../images/header_shadow_sprite.jpg') 0 0 no-repeat;
    float: left;
}

#shadow .right {
    height: 18px;
    width: 250px;
    background: transparent url('../images/header_shadow_sprite.jpg') -250px 0 no-repeat;
    float: right;
}

.caption {
    color: #aaa;
    margin: -15px 5px 20px 0;
    font-style: italic;
}

.caption a {
    text-decoration: none;
}

/*************************
 Breadcrumbs
*************************/
#breadcrumb, #view-past-bookings-link {
	margin: 20px;
    font-size: 0.8em;
}

#view-past-bookings-link { float: right; }

#breadcrumb a {
	text-decoration: none;
}

/*************************
 Listing
*************************/
.listing h2 {
	font-size: 1.4em;
	font-weight: bold;
    margin-bottom: 5px;
}

.listing h2 a {
	text-decoration: none;
}

.listing h2 a span {
    margin-left: 5px;
    font-weight: normal;
    text-transform: uppercase;
}

.listing li {
	margin: 0 0 20px 0;
    padding: 20px;
    background: #fff url('../images/section_bg.jpg') bottom left repeat-x;
    border-bottom: 1px dashed #aaa;
    min-height: 200px;
    _height: 1px;
}

.listing li p {
    color: #444;
    font-size: 0.9em;
    margin-bottom: 10px;
}

.listing .listing_image {
    width: 270px;
    float: left;
}

.listing .listing_image img {
    width: 270px;
}

.listing .shadow {
    overflow: auto;
}

.listing .shadow .left {
    height: 20px;
    width: 135px;
    background: transparent url('../images/shadow_sprite_sml.png') 0 0 no-repeat;
    float: left;
}

.listing .shadow .right {
    height: 20px;
    width: 135px;
    background: transparent url('../images/shadow_sprite_sml.png') -135px 0 no-repeat;
    float: right;
}

.listing_image a {
    height: 200px;
    width: 270px;
    display: block;
    overflow: hidden;
}

.listing_image .caption a {
    display: inline;
}

.listing .listing_text {
    margin-left: 290px;
}

.listing form {
	float: right;
	margin-top: -1.5em;
}

.listing .price_range {
    margin: 5px 0 10px 0;
    font-size: 0.9em;
}

.listing .price_range .price {
    color: #2c5cb1;
}

button {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 12px;
	padding: 0.15em 1.5em;
	font-weight: bold;
	text-decoration: none;
	overflow: visible;
	color: #444;
}

/*************************
 Footer
*************************/
#footer {
    font-size: 0.9em;
    color: #aaa;
    height: 60px;
    clear: both;
}

#footer span {
    float: left;
}

#footer #footer_menu {
    float: right;
    width: auto;
}

#footer #footer_menu li {
    float: left;
    margin-left: 15px;
}

#footer a {
    text-decoration: none;
    color: #aaa;
}

#footer a:hover {
    color: #f32a30;
}

/*************************
 3 Column Layout
 - Product Details
*************************/
#content {
    font-size: 0.9em;
    color: #444;
    padding: 0;
    margin-bottom: 20px;
    background: #fff url('../images/section_bg.jpg') left bottom repeat-x;
}

#main {
    width: 650px;
    float: left;
    margin-left: 20px;
}

#col_left {
    width: 270px;
    float: left;
}

#col_description {
    float: left;
    padding: 0 0 0 20px;
    width: 340px;
}

#col_description .duration {
    margin: 10px 0;
}

#col_description .important_information {
    margin: 20px 0;
    padding: 8px 0;
    border-top: 1px dashed #aaa;
    border-bottom: 1px dashed #aaa;
}

.listing_text .share-links {
    margin-left: 250px;
    margin-top: -1.8em;
}

#col_description .share-links {
    margin-top: 0.5em;
    display: block;
}

#col_similar_products {
    width: 270px;
    float: right;
}

div.separator {
    clear: both;
}

/*************************
 Availability Search
*************************/
#availability_search {
    clear: left;
    width: 250px;
}

#availability_search h2 {
    margin-top: 10px;
}

#availability_search form {
    border-top: 1px dashed #aaa;
    padding-top: 10px;
}

#availability_search legend {
    padding-bottom: 10px;
    white-space: normal;
}

#availability_search div {
    clear: both;
    height: 28px;
}

#availability_search label {
    width: 145px;
    display: block;
    float: left;
    padding-top: 2px;
}

#availability_search label span {
    color: #aaa;
    font-size: 0.8em;
}

#availability_search input,
#availability_search select {
    width: 100px;
    float: right;
}

#availability_search input {
    width: 96px;
}

#availability_search input#check_availability_button {
    width: auto;
    padding: 5px 20px;
    float: right;
    margin: 0;
}

#availability_search #times_phone,
#availability_search #times_on_application {
    clear: both;
    height: auto;
}

#availability_search #times_phone {
    border-top: 1px dashed #aaa;
    margin-top: 10px;
    padding-top: 10px;
}

#availability_search #times_phone div,
#availability_search #times_on_application div {
    clear: both;
    height: auto;
    margin-top: 10px;
}

#availability_search #times_phone div.times,
#availability_search #times_on_application div.times {
    font-weight: bold;
    color: #2c5cb1;
}

/*************************
 Photo Gallery
*************************/
#gallery {
    width: 260px;
}

#gallery li {
    list-style: none;
    float: left;
}

#gallery li.thumb {
    width: 80px;
    margin-right: 5px;
}

/*************************
 Booking Wizard
*************************/
#controls .button {
    margin-left: 8px;
}

#booking_wizard {
    font-size: 0.9em;
}

#booking_wizard h1 {
    margin-left: 20px;
}

#booking_wizard h1 span {
    margin-left: 5px;
    font-weight: normal;
    text-transform: uppercase;
}

#booking_wizard ul.booking_steps {
    height: 40px;
    margin: 15px 0 10px 20px;
    font-weight: bold;
    color: #666;
}

#booking_wizard ul.booking_steps li {
    font-size: 0.9em;
    float: left;
    width: 105px;
    height: 30px;
    padding: 7px  0 0 10px;
    background: #fff url('../images/booking_step.jpg') top left no-repeat;
}

#booking_wizard ul.booking_steps li.selected {
    background: #fff url('../images/booking_step_selected.jpg') top left no-repeat;
    color: #2c5cb1;
}

#alter_search {
    border-top: 1px dashed #aaa;
    border-bottom: 1px dashed #aaa;
    background: #fff url('../images/section_mid_bg.jpg') bottom left repeat-x;
    padding: 20px;
}

#alter_search .panel {
    margin-bottom: 5px;
}

#alter_search_preferences {
    float: left;
    width: 330px;
}

#alter_search_num_guests {
    float: left;
    width: 560px;
}

#alter_search #validation_errors {
    border-top: 1px solid #e3e3e3;
    color: #f32a30;
    font-weight: bold;
    margin-top: 15px;
    padding-top: 10px;
}

#alter_search label {
    font-weight: bold;
    color: #333;
    margin-right: 5px;
    float: left;
    display: block;
    width: 110px;
}

#alter_search label.error {
    color: #f32a30;
}

#alter_search input,
#alter_search select {
    padding: 5px;
}

#alter_search select {
    width: 120px;
}

#alter_search input {
    width: 100px;
}

#alter_search_preferences input {
    width: 150px;
}

#alter_search_preferences select {
    width: 162px;
}

#alter_search_num_guests select {
    width: 50px;
}

#alter_search_num_guests .panel {
    float: left;
    width: 190px;
}

#alter_search_num_guests label {
    width: 90px;
}

.controls {
    clear: both;
    border-top: 1px dotted #ddd;
    text-align: right;
    margin-top: 10px;
    padding-top: 10px;
}

#message {
    font-weight: bold;
    padding: 10px 20px;
}

#legend {
    font-weight: normal;
    font-size: 0.9em;
    margin: 5px 0;
    color: #aaa;
}

#earlier,
#later {
    height: 19px;
    float: left;
    cursor: pointer;
    color: #fff;
    font-weight: bold;
}

#earlier {
    padding: 17px 15px;
    width: 20px;
    background: #fff url('../images/arrows.gif') 0 -106px no-repeat;
    margin-right: 5px;
    margin-top: 125px;
}

#earlier.selected {
    background-position: 0 -159px;
}

#later {
    padding: 17px 6px;
    width: 38px;
    background: #fff url('../images/arrows.gif') 0 0 no-repeat;
    margin-left: 5px;
    margin-top: 88px;
}

#later.selected {
    background-position: 0 -53px;
}

#alternate_header_wrap {
    position: relative;
    overflow: hidden;
    width: 850px;
    height: 37px;
}

#alternate_dates_content_wrap {
    width: 850px;
    float: left;
	height: 300px;
    overflow: hidden;
    overflow-y: scroll;
    position: relative;
    background: #fff url(/includes/images/stripe.gif) 0 0 repeat;
}

#alternate_dates .table {
    width: 1183px;
    position: absolute;
}

#alternate_header {
    position: relative;
    background: #fff url('../images/section_sml_bg.jpg') top left repeat-x;
    height: 37px;
}

#alternate_dates_content div.column,
#alternate_header div {
    float: left;
    overflow: hidden;
}

#alternate_header div {
    font-weight: bold;
    width: 161px;
    padding: 10px 0 10px 8px;
}

#alternate_header div.even {
    border-left: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

#alternate_header div.odd {
    border-left: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

#alternate_dates_content div.selected .availability_cell {
    background: #e7e7e7 url('../images/section_lrg_selected_bg.jpg') top left repeat-x;
}

#alternate_dates_content div.selected .availability_cell.really_selected {
    background: #d0d6e2 url('../images/section_lrg_really_selected.jpg') 0 -30px repeat-x;
}

#alternate_dates_content div .availability_cell {
    height: 130px;
    background: #f1f1f1 url('../images/section_lrg_bg.jpg') top left repeat-x;
    padding: 10px;
    display: none;
    position: relative;
}

#alternate_header div.even {
    background: #fff url('../images/section_sml_dark_bg.jpg') top left repeat-x;
}

#alternate_header div.odd {
    background: #fff url('../images/section_sml_bg.jpg') top left repeat-x;
}

#alternate_header div.selected {
    background: #c5c5c5 url('../images/section_sml_selected_bg.jpg') top left repeat-x;
    border-bottom: 1px solid #bbb;
    border-left: 1px solid #bbb;
}

#alternate_dates_content div.column {
    width: 169px;
    height: 100%;
    border-left: 1px solid #eee;
}

#alternate_dates_content div.busy,
#alternate_dates_content div.error {
    height: 300px;
}

#alternate_dates_content div.busy {
    background: transparent url('../images/loading.gif') center center no-repeat;
}

#alternate_dates_content div.error {
    background: transparent url('../images/error.gif') center center no-repeat;
}

#alternate_dates_content div.no_schedule {
    color: #e3e3e3;
    font-weight: bold;
    padding: 90px 20px;
    font-size: 18px;
    height: 120px;
    text-align: center;
}

#alternate_dates_content div.column label {
    font-weight: bold;
    margin-left: 5px;
}

#alternate_dates_content div.column label.disabled {
    color: #aaa;
}

#alternate_dates_content div.column div.available {
    font-weight: bold;
    color: #4f9e00;
    margin: 5px 0;
}

#alternate_dates_content div.column div.not_available {
    font-weight: bold;
    color: #2C5CB1;
    margin: 5px 0;
}

#alternate_dates_content div.column div.not_available .enquiry_link {
    font-weight: bold;
    color: #2c5cb1;
    text-transform: capitalize;
    text-decoration: none;
}

#alternate_dates_content div.column div.not_available .enquiry_link:hover {
    color: #c00;
}

#alternate_dates_content div.column div.rate span {
    color: #000;
}

#alternate_dates_content div.column div.rate span em {
    color: #777;
    margin-left: 3px;
    font-weight: normal;
    font-size: 0.8em;
}

#alternate_dates_content div.column .availability_cell div.sale {
    background: transparent url(/includes/images/sale.gif) 0 0 no-repeat;
    height: 46px;
    width: 46px;
    text-indent: -9999px;
    position: absolute;
    top: 0;
    right: 0;
}

#alternate_dates_content div.column div.rate span .invalid {
    color: #aaa;
    text-decoration: line-through;
    margin-right: 3px;
}

#alternate_dates_content div.column div.rate span .sale {
    color: #f32a30;
}

#summary_panel {
    border-top: 1px dashed #aaa;
    padding: 20px;
    clear: both;
}

.options #summary_panel {
    height: 80px !important;
}

#summary_panel div.right {
    float: right;
}

#summary_panel div.right #total,
#total {
    font-size: 1.3em;
    font-weight: bold;
    margin-bottom: 10px;
}

#summary_panel div.right #total strong {
    color: #000;
    padding: 0 5px;
}

#summary_panel div.right #total sub {
    font-size: 0.7em;
    font-weight: normal;
}

#summary_panel div.right #controls {
    text-align: right;
}

#summary {
    left: 20px;
    padding: 20px 0 0 0;
    margin-top: -30px;
}

#summary div {
    font-weight: bold;
    margin: 5px 0 5px 0;
}

#summary ul {
    margin-left: 20px;
    font-weight: bold;
}

#summary_panel #summary {
    position: static;
}

#back_button {
    float:right;
    position:relative;
    right: 122px;
    top:-59px;
}

.options #back_button { top: -89px !important; }

/*************************
Booking Wizard: Options
*************************/
#booking_wizard #options_panel,
#booking_wizard #details_panel,
#booking_wizard #contact_panel,
#booking_wizard #preferred_time_panel {
    padding: 20px;
    border-top: 1px dashed #aaa;
}

#booking_wizard #preferred_time_panel .notice {
    color: #aaa;
    font-style: italic;
    margin-bottom: 5px;
}

#booking_wizard #preferred_time_panel label,
#booking_wizard .booking_custom_fields label {
    width: 140px;
    font-weight: bold;
    float: left;
    margin-right: 5px;
}

#booking_wizard #contact_panel #is_pickup_required,
#booking_wizard #contact_panel #infants {
    width: auto;
}

#booking_wizard #options_panel div.row {
    height: 110px;
    border-top: 1px dotted #ddd;
    clear: both;
}

#booking_wizard #options_panel div.row.first {
    border: none;
}

#booking_wizard #options_panel div.left,
#booking_wizard #options_panel div.middle,
#booking_wizard #options_panel div.right {
    float: left;
    padding: 10px 0 10px 10px;
}

#booking_wizard #options_panel div.left {
    width: 30px;
}

#booking_wizard #options_panel div.middle {
    width: 650px;
}

#booking_wizard #options_panel div.middle .option_name {
    font-weight: bold;
}

#booking_wizard #options_panel div.middle .option_description {
    color: #666;
    margin: 5px 0;
}

#booking_wizard #options_panel div.middle .option_price {
    color: #2c5cb1;
    font-weight: bold;
}

#booking_wizard #options_panel div.right {
    float: right;
    text-align: right;
}

#booking_wizard #options_panel div.right label {
    font-weight: bold;
    margin-right: 3px;
}

#booking_wizard #options_panel div.right select {
    width: 50px;
    padding: 5px;
}

#booking_wizard #options_panel div.num-required-select {
    margin-top: 0.4em;
}

#booking_wizard #previous-booking-options {
    border-bottom: 1px dashed #AAAAAA;
    background: rgb(255, 250, 220);
    background: rgba(255, 250, 220, 0.8);
}

#booking_wizard #previous-booking-options .important {
    font-size: 1.1em;
    color: #f32a30;
    padding: 0.5em 10px;
}

#booking_wizard #previous-booking-options .important strong {
    font-weight: bold;
}

/*************************
Booking Wizard: Details
*************************/
#booking_wizard input,
#booking_wizard textarea,
#booking_wizard select {
    padding: 5px;
    background: #fff;
    border: 1px solid #bbb;
}

#booking_wizard input:focus,
#booking_wizard textarea:focus,
#booking_wizard select:focus {
    border-color: #666;
}

#booking_wizard #details_panel div.row {
    border-top: 1px dotted #ddd;
    clear: both;
    padding-top: 10px;
}

#booking_wizard #details_panel div.row.first {
    border: none;
    padding-top: 0;
}

#booking_wizard #details_panel div.row div,
#booking_wizard div.general_comments label {
    font-weight: bold;
    margin-right: 5px;
    width: 140px;
    float: left;
}

#booking_wizard #details_panel div.row div.first_name_panel,
#booking_wizard #details_panel div.row div.last_name_panel {
    width: 215px;
}

#booking_wizard #details_panel div.row label {
    color: #666;
    display: block;
    font-weight: normal;
}

#booking_wizard #details_panel div.row input,
#booking_wizard #preferred_time_panel input,
#booking_wizard .booking_custom_fields input {
    width: 190px;
    margin-right: 10px;
    padding: 5px;
}

#booking_wizard .booking_custom_fields input {
    width: 410px;
}

#booking_wizard div.general_comments textarea {
    width: 410px;
    height: 100px;
}

#booking_wizard #details_panel div.custom_fields {
    clear: both;
    width: auto !important;
    margin: 15px 0 0 145px;
}

#booking_wizard #details_panel div.custom_fields label {
    display: block;
    font-weight: normal;
}

#booking_wizard #details_panel div.custom_fields input {
    margin-bottom: 20px;
    width: 410px;
}

#booking_wizard div.booking_custom_fields,
#booking_wizard div.general_comments {
    padding: 20px;
    border-top: 1px dashed #aaa;
    clear: both;
}

#booking_wizard div.booking_custom_fields span.error {
    display: block;
    margin: 3px 0 0 140px;
}

/*************************
Booking Wizard: Contact
*************************/
#booking_wizard #contact_panel div.row {
    padding: 10px 20px;
    border-top: 1px dotted #ddd;
}

#booking_wizard #contact_panel div.row span {
    font-style: italic;
    color: #aaa;
    vertical-align: text-bottom;
}

#booking_wizard #contact_panel div.row.pickup {
    background: #2c5cb1;
    border: none;
    border-radius: 5px;
    color: #fff;
    font-weight: bold;
}

#booking_wizard #contact_panel div.row.first {
    border: none;
}

#booking_wizard #contact_panel div.row label {
    color: #666;
    font-weight: bold;
    width: 140px;
    vertical-align: top;
    display: block;
    float: left;
}

#booking_wizard #contact_panel div.row label.error {
    color: #f32a30;
}

#booking_wizard #contact_panel div.row input,
#booking_wizard #contact_panel div.row textarea,
#booking_wizard #contact_panel div.row select {
    width: 300px;
    margin-right: 10px;
}

#booking_wizard #contact_panel div.row textarea {
    height: 80px;
}

#booking_wizard #contact_panel div.row select {
    width: 312px;
}

#booking_wizard #validation_errors_contact {
    border-bottom: 1px dashed #aaa;;
    color: #f32a30;
    font-weight: bold;
    padding: 10px 20px;
}

#booking_wizard div.validation_errors span.error {
    display: block;
}

#booking_wizard #contact_panel div.row.pickup_location span.error {
    display: block;
    margin-left: 140px;
}

/*************************
Booking Wizard: Details
*************************/
#booking_wizard #details_panel div.row p.error {
    margin-left: 135px;
    margin-top: 5px;
}

/*************************
Booking Wizard: Summary
*************************/
#payment-result {
    padding: 10px 20px;
    border: 1px dashed #f32a30;
    background: #FFE0E0;
    margin-bottom: 20px;
}

#payment-result h2 {
    color: #f32a30;
}

#booking_summary_panel
{
    padding: 0px 20px 10px;
}

#booking_summary_panel .map_canvas_wrap
{
    margin: 0;
    width: 500px;
    height: 350px;
    float: right;
    border-radius: 7px;
}

#booking_summary_panel .map_canvas_wrap h4
{
    font-size: 0.9em;
}

#booking_summary_panel .map_canvas_wrap #map_canvas
{
    margin: 0;
    width: 100%;
    height: 100%;
    background: #eee;
}

#booking_summary_panel .map_canvas_wrap #map_canvas div
{
    margin: 0;
    padding: 0;
}

#booking_summary_panel div p span
{
    margin-left: 3px;
    color: #aaa;
}

#booking_summary_panel div p span.invalid {
    color: #aaa;
    text-decoration: line-through;
    margin-right: 3px;
}

#booking_summary_panel div p span.sale {
    color: #f32a30;
}

#booking_summary_panel.confirmation {
    float: left;
    width: 650px;
}

ul.guest-options {
    margin-bottom: 0.5em;
}

ul.guest-options li {
    margin-left: 1.5em;
    padding-top: 0.2em;
}

ul.contact-address {
    margin: 5px 0;
}

#booking_summary_panel li span, #view-booking li span {
    font-weight: bold;
}

#booking_summary_panel h3
{
    font-weight: bold;
    font-size: 18px;
    margin: 0 0 20px 0;
}

#booking_summary_panel div div
{
    color: #2c5cb1;
    font-weight: bold;
    margin: 20px 0 0 0;
}

#booking_summary_panel div div.important
{
    color: #f00;
}

#booking_summary_panel h4 {
    font-weight: bold;
    color: #2c5cb1;
    font-size: 14px;
}

#booking_summary_panel div.deferred-payment-warning {
    color: #444;
    font-weight: normal;
    margin-bottom: 20px;
}

#booking_summary_panel div.deferred-payment-warning strong {
    color: #f32a30;
}

#booking_summary_panel h4.deferred-payment-warning {
    color: #f32a30;
    margin-top: 20px;
}

#booking_summary_panel h4 strong {
    color: #000;
}

#booking_summary_panel .refund_policy {
    margin-bottom: 30px;
}

/* View Booking / Contact */
#view-booking,
#contact,
#view-past-bookings {
    padding: 20px;
    font-size: 0.9em;
}

#contact textarea {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 0.9em;
    width: 280px;
    height: 80px;
    padding: 5px;
}

#view-booking div,
#contact div,
#view-past-bookings div {
    margin-bottom: 15px;
}

#view-booking h4 {
    color: #2C5CB1;
    font-weight: bold;
}

#view-booking div.fields {
    margin-bottom: 7px;
}

#view-booking label,
#contact label,
#view-past-bookings label,
#view-past-bookings label {
    width: 150px;
    float: left;
}

#view-past-bookings input {
    width: 200px; 
}

#view-booking #controls,
#contact #controls,
#view-past-bookings #controls {
    border-top: 1px dashed #AAA;
    padding-top: 7px;
}

#contact #controls {
    text-align: right;
}

#view-booking button[type="submit"],
#contact button[type="submit"],
#view-past-bookings button[type="submit"] {
    margin-left: 150px;
}

.enquiry-form { margin-top: 10px; }

#contact div div {
    display: inline;
}

#contact div.error {
    margin-left: 5px;
    padding-left: 22px;
    font-weight: bold;
    background: transparent url("../images/error.png") left top no-repeat;
}

#contact input {
    width: 280px;
    padding: 5px;
}

#contact select {
    width: 292px;
    padding: 5px;
}

/* Admin Bar */
#admin-bar {
    position: fixed;
    top: 0;
    left: 0;
    background: rgb(255, 250, 220);
    background: rgba(255, 250, 220, 0.8);
    width: 100%;
    padding: 0.5em;
    text-align: center;
    z-index: 999;
}

.full-width {
	margin: 1em 0;
}
.full-width a {
	display: block;
	margin: 1em 0;
}
.full-width li {
	padding: 0;
}

body.blank h1 {
	text-align: center;
	margin: 1em;
}

/* Contact Details */
#booking_summary_panel #contact_us {
    color: #666;
    font-weight: normal;
    background: #eee;
    padding: 10px;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -moz-border-radius: 5px;
    margin-bottom: 20px;
}

#contact_us p {
    margin: 3px 0;
}

#contact_us p span {
    color: #ccc;
}

.booking_info_list,
#important_information {
    width: 400px;
}

/* Terms and Conditions */
#terms,
#operator_terms {
    padding: 0 20px 20px 20px;
	text-align: left;
}

#operator_terms {
	font-size:14px;
}

#terms h1,
#operator_terms h1 {
    text-align: left;
}

#terms h3,
#operator_terms h3 {
    font-weight: bold;
    margin: 15px 0 5px 0;
}

#terms h4 ,
#operator_terms h4 {
    font-style: italic;
	margin-bottom: 5px;
}

#terms ul,
#operator_terms ul {
    list-style: disc;
    list-style-position: outside;
}

#terms ul li,
#operator_terms ul li {
    margin: 0 0 5px 15px;
    padding-left: 5px;
}