html {
  background: #E5E5E5 url('images/page_bg_dropshadow_puny.png') repeat-y center top;
  overflow-y: scroll;
}

body {
  background: #FFF url('images/sidebar_bg.png') scroll repeat-y right top;
  font: normal 90% Arial, sans-serif;
  color: #444;
  margin: 5px auto;
  line-height: 1.2em;
  width: 980px;
  position: relative;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 1.2em;
  margin-bottom: 0.4em;
  line-height: 1em;
}
h1 { font-size: 190%; margin-top: 0.8em; }
h2 { font-size: 150%; }
h3 { font-size: 120%; }
h4 { font-size: 115%; }
h5 { font-size: 110%; }
h6 { font-size: 105%; }

#contentWrapper #sidebar h3 { font-size: 160%; }
#contentWrapper #sidebar h4 { font-size: 130%; margin-bottom: -0.3em; }

li, li ul, li ol {
     margin-top: 0.3em;
  margin-bottom: 0.3em;
}
#customerReviewsList {
  list-style: circle;
}
#customerReviewsList li,
#faqList li {
  margin-bottom: 0.8em;
  margin-left: -1em;
}


p, ul, ol {
     margin-top: 0.8em;
  margin-bottom: 0.8em;
}

#contentWrapper #content a,
#contentWrapper #sidebar a { text-decoration: underline; }
#homePage #contentWrapper h2,
#contentWrapper #content a { color: #499579 ! important; }
#contentWrapper #sidebar a { color: #3F876D; }
#contentWrapper #content a:hover { background-color: #EEE; }
#contentWrapper #sidebar a:hover { background-color: #DDD; }

acronym, abbr, .help { border-bottom: 1px dashed #AAA; cursor: help; }

h1, h2, h3, h4, h5, h6,
hr, a { background: transparent; }

hr {
  border: none;
  border-bottom: 1px solid #FAFAFA;
  border-top: 1px solid #DDD;
  height: 1px;
  margin: 1.5em 0em 1em 0em;
  clear: left;
}

small, .small, sub, sup { font-size: 80%; }
big, .big { font-size: 120%; }

#topbarWrapper,
#contentWrapper,
#pageFooterWrapper {
  overflow: hidden;
  width: 100%;
}

#topbarWrapper,
#topbarWrapper a,
#pageFooterWrapper,
#pageFooterWrapper a {
  color: #E0ECE7;
  text-decoration: none;
}

#topbarWrapper {
  background: #3E705F url('images/topbar_bg.png') scroll repeat left top;
  font-weight: bold;
  padding: 10px 0px;
  text-align: right;
  line-height: 1.5em;
  font-size: 14px;
}
#topbarWrapper a {
  background-color: #48806C;
  padding: 5px 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
}
#topbarWrapper a:hover { background-color: #5AA086; color: #FFF; }
#topbarWrapper ul { float: left; list-style: none; padding: 0px; margin: 0px 0px 0px 5px; }
#topbarWrapper li { display: inline; }
#topbarWrapper #contactBlip { float: right; margin-right: 75px; }
#topbarWrapper #webAddress,
#whatsIncludedSummary { display: none; }

#pageHeaderWrapper #topbarCurve {
  background: transparent url('images/page_photo_curve_puny.png') scroll no-repeat left top;
  width: 92px;
  height: 94px;
  position: absolute;
  right: 0px;
  z-index: 100;
}

#pageHeaderWrapper #coName {
  position: relative;
  display: block;
  margin: -65px 0px 0px 6px;
  z-index: 101;
  width: 462px ! important;
  height: 64px;
}

#contentWrapper #content {
  width: 666px;
  padding: 0px 20px 1em 20px;
  float: left;
}

#contentWrapper #sidebar {
  width: 234px;
  padding: 0px 20px;
  float: right;
  font-size: 90%;
  line-height: 1.2em;
}

