/* Scss Document */
body {
  font-family: "effra", sans-serif;
  font-size: 13px;
  color: #71706f; }
a {font-weight: normal}
/* Scss Document */
header {
  background-color: #fff;
  padding: 0 0 1rem 0; }
  header .greysubnav {
    background-color: #F3F2F0;
    margin-bottom: 1rem;
    width: 100%; }
    header .greysubnav .greynavbox {
      float: left;
      padding: 1rem; }
    header .greysubnav .contactnumber {
      color: #830033;
      text-transform: uppercase;
      font-weight: bold; }
    header .greysubnav .loginbtn {
      background-color: #830033;
      float: right;
      padding: 1rem; }
      header .greysubnav .loginbtn a {
        color: #fff;
        text-decoration: none;
        font-weight: bold;
        text-transform: uppercase; }
        header .greysubnav .loginbtn a .icon:before {
          font-size: 1.2rem;
          margin-right: 3px;
          color: #fff; }
  header .logowrapper {
    padding-top: 1rem; }
    header .logowrapper img {
      max-width: 200px; }

.clear {
  clear: both; }

@media only screen and (max-width: 990px) {
  .greysubnav {
    width: 75% !important;
    float: left;
    margin: 0 !important; }
    .greysubnav .loginbtn {
      font-size: 1rem; }
    .greysubnav .mobilenumber {
      font-size: 1rem; }
      .greysubnav .mobilenumber .icon:before {
        margin-right: 5px; }

  .logowrapper {
    padding-top: 5px !important;
    padding-bottom: 5px; } }
@media only screen and (max-width: 768px) {
  .headercols {
    padding: 0 5px; }

  header {
    padding-bottom: 0; } }
/* Scss Document */
nav {
  font-size: 1.7rem; }
  nav ul {
    padding: 0;
    margin: 0;
    text-align: right; }
    nav ul li {
      list-style: none;
      display: inline-block;
      padding-left: 3rem; }
      nav ul li a {
        color: #000;
        text-decoration: none; }
	  		nav > ul > li > a:hover{color:#fff; opacity: .6}
    nav ul li:first-child {
      margin: 0; }

@media only screen and (max-width: 990px) {
  nav ul {
    padding: 15px;
    width: 80%;
    max-width: 300px;
    top: 0;
    display: none;
    background-color: #830033;
    position: fixed;
    z-index: 900;
    right: 0;
    height: 100%; }
    nav ul li {
      display: block;
      padding: 15px 0;
      text-align: left;
      color: #fff;
      border-top: solid 1px rgba(255, 255, 255, 0.5); }
      nav ul li a {
        color: #fff; }
    nav ul li:first-child {
      margin-top: 60px; } }
/* Scss Document */
.bannerwrapper {
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  background-position: center center;
  	 /*mask-image: url(images/curve.svg);
      mask-position: center bottom;
      mask-repeat: no-repeat;
      mask-size: cover;
      mask-composite: exclude;
     -webkit-mask-image: url(images/curve.svg);
      -webkit-mask-position: center bottom;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-size: cover;
      -webkit-mask-composite: exclude;
      -moz-mask-image: url(images/curve.svg);
      -moz-mask-position: center bottom;
      -moz-mask-repeat: no-repeat;
      -moz-mask-size: cover;
      -moz-mask-composite: exclude;
  	padding-bottom: 80px;*/ }

.bannercontent {
  text-align: center;
  color: #fff;
  margin-top: 80px; }
  .bannercontent h1 {
    font-size: 6em;
    font-weight: bold;
    text-transform: uppercase;
    opacity: 0.3;
    margin: 0; }
  .bannercontent h2 {
    margin: 0;
    margin-top: -25px;
    font-size: 5rem;
    font-weight: bold; }
  .bannercontent h2:after {
    content: "";
    max-width: 90%;
    width: 300px;
    background-color: #fff;
    height: 1px;
    margin: auto;
    display: block;
    margin-top: 1rem;
    margin-bottom: 2rem; }
  .bannercontent p {
    font-size: 1.5em; }

@media only screen and (max-width: 768px) {
  .bannerwrapper {
    padding-bottom: 0 !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    -moz-mask-image: none !important; }
    .bannerwrapper .container {
      margin: 0 !important;
      padding: 0 !important;
      width: 100% !important; }

  .bannercontent {
    margin-top: 25px; }
    .bannercontent h1 {
      font-size: 2.4em; }
    .bannercontent h2 {
      margin-top: -15px;
      font-size: 3rem; }
    .bannercontent p {
      font-size: 1em; }

  .filterwrapper {
    margin-top: 25px;
    margin-bottom: 0 !important; }
    .filterwrapper label {
      margin-top: 10px;
      display: none; }
    .filterwrapper input {
      margin-bottom: 10px; } }
.curveimgwhite {
  position: absolute;
  bottom: 0px;
  width: 100%; }

.bannerwrapper .filterwrapper {
  margin-bottom: 15%; }

@media only screen and (max-width: 1360px) {
  .pagebannernotext .curveimg img {
    height: auto !important;
    width: 100% !important; } }
@media only screen and (max-width: 1170px) {
  .pagebannernotext .curveimg img {
    height: 100% !important;
    width: auto !important; } }
@media only screen and (max-width: 990px) {
  .pagebannerwrapper .overlapsub h2 {
    font-size: 5.5rem !important; }
  .pagebannerwrapper .overlapsub h1, .pagebannerwrapper .overlapsub h3 {
    font-size: 4rem !important; }

  .pagebannernotext .curveimg img {
    height: 100% !important;
    width: auto !important;
    left: 0 !important; } }
@media only screen and (max-width: 768px) {
  .bannerwrapper {
    padding-bottom: 0 !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    -moz-mask-image: none !important; }
    .bannerwrapper .container {
      margin: 0 !important;
      padding: 0 !important;
      width: 100% !important; }

  .bannercontent {
    margin-top: 25px; }
    .bannercontent h1 {
      font-size: 2.4em; }
    .bannercontent h2 {
      margin-top: -15px;
      font-size: 3rem; }
    .bannercontent p {
      font-size: 1em; }

  .filterwrapper {
    margin-top: 25px;
    margin-bottom: 0 !important; }
    .filterwrapper label {
      display: none; }
    .filterwrapper input {
      margin-bottom: 10px;
      font-size: 17px; }
    .filterwrapper select {
      font-size: 17px;
      background-color: #fff; }

  .advancedtoggle {
    margin-top: 10px; }

  .pagebannernotext .overlapsub h2 {
    font-size: 5.5rem !important;
    display: block; }
  .pagebannernotext .overlapsub h1, .pagebannernotext .overlapsub h3 {
    font-size: 4rem !important;
    text-transform: uppercase;
    margin-top: -30px !important; }
  .pagebannernotext .overlapsub h1:after, .pagebannernotext .overlapsub h3:after {
    content: none; } }
@media only screen and (max-width: 580px) {
  .pagebannernotext .overlapsub h2 {
    text-align: center !important; }
  .pagebannernotext .curveimg img {
    left: 0 !important;
    top: -12% !important;
    width: 100% !important;
    height: auto !important; }

  .pagebannerwrapper .curveimg img {
    left: 0 !important;
    top: -12% !important;
    width: 100% !important;
    height: auto !important; } }
@media only screen and (max-width: 400px) {
  .pagebannernotext .overlapsub h2, .pagebannerwrapper .overlapsub h2 {
    display: none !important; }
  .pagebannernotext .overlapsub h1, .pagebannernotext .overlapsub h1, .pagebannerwrapper .overlapsub h1, .pagebannerwrapper .overlapsub h1 {
    margin-top: 0 !important; } }
/* Scss Document */
.iconswrapper {
  padding: 30px 0; background: #fff; }
  .iconswrapper .iconblock {
    font-size: 1.8rem; }
    .iconswrapper .iconblock img {
      height: 60px;
      float: left;
      margin-right: 10px; }

.loyaltypointsbar {
  background-color: #0b426e;
  color: #fff;
  font-size: 1.8rem;
  padding: 1rem 0; }
  .loyaltypointsbar .container {
    display: table;
    vertical-align: middle; }
  .loyaltypointsbar .loyaltycontent {
    display: table-cell;
    vertical-align: middle;
    min-height: 50px; }
  .loyaltypointsbar .loyaltybutton {
    display: table-cell; }
  .loyaltypointsbar .whiteghostbtn {
    clear: both;
    float: right;
    margin-left: 10px; }

.homepagecontent {
  padding: 3rem 0; }

.thumbnailblock img {
  display: block;
  width: 100%;
  height: auto; }
.thumbnailblock h3 {
  color: #830033;
  font-size: 2rem;
  margin: 0;
  line-height: 1.2;
  margin-bottom: 10px; }
.thumbnailblock .thumbnailblocktext {
  padding: 1rem;
  background-color: #F3F2F0; }

.homepagecolumn:first-child {
  padding-right: 50px; }

.homepagecolumn:last-child {
  padding-left: 50px; }

.homepagecolumn .redbutton {
  width: 100%;
  margin-top: 20px; }

.featuredhoteltext {
  display: table;
  font-size: 1.7rem; }
  .featuredhoteltext p {
    display: table-cell;
    vertical-align: middle; }
  .featuredhoteltext a {
    display: table-cell;
    vertical-align: middle;
    padding-left: 10px; }
    .featuredhoteltext a img {
      width: 30px; }

.rewardspanel {
  background-color: #0b426e; }
  .rewardspanel .whitebtn {
    display: inline-block;
    margin-right: 5%;
    min-width: 40%;
    background-color: #fff; }
    .rewardspanel .whitebtn a {
      color: #0b426e; }

.colourpanelwrapper {
  color: #fff;
  position: relative; }
  .colourpanelwrapper .overlapsub h3:after {
    background-color: #fff; }
  .colourpanelwrapper .btn {
    margin-right: 20px; }
  .colourpanelwrapper .checkcontainer {
    color: #fff; }
  .colourpanelwrapper input[type="email"] {
    border: solid 1px #fff;
    background-color: transparent;
    padding: 1rem;
    color: white;
    font-size: 1.8rem;
    margin-top: 3px;
    margin-right: 10px;
    width: 100%;
    margin-bottom: 10px;
    display: block; }
  .colourpanelwrapper input[type="submit"] {
    color: #e58a1c;
    margin: auto;
    display: block;
    width: 60%;
    margin-top: 10px; }
  .colourpanelwrapper input[type="checkbox"] {
    display: block; }
  .colourpanelwrapper label {
    display: inline;
    font-weight: normal;
    margin-left: 10px;
    font-size: 1.5rem; }
  .colourpanelwrapper input::placeholder {
    color: #fff; }
  .colourpanelwrapper .container {
    position: relative; }
  .colourpanelwrapper .textbkg {
    font-size: 10rem;
    opacity: 0.1;
    text-transform: uppercase;
    font-weight: bold;
    margin-top: -20px;
    margin-left: -30px;
    position: absolute;
    top: 0;
    left: -30px;
    line-height: 1;
    width: 100%; }

.colourpaneltext {
  padding: 4rem 0; }
  .colourpaneltext h2 {
    font-size: 9rem;
    opacity: 0.1;
    text-transform: uppercase;
    font-weight: bold;
    margin-top: -20px;
    margin-left: -30px; }
  .colourpaneltext p {
    font-size: 2rem; }

.curveimg {
  width: 40%;
  position: absolute;
  overflow: hidden; }
  .curveimg img {
    width: 100%;
    height: auto;
    position: absolute;
    display: block;
    top: 0; }

.curveimgright {
  right: 0;
  top: 0;
  height: 100%;
  mask-image: url(images/curveright.svg);
  mask-position: left bottom;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-composite: exclude;
  -webkit-mask-image: url(images/curveright.svg);
  -webkit-mask-position: left bottom;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-composite: exclude;
  -moz-mask-image: url(images/curveright.svg);
  -moz-mask-position: left bottom;
  -moz-mask-repeat: no-repeat;
  -moz-mask-size: cover;
  -moz-mask-composite: exclude;
  padding-bottom: 80px; }

.curveimgleft {
  left: 0;
  top: 0;
  height: 100%;
  mask-image: url(images/curveleft.svg);
  mask-position: right bottom;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-composite: exclude;
  -webkit-mask-image: url(images/curveleft.svg);
  -webkit-mask-position: right bottom;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  -webkit-mask-composite: exclude;
  -moz-mask-image: url(images/curveleft.svg);
  -moz-mask-position: right bottom;
  -moz-mask-repeat: no-repeat;
  -moz-mask-size: cover;
  -moz-mask-composite: exclude;
  padding-bottom: 80px; }

.logoslider .logosliderblock {
  padding: 30px; }
  .logoslider .logosliderblock img {
    display: block;
    margin: auto;
    height: 25px; }
.logoslider .slick-current {
  background-color: #F3F2F0; }

.hotelpreviewslider {
  background-color: #F3F2F0; }

.hotelpreviewimage {
  float: right;
  width: 50%; }
  .hotelpreviewimage img {
    width: 100% !important;
    display: block; }

.hotelpreviewtext {
  padding: 20px;
  width: 50%;
  font-size: 1.5rem;
  float: left; }
  .hotelpreviewtext h3 {
    font-weight: bold;
    font-size: 2.8rem; }

.newsletterpanel {
  background-color: #e58a1c; }
  .newsletterpanel .whitebtn {
    background-color: #fff; }
    .newsletterpanel .whitebtn a {
      color: #e58a1c; }

.colourpanelleft .textbkg {
  text-align: right;
  right: -30px; }
.colourpanelleft .colourpaneltext {
  float: right; }

.pagebannerwrapper {
  color: #71706f !important;
  background-color: #F3F2F0; }
  .pagebannerwrapper .overlapsub {
    text-align: left; }
    .pagebannerwrapper .overlapsub h3, .pagebannerwrapper .overlapsub h1 {
      margin-top: -30px;
      font-size: 5rem;
      text-align: left; }
    .pagebannerwrapper .overlapsub h2 {
      font-size: 7.5rem;
      text-align: left;
      opacity: 0.1; }
    .pagebannerwrapper .overlapsub h3:after, .pagebannerwrapper .overlapsub h1:after {
      background-color: #71706f;
      margin: 0;
      margin-top: 1rem;
      margin-bottom: 2rem; }
  .pagebannerwrapper .colourpaneltext p {
    font-size: 1.5rem !important; }

.gallerywrapper {
  text-align: center;
  margin-top: 30px; }
  .gallerywrapper img {
    display: inline-block;
    width: 31%;
    margin: 0 1%;
    height: auto; }

.col-xs-15,
.col-sm-15,
.col-md-15,
.col-lg-15 {
  position: relative;
  min-height: 1px;
  padding-right: 20px;
  padding-left: 20px; }

.col-xs-15 {
  width: 20%;
  float: left; }

@media (min-width: 768px) {
  .col-sm-15 {
    width: 20%;
    float: left; } }
@media (min-width: 992px) {
	nav > ul > li > a:hover{color:#830033;}
  .col-md-15 {
    width: 20%;
    float: left; } }
@media (min-width: 1200px) {
  .col-lg-15 {
    width: 20%;
    float: left; } }
@media only screen and (max-width: 1999px) {
  .iconswrapper .iconblock {
    font-size: 1.8rem;
    text-align: center;
    line-height: 1; }
    .iconswrapper .iconblock img {
      height: 50px;
      float: none;
      display: block;
      margin: auto;
      margin-bottom: 10px; } }
@media only screen and (max-width: 990px) {
  .curveimg {
    width: 30%; }
    .curveimg img {
      height: 100%;
      width: auto; } }
@media only screen and (max-width: 768px) {
  .iconswrapper {
    background-color: #F3F2F0; }
    .iconswrapper .iconblock {
      font-size: 1rem;
      font-weight: bold;
      padding-left: 0px !important;
      padding-right: 0px !important;
      text-align: center;
      line-height: 1; }
      .iconswrapper .iconblock img {
        height: 30px;
        float: none;
        display: block;
        margin: auto;
        margin-bottom: 10px; }

  .loyaltypointsbar {
    font-size: 1.2rem;
    padding: 1rem 0;
    font-weight: normal; }
    .loyaltypointsbar .whiteghostbtn {
      clear: both;
      float: right;
      font-size: 0.9rem; }

  .homepagecolumn:first-child {
    padding-right: 15px; }

  .homepagecolumn:last-child {
    padding-left: 15px; }

  .homepagecolumn {
    padding-top: 30px;
    padding-bottom: 30px; }

  .afflogos img {
    height: 20px;
    margin: 10px;
    display: inline-block; }

  .colourpaneltext {
    padding: 20px 15px; }
    .colourpaneltext p {
      font-size: 1.5rem; }
    .colourpaneltext .btn {
      font-size: 1.3rem !important; } }
@media only screen and (max-width: 580px) {
  .curveimg {
    width: 100%;
    position: relative;
    padding-bottom: 10px;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    -moz-mask-image: none !important; }
    .curveimg img {
      width: 100%;
      height: auto;
      position: relative;
      display: block; }

  .colourpanelwrapper .textbkg {
    display: none; }
  .colourpanelwrapper .colourpaneltext {
    text-align: center;
    padding: 0 15px 15px 15px;
    width: 100% !important; }
    .colourpanelwrapper .colourpaneltext p {
      font-size: 1.3rem; }
  .colourpanelwrapper .btn {
    font-size: 1rem !important; }
  .colourpanelwrapper .overlapsub h3:after {
    background-color: #fff; }
  .colourpanelwrapper input {
    font-size: 1.2rem !important;
    width: 150px;
    padding: 8px;
    margin-top: 5px; }

  header .greysubnav {
    background-color: transparent !important; }

  header .greysubnav .contactnumber {
    display: none !important; } }
/* Scss Document */
.footerlinks {
  float: left;
  color: #71706f; }
  .footerlinks a {
    color: #71706f;
    margin: 0 10px; }

.footersocial {
  float: left;
  margin-left: 20px; }
  .footersocial img {
    margin-right: 15px;
    width: 20px;
    display: inline-block;
    margin: 0 5px; }

.footercopy {
  text-align: right; }

footer {
  padding: 20px 0;
  font-size: 1.3rem; }

@media only screen and (max-width: 768px) {
  .footerlinks {
    float: none;
    margin: auto;
    margin-bottom: 20px;
    text-align: center; }

  .footersocial {
    float: none;
    margin: auto;
    margin-bottom: 20px;
    text-align: center; }

  .footercopy {
    float: none;
    margin: auto;
    margin-bottom: 20px;
    text-align: center; } }
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  display: none;
  float: right;
  padding: 5px 0 0 0;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }

.hamburger:hover {
  opacity: 0.7; }

.hamburger-box {
  width: 30px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 30px;
  height: 4px;
  background-color: #830033;
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease; }

.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block; }

.hamburger-inner::before {
  top: -10px; }

.hamburger-inner::after {
  bottom: -10px; }

/*
   * Boring
   */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none; }

.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg); }

.hamburger--boring.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0; }

.hamburger--boring.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg); }

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 2px; }

.hamburger--slider .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s; }

.hamburger--slider .hamburger-inner::after {
  top: 20px; }

.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg); }

.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
  opacity: 0; }

.hamburger--slider.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-90deg); }

@media only screen and (max-width: 990px) {
  .hamburger {
    display: block;
    float: right;
    max-width: 20%;
    margin-left: 5%; }

  .hamburger.is-active {
    background-color: #fff;
    z-index: 999;
    position: absolute;
    right: 20px; } }
/* Scss Document */
.filterwrapper input, .filterwrapper select {
  padding: 1rem;
  border: solid 1px #71706f;
  width: 100%;
  display: block;
  color: #71706f; }
.filterwrapper input:placeholder {
  color: #71706f; }
.filterwrapper .locationfield, .filterwrapper .datefield, .filterwrapper .peoplefield {
  background-repeat: no-repeat;
  background-position: 5px center;
  padding-left: 50px; }
.filterwrapper .locationfield {
  background-image: url(https://madisongrandhotel.com/templates/newmag/assets/images/location.svg);
  background-size: 40px; }
.filterwrapper .datefield {
  background-image: url(https://madisongrandhotel.com/templates/newmag/assets/images/calendar.svg);
  background-size: 25px; }
.filterwrapper .peoplefield {
  background-image: url(https://madisongrandhotel.com/templates/newmag/assets/images/login.svg);
  background-size: 20px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  padding-left: 30px; }
.filterwrapper .icon-down:after {
  content: '';
  position: absolute;
  right: 3rem;
  border-top: 6px solid #a9a093;
  z-index: 99;
  top: 50%;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  margin-top: -3px; }
.filterwrapper label {
  text-transform: uppercase;
  font-weight: bold;
  display: block; }
.filterwrapper .advancedtoggle {
  margin-bottom: 5px;
  text-transform: uppercase;
  cursor: pointer; }
  .filterwrapper .advancedtoggle .icon {
    display: inline-block; }
  .filterwrapper .advancedtoggle .icon:before {
    font-size: 2rem;
    margin-right: 5px;
    vertical-align: middle; }
  .filterwrapper .advancedtoggle .rotateicon {
    transform: rotate(45deg) !important;
    display: inline-block; }

.bannerfilter {
  padding: 2rem;
  background-color: #fff;
  margin-bottom: 30px;
  margin-top: 50px; }
  .bannerfilter input[type="submit"] {
    background-color: #830033;
    border: 0;
    color: #fff; }
  .bannerfilter label {
    color: #71706f; }

.topfilter {
  background-color: #676A6A;
  padding: 1rem 0;
  color: #fff; }
  .topfilter input[type="submit"] {
    background-color: transparent;
    border: solid 1px #fff;
    color: #fff;
    width: 100%; }
  .topfilter .whiteghostbtn {
    width: 100%;
    padding: 1rem 6px;
    font-size: 1.3rem; }
    .topfilter .whiteghostbtn .icon {
      float: right;
      padding-top: 5px;
      transform: rotate(90deg); }
    .topfilter .whiteghostbtn .rotateicon {
      transform: rotate(270deg); }
  .topfilter .advancedtoggle {
    margin-top: 10px; }
    .topfilter .advancedtoggle .icon:before {
      color: #fff; }

.stickyheader {
  position: fixed;
  top: -100px;
  width: 100%;
  z-index: 999;
  transition: 0.4s top cubic-bezier(0.3, 0.73, 0.3, 0.74);
  -webkit-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.3);
  padding: 0 !important; }

.searchrefinewrapper {
  margin: 2rem 0; }

.searchbody {
  margin: 1rem 0; }

.col-sidebar {
  padding-left: 0;
  padding-right: 1rem; }

.col-body {
  padding-right: 0;
  padding-left: 1rem; }

.searchresults .filterhidden {
  display: none;
  font-size: 1.5rem;
  min-width: 90px; }
  .searchresults .filterhidden .icon {
    float: right;
    padding-top: 3px; }
.searchresults .filterhidden2 {
  display: none;
  font-size: 1.5rem;
  min-width: 190px; }
  .searchresults .filterhidden2 .icon {
    transform: rotate(90deg);
    float: right;
    padding-top: 5px; }
  .searchresults .filterhidden2 .rotateicon {
    transform: rotate(270deg) !important; }

.searchresulttext {
  font-size: 2.5rem;
  color: #830033;
  font-weight: bold;
  margin-right: 20px; }

.searchresultbutton {
  font-size: 1.5rem !important;
  margin: 0 5px; }

.searchresultbutton.sractive {
  background-color: #000;
  color: #fff; }
  .searchresultbutton.sractive a {
    color: #fff; }

.searchrefine {
  text-align: right; }
  .searchrefine select {
    border: 0;
    background-color: #F3F2F0;
    color: #5e5d5c;
    margin: 0 10px;
    border-radius: 0;
    padding: 2rem;
    height: 40px; }

.travelideas .redbutton {
  display: block;
  width: 400px;
  max-width: 100%;
  margin: auto;
  margin-top: 15px; }

/*the container must be positioned relative:*/
.custom-select {
  position: relative;
  display: inline-block;
  margin: 0 5px; }

.custom-select select {
  display: none;
  /*hide original SELECT element:*/ }

.select-selected {
  background-color: #F3F2F0; }

/*style the arrow inside the select element:*/
.select-selected:after {
  position: absolute;
  content: "";
  top: 14px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #5e5d5c transparent transparent transparent; }

/*point the arrow upwards when the select box is open (active):*/
.select-selected.select-arrow-active:after {
  border-color: transparent transparent #5e5d5c transparent;
  top: 7px; }

/*style the items (options), including the selected item:*/
.select-items div, .select-selected {
  color: #5e5d5c;
  padding: 8px 30px 8px 8px;
  border: 0;
  border-color: transparent transparent rgba(0, 0, 0, 0.1) transparent;
  cursor: pointer; }

/*style items (options):*/
.select-items {
  position: absolute;
  background-color: #F3F2F0;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 99; }

/*hide the items when the select box is closed:*/
.select-hide {
  display: none; }

.select-items div:hover, .same-as-selected {
  background-color: rgba(0, 0, 0, 0.1); }

.sidebarfilter {
  padding: 20px !important; }
  .sidebarfilter h3 {
    text-transform: uppercase;
    font-weight: bold;
    margin: 0;
    margin-bottom: 20px;
    font-size: 2rem; }

.filterblock {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: solid 1px #cac8c9; }
  .filterblock .filtertitle {
    font-size: 1.5rem;
    margin-bottom: 10px; }
  .filterblock .filteroptions {
    max-height: 180px;
    overflow: auto;
    padding-right: 10px;
    overflow-x: hidden; }
  .filterblock .filternoscroll {
    max-height: none;
    overflow: visible; }
  .filterblock .filtercount {
    float: right;
    color: #5e5d5c; }

/* Customize the label (the container) */
.checkcontainer {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 7px;
  cursor: pointer;
  font-size: 1.5rem;
  font-weight: normal;
  color: #000;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .checkcontainer .labelspan {
    display: inline-block; }
  .checkcontainer .stars {
    font-size: 1.3rem;
    color: #cac8c9;
    display: inline-block; }
    .checkcontainer .stars .redstar {
      color: #830033; }

/* Hide the browser's default checkbox */
.checkcontainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer; }

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #fff;
  border: solid 1px #5e5d5c; }

/* On mouse-over, add a grey background color */
.checkcontainer:hover input ~ .checkmark {
  background-color: #fff;
  border: solid 1px #5e5d5c; }

/* When the checkbox is checked, add a blue background */
.checkcontainer input:checked ~ .checkmark {
  background-color: #830033;
  border: solid 1px #830033; }

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none; }

/* Show the checkmark when checked */
.checkcontainer input:checked ~ .checkmark:after {
  display: block; }

/* Style the checkmark/indicator */
.checkcontainer .checkmark:after {
  left: 6px;
  top: 2px;
  width: 7px;
  height: 12px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

.radiocontainer {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 7px;
  cursor: pointer;
  font-size: 1.5rem;
  font-weight: normal;
  color: #000;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/* Hide the browser's default radio button */
.radiocontainer input {
  position: absolute;
  opacity: 0; }

/* Create a custom radio button */
.radiomark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #fff;
  border: solid 1px #5e5d5c;
  background-color: #eee;
  border-radius: 50%; }

/* On mouse-over, add a grey background color */
.radiocontainer:hover input ~ .radiomark {
  background-color: #fff; }

/* When the radio button is checked, add a blue background */
.radiocontainer input:checked ~ .radiomark {
  background-color: #fff; }

/* Create the indicator (the dot/circle - hidden when not checked) */
.radiocheckmark:after {
  content: "";
  position: absolute;
  display: none; }

/* Show the indicator (dot/circle) when checked */
.radiocontainer input:checked ~ .radiomark:after {
  display: block;
  content: "";
  top: 3px;
  left: 3px;
  width: 12px;
  position: absolute;
  height: 12px;
  border-radius: 50%;
  background: #830033; }

/* Style the indicator (dot/circle) */
.radiocontainer .radiomark:after {
  top: 9px;
  left: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #830033; }

.hotelmapview {
  display: none; }

.advancedoptions {
  margin-top: 30px;
  display: none; }
  .advancedoptions .filterblock {
    border-bottom: 0;
    padding: 15px;
    background-color: #F3F2F0; }
    .advancedoptions .filterblock .filtertitle {
      font-size: 1.5rem;
      font-weight: bold;
      text-transform: uppercase; }
    .advancedoptions .filterblock .filteroptions label {
      text-transform: none;
      font-weight: normal;
      border-bottom: 0; }

@media only screen and (max-width: 1999px) {
  .topfilter .filtercol {
    padding: 0 5px !important; }
  .topfilter .advancedtoggle {
    font-size: 1rem; }

  .searchresulttext {
    font-size: 1.5rem; } }
@media only screen and (max-width: 990px) {
  .blackghostbtn {
    display: inline-block; }

  .sractive {
    display: none; }

  .filterhidden2 {
    display: inline-block; }

  .searchresults {
    text-align: center; }
    .searchresults .filterhidden2 {
      display: inline-block; }
      .searchresults .filterhidden2 .icon {
        transform: rotate(90deg); }

  .searchrefine {
    /*		text-align: center;
    		padding-top: 15px;
    		border-top: solid 1px $brandlightgrey;
    		width:80%;
    		margin: auto;
    		margin-top: 15px;
    		float: none !important;
    		clear: both;*/ } }
@media only screen and (max-width: 768px) {
  .searchresults {
    text-align: center; }
    .searchresults .filterhidden {
      display: inline-block; }
    .searchresults .filterhidden2 {
      display: none; }

  /*.searchrefine
  {
  	display: none;
  }*/
  .sidebarfilter {
    display: none; } }
@media only screen and (max-width: 768px) {
  .topfilter {
    padding-top: 0;
    margin-top: 10px; }

  .filtercolhidden {
    display: none; }

  .sidebarfilter {
    position: fixed;
    right: 0;
    height: 100%;
    width: 90%;
    box-shadow: 0px 0px 10000px #000;
    z-index: 999;
    bottom: 0;
    overflow: scroll; }
    .sidebarfilter h3 {
      margin-bottom: 40px; }
    .sidebarfilter .filterblock {
      padding-bottom: 10px;
      margin-bottom: 10px; }
      .sidebarfilter .filterblock .filtertitle {
        text-transform: uppercase;
        margin-bottom: 0; }
      .sidebarfilter .filterblock .filtertitle:after {
        font-family: 'icomoon';
        content: '\e908';
        transform: rotate(90deg);
        float: right; }
      .sidebarfilter .filterblock .filtertitleactive:after {
        transform: rotate(270deg); }
      .sidebarfilter .filterblock .filteroptions {
        display: none;
        overflow: visible;
        max-height: none;
        height: auto;
        margin-top: 30px;
        min-height: 55px; }
    .sidebarfilter .activefilterblock .filteroptions {
      display: block; }

  .searchresults .btn {
    font-size: 1.2rem !important;
    padding: 0.5rem !important;
    min-width: 70px; }
  .searchresults .searchresulttext {
    font-size: 1.3rem; } }
/* Scss Document */
.hotelblock {
  background-color: #fff;
  margin-bottom: 20px;
  position: relative; }

.hotelblockmap {
  max-width: 250px; }

.hotelblockimg {
  width: 30%;
  float: left;
  position: absolute;
  height: 100%;
  overflow: hidden;
  text-align: center; }
  .hotelblockimg img {
    height: 100%;
    width: auto; }

.hotelblockimgmap {
  width: 100%; }
  .hotelblockimgmap img {
    height: auto;
    width: 100%; }

.hotelblocktext {
  float: right;
  width: 70%;
  padding: 10px; }

.hoteldesc {
  float: left;
  width: 70%;
  padding: 20px;
  border-right: solid 1px #cac8c9; }

.hoteltop h2 {
  color: #5e5d5c;
  font-size: 2.5rem;
  margin: 0;
  font-weight: bold; }
.hoteltop .stars {
  float: right;
  font-size: 1.3rem;
  color: #5e5d5c;
  padding: 10px 0; }
  .hoteltop .stars .yellowstar.icon:before {
    color: #e58a1c; }

.hotelprice {
  float: right;
  width: 30%;
  padding: 20px; }

.hotellogo {
  margin-bottom: 25px; }
  .hotellogo img {
    max-width: 100%;
    width: 100px; }

.hotellocation {
  color: #5e5d5c;
  font-size: 1.3rem;
  margin: 10px 0;
  opacity: 0.7; }
  .hotellocation .icon {
    font-size: 1.5rem;
    margin-right: 5px; }

.hotelblurb {
  font-size: 1.5rem;
  color: #000; }

.pricewrapper {
  color: #5e5d5c;
  line-height: 1.2;
  margin-bottom: 20px; }

.mainprice {
  color: #000;
  font-size: 3rem;
  font-weight: bold; }

.hotelamenities {
  margin-top: 20px; }
  .hotelamenities .icon {
    font-size: 2rem;
    margin-right: 5px; }

.hotelmapcontent {
  padding: 10px;
  text-align: center; }
  .hotelmapcontent .hoteltop h2 {
    font-size: 15px; }
  .hotelmapcontent .hoteltop .stars {
    padding: 5px 0 !important;
    float: none; }
  .hotelmapcontent .hoteltop .hotellogo {
    margin-bottom: 10px !important; }
  .hotelmapcontent .pricewrapper {
    width: 50%;
    float: left;
    text-align: left;
    margin-bottom: 0; }
    .hotelmapcontent .pricewrapper .mainprice {
      display: inline-block; }
  .hotelmapcontent .redbutton {
    float: right;
    width: 50%;
    font-size: 15px; }

@media only screen and (max-width: 1999px) {
  .hotelprice .redbutton {
    font-size: 1.2rem; } }
@media only screen and (max-width: 990px) {
  .hotelblockimg {
    height: auto;
    width: 30%;
    position: relative;
    overflow: visible; }
    .hotelblockimg img {
      height: auto;
      width: 100%; }

  .hotelblockimg:after {
    content: ". ";
    height: 1px;
    background-color: #cac8c9;
    right: -225%;
    width: 215%;
    position: absolute;
    bottom: 0; }

  .hoteldesc {
    padding: 10px; }

  .hoteltop {
    float: right;
    width: 70%;
    padding-bottom: 20px; }
    .hoteltop .hotellogo {
      margin-bottom: 20px; }
      .hoteltop .hotellogo img {
        width: 80px; }
    .hoteltop h2 {
      font-size: 1.8rem;
      line-height: 1.2; }
      .hoteltop h2 .stars {
        float: none;
        display: inline-block;
        margin-left: 10px;
        padding: 0; }

  .hotelblocktext {
    width: 100%;
    float: none; }

  .hoteldesc {
    float: none;
    width: 100%;
    border-right: 0;
    border-bottom: solid 1px #cac8c9; }

  .hotelprice {
    float: none;
    width: 100%;
    padding: 10px; }

  .pricewrapper {
    width: 50%;
    float: left;
    margin: 0 10px; }
    .pricewrapper span {
      display: block; }
    .pricewrapper .mainprice {
      display: inline; }

  .redbutton {
    float: right; } }
@media only screen and (max-width: 990px) {
  .hotelblockimg {
    width: 40%; }

  .hoteltop {
    width: 60%;
    padding-left: 10px; }

  .hotelblockimg:after {
    right: -140%;
    width: 135%; }

  .hoteldesc {
    padding-top: 0; } }
@media only screen and (max-width: 768px) {
  .col-body, .col-sidebar {
    padding: 0 !important; } }
@media only screen and (max-width: 400px) {
  .hotellogo {
    margin-bottom: 10px !important; }

  .hoteltop h2 {
    font-size: 1.5rem;
    line-height: 1.2; }

  .hotelblockimg:after {
    display: none; }

  .pricewrapper span {
    display: inline; } }
/* Scss Document */
.sliderwrapper {
  padding-bottom: 10px; }

.slider-labels {
  margin-top: 10px; }

/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target, .noUi-target * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.noUi-target {
  position: relative;
  direction: ltr; }

.noUi-base {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
  /* Fix 401 */ }

.noUi-origin {
  position: absolute;
  right: 0;
  top: 0;
  left: 0;
  bottom: 0; }

.noUi-handle {
  position: relative;
  z-index: 1; }

.noUi-stacking .noUi-handle {
  /* This class is applied to the lower origin when
     its values is > 50%. */
  z-index: 10; }

.noUi-state-tap .noUi-origin {
  -webkit-transition: left 0.3s,top .3s;
  transition: left 0.3s,top .3s; }

.noUi-state-drag * {
  cursor: inherit !important; }

/* Painting and performance;
 * Browsers can paint handles in their own layer.
 */
.noUi-base, .noUi-handle {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

/* Slider size and handle placement;
 */
.noUi-horizontal {
  height: 4px; }

.noUi-horizontal .noUi-handle {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  left: -7px;
  top: -7px;
  background-color: #830033; }

/* Styling;
 */
.noUi-background {
  background: #D6D7D9; }

.noUi-connect {
  background: #830033;
  -webkit-transition: background 450ms;
  transition: background 450ms; }

.noUi-origin {
  border-radius: 2px; }

.noUi-target {
  border-radius: 2px; }

/* Handles and cursors;
 */
.noUi-draggable {
  cursor: w-resize; }

.noUi-vertical .noUi-draggable {
  cursor: n-resize; }

.noUi-handle {
  cursor: default;
  -webkit-box-sizing: content-box !important;
  -moz-box-sizing: content-box !important;
  box-sizing: content-box !important; }

.noUi-handle:active {
  border: 8px solid #830033;
  border: 8px solid rgba(53, 93, 187, 0.38);
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  left: -14px;
  top: -14px; }

/* Disabled state;
 */
[disabled].noUi-connect, [disabled] .noUi-connect {
  background: #B8B8B8; }

[disabled].noUi-origin, [disabled] .noUi-handle {
  cursor: not-allowed; }

/* Scss Document */
#map {
  height: 100%; }

.hotelmapview {
  height: 600px; }

/* Scss Document */
.singlehotelbanner {
  padding: 20px 0; }
  .singlehotelbanner .singlehotelcontact {
    background-color: #F3F2F0;
    color: #830033;
    font-size: 15px;
    padding: 10px; }
    .singlehotelbanner .singlehotelcontact .icon {
      margin-right: 10px; }
  .singlehotelbanner h1 {
    font-weight: bold;
    font-size: 3rem; }
  .singlehotelbanner .stars {
    font-size: 1.5rem; }
    .singlehotelbanner .stars .yellowstar {
      color: #e58a1c; }
  .singlehotelbanner .hotellocation {
    font-size: 1.5rem; }

.hotelbiggallery {
  width: 100%;
  margin-bottom: 20px; }
  .hotelbiggallery img {
    width: 100%;
    height: auto; }

.hotelthumbgallery {
  margin-bottom: 50px !important; }
  .hotelthumbgallery .slickitem {
    padding: 0 5px; }
    .hotelthumbgallery .slickitem img {
      width: 100%;
      height: auto; }
  .hotelthumbgallery .slick-prev {
    left: -30px;
    top: 50%; }
  .hotelthumbgallery .slick-next {
    right: -30px;
    top: 50%; }

.singlehotelsubnav {
  display: table;
  width: 100%;
  border-collapse: separate;
  border-spacing: 10px;
  margin-top: -60px;
  margin-bottom: 30px; }
  .singlehotelsubnav .singlehotelsubnavitem {
    display: table-cell;
    text-transform: uppercase;
    background-color: #830033;
    color: #fff;
    text-align: center;
    padding: 15px;
    font-size: 1.5rem; }
    .singlehotelsubnav .singlehotelsubnavitem a {
      color: #fff;
      text-decoration: none; }

.sectionpadding {
  padding: 3rem 0; }

.abouthotel {
  text-align: center; }
  .abouthotel p {
    font-size: 15px; }

.amenitieshotel {
  text-align: center;
  font-size: 15px; }
  .amenitieshotel .icon {
    margin-right: 10px; }
  .amenitieshotel .amenityblock {
    margin: 10px 0; }

.roomavailability {
  background-color: #fff;
  position: relative; }
  .roomavailability .roomavailabilityimg {
    width: 40%;
    position: relative;
    float: left; }
    .roomavailability .roomavailabilityimg img {
      width: 100%;
      height: auto; }
  .roomavailability .roomavailabilityimg:after {
    height: 1px;
    background-color: #cac8c9;
    width: 138%;
    position: absolute;
    right: -145%;
    content: "";
    bottom: 0; }
  .roomavailability .roomavailabilitytext {
    padding: 20px;
    float: right;
    width: 60%;
    text-align: left; }
    .roomavailability .roomavailabilitytext h2 {
      color: #830033;
      margin: 0;
      padding: 0;
      margin-bottom: 10px;
      font-size: 2rem;
      font-weight: bold;
      text-align: left; }
    .roomavailability .roomavailabilitytext .roomavailabilitysleeps {
      display: table;
      width: 100%;
      border-collapse: separate;
      border-spacing: 10px; }
      .roomavailability .roomavailabilitytext .roomavailabilitysleeps .bedspeople {
        background-color: #F3F2F0;
        padding: 10px;
        display: table-cell; }
        .roomavailability .roomavailabilitytext .roomavailabilitysleeps .bedspeople .icon {
          margin-right: 2px; }
        .roomavailability .roomavailabilitytext .roomavailabilitysleeps .bedspeople span {
          margin-left: 10px; }
    .roomavailability .roomavailabilitytext .roomavailabilityamenities {
      margin: 15px;
      text-align: center;
      padding-bottom: 15px; }
      .roomavailability .roomavailabilitytext .roomavailabilityamenities .amenityblock {
        margin: 5px 0; }
        .roomavailability .roomavailabilitytext .roomavailabilityamenities .amenityblock .icon {
          margin-right: 10px; }
  .roomavailability .roombookblock {
    border-bottom: solid 1px #cac8c9;
    margin: 20px;
    padding-bottom: 20px; }
  .roomavailability .roombookblocknodates .nextdate {
    background-color: #F3F2F0;
    color: #5e5d5c;
    padding: 10px; }
  .roomavailability .roombookblocknodates .trydate input {
    padding: 10px;
    border: solid 1px #5e5d5c;
    width: 100%; }
  .roomavailability .roombookblocknodates .nodates {
    font-size: 1.5rem; }
    .roomavailability .roombookblocknodates .nodates .redbutton {
      width: 100%;
      margin-top: 10px; }
  .roomavailability .roombookblock:last-child {
    border: 0; }
  .roomavailability .roombooktitle {
    font-size: 2rem;
    font-weight: bold;
    padding-top: 10px; }
  .roomavailability .roombookprice .pricewrapper {
    float: left;
    margin-bottom: 0; }
    .roomavailability .roombookprice .pricewrapper .pricestyle {
      font-size: 4rem;
      color: #000;
      font-weight: bold; }
  .roomavailability .roombookprice .redbutton {
    float: right;
    min-width: 130px; }

.pointsofinterest {
  font-size: 1.5rem; }
  .pointsofinterest table {
    width: 100%; }
  .pointsofinterest .tablebullet {
    color: #830033;
    font-size: 3rem;
    line-height: 1; }

@media only screen and (max-width: 990px) {
  .singlehotellogo {
    margin-bottom: 10px; }
    .singlehotellogo img {
      max-width: 150px; }

  .roomavailabilitywrapper {
    position: relative; }

  .roomavailability .roomavailabilityimg {
    position: absolute;
    height: 100%;
    text-align: center;
    overflow: hidden; }
    .roomavailability .roomavailabilityimg img {
      height: 100%;
      width: auto; }
  .roomavailability .roomavailabilityimg:after {
    display: none; } }
@media only screen and (max-width: 650px) {
  .roomavailability .roomavailabilityimg {
    position: relative;
    width: 100%;
    overflow: visible; }
    .roomavailability .roomavailabilityimg img {
      height: auto;
      width: 100%; }
  .roomavailability .roomavailabilitytext {
    padding: 10px;
    width: 100%;
    padding-bottom: 0; }
    .roomavailability .roomavailabilitytext .bedspeople {
      padding: 5px !important;
      font-size: 1.2rem; }
  .roomavailability .roomavailabilityamenities {
    margin-bottom: 0 !important;
    border-bottom: solid 1px #cac8c9; }
  .roomavailability .roombookprice .pricewrapper {
    width: 40%; } }
@media only screen and (max-width: 600px) {
  .singlehotelsubnav {
    display: block;
    width: 100%;
    text-align: center; }
    .singlehotelsubnav .singlehotelsubnavitem {
      display: inline-block;
      width: 30%;
      margin-bottom: 5px;
      padding: 5px;
      font-size: 1.2rem; } }
@media only screen and (max-width: 430px) {
  .singlehotelsubnav .singlehotelsubnavitem {
    min-height: 45px;
    display: inline-grid; } }
.brandwideblock {
  margin-bottom: 15px;
  margin-left: 0 !important;
  margin-right: 0 !important; }
  .brandwideblock .brandwideblockinner .brandshowcasetextinner {
    padding: 30px 15px; }
  .brandwideblock .brandshowcasetext {
    float: left !important; }
  .brandwideblock .brandshowcaseimg {
    margin: 0;
    padding: 0;
    float: right !important; }
    .brandwideblock .brandshowcaseimg img {
      height: auto;
      width: 100%; }

.greypanel {
  background-color: #F3F2F0; }

.whitepanel {
  background-color: #fff; }

.pagecontent {
  font-size: 1.5rem; }

.brandshowcasetext .hotellogo {
  margin-bottom: 10px; }
  .brandshowcasetext .hotellogo img {
    width: 150px; }

.pagebuilderpanel {
  font-size: 1.5rem; }

.brandnarrowblock {
  text-align: center;
  margin-bottom: 15px; }
  .brandnarrowblock .brandshowcaseimg {
    margin: 0;
    padding: 0; }
    .brandnarrowblock .brandshowcaseimg img {
      height: 100%;
      width: auto; }
  .brandnarrowblock .btn {
    display: block;
    margin: auto; }
  .brandnarrowblock .brandbkg {
    height: 100%; }
  .brandnarrowblock .brandshowcasetextinner {
    padding: 15px; }

.subpageblock h2 {
  margin: 0;
  margin-bottom: 10px;
  font-size: 2rem; }
.subpageblock .btn {
  display: block;
  margin: 0;
  margin-top: 15px !important;
  margin-bottom: 10px; }
.subpageblock .brandshowcasetextinner {
  text-align: left; }
.subpageblock .brandshowcaseimg {
  overflow: hidden;
  height: 100%;
  margin: 0;
  padding: 0; }
  .subpageblock .brandshowcaseimg img {
    height: 100%;
    width: auto;
    margin: auto;
    position: absolute;
    left: -25%; }
.subpageblock .brandwideblockinner {
  height: 100%; }

.row.display-flex {
  display: flex;
  flex-wrap: wrap; }

.row.display-flex > [class*='col-'] {
  display: flex;
  flex-direction: column; }

@media only screen and (max-width: 768px) {
  .brandwideblock .brandwideblockinner {
    position: relative; }
  .brandwideblock .brandshowcaseimg {
    position: absolute;
    right: 0;
    height: 100%;
    overflow: hidden; }
    .brandwideblock .brandshowcaseimg img {
      height: 100%;
      width: auto; }

  .subpageblock .brandshowcaseimg img {
    height: auto;
    width: 100%;
    position: relative;
    left: 0; } }
.paginationwrapper {
  text-align: center; }
  .paginationwrapper .pagination .page-numbers {
    border: solid 1px #830033;
    padding: 8px;
    margin: 0 5px; }
  .paginationwrapper .pagination .page-numbers.current {
    background-color: #830033;
    color: #fff; }
  .paginationwrapper .pagination .page-numbers.dots {
    border: 0;
    color: #830033; }

@media only screen and (max-width: 660px) {
  .subpageblock .brandshowcaseimg {
    width: 100%;
    float: none;
    margin-bottom: 15px; }
  .subpageblock .brandshowcasetext {
    width: 100%;
    float: none; } }
@media only screen and (max-width: 560px) {
  .brandwideblock {
    margin-left: 0 !important;
    margin-right: 0 !important; }
    .brandwideblock .brandshowcaseimg, .brandwideblock .brandshowcasetext {
      width: 100% !important;
      float: none !important; }
    .brandwideblock .brandshowcaseimg {
      position: relative; }
      .brandwideblock .brandshowcaseimg img {
        width: 100%;
        height: auto; } }
a:hover, a {
  text-decoration: none;
  color: #830033; }

h3 {
  margin: 0;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 15px; }

h4 {
  font-size: 2.8rem;
  color: #830033;
  font-weight: bold; }

.sectionpadding {
  padding: 3rem 0; }

.greysection {
  background-color: #F3F2F0; }

.whitesection {
  background-color: #fff;
  padding: 1rem; }

.icon {
  font-family: icomoon; }

.overlapsub {
  text-align: center; }
  .overlapsub h2 {
    font-size: 4em;
    font-weight: bold;
    text-transform: uppercase;
    opacity: 0.2;
    margin: 0; }
  .overlapsub h3, .overlapsub h1 {
    margin: 0;
    margin-top: -25px;
    font-size: 4rem;
    font-weight: bold; }
  .overlapsub h3:after, .overlapsub h1:after {
    content: "";
    max-width: 90%;
    width: 300px;
    background-color: #71706f;
    height: 1px;
    margin: auto;
    display: block;
    margin-top: 1rem;
    margin-bottom: 2rem; }

.chevroncta {
  text-align: center;
  display: block; }
  .chevroncta img {
    margin: auto;
    display: block;
    width: 35px;
    height: 35px; }

.redtext {
  color: #830033;
  font-weight: bold; }

.greytext {
  color: #5e5d5c;
  font-weight: bold; }

.btn {
  font-size: 1.8rem;
  padding: 1rem;
  border-radius: 0;
  font-weight: bold;
  text-transform: uppercase; }

.redbutton {
  color: #fff;
  background-color: #830033;
  border: 0; }
  .redbutton a {
    color: #fff;
    text-transform: uppercase; }

.whitebutton {
  background-color: #fff !important;
  border: 0; }
  .whitebutton a {
    color: #fff;
    text-transform: uppercase; }

.whiteghostbtn {
  border: solid 1px #fff;
  color: #fff;
  background-color: transparent;
  text-transform: uppercase;
  padding: 1rem; }
  .whiteghostbtn a {
    color: #fff; }

.mapandreviews {
  margin-top: 30px;
  margin-bottom: 15px; }

.homepagecontent, .roomavailability {
  font-size: 1.5rem; }

.whiteghostbtn.focus, .whiteghostbtn:focus, .whiteghostbtn:hover {
  color: #fff; }

.greyghostbtn {
  border: solid 1px #71706f;
  color: #71706f;
  background-color: transparent;
  text-transform: uppercase;
  padding: 1rem; }
  .greyghostbtn a {
    color: #71706f; }

.blackghostbtn {
  border: solid 1px #000;
  color: #000;
  background-color: transparent;
  text-transform: uppercase;
  padding: 1rem; }
  .blackghostbtn a {
    color: #000; }

.contactform input, .contactform textarea {
  width: 100%;
  padding: 1rem;
  border: solid 1px #71706f; }
.contactform textarea {
  height: 120px; }

.contactpanel {
  font-size: 1.5rem; }

.row.display-flex {
  display: flex;
  flex-wrap: wrap; }

.row.display-flex > [class*='col-'] {
  display: flex;
  flex-direction: column; }

/* width */
::-webkit-scrollbar {
  width: 10px; }

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1; }

/* Handle */
::-webkit-scrollbar-thumb {
  background: #888; }

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #555; }

@media only screen and (max-width: 1999px) {
  .overlapsub h2 {
    font-size: 3em; }
  .overlapsub h3, .overlapsub h1 {
    margin-top: -15px;
    font-size: 3rem; } }
@media only screen and (max-width: 990px) {
  .overlapsub h2 {
    font-size: 2.5em; }
  .overlapsub h3, .overlapsub h1 {
    margin-top: -10px;
    font-size: 2.5rem; } }
@media only screen and (max-width: 768px) {
  .overlapsub h2 {
    font-size: 2em;
    display: none; }
  .overlapsub h3, .overlapsub h1 {
    margin-top: 0;
    font-size: 2rem; }

  .filtercol .datefield {
    margin: 0; }

  .topfilterwrapper {
    padding-bottom: 0 !important; }
    .topfilterwrapper .icon-down:first-child {
      padding-right: 5px; }
    .topfilterwrapper .icon-down:last-child {
      padding-left: 5px; }
    .topfilterwrapper .icon-down:after {
      right: 15px; }
    .topfilterwrapper .filtercolhidden {
      margin-top: 5px; }

  #mapmini img {
    width: 100%; }

  .mapandreviews {
    display: none; }

  .singlehotelbanner h1 {
    font-size: 2rem; }

  .row.display-flex {
    display: block; }

  .row.display-flex > [class*='col-'] {
    display: block; }

  .travelideas .redbutton {
    font-size: 1.5rem !important; } }