/* MAIN PAGE LAYOUT ----------------------------------------------- */

body {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 75%;
  margin: 1.5em 0.5em;
  text-align: center;
  padding: 0;
  color: #000;
  background: #eee;
  /* A little fix for IE7 page zoom preventing gaps appearing
     between #wrapper, #header and #footer on zooming in:     */
  position: relative;
}

#wrapper, #header, #footer {
  position: relative;
  font-size: 1em;
  line-height: 1.5em;
  text-align: left;
  margin: 0 auto;
  padding: 0;
  width: 51em;
}

#header {
  background: #e5d8c3;
  border: 1px solid #b38945;
  border-bottom: 0.8em solid #b38945;
}

h1 {
  font-size: 1.6em;
  font-weight: normal;
  margin: 0;
  padding: 0 0 0.4em 0;
  text-align: center;
}

h1 img {
  margin: 0 0 0.2em 0;
  padding: 0;
}

#header p {
  text-align: center;
  margin-top: 0;
  margin-bottom: 0.7em;
}
#header .highlight {
  color: #c00;
}

#wrapper {
  background: #d2ba95;
  border: 1px solid #b38945;
  border-top: none;
  border-bottom: none;
}

#main {
  margin-left: 11em;
  padding: 0.5em;
  background: #e5d8c3;
}

#nav {
  position: absolute;
  top: 0;
  left: 0;
  width: 11em;
  margin: 0;
  padding: 0;
  font-size: 1em;
  line-height: 1.5em;
  text-align: left;
  background: #d2ba95;
}

#footer {
  background: #b38945;
  border: 1px solid #b38945;
  border-top: 0.4em solid #b38945;
  background: #d2ba95;
  text-align: center;
}

#footer p, #footer ul {
  font-size: 0.9em;
  margin: 0;
  padding: 0;
}

#footer ul, #footer li {
  list-style: none;
  display: inline;
}

#footer li {
  border-left: 1px solid #000;
  margin: 0;
  padding: 0 0.8em;
}

#footer li.inlineFirst {
  border: none;
} /* would be nicer to do #footer li:first-child
     and remove this inlineFirst class altogether
     but IE6 did not support first-child and is still around!
     note IE7 et al support first-child but not last-child */

#footer p {
  margin-top: 6px;
}

/* MENU AND NAV EXTRAS DESIGNS ------------------------------------ */

#menuhead, #extrashead, #skiptonav {
  display: none;
}

ul#menu
{
  list-style: none;
  margin: 1.7em 0 1em 0;
  padding: 0;
}
#menu li {
  margin: 0.2em 0;
  padding: 0;
}
#menu li a {
  display: block;
  display: inline-block;
  margin: 0;
  padding: 0 0.5em;
  color: #000;
  text-decoration: underline;
}
#menu li a:hover, #menu li a:focus, #menu li a:active {
  color: #c93100;
}

#extras
{
  text-align: center;
}
#extras ul
{
  list-style: none;
  margin: 2.4em 0 1em 0;
  padding: 0;
}
#extras li {
  margin: 0.5em 1.6em;
  padding: 0;
  border: 1px solid #b38945;
}
#extras li a {
  display: block;
  margin: 0;
  padding: 0 0.3em 0.2em 0.3em;
  border: 1px solid #d2ba95;
  color: #000;
  background: #e5d8c3;
  text-align: center;
}
#extras li a:hover, #extras li a:focus, #extras li a:active {
  background: #e5d8c3;
  color: #c93100;
}

#nav p {
  margin-left: 0.5em;
  margin-right: 0.5em;
}

/* GENERAL TEXT, LINKS AND CONTENT -------------------------------- */

h2 {
  font-size: 1.2em;
  font-weight: bold;
  margin: 1em 0 0 0;
}

h3 {
  font-size: 1.1em;
  font-weight: bold;
  margin: 1.1em 0 0 0;
}

p, blockquote {
  font-size: 1em;
  margin: 1.2em 0 1em 0;
}
blockquote {
  text-align: center;
  font-style: italic;
}

a {
  color: #5d3100; /* alternative #7f4f00; */
}
#footer a {
  color: #000;
}
a:hover, a:focus, a:active ,
#footer a:hover, #footer a:focus, #footer a:active {
  color: #c93100;
}

ul, ol {
  margin-top: 1.2em;
  margin-bottom: 1em;
}

li {
  margin-bottom: 0.6em;
}

li p {
  margin-left: -4em;
}

ul.downloads li, li.downloads {
  list-style: none;
  margin-left: -1.5em;
}
.downloads img {
  display: block;
  float: left;
}

.img {
  font-size: 0.9em;
  width: 43.3em; /* (main width 39em)/0.9em */
  text-align: center;
  overflow: hidden;
  font-style: italic;
}
img {
  border: none;
}

acronym {
  border-bottom: 1px dotted;
}
a acronym {
  border: none;
}

/* FORM STYLES INCLUDING ERROR OUTPUT ----------------------------- */

form {
  margin: 0;
  padding: 0;
}

fieldset {
  margin: 1.2em 0 1em 0;
  padding: 0;
  border: none;
  clear: both;
}

form div, form p, fieldset fieldset {
  margin: 0 0 0.6em 0;
  padding: 0;
}

fieldset fieldset legend {
  margin: 0 0 0 -0.5em;
  font-weight: normal;
  font-size: 1em;
}

fieldset legend {
  margin: 0 0 0.6em 0;
  padding: 0em 0 0 0;
  font-size: 1.1em;
  font-weight: bold;
  color: black;
}

input, textarea, select {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 1em;
  color: #000 !important;
  padding: 1px;
}
textarea {
  line-height: 1.5em;
}

form br {
  display: none;
}