#contentWrapper #sidebar ul {
  list-style: circle;
}
#contentWrapper #sidebar #sidebarReservation ul li,
#contentWrapper #sidebar #sidebarLinks ul li {
  margin-left: -1.8em;
}

#contentWrapper #sidebar ul.sidebarLocations {
  padding: 0px;
  margin-top: 0px;
  margin-left: 0px;
  list-style: none;
  float: left;
}

#contentWrapper #sidebar ul.sidebarLocations li {
  font-size: 110%;
  padding-right: 20px;
}

#contentWrapper #sidebar form#newsletter input {
  font-size: 11px;
}

#contentWrapper #sidebar form#newsletter input.text {
  width: 158px;
}

#contentWrapper #sidebar form#newsletter input.button {
  width: 70px;
}

/*
#contentWrapper #sidebar ul.sidebarLocations li a {
  display: block;
  padding: 3px 10px 4px 10px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
#contentWrapper #sidebar ul.sidebarLocations li a:hover {
}
*/

#pageFooterWrapper {
  background: transparent url('images/footer_bg_puny.png') scroll no-repeat left top;
}

#pageFooterWrapper,
#pageFooterWrapper h4 {
  font-size: 12px;
}

#pageFooterWrapper #pageFooter {
  background: transparent url('images/footer_bg_pattern.png') scroll no-repeat left bottom;
  width: 100%;
  overflow: hidden;
}

#pageFooterWrapper a:hover { text-decoration: underline; color: #FFF; }

#pageFooterWrapper #pageFooter .sitemapList {
  float: left;
  margin: 8px 8px 10px 21px;
}

#pageFooterWrapper #pageFooter .sitemapList ul {
  padding: 0px;
  margin: 10px 0px;
  list-style: none;
  line-height: 1em;
}

body.toursListPage #contentWrapper #content img,
body.tourItineraryPage #contentWrapper #content img {
  float: left;
  width: 150px;
  height: 100px;
  border: 1px solid #000;
}
body.toursPages #contentWrapper #content p img {
  margin: 6px 17px 0px 0px;
}
body.toursListPage #contentWrapper #content a {
  font-size: 120%;
  font-weight: bold;
  line-height: 200%;
}
body.toursPages #contentWrapper #content p,
body.toursPages #contentWrapper #content h2,
body.toursPages #contentWrapper #content h3,
body.toursPages #contentWrapper #content h4,
body.toursPages #contentWrapper #content h5 {
  clear: left;
}
body.toursPages #contentWrapper #content h2,
body.toursPages #contentWrapper #content h3,
body.toursPages #contentWrapper #content h4,
body.toursPages #contentWrapper #content h5 {
  margin-top: 2em;
}

body.toursPages h2.nightsDays {
  margin-top: -0.5em ! important;
  font-size: 120%;
  font-weight: normal;
}
body.toursPages #contentWrapper #content p.distanceWalking,
body.toursPages #contentWrapper #content p.distanceBoating,
body.toursPages #contentWrapper #content p.distanceCycling {
  font-size: 90%;
  font-style: italic;
  background: transparent url('images/icon_cycle.png') scroll no-repeat left center;
  line-height: 22px;
  margin-top: -0.5em;
  margin-bottom: 4px;
  padding-left: 26px;
}
body.toursPages #contentWrapper #content p.distanceWalking { background-image: url('images/icon_walk.png'); }
body.toursPages #contentWrapper #content p.distanceBoating { background-image: url('images/icon_boat.png'); }
body.toursListPage #contentWrapper #content p,
body.tourItineraryPage #contentWrapper #content p {
  overflow: hidden;
}

body.normalPage #sidebarCurrency,
body.toursListPage #sidebarNewsletter,
body.toursListPage #sidebarLinks,
body.tourSummaryPage #sidebarNewsletter,
body.tourSummaryPage #sidebarLinks,
body.tourItineraryPage #sidebarNewsletter,
body.tourItineraryPage #sidebarCurrency,
body.tourItineraryPage #sidebarLinks { display: none; }

#contentWrapper #content a.buttonLink {
  display: block;
  font-weight: bold;
  background: #EEE;
  padding: 10px 15px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  text-align: center;
  margin: 0 15px 1em 0;
  float: left;
  text-decoration: none;
}

#contentWrapper #content a.buttonLink:hover {
  background-color: #DDD;
  text-decoration: underline;
}

#contentWrapper #content a.mapLink,
#contentWrapper #content a.downloadLink { display: none; }

.columnLeft, img.floatLeft { float: left; }
.columnRight, img.floatRight { float: right; }
img.floatLeft { margin-right: 20px; }
img.floatRight { margin-left: 20px; }
.columnLeft, .columnRight { width: 320px; }
.columnLeft p:first-child, .columnRight p:first-child { margin-top: 0; }
.columnClear { clear: both; }
#contentWrapper #content table tbody td { padding: 3px 5px 3px 0px; }

#resForm #contentWrapper #content #contactDetails input.text,
#resForm #contentWrapper #content #contactDetails textarea.text { width: 250px; }

#resForm #contentWrapper #content p input.text,
#resForm #contentWrapper #content p textarea.text { width: 480px; }

#homePage #contentWrapper h2 a {
  text-decoration: none ! important;
}

#sidebarMap a#locationsMap {
  display: block;
  background: transparent url('images/map_thumb_sprite.png') scroll no-repeat left top;
}
#sidebarMap a#locationsMap:hover {
  background-position: left -121px;
}

#copyright {
  font-size: 11px;
  clear: both;
  margin: 0px 0px 10px 20px;
}
#copyright,
#copyright a {
  color: #A2C6B6;
}
@media print {
  html, body { background: transparent; margin: 0px; height: 100%; }
  html, body,
  #contentWrapper,
  #contentWrapper #content { overflow: visible ! important; }
  #topbarWrapper #nav,
  #sidebar #sidebarMap,
  #sidebar #sidebarCurrency,
  #sidebar #sidebarLinks,
  #sidebar #sidebarReservation,
  #sidebar #sidebarNewsletter,
  #sidebar #sidebarBlog,
  #pageHeaderWrapper #topbarCurve,
  #pageFooterWrapper,
  p#topButtons, p#bottomButtons { display: none ! important; }
  #sidebar #sidebarLocationLists .sidebarLocations li,
  #topbarWrapper #webAddress { display: inline; }
  body.tourSummaryPage #whatsIncludedSummary { display: block; }
  body,
  #topbarWrapper,
  #contentWrapper,
  #contentWrapper #sidebar,
  #contentWrapper #content { padding: 0; width: auto; float: none ! important; }
  #topbarWrapper,
  #topbarWrapper a,
  #topbarWrapper #contactBlip { color: #000; background: transparent; text-align: center; float: none ! important; }
  #topbarWrapper a,
  #topbarWrapper #contactBlip { padding: 0px; margin-left: 2em; }
  #contentWrapper #content iframe { display: block ! important; page-break-inside: avoid; }
  body.toursPages #contentWrapper #content p.distanceWalking,
  body.toursPages #contentWrapper #content p.distanceBoating,
  body.toursPages #contentWrapper #content p.distanceCycling {
    display: list-item ! important;
    list-style-position: inside;
    padding: 0px;
    margin: 0px;
  }
  body.toursPages #contentWrapper #content p.distanceWalking { list-style-image: url('images/icon_walk.png'); }
  body.toursPages #contentWrapper #content p.distanceBoating { list-style-image: url('images/icon_boat.png'); }
  body.toursPages #contentWrapper #content p.distanceCycling { list-style-image: url('images/icon_cycle.png'); }
  body.toursPages #contentWrapper #content p.distanceWalking:before { content: url('images/icon_walk.png'); }
  body.toursPages #contentWrapper #content p.distanceBoating:before { content: url('images/icon_boat.png'); }
  body.toursPages #contentWrapper #content p.distanceCycling:before { content: url('images/icon_cycle.png'); }
}