body {
  background: #818181;
  margin: 0;
  padding: 0;
  color: #d3d2d2!important; 
  /* #efefef */
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #fff !important;
}

/* unique hotel styles */
.shell-hdr,
.shell-hdr * {
    box-sizing: border-box;
}
.shell-hdr {
  background: #466F3C;
  align-items: center;
  flex-flow: row;
  width: 100%;
  margin-top: 40px;
}

.shell-hdr a {
  display: block;
  z-index: 1;
  padding: 0;
}

.shell-nav {
  display: flex;
  flex-flow:row wrap;
  width: 100vw;
  justify-content: flex-end;
  list-style: none inside;
  margin: 0;
  padding: 0 10vw;
}

.shell-nav a {
  padding: 10px 20px;
  font-size: 16px;
  color: white;
  text-decoration: none;
}

.shell-hdr img {
  width: 100vw;
  max-width: 131px;
}

.shell-be {
  background: transparent;
}

.shell-footer {
  /* background: #466F3C; */
  color: #fff;
  padding: 0px 10vw 10px 10vw;
  text-align: right;
  font-size: 16px;
  line-height: 1;
  margin-bottom: 15px;
}

.mobile {
  background: transparent;
  width: 35px;
  height: 40px;
  border: 0;
  cursor: pointer;
  display: none;
}

.mobile span {
  display: block;
  background: white;
  width: 100%;
  height: 3px;
  margin-bottom: 4px;
}

/* modal hotel info */
.hotel-info {
  width: 33vw;
  min-width: 410px;
  background: rgba(255, 255, 255, 0.795);
  padding: 10px 20px;
  font-size: 16px;
  line-height: 1.5;
  position: relative;
}

.hotel-info a {
  color: black;
  text-decoration: none;
}

/* Booking engine custom styles */

/* BE Body color */
#guest-login,
#header, 
.summary, 
#guest-information, 
.calendars, 
.calLegend, 
.checkAvail, 
.roomDesc, 
#res-confirmation, 
#res-cancellation, 
.dates, 
.card-panel,
.rateInfo, 
.rateDesc, 
.ratePrice,
.roomRates td#RoomBeforeTxLbl, 
.roomRates td.RoomBeforeTxLbl, 
.roomRates td {
  background-color: #080808 !important;
}

.sweet-alert {
  background-color: #1b1b1b !important;
}

#guest-login a,
#res-info label,
#res-info span,
.openAccordion,
.main-header #hotel-name,
.roomName h4,
.done .step-number,
.ui-datepicker-calendar thead th span,
#progress-bar li div:last-of-type,
.openNightlyRates,
.lblNightlyRate,
.RoomBeforeTxLbl,
#RoomFeeLbl,
.RoomTaxlbl,
#RoomTotLbl,
#tac_0 strong,
.ratePrice .price .salePrice,
#show-privacy-policy,
#finalTAC strong {
  color: #fff !important;
}

.ui-datepicker-calendar td a {
  color: #d3d2d2;
}

.dp-highlight a,
.step-number,
input,
textarea {
  color: #080808 !important;
}

#cboNAdults,
#summaryChildren {
  color: #8f8f8f;
}

.cancel {
  background: #818181;
  white-space: nowrap !important;
}

.cancel:hover {
  background-color: #c4574f !important;
}

#show-privacy-policy:hover,
#lblOrLogin a,
#lblRoomTypeHeader3.modify-dypckg-btn {
  color: #73a566 !important;
}

.ui-datepicker-unselectable span {
  opacity: 0.3 !important;
}

.ui-datepicker-header,
.summary .summaryHeader,
.done .step-number, .done .step-number:before {
  background: #466F3C;
}

/* Guest login */
#guest-login {
  transition: background-color ease 0.2s !important;
}

#guest-login:hover {
  box-shadow: none !important;
  background-color: #73A566 !important ;
}

#guest-login ul li a {
  text-transform: lowercase;
}

#guest-login ul li a:hover {
  background: #ffff0000!important;
}
/* Sidebar */ 
.table > tbody > tr > td, .table > tfoot > tr > td {
  border-top-color:  #525252 !important;
}
.summary .summaryrow {
  border-bottom-color: #525252;
}

/* Calendar cell border and select dates state*/
.ui-datepicker-calendar td[data-handler="selectDay"] {
  border-color: #525252;
}

.dp-highlight {
  background: #c2edcd;
}

/* clockable elements (buttons, rooms) */
.reserveRoom,
.roomName {
  background: #466F3C;
}

.reserveRoom:hover,
.on, .roomName:hover,
.roomName:focus {
  background: #73a566;
}

/*subheaders*/
.roomdescBody h4, 
.roomPolicy h4,
h4.contentHdr {
    color: #3e3630;
}

a.hotel-logo {
  position: absolute;
  left: 5%;
  background: #466F3C;
  padding-bottom: 12px;
  top: 10px;
}

.shell-nav li:first-child {
  display: none;
}

/* BE Text Adjust & Cancel Btn Visibility  */
.rateInfo .ratePrice small {
  font-size: 12px;
  text-transform: initial;
  display: block;
}

#lblRateType3 {
  text-transform: lowercase;
}

.rateInfo .ratePrice small:first-letter,
#lblReadAccept::first-letter,
#lblRateType3::first-letter,
#guest-login ul li a::first-letter {
  text-transform: capitalize;
}

#lblReadAccept {
  display: block;
  text-transform: lowercase;
}

#guest-login-lbl {
  text-transform: capitalize;
}

#lblNumberChildrenP1 {
  width: 100%;
}

#lblNChildren {
  float: right;
}

#cancelReservation {
  display: none;
}

.modal-window {
  background: #3d3d3d;
}


/* Media Queries */
@media only screen and (max-width : 600px) {
  .shell-hdr {
    position: relative;
    height: 50px;
    margin-bottom: 30px;
  }

  a.hotel-logo {
    position: absolute;
    left: 5%;
    z-index: 99901;
    top: -25px;
  }

  .shell-nav {
    flex-flow: column;
    align-items: flex-end;
    position: absolute;
    top: 0;
    background: #466F3C;
    z-index: 99900;
  }

  .shell-nav li {
    display: none;
  }

  .shell-nav.open li,
  .shell-nav li:first-child {
    display: block;
  }

  .shell-footer {
    text-align: left;
  }
}