@charset "UTF-8";
/* RESET */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input::-ms-clear {
  display: none;
}

input::-ms-reveal {
  display: none;
}

legend {
  display: none;
}

html[data-whatinput=mouse] *:focus, html[data-whatinput=touch] *:focus, html[data-whatinput=keyboard][data-whatintent=mouse] *:focus {
  outline: none;
}

@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-XLight.woff2") format("woff2"), url("../fonts/GothamSSm-XLight.woff") format("woff");
  font-weight: 200;
  font-style: normal;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-XLightItalic.woff2") format("woff2"), url("../fonts/GothamSSm-XLightItalic.woff") format("woff");
  font-weight: 200;
  font-style: italic;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-Light.woff2") format("woff2"), url("../fonts/GothamSSm-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-LightItalic.woff2") format("woff2"), url("../fonts/GothamSSm-LightItalic.woff") format("woff");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-Book.woff2") format("woff2"), url("../fonts/GothamSSm-Book.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-BookItalic.woff.woff2") format("woff2"), url("../fonts/GothamSSm-BookItalic.woff.woff") format("woff");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-Medium.woff2") format("woff2"), url("../fonts/GothamSSm-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-MediumItalic.woff2") format("woff2"), url("../fonts/GothamSSm-MediumItalic.woff") format("woff");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-Bold.woff2") format("woff2"), url("../fonts/GothamSSm-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-BoldItalic.woff2") format("woff2"), url("../fonts/GothamSSm-BoldItalic.woff") format("woff");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-Black.woff2") format("woff2"), url("../fonts/GothamSSm-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamSSm-BlackItalic.woff2") format("woff2"), url("../fonts/GothamSSm-BlackItalic.woff") format("woff");
  font-weight: 900;
  font-style: italic;
}
@font-face {
  font-family: "Vendetta";
  src: url("../fonts/vendettaot-light.woff2") format("woff2"), url("../fonts/vendettaot-light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Vendetta";
  src: url("../fonts/vendettaot-medium.woff2") format("woff2"), url("../fonts/vendettaot-medium.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
/* VALIDATION */
.inputContainer {
  position: relative;
  float: left;
}

.formError {
  position: absolute;
  top: 300px;
  left: 300px;
  display: block;
  z-index: 5000;
  cursor: pointer;
}

.ajaxSubmit {
  padding: 20px;
  background: #55ea55;
  border: 1px solid #999;
  display: none;
}

.formError .formErrorContent {
  width: 100%;
  background: #a00;
  position: relative;
  z-index: 5001;
  color: #fff;
  width: 150px;
  font-family: tahoma;
  font-size: 11px;
  padding: 4px 10px 4px 10px;
  border-radius: 3px;
  /*border: 2px solid #ddd;*/
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}

.greenPopup .formErrorContent {
  background: #33be40;
}

.blackPopup .formErrorContent {
  background: #393939;
  color: #FFF;
}

.formError .formErrorArrow {
  width: 15px;
  margin: -2px 0 0 13px;
  position: relative;
  z-index: 5006;
}

body[dir=rtl] .formError .formErrorArrow,
body.rtl .formError .formErrorArrow {
  margin: -2px 13px 0 0;
}

.formError .formErrorArrowBottom {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  margin: 0px 0 0 12px;
  top: 2px;
}

.formError .formErrorArrow div {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
  font-size: 0px;
  height: 1px;
  background: #a00;
  margin: 0 auto;
  line-height: 0;
  font-size: 0;
  display: block;
}

.formError .formErrorArrowBottom div {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
}

.greenPopup .formErrorArrow div {
  background: #33be40;
}

.blackPopup .formErrorArrow div {
  background: #393939;
  color: #FFF;
}

.formError .formErrorArrow .line10 {
  width: 15px;
  border: none;
}

.formError .formErrorArrow .line9 {
  width: 13px;
  border: none;
}

.formError .formErrorArrow .line8 {
  width: 11px;
}

.formError .formErrorArrow .line7 {
  width: 9px;
}

.formError .formErrorArrow .line6 {
  width: 7px;
}

.formError .formErrorArrow .line5 {
  width: 5px;
}

.formError .formErrorArrow .line4 {
  width: 3px;
}

.formError .formErrorArrow .line1 {
  width: 1px;
}

.formError .formErrorArrow .line2,
.formError .formErrorArrow .line3 {
  display: none;
}

/* DATEPICKER */
table.jCalendar {
  width: 200px;
  margin: 0;
  border-collapse: collapse;
  font: 400 9px "Gotham", sans-serif;
}
table.jCalendar th {
  background: #58585a;
  color: #fff;
  font-weight: normal;
  text-align: center;
  text-transform: uppercase;
  height: 25px;
  font-weight: 700;
  overflow: hidden;
  vertical-align: middle;
  padding: 0;
  margin: 0;
}
.property table.jCalendar th {
  background-color: #48433d;
}
table.jCalendar td {
  background: #fff;
  border: thin solid rgba(188, 190, 192, 0.2);
  color: #58585a;
  text-align: center;
  line-height: 23px;
  height: 23px;
  vertical-align: middle;
  cursor: pointer;
  padding: 0;
  margin: 0;
}
table.jCalendar td.today {
  background: #eee;
}
table.jCalendar td.dp-hover {
  color: #fff;
  background: #2e2e2f;
}
.property table.jCalendar td.dp-hover {
  background-color: #48433d;
}
table.jCalendar td.selected {
  color: #58585a;
  background: #fcdcd8;
}
.property table.jCalendar td.selected {
  background-color: #dfbc98;
}
table.jCalendar td.disabled, table.jCalendar td.disabled.dp-hover {
  color: #ccc;
  text-decoration: none;
  cursor: default;
  background: none;
  text-shadow: none;
}

div.dp-popup {
  position: relative;
  font-size: 9px;
  padding: 0;
}
div.dp-popup h2 {
  background: #fff;
  color: #58585a;
  text-align: center;
  font: 700 14px "Gotham", sans-serif;
  line-height: 30px;
  margin: 0;
  padding: 0;
}
div.dp-popup div.dp-nav-prev,
div.dp-popup div.dp-nav-next {
  position: absolute;
  top: 0;
}
div.dp-popup div.dp-nav-prev a,
div.dp-popup div.dp-nav-next a {
  background: #fcdcd8 url("../images/sprite.svg") -140px -160px no-repeat;
  cursor: pointer;
  display: block;
  width: 30px;
  height: 30px;
  overflow: hidden;
  text-indent: -9999px;
}
.no-svg div.dp-popup div.dp-nav-prev a,
.no-svg div.dp-popup div.dp-nav-next a {
  background-image: url("../images/sprite.png");
}
.property div.dp-popup div.dp-nav-prev a,
.property div.dp-popup div.dp-nav-next a {
  background-color: #48433d;
}
.property div.dp-popup div.dp-nav-prev a:hover,
.property div.dp-popup div.dp-nav-next a:hover {
  background-color: #dfbc98;
}
div.dp-popup div.dp-nav-prev a:hover,
div.dp-popup div.dp-nav-next a:hover {
  background-color: #2e2e2f;
}
div.dp-popup div.dp-nav-prev a:active,
div.dp-popup div.dp-nav-next a:active {
  transform: translate(0, 0);
}
div.dp-popup div.dp-nav-prev {
  left: 0;
}
div.dp-popup div.dp-nav-next {
  right: 0;
}
div.dp-popup div.dp-nav-next a {
  background-position: -180px -160px;
}

div#dp-popup {
  background: #fff;
  overflow: hidden;
  position: absolute;
  z-index: 9999;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  border-radius: 3px;
}

.dp-choose-date {
  background: #fff url("../images/sprite.svg") -110px -350px no-repeat;
  position: absolute;
  top: 10px;
  right: 8px;
  width: 13px;
  height: 13px;
  text-indent: -9999px;
  overflow: hidden;
}
.no-svg .dp-choose-date {
  background-image: url("../images/sprite.png");
}

.stylish-select .newListSelected {
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAIElEQVQ4T2P8////GQYKAOOoAQyjYcAwGgbAPDQM0gEAUF48oSnkrSAAAAAASUVORK5CYII=);
  background: rgba(255, 255, 255, 0.8);
}

.stylish-select .selectedTxt {
  border: 0;
  color: #1c282e;
  cursor: pointer;
  height: 30px;
  font-size: 12px;
  line-height: 40px;
  overflow: hidden;
  padding: 0 30px 0 15px;
  position: relative;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.stylish-select .selectedTxt:after {
  content: "";
  height: 0;
  position: absolute;
  right: 12px;
  top: 50%;
  margin-top: -3px;
  width: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #1c282e;
}

.stylish-select .newListDisabled .selectedTxt {
  background-color: #e5e5e5;
}

.stylish-select .SSContainerDivWrapper {
  position: absolute;
  width: 100%;
  z-index: 9999;
}

.stylish-select .newList {
  background: #fff;
  max-height: 200px;
  overflow: auto;
  overflow-x: hidden;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  border-radius: 3px;
  margin: 0 !important;
  padding: 2px !important;
  list-style: none !important;
}
.stylish-select .newList li {
  background: none !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1;
}
.stylish-select .newList li:after {
  content: none !important;
}
.stylish-select .newList li.newListOptionTitle {
  padding: 3px 5px 0 !important;
  font-weight: bold;
  color: #000;
}
.stylish-select .newList li.newListOptionTitle ul {
  margin: 3px -5px 0 !important;
  font-weight: normal;
}
.stylish-select .newList a {
  display: block;
  font-size: 11px;
  line-height: 12px;
  padding: 3px 21px 3px 9px;
  position: static;
  border-radius: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-decoration: none !important;
  color: #000 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6) !important;
  transition: background-color 0.2s;
  -moz-transition: background-color 0.2s;
  -webkit-transition: background-color 0.2s;
  -o-transition: background-color 0.2s;
}
.stylish-select .newList a:hover {
  background: #f0f0f0;
}
.stylish-select .newList a:active {
  background: #e5e5e5;
  top: auto;
  transition: all 0ms;
  -moz-transition: all 0ms;
  -webkit-transition: all 0ms;
  -o-transition: all 0ms;
}
.stylish-select .newList a.hiLite {
  text-decoration: underline !important;
}

html, input, textarea, button {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

input, textarea, button {
  border-radius: 0;
}

input[type=submit], button {
  -webkit-appearance: none;
  -moz-appearance: none;
}

*::-moz-selection, *:after::-moz-selection, *:before::-moz-selection {
  background-color: #7ba4d9;
  color: #000;
}

::-moz-selection, *:after::-moz-selection, *:before::-moz-selection {
  background-color: #7ba4d9;
  color: #000;
}

::selection, *:after::selection, *:before::selection {
  background-color: #7ba4d9;
  color: #000;
}

a, button {
  display: inline-block;
  transition: color 200ms;
}

a:active, input[type=submit]:active, button:active {
  transform: translate(0, 1px);
}

.logo {
  display: block;
  text-indent: -9999px;
  overflow: hidden;
}

a {
  color: #58585a;
}
a:hover {
  color: #2e2e2f;
}

.hide {
  display: none !important;
}

.icon {
  position: absolute;
  left: 0;
  top: 0;
  text-indent: -9999px;
  overflow: hidden;
}

.logo {
  position: relative;
}
.logo:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.center-column {
  position: relative;
  margin: 0 auto;
  max-width: 1600px;
}
.center-column:after {
  content: "";
  display: block;
  height: 0;
  overflow: hidden;
  clear: both;
}

.formError {
  line-height: 18px;
}

select {
  background: none;
  border-radius: 0;
  border: thin solid #bcbec0;
  background: #fff;
  float: left;
  height: 30px;
  line-height: 28px;
  padding: 0 30px 0 20px;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
}
select option {
  background: #fff;
  color: #58585a;
}
select::-ms-expand {
  display: none;
}

select + .select-icon {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #2e2e2f;
  float: left;
  height: 0;
  margin: 12px 0 0 -20px;
  pointer-events: none;
  width: 0;
}

/* BUTTONS */
.button, .page-content #categories-list li a, .page-content .special nav a, #rooms .page-content .nav li a, #upcoming-events a.read-more, #home-gallery a.read-more, input[type=submit], button {
  background: #58585a;
  border: 0;
  cursor: pointer;
  color: #fcdcd8;
  display: inline-block;
  font: 700 12px "Gotham", sans-serif;
  font-weight: 700 !important;
  position: relative;
  padding: 8px 15px;
  margin: 0;
  text-decoration: none;
  text-transform: initial;
  text-align: center;
  white-space: nowrap;
  overflow: visible;
  border-radius: 5px;
  transition: background-color 250ms linear;
}
.button:hover, .page-content #categories-list li a:hover, .page-content .special nav a:hover, #rooms .page-content .nav li a:hover, #upcoming-events a.read-more:hover, #home-gallery a.read-more:hover, .button.active, .page-content #categories-list li a.active, .page-content .special nav a.active, #rooms .page-content .nav li a.active, #upcoming-events a.active.read-more, #home-gallery a.active.read-more, input[type=submit]:hover, input[type=submit].active, button:hover, button.active {
  background-color: #2e2e2f;
  color: #fcdcd8;
}

.slick-track,
.slick-list {
  height: 100%;
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000;
}

.slick-list .slide {
  display: inline-block;
  vertical-align: top;
}

.slick-track {
  transform-style: preserve-3d;
  transition-property: transform;
}

.screen-reader-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  border: 0 !important;
  padding: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  clip-path: inset(50%) !important;
  overflow: hidden !important;
  word-wrap: normal !important;
}

/* Object-fit */
.object-fit {
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  z-index: 0;
}

html, body, #viewport, #viewport > .wrapper {
  height: 100%;
}

html {
  background-color: #2a4a41;
  background-image: url(../images/bg-lines.svg);
  background-size: cover;
  background-position: 0 50%;
  background-repeat: no-repeat;
  position: relative;
  overflow-y: scroll;
  min-width: 320px;
  color: #58585a;
}

body {
  color: #58585a;
  font: 300 21px/1.2 "Vendetta", serif;
  position: relative;
}
.viewport-disabled body {
  overflow: hidden;
}

#viewport-perspective {
  position: relative;
  height: 100%;
  perspective: 2000px;
  perspective-origin: 50% 50%;
  z-index: 20;
}

#viewport {
  background: #fff1e7;
  position: relative;
  transition: all 500ms cubic-bezier(0.8, 0, 0.2, 0.9);
  transform: rotateY(0) translateX(0);
  backface-visibility: hidden;
}
.viewport-disabled #viewport {
  overflow: hidden;
  cursor: pointer;
}
.viewport-moved-to-left #viewport {
  transform: rotateY(35deg) translateX(-250px);
}
.no-csstransforms3d.viewport-moved-to-left #viewport {
  right: 333px;
}
.viewport-moved-to-right #viewport {
  transform: rotateY(-35deg) translateX(250px);
}
@media (max-width: 767px) {
  .viewport-moved-to-right #viewport {
    transform: rotateY(-35deg) translateX(283px);
  }
}
.no-csstransforms3d.viewport-moved-to-right #viewport {
  left: 333px;
}
#viewport > .wrapper {
  background-color: #fff1e7;
  padding-top: 160px;
  position: relative;
  z-index: 10;
}
@media (max-width: 767px) {
  #viewport > .wrapper {
    padding-top: 95px;
  }
}
#viewport > .overlay {
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
  z-index: 50;
}
.viewport-disabled #viewport > .overlay {
  display: block;
}

a.skip-main {
  left: -999px;
  position: absolute;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: -999;
}
a.skip-main:focus, a.skip-main:active {
  color: #2e2e2f;
  background-color: #fcdcd8;
  left: auto;
  top: auto;
  width: 30%;
  height: auto;
  overflow: auto;
  margin: 10px 35%;
  padding: 5px;
  border-radius: 15px;
  border: 4px solid #2a4a41;
  text-align: center;
  font-size: 1.2em;
  z-index: 999;
}

#main-navigation-wrapper {
  bottom: 30px;
  left: 40px;
  overflow: hidden;
  position: absolute;
  top: 100px;
  width: 250px;
}
@media (max-width: 767px) {
  #main-navigation-wrapper {
    left: 20px;
    top: 10px;
  }
}
@media screen and (max-height: 900px) {
  #main-navigation-wrapper {
    top: 70px;
  }
}
#main-navigation-wrapper:after {
  content: "";
  position: absolute;
  bottom: 100px;
  width: 50px;
  height: 52px;
  background: url("../images/sprite.svg") 0 0 no-repeat;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-height: 900px) {
  #main-navigation-wrapper:after {
    bottom: 0;
  }
}

.hidden-navigation {
  bottom: 180px;
  overflow-y: scroll;
  padding-right: 50px;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10;
}
@media screen and (max-height: 900px) {
  .hidden-navigation {
    bottom: 80px;
  }
}
.hidden-navigation .close {
  position: absolute;
  width: 24px;
  height: 24px;
  background: url("../images/sprite.svg") 7px -264px no-repeat;
  z-index: 2;
}
.hidden-navigation .close:hover {
  background-position: -23px -264px;
}
.no-svg .hidden-navigation .close {
  background-image: url("../images/sprite.png");
}

.hidden-navigation-visible.viewport-moved-to-right #main-navigation {
  z-index: 30;
}
#main-navigation .close {
  top: 0;
  right: 18px;
}
#main-navigation li {
  position: relative;
  margin: 5px 0;
}
#main-navigation li.active > a {
  text-decoration: underline;
}
#main-navigation a {
  color: #fff1e7;
  display: block;
  padding: 7px 35px;
  line-height: 16px;
  font: 700 14px "Gotham", sans-serif;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
}
#main-navigation a:hover {
  color: #fcdcd8;
}
#main-navigation > ul {
  border-top: 1px solid rgba(255, 241, 231, 0.5);
  padding-top: 10px;
  margin-top: 20px;
}
#main-navigation > ul:first-child {
  border: 0;
  padding-top: 0;
  margin-top: 0;
}
#main-navigation .plus {
  background-color: rgba(255, 241, 231, 0.5);
  cursor: pointer;
  display: block;
  height: 23px;
  line-height: 23px;
  position: absolute;
  text-align: center;
  right: 0;
  top: 0;
  width: 23px;
  margin: 5px;
  border-radius: 50%;
  transition: background-color 250ms;
  text-decoration: none;
}
#main-navigation .plus:after {
  content: "+";
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  color: #2a4a41;
  font: 300 normal 18px/23px "Gotham", sans-serif;
}
#main-navigation .plus:hover {
  background-color: #fff1e7;
}
#main-navigation .submenu {
  max-height: 0;
  margin-bottom: 0;
  overflow: hidden;
  transition: max-height 350ms ease-in-out, margin 350ms ease-in-out;
}
#main-navigation .submenu a {
  padding: 7px 0;
  font-weight: 300;
  color: #fcdcd8;
  text-transform: none;
}
#main-navigation li.opened > .submenu,
#main-navigation li.active > .submenu {
  max-height: 800px;
  margin: 5px 0;
}
#main-navigation li.opened .plus:after,
#main-navigation li.active .plus:after {
  content: "-";
}

#header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 25;
  perspective: 2000px;
  perspective-origin: 50% 50%;
}
#header.fullHeight {
  height: 100%;
}
.no-csstransforms3d.viewport-moved-to-right #header {
  height: 100%;
  left: 333px;
}
#header #logo {
  height: 92px;
  position: absolute;
  left: 50%;
  top: 14px;
  transform: translateX(-50%);
  text-indent: -1000em;
  z-index: 30;
}
@media only screen and (max-width: 1024px) {
  #header #logo {
    height: 60px;
    top: 20px;
  }
}
@media (max-width: 767px) {
  #header #logo {
    height: 40px;
    top: 12px;
  }
}
#header #logo img {
  display: block;
  height: 100%;
}
#header .viewport {
  background-color: #fff1e7;
  height: 160px;
  transition: all 500ms cubic-bezier(0.8, 0, 0.2, 0.9);
  transform: rotateY(0) translateX(0);
  backface-visibility: hidden;
}
@media (max-width: 767px) {
  #header .viewport {
    height: 95px;
  }
}
.viewport-disabled #header .viewport {
  cursor: pointer;
}
.viewport-moved-to-left #header .viewport {
  transform: rotateY(35deg) translateX(-250px);
}
.no-csstransforms3d.viewport-moved-to-left #header .viewport {
  right: 333px;
}
.viewport-moved-to-right #header .viewport {
  transform: rotateY(-35deg) translateX(250px);
}
@media (max-width: 767px) {
  .viewport-moved-to-right #header .viewport {
    transform: rotateY(-35deg) translateX(283px);
  }
}
.no-csstransforms3d.viewport-moved-to-right #header .viewport {
  left: 333px;
}
#header > .overlay {
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
  z-index: 50;
}
.viewport-disabled #header > .overlay {
  display: block;
}

#main-navigation-trigger {
  background: none;
  color: #58585a;
  font: 700 17px/66px "Gotham", sans-serif;
  height: 66px;
  padding: 0 0 0 77px;
  position: absolute;
  left: 7px;
  top: 27px;
  line-height: 66px;
  text-transform: uppercase;
  transition: color 350ms ease-in-out;
  z-index: 25;
}
@media only screen and (max-width: 1024px) {
  #main-navigation-trigger {
    left: 20px;
    top: 15px;
  }
}
#main-navigation-trigger:hover:before {
  display: block;
  opacity: 0;
  height: 80px;
  margin: -43px 0 0 -10px;
  width: 80px;
  transition: all 250ms linear;
}
#main-navigation-trigger:after {
  background: url("../images/sprite.svg") 0 -120px no-repeat;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 66px;
  height: 66px;
}
.no-svg #main-navigation-trigger:after {
  background-image: url("../images/sprite.png");
}
@media (max-width: 767px) {
  #main-navigation-trigger {
    height: 33px;
    line-height: 33px;
    overflow: hidden;
    text-indent: -1000em;
    top: 15px;
    width: 33px;
  }
  #main-navigation-trigger:after {
    background-size: 189px 303px;
    background-position: 0 -64px;
    height: 33px;
    width: 33px;
  }
  #main-navigation-trigger:before {
    display: none !important;
  }
}
#main-navigation-trigger:before {
  border: 3px solid #fcdcd8;
  content: "";
  display: block;
  height: 60px;
  width: 60px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -33px;
  border-radius: 50%;
}
.no-svg #main-navigation-trigger:before {
  display: none;
}

#header-bar {
  border-bottom: thin solid #bcbec0;
  height: 39px;
  font: 400 12px "Gotham", sans-serif;
  line-height: 39px;
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  #header-bar {
    height: auto;
    line-height: 30px;
  }
}
#header-bar .left-side {
  position: absolute;
  top: 0;
  left: 200px;
  right: 200px;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 1300px) {
  #header-bar .left-side {
    font-size: 10px;
  }
}
@media (max-width: 1100px) {
  #header-bar .left-side {
    font-size: 9px;
  }
}
@media only screen and (max-width: 1024px) {
  #header-bar .left-side {
    position: relative;
    left: auto;
    right: auto;
    padding: 0 20px;
  }
}
@media (max-width: 767px) {
  #header-bar .left-side {
    display: none;
  }
}
#header-bar .right-side {
  float: right;
}
@media only screen and (max-width: 1024px) {
  #header-bar .right-side {
    float: none;
    margin: 0;
  }
}

#languages {
  position: absolute;
  left: 20px;
}
@media only screen and (max-width: 1024px) {
  #languages {
    position: relative;
  }
}
#languages li {
  color: #58585a;
  float: left;
  text-transform: uppercase;
}
#languages li:before {
  content: "|";
  margin: 0 3px 0 5px;
}
#languages li:first-child:before {
  display: none;
}
#languages li a {
  color: #58585a;
  text-decoration: none;
  font-weight: 400;
  transition: 350ms ease-in-out;
}
#languages li a:hover, #languages li a.active {
  color: #58585a;
  font-weight: 700;
}

.socials li {
  float: left;
}
.socials a {
  background: #bcbdbc url("../images/sprite.svg") -110px -320px no-repeat;
  display: block;
  height: 20px;
  width: 20px;
  overflow: hidden;
  text-indent: -1000em;
  transition: background-color 250ms linear;
}
.socials a:hover {
  background-color: #58585a;
}
.no-svg .socials a {
  background-image: url("../images/sprite.png");
}
.socials a.twitter {
  background-position: -130px -320px;
}
.socials a.googleplus {
  background-position: -150px -320px;
}
.socials a.youtube {
  background-position: -170px -320px;
}
.socials a.pinterest {
  background-position: -190px -320px;
}
.socials a.flickr {
  background-position: -210px -320px;
}
.socials a.instagram {
  background-position: -234px -320px;
}

#header .socials {
  position: absolute;
  top: -30px;
  right: 20px;
  display: flex;
  gap: 5px;
}
@media only screen and (max-width: 1024px) {
  #header .socials {
    top: -25px;
    right: 20px;
  }
}

#local-weather {
  height: 50px;
  position: absolute;
  right: 20px;
  top: 30px;
}
@media only screen and (max-width: 1024px) {
  #local-weather {
    right: 20px;
    top: 20px;
  }
}
@media (max-width: 767px) {
  #local-weather {
    height: 25px;
    top: 17px;
  }
}

.weather {
  padding-left: 60px;
}
@media (max-width: 767px) {
  .weather {
    padding-left: 35px;
  }
}
.weather sup {
  font-size: 16px;
  line-height: 40px;
  vertical-align: top;
}
@media (max-width: 767px) {
  .weather sup {
    font-size: 10px;
    line-height: 20px;
  }
}
.weather .temp {
  font: 300 36px/50px "Open Sans WS", Arial, sans-serif;
}
@media (max-width: 767px) {
  .weather .temp {
    font-size: 20px;
    line-height: 25px;
  }
}
.weather .ic {
  background: url(../images/weather-sprite.png) no-repeat 0 100px;
  background-image: url(../images/weather-sprite.svg), none;
  background-color: #b5b5b5;
  display: block;
  position: absolute;
  height: 50px;
  left: 0;
  top: 50%;
  margin-top: -25px;
  width: 50px;
}
@media (max-width: 767px) {
  .weather .ic {
    background-size: 25px 600px;
    height: 25px;
    top: 0;
    margin: 0;
    width: 25px;
  }
}
.weather .w3200,
.weather .w32,
.weather .w36 {
  background-position: 0 0 !important;
}
.weather .w28,
.weather .w30,
.weather .w34 {
  background-position: 0 -50px !important;
}
.weather .w26,
.weather .w44 {
  background-position: 0 -400px !important;
}
.weather .w19,
.weather .w20,
.weather .w21,
.weather .w22,
.weather .w24 {
  background-position: 0 -450px !important;
}
.weather .w5,
.weather .w6,
.weather .w7,
.weather .w18 {
  background-position: 0 -500px !important;
}
.weather .w8,
.weather .w9,
.weather .w11 {
  background-position: 0 -550px !important;
}
.weather .w0,
.weather .w1,
.weather .w2,
.weather .w3,
.weather .w4,
.weather .w17,
.weather .w23,
.weather .w35,
.weather .w37,
.weather .w38 {
  background-position: 0 -600px !important;
}
.weather .w39 {
  background-position: 0 -650px !important;
}
.weather .w13,
.weather .w14,
.weather .w15,
.weather .w16,
.weather .w25,
.weather .w41,
.weather .w42,
.weather .w43,
.weather .w46 {
  background-position: 0 -700px !important;
}
.weather .w10,
.weather .w12,
.weather .w40 {
  background-position: 0 -750px !important;
}
.weather .w31 {
  background-position: 0 -800px !important;
}
.weather .w27,
.weather .w29,
.weather .w33 {
  background-position: 0 -850px !important;
}
.weather .w45,
.weather .w47 {
  background-position: 0 -900px !important;
}
@media (max-width: 767px) {
  .weather .w28,
  .weather .w30,
  .weather .w34 {
    background-position: 0 -25px !important;
  }
  .weather .w26,
  .weather .w44 {
    background-position: 0 -200px !important;
  }
  .weather .w19,
  .weather .w20,
  .weather .w21,
  .weather .w22,
  .weather .w24 {
    background-position: 0 -225px !important;
  }
  .weather .w5,
  .weather .w6,
  .weather .w7,
  .weather .w18 {
    background-position: 0 -250px !important;
  }
  .weather .w8,
  .weather .w9,
  .weather .w11 {
    background-position: 0 -275px !important;
  }
  .weather .w0,
  .weather .w1,
  .weather .w2,
  .weather .w3,
  .weather .w4,
  .weather .w17,
  .weather .w23,
  .weather .w35,
  .weather .w37,
  .weather .w38 {
    background-position: 0 -300px !important;
  }
  .weather .w39 {
    background-position: 0 -325px !important;
  }
  .weather .w13,
  .weather .w14,
  .weather .w15,
  .weather .w16,
  .weather .w25,
  .weather .w41,
  .weather .w42,
  .weather .w43,
  .weather .w46 {
    background-position: 0 -350px !important;
  }
  .weather .w10,
  .weather .w12,
  .weather .w40 {
    background-position: 0 -375px !important;
  }
  .weather .w31 {
    background-position: 0 -400px !important;
  }
  .weather .w27,
  .weather .w29,
  .weather .w33 {
    background-position: 0 -425px !important;
  }
  .weather .w45,
  .weather .w47 {
    background-position: 0 -450px !important;
  }
}

#booking {
  background: #fcdcd8;
  width: 300px;
  left: 100px;
  padding: 30px 16px;
  position: absolute;
  text-align: center;
  top: 325px;
  border: 12px solid #fff1e7;
  box-sizing: border-box;
  z-index: 20;
}
@media only screen and (max-width: 1024px) {
  #booking {
    left: 30px;
  }
}
#booking h3, #booking .h3-like {
  color: #58585a;
  font: 700 17px "Gotham", sans-serif;
  margin-bottom: 16px;
  text-transform: uppercase;
}
#booking p {
  margin-bottom: 15px;
}
#booking p:after {
  clear: both;
  content: "";
  display: table;
}
#booking p.date {
  position: relative;
}
#booking p.column {
  float: left;
  width: calc(50% - 5px);
}
#booking p.promo {
  position: relative;
  float: right;
}
#booking p.controls {
  clear: both;
  margin-bottom: 0;
}
#booking label {
  display: none;
}
#booking label.placeholder {
  color: #58585a;
  display: block;
  font: 500 11px/30px "Gotham", sans-serif;
  position: absolute;
  top: 0;
  left: 10px;
  text-align: left;
  text-transform: uppercase;
  width: 100%;
}
#booking input[type=text],
#booking select {
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAIElEQVQ4T2P8////GQYKAOOoAQyjYcAwGgbAPDQM0gEAUF48oSnkrSAAAAAASUVORK5CYII=);
  background: #fff;
  border: 0;
  color: #58585a;
  height: 30px;
  font: 500 11px/30px "Gotham", sans-serif;
  padding: 0 10px;
  text-transform: uppercase;
  width: 100%;
  box-sizing: border-box;
}
#booking button {
  background-color: #58585a;
  color: #fcdcd8;
  display: block;
  font: 700 14px/34px "Gotham", sans-serif;
  text-transform: uppercase;
  width: 100%;
}
#booking button:hover {
  background-color: #2e2e2f;
}
#booking button + a {
  color: #58585a;
  font: 500 11px/30px "Gotham", sans-serif;
  text-transform: uppercase;
  text-decoration: none;
  margin-top: 10px;
}
#booking button + a:hover {
  color: #2e2e2f;
}
.horizontal #booking button + a {
  display: none;
}
#booking .datepick-inline {
  background-color: #fff;
  position: absolute;
  left: 100%;
  top: 0;
  z-index: 1;
}
.horizontal #booking {
  background: #fcdcd8;
  border: 0;
  height: 70px;
  font-size: 0;
  position: absolute;
  top: 120px;
  left: 0;
  padding: 10px 0;
  border-radius: 0;
  text-align: left;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}
.horizontal #booking:after {
  clear: both;
  content: "";
  display: table;
}
.horizontal #booking h3, .horizontal #booking .h3-like {
  line-height: 30px;
  margin: 0;
  margin-right: 28px;
  vertical-align: middle;
}
.horizontal #booking .datepick-inline {
  left: 0;
  top: 40px;
}
.horizontal #booking form {
  white-space: nowrap;
}
.horizontal #booking p {
  display: inline-block !important;
  float: none;
  margin-right: 10px;
  margin-bottom: 0;
  padding-top: 0;
  vertical-align: middle;
  width: 17%;
}
.horizontal #booking p.promo {
  position: relative;
  width: 128px;
}
.horizontal #booking p.group {
  width: 122px;
}
.horizontal #booking p.controls {
  clear: none;
  margin-right: 0;
  padding-top: 0;
  width: 30%;
}
@media screen and (max-width: 1200px) {
  .horizontal #booking p.controls {
    width: auto;
    padding: 10px 0;
  }
}
.horizontal #booking p.controls button {
  display: inline-block !important;
  width: auto !important;
  height: 30px !important;
  font-size: 12px !important;
  line-height: 30px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 1200px) {
  .horizontal #booking p.controls button {
    font-size: 16px;
    float: none;
    line-height: 30px;
    padding: 0 10px;
    margin-bottom: 0;
  }
}
.horizontal #booking p.controls button + a {
  line-height: 50px;
  padding: 0 10px;
}
@media screen and (max-width: 1320px) {
  .horizontal #booking p.controls button + a {
    line-height: 1.45;
    margin-top: 10px;
    width: 70px;
  }
}
@media screen and (max-width: 1200px) {
  .horizontal #booking p.controls button + a {
    line-height: 20px;
    font-size: 10px;
    margin-top: 0;
    width: auto;
    white-space: nowrap;
  }
}
@media only screen and (max-width: 1024px) {
  #booking {
    background: #fcdcd8;
    height: 70px !important;
    font-size: 0 !important;
    position: absolute !important;
    top: 99px !important;
    left: 0 !important;
    padding: 5px 20px !important;
    border-radius: 0 !important;
    text-align: center !important;
    width: 100% !important;
    border: 0;
  }
  #booking form {
    display: inline-block !important;
  }
  #booking h3 {
    display: none !important;
  }
  #booking .datepick-inline {
    left: 0 !important;
    top: 40px !important;
  }
  #booking .dp-choose-date {
    top: 20px !important;
  }
  #booking p {
    display: inline-block !important;
    float: none !important;
    margin-right: 10px !important;
    padding-top: 10px !important;
    min-width: 100px;
    vertical-align: top !important;
    width: 16% !important;
  }
  #booking p.promo {
    position: relative;
    width: 128px;
  }
  #booking p.group {
    width: 122px;
  }
  #booking p.controls {
    clear: none;
    margin-right: 0;
    padding-top: 0;
    width: 21% !important;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1200px) {
  #booking p.controls {
    width: auto;
    padding: 10px 0;
  }
}
@media only screen and (max-width: 1024px) {
  #booking p.controls button {
    float: left;
    width: auto;
    height: 30px;
    font-size: 12px;
    line-height: 30px;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1200px) {
  #booking p.controls button {
    float: none;
    padding: 0 10px;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 1024px) {
  #booking p.controls button + a {
    line-height: 50px;
    font-size: 9px;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1320px) {
  #booking p.controls button + a {
    line-height: 1.45;
    margin-top: 10px;
    width: 70px;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1200px) {
  #booking p.controls button + a {
    line-height: 20px;
    margin-top: 0;
    width: auto;
  }
}
@media (max-width: 767px) {
  #booking {
    box-sizing: border-box !important;
    display: block !important;
    height: 36px !important;
    top: 64px !important;
    width: 100% !important;
    padding: 0 !important;
  }
  #booking h3 {
    display: block !important;
    float: none !important;
    margin: 0 !important;
    text-align: center !important;
    line-height: 36px !important;
    padding: 0 20px !important;
    cursor: pointer;
    white-space: nowrap !important;
  }
}
@media screen and (max-width: 767px) and (max-width: 400px) {
  #booking h3 {
    font-size: 14px !important;
  }
}
@media (max-width: 767px) {
  #booking form {
    display: none !important;
  }
  #booking form.expanded {
    display: block !important;
    background: #fcdcd8 !important;
    padding: 20px !important;
  }
  #booking p {
    display: block !important;
    float: none !important;
    width: 100% !important;
  }
  #booking p.column {
    float: left !important;
    width: calc(50% - 5px) !important;
    margin-right: 5px !important;
  }
  #booking p.column + .column {
    margin: 0 0 15px 5px !important;
  }
  #booking p.controls {
    clear: both;
    margin: 0 !important;
    width: 100% !important;
    padding-bottom: 0 !important;
  }
  #booking p.controls button {
    width: 100%;
  }
}

/* BOOKING DATEPICKER MAIN CSS */
#booking-datepicker {
  display: none;
  max-height: 0;
  overflow: hidden;
  position: absolute;
  left: 221px;
  top: 57px;
  width: 575px;
  transition: max-height 200ms;
}
#booking-datepicker #start-end {
  background: #fff;
  text-align: center;
  line-height: 35px;
  height: 35px;
  text-transform: uppercase;
  font-size: 14px;
}
#booking-datepicker #start-end span {
  display: inline-block;
  width: 100%;
  transition: all 200ms;
}
#booking-datepicker #start-end .start {
  margin-left: -100%;
  opacity: 0;
}
#booking-datepicker #start-end .start.show {
  margin-left: 0;
  opacity: 1;
}
#booking-datepicker #start-end .end {
  margin-right: -100%;
  opacity: 0;
}
#booking-datepicker #start-end .end.show {
  margin-right: 0;
  opacity: 1;
}
#booking-datepicker.visible {
  max-height: 341px;
  display: block;
}
#booking-datepicker .ui-datepicker {
  width: 100% !important;
  padding: 0;
}
#booking-datepicker .ui-datepicker-group {
  width: 238px;
  float: left;
  padding: 24px;
}
#booking-datepicker .ui-datepicker-header {
  font-size: 16px;
  margin-bottom: 15px;
}
#booking-datepicker .ui-datepicker-header .ui-datepicker-prev {
  left: 9px;
}
#booking-datepicker .ui-datepicker-header .ui-datepicker-next {
  right: 9px;
}
#booking-datepicker .ui-datepicker-calendar {
  font-size: 14px;
}
#booking-datepicker .ui-datepicker-calendar th, #booking-datepicker .ui-datepicker-calendar td {
  width: 34px;
  height: 32px;
  line-height: 32px;
}
#booking-datepicker .ui-datepicker-calendar a {
  width: 24px;
  height: 22px;
  line-height: 22px;
}

/* PHOTOS */
#photos .slideshow {
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 10;
}

