@import url(reset.css);
/* --------- */
/* VARIABLES */
/* --------- */
/**** COLOURS ****/
/**** FONTS ****/
/* -------------------------- */
/* MIXINS & RE-USABLE CLASSES */
/* -------------------------- */
.stop-scrolling {
  height: 100%;
  overflow: hidden; }

.hide {
  display: none; }

@media (min-width: 450px) {
  mb {
    display: none; } }

/* ------------ */
/* CSS: DEFAULT */
/* ------------ */
html, body {
  width: 100%;
  height: 100%;
  background: #EFEFEF;
  color: #3f3f3f;
  font-family: "europa", sans-serif;
  font-size: 1.1vw; }
  @media (max-width: 450px) {
    html, body {
      font-size: 4.8vw; } }

a {
  color: inherit;
  cursor: pointer;
  text-decoration: none; }

section {
  width: 100%;
  float: left;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  ms-box-sizing: border-box;
  moz-box-sizing: border-box;
  webkit-box-sizing: border-box; }

/* ------ */
/* HEADER */
/* ------ */
.header {
  height: 35vw;
  display: inline-block; }
  @media (max-width: 450px) {
    .header {
      height: auto;
      background-color: white; } }
  .header #bg-img-container {
    width: 100%;
    height: 90%;
    overflow: hidden;
    position: relative; }
    @media (max-width: 450px) {
      .header #bg-img-container {
        display: none; } }
    .header #bg-img-container #bg-img {
      width: 105%;
      height: 105%;
      background-image: url("../images/header.jpg");
      background-position: center;
      background-size: cover;
      z-index: 1;
      filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius='3');
      -webkit-filter: url(#blur-filter);
      filter: url(#blur-filter);
      -webkit-filter: blur(0.5vw);
      filter: blur(0.5vw);
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -o-transition: all 0.5s ease;
      transition: all 0.5s ease;
      left: 50%;
      position: absolute !important;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
  .header .inner {
    width: 65%;
    height: 100%;
    z-index: 9; }
    @media (min-width: 450px) {
      .header .inner {
        position: absolute !important;
        top: 0;
        left: 50%;
        position: absolute !important;
        -webkit-transform: translate(-50%);
        -ms-transform: translate(-50%);
        transform: translate(-50%); } }
    @media (max-width: 450px) {
      .header .inner {
        width: 100%; } }
    .header .inner #top {
      width: 100%;
      float: left; }
      @media (min-width: 450px) {
        .header .inner #top {
          height: 15%; } }
      .header .inner #top #left {
        background-color: #508E99;
        float: left;
        position: relative;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        ms-box-sizing: border-box;
        moz-box-sizing: border-box;
        webkit-box-sizing: border-box; }
        @media (min-width: 450px) {
          .header .inner #top #left {
            width: 25%;
            height: 100%; } }
        @media (max-width: 450px) {
          .header .inner #top #left {
            width: 50%;
            height: 100%; } }
        .header .inner #top #left #logo {
          color: white;
          font-family: "mono45-headline", monospace;
          font-size: 125%;
          letter-spacing: 0.02vw;
          line-height: 125%;
          white-space: nowrap;
          text-align: center;
          text-transform: uppercase;
          padding-top: 0.2vw; }
          @media (min-width: 450px) {
            .header .inner #top #left #logo {
              left: 50%;
              position: absolute !important;
              top: 50%;
              -webkit-transform: translate(-50%, -50%);
              -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); } }
          @media (max-width: 450px) {
            .header .inner #top #left #logo {
              width: 100%;
              height: 100%;
              font-size: 230%;
              text-align: left;
              margin-top: 2vw;
              padding: 3vw; } }
      .header .inner #top #right {
        background-color: rgba(0, 0, 0, 0.5);
        float: right;
        position: relative;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        ms-box-sizing: border-box;
        moz-box-sizing: border-box;
        webkit-box-sizing: border-box; }
        @media (min-width: 450px) {
          .header .inner #top #right {
            width: 75%;
            height: 100%; } }
        @media (max-width: 450px) {
          .header .inner #top #right {
            width: 50%; } }
        .header .inner #top #right #nav {
          padding-bottom: 0.1vw;
          white-space: nowrap; }
          @media (min-width: 450px) {
            .header .inner #top #right #nav {
              padding: 1vw;
              left: 50%;
              position: absolute !important;
              top: 50%;
              -webkit-transform: translate(-50%, -50%);
              -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); } }
          @media (max-width: 450px) {
            .header .inner #top #right #nav {
              padding: 3vw; } }
          .header .inner #top #right #nav a {
            border-bottom: 0.2vw solid transparent;
            color: white;
            font-size: 105%;
            font-weight: bolder;
            margin-left: 1.3vw;
            opacity: 0.6;
            padding-bottom: 0.2vw;
            -webkit-transition: all 0.2s ease;
            -moz-transition: all 0.2s ease;
            -o-transition: all 0.2s ease;
            transition: all 0.2s ease;
            -webkit-touch-callout: none;
            -webkit-user-select: none;
            -khtml-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none;
            user-select: none; }
            @media (max-width: 450px) {
              .header .inner #top #right #nav a {
                border-width: 0 !important;
                display: block;
                font-size: 130%;
                line-height: 130%;
                margin-left: 0 !important;
                text-align: right;
                opacity: 1; } }
            .header .inner #top #right #nav a:nth-of-type(1) {
              margin-left: 0; }
            .header .inner #top #right #nav a:hover {
              border-bottom: 0.2vw solid rgba(255, 255, 255, 0.2);
              opacity: 1; }
          .header .inner #top #right #nav a.selected {
            border-bottom-color: #508E99;
            cursor: default;
            opacity: 1; }
            .header .inner #top #right #nav a.selected:hover {
              opacity: 1; }
    .header .inner #slider {
      width: 100%;
      height: 85%;
      float: left;
      position: relative;
      -webkit-box-shadow: 0 0 1.8vw 0 rgba(33, 33, 33, 0.6);
      -moz-box-shadow: 0 0 1.8vw 0 rgba(33, 33, 33, 0.6);
      box-shadow: 0 0 1.8vw 0 rgba(33, 33, 33, 0.6); }
      @media (max-width: 450px) {
        .header .inner #slider {
          height: 80vw; } }
      .header .inner #slider .img {
        width: 100%;
        height: 100%;
        background-position: center;
        background-size: cover;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease; }

/* --------- */
/* CONTAINER */
/* --------- */
.container {
  padding-bottom: 4.5vw;
  padding-top: 1.9vw; }
  @media (max-width: 450px) {
    .container {
      padding-bottom: 13.5vw;
      padding-top: 5.7vw; } }
  .container .inner {
    width: 65%;
    height: 30vw;
    margin: 0 auto;
    position: relative; }
    @media (max-width: 450px) {
      .container .inner {
        width: 90%;
        height: 30vw;
        margin: 0 auto;
        position: relative; } }
  .container #success {
    border-left: 0.2vw solid #7CC464;
    font-size: 95%;
    padding-left: 0.7vw;
    line-height: 130%; }
  .container #content {
    width: 71%;
    float: left; }
    @media (max-width: 450px) {
      .container #content {
        width: 100%; } }
    .container #content input, .container #content textarea, .container #content select {
      width: 40%;
      background-color: white;
      margin-bottom: 0.4vw;
      border: 0.15vw solid #CCCCCC;
      display: inline-block;
      font-size: 80%;
      padding: 1vw;
      resize: none;
      -webkit-appearance: none;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      ms-box-sizing: border-box;
      moz-box-sizing: border-box;
      webkit-box-sizing: border-box; }
      @media (max-width: 450px) {
        .container #content input, .container #content textarea, .container #content select {
          width: 100%;
          border-radius: 0;
          margin-bottom: 3vw;
          padding: 3vw;
          padding-top: 2vw; } }
    .container #content select {
      border-radius: 0;
      cursor: pointer;
      padding: 1vw;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none; }
      @media (max-width: 450px) {
        .container #content select {
          padding: 3vw;
          padding-top: 2vw; } }
      .container #content select:hover {
        opacity: 0.6; }
    .container #content textarea {
      width: 65%;
      height: 10vw; }
      @media (max-width: 450px) {
        .container #content textarea {
          width: 100%;
          height: 40vw;
          padding-left: 1vw; } }
    .container #content #submit-btn {
      width: auto !important;
      border-radius: 25vw;
      cursor: pointer;
      display: inline-block;
      font-size: 90%;
      font-weight: bolder;
      margin-top: 1.1vw;
      padding: 1vw 2vw 1vw 2vw;
      -webkit-transition: all 0.2s ease;
      -moz-transition: all 0.2s ease;
      -o-transition: all 0.2s ease;
      transition: all 0.2s ease; }
      @media (max-width: 450px) {
        .container #content #submit-btn {
          padding-left: 5vw;
          padding-right: 5vw; } }
      .container #content #submit-btn:hover {
        opacity: 0.3; }
    .container #content #total-price {
      color: #7CC464;
      font-size: 110%;
      font-weight: bolder;
      padding-left: 0.9vw; }
    .container #content #input-title {
      font-size: 70%;
      margin-bottom: 0.6vw;
      margin-top: 0.6vw;
      opacity: 0.6;
      text-transform: uppercase; }
      @media (max-width: 450px) {
        .container #content #input-title {
          margin-bottom: 2vw;
          margin-top: 2vw; } }
    .container #content h1 {
      color: #508E99;
      font-size: 185%;
      font-weight: bolder;
      line-height: 125%; }
      @media (max-width: 450px) {
        .container #content h1 {
          line-height: 120%; } }
    .container #content #desc {
      font-size: 112%;
      font-weight: 500;
      line-height: 130%;
      margin-top: 1.7vw; }
      @media (max-width: 450px) {
        .container #content #desc {
          line-height: 135%;
          margin-top: 5vw; } }
      .container #content #desc pre {
        white-space: pre-wrap; }
      .container #content #desc b {
        font-weight: bolder; }
      .container #content #desc a {
        border-bottom: 0.15vw solid #508E99;
        opacity: 0.8;
        padding-bottom: 0.05vw;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease; }
        .container #content #desc a:hover {
          opacity: 1; }
      .container #content #desc #service_icons {
        margin-bottom: 1.8vw;
        margin-top: 1.5vw; }
        .container #content #desc #service_icons .icn {
          margin-left: 0.5vw; }
          .container #content #desc #service_icons .icn:nth-of-type(1) {
            margin-left: 0; }
      .container #content #desc h2 {
        width: 100%;
        border-top: 0.1vw solid #CCCCCC;
        color: #508E99;
        font-size: 90%;
        font-weight: bolder;
        letter-spacing: 0.02vw;
        margin-bottom: 1.1vw;
        padding-top: 0.6vw;
        text-transform: uppercase; }
      .container #content #desc ul li {
        width: 100%;
        list-style-type: circle;
        text-decoration: none;
        float: left; }
        @media (max-width: 450px) {
          .container #content #desc ul li {
            margin-left: 12vw; } }
  .container #sidebar {
    width: 26%;
    float: right; }
    @media (max-width: 450px) {
      .container #sidebar {
        display: none; } }
    .container #sidebar > div {
      width: 100%;
      border-bottom: 0.2vw solid #CCCCCC;
      border-top: 0.2vw solid #CCCCCC;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      ms-box-sizing: border-box;
      moz-box-sizing: border-box;
      webkit-box-sizing: border-box; }
    .container #sidebar .book-now {
      width: 100%;
      background-color: #508E99;
      color: white;
      display: inline-block;
      font-size: 110%;
      font-weight: bolder;
      padding: 1.3vw;
      text-align: center;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      ms-box-sizing: border-box;
      moz-box-sizing: border-box;
      webkit-box-sizing: border-box;
      -webkit-box-shadow: 0 0 0.7vw 0 rgba(33, 33, 33, 0.4);
      -moz-box-shadow: 0 0 0.7vw 0 rgba(33, 33, 33, 0.4);
      box-shadow: 0 0 0.7vw 0 rgba(33, 33, 33, 0.4);
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .container #sidebar .book-now:hover {
        opacity: 0.75;
        -webkit-box-shadow: 0 0 1vw 0 rgba(33, 33, 33, 0.5);
        -moz-box-shadow: 0 0 1vw 0 rgba(33, 33, 33, 0.5);
        box-shadow: 0 0 1vw 0 rgba(33, 33, 33, 0.5); }
      .container #sidebar .book-now::after {
        content: "Book Now"; }
    .container #sidebar .reservation {
      background-color: rgba(0, 0, 0, 0.1);
      display: none;
      padding: 1vw;
      padding-top: 1.1vw;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      ms-box-sizing: border-box;
      moz-box-sizing: border-box;
      webkit-box-sizing: border-box; }
      .container #sidebar .reservation h1 {
        font-weight: bolder;
        text-align: center; }
      .container #sidebar .reservation input, .container #sidebar .reservation select {
        width: 100%;
        border: 0;
        font-size: 80%;
        margin-top: 0.5vw;
        padding: 0.5vw;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        ms-box-sizing: border-box;
        moz-box-sizing: border-box;
        webkit-box-sizing: border-box; }
        .container #sidebar .reservation input:nth-of-type(1), .container #sidebar .reservation select:nth-of-type(1) {
          margin-top: 0; }
      .container #sidebar .reservation a {
        display: inline-block;
        font-size: 80%;
        margin-top: 1.5vw; }
        .container #sidebar .reservation a:hover {
          text-decoration: underline; }
      .container #sidebar .reservation span {
        display: inline-block;
        font-size: 80%;
        line-height: 120%;
        margin-top: 0.85vw;
        opacity: 0.7; }
    .container #sidebar .contact {
      background-color: #FCFCFC;
      margin-top: 1vw;
      padding: 1vw;
      padding-top: 1.1vw;
      text-align: center;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      ms-box-sizing: border-box;
      moz-box-sizing: border-box;
      webkit-box-sizing: border-box; }
      .container #sidebar .contact h1 {
        font-weight: bolder; }
      .container #sidebar .contact .item {
        border-top: 0.1vw solid #CCCCCC;
        margin-top: 1.1vw;
        padding-top: 1.1vw; }
        .container #sidebar .contact .item h2 {
          font-size: 80%;
          opacity: 0.8;
          text-transform: uppercase; }
        .container #sidebar .contact .item p, .container #sidebar .contact .item a {
          display: inline-block;
          font-size: 93%;
          line-height: 130%;
          margin-top: 0.5vw; }
          .container #sidebar .contact .item p span, .container #sidebar .contact .item a span {
            font-size: 80%;
            opacity: 0.8; }
        .container #sidebar .contact .item a {
          border-bottom: 0.15vw solid #508E99; }
          .container #sidebar .contact .item a:hover {
            opacity: 0.5; }

/* -------- */
/* LOCATION */
/* -------- */
#location #GMaps {
  margin-top: 2vw; }
  @media (max-width: 450px) {
    #location #GMaps {
      margin-top: 6vw; } }
  #location #GMaps h3 {
    font-size: 105%;
    font-weight: bolder;
    line-height: 130%; }
    #location #GMaps h3 .icn {
      opacity: 0.5;
      margin-right: 0.3vw; }
  #location #GMaps a {
    color: #508E99;
    display: inline-block;
    line-height: 130%;
    margin-bottom: 0.4vw; }
    @media (max-width: 450px) {
      #location #GMaps a {
        margin-bottom: 5vw; }
        #location #GMaps a:hover {
          opacity: 1 !important; } }
    #location #GMaps a:nth-of-type(1) {
      margin-bottom: 0.7vw; }
    #location #GMaps a:hover {
      opacity: 0.5; }
    #location #GMaps a .icn {
      font-size: 85%;
      margin-left: 0.3vw;
      margin-right: 0.3vw;
      opacity: 0.6; }
  #location #GMaps .item {
    width: 100%;
    border-bottom: 0.2vw solid #CCCCCC;
    margin-top: 2vw; }
    @media (max-width: 450px) {
      #location #GMaps .item {
        margin-top: 6vw; } }
    #location #GMaps .item h3 {
      background-color: white;
      border-top: 0.2vw solid #508E99;
      display: block;
      font-size: 110%;
      font-weight: bolder;
      padding: 1vw;
      padding-top: 0.8vw;
      text-align: center;
      text-transform: capitalize;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      ms-box-sizing: border-box;
      moz-box-sizing: border-box;
      webkit-box-sizing: border-box; }
      @media (max-width: 450px) {
        #location #GMaps .item h3 {
          padding: 3vw; } }
      #location #GMaps .item h3 .icn {
        font-size: 80%;
        margin-left: 0.7vw;
        margin-right: 0.7vw;
        opacity: 0.5; }
    #location #GMaps .item iframe {
      width: 100%;
      height: 30vw; }
      @media (max-width: 450px) {
        #location #GMaps .item iframe {
          height: 90vw; } }

/* ----- */
/* ROOMS */
/* ----- */
#rooms #grid {
  margin-top: 3.5vw; }
  @media (max-width: 450px) {
    #rooms #grid {
      margin-top: 5vw; } }
  #rooms #grid .item {
    width: 32%;
    float: left;
    margin-left: 2%;
    margin-top: 2%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    ms-box-sizing: border-box;
    moz-box-sizing: border-box;
    webkit-box-sizing: border-box;
    -webkit-box-shadow: 0 0 0.7vw 0 rgba(33, 33, 33, 0.4);
    -moz-box-shadow: 0 0 0.7vw 0 rgba(33, 33, 33, 0.4);
    box-shadow: 0 0 0.7vw 0 rgba(33, 33, 33, 0.4); }
    #rooms #grid .item:nth-of-type(1), #rooms #grid .item:nth-of-type(3n+1) {
      margin-left: 0; }
    #rooms #grid .item:nth-of-type(-n+3) {
      margin-top: 0; }
    @media (max-width: 450px) {
      #rooms #grid .item {
        width: 100%;
        margin-left: 0 !important;
        margin-top: 5vw !important; } }
    #rooms #grid .item > div, #rooms #grid .item a {
      width: 100%;
      float: left;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      ms-box-sizing: border-box;
      moz-box-sizing: border-box;
      webkit-box-sizing: border-box; }
    #rooms #grid .item #title {
      width: 100%;
      background-color: rgba(0, 0, 0, 0.7);
      color: white;
      padding: 0.8vw;
      position: relative; }
      @media (max-width: 450px) {
        #rooms #grid .item #title {
          padding: 3vw; } }
      #rooms #grid .item #title h3 {
        float: left;
        font-size: 105%; }
      #rooms #grid .item #title span {
        float: right;
        opacity: 0.9; }
        #rooms #grid .item #title span .fa-user {
          font-size: 90%; }
    #rooms #grid .item #img {
      height: 14.5vw;
      background-position: center;
      background-size: cover; }
      @media (max-width: 450px) {
        #rooms #grid .item #img {
          height: 60vw; } }
    #rooms #grid .item #item_desc {
      background-color: rgba(0, 0, 0, 0.1);
      display: none;
      line-height: 130%;
      padding: 0.8vw; }
      @media (max-width: 450px) {
        #rooms #grid .item #item_desc {
          padding: 3vw; } }
      #rooms #grid .item #item_desc ul li {
        list-style: circle;
        margin-left: 1.35vw; }
    #rooms #grid .item a {
      color: white;
      padding: 0.8vw;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -o-transition: all 0.5s ease;
      transition: all 0.5s ease; }
      @media (max-width: 450px) {
        #rooms #grid .item a {
          padding: 3vw; } }
      #rooms #grid .item a:hover {
        opacity: 0.5; }
      #rooms #grid .item a span {
        font-weight: bolder; }
      #rooms #grid .item a .icn {
        float: right; }
    #rooms #grid .item a#more-info {
      background-color: #508E99; }
    #rooms #grid .item a#price {
      background-color: #7CC464; }

/* --------------- */
/* (SINGULAR) ROOM */
/* --------------- */
#room #content a#back-to-rooms {
  display: inline-block;
  margin-bottom: 1vw;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease; }
  #room #content a#back-to-rooms:hover {
    opacity: 0.5; }

#room #content #images {
  float: left;
  margin-top: 3vw; }
  #room #content #images img {
    width: 100%;
    float: left;
    margin-top: 2vw;
    -webkit-box-shadow: 0 0.3vw 1.3vw 0 rgba(53, 53, 53, 0.25);
    -moz-box-shadow: 0 0.3vw 1.3vw 0 rgba(53, 53, 53, 0.25);
    box-shadow: 0 0.3vw 1.3vw 0 rgba(53, 53, 53, 0.25); }
    #room #content #images img:nth-of-type(1) {
      margin-top: 0; }

/* ---- */
/* MENU */
/* ---- */
#menu table {
  background-color: white;
  border-bottom: 0.2vw solid #508E99;
  border-top: 0.2vw solid #508E99;
  display: inline-block;
  margin-top: 2vw;
  padding: 1vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  ms-box-sizing: border-box;
  moz-box-sizing: border-box;
  webkit-box-sizing: border-box; }
  @media (max-width: 450px) {
    #menu table {
      width: 100%;
      border-width: 1vw;
      margin-top: 7vw;
      padding: 4vw; } }
  #menu table tr {
    border-bottom: 0.1vw solid #CCCCCC;
    display: block;
    padding-bottom: 1.5vw;
    padding-top: 1.3vw; }
    @media (max-width: 450px) {
      #menu table tr {
        padding-bottom: 4.7vw;
        padding-top: 3.9vw; } }
    #menu table tr:nth-of-type(1) {
      padding-top: 0; }
    #menu table tr:nth-last-of-type(1) {
      border-bottom: 0;
      padding-bottom: 0.4vw; }
    #menu table tr td {
      font-size: 110%;
      line-height: 135%; }
      #menu table tr td:nth-last-of-type(1) {
        padding-right: 0; }
    #menu table tr .menu_item {
      width: 13vw;
      font-weight: bolder; }
    #menu table tr .menu_type {
      width: 14vw;
      opacity: 0.8; }
      @media (max-width: 450px) {
        #menu table tr .menu_type {
          width: 40%; } }
    #menu table tr .menu_price {
      text-align: right; }
      @media (max-width: 450px) {
        #menu table tr .menu_price {
          width: 20%; } }

/* ------- */
/* CONTACT */
/* ------- */
#contact #success {
  margin-top: 1.5vw; }

#contact #contact_form {
  margin-top: 1.5vw; }
  @media (max-width: 450px) {
    #contact #contact_form {
      margin-top: 5vw; } }
  #contact #contact_form #msg {
    width: 100% !important;
    height: 10vw; }
    @media (max-width: 450px) {
      #contact #contact_form #msg {
        height: 40vw; } }

#contact #desc a {
  color: black;
  font-weight: bolder; }
  #contact #desc a:hover {
    opacity: 1; }

#contact #desc p {
  font-size: 90%;
  opacity: 0.75; }

/* ------------------ */
/* ONLINE RESERVATION */
/* ------------------ */
#reserve #success {
  margin-bottom: 1.5vw; }

#reserve #reserve_form #rooms-link {
  font-size: 90%;
  margin-bottom: 0.3vw;
  margin-top: 0.3vw;
  opacity: 0.8; }
  #reserve #reserve_form #rooms-link a {
    border-bottom: 0.1vw solid #508E99; }
    #reserve #reserve_form #rooms-link a:hover {
      opacity: 0.5; }

#reserve #desc p {
  font-size: 90%;
  opacity: 0.8; }

/* ------ */
/* FOOTER */
/* ------ */
#footer {
  background-color: #CCCCCC;
  border-top: 0.1vw solid rgba(0, 0, 0, 0.1);
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  ms-box-sizing: border-box;
  moz-box-sizing: border-box;
  webkit-box-sizing: border-box; }
  #footer p {
    font-size: 90%;
    padding: 1vw; }
    @media (max-width: 450px) {
      #footer p {
        font-size: 110%;
        padding: 3vw; } }

#scroll-up {
  bottom: 1.5vw;
  border-radius: 50%;
  font-size: 150%;
  position: fixed;
  right: 1.5vw;
  z-index: 99999;
  -webkit-box-shadow: 0 0 0.5vw 0 rgba(33, 33, 33, 0.5);
  -moz-box-shadow: 0 0 0.5vw 0 rgba(33, 33, 33, 0.5);
  box-shadow: 0 0 0.5vw 0 rgba(33, 33, 33, 0.5);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease; }
  @media (max-width: 450px) {
    #scroll-up {
      bottom: 3.5vw;
      font-size: 170%;
      right: 3.5vw; }
      #scroll-up:hover {
        opacity: 1 !important; } }
  #scroll-up:hover {
    opacity: 0.5; }