.text label {
  float: left;
  width: 30%;
}
.text input, .text textarea {
  width: 68%;
}

.textShort label {
  float: left;
  width: 90%;
}
.textShort input {
  width: 8%;
}

.longLabelTick input {
  float: left;
  width: 3%;
}
.longLabelTick label {
  float: left;
  width: 94%;
  margin-left: 1%;
}

.textBreak br {
  display: block;
}
.textBreak input, .textBreak textarea {
  width: 98%;
}

.readOnly input, .readOnly textarea {
  border: 1px solid #7f9db9;
  background: #ebebe4;
}

form .fhide {
  position: absolute;
  left: -9999em;
  top: 0;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.reqd {
  font-weight: bold;
  color: #c00;
}

fieldset.error legend, input.error, textarea.error, select.error {
  border: 2px solid #c00;
  background: #fff;/*#fee;*/
}

p.error strong, ul.error strong {
  color: #c00;
}

fieldset#apart {
  float: left;
  width: 30%;
}
fieldset#dates {
  float: left;
  clear: none;
}
fieldset#dates label {
  float: left;
  width: 6.5em;
}
fieldset#dates #nights {
  width: 17em;
}

fieldset#details #detailsCost {
  margin-top: 1.6em;
}

fieldset#find div, fieldset#callback div {
  float: left;
  width: 18em;
}
fieldset#find div#findDetails {
  float: none;
  clear: both;
  width: 100%;
  padding-top: 0.6em;
}

fieldset#send div {
  text-align: center;
  padding-top: 1em;
}

/* APARTMENTS & ATTRACTIONS NAVIGATION ---------------------------- */

.apartnav p {
  width: 13em;
  overflow: hidden;
  float: left;
  text-align: center;
  background: #d2ba95;
}

.attractnav p {
  width: 9.75em;
  overflow: hidden;
  float: left;
  text-align: center;
  background: #d2ba95;
}
.attractnav p.fullwidth {
  width: 39em;
  padding-top: 0.2em;
  margin-top: -1em;
}

.clearfloats {
  display: block;
  clear: both;
  margin: -1em 0 0 0;
}

/* PRICES TABLE --------------------------------------------------- */

table#prices td, table#prices th {
  padding-right: 2em;
  vertical-align: top;
  border-bottom: 1px solid #d2ba95;
}
table#prices td {
  width: 8em;
}
table#prices {
  margin: 0.2em 0 0 0;
}

/* HMM ------------------------------------------------------------ */

.left {
  float: left;
}
.right {
  float: right;
}


/* AVAILABILITY CALENDARS ----------------------------------------- */

#availability #wrapper, #availability #header, #availability #footer {
  width: 75.5em;
}
table.avcal {
  border-collapse: collapse;
  margin: 1em auto;
  padding: 0;
  font-family: Verdana;
  font-size: 1em;
}
table.avcal th, table.avcal td {
  border: 1px solid #b38945;
  margin: 0;
  padding: 1px;
  width: 1.5em;
  height: 0.5em;
  background: #fff;
  color: #000;
  font-weight: normal;
  text-align: center;
}
table.avcal th {
  background: #e5d8c3;
}
table.avcal th.monthName {
  background: #b38945;
  font-weight: bold;
}
table.avcal th.apartHead, table.avcal th.apartName {
  width: 8em;
  padding-left: 0.3em;
}
table.avcal th.apartHead {
  background: #b38945;
  font-weight: bold;
}
table.avcal th.cutOut {
  background: none;
  border-top: 0;
  border-left: 0;
}
table.avcal th.weekend {
  background: #d2ba95;
}
table.avcal td {
  padding: 0;
  vertical-align: bottom;
}
table.avcal td.b {
  background: #d2ba95;
}
table.avcal td.bh {
  background: #c93100;
}
table.avcal td img {
  display: block;
  width: 100%;
}
table.avcal a.next {
  float: right;
  text-decoration: none;
}
table.avcal a.prev {
  float: left;
  text-decoration: none;
}
table.avcal td a {
  display: block;
  text-decoration: none;
}
table.avcal .padFirst {
  border-right: none;
  border-bottom: none;
}
table.avcal .pad {
  border: none;
}
.calendarHelp {
  position: relative;
  text-align: center;
  font-weight: bold;
  width: 46em;
  margin: 1.5em auto 0.5em auto;
}
form.calendarJump {
  width: 26em;
  margin: 0 auto;
  background: #d2ba95;
}
form.calendarJump br {
  display: block;
}
.calendarHelp .button {
  position: absolute;
  top: 0;
  width: 8.5em;
  margin: 0;
  padding: 0;
  border: 1px solid #b38945;
}
.calendarHelp .button#pricesButton {
  left: 0;
}
.calendarHelp .button#bookingButton {
  right: 0;
}
.calendarHelp .button a {
  display: block;
  line-height: 2.5em;
  font-size: 1.2em;
  margin: 0;
  padding: 0 0.3em;
  /* [A] 
  border: 1px solid #e5d8c3;
  background: #d2ba95;
  /* [B]
  background: #b38945;
  color: #000;*/
  background: #e5d8c3;
  border: 1px solid #d2ba95;
  background: #fff;
}
.calendarHelp .button a:hover,
.calendarHelp .button a:focus,
.calendarHelp .button a:active {
  /*background: #e5d8c3;
  border: 1px solid #d2ba95;*/
  border: 1px solid #e5d8c3;
  background: #d2ba95;
}

table.calendarKey {
  width: 46em;
  margin: 1.5em auto 0.5em auto;
}
table.calendarKey th {
  background: #b38945;
  font-weight: bold;
}
table.calendarKey td img {
  background: #d2ba95;
  width: 20px;
  display: inline;
  border: 1px solid #b38945;
  margin-top: 3px;
}