#photos {
  background-color: #fff;
  height: 720px;
  overflow: hidden;
  position: relative;
  z-index: 10;
}
#photos a:active {
  transform: none;
}
@media only screen and (max-width: 1024px) {
  #photos {
    border-radius: 0;
    height: 604px;
  }
}
@media (max-width: 767px) {
  #photos {
    height: calc(100vh - 95px);
  }
}
#photos .slideshow {
  border-radius: 5px;
  z-index: 10;
}
.no-bgsizecover #photos .slideshow img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
}
#photos .slideshow .photo {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
#photos .slideshow .photo .image {
  z-index: 1;
}
.no-bgsizecover #photos .slideshow .photo .image {
  background: none !important;
}
#photos .slideshow .photo.slick-current .image {
  transform: scale(1.1);
}
#photos .slideshow .photo .caption {
  position: absolute;
  right: 100px;
  text-align: right;
  height: 100%;
  width: 50%;
  z-index: 10;
}
@media (max-width: 767px) {
  #photos .slideshow .photo .caption {
    left: 100px;
    width: calc(100% - 200px);
    text-align: center;
  }
}
#photos .slideshow .photo .caption.cyber {
  position: relative;
  margin: 0 auto;
  text-align: center;
  right: 0;
}
#photos .slideshow .photo .caption.cyber .wrapper {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  padding: 20px 0;
  font-size: 34px;
  margin-top: -100px;
  font: 700 34px/62px "Gotham", sans-serif;
}
@keyframes rotating {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
#photos .slideshow .photo .caption.cyber .wrapper:after {
  content: "";
  background: url(../images/snowflake.png) 50% 0 no-repeat;
  position: absolute;
  width: 280px;
  height: 314px;
  top: 0;
  left: 50%;
  margin-left: -140px;
  z-index: -1;
  animation: rotating 50s linear infinite;
}
#photos .slideshow .photo .caption.cyber span {
  font: 400 90px/1 "Vendetta", serif;
  text-transform: none;
  margin-top: -20px;
  display: inline-block;
}
@media (max-width: 767px) {
  #photos .slideshow .photo .caption.cyber span {
    font-size: 32px;
  }
}
#photos .slideshow .photo .caption.cyber a {
  font: 700 22px/42px "Gotham", sans-serif;
  color: #fff;
  width: auto;
  padding: 0 20px;
  border-radius: 0;
  margin-top: 30px;
}
#photos .slideshow .photo .caption.marketing-promo {
  width: 755px;
  left: 460px;
  right: initial;
  text-align: center;
  display: table;
}
@media only screen and (max-width: 1024px) {
  #photos .slideshow .photo .caption.marketing-promo {
    left: 360px;
    width: 565px;
  }
}
#photos .slideshow .photo .caption.marketing-promo .wrapper {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  font: 700 59px/1 "Gotham", sans-serif;
}
@media only screen and (max-width: 1024px) {
  #photos .slideshow .photo .caption.marketing-promo .wrapper {
    font-size: 46px;
  }
}
#photos .slideshow .photo .caption.marketing-promo strong {
  display: block;
  border-top: 3px solid #37424a;
  text-transform: none;
  font-size: 39px;
  font: 700 39px/1 "Gotham", sans-serif;
  padding-top: 15px;
  margin-top: 15px;
}
@media only screen and (max-width: 1024px) {
  #photos .slideshow .photo .caption.marketing-promo strong {
    font-size: 30px;
  }
}
#photos .slideshow .photo .caption.marketing-promo a {
  color: #37424a !important;
  position: relative;
}
#photos .slideshow .photo .caption.marketing-promo a:after {
  content: "Enter Today";
  width: 175px;
  height: 40px;
  line-height: 40px;
  position: absolute;
  text-align: center;
  bottom: -60px;
  background-color: #7aa3d8;
  left: 50%;
  margin-left: -87px;
  color: #fff;
  font-size: 22px;
  font-weight: 400;
}
.csstransforms #photos .slideshow .photo .caption {
  perspective: 2000px;
}
.csstransforms #photos .slideshow .photo .caption .wrapper {
  transform: translate3d(0, 0, 0) translateY(-50%);
}
#photos .slideshow .photo .caption .wrapper {
  display: inline-block;
  color: #fff1e7;
  font: 700 62px/1 "Gotham", sans-serif;
  text-transform: uppercase;
  width: 100%;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  #photos .slideshow .photo .caption .wrapper {
    font-size: 30px;
  }
}
#photos .slideshow .photo .caption em {
  display: block;
  font-size: 24px;
  margin-top: 10px;
}
#photos .slideshow .photo .caption a {
  color: inherit;
  text-decoration: none;
}
#photos .slick-arrows-container .slick-arrow {
  background: url("../images/sprite.svg") -2px -202px no-repeat;
  border: 2px solid #fff;
  box-sizing: content-box;
  padding: 0;
  position: absolute;
  top: 50%;
  left: 25px;
  margin-top: -25px;
  height: 46px;
  width: 46px;
  z-index: 20;
  text-indent: -9999px;
  transform: translate3d(0, 0, 0);
  transition: border-color 250ms;
  border-radius: 50%;
}
#photos .slick-arrows-container .slick-arrow:hover {
  background-position: -62px -202px;
  border-color: #fcdcd8;
}
@media only screen and (max-width: 1024px) {
  #photos .slick-arrows-container .slick-arrow {
    display: none;
  }
}
.no-svg #photos .slick-arrows-container .slick-arrow {
  background-image: url("../images/sprite.png");
  border: 0;
}
#photos .slick-arrows-container .slick-next {
  background-position: -122px -202px;
  left: auto;
  right: 25px;
}
#photos .slick-arrows-container .slick-next:hover {
  background-position: -182px -202px;
}

.slick-dots-container {
  position: absolute;
  bottom: 30px;
  text-align: center;
  z-index: 10;
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  .slick-dots-container {
    bottom: 20px;
  }
}
.slick-dots-container li {
  display: inline-block;
  margin: 0 4px;
  padding-bottom: 5px;
}
.slick-dots-container li button {
  background: #fff1e7;
  border-radius: 50%;
  box-sizing: content-box;
  border: 0px solid #fff1e7;
  display: block;
  height: 16px;
  padding: 0;
  text-indent: -1000em;
  transition: border-width 250ms linear, width 250ms linear, height 250ms linear, background-color 250ms linear;
  width: 16px;
}
.slick-dots-container li button:hover {
  background-color: #58585a;
  border-width: 8px;
  height: 10px;
  width: 10px;
}
.slick-dots-container li.slick-active button {
  background-color: #58585a;
  border-width: 8px;
  height: 10px;
  width: 10px;
}

#topimage-nav {
  bottom: 30px;
  position: absolute;
  right: 30px;
  z-index: 30;
}
@media (max-width: 767px) {
  #topimage-nav {
    bottom: 70px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }
}
#topimage-nav li {
  float: left;
  margin-left: 20px;
}
@media (max-width: 767px) {
  #topimage-nav li {
    margin: 0 10px;
  }
}
#topimage-nav a {
  background: url("../images/sprite.svg") 0 -260px no-repeat;
  display: block;
  height: 50px;
  text-indent: -1000em;
  width: 50px;
}
#topimage-nav a:hover {
  background-position: -60px -260px;
}
.no-svg #topimage-nav a {
  background-image: url("../images/sprite.png");
}
#topimage-nav a.galleryid {
  background-position: -120px -260px;
}
#topimage-nav a.galleryid:hover {
  background-position: -180px -260px;
}

/* CONTENT AREA */
#page-content-wrapper {
  overflow: hidden;
  position: relative;
}
#page-content-wrapper .page-content {
  margin-top: 70px;
  margin-bottom: 100px;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  #page-content-wrapper .page-content {
    clear: both;
    margin-bottom: 40px;
  }
}
@media (max-width: 767px) {
  #page-content-wrapper .page-content {
    margin-top: 20px;
  }
}
.small-screen #page-content-wrapper .page-content {
  margin-bottom: 40px;
}
#page-content-wrapper #content {
  padding: 0 4vw;
  display: flex;
  flex-direction: row;
}
@media (max-width: 767px) {
  #page-content-wrapper #content {
    flex-direction: column;
    padding: 0 2vw;
  }
}
#page-content-wrapper #content .page-content-wrapper {
  flex-grow: 1;
}
.tile-list #page-content-wrapper #content {
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .tile-list #page-content-wrapper #content {
    margin-bottom: 20px;
  }
}
#page-content-wrapper .tile-list-wrapper {
  position: relative;
  padding: 0 4vw;
  margin: 0 auto;
  margin-top: 0 !important;
  margin-bottom: 100px;
  max-width: 1600px;
}
@media only screen and (max-width: 1024px) {
  #page-content-wrapper .tile-list-wrapper {
    margin-bottom: 40px;
  }
}

#upcoming-events article, #home-gallery article {
  display: block;
  clear: left;
}
#upcoming-events article:after, #home-gallery article:after {
  border-bottom: thin solid #bcbec0;
  content: "";
  display: block;
  margin: 10px auto;
  width: 200px;
}
#upcoming-events .wrapper, #home-gallery .wrapper {
  margin-left: 80px;
  text-align: left;
}
#upcoming-events h1, #home-gallery h1 {
  font: 700 18px "Gotham", sans-serif !important;
  margin-bottom: 10px !important;
  text-transform: none !important;
}
@media (max-width: 767px) {
  #upcoming-events h1, #home-gallery h1 {
    font-size: 14px;
  }
}
#upcoming-events h1 a, #home-gallery h1 a {
  text-decoration: none;
}
#upcoming-events .date, #home-gallery .date {
  color: #fcdcd8;
  float: left;
  font: 18px/1 "Gotham", sans-serif;
  text-transform: uppercase;
  text-decoration: none;
}
@media (max-width: 767px) {
  #upcoming-events .date, #home-gallery .date {
    font-size: 14px;
  }
}
#upcoming-events .date span, #home-gallery .date span {
  display: block;
}
#upcoming-events .date .day-nr, #home-gallery .date .day-nr {
  font-size: 48px;
  border-bottom: thin solid #bcbec0;
  color: #58585a;
  line-height: 1;
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  #upcoming-events .date .day-nr, #home-gallery .date .day-nr {
    font-size: 24px;
    margin-bottom: 5px;
  }
}
#upcoming-events .date .year, #home-gallery .date .year {
  font-size: 14px;
  margin-top: 10px;
}
@media (max-width: 767px) {
  #upcoming-events .date .year, #home-gallery .date .year {
    font-size: 10px;
    margin-top: 5px;
  }
}
#upcoming-events p, #home-gallery p {
  margin-bottom: 10px !important;
}
#upcoming-events a.read-more, #home-gallery a.read-more {
  background: none;
  color: #58585a;
  font-size: 14px;
  text-align: left;
  padding: 0;
  transition: color 250ms linear;
}
#upcoming-events a.read-more:hover, #home-gallery a.read-more:hover {
  background: none;
  color: #2e2e2f;
}
#upcoming-events > .button, .page-content #categories-list li #upcoming-events > a, .page-content .special nav #upcoming-events > a, #rooms .page-content .nav li #upcoming-events > a, #home-gallery > .button, .page-content #categories-list li #home-gallery > a, .page-content .special nav #home-gallery > a, #rooms .page-content .nav li #home-gallery > a, #upcoming-events > a.read-more, #home-gallery > a.read-more {
  margin-top: 20px;
}

#home-gallery h3:after {
  display: none;
}
#home-gallery .button, #home-gallery .page-content #categories-list li a, .page-content #categories-list li #home-gallery a, #home-gallery .page-content .special nav a, .page-content .special nav #home-gallery a, #home-gallery #rooms .page-content .nav li a, #rooms .page-content .nav li #home-gallery a, #home-gallery a.read-more {
  margin-top: 0;
  margin-bottom: 40px;
}
#home-gallery img {
  display: block;
}
#home-gallery .gal-wrapper {
  padding-bottom: 15px;
  margin-bottom: 20px;
}
#home-gallery article:after {
  border: 0;
  display: none;
}
#home-gallery .gallery {
  width: 100%;
}

#page-content-wrapper .sidebar {
  flex-shrink: 0;
  text-align: center;
  padding: 70px 25px 100px 45px;
  width: 30%;
  box-sizing: border-box;
}
@media screen and (max-width: 1300px) {
  #page-content-wrapper .sidebar {
    width: 33%;
  }
}
@media only screen and (max-width: 1024px) {
  #page-content-wrapper .sidebar {
    padding-bottom: 40px;
    padding-left: 20px;
    width: 40%;
  }
}
@media (max-width: 767px) {
  #page-content-wrapper .sidebar {
    padding: 0 20px 20px;
    width: 100%;
  }
  .cms-section-home #page-content-wrapper .sidebar {
    display: block;
  }
}
.tile-list #page-content-wrapper .sidebar {
  padding-bottom: 0;
}
#page-content-wrapper .right-sidebar {
  padding-right: 0;
  padding-left: 1vw;
}
#page-content-wrapper .right-sidebar .right-sidebar-border {
  border: 12px solid #fcdcd8;
  padding: 30px 27px;
}
#page-content-wrapper .right-sidebar .right-sidebar-border h3 {
  font: 700 17px "Gotham", sans-serif;
  text-transform: uppercase;
  padding-bottom: 20px;
  border-bottom: thin solid #bcbec0;
  margin-bottom: 18px;
}
.small-screen #page-content-wrapper .sidebar {
  padding-top: 0;
}
#page-content-wrapper .block h3 {
  color: #58585a;
  font: 700 17px "Gotham", sans-serif;
  text-transform: uppercase;
  margin-bottom: 10px;
}

