/*
/* VARIABLES CSS
/*
=================================================*/
                           /*======================================


/*************************
********* GLOBAL *********
**************************/
body.page, body.single {
  color: #000000; }

a.disabled {
  opacity: 0.2;
  pointer-events: none; }

.custom-button .vc_general {
  font-size: 16px;
  text-transform: uppercase;
  line-height: 1em;
  padding-top: 14px; }
  .custom-button .vc_general:hover {
    background-color: rgba(0, 0, 0, 0.8) !important; }

.wpb_video_widget .wpb_video_wrapper .video {
  position: absolute !important;
  top: 0;
  width: 100%;
  height: 100%; }

.included_services {
  margin-top: 2rem;
  padding: 2rem 3rem;
  background-color: #f1f1f1; }

.included_services__title {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 1rem; }

.included_services__items .item {
  display: flex;
  margin-bottom: 0.5rem; }
  .included_services__items .item .text {
    font-size: 16px; }
  .included_services__items .item .icon {
    width: 2rem;
    height: 2rem;
    background: url("check-light.svg") no-repeat center;
    background-size: contain;
    margin-right: 1rem;
    margin-top: 0.3rem; }

/*************************
********* HEADER *********
**************************/
.awe-no-header-transparent #header_content {
  background-color: black; }

#header_content {
  background-color: transparent;
  transition: all ease-in-out 0.3s; }
  @media (min-width: 1200px) {
    #header_content .header_menu {
      display: flex;
      justify-content: center;
      align-items: center; } }
  #header_content .header_menu .menu > li .sub-menu li.current-menu-item > a {
    background-color: #000000; }
  #header_content .header_menu .menu > li .sub-menu li > a:hover {
    background-color: #000000; }
  #header_content .center-logo {
    margin: 0 2vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; }
    #header_content .center-logo img {
      transition: all ease-in-out 0.3s; }
    @media (min-width: 1200px) {
      #header_content .center-logo {
        flex: 0 0 120px; } }
  #header_content .header_logo {
    float: none;
    transition: all ease-in-out 0.3s; }
    #header_content .header_logo a {
      display: inline-block; }
  #header_content .menu-left,
  #header_content .menu-right {
    flex: 0 0 calc(40% - 60px); }
  @media (min-width: 1200px) {
    #header_content .menu-left .menu-container {
      display: flex;
      justify-content: flex-end; } }
  #header_content .blog-description {
    color: #ffffff;
    font-size: 1.4rem; }
  #header_content.header-sticky {
    background-color: black; }
    #header_content.header-sticky .menu > li > a {
      line-height: 60px; }
    #header_content.header-sticky .center-logo .header_logo {
      line-height: 50px; }
      #header_content.header-sticky .center-logo .header_logo img {
        max-height: 40px; }
    #header_content.header-sticky .center-logo .blog-description {
      display: none; }
  #header_content .logo-mobile {
    display: none; }
  #header_content.header_mobile {
    display: flex;
    justify-content: space-between; }
    #header_content.header_mobile:not(.header-sticky) {
      position: absolute; }
    #header_content.header_mobile .header_menu {
      width: 320px;
      right: -320px;
      top: 0 !important;
      background-color: #000000;
      padding-top: 4rem; }
      #header_content.header_mobile .header_menu .sub-menu {
        display: block; }
      #header_content.header_mobile .header_menu.active {
        right: 0; }
      #header_content.header_mobile .header_menu .center-logo {
        display: none; }
    #header_content.header_mobile .logo-mobile {
      display: block;
      padding: 1rem; }
      #header_content.header_mobile .logo-mobile .header_logo img {
        max-height: 40px; }
      #header_content.header_mobile .logo-mobile + .container {
        margin: 0; }
    #header_content.header_mobile .menu-bars {
      z-index: 1000; }
      #header_content.header_mobile .menu-bars.active, #header_content.header_mobile .menu-bars:hover {
        background-color: #000000; }
        #header_content.header_mobile .menu-bars.active span:after, #header_content.header_mobile .menu-bars.active span:before, #header_content.header_mobile .menu-bars:hover span:after, #header_content.header_mobile .menu-bars:hover span:before {
          background-color: #ffffff !important; }

/*************************
********* HOME *********
**************************/
.tp-static-layers {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center; }
  .tp-static-layers:before {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    left: 0; }
  .tp-static-layers .tp-caption {
    width: 90% !important;
    min-width: auto !important;
    margin: 0 auto !important;
    left: 0 !important;
    right: 0 !important;
    max-width: 1280px !important;
    white-space: normal !important; }
  .tp-static-layers .tp-mask-wrap {
    width: 100% !important; }
  .tp-static-layers .container-text {
    text-align: center; }
    .tp-static-layers .container-text h1 {
      font-size: 2rem !important;
      color: #ffffff !important;
      font-weight: normal !important;
      line-height: 1em !important; }
    .tp-static-layers .container-text .first-line {
      font-size: 4rem !important;
      font-weight: 700 !important;
      line-height: 1.2em !important;
      margin-bottom: 2rem;
      white-space: normal; }
      @media (min-width: 768px) {
        .tp-static-layers .container-text .first-line {
          font-size: 6rem !important; } }
      @media (min-width: 1200px) {
        .tp-static-layers .container-text .first-line {
          font-size: 8rem !important; } }
    .tp-static-layers .container-text .second-line {
      font-size: 3.5rem !important;
      line-height: 1.2em !important;
      white-space: normal; }
      @media (min-width: 768px) {
        .tp-static-layers .container-text .second-line {
          font-size: 5rem !important; } }
      @media (min-width: 1200px) {
        .tp-static-layers .container-text .second-line {
          font-size: 7rem !important; } }
    .tp-static-layers .container-text .flag {
      display: inline-block;
      background-color: #000000;
      padding: 13px 18px !important;
      margin-top: 6vh !important;
      font-size: 16px !important;
      font-weight: bold;
      color: #ffffff;
      line-height: 1em !important; }
  .tp-static-layers .tp-parallax-wrap .tp-loop-wrap,
  .tp-static-layers .tp-parallax-wrap .tp-mask-wrap {
    position: relative !important; }
  .tp-static-layers .tp-parallax-wrap:nth-child(2) {
    width: 100% !important;
    max-width: 720px !important;
    margin: 0 auto !important;
    bottom: 4vh !important;
    left: 0 !important;
    top: unset !important;
    right: 0 !important; }
    .tp-static-layers .tp-parallax-wrap:nth-child(2) .covid-box {
      background-color: white;
      position: relative;
      display: flex; }
      .tp-static-layers .tp-parallax-wrap:nth-child(2) .covid-box .covid-msg {
        color: #000000;
        padding: 15px !important;
        font-size: 12px !important;
        line-height: 1.2em !important; }
        .tp-static-layers .tp-parallax-wrap:nth-child(2) .covid-box .covid-msg b {
          font-size: 12px !important;
          line-height: 1.2em !important; }
        @media (min-width: 991px) {
          .tp-static-layers .tp-parallax-wrap:nth-child(2) .covid-box .covid-msg {
            font-size: 16px !important; }
            .tp-static-layers .tp-parallax-wrap:nth-child(2) .covid-box .covid-msg b {
              font-size: 16px !important; } }
      .tp-static-layers .tp-parallax-wrap:nth-child(2) .covid-box .covid-flag {
        padding: 12px 10px !important;
        color: #ffffff;
        font-size: 14px !important;
        background-color: #000000 !important;
        text-align: center !important;
        writing-mode: vertical-lr;
        transform: rotate(180deg); }

.wpb_content_element.wpb_revslider_element {
  margin-bottom: 0; }

.section-grey {
  background-color: #fafafa; }

.section-row {
  padding: 8vh 0 5vh; }

.section-intro-concept {
  padding: 6vh 0;
  background-color: #fafafa; }

.max-width680 {
  padding: 5vmin 5vmin 3vmin;
  background-color: #000000;
  color: white; }
  @media (min-width: 991px) {
    .max-width680 {
      max-width: 720px;
      transform: translateX(-20%); } }

.section-extras {
  padding-bottom: 6vh; }
  .section-extras .vc_icon_element {
    margin-bottom: 0; }
  .section-extras .wpb_wrapper .wpb_content_element p {
    line-height: 1.2em; }
  .section-extras .wpb_wrapper .wpb_content_element:last-child {
    margin-bottom: 0; }
  .section-extras .awe-special-heading h2,
  .section-extras .awe-special-heading .awe-subheading {
    line-height: 1em; }
    .section-extras .awe-special-heading h2 p,
    .section-extras .awe-special-heading .awe-subheading p {
      line-height: 1em; }
  .section-extras .custom-button-services {
    margin-bottom: 0; }
    .section-extras .custom-button-services .vc_general {
      background-color: white;
      background-image: none; }

.bg-black .vc_column-inner {
  background-color: #000000;
  color: white;
  padding: 10px 30px 30px !important; }

.guest-book_item {
  background-color: white; }
  .guest-book_item strong {
    display: block; }

.list-icon .wpb_wrapper .awe-icon2--grid li {
  display: flex;
  align-items: center;
  margin: 0.5rem 0; }
  .list-icon .wpb_wrapper .awe-icon2--grid li .awe-icon2__icon {
    font-size: 35px;
    width: 40px;
    height: 40px;
    line-height: 1em;
    text-align: center;
    margin-right: 2rem; }
  .list-icon .wpb_wrapper .awe-icon2--grid li p {
    font-size: 18px;
    margin: 0;
    line-height: 1.2em; }

.section-align-center {
  display: flex;
  flex-wrap: wrap;
  align-items: center; }
  .section-align-center .wpb_gallery_slides {
    margin-bottom: 0 !important; }
  @media (min-width: 991px) {
    .section-align-center {
      padding-bottom: 8vh; } }
  .section-align-center .wpb_images_carousel,
  .section-align-center .wpb_gallery {
    margin-bottom: 0; }
  .section-align-center .flexslider {
    box-shadow: none;
    border: none; }
    .section-align-center .flexslider .flex-control-nav,
    .section-align-center .flexslider .flex-direction-nav {
      display: none !important; }

.section-intro-photos {
  padding: 15px;
  background-color: #ffffff; }
  .section-intro-photos .wpb_wrapper .wpb_single_image {
    margin-bottom: 0; }
  @media (max-width: 990px) {
    .section-intro-photos.vc_row.vc_row-flex {
      display: flex;
      -webkit-flex-wrap: nowrap;
      flex-wrap: nowrap;
      overflow-x: scroll;
      overflow-y: hidden; }
    .section-intro-photos .vc_column_container {
      width: 45%;
      flex: 0 0 45%; } }
  @media (max-width: 767px) {
    .section-intro-photos .vc_column_container {
      width: 70%;
      flex: 0 0 70%; } }

.concept-home {
  background-color: #fafafa; }
  .concept-home .vc_column_container {
    max-width: 980px;
    margin: 0 auto; }
    .concept-home .vc_column_container .vc_column-inner {
      padding-top: 20px !important; }
  .concept-home .line-1 p,
  .concept-home .line-2 p {
    text-align: center;
    font-size: 20px;
    line-height: 1.2em; }
  .concept-home .line-3 p {
    text-align: center;
    font-size: 25px;
    line-height: 1.2em;
    font-weight: bold; }

@media (max-width: 767px) {
  .listing-room .room_item-2 .text {
    padding: 0 5%; } }
.listing-room .room_item-2 .text h2 a {
  color: #000000 !important; }
@media (min-width: 767px) and (max-width: 990px) {
  .listing-room .room_item-2 .text h2 {
    margin-top: 4rem; } }
.listing-room .room_item-2 .text p {
  font-size: 24px;
  line-height: 1.2em; }
.listing-room .room_item-2 .text ul {
  margin-bottom: 1rem; }
  .listing-room .room_item-2 .text ul li {
    font-size: 18px;
    padding: 0; }
.listing-room .room_item-2 .text .buttons {
  margin: 0 -1rem; }
.listing-room .room_item-2 .text .awe-btn {
  display: inline-block;
  font-weight: 500;
  font-size: 14px; }
.listing-room .room_item-2 .text .awe-btn-13 {
  display: inline-block;
  margin-bottom: 20px;
  margin: 1rem;
  font-size: 16px;
  color: #000000;
  font-weight: 700;
  text-decoration: underline; }
.listing-room .room_item-2 .text .custom-btn {
  margin: 1rem; }
.listing-room .room_item-2 .text .price {
  color: #000000;
  font-size: 18px;
  text-transform: initial; }
  .listing-room .room_item-2 .text .price .amount {
    font-weight: bold; }

/*************************
********* ROOMS SINGLE *********
**************************/
.single-apb_room_type #awe-plugin-booking {
  margin-top: 0; }
.single-apb_room_type .intro {
  position: relative;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }
  .single-apb_room_type .intro .img {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    width: 100%;
    height: 100%; }
    .single-apb_room_type .intro .img:after {
      display: block;
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.5); }
    .single-apb_room_type .intro .img img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center; }
  .single-apb_room_type .intro .content {
    position: relative;
    color: white;
    max-width: 680px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    .single-apb_room_type .intro .content h1 {
      font-size: 50px;
      color: white;
      text-align: center;
      margin-bottom: 3rem; }
    .single-apb_room_type .intro .content .text {
      font-size: 25px;
      line-height: 1.4em;
      text-align: center; }
      .single-apb_room_type .intro .content .text p {
        font-size: 25px;
        line-height: 1.4em; }
    .single-apb_room_type .intro .content .awe-btn {
      margin-top: 4rem;
      padding: 14px 30px;
      font-size: 16px; }
.single-apb_room_type #details {
  padding-top: 30px; }
.single-apb_room_type .book-button-fixed {
  display: none !important; }
.single-apb_room_type .apb-product_tab-header li a {
  font-size: 18px;
  color: #000000; }
.single-apb_room_type .apb-product_tab-header > li.active > a::after {
  background-color: #000000; }
.single-apb_room_type .apb-product_tab {
  max-width: 1170px;
  margin: 0 auto; }
.single-apb_room_type .tab-content #information p {
  font-size: 16px;
  color: #000000; }
.single-apb_room_type .tab-content #location iframe {
  display: block;
  width: 100% !important; }
.single-apb_room_type .room-detail_book .awe-btn {
  background-color: #000000;
  font-size: 16px; }
.single-apb_room_type .apb-container {
  width: 100%; }

/*************************
********* FOOTER *********
**************************/
.book-button-fixed {
  position: fixed;
  z-index: 9;
  right: 0;
  bottom: 0; }
  @media (max-width: 767px) {
    .book-button-fixed {
      display: block;
      width: 100%; } }
  .book-button-fixed a {
    text-transform: uppercase;
    font-size: 16px !important;
    padding: 14px 30px;
    line-height: 1em; }
    @media (max-width: 767px) {
      .book-button-fixed a {
        display: block;
        width: 100%; } }

.footer .footer_center {
  padding-bottom: 40px;
  background-color: #000000 !important; }
.footer .footer_bottom {
  background-color: #000 !important;
  color: #fff !important; }

/*************************
********** HOME **********
**************************/
.home-services .vc_figure-caption {
  font-size: 1.1em !important; }

/*************************
****** EXTRA OPTIONS *****
**************************/
.apb-package_text h4 {
  font-size: 19px !important; }
.apb-package_text p {
  margin-bottom: 2px !important;
  font-size: 16px !important; }

/*************************
********** AVIS **********
**************************/
.bouton-avis .vc_tta-panel-body {
  text-align: center !important; }
.bouton-avis .vc_tta-panel-heading {
  border-color: #000000 !important;
  background-color: #000000 !important;
  color: #FFF;
  text-align: center  !important; }
.bouton-avis .vc_tta-color-orange.vc_tta-style-modern .vc_tta-panel.vc_active .vc_tta-panel-title > a {
  color: #FFF !important; }

.vc_tta-color-orange.vc_tta-style-modern .vc_tta-panel.vc_active .vc_tta-panel-title > a {
  color: #FFF !important; }

.bouton-avis .vc_tta-controls-icon {
  display: none !important; }

.nf-form-fields-required {
  padding-top: 15px;
  font-style: italic; }

.checkbox-container.label-right .field-wrap,
.label-above .field-wrap,
.label-below .field-wrap {
  display: block !important;
  padding: 10px 4px; }

.border-bottom .field-wrap {
  border-bottom: 1px solid #eee;
  padding: 20px 4px !important; }

.nf-mp-header h3 {
  margin-bottom: 40px; }

.nf-field-description {
  margin-top: 10px; }

.nf-field-description p {
  font-size: 13px; }

#ninja_forms_required_items, .nf-field-container {
  margin-bottom: 0 !important; }

.checkbox-container.label-right label {
  text-transform: lowercase; }

.checkbox-container.label-right label:first-letter {
  text-transform: uppercase; }

.nf-form-content .checkbox-container.label-right label:after,
.listcheckbox-container .nf-field-element label:after {
  top: 0 !important; }

.nf-field-label {
  cursor: pointer; }

.checkbox-wrap .nf-field-element label:after,
.checkbox-wrap .nf-field-label label:after,
.listcheckbox-wrap .nf-field-element label:after,
.listcheckbox-wrap .nf-field-label label:after,
.checkbox-wrap .nf-field-element label.nf-checked-label:after,
.checkbox-wrap .nf-field-label label.nf-checked-label:after,
.listcheckbox-wrap .nf-field-element label.nf-checked-label:after,
.listcheckbox-wrap .nf-field-label label.nf-checked-label:after {
  border-color: #000000 !important;
  border-width: 2px !important; }

.checkbox-wrap .nf-field-element label.nf-checked-label:before,
.checkbox-wrap .nf-field-label label.nf-checked-label:before,
.listcheckbox-wrap .nf-field-element label.nf-checked-label:before,
.listcheckbox-wrap .nf-field-label label.nf-checked-label:before {
  font-size: 13px !important;
  color: #000000 !important;
  left: -25px !important; }

#nf-form-1-cont .nf-form-content .list-select-wrap .nf-field-element > div,
#nf-form-1-cont .nf-form-content input:not([type=button]),
#nf-form-1-cont .nf-form-content textarea {
  background-color: #FFF;
  border-color: #e4e4e4;
  border-width: 1px;
  border-style: solid;
  color: #333;
  padding: 7px 15px !important; }

.pika-prev,
.pika-next,
.pika-button {
  min-width: 0; }

#menu-item-764 a {
  background: #000000 !important;
  color: #fff !important; }

#menu-item-764 a:hover {
  color: #000000 !important;
  background: #fff !important; }

/*************************
********** SUBMENU **********
**************************/
@media (min-width: 1200px) {
  #header .menu {
    position: relative; }
    #header .menu > .menu-item-has-children:hover .sub-menu .sub-menu {
      visibility: visible;
      opacity: 1; }
    #header .menu > .menu-item-has-children > .sub-menu {
      width: 620px;
      left: -200px;
      display: flex; }
    #header .menu > .menu-item-has-children .sub-menu > .menu-item-has-children > a {
      font-size: 16px;
      font-weight: bold;
      padding-bottom: 0; }
      #header .menu > .menu-item-has-children .sub-menu > .menu-item-has-children > a:after {
        display: block;
        content: "";
        width: 20px;
        height: 2px;
        margin-top: 4px;
        background-color: black; }
    #header .menu > .menu-item-has-children .sub-menu > .menu-item-has-children:hover {
      background: transparent !important;
      color: black; }
      #header .menu > .menu-item-has-children .sub-menu > .menu-item-has-children:hover > a {
        background: transparent !important;
        cursor: initial;
        color: black; }
    #header .menu > .menu-item-has-children .sub-menu li {
      flex: 0 0 50%; }
      #header .menu > .menu-item-has-children .sub-menu li .sub-menu {
        width: auto;
        position: relative;
        top: 0;
        left: 0;
        padding: 1rem;
        transform: translate(0, 0);
        border: 0; }
        #header .menu > .menu-item-has-children .sub-menu li .sub-menu li a:before {
          display: inline-block;
          content: "";
          width: 8px;
          height: 2px;
          background-color: black;
          vertical-align: middle;
          margin-right: 10px; } }

/*# sourceMappingURL=custom.css.map */
