* {
  margin: 0;
  padding: 0;
}

html {
  height: 101%; /* prevent scrollbar jumping in firefox */
}

body {
  background: url(../images/bg_body.jpg) repeat-x #00004f;
  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
  font-size: 100.01%; /* prevent extreme font resizing in IE */
  text-align: center;
  color: #00009c;
  font-size: 62.5%;
}

a img, :link img, :visited img {border:none} /* remove border from image links */

ul, li {list-style: none;}

.clear {clear: both;}

br.clear {height: 0; line-height: 0;} /* remove space below clearing br tags in IE5 */

.hide {
  position: absolute;
  left: -10000px;
  top: -10000px;
}

a:hover {
  text-decoration: underline !important;
}

/* ---------------------------------------------------------------- forms */

select, input, textarea {
  font-size: 1em;
  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
  color: #666;
}

/* ---------------------------------------------------------------- structure */

#container {
  margin: 0 auto 0 auto;
  text-align: left;
  width: 760px;
  background: #fff;
  margin-top: 20px;
}

#header {
  background: #fff top no-repeat url(../images/bg_header.gif);
  clear: both;
  padding: 40px 0 0 20px;
}

#leftcol {
  width: 206px;
  margin-left: 20px;
  float: left;
  display: inline;
}

#rightcol {
  width: 504px;
  margin-left: 20px;
  float: left;
  display: inline;
}

/* --------------------------------------------------------------------- navigation tabs */

#nav {
  background: #00009c;
}

#nav ul {
  list-style: none;
  width: 760px;
}

#nav li {
  background: #00009c url(../images/bg_tab_left.gif) top left no-repeat;
  padding: 10px 0 10px 10px;
  padding-right: 2px;
  float: left;
}

#nav li a {
  background: url(../images/bg_tab_right.gif) top right no-repeat;
  padding: 10px 10px 10px 4px;
  margin-left: 10px;
  color: #00009c;
  text-decoration: none;
}

#nav li a:hover {
  color: #009900;
  text-decoration: underline;
}

/* --------------------------------- highlight current tab */

#nav li.current {
  background: #00009c url(../images/bg_tab_highlight_left.gif) top left no-repeat;
}

#nav li.current a {
  background: url(../images/bg_tab_highlight_right.gif) top right no-repeat;
  color: #fff;
  text-decoration: none;
}

#nav li.current a:hover {
  color: #fff;
  text-decoration: none;
}

/* --------------------------------------------------------------------- headings */

h1#logo {
  margin: 0 0 20px 0;
  width: 222px;
  height: 63px;
  position: relative;
  font-size: 10px;
}

h1#logo span {
  background: url(../images/kanestravel_logo.gif) no-repeat;
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

h2 {
  font-family: "Trebuchet MS", Verdana, sans-serif;
  font-size: 1.7em;
}

h3 {
  font-size: 1em;
}

/* --------------------------------------------------------------------- left column */

#leftcol h2 {
  margin-bottom: 5px;
}

#leftcol table {
  width: 206px;
  margin-bottom: 20px;
  font-size: 100%;
}

#leftcol table th {
  font-weight: normal;
  border-top: 1px solid #009900;
  padding: 5px 0;
  font-size: 100%;
  text-align: left;
}

#leftcol table td {
  font-weight: bold;
  border-top: 1px solid #009900;
  text-align: right;
  font-size: 100%;
}

#leftcol table a {
  color: #00009c;
  text-decoration: none;
}

#leftcol table a:hover {
  color: #009900;
}

#leftcol li {
  padding-bottom: 5px;
}

#leftcol li a {
  color: #00009c;
}

#leftcol li a:hover {
  color: #009900;
}

#leftcol ul.left-list li {
  width: 206px;
  padding: 6px 0;
  border-top: 1px solid #009900;
}

/* --------------------------------------------------------------------- custom styles for search forms */

.adults, .children, .infants {
  width: 70px !important;
  display: block;
  float: left;
}

.adults, .children {
  margin-right: 5px;
}

select.date-day {width: 45px !important; margin-right: 2px;}
select.date-month {width: 75px !important; margin-right: 2px;}
select.date-year {width: 55px !important; margin-right: 2px;}
select.small {width: 45px !important; margin-right: 2px;}
select.date-monthyear {width: 135px !important; margin-right: 2px;}

p.submit {
  position: absolute;
  bottom: 20px;
  left: 64px;
  height: 25px;
}

.calender-icon {
  margin-bottom: -4px;
  cursor: pointer;
}

/* --------------------------------------------------------------------- holiday search */

#holiday-search {
  float: left;
  width: 242px;
  height: 353px;
  background: no-repeat url(../images/bg_searchbox.jpg) bottom #0d449e;
  color: #fff;
  position: relative;
}

#holiday-search h2 {
  width: 242px;
  height: 40px;
  position: relative;
  font-size: 8px;
}

#holiday-search h2 span {
  background: url(../images/tab_holidaysearch.gif) no-repeat;
  position: absolute;
  width: 100%;
  height: 100%;
}

#holiday-search form, #flight-search form {
  margin: 0 10px;
}

#holiday-search select, #flight-search select {
  margin-top: 3px;
  width: 222px;
}

#holiday-search p, #flight-search p {
  margin-bottom: 5px;
}

/* --------------------------------------------------------------------- flight search */

#flight-search {
  float: left;
  width: 242px;
  height: 353px;
  margin-left: 10px;
  display: inline;
  background: no-repeat url(../images/bg_searchbox.jpg) bottom #0d449e;
  color: #fff;
  position: relative;
}

#flight-search h2 {
  width: 242px;
  height: 40px;
  position: relative;
  font-size: 8px;
}

#flight-search h2 span {
  background: url(../images/tab_flightsearch.gif) no-repeat;
  position: absolute;
  width: 100%;
  height: 100%;
}

p.radio-para {
  clear: both;
  padding: 8px 0 0 0 !important;
  line-height: 2em;
}

/* --------------------------------------------------------------------- homepage offers */

a.thumb-container {
  display: block;
  position: relative;
  width: 116px;
  height: 68px;
}

.thumb {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

.thumb-corners {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
}

div.offer {
  color: #666;
  margin: 10px 10px 30px 0;
  float: left;
  display: inline;
  width: 116px;
}

div.offer a {
  color: #00009c;
}

div.offer a:hover {
  color: #009900;
}

div.offer li {
  padding-bottom: 5px;
}

div.offer h3 {
  padding: 5px 0;
}

/* --------------------------------------------------------------------- footer */

#footer {
  position: relative;
  background: url(../images/bg_footer.jpg) #00004f;
  height: 133px;
  color: #fff;
  clear: both;
}

#footer a {
  color: #fff;
}

#footer h2#tagline {
  padding: 35px 0 0 122px;
}

#footer div#affiliates {
  position: absolute;
  right: 20px;
  bottom: 25px;
}

#footer p {
  line-height: 1.7em;
}

#footer p#address {
  position: absolute;
  width: 226px;
  left: 20px;
  top: 75px;
}

#footer p#phone-email {
  position: absolute;
  left: 282px;
  top: 75px;
}

#nexus {
  background: #00004f;
  text-align: center;
  margin: 0 auto;
  padding: 10px 0 20px 0;
}

/* --------------------------------------------------------------------- search results */

div#search-results {
  padding: 20px;
}

div#search-results table {
  width: 720px;
  background: url(../images/bg_table_bottom.jpg) bottom no-repeat #0d449e;
  margin-bottom: 120px;
  padding-bottom: 80px;
}

div#search-results th {
  color: #fff;
  padding: 8px 10px;
  vertical-align: top;
  font-size: 1em;
}

div#search-results td {
  border-top: 1px solid #009900;
  color: #fff;
  padding: 8px 10px;
  vertical-align: top;
}

div#search-results .destination {
  font-weight: bold;
}

div#search-results .price {
  text-align: right;
}

.h2-tab {
  background: url(../images/bg_tab_h2_left.gif) top left no-repeat;
  color: #fff;
  padding: 5px 5px 5px 7px;
  font-size: 1.5em;
}