#submenu {
  margin-bottom: 46px;
}
#submenu h3 {
  margin-bottom: 18px;
}
#submenu h3 a {
  font-weight: 700 !important;
  display: block;
  text-decoration: none;
  color: #58585a;
}
#submenu h3 a:hover {
  color: #2e2e2f;
}
#submenu > ul {
  margin: 0 auto !important;
  padding: 0 14%;
  text-align: left;
}
#submenu > ul a {
  position: relative;
  color: #58585a;
  display: inline-block;
  font: 400 12px "Gotham", sans-serif;
  padding: 3px 10px 3px 0;
  text-align: left;
  text-decoration: none;
}
#submenu > ul a:after {
  content: "";
  position: absolute;
  width: 4px;
  height: 4px;
  border: thin solid #bcbec0;
  border-bottom: 0;
  border-left: 0;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(45deg);
}
#submenu > ul a:hover, #submenu > ul a.active {
  color: #2e2e2f;
  text-decoration: underline;
}
#submenu > ul li:after {
  top: 14px !important;
}

#stayconnected {
  font: 300 20px "Vendetta", serif;
}
#stayconnected form {
  margin-top: 25px;
  position: relative;
}
#stayconnected input[type=text] {
  background: #fff;
  border: 1px solid #bcbec0;
  color: #58585a;
  height: 30px;
  display: block;
  font: 500 11px "Gotham", sans-serif;
  line-height: 30px;
  margin: 0 auto 20px;
  padding: 0 11px;
  position: relative;
  text-align: center;
  width: 100%;
  border-radius: 1px;
  box-sizing: border-box;
}
#stayconnected label {
  display: none;
}
#stayconnected label.placeholder {
  color: #58585a;
  display: block;
  font: 500 11px "Gotham", sans-serif;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}

#social-blocks {
  clear: both;
  overflow: hidden;
}

.feeds {
  clear: both;
  display: flex;
  min-height: 110px;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1024px) {
  .feeds {
    flex-wrap: wrap;
  }
}

#tripadvisor, #twitter-feed, #facebook-feed {
  background-color: #58585a;
  color: #fff;
  position: relative;
  padding-left: 25%;
  width: 50%;
  box-sizing: border-box;
  overflow: hidden;
}
@media screen and (max-width: 1300px) {
  #tripadvisor, #twitter-feed, #facebook-feed {
    padding-left: calc(50% - 260px);
  }
}
@media screen and (max-width: 1180px) {
  #tripadvisor, #twitter-feed, #facebook-feed {
    padding-left: calc(50% - 180px);
  }
}
@media only screen and (max-width: 1024px) {
  #tripadvisor, #twitter-feed, #facebook-feed {
    padding-left: 50%;
    margin-bottom: 0;
    width: 100%;
    min-height: 110px;
  }
}
#tripadvisor:after, #twitter-feed:after, #facebook-feed:after {
  background: url("../images/sprite.svg") 0 -379px no-repeat;
  content: "";
  display: block;
  height: 50px;
  width: 300px;
  position: absolute;
  left: 2%;
  top: 50%;
  margin-top: -25px;
}
.no-svg #tripadvisor:after, .no-svg #twitter-feed:after, .no-svg #facebook-feed:after {
  background-image: url("../images/sprite.png");
}
@media (max-width: 767px) {
  #tripadvisor:after, #twitter-feed:after, #facebook-feed:after {
    background-size: 189px 303px;
    background-position: 0 -186px;
    height: 25px;
    width: 150px;
    margin-top: -12px;
  }
}
#tripadvisor:before, #twitter-feed:before, #facebook-feed:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em; /* Adjusts for spacing */
}
#tripadvisor p, #twitter-feed p, #facebook-feed p {
  display: inline-block;
  font: 700 italic 13px/1.5 "Gotham", sans-serif;
  margin: 0 !important;
  vertical-align: middle;
  width: 90%;
}
#tripadvisor p a, #twitter-feed p a, #facebook-feed p a {
  color: #fff !important;
  font-weight: 700;
}
#tripadvisor p a:hover, #twitter-feed p a:hover, #facebook-feed p a:hover {
  text-decoration: none;
}

#twitter-feed, #facebook-feed {
  background-color: #38a8df;
  color: #fff;
  clear: none;
  padding-left: 80px;
  padding-top: 20px;
  padding-bottom: 20px;
  width: 25%;
  word-break: break-word;
}
@media only screen and (max-width: 1024px) {
  #twitter-feed, #facebook-feed {
    width: 50%;
  }
}
@media (max-width: 767px) {
  #twitter-feed, #facebook-feed {
    padding-left: 50px;
  }
}
#twitter-feed:after, #facebook-feed:after {
  background-position: 0 -320px;
  height: 45px;
  left: 18px;
  margin-top: -22px;
  width: 45px;
}
@media (max-width: 767px) {
  #twitter-feed:after, #facebook-feed:after {
    background-position: 0 -160px;
    height: 22px;
    margin-top: -11px;
    width: 22px;
  }
}
#twitter-feed p, #facebook-feed p {
  font: 300 12px "Gotham", sans-serif;
}
#twitter-feed a, #facebook-feed a {
  color: #fff !important;
  font-weight: 400 !important;
}
#twitter-feed a:hover, #facebook-feed a:hover {
  text-decoration: none;
}
#twitter-feed .tweet_list, #facebook-feed .tweet_list {
  margin: 0;
}
#twitter-feed .tweet_list li, #facebook-feed .tweet_list li {
  padding-left: 0;
}
#twitter-feed .tweet_list li:after, #facebook-feed .tweet_list li:after {
  display: none;
}

#facebook-feed {
  background-color: #3b5a97;
}
#facebook-feed:after {
  background-position: -50px -320px;
}
@media (max-width: 767px) {
  #facebook-feed:after {
    background-position: -25px -160px;
  }
}

#rooms {
  background-color: #fff1e7;
  text-align: center;
  position: relative;
  padding-bottom: 100px;
}
@media only screen and (max-width: 1024px) {
  #rooms {
    padding-bottom: 40px;
  }
}
#rooms > .center-column {
  padding: 0 4vw;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  #rooms > .center-column {
    padding: 0 2vw;
  }
}
#rooms article {
  height: 400px;
  overflow: hidden;
  padding: 20px 0;
}
@media (max-width: 767px) {
  #rooms article {
    height: auto;
  }
}
#rooms article + article {
  border-top: thin solid #bcbec0;
}
#rooms h1, #rooms p {
  margin-bottom: 15px !important;
}
#rooms h1 {
  color: #fff1e7;
  font: 700 17px/1 "Gotham", sans-serif;
  text-transform: uppercase;
  text-decoration: none;
}
@media (max-width: 767px) {
  #rooms h1 {
    color: #58585a;
  }
}
#rooms .page-content {
  background: #58585a;
  color: #fff1e7;
  height: 400px;
  margin: 0 !important;
  padding: 30px;
  position: absolute;
  left: 0;
  width: 30%;
  z-index: 10;
  box-sizing: border-box;
}
@media only screen and (max-width: 1024px) {
  #rooms .page-content {
    width: 40%;
  }
}
@media (max-width: 767px) {
  #rooms .page-content {
    background: none;
    height: auto;
    padding: 0 20px 20px 20px;
    position: relative;
    width: 100%;
    color: #58585a;
  }
}
#rooms .page-content .centered {
  position: relative;
  margin-top: -10px;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  #rooms .page-content .centered {
    margin-top: 0;
    top: auto;
    transform: translateY(0);
  }
}
#rooms .page-content .nav {
  margin: 10px 0;
  font-size: 0;
}
@media (max-width: 767px) {
  #rooms .page-content .nav {
    margin-bottom: 0;
  }
}
#rooms .page-content .nav li {
  display: inline-block;
  margin: 0;
}
#rooms .page-content .nav li a {
  background: #fcdcd8;
  color: #58585a;
  margin: 5px 0;
}
#rooms .page-content .nav li a:hover {
  background: #fff1e7;
  color: #58585a;
}
@media (max-width: 767px) {
  #rooms .page-content .nav li a:hover {
    background: #58585a;
    color: #fcdcd8;
  }
}
#rooms .page-content .nav li + li {
  margin-left: 10px;
}
#rooms .odd .page-content {
  left: auto;
  right: 0;
}
#rooms .rooms-slideshow {
  height: 400px;
  overflow: hidden;
  position: relative;
  width: 100%;
}
@media (max-width: 767px) {
  #rooms .rooms-slideshow {
    height: 200px;
  }
}
#rooms .rooms-slideshow .slideshow {
  height: 100%;
}
#rooms .rooms-slideshow .slide {
  height: 100%;
}
#rooms .rooms-slideshow img {
  width: 100%;
}
#rooms .rooms-slideshow .price {
  color: #fff;
  font: 300 60px/1 "Open Sans WS", sans-serif;
  height: 60px;
  position: absolute;
  margin-top: -15px;
  right: 45px;
  top: 50%;
  text-shadow: 0 1px 0 #000;
  text-transform: uppercase;
  z-index: 30;
}
#rooms .odd .price {
  left: 45px;
  right: auto;
}

@media only screen and (max-width: 1024px) {
  #brands {
    text-align: center;
  }
}
#brands li {
  float: left;
  margin: 19px 10px;
}
@media only screen and (max-width: 1024px) {
  #brands li {
    display: inline-block;
    float: none;
  }
}
#brands a {
  background: url(../images/brands-sprite.png) 0 0 no-repeat;
  display: block;
  height: 91px;
  overflow: hidden;
  text-align: left;
  text-indent: -9999px;
  width: 155px;
}
#brands a.four_diamond {
  background-position: -176px 0;
  width: 127px;
}
#brands a.summit {
  background-position: -323px 0;
  width: 116px;
}

#footer {
  background-color: #fff1e7;
  border-top: 1px solid #bcbec0;
  padding-bottom: 40px;
  text-align: center;
}
#footer a {
  color: #58585a;
}
#footer a:hover, #footer a.active {
  text-decoration: underline;
}
#footer .contacts,
#footer .socials {
  display: none;
}
@media (max-width: 767px) {
  #footer .contacts,
  #footer .socials {
    display: block;
    font: 400 14px "Vendetta", serif;
    margin: 0 20px 20px;
    text-align: center;
  }
  #footer .contacts li,
  #footer .socials li {
    display: inline-block;
    float: none;
  }
}
@media only screen and (max-width: 1024px) {
  #footer .right-side #footer-logos {
    float: none;
    font-size: 0;
    margin: 0 auto;
    width: 100%;
  }
}
#footer .right-side #footer-logos ul li {
  margin: 0 10px;
  display: inline-block;
}
@media only screen and (max-width: 1024px) {
  #footer .right-side #footer-logos ul li {
    margin: 15px 5px 0;
    vertical-align: top;
  }
}
#footer .right-side #footer-logos ul li a {
  background: url("../images/sprite.png") 0 0 no-repeat;
  background-image: url("../images/sprite.svg"), none;
  display: block;
  overflow: hidden;
  text-indent: -9999px;
}
@media (max-width: 767px) {
  #footer .right-side #footer-logos ul li a {
    background-size: 189px 303px;
  }
}
#footer .right-side #footer-logos ul li .iprefer {
  background: url("../images/i_prefer_logo.png") no-repeat;
  background-size: contain;
  width: 133px;
  height: 53px;
  margin-top: 22px;
}
@media (max-width: 767px) {
  #footer .right-side #footer-logos ul li .iprefer {
    height: 27px;
    margin-top: 11px;
    width: 67px;
  }
}
#footer .right-side #footer-logos ul li .aaa-diamond {
  background-position: 0 -444px;
  width: 114px;
  height: 84px;
}
@media (max-width: 767px) {
  #footer .right-side #footer-logos ul li .aaa-diamond {
    background-position: 0 -218px;
    height: 42px;
    width: 57px;
  }
}
#footer .right-side #footer-logos ul li .preferredhotels {
  background-image: url(../images/pl_logo_smallblack.svg);
  width: 134px;
  height: 66px;
}
@media (max-width: 767px) {
  #footer .right-side #footer-logos ul li .preferredhotels {
    height: 39px;
    width: 67px;
    background-size: 67px 39px;
  }
}
#footer .hebs {
  font: 400 14px "Gotham", sans-serif;
}
#footer .hebs a {
  text-decoration: none;
}

#footer-navigation {
  margin-top: 15px;
  margin-bottom: 35px;
  padding: 0 20px;
}
@media (max-width: 767px) {
  #footer-navigation {
    margin-bottom: 30px;
    padding-top: 20px;
  }
}
#footer-navigation ul.menu {
  overflow: hidden;
}
#footer-navigation ul.menu li {
  display: inline-block;
  margin: 5px 6px;
}
@media only screen and (max-width: 1024px) {
  #footer-navigation ul.menu {
    text-align: center;
  }
  #footer-navigation ul.menu li {
    display: inline-block;
    float: none;
    margin: 0 5px;
  }
}
#footer-navigation ul.menu a {
  color: #58585a;
  display: block;
  font: 400 11px "Gotham", sans-serif;
  line-height: 1.2;
  font-weight: normal;
  text-transform: uppercase;
  text-decoration: none;
}
@media (max-width: 767px) {
  #footer-navigation ul.menu a {
    padding-top: 0;
  }
}
#footer-navigation ul.menu a:hover, #footer-navigation ul.menu a.active {
  text-decoration: underline;
}

