.vahaui {
  body *:not(.fa):not(.far):not(.fas):not(.fal) {
    font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
  }

  .sp-page-title {
    background: transparent;
    padding-left: 150px;
    max-width:1200px;
    margin:auto;
  }

  h1,
  h2,
  h3,
  .sp-page-title-heading,
  .blog .article-header h2 a,
  .sppb-article-info-wrap h3 a,
  .sppb-addon-articles .sppb-article-info-wrap h2 a,
  .sppb-title-heading,
  .vblistroomnamediv {
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-style: normal;
  }

  .sp-page-title-heading,
  .page-header h1,
  .sppb-title-heading,
  h3.sppb-addon-title,
  .h3,
  h3.h3,
  h3,
  .vblistroomnamediv {
    background: transparent;
    font-size: 2.4rem !important;
    font-weight: 700 !important;
    color: #1e4c66 !important;
    line-height: 1 !important;
    margin-bottom: 3rem;

    span {
      display: block;
      font-family: "Jost", sans-serif;
      font-weight: 300 !important;
      font-size: 1.25rem !important;
      text-transform: uppercase;
      color: #000;
    }
  }

  .vblistroomblock .vbo-info-room {
    align-items: start;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .vblistroomcat,
  .sp-page-title-sub-heading,
  .sp-page-title .sp-page-title-sub-heading,
  .sp-page-title h2.sp-page-title-sub-heading {
    display: block;
    font-family: "Jost", sans-serif;
    font-weight: 300 !important;
    font-size: 1.25rem !important;
    text-transform: uppercase;
    color: #000 !important;
  }
  .vbclistheadt,
  .vblistroomcat {
    display: none;
  }
  .sppb-title-heading {
    padding-left: 150px;
  }

  .sppb-article-info-wrap {
    a {
      color: #000;

      &:hover {
        color: #6099ba;
      }
    }

    h3 a {
      font-size: 2rem;
      font-weight: 700;
    }
  }

  .sppb-addon-text-block,
  .sppb-addon-articles,
  .sppb-addon-gallery,
  .sppb-addon-ajax-contact,
  .sppb-addon-articles {
    h3.sppb-addon-title {
      color: #fff !important;
      margin-left: 150px;
      text-align: left;

      span {
        color: rgba(255, 255, 255, 0.5);
      }
    }
  }
  .sppb-title-heading,
  .sppb-addon-text-block,
  .sppb-addon-articles {
    h3.sppb-addon-title {
      color: #1e4c66 !important;

      span {
        color: rgba(0, 0, 0, 0.9);
      }
    }
  }
  .sppb-addon-text-block,
  .sppb-addon-ajax-contact {
    h3.sppb-addon-title {
      margin-left: 0;
    }
  }

  h3.sppb-addon-title span {
    display: block;
  }
  .sppb-addon-title h3 span,
  .h4,
  h4.h4 {
    font-family: "Jost", sans-serif;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.1rem !important;
  }

  p {
    font-weight: 300;
  }

  .sppb-btn .sppb-btn-custom.sppb-btn-square,
  .sppb-btn,
  .btn {
    border-radius: 0px !important;
  }

  .btn-rect {
    border: 1px solid #6099ba !important;
    color: #6099ba !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    padding: 0.75rem 2.5rem;

    &:hover {
      color: #fff !important;
      background: #6099ba !important;
      transform: scale(1.05);
      box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
    }
  }
  .sppb-btn-primary,
  .sppb-btn-default,
  .sppb-btn .sppb-btn-custom.sppb-btn-square {
    background: #6099ba;
    color: #fff !important;
    font-size: 0.9rem;
    font-weight: 600;
  }

  .btn.vbsearchinputmodhors,
  .sppb-btn-default {
    text-transform: uppercase;
    color: #fff;
    font-weight: 600;
    padding: 0.75rem 2.5rem !important;
    line-height: 100%;
    border: 0;

    &:active,
    &:focus,
    &:hover {
      background: #82b4d1;
      transform: scale(1.05);
      color: #fff;
      box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
    }
  }

  #sp-header {
    height: auto;
    background: transparent;
    box-shadow: none;
    .container {
      max-width: 1600px;
      background: #1e4c66;

      .container-inner {
        max-width: 1300px;
        margin: auto;
      }
    }

    &.header-sticky {
      .infos {
        display: none;
      }
    }

    .sp-module {
      margin: 0px;
    }
    .infos {
      border-bottom: 1px solid #355e76;
      padding-top: 0.75rem;
      padding-bottom: 0.75rem;
    }
    .sp-module-content .mod-languages ul.lang-inline {
      text-align: right;
    }
    .sp-module-content .mod-languages ul.lang-inline li {
      background: transparent !important;

      a {
        font-weight: 300;
        color: rgba(255, 255, 255, 0.5);
      }
    }
    .sp-module-content .mod-languages ul.lang-inline li:hover,
    .sp-module-content .mod-languages ul.lang-inline li.lang-active {
      background: transparent !important;

      a {
        font-weight: 500;
        color: rgba(255, 255, 255, 1);
      }
    }

    .sppb-addon-content {
      p {
        margin: 0;
      }
    }
    .sp-megamenu-wrapper {
      width: 100%;
      .sp-megamenu-parent > li > a,
      .sp-megamenu-parent > li span {
        padding: 0px;
      }
      .sp-megamenu-parent > li > a:not(.sppb-btn),
      .sp-megamenu-parent > li > span:not(.fa) {
        font-size: 1.15rem;
        font-weight: 300;
        line-height: 100%;
      }
      .sp-megamenu-parent {
        display: flex;
        margin: 0;
        padding: 0.5rem 0;
        width: 100%;
        align-items: center;

        li:not(last-child) a:not(.sppb-btn),
        li:not(last-child) .sp-menu-separator {
          margin-right: 1.75rem;
        }
        li a {
          padding: 0px;
        }

        .sp-menu-separator,
        .sp-menu-item a:not(.sppb-btn) {
          text-transform: uppercase;
          color: #e7ecef;
          margin: 0.75rem 2.5rem 0.75rem 0;
          &:before {
            content: "";
            background: #6099ba;
            height: 2px;
            width: 0;
            display: block;
            transition: all 0.2s ease-in;
            position: absolute;
            bottom: 0;
            left: 0;
          }
          &:hover:before {
            width: calc(100% - 2.5rem);
          }

          @media screen and (max-width: 1440px) {
            margin: 0.75rem 1rem 0.75rem 0;
            font-size: 0.9rem;
          }
        }

        .sp-menu-item.active a:not(.sppb-btn):before {
          width: calc(100% - 2.5rem);
        }

        .sp-menu-item:last-child {
          margin-left: auto;
          margin-right: 0;
        }

        .sp-dropdown-main {
          flex-direction: row;
          gap: 0.75rem;

          .sp-menu-separator,
          .sp-menu-item {
            text-transform: capitalize;
            font-size: 1.25rem;
            color: #e7ecef;
            padding: 0.5rem 0px;

            &:last-child {
              a {
                padding: 0;
              }
            }
          }
        }
      }
      /*@media screen and (max-width: 1440px) {
        .sp-menu-separator,
        .sp-menu-item a:not(.sppb-btn) {
          font-size: 0.9rem;
          line-height: 32px;
          margin: 0.75rem 1rem 0.75rem 0;
        }
        .sp-menu-item a.sppb-btn {
          margin: 0.75rem 0 0.75rem auto;
        }

        .sp-dropdown-main {
          .sp-menu-separator,
          .sp-menu-item {
            margin: 0;
          }
        }
      }*/
    }
  }

  .sppb-addon {
    .sppb-addon-gallery {
    }

    .ombre {
      box-shadow:
        rgba(50, 50, 93, 0.25) 0px 50px 100px -20px,
        rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
    }
  }

  .sppb-addon-articles {
    .sppb-addon-content {
      text-align: center;
    }
    .sppb-addon-article {
      transition: all 0.2s ease-in;
      display: flex;
      flex-direction: column;
      height: 100%;

      .sppb-carousel-inner > .sppb-item > a > img,
      .sppb-carousel-inner > .sppb-item > img,
      .sppb-img-responsive {
        max-height: 200px;
        overflow: hidden;
        width: 100%;
        object-fit: cover;
      }

      &:hover {
        transform: scale(1.015);
        box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
      }
      a:hover {
        color: #82b4d1 !important;
      }

      .sppb-article-info-wrap {
        text-align: left;
        flex: 1;
        background: #fff;
        padding: 20px 40px 40px 40px;
        display: flex;
        flex-direction: column;
        justify-content: start;
        height: 100%;

        .sppb-article-info-wrap h3 a:hover {
          color: #82b4d1 !important;
        }

        .sppb-readmore {
          margin-top: auto;
          margin-bottom: 0;
          font-weight: 700;
          letter-spacing: 0.5px;
          text-transform: uppercase;
          text-decoration: none;
          display: flex;
          justify-content: space-between;

          &:after {
            content: "\f054";
            display: inline-block;
            font-family: "Font Awesome 6 Free";
            box-sizing: border-box;
            -webkit-font-smoothing: antialiased;
            font-style: normal;
            font-variant: normal;
            line-height: 1;
            text-rendering: auto;
            margin-right: 6px;
            text-decoration: none;
            transition: all 0.2s ease-in;
          }
          &:hover {
            color: #82b4d1 !important;
            &:after {
              transform: rotate(-45deg);
            }
          }
        }
      }
    }

    .sppb-btn-default {
      margin: 20px auto;
    }
  }

  #sp-blog {
    .sppb-article-info-wrap h2 a {
      &:hover {
        color: #82b4d1;
      }
    }

    .sppb-addon-articles .sppb-article-meta > span,
    .sppb-addon-articles .sppb-article-meta > time {
      font-size: 0.9rem;
    }
    .sppb-article-meta {
      color: #1e4c66;

      .sppb-meta-date::before {
        content: "\f133";
        display: inline-block;
        font-family: "Font Awesome 6 Free";
        box-sizing: border-box;
        -webkit-font-smoothing: antialiased;
        font-style: normal;
        font-variant: normal;
        line-height: 1;
        text-rendering: auto;
        margin-right: 6px;
      }
    }
  }

  .vbo-horizsearch-standardformat-wrap {
    width: 100%;
    padding: 30px;
    border-radius: 0;
    position: relative;
    background: #fff;
    display: flex;
    box-shadow:
      rgba(50, 50, 93, 0.25) 0px 50px 100px -20px,
      rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;

    form {
      display: flex;
      flex: 1;
      padding: 0;
      flex-wrap: wrap;
      justify-content: start;

      & > div {
        margin-right: 0;
      }
      /*@media screen and (max-width:1024px) {
          .vbmodhorsearchbookdiv {
            margin-top:0.5rem;
            margin-left:auto;
            margin-right:0px;
          }
      }*/

      .vbmodhorsearchrac,
      .vbmodhorsearchtotnights,
      .vbmodhorsearchcheckindiv,
      .vbmodhorsearchcheckoutdiv {
        border-right: 1px solid #eee;
        vertical-align: top;
        padding: 0 2rem;
        display: flex;
        flex-direction: column;

        @media screen and (max-width: 1024px) {
          padding: 0 1rem;
        }

        label {
          text-transform: uppercase;
          font-size: 0.8em;
          font-weight: bold;
          cursor: pointer;
          margin-bottom: 5px;
        }
      }
      .vbmodhorsearchbookdiv {
        margin-left: 2rem;
      }
      .vbsearchinputmodhors {
        background: #6099ba;
        color: #fff;
        text-transform: uppercase;
        font-weight: 500;
        letter-spacing: 2px;
        margin: 0px;
      }
      .vbmodhorsearchrac {
        flex-direction: row;
      }

      .vbmodhorsearchtotnights {
        display: none;
      }
    }
    .vbo-horizsearch-humanformat-wrap
      .vbmodhorsearch-hum-dates-wrap
      .vbmodhorsearch-humcalcont
      .vbo-horizsearch-showcalendar
      .vbo-horizsearch-period-mday {
      margin-top: 10px;
      font-size: 38px;
      color: #d9a36a;
      font-weight: bold;
    }
    .vbo-horizsearch-showcalendar .vbo-horizsearch-period-dt {
      display: flex;
      flex-wrap: wrap;
      margin-left: 5px;
      font-size: 13px;
      overflow: hidden;
      max-width: 110px;
    }
    .vbmodhorsearchrac {
      display: flex;
      gap: 0.25rem;
    }
    .vbmodhorsearchroomdentrfirst {
      display: flex;
      gap: 0.25rem;
      .horsrnum {
        white-space: nowrap;
      }
    }
    .input-group {
      flex-wrap: nowrap;
      .vbo-caltrigger {
        min-width: 40px;
      }
    }
  }

  .caroussel {
    .sppb-row-container {
      padding: 0px;
    }
  }
  .sppb-carousel-extended-heading {
    font-family: "Jost", sans-serif;
    text-transform: uppercase;
    font-size: 1.25rem;
    font-weight: 300;
  }
  .sppb-carousel-extended-subheading {
    font-family: "Cormorant", serif;
    font-size: 5rem;
    font-weight: 700;
  }
  .sppb-carousel-extended-dots {
    bottom: 60px;
  }

  .sppb-image-carousel-layout1 .sppb-carousel-extended-content-wrap,
  .sppb-image-carousel-layout1 .sppb-carousel-extended-item img,
  .sppb-image-carousel-layout1 .sppb-carousel-extended-item-overlay {
    border-radius: 0;
  }

  .vbo-closing-main {
    display: none;
  }

  .sppb-section.contact {
    max-width: 1200px;
    margin: auto;
  }

  .contact input[type="text"]:not(.form-control),
  .contact input[type="email"]:not(.form-control),
  .contact input[type="url"]:not(.form-control),
  .contact input[type="date"]:not(.form-control),
  .contact input[type="password"]:not(.form-control),
  .contact input[type="search"]:not(.form-control),
  .contact input[type="tel"]:not(.form-control),
  .contact input[type="number"]:not(.form-control),
  .contact select:not(.form-select):not(.form-control) {
    padding: 20px !important;
  }

  .sppb-form-check-label {
    font-size: 0.75rem;
    line-height: 130%;
  }

  #sp-footer a,
  #sp-bottom a {
    color: #fff;
  }
  #sp-footer {
    ul.mod-menu.mod-list.menu {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      font-size: 1.15rem;
      font-weight: 500;
      text-transform: uppercase;
      color: #e7ecef;
      margin-left: 40px;

      li {
        display: flex;
        align-items: center;
        margin: 0;
        a {
          color: #e7ecef;

          &:hover {
            color: #fff;
          }
        }
        &.current-item.active a {
          a {
            color: #fff;
          }
        }
        &:last-child {
          display: none;
        }
        &::before {
          content: "•";
          font-size: 24px;
          margin-right: 0.5rem;
        }
      }
    }

    .logo {
      width: 200px;
    }
    .sppb-btn-secondary {
      border: 0px;
      color: #e7ecef;
      text-align: left;

      &:hover {
        background: none;
        color: #fff;
      }
    }
  }

  .blog {
    .container {
      max-width: 1400px;
    }
    .article-header,
    .article-info,
    div[itemprop="articleBody"] {
      max-width: 780px;
      margin: auto;
    }
  }

  .blog-module {
    .sppb-row-container,
    .sppb-row {
      display: flex;
      height: 100%;
      flex: 1;
      flex-direction: row;
      align-items: stretch !important;
      justify-content: flex-start;
      min-height: 1px;
    }

    .sppb-row-column {
      flex: 1;
      display: flex;
      height: 100%;
      min-height: 1px;

      .sppb-column {
        display: flex;
        flex-direction: column;
        flex: 1;
        min-height: 1px;

        &.h-100 {
          min-height: 600px;

          .sppb-addon-content {
            height: 100%;

            .sppb-media-content {
              height: 100%;
              .sppb-addon-text {
                flex: 1;
              }
              .sppb-btn {
                margin-top: auto;
                margin-bottom: 0px;
              }
            }
          }
        }

        .sppb-column-addons {
          display: flex;
          flex-direction: column;
          flex: 1;
          min-height: 1px;

          .sppb-addon-wrapper {
            display: flex;
            flex-direction: column;
            flex: 1;
            min-height: 1px;

            .clearfix {
              display: flex;
              flex: 1;
              min-height: 1px;
            }

            .sppb-addon-feature {
              display: flex;
              flex: 1;
              min-height: 1px;
            }

            .sppb-addon-content {
              display: flex;
              flex-direction: column;
              flex: 1;
              min-height: 1px;
            }

            .sppb-media-content {
              display: flex;
              flex-direction: column;
              flex: 1;
              min-height: 1px;
            }

            .sppb-btn {
              margin-top: auto;
              align-self: flex-start;
            }
          }
        }
      }
    }
  }

  #sp-copyright {
    color: rgba(231, 234, 239, 0.5);
    .menucopyright {
      .menu {
        padding: 0;
        margin: 0;
        display: flex;
        gap: 1rem;
        flex-direction: row;
        justify-content: end;
        list-style-type: none;
        a {
          color: rgba(231, 234, 239, 0.5);
          font-weight: 300;
          font-size: 0.9rem;

          &:hover {
            color: #fff;
          }
        }
      }
    }
  }

  #sp-main-body {
    padding-top: 0;

    .page-header {
      max-width: 1200px;
      padding: 75px 0px;
    }

    .article-intro-image {
      img {
        width: 100%;
        object-fit: cover;
        max-height: 200px;
      }
    }

    .article-list {
      max-width: 1200px;
      margin: auto;

      .article {
        transition: all 0.2s ease-in;
        background: #fff;
        height: 100%;
        display: flex;
        flex-direction: column;
        padding: 20px;

        .article-info {
          margin-bottom: 0.5rem;
          color: #1e4c66;
          text-align:left;
        }
        .article-header {
          h2 {
            font-size: 1.875rem;
            font-weight: 600;
          }
        }

        .readmore {
          .nobtn {
            font-weight: 700;
            font-size: 0.875rem;
            letter-spacing: 0.5px;
            text-transform: uppercase;
            text-decoration: none;
            color: #6099ba;
            display: flex;
            justify-content: space-between;

            span {
              text-decoration: none;
            }
            &:hover {
              color: #82b4d1 !important;
            }
          }
        }

        .article-body {
          display: flex;
          flex-direction: column;
          justify-content: start;
          flex: 1;
          text-align: left;

          .article-introtext {
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
          }
        }

        &:hover {
          transform: scale(1.015);
          box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
        }
      }
    }
    .article-details {
      max-width: 1024px;
      margin: auto;

      .article-full-image img {
        border-radius: 0;
        width: 100%;
      }
    }
    .article-list .article .article-intro-image img,
    .article-list .article .article-featured-video img,
    .article-list .article .article-featured-audio img,
    .article-list .article .article-feature-gallery img {
      border-radius: 0;
    }
  }

  .section-toggle {
    overflow: hidden;
    height: 0px;
    max-height: 0;
    transition: all 0.3s ease;
  }

  .section-toggle.is-open {
    max-height: max-content;
    height: auto;

    .sppb-column-addons {
      padding: 20px;
    }
  }

  #sp-footer ul.menu.mod-menu > li.item-134,
  #sp-footer ul.menu.mod-menu > li.item-122,
  #sp-footer ul.menu.mod-menu > li > a.accueil-only,
  .sp-megamenu-parent > li > a.accueil-only {
    display: none;
    margin: 0;
    width: 0px;
  }
  &.accueil {
    #sp-footer ul.menu.mod-menu > li.item-134,
    #sp-footer ul.menu.mod-menu > li.item-122,
    #sp-footer ul.menu.mod-menu > li > a.accueil-only,
    .sp-megamenu-parent > li > a.accueil-only {
      display: flex;
      width: auto;
    }

    #sp-footer ul.menu.mod-menu > li.item-132,
    #sp-footer ul.menu.mod-menu > li.item-124,
    #sp-footer ul.menu.mod-menu > li > a.no-accueil,
    .sp-megamenu-parent > li > a.no-accueil {
      display: none;
      margin: 0;
      width: 0px;
    }
  }

  @media screen and (amx-width: 640px) {
    #sp-header.header-sticky .logo-sticky.d-none.d-md-inline-block {
      display: none;
    }
  }
}
