body {
    font-size:12px;
    font-family:sans-serif;
    margin:0;
    border:0;
    padding:0;
}

a:link { color:black; }
a:active { color:black; }
a:visited { color:black; }
a:hover { color:gray; }

div {
    margin:0;
    padding:0;
}

table thead {
    display:none;
}

.calendar thead {
    display:table-header-group;
}

td {
    margin:0;
    border:0;
    padding:1px;
}

td.traveldate {
    border:1px solid gray;    
    padding:2px 3px;
    width:225px;
    background-color:white;
}

h1 {
    font-size:1.6em;
    font-weight:bold;
    color:white;
    background-color:black;
    margin:0;
    padding:5px 10px;
}

h2 {
    font-size:1.2em;
    font-weight:bold;
    color:white;
    background-color:black;
    margin:0;
    padding:5px 10px;
}

h3 {
    font-size:0.8em;
    font-weight:bold;
    color:white;
    background-color:black;
    margin:0;
    padding:5px 10px;
}

div.voucher {
    margin:5px auto 0 auto;
    border:1px solid black;
    border-bottom-width:3px;
    background-color:white;
    width:780px;
}

div.clear {
    clear:both;
    height:0;
    margin:0;
    border:0;
    padding:0;
}

div.hr {
    clear:both;
    margin:0;
    padding:0;
    height:1px;
    background-color:black;
}

td.label {
    width:10.0em;
    text-align:right;
}

td.value {
    text-align:left;
}

div.passenger {
    margin:2px;
    width:386px;
    float:right;
}

div.operator {
    margin:2px;
    width:386px;
    float:right;
}

div.operator div.logo {
    width:120px;
    height:80px;
    float:right;
    margin-left:5px;
    margin-right:5px;
}

div.respax {
    margin:2px auto;
    width:780px;
    text-align:right;
    font-style:italic;
}

div.respax img.logo {
    margin-left:5px;
    margin-right:5px;
    vertical-align:middle;
    border:0;
}

div.operator .details {
    text-align:right;
    line-height:1.65em;
}

div.operator .details .name {
    font-weight:bold;
}

div.operator img {
    margin-left:5px;
    float:right;
    border:0;
    background-color:white;
}

div.tour {
    margin:2px;
    width:386px;
    float:left;
}

div.payment {
    margin:2px;
    width:386px;
    float:left;
    background-color:#d8d8d8;
}

div.commit {
    margin:5px auto;
    text-align:center;
}

div.message {
    text-align:justify;
    font-size:0.8em;
    margin:2px auto;
    border:0;
    padding:0;
    background-color:transparent;
}

div.secure {
    float:right;
    margin:0 0 10px 10px;
}

div.submit {
    display:none;
    margin:0 auto;
    border:0;
    padding:0;
    text-align:center;
}

div.submit img {
    margin:20px auto;
    border:0;
    display:block;
}

div.submit div.message {
    margin:0 auto;
    width:25em;
    font-size:1.0em;
    font-style:italic;
    text-align:justify;
}

div.error {
    background-color:#f8c8c8;
    color:red;
    font-weight:bold;
    text-align:left;
    margin:5px 0 0 0;
    border-width:1px 0 1px 0;
    border-style:solid;
    border-color:red;
    padding:5px 20px;
}

ul.error {
    text-align:left;
    margin-top:0;
    margin-bottom:0;
}

div.terms {
    display:none;
    background-color:#f0f0f0;
    margin:0 2px 2px 2px;
    border:1px solid black;
    padding:2px 0;
}

div.terms h1 {
    margin:2px 0;
    padding:0;
    background-color:transparent;
    text-align:center;
    color:black;
    font-size:1.4em;
}

div.terms h2 {
    margin:2px 0;
    padding:0;
    background-color:transparent;
    text-align:center;
    color:black;
    font-size:1.2em;
    text-decoration:underline;
}

div.terms div.content {
    padding:5px 10px;
    text-align:justify;
}

div.terms div.contact {
    padding:5px 10px;
}


table.payment { width:100%; margin:0; }
td.deposit { text-align:right; padding-right:5px; }
td.deposit_amount { text-align:right; width:8em; padding:4px; font-weight:bold; }
td.fee {  text-align:right; padding-right:5px;  }
td.fee_amount { text-align:right; width:8em; padding:4px; font-weight:bold; }
td.subtotal { text-align:right; font-weight:bold; padding-right:5px; }
td.subtotal_amount { text-align:right; padding:4px;  font-weight:bold; border-width:1px 0 0 0; border-style:solid; border-color:black; }
td.balance { text-align:right; padding-right:5px; }
td.balance_amount { text-align:right; padding:4px; font-weight:bold; }
td.total { text-align:right; padding-right:5px; }
td.total_amount { text-align:right; padding:4px;  font-weight:bold; border-width:1px 0 2px 0; border-style:solid; border-color:black; }

input { border:1px solid gray; font-size:1em; }
input[type=text] { width:250px; padding:2px 0; }
input.text { width:250px; padding:2px 0;}
input[type=checkbox] { border:0; vertical-align:middle; }
input.checkbox { border:0; vertical-align:middle; }
input.pax_numbers { width:1.6em; margin-right:4px; }
input.tour_date { width:1227px; }
input.verification { width:2.2em; }
input.commit { font-size:1.6em; font-weight:bold; width:12em; height:1.8em; border:1px outset gray; background-color:gray; color:white; margin:5px 0; }
input.calculate { display:none; }
input.refresh_pickups { border:1px outset gray; background-color:gray; color:white; font-weight:normal; padding:1px 0; width:250px; display:none; }

select { border:1px solid gray; width:252px; }
option { font-size:1em; }
select.month { width:4.0em; }
select.year { margin-left:0.1em; width:6.0em; }

textarea { border:1px solid gray; width:250px; }

img.optional {
    background-image:url(../images/blank.gif);
    margin-left:2px;
    border:0;
}
img.required {
    background-image:url(../images/required_field_grey1.gif);
    margin-left:2px;
    border:0;
}
img.availability {
    background-image:url(../images/availability.gif);
    margin-left:2px;
    border:0;
}
img.no_availability {
    background-image:url(../images/no_availability.gif);
    margin-left:2px;
    border:0;
}
div.payment img.required {
    background-image:url(../images/required_field_grey2.gif);
}
img.calendar_button {
    vertical-align:middle;
    margin:0 0 0 2px;
    border:0;
}