#page-content-wrapper {
  background-color: #fff1e7;
  overflow: hidden;
  font-weight: 300;
}
@media only screen and (max-width: 1024px) {
  #page-content-wrapper .center-column {
    width: 100%;
  }
}
#page-content-wrapper a {
  font-weight: 400;
}
#page-content-wrapper .page-content-wrapper a {
  display: inline;
  text-decoration: none;
  border-bottom: thin solid #fcdcd8;
  transition: color 350ms ease-in-out, border-color 350ms ease-in-out;
}
#page-content-wrapper .page-content-wrapper a:hover {
  border-color: #2e2e2f;
}
#page-content-wrapper hr {
  display: block;
  border: none;
  color: #bcbec0;
  clear: both;
  background: #bcbec0;
  height: 1px;
  margin: 15px auto;
}
#page-content-wrapper h3, #page-content-wrapper h4, #page-content-wrapper h5, #page-content-wrapper h6 {
  font: 18px/1 "Gotham", sans-serif;
}
#page-content-wrapper h1 {
  color: #58585a;
  font: 700 30px "Gotham", sans-serif;
  line-height: 1.2;
  margin-bottom: 20px;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  #page-content-wrapper h1 {
    font-size: 27px;
  }
}
#page-content-wrapper h2 {
  color: #58585a;
  margin-bottom: 20px;
  font: 27px "Vendetta", serif;
}
@media (max-width: 767px) {
  #page-content-wrapper h2 {
    font-size: 24px;
  }
}
#page-content-wrapper h1 + h2 {
  margin-top: -15px;
}
#page-content-wrapper h3 {
  font: 700 17px "Gotham", sans-serif;
  color: #58585a;
  text-transform: uppercase;
  margin-bottom: 20px;
}
#page-content-wrapper h1 + h3 {
  margin-top: -11px;
}
#page-content-wrapper h4 {
  font-size: 17px;
  line-height: 20px;
}
#page-content-wrapper h5, #page-content-wrapper h6 {
  font-size: 15px;
  line-height: 18px;
}
#page-content-wrapper h6 {
  font-weight: normal;
}
#page-content-wrapper h4, #page-content-wrapper h5, #page-content-wrapper h6, #page-content-wrapper p, #page-content-wrapper ul, #page-content-wrapper ol, #page-content-wrapper table {
  margin-bottom: 20px;
}
#page-content-wrapper strong {
  font-weight: bold;
}
#page-content-wrapper em {
  font-style: italic;
}
#page-content-wrapper u {
  text-decoration: underline;
}
#page-content-wrapper sup, #page-content-wrapper sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
}
#page-content-wrapper sup {
  top: -0.5em;
}
#page-content-wrapper sub {
  bottom: -0.25em;
}
#page-content-wrapper p, #page-content-wrapper table {
  overflow: visible;
}
#page-content-wrapper ol {
  list-style: decimal inside;
}
#page-content-wrapper ul {
  list-style: none;
}
#page-content-wrapper ol, #page-content-wrapper ul {
  margin-left: 20px;
}
#page-content-wrapper ol ol, #page-content-wrapper ul ul, #page-content-wrapper ol ul, #page-content-wrapper ul ol {
  margin-top: 10px;
  margin-bottom: 10px;
}
#page-content-wrapper ol > li > ol, #page-content-wrapper ol > li > ul {
  margin-left: 34px;
}
#page-content-wrapper ol li, #page-content-wrapper ul li {
  position: relative;
}
#page-content-wrapper ul > li {
  padding-left: 14px;
}
#page-content-wrapper ul > li:after {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 4px;
  height: 4px;
  background: #bcbec0;
  border-radius: 50%;
}
#page-content-wrapper td, #page-content-wrapper th, #page-content-wrapper caption {
  background: rgba(88, 88, 90, 0.1);
  padding: 10px 15px;
  text-align: left;
  border-right: thin solid #fff1e7;
  border-bottom: thin solid #fff1e7;
  vertical-align: top;
}
#page-content-wrapper th, #page-content-wrapper caption {
  font: 700 13px "Gotham", sans-serif;
  text-transform: uppercase;
  vertical-align: bottom;
  background: none;
  padding-top: 0;
  padding-bottom: 10px;
  color: #58585a;
}
#page-content-wrapper table p {
  margin: 5px;
}
#page-content-wrapper .thumbnail {
  float: right;
  margin: 0 0 20px 20px;
}
#page-content-wrapper .socials {
  margin-bottom: 20px;
  overflow: hidden;
}
#page-content-wrapper .socials iframe {
  float: left;
  width: 90px;
  height: 21px;
  margin: 0 10px 0 0;
}
#page-content-wrapper .faq-section-item .faq-section-question {
  border-color: #bcbec0;
  transition: 350ms ease-in-out;
}
#page-content-wrapper .faq-section-item .faq-section-question:hover {
  color: #2e2e2f;
}
#page-content-wrapper .faq-section-item .faq-section-answer {
  background: rgba(88, 88, 90, 0.1);
}

#location-block {
  clear: both;
  text-align: center;
  margin-bottom: 40px;
}

#map-canvas {
  height: 600px;
  width: 100%;
}

.home-ac {
  margin-bottom: 14px;
  display: inline-block;
  text-align: center;
  width: 100%;
}
.home-ac p {
  padding: 0 15px;
}

#snowflakeContainer {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
}

#snowflakeContainer .snowflake {
  padding-left: 15px;
  font-family: Cambria, Georgia, serif;
  font-size: 9px;
  line-height: 9px;
  position: fixed;
  color: #FFFFFF;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  z-index: 1000;
}

#snowflakeContainer .snowflake:hover {
  cursor: default;
}

.page-content .special {
  height: 276px;
  overflow: hidden;
  padding: 20px 0;
}
@media (max-width: 767px) {
  .page-content .special {
    height: auto;
  }
}
.page-content .special + .special {
  border-top: thin solid #bcbec0;
}
.page-content .special h1, .page-content .special p {
  margin-bottom: 15px !important;
}
.page-content .special h1 a {
  color: #fff1e7;
  font: 700 17px/1 "Gotham", sans-serif;
  font-weight: 700 !important;
  text-transform: uppercase;
  text-decoration: none;
}
@media (max-width: 767px) {
  .page-content .special h1 a {
    color: #58585a;
  }
}
.page-content .special nav {
  font-size: 0;
}
.page-content .special nav a {
  background: #fcdcd8;
  color: #58585a;
  margin: 5px 0;
}
.page-content .special nav a:hover {
  background: #fff1e7;
  color: #58585a;
}
@media (max-width: 767px) {
  .page-content .special nav a:hover {
    background: #58585a;
    color: #fcdcd8;
  }
}
.page-content .special nav a + a {
  margin-left: 10px;
}
.page-content .special.single {
  border: 0;
  padding: 0;
  margin: 0;
  background: none;
  height: auto;
}
.page-content .special.single nav {
  margin-bottom: 20px;
}
.page-content .special.single nav a {
  background: #58585a;
  color: #fcdcd8;
  margin: 5px 0;
}
.page-content .special.single nav a:hover {
  background: #2e2e2f;
  color: #fcdcd8;
}
.page-content .special .center-column {
  background: #bcbec0;
  width: 100%;
  height: 100%;
}
@media (max-width: 767px) {
  .page-content .special .center-column {
    background: none;
  }
}
.page-content .special .page-content {
  background: #58585a;
  color: #fff1e7;
  height: 276px;
  margin: 0 !important;
  padding: 30px;
  position: absolute;
  left: 0;
  width: 30%;
  z-index: 10;
  box-sizing: border-box;
}
@media only screen and (max-width: 1024px) {
  .page-content .special .page-content {
    width: 40%;
  }
}
@media (max-width: 767px) {
  .page-content .special .page-content {
    background: none;
    height: auto;
    padding: 0 0 20px;
    position: relative;
    width: 100%;
    color: #58585a;
    text-align: center;
  }
}
.page-content .special .page-content .centered {
  position: relative;
  margin-top: -10px;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .page-content .special .page-content .centered {
    margin-top: 0;
    top: auto;
    transform: translateY(0);
  }
}
.page-content .special .rooms-slideshow {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
@media (max-width: 767px) {
  .page-content .special .rooms-slideshow {
    height: 0;
    padding-top: 50%;
  }
}
.page-content .special .rooms-slideshow .img {
  position: absolute;
  top: 0;
  right: 0;
  left: auto;
  width: 70%;
  height: 100%;
}
@media only screen and (max-width: 1024px) {
  .page-content .special .rooms-slideshow .img {
    width: 60%;
  }
}
@media (max-width: 767px) {
  .page-content .special .rooms-slideshow .img {
    width: 100%;
  }
  .page-content .special .rooms-slideshow .img .slideshow {
    width: 100%;
  }
}
.page-content .special.odd .page-content {
  left: auto;
  right: 0;
}
.page-content .special.odd .img {
  left: 0;
  right: auto;
}

.page-content .careers .narrow {
  width: 20%;
}

#map-canvas {
  height: 444px;
  margin-bottom: 25px;
}
#map-canvas h4, #map-canvas p {
  color: #58585a;
  font: 300 12px/1.5 "Gotham", sans-serif;
  margin: 3px 0 0;
  white-space: nowrap;
  text-align: left;
}
#map-canvas h4 {
  color: #58585a;
  font: 700 14px "Gotham", sans-serif !important;
  margin: 0;
}

.map-content {
  overflow: hidden;
}

.page-content #pressroom {
  overflow: hidden;
}

.page-content #categories-list {
  margin: 0 0 20px 0;
}
.page-content #categories-list li {
  display: inline-block;
}
.page-content #categories-list li:after {
  content: none;
}
.page-content #categories-list li a {
  background-color: #58585a;
  color: #58585a;
}
.page-content #categories-list li a:hover, .page-content #categories-list li a.active {
  background-color: #2e2e2f;
  color: #fff1e7;
}

.page-content .pressroom-entry {
  background: #fff;
  display: inline-block;
  height: 388px;
  overflow: hidden;
  padding: 10px;
  position: relative;
  margin: 0 0 20px 15px;
  vertical-align: top;
  width: 310px;
  box-sizing: border-box;
}
.page-content .pressroom-entry .description {
  display: inline-block;
  height: 100%;
  position: relative;
  text-align: center;
  width: 100%;
}
.page-content .pressroom-entry .description:after {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -1px;
  width: 0;
}
.page-content .pressroom-entry .description .centered {
  display: inline-block;
  vertical-align: middle;
  width: 270px;
}
.page-content .pressroom-entry .description .time {
  display: block;
  margin-bottom: 19px;
}
.page-content .pressroom-entry .description nav a {
  display: block;
}
.page-content .pressroom-entry.img {
  padding: 0;
}
.page-content .pressroom-entry.img .description {
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAIElEQVQ4T2P8////GQYKAOOoAQyjYcAwGgbAPDQM0gEAUF48oSnkrSAAAAAASUVORK5CYII=);
  background: rgba(255, 255, 255, 0.8);
  height: auto;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: auto;
  z-index: 1;
}
.page-content .pressroom-entry.img .description .centered {
  border-top: 1px solid #eee;
  display: block;
  padding: 20px;
}
.page-content .pressroom-entry.img img {
  display: block;
}
.page-content .pressroom-entry.wide {
  width: 635px;
}
.page-content .pressroom-entry.wide .description .centered {
  width: 595px;
}
.page-content .pressroom-entry.wide.img {
  padding: 20px;
}
.page-content .pressroom-entry.wide.img img {
  position: absolute;
  left: 0;
  top: 0;
}
.page-content .pressroom-entry.wide.img .description {
  background: none;
  display: block;
  height: 100%;
  position: relative;
  overflow: hidden;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  width: auto;
  margin: 0 0 0 310px;
  box-sizing: border-box;
}
.page-content .pressroom-entry.wide.img .description .centered {
  border: 0;
  display: inline-block;
  padding: 0;
  width: 98%;
}

.page-content a.pdf {
  display: inline-block;
  padding-left: 18px;
  font-size: 12px;
  line-height: 16px;
  position: relative;
}
.page-content a.pdf:hover:after {
  background-position: -833px 0;
}
.page-content a.pdf:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 13px;
  height: 16px;
  background: url("../images/common.png") -800px 0 no-repeat;
  background-image: url("../images/common.svg"), none;
}
.page-content a.pdf + .size {
  color: #aaa;
  font-size: 10px;
}

.page-content .galleries {
  font-size: 0;
  overflow: hidden;
}

.page-content .gallery {
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin: 0 1% 25px;
}
@media (max-width: 767px) {
  .page-content .gallery {
    margin: 0 5px;
    width: calc(50% - 10px);
  }
}
.page-content .gallery h4, .page-content .gallery .h4 {
  margin-bottom: 10px !important;
  text-align: left;
  text-transform: uppercase;
}
.page-content .gallery h4 a, .page-content .gallery .h4 a {
  font-weight: 700 !important;
  text-decoration: none;
  border: 0 !important;
}
.page-content .gallery .thumbnail {
  float: none !important;
  margin: 0 !important;
  width: 100%;
}
.page-content .gallery .thumbnail img {
  width: 100%;
}
.page-content .gallery div {
  font-size: 21px;
  margin-top: 10px;
}

#hebs-gallery .newListSelected {
  position: absolute !important;
  top: 3px;
  left: 14px;
  z-index: 2;
}

#hebs-gallery .selectedTxt {
  height: 33px;
  line-height: 33px;
  min-width: 100px;
}
#hebs-gallery .selectedTxt:after {
  top: 15px;
}

#hebs-gallery ul.newList {
  overflow: visible;
}

.page-content .sitemap-description {
  opacity: 1;
  font-size: 11px;
}

.page-content .form {
  display: block;
  margin-bottom: 25px;
  overflow: visible;
}
.page-content .form input[type=text],
.page-content .form input[type=email],
.page-content .form input[type=tel],
.page-content .form textarea {
  border: 0;
  background: #fff;
  color: #58585a;
  height: 40px;
  font-size: 12px;
  line-height: 40px;
  padding: 0 15px;
  resize: none;
  vertical-align: top;
  width: 240px;
}
@media (max-width: 767px) {
  .page-content .form input[type=text],
  .page-content .form input[type=email],
  .page-content .form input[type=tel],
  .page-content .form textarea {
    box-sizing: border-box;
    border: 1px solid #bcbec0;
    width: 100%;
  }
}
.page-content .form input[type=text]:hover,
.page-content .form input[type=email]:hover,
.page-content .form input[type=tel]:hover,
.page-content .form textarea:hover {
  background: #fcfcfc;
}
.page-content .form input[type=text]:active, .page-content .form input[type=text]:focus,
.page-content .form input[type=email]:active,
.page-content .form input[type=email]:focus,
.page-content .form input[type=tel]:active,
.page-content .form input[type=tel]:focus,
.page-content .form textarea:active,
.page-content .form textarea:focus {
  background: #fcfcfc;
}
.page-content .form textarea {
  height: 76px;
  line-height: 19px;
  overflow: auto;
  padding: 10px 15px;
}
.page-content .form input[type=checkbox],
.page-content .form input[type=radio] {
  width: 14px;
  height: 14px;
  margin: 0;
}
@media (max-width: 767px) {
  .page-content .form input[type=checkbox],
  .page-content .form input[type=radio] {
    vertical-align: middle;
  }
}
.page-content .form h3 {
  text-align: right;
  padding: 0;
  margin: 25px 0;
  width: 40%;
}
@media (max-width: 767px) {
  .page-content .form h3 {
    text-align: left;
    width: 100%;
  }
}
.page-content .form label {
  width: 40%;
  font-size: 18px;
  float: left;
  text-align: right;
  margin: 10px 10px 0 0;
  line-height: 19px;
}
@media (max-width: 767px) {
  .page-content .form label {
    display: block;
    float: none;
    line-height: 20px;
    margin: 0;
    text-align: left;
    width: 100%;
  }
}
.page-content .form label em {
  color: red;
  font-size: 16px;
  font-weight: normal;
  line-height: 10px;
  padding-right: 5px;
}
.page-content .form p {
  display: block;
  width: 100%;
  padding: 5px 0;
  line-height: 26px;
  vertical-align: middle;
  background: rgba(88, 88, 90, 0.05);
  margin-bottom: 1px !important;
}
@media (max-width: 767px) {
  .page-content .form p {
    background: none !important;
    padding: 0;
    margin-bottom: 10px !important;
  }
}
.page-content .form p:after {
  content: "​";
  visibility: hidden;
  height: 0;
  display: block;
  width: 100%;
  clear: both;
}
.page-content .form p.odd2 {
  background: rgba(88, 88, 90, 0.1);
}
.page-content .form p.highlight {
  background: rgba(88, 88, 90, 0.2);
}
.page-content .form p span {
  float: left;
  margin: 0 10px 0 0;
}
.page-content .form p span input {
  display: inline;
  float: none;
  margin: 0;
}
.page-content .form p span label {
  display: inline;
  float: none;
  width: auto;
  text-align: left;
}
.page-content .form p span.group label {
  display: block;
}
.page-content .form p span.group label input {
  margin-right: 0.4em;
}
.page-content .form .newListSelected {
  width: 270px;
  float: left;
}
.page-content .form input.date-pick {
  width: 65px;
  float: left;
}
.page-content .form .dp-choose-date {
  float: left;
  position: static;
  margin: 13px 0 0 6px;
}
.page-content .form .controls p {
  padding: 20px 0 0 40%;
  background: none;
}
.page-content .form .controls input {
  margin-left: 10px;
}

input.blur + label.placeholder {
  color: #58585a !important;
}

::-webkit-input-placeholder {
  color: #58585a;
}

:-moz-placeholder { /* Firefox 18- */
  color: #58585a;
}

::-moz-placeholder { /* Firefox 19+ */
  color: #58585a;
}

:-ms-input-placeholder {
  color: #58585a;
}

:focus::-webkit-input-placeholder {
  color: #bcbec0;
}

:focus:-moz-placeholder { /* Firefox 18- */
  color: #bcbec0;
}

:focus::-moz-placeholder { /* Firefox 19+ */
  color: #bcbec0;
}

:focus:-ms-input-placeholder {
  color: #bcbec0;
}

#revinate_contact_api_form .group {
  margin-top: 5px;
}
@media (max-width: 767px) {
  #revinate_contact_api_form .group {
    width: 100%;
  }
}
#revinate_contact_api_form .group input[type=text],
#revinate_contact_api_form .group input[type=email],
#revinate_contact_api_form .group input[type=tel],
#revinate_contact_api_form .group textarea {
  display: block;
  margin-bottom: 5px;
}

.poi {
  margin-bottom: 40px;
}

.poi-maps-container {
  position: relative;
  width: 100%;
  height: 400px;
  background: #bcbec0;
  overflow: hidden;
}
.poi-maps-container .poi-map-canvas {
  position: absolute;
  left: 0;
  top: -100%;
  width: 100%;
  height: 100%;
}
.poi-maps-container .poi-map-canvas.visible {
  top: 0;
}
.poi-maps-container .poi-map-canvas h4, .poi-maps-container .poi-map-canvas p {
  color: #58585a;
  margin: 3px 0 0;
  white-space: nowrap;
  font: 300 12px "Gotham", sans-serif;
}
.poi-maps-container .poi-map-canvas h4 {
  font: 700 14px "Gotham", sans-serif !important;
  margin: 0;
}
.poi-maps-container .poi-map-canvas .map-content {
  overflow: hidden;
}

.poi .category-selector {
  margin: 20px 0;
}
.poi .category-selector:after {
  content: "";
  display: block;
  overflow: hidden;
  height: 0;
  clear: both;
}
.poi .category-selector button {
  display: inline-block;
  height: 40px;
  line-height: 40px;
  padding: 0 15px;
  font-weight: 700;
  margin: 0 10px 10px 0;
  font-size: 14px;
  text-transform: uppercase;
  cursor: pointer;
}

.poi .categories .category {
  display: none;
}
.poi .categories .category.visible {
  display: block;
}

.poi .categories {
  margin-top: 30px;
}
.poi .categories .category.hidden {
  display: none;
}
.poi .categories .category table {
  width: 100%;
}
.poi .categories .category table th {
  white-space: nowrap;
}
.poi .categories .category table td {
  vertical-align: middle;
}
.poi .categories .category table td.center {
  text-align: center;
}
.poi .categories .category table td.title {
  text-align: left;
}
.poi .categories .category .expand-description {
  text-decoration: underline;
  cursor: pointer;
}
.poi .categories .category .expand-description:hover {
  color: #524b48;
}
.poi .categories .category .show-on-map {
  display: block;
  height: 17px;
  width: 11px;
  margin: 0 auto;
  text-indent: -9999px;
  overflow: hidden;
  background: url("../images/common.png") -600px 0 no-repeat;
  background-image: url("../images/common.svg"), none;
  cursor: pointer;
}
.poi .categories .category .show-on-map:hover {
  background-position: -630px 0;
}
.poi .categories .category tr.description {
  display: none;
}
.poi .categories .category tr.description.visible {
  display: table-row;
}
.poi .categories .category tr.description .thumbnail {
  margin-bottom: 0;
}
.poi .categories .category tr.description p {
  margin: 0 0 10px;
  font-size: 12px;
}
.poi .categories .category tr.description nav > * {
  margin-left: 10px;
}
.poi .categories .category tr.description nav > *:first-child {
  margin-left: 0;
}

.poi .hotels {
  display: none;
}

.calendar #booking input[type=text], .calendar #booking select {
  border: 1px solid #ececec;
}
.calendar .page-content {
  margin-top: 100px !important;
  margin-bottom: 40px !important;
  padding: 0 10px;
}

#calendar-navigation h2, #calendar.grid #calendar_days dl dd h3, #calendar.grid #calendar_week li, #calendar-month a {
  font-weight: 700;
  text-transform: uppercase;
}

#calendar-navigation a.prev, #calendar-navigation a.next, #calendar-links a, #calendar-views a:before {
  background: url("../images/common.png") 0 0 no-repeat;
  background-image: url("../images/common.svg"), none;
}

#content_cal {
  position: relative;
}
#content_cal header {
  padding: 0 10px;
  position: relative;
  width: 100%;
  z-index: 5;
  box-sizing: border-box;
}
#content_cal header:after {
  content: "";
  clear: both;
  display: block;
  height: 0;
  width: 100%;
}
#content_cal header .controlsdiv {
  display: block;
  float: left;
  overflow: hidden;
  position: relative;
  zoom: 1;
  z-index: 10;
}
#content_cal header #calendar-filter-wrapper {
  float: right;
}
#content_cal header #calendar-filter-wrapper #calendar-filter .selectedTxt {
  min-width: 150px;
}
#content_cal ul {
  margin: 0;
  padding: 0 10px;
  box-sizing: border-box;
}
#content_cal li {
  padding-left: 0 !important;
  position: static !important;
}
#content_cal li:after {
  display: none;
}

#calendar-views {
  float: left;
  overflow: hidden;
}
@media (max-width: 767px) {
  #calendar-views {
    display: none;
  }
}
#calendar-views li {
  float: left;
  padding-right: 20px;
  position: relative;
}
#calendar-views a {
  color: #58585a;
  display: block;
  height: 40px;
  font: 700 16px/40px "Gotham", sans-serif;
  padding-left: 35px;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}
@media only screen and (max-width: 1024px) {
  #calendar-views a {
    padding: 0 10px 0 40px;
  }
}
#calendar-views a.active, #calendar-views a:hover {
  color: #2e2e2f;
  text-decoration: underline;
}
#calendar-views a:before {
  content: "";
  display: block;
  height: 20px;
  left: 0;
  top: 10px;
  position: absolute;
  width: 20px;
  transition: background-color 0.2s ease-in-out;
}
@media only screen and (max-width: 1024px) {
  #calendar-views a:before {
    left: 10px;
  }
}
#calendar-views a.grid:before {
  background-position: -440px 0;
}
#calendar-views a:hover.grid:before, #calendar-views a.active.grid:before {
  background-position: -400px 0;
}
#calendar-views a.list:before {
  background-position: -440px -38px;
}
#calendar-views a:hover.list:before, #calendar-views a.active.list:before {
  background-position: -400px -38px;
}

#calendar-links {
  float: left;
}
@media (max-width: 767px) {
  #calendar-links {
    overflow: hidden;
    margin-bottom: 20px;
  }
}
#calendar-links li {
  float: left;
  padding-right: 10px;
}
#calendar-links a {
  float: left;
  height: 20px;
  margin: 10px;
  text-indent: -9999px;
  width: 20px;
}
#calendar-links a.rss {
  background-position: -440px -156px;
}
#calendar-links a.rss:hover {
  background-position: -400px -156px;
}
#calendar-links a.print {
  background-position: -440px -116px;
}
#calendar-links a.print:hover {
  background-position: -400px -116px;
}
#calendar-links a.ical {
  background-position: -440px -76px;
}
#calendar-links a.ical:hover {
  background-position: -400px -76px;
}
@media only screen and (max-width: 1024px) {
  #calendar-links a {
    padding: 0 10px;
  }
}
@media only screen and (max-width: 1024px) {
  #calendar-links a {
    padding: 0;
  }
}

#calendar-breadcrumb {
  clear: both;
  padding: 10px;
  overflow: hidden;
}
@media (max-width: 767px) {
  #calendar-breadcrumb {
    display: none;
  }
}
#calendar-breadcrumb dt, #calendar-breadcrumb dd {
  float: left;
  margin-right: 10px;
}
#calendar-breadcrumb a {
  display: inline;
  text-decoration: none;
  border-bottom: thin solid #fcdcd8;
  transition: color 350ms ease-in-out, border-color 350ms ease-in-out;
}
#calendar-breadcrumb a:hover {
  border-color: #2e2e2f;
}

#calendar-year {
  overflow: hidden;
  margin-bottom: 20px !important;
  width: 100%;
  zoom: 1;
}
@media (max-width: 767px) {
  #calendar-year {
    display: none;
  }
}
#calendar-year li {
  display: block;
  float: left;
  padding-left: 0 !important;
}
#calendar-year a {
  border-bottom: thin solid rgba(88, 88, 90, 0.4);
  color: rgba(88, 88, 90, 0.4);
  display: block;
  font-size: 18px;
  margin-right: 1px;
  padding: 0.4em;
  text-decoration: none;
}
#calendar-year a:hover {
  border-color: #2e2e2f;
  color: #2e2e2f;
}
#calendar-year .active a {
  border-color: #2e2e2f;
  color: #2e2e2f;
}