.h2-tab span {
  background: #0d449e url(../images/bg_tab_h2_right.gif) top right no-repeat;
  padding: 5px 10px 5px 5px;
}

th.cornered {
  background: url(../images/bg_tab_h2_right.gif) top right no-repeat;
}

/* --------------------------------------------------------------------- details booking */

table#book-details td {
  width: 206px;
  font-weight: normal;
  text-align: left;
  padding: 5px 0;
  line-height: 1.5em;
}

/* --------------------------------------------------------------------- panel for 2 col pages */

div#panel-2col {
  width: 494px;
  background: #0d449e url(../images/bg_table_bottom_2col.jpg) bottom no-repeat;
  color: #fff;
  position: relative;
  margin-bottom: 80px;
}

div#panel-2col p.book {
  padding: 10px 10px 0 12px;
}

div#panel-2col p.book strong {
  font-size: 1.7em;
}

div#panel-2col span {
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  background: #00009c url(../images/bg_tab_h2_right.gif) top right no-repeat;
}

/* --------------------------------------------------------------------- panel for 1 col pages */

div#panel-1col {
  width: 720px;
  background: #0d449e url(../images/bg_table_bottom.jpg) bottom no-repeat;
  color: #fff;
  position: relative;
  margin-bottom: 80px;
}

div#panel-1col p {
  padding: 0 10px 10px 10px;
}

div#panel-1col span {
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  background: #00009c url(../images/bg_tab_h2_right.gif) top right no-repeat;
}

/* --------------------------------------------------------------------- sun search */

.sun-search {
  color: #fff;
  margin-left: 10px;
}

.sun-search select {
  margin-top: 3px;
  width: 222px;
}

.sun-search p {
  margin-bottom: 5px;
}

#sun-search-left {
  float: left;
  display: inline;
}

#sun-search-right {
  float: right;
  display: inline;
  margin-right: 10px;
}

/* --------------------------------------------------------------------- search results */

div#cat-summary {
  padding: 20px;
}

div.cat-offer {
  clear: both;
  border-bottom: 1px solid #009900;
  padding: 10px 0;
  line-height: 1.5em;
}

img.cat-thumb {
  float: left;
  margin: 5px 10px 50px 10px;
  display: inline;
}

p.more-info {
  margin-top: 10px;
}

div#holiday-details {
  padding: 10px 11px 0 11px;
  margin-bottom: 20px;
}

div#holiday-details p {
  padding-bottom: 20px;
}

.holiday-details-img {
  float: right;
  margin: 5px 0 10px 10px;
}

div.itinerary {
  padding: 0 11px 11px 11px;
  clear: both;
}

img.itinerary-img {
  float: left;
  margin: 0 10px 10px 0;
  padding-bottom: 10px;
  display: inline;
}

h3.itinerary-heading {
  padding: 0 0 10px 11px;
}

.p-content {
  padding: 5px 11px;   
}

/* --------------------------------------------------------------------- offer booking */

form#book {
  padding: 10px;
}

form#book label, form#book p.label {
  width: 150px;
  display: block;
  float: left;
  padding-bottom: 5px;
}

form#book fieldset {
  border: 0;
  border-bottom: 1px solid #009900;
  padding: 10px;
}

form#book h3 {
  padding-top: 10px;
}

form#book select {
  margin-bottom: 5px;
}

form#book input {
  margin-bottom: 5px;
}

form#book input.textfield {
  width: 190px;
  padding: 2px;
}

form#book textarea {
  width: 194px;
  height: 40px;
}

form#book textarea {
  width: 194px;
  height: 40px;
}

fieldset#travelinsurance label {
  width: 300px;
}

.submit-button {
  margin: 20px 0 30px 0;
  text-align: center;
}

p.thanks {
  padding: 0 12px 10px 12px;
}

p.thanks a {
  color: #fff;
}

div.error {
  margin: 0 0 0 10px;
  padding-left: 30px;
  padding-top: 10px;
  background: url(../images/icon_error.gif ) no-repeat 0 10px;
}

p.subscribe {
  color: #666; border-top: 1px solid #009900; padding-top: 5px;
}