#calendar-month {
  height: 40px;
  clear: both;
  margin: 0;
  position: relative;
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
  text-justify: newspaper;
  zoom: 1;
  z-index: 4;
}
@media (max-width: 767px) {
  #calendar-month {
    margin: 20px 0 !important;
  }
}
#calendar-month:after {
  display: inline-block;
  margin: 0;
  padding: 0;
  width: 100%;
  content: " ";
}
#calendar-month li {
  display: inline;
}
#calendar-month li.arrow {
  display: none;
}
@media (max-width: 767px) {
  #calendar-month li {
    display: none;
  }
}
@media (max-width: 767px) {
  #calendar-month li.prev, #calendar-month li.current, #calendar-month li.next {
    display: block;
    float: left;
    width: 33%;
  }
}
#calendar-month a {
  color: #58585a;
  display: inline-block;
  font: 700 12px/40px "Gotham", sans-serif;
  padding: 0 10px;
  height: 40px;
  text-align: left;
  text-decoration: none;
  transition: 0s;
  vertical-align: top;
}
#calendar-month a.active {
  background: #58585a;
  color: #fcdcd8;
}
#calendar-month a.active:hover {
  background: #2e2e2f;
  color: #fff;
  text-decoration: none;
}
#calendar-month a:hover {
  background: none;
  text-decoration: underline;
}
@media only screen and (max-width: 1024px) {
  #calendar-month a {
    font-size: 8px;
    padding: 0 5px;
  }
}
@media (max-width: 767px) {
  #calendar-month a {
    font-size: 11px;
    display: block;
    text-align: center;
    -moz-text-align-last: center;
         text-align-last: center;
  }
}

#calendar.grid {
  position: static;
  font-size: 0;
  margin: 0 auto;
}
#calendar.grid #calendar_week,
#calendar.grid #calendar_days {
  display: block;
  width: 100%;
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
  text-justify: newspaper;
  zoom: 1;
}
#calendar.grid #calendar_week:after,
#calendar.grid #calendar_days:after {
  display: inline-block;
  margin: 0;
  padding: 0;
  width: 100%;
  content: " ";
}
#calendar.grid #calendar_week li,
#calendar.grid #calendar_days li {
  display: inline-block;
  padding: 0.5em 0;
  width: 13%;
}
@media (max-width: 767px) {
  #calendar.grid #calendar_week {
    display: none;
  }
}
#calendar.grid #calendar_week li {
  font-size: 20px;
  font-weight: 400;
  margin: 0.6em 0 0 0;
  color: #2e2e2f;
  text-align: center;
  text-transform: none;
}
#calendar.grid #calendar_days {
  position: relative;
}
#calendar.grid #calendar_days li {
  background: rgba(88, 88, 90, 0.1);
  font-size: 12px;
  margin: 0 0 1em;
  min-height: 8em;
  padding: 0;
  text-align: left;
  vertical-align: top;
}
@media (max-width: 767px) {
  #calendar.grid #calendar_days li {
    width: 100%;
    min-height: 0 !important;
    height: auto !important;
  }
}
#calendar.grid #calendar_days li.prev_month, #calendar.grid #calendar_days li.next_month {
  background: rgba(88, 88, 90, 0.03);
}
@media (max-width: 767px) {
  #calendar.grid #calendar_days li.prev_month, #calendar.grid #calendar_days li.next_month {
    display: none;
  }
}
#calendar.grid #calendar_days li.prev_month h4 a, #calendar.grid #calendar_days li.next_month h4 a {
  opacity: 0.2;
}
#calendar.grid #calendar_days li.day_items3 {
  height: 9em;
}
#calendar.grid #calendar_days li.day_items4 {
  height: 11em;
}
#calendar.grid #calendar_days li.day_items5 {
  height: 13em;
}
#calendar.grid #calendar_days li.day_items6 {
  height: 15em;
}
#calendar.grid #calendar_days li.day_items7 {
  height: 17em;
}
#calendar.grid #calendar_days li.day_items8 {
  height: 19em;
}
#calendar.grid #calendar_days li.day_items9 {
  height: 21em;
}
#calendar.grid #calendar_days li.day_items10 {
  height: 23em;
}
#calendar.grid #calendar_days li.day_items11 {
  height: 25em;
}
#calendar.grid #calendar_days li.day_items12 {
  height: 27em;
}
#calendar.grid #calendar_days li.day_items13 {
  height: 29em;
}
#calendar.grid #calendar_days li.day_items14 {
  height: 31em;
}
#calendar.grid #calendar_days li.day_items15 {
  height: 33em;
}
#calendar.grid #calendar_days li.day_items16 {
  height: 35em;
}
#calendar.grid #calendar_days li.day_items17 {
  height: 37em;
}
#calendar.grid #calendar_days li.day_items18 {
  height: 39em;
}
#calendar.grid #calendar_days li.day_items19 {
  height: 41em;
}
#calendar.grid #calendar_days li.day_items20 {
  height: 43em;
}
#calendar.grid #calendar_days h4 {
  text-align: left;
  margin: 0;
}
#calendar.grid #calendar_days h4 a {
  color: #58585a;
  font: 400 14px/1 "Gotham", sans-serif;
  display: block;
  padding: 0.5em 1em;
  text-decoration: none;
}
#calendar.grid #calendar_days dl {
  background: none;
  display: block;
  height: 2em;
  z-index: 120;
}
#calendar.grid #calendar_days dl:hover {
  position: relative;
}
@media (max-width: 767px) {
  #calendar.grid #calendar_days dl {
    margin: 0 !important;
  }
}
@media (max-width: 767px) {
  #calendar.grid #calendar_days dl.hide {
    display: block !important;
  }
}
#calendar.grid #calendar_days dl a {
  text-overflow: ellipsis;
}
#calendar.grid #calendar_days dl dt {
  display: block;
  font-size: 0.8em;
  height: 2em;
  line-height: 2em;
  margin: 0;
  position: relative;
  white-space: nowrap;
}
@media (max-width: 767px) {
  #calendar.grid #calendar_days dl dt {
    width: 100% !important;
  }
}
#calendar.grid #calendar_days dl dt a {
  background: #fcdcd8;
  display: block;
  color: #fff;
  height: 1.8em;
  line-height: 1.8em;
  overflow: hidden;
  font-family: "Gotham", sans-serif;
  padding: 0 0.5em 0 1em;
  text-align: left;
  -moz-text-align-last: left;
       text-align-last: left;
  text-decoration: none;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
  width: auto;
  transition: all 400ms ease-in-out;
}
#calendar.grid #calendar_days dl.w1 dt {
  width: 100%;
}
#calendar.grid #calendar_days dl.w2 dt {
  width: 211.55%;
}
#calendar.grid #calendar_days dl.w3 dt {
  width: 323.1%;
}
#calendar.grid #calendar_days dl.w4 dt {
  width: 434.65%;
}
#calendar.grid #calendar_days dl.w5 dt {
  width: 546.2%;
}
#calendar.grid #calendar_days dl.w6 dt {
  width: 657.75%;
}
#calendar.grid #calendar_days dl.w7 dt {
  width: 769.3%;
}
#calendar.grid #calendar_days dl.c1 dt a {
  background-color: #8db294;
}
#calendar.grid #calendar_days dl.c2 dt a {
  background-color: #ada39a;
}
#calendar.grid #calendar_days dl.c3 dt a {
  background-color: #85a9b7;
}
#calendar.grid #calendar_days dl.c4 dt a {
  background-color: #bc8e8f;
}
#calendar.grid #calendar_days dl.c5 dt a {
  background-color: #ac9bc1;
}
#calendar.grid #calendar_days dl.c6 dt a {
  background-color: #87b6c7;
}
#calendar.grid #calendar_days dl.c7 dt a {
  background-color: #bb85aa;
}
#calendar.grid #calendar_days dl.c8 dt a {
  background-color: #a4a4a4;
}
#calendar.grid #calendar_days dl dd {
  background: #2e2e2f;
  bottom: 20px;
  color: #fff;
  font-size: 14px;
  left: 0;
  overflow: visible;
  margin-bottom: 10px;
  padding: 10px;
  position: absolute;
  text-align: left;
  visibility: hidden;
  width: 196px;
  z-index: 999;
  -moz-text-align-last: left;
       text-align-last: left;
  border-radius: 4px;
  transform: translate3d(0, 0, 0);
}
@media only screen and (max-width: 1024px) {
  #calendar.grid #calendar_days dl dd {
    display: none !important;
  }
}
@media (max-width: 767px) {
  #calendar.grid #calendar_days dl dd {
    display: none !important;
  }
}
#calendar.grid #calendar_days dl dd ins {
  border-right: 20px solid transparent;
  border-left: 20px solid transparent;
  border-top: 20px solid #2e2e2f;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  margin-left: -20px;
  position: absolute;
  width: 0;
}
#calendar.grid #calendar_days dl dd h3 {
  color: #fff1e7;
  font-size: 14px;
  line-height: 1;
  margin: 0 0 15px 0;
  padding: 0;
}
#calendar.grid #calendar_days dl dd img {
  display: block;
  height: auto;
  width: 100%;
  margin-bottom: 10px;
}
#calendar.grid #calendar_days dl dd p {
  color: #fff;
  font-size: 14px;
  width: 100%;
  margin: 0 0 5px 0;
}
#calendar.grid #calendar_days dl dd a {
  color: inherit;
  text-decoration: underline;
}
#calendar.grid #calendar_days dl dd a:hover {
  text-decoration: none;
}
#calendar.grid #calendar_days dl:hover dd {
  visibility: visible;
}
#calendar.grid #calendar_days dl.t1 {
  margin-top: 2em;
}
#calendar.grid #calendar_days dl.t2 {
  margin-top: 4em;
}
#calendar.grid #calendar_days dl.t3 {
  margin-top: 6em;
}
#calendar.grid #calendar_days dl.t4 {
  margin-top: 8em;
}
#calendar.grid #calendar_days dl.t5 {
  margin-top: 10em;
}
#calendar.grid #calendar_days dl.t6 {
  margin-top: 12em;
}
#calendar.grid #calendar_days dl.t7 {
  margin-top: 14em;
}
#calendar.grid #calendar_days dl.t8 {
  margin-top: 16em;
}
#calendar.grid #calendar_days dl.t9 {
  margin-top: 18em;
}
#calendar.grid #calendar_days dl.t10 {
  margin-top: 20em;
}
#calendar.grid #calendar_days dl.t11 {
  margin-top: 22em;
}
#calendar.grid #calendar_days dl.t12 {
  margin-top: 24em;
}
#calendar.grid #calendar_days dl.t13 {
  margin-top: 26em;
}
#calendar.grid #calendar_days dl.t14 {
  margin-top: 28em;
}
#calendar.grid #calendar_days dl.t15 {
  margin-top: 30em;
}
#calendar.grid #calendar_days dl.t16 {
  margin-top: 32em;
}
#calendar.grid #calendar_days dl.t17 {
  margin-top: 34em;
}
#calendar.grid #calendar_days dl.t18 {
  margin-top: 36em;
}
#calendar.grid #calendar_days dl.t19 {
  margin-top: 38em;
}
#calendar.grid #calendar_days dl.t20 {
  margin-top: 40em;
}

#calendar-navigation {
  clear: both;
  display: block;
  padding: 10px 40px;
  margin: 20px;
  position: relative;
  background: #fcdcd8;
  text-align: center;
}
#calendar-navigation h2 {
  display: inline-block;
  margin-bottom: 0;
  white-space: nowrap;
  text-transform: none;
  font-weight: 400;
}
#calendar-navigation a.prev, #calendar-navigation a.next {
  cursor: pointer;
  height: 33px;
  overflow: hidden;
  position: absolute;
  top: 50%;
  margin-top: -16px;
  width: 31px;
  text-indent: -9999px;
}
#calendar-navigation a.next {
  background-position: -13px 9px;
  right: 0;
}
#calendar-navigation a.next:hover {
  background-position: -13px -21px;
}
#calendar-navigation a.prev {
  background-position: 12px 9px;
  left: 0;
}
#calendar-navigation a.prev:hover {
  background-position: 12px -21px;
}
#calendar-navigation ul {
  margin-bottom: 0;
}

#calendar.list {
  margin-top: 0 !important;
}
#calendar.list a {
  display: inline;
  text-decoration: none;
  border-bottom: thin solid #fcdcd8;
  transition: color 350ms ease-in-out, border-color 350ms ease-in-out;
}
#calendar.list a:hover {
  border-color: #2e2e2f;
}
#calendar.list > h3 a {
  color: #58585a;
  font-weight: 700;
  margin: 0;
  text-decoration: none;
  text-transform: uppercase;
  border-bottom: 0;
}
#calendar.list > h3 a:hover {
  color: #2e2e2f;
}
#calendar.list article {
  overflow: hidden;
  border-bottom: thin solid #bcbec0;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
#calendar.list article.single, #calendar.list article:first-child {
  border: 0;
  margin-top: 0 !important;
  padding-top: 0;
}
#calendar.list article.single {
  background: none;
  margin-top: 40px !important;
}
#calendar.list article.single nav {
  margin-bottom: 20px;
}
#calendar.list article.single small {
  display: block;
}
#calendar.list p.noevents {
  padding: 25px;
  text-align: center;
}
