
  #hVideoLayer {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transform: scale(.5);
    transform-origin: right;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    cursor: pointer;
    z-index: 1
  }
  
  #hVideoLayer video {
    transition: all 1e3ms cubic-bezier(.19, 1, .22, 1) !important;
    width: 100%;
    height: 100%;
    top: 0%;
    right: 0%;
    position: absolute;
    object-fit: cover;
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    clip-path: inset(50% round 0);
    -webkit-clip-path: inset(50% round 0)
  }
  
  #hVideoLayer.open {
    transform: scale(1) !important;
    -webkit-transition: -webkit-transform 800ms cubic-bezier(.19, 1, .22, 1), opacity 800ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 800ms cubic-bezier(.19, 1, .22, 1), opacity 800ms cubic-bezier(.19, 1, .22, 1)
  }
  
  #hVideoLayer.open video {
    clip-path: inset(0 0 0 0 round 0) !important;
    -webkit-clip-path: inset(0 0 0 0 round 0) !important;
    width: 100% !important;
    height: 100% !important;
    top: 0 !important;
    left: 0 !important
  }
  
  .mainContainer {
    margin: 0 auto;
    width: calc(100% - 15.5vw)
  }
  
  .oButton {
    position: relative;
    height: 36px;
    margin-right: 24px;
    cursor: pointer;
    will-change: transform
  }
  
  .oBackground {
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 20px;
    background: #fff
  }
  
  .oOuter {
    position: absolute;
    width: 53.5px;
    right: 0
  }
  
  .oOuter .fill {
    opacity: 0
  }
  
  .oButton.dark .oOuter .fill {
    opacity: 1
  }
  
  .oOuter.fillColor {
    stroke: #fff;
    fill: #fff
  }
  
  .oContent {
    height: 100%;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    background: #fff;
    overflow: hidden
  }
  
  .transparent .oContent {
    background: 0 0
  }
  
  .oLabelContainer {
    z-index: 1
  }
  
  .oLabel {
        font-family: "Petrona", serif;
    font-size: 13px
  }
  
  .oSymbol {
    position: absolute;
    right: -12px;
    top: 5px
  }
  
  .oArrow {
    width: 8px;
    transform: rotateZ(45deg)
  }
  
  .oArrow.fillColor {
    fill: #9c998f
  }
  
  .oButton .oArrow {
    opacity: 0
  }
  
  .oButton.open .oOuter {
    transform: translateX(24px)
  }
  
  .oButton.open .oArrow {
    transform: none;
    opacity: 1
  }
  
  .oButton.dark .oBackground {
    background: #9c998f
  }
  
  .oButton.dark .oContent {
    background: #9c998f
  }
  
  .oButton.dark .oArrow.fillColor {
    fill: #9c998f
  }
  
  #bookNow.dark .oSymbol .fillColor,
  #reserveTable.dark .oSymbol .fillColor {
    fill: #9c998f
  }
  
  #bookNow.dark:hover .oSymbol .fillColor,
  #reserveTable.dark:hover .oSymbol .fillColor {
    fill: #fff
  }
  
  #reserveTable {
    position: absolute;
    top: 80px;
    right: 20px
  }
  
  .oButton.dark .oOuter.fillColor {
    stroke: #928474;
    fill: #9c998f
  }
  
  .oButton.dark .oLabel {
    color: #fff;
    transition-delay: 0ms
  }
  
  .oButton.fullWhite .oSymbol .fillColor {
    fill: #6e6259
  }
  
  .oButton.whiteArrow .oSymbol .fillColor {
    fill: #fff
  }
  
  .oButton.whiteArrow:hover .oSymbol .fillColor {
    fill: #6e6259
  }
  
  .oButton.forceWhite .oOuter .fill {
    opacity: 1 !important
  }
  
  .oButton.fullWhite {
    overflow: hidden;
    width: 70px
  }
  
  .oButton.fullWhite.right .oSymbol {
    right: 10px;
    transform: translateX(20px)
  }
  
  .oButton.fullWhite.left .oSymbol {
    left: 6px;
    transform: translateX(-20px)
  }
  
  .oButton.fullWhite.show .oSymbol {
    transform: none
  }
  
  .oButton.fullWhite.right .oArrow {
    transform: rotateZ(45deg)
  }
  
  .oButton.fullWhite.left .oArrow {
    transform: rotateZ(-135deg)
  }
  
  .oButton.fullWhite .oOuter,
  .oButton.bordered .oOuter {
    display: none
  }
  
  .oButton:hover .oBackground {
    transform: translateX(23px)
  }
  
  .oButton:hover .oArrow {
    fill: #9c998f;
    transform: rotateZ(-45deg)translateX(-3px)translateY(-3px)
  }
  
  .oButton.dark:hover .oArrow {
    fill: #fff
  }
  
  .oButton.bordered {
    border-radius: 25px;
    border: 1.5px solid #8c8279
  }
  
  #navigationTrack.bordered .oSymbol {
    display: none
  }
  
  .oButton.bordered .oContent {
    padding: 0 20px
  }
  
  .oButton.bordered .oArrow {
    transform: rotateZ(45deg)
  }
  
  .oButton.bordered .oSymbol {
    right: -30px
  }
  
  .oButton.bordered:hover .oBackground {
    transform: none
  }
  
  .oButton.download .oArrow {
    transform: rotateZ(135deg)
  }
  
  .callerTop {
    position: absolute;
    top: 0
  }
  
  .callerBottom {
    position: absolute;
    bottom: 0
  }
  
  #leftHeader {
    display: flex;
    align-items: center;
    pointer-events: all
  }
  
  #rightHeader {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    pointer-events: all
  }
  
  .headerButton {
    width: 38px;
    height: 38px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer
  }
  
  .headerButton.menuForced,
  .langsContainer.menuForced .lang-item {
    transform: none !important
  }
  
  .langsContainer.menuForced .lang-item a {
    color: #fff
  }
  
  .langsContainer.menuForced .lang-item:before,
  .langsContainer.menuForced .lang-item:after {
    background: #fff
  }
  
  .headerButton .icon .fillColor {
    fill: #fff
  }
  
  .email {
    margin-right: 16px
  }
  
  .mobile {
    margin-right: 15px;
    display: none
  }
  
  .mobile .icon {
    width: 46%
  }
  
  .email .icon {
    width: 14px
  }
  
  .headerButton .circlePath {
    position: absolute;
    left: 0;
    top: 0
  }
  
  #brownies {
    position: absolute;
    height: 50px;
    bottom: 35px;
    margin: 0 2.8vw;
    z-index: 1
  }
  
  #brownies.hidden {
    transform: translateX(-6vw)
  }
  
  .brownie {
    height: 200px;
    position: absolute;
    width: 546px;
    bottom: 0;
    left: 50px
  }
  
  .brownieBack {
    background: #a8a297;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: all 800ms cubic-bezier(.19, 1, .22, 1), opacity 400ms cubic-bezier(.19, 1, .22, 1);
    transition: all 800ms cubic-bezier(.19, 1, .22, 1), opacity 400ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .brownie.closed .brownieBack {
    border-radius: 50px;
    width: 50px;
    height: 50px;
    transform: translateX(23px)translateY(75px)scale(.5);
    opacity: 0
  }
  
  #cookieBrownie.closed .brownieBack {
    transform-origin: 67% 37%
  }
  
  #cookieBrownie .brownieButton {
    text-decoration: underline
  }
  
  #cookieBrownie.opened {
    height: 270px
  }
  
  .cookiePrefs {
    display: none
  }
  
  #cookieBrownie.opened .cookiePrefs {
    display: block
  }
  
  .cookiePrefs ul {
    margin-top: 10px;
    display: flex;
    width: 82%;
    justify-content: space-between
  }
  
  .cookiePrefs input {
    display: none
  }
  
  .cookiePrefs label {
    padding-left: 30px;
    background-repeat: no-repeat;
    background-position: -4px -1px;
    padding-top: 5px;
    padding-bottom: 6px;
    cursor: pointer;
    background-image: url(/wp-content/themes/casangelina/assets/images/whitechecks.png);
    display: inline;
    vertical-align: baseline;
        font-family: "Petrona", serif;
    font-size: 12px;
    color: #fff
  }
  
  .cookiePrefs input[type=checkbox]:checked+label {
    background-position: -4px -26px
  }
  
  #newsLetterBrownie.closed .brownieBack {
    transform-origin: 44%
  }
  
  #covidBrownie.closed .brownieBack {
    transform-origin: 60% 35%
  }
  
  #cookieBrownie.closed:hover .brownieBack {
    transform: translateX(27px)translateY(72px)scale(1);
    opacity: 1
  }
  
  #newsLetterBrownie.closed:hover .brownieBack {
    transform: translateX(21px)translateY(74px)scale(1);
    opacity: 1
  }
  
  #covidBrownie.closed:hover .brownieBack {
    transform: translateX(25px)translateY(71px)scale(1);
    opacity: 1
  }
  
  #cookieBrownie.closed {
    transform: translateX(-83px)translateY(93px)
  }
  
  #newsLetterBrownie.closed {
    transform: translateX(-77px)translateY(1px)
  }
  
  #covidBrownie.closed {
    transform: translateX(-81px)translateY(-84px)
  }
  
  .brownieContentLayer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    padding: 15px 0;
    box-sizing: border-box
  }
  
  #cookieBrownie .brownieContentLayer {
    align-items: center;
    justify-content: center
  }
  
  .brownieIcoContainer {
    width: 93px;
    display: flex;
    align-items: center;
    justify-content: center
  }
  
  .brownieIcoContainer.hidden {
    transform: translateX(calc(-2.8vw - 30px))
  }
  
  .brownieContent {
    flex: 1;
    padding-right: 20px;
    box-sizing: border-box;
    overflow: auto;
    margin-right: 30px;
    transition-delay: 300ms
  }
  
  .brownieContent::-webkit-scrollbar {
    width: 0
  }
  
  .brownieContent::-webkit-scrollbar-track {
    border-radius: 25px;
    height: 5px
  }
  
  .brownieContent::-webkit-scrollbar-thumb {
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .5);
    height: 5px
  }
  
  #cookieBrownie .brownieContent {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%
  }
  
  .brownieText {
        font-family: "Petrona", serif;
    font-size: 12px
  }
  
  .brownieButtons .fillColor {
    fill: #fff
  }
  
  #newsLetterBrownie .brownieText {
    margin-top: 20px
  }
  
  .brownieTitle {
    font-family: Notera;
    font-size: 40px;
    line-height: 30px
  }
  
  .brownieButtons {
    display: flex;
    width: 90%;
    justify-content: space-between
  }
  
  .brownieButton {
        font-family: "Petrona", serif;
    font-size: 12px;
    cursor: pointer
  }
  
  .brownieButton .oArrow {
    transform: none;
    margin-left: 10px
  }
  
  .brownie .brownieIco svg .fillColor {
    fill: #fff
  }
  
  .brownie.closed .brownieContentLayer {}
  
  .brownie.closed .brownieContent {
    opacity: 0;
    transition-delay: 0ms;
    transition-duration: 0ms
  }
  
  .brownie.closed .brownieIco {
    pointer-events: all;
    padding: 10px;
    cursor: pointer;
    transform: scale(.9)
  }
  
  .brownie.closed {
    pointer-events: none
  }
  
  .brownie .brownieIco svg {
    width: 35px
  }
  
  #newsLetterBrownie .brownieIco svg {
    width: 23px
  }
  
  #covidBrownie .brownieIco svg {
    width: 32px;
    margin-left: 9px
  }
  
  #covidBrownie .brownieBack {}
  
  .brownie .brownieIco .svgLine {
    transform-origin: right
  }
  
  .brownie.closed .brownieIco .svgLine {
    transform: scale(0, 1)
  }
  
  #brownies.dark .brownie.closed .brownieIco svg .fillColor {
    fill: #6e6259
  }
  
  #covidBrownie .brownieText {
    font-size: 14px;
    line-height: 24px;
    margin-top: 35px
  }
  
  .brownieClose {
    position: absolute;
    right: 18px;
    top: 18px;
    width: 14px;
    height: 16px;
    cursor: pointer;
    z-index: 1
  }
  
  .brownieClose .line._1 {
    width: 20px;
    height: 2px;
    background: #fff;
    transform-origin: left;
    transform: rotate(45deg)
  }
  
  .brownieClose .line._2 {
    width: 20px;
    height: 2px;
    background: #fff;
    transform-origin: right;
    transform: rotate(-45deg);
    position: absolute;
    right: 0;
    top: 0
  }
  
  .mainBackground+.mainContainer {
    z-index: 1
  }
  
  .text {
    font-family: LM Roman;
    font-size: 22px;
    line-height: 36px;
    will-change: transform
  }
  
  .text.limited {
    max-width: 330px;
    width: 30vw
  }
  
  .text.small {
    font-size: 18px;
    line-height: 28px
  }
  
  .text.big {
    font-size: 1.8vw;
    line-height: 3vw;
    font-family: LM Roman
  }
  
  .compositionText {
    max-width: 280px
  }
  
  .geometria {
    font-family: Geometria
  }
  
  .text.tech {
        font-family: "Petrona", serif;
    font-weight: 300;
    font-size: 30px;
    line-height: 40px
  }
  
  .text.tech.small {
    font-size: 25px
  }
  
  .text.tech.smaller {
    font-size: 20px
  }
  
  .miniTitle {
    font-size: 22px;
    line-height: 32px;
    font-family: LM Roman;
    text-transform: lowercase
  }
  
  .introText {
    width: 50%
  }
  
  .introTextContainer {
    display: flex;
    justify-content: flex-end
  }
  
  #partners {
    display: flex;
    justify-content: space-between;
    align-items: center
  }
  
  #accoladesScroller {
    display: flex;
    justify-content: space-between;
    align-items: center
  }
  
  .accolade.ruinart {
    max-width: 220px;
    width: 17%
  }
  
  .accolade.gstc {
    max-width: 162px;
    width: 14%;
    margin-top: 20px
  }
  
  .accolade.traveller,
  .accolade.forbes,
  .accolade.design {
    max-width: 80px;
    width: 6%
  }
  
  .accolade.lhwbnh {
    max-width: 100px;
    width: 6%
  }
  
  .accolade.lhwsl {
    max-width: 100px;
    width: 6%
  }
  
  .accolade.slh {
    width: 14%;
    max-width: 165px
  }
  
  .accolade.reader {
    width: 21%;
    max-width: 290px
  }
  
  .mainBackground {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    will-change: transform
  }
  .bGreige {
    background: #9d968d;
}
  #ethos {
    display: flex
  }
  
  .introPic {
    width: 17.5vw;
    position: relative;
    height: 11.493vw;
    max-width: 330px
  }
  
  .introPic.big {
    max-width: 700px;
    width: 37vw;
    height: 22vw;
    max-height: 420px
  }
  
  .picBar {
    position: absolute;
    width: 17.5vw;
    height: 125vh;
    max-width: 330px;
    top: calc(100% + 30px)
  }
  
  #ethosIntroPic {
    margin-top: -5vw
  }
  
  .fit.wider {
    height: 110%;
    top: -5%
  }
  
  img[data-scroll-speed] {
    will-change: transform
  }
  
  .covered:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #cdc9c1;
    will-change: transform
  }
  
  .covered.show:after {
    transform: translateY(-100%);
    -webkit-transition: -webkit-transform 1500ms 200ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1500ms 200ms cubic-bezier(.19, 1, .22, 1)
  }
  
  #ethosTitleContainer {
    display: flex
  }
  
  #ethosTitle {
    margin-left: 20px;
    align-self: flex-end;
    z-index: 1;
    margin-top: 1.6vw
  }
  
  .blockTitle {
    font-size: 3.6vw;
    font-family: Lm Roman;
    line-height: 4vw;
    will-change: transform
  }
  
  #ethosIntroText {
    max-width: 330px;
    margin-left: calc(17.5vw + 20px)
  }
  
  #ethosPic {
    position: relative;
    margin-left: 5vw;
    width: 56vw;
    height: 38vw;
    top: 5vw
  }
  
  #ethosContent {
    display: flex
  }
  
  #ethosLayer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
    opacity: 0
  }
  
  #ethosText {
    margin-left: 5vw;
    max-width: 330px;
    display: flex;
    align-items: center;
    margin-top: 5vw
  }
  
  .tl {
    opacity: .6
  }
  
  .tl._1 {
        font-family: "Petrona", serif;
    font-size: 7.5vw;
    color: #fff;
    position: absolute;
    top: 28vw;
    left: 2.5vw;
    font-weight: 300;
    will-change: transform
  }
  
  .tl._1.smaller {
    font-size: 7.5vw
  }
  
  .tl._2 {
    font-family: LM Roman;
    font-size: 4vw;
    color: #fff;
    position: absolute;
    top: 42vw;
    left: 18vw;
    will-change: transform
  }
  
  .tl._3 span {
    transform: rotateZ(180deg);
    display: block;
    will-change: transform;
    writing-mode: tb
  }
  
  .tl._3 {
        font-family: "Petrona", serif;
    font-size: 8vw;
    color: #fff;
    opacity: .6;
    position: absolute;
    top: 26vw;
    left: 59vw;
    font-weight: 300;
    will-change: transform;
    text-transform: lowercase;
    text-align: center;
    display: flex;
    justify-content: center
  }
  
  html[lang=it] #modern {}
  
  #prIntroText {
    max-width: 330px
  }
  
  #prTop {
    display: flex;
    justify-content: space-between
  }
  
  #prTitle {
    margin-left: -1.3vw
  }
  
  .sectionTitle {
    display: flex;
    align-items: flex-end;
    flex-direction: column;
        font-family: "Petrona", serif;
    font-weight: 300;
    will-change: transform
  }
  
  .sectionTitle .small {
    font-size: 2.6vw
  }
  
  .sectionTitle .big {
    font-size: 7vw;
    line-height: 6vw;
    position: relative
  }
  
  .sectionTitle .small+.sectionTitle .big {
    left: .6vw
  }
  
  #prSection .mainBackground,
  #prSection .activeLayer {
    top: 12.5vw;
    height: calc(100% - 12.5vw)
  }
  
  #prSlider {
    height: 45vw;
    margin-bottom: 5vw
  }
  
  #prSlider {
    will-change: transform
  }
  
  #hDining .mainContainer {
    position: relative;
    margin-top: 2.5vw;
    display: flex;
    justify-content: space-between
  }
  
  html[lang=en] #hDiningTitle .big {
    order: 0
  }
  
  html[lang=en] #hDiningTitle .small {
    order: 1
  }
  
  #hDiningFixed {
    display: flex;
    flex-direction: column;
    flex: 1;
    margin-left: 5vw
  }
  
  #hDiningIntroPic {
    margin-top: -6vw;
    align-self: flex-end
  }
  
  #hDiningScroll {
    display: flex;
    flex-direction: column;
    align-items: flex-start
  }
  
  #hDiningItems {
    width: 52.5vw;
    will-change: transform
  }
  
  .hDiningItemPic {
    height: 40vw
  }
  
  .long .hDiningItemPic {
    height: 25vw
  }
  
  #hDining .mainBackground {
    height: 41vw
  }
  
  #tasteTitle {
    margin-top: 11.5vw;
    will-change: transform
  }
  
  #tasteText {
    max-width: 300px
  }
  
  .listItemTitle {
    text-align: center;
    margin-top: 25px;
        font-family: "Petrona", serif;
    font-size: 22px
  }
  
  .listItemSubtitle {
    text-align: center;
    font-family: LM Roman;
    text-transform: uppercase;
    margin-top: 5px;
    font-size: 20px
  }
  
  .hDiningItem.whitening .listItemTitle,
  .hDiningItem.whitening .listItemSubtitle {
    color: #fff
  }
  
  .hDiningItemRow {
    display: flex;
    justify-content: space-between
  }
  
  .hDiningItem {
    width: calc(50% - 1.25vw);
    display: block
  }
  
  .hDiningItem.long {
    width: 100%
  }
  
  #hDiningSticky {
    width: 100%
  }
  
  #hDiningTarget {
    position: absolute
  }
  
  #hLifeStyle {
    padding-bottom: 5vw
  }
  
  #hLifeStyle .mainContainer {
    display: flex;
    flex-direction: column
  }
  
  #hLifeStyle .mainBackground {
    top: 9vw;
    height: calc(100% - 9vw)
  }
  
  #hLifeStyleTitle {
    align-self: flex-end
  }
  
  .slidingTitle {
    display: flex;
    flex-direction: column
  }
  
  .slidingTitleBig {
    font-size: 6vw;
    font-family: LM Roman Dunhill;
    display: flex!important;
  }
  
  .slidingTitleBig.small {
    font-size: 4.3vw;
    top: 2.4vw !important
  }
  
  .slidingTitleSmall {
        font-family: "Petrona", serif;
    font-weight: 300;
    font-size: 2.5vw
  }
  
  #hLifeStyle .slidingTitleSmall {
    margin-top: -6.5vw;
    z-index: 1;
    align-self: flex-end;
    margin-right: 3.6vw
  }
  
  #hLifeStylePanel {
    margin-top: .3vw
  }
  
  .hLifeStyleBlock {
    will-change: transform
  }
  
  .hLSBlockTitle {
    height: 5vw;
    display: flex;
    align-items: center;
    z-index: 1
  }
  
  .hLSBlockTitle:after {
    content: '';
    width: 100%;
    height: 1px;
    background: #fff;
    position: absolute;
    bottom: 0;
    left: 0
  }
  
  .panelLabel {
        font-family: "Petrona", serif;
    font-size: 2vw
  }
  
  .panelLabel * {
    font-weight: 300
  }
  
  .hLSBlockPic {
    height: calc(100vh - 10vw);
    width: 100%
  }
  
  #hLifeStyleTarget,
  #hLifeStyleTarget2,
  #hLifeStyleTarget3,
  #hLifeStyleTarget4 {
    height: calc(200vh - 15vw);
    position: absolute
  }
  
  #hLifeStyleSticky,
  #hLifeStyleSticky2,
  #hLifeStyleSticky3,
  #hLifeStyleSticky4 {
    height: calc(100vh - 5vw);
    width: 100%
  }
  
  #hLifeStylePanel {
    z-index: 1;
    margin-top: .25vw
  }
  
  .veil {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000;
    opacity: .1
  }
  
  #hFacilitiesSticky {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding-bottom: 6vw;
    box-sizing: border-box
  }
  
  #hFacilities .mainContainer._1 {
    display: flex;
    justify-content: flex-start
  }
  
  #hFacilitiesTitle {}
  
  #hFacilitiesTitle .big {
    order: 0;
    margin-top: 1.125vw;
    left: -.5vw
  }
  
  #hFacilitiesTitle .small {
    order: 1;
    position: relative;
    left: -.15vw
  }
  
  html[lang=en] #hFacilitiesTitle {
    align-items: flex-end
  }
  
  html[lang=en] #hFacilitiesTitle .small {
    order: 0;
    left: 0
  }
  
  html[lang=en] #hFacilitiesTitle .big {
    order: 1;
    left: 0;
    margin-top: 0
  }
  
  .hFacilitiesItem {
    margin-left: 7.5vw
  }
  
  .hFacilitiesItem:hover .hFItemTitle {
    opacity: 1
  }
  
  .hFacilitiesItem:first-child {}
  
  .hFacilitiesItem.horizontal .hFItemPic {
    width: 35vw;
    height: 22vw
  }
  
  .hFacilitiesItem.vertical .hFItemPic {
    width: 22vw;
    height: 35vw
  }
  
  .hFacilitiesItem.horizontal .hFItemTitle {
    bottom: 20px;
    right: 0;
  }
  
  .hFacilitiesItem.vertical .hFItemTitle {
    bottom: 1.5vw;
    left: -2.1vw;
    transform: rotate(-90deg);
    transform-origin: top left;
    white-space: nowrap
  }
  
  .hFItemTitle {
        font-family: "Petrona", serif;
    font-weight: 300;
    font-size: 45px;
    position: absolute;
    color: #fff;
    text-transform: uppercase;
    -webkit-transition: opacity 800ms cubic-bezier(.19, 1, .22, 1);
    transition: opacity 800ms cubic-bezier(.19, 1, .22, 1)
  }
  
  #hFacilitiesSlider {
    display: flex;
    margin-top: 0vw
  }
  
  #hFacilitiesScroller {
    display: flex;
    align-items: center;
    will-change: transform
  }
  
  #hFacilitiesTarget {
    position: absolute;
    top: 0;
    height: 400vh
  }
  
  #hFacilities {
    flex-direction: column;
    justify-content: space-between;
    height: 400vh
  }
  
  @keyframes hFScroll {
    0% {
      transform: translateX(0)
    }
  
    100% {
      transform: translateX(-51.515%)
    }
  }
  
  #hExperiencesTitle {
    margin-top: -2.8vw
  }
  

  #hExperiencesContainer {
    height: 100%;
    display: flex
  }
  
  #hExperiencesLayer {
    flex: 1;
    height: 650px;
    min-width: 35vw
  }
  
  #hExperiencesPics {
    width: 70vw;
    max-width: 960px;
    margin-left: 5vw;
    margin-right: -150px;
    height: 650px
  }
  
  .hExperienceBlock {
    position: absolute;
    width: 100%;
    overflow: hidden
  }
  
  .hExperienceBlock.show~.hExperienceBlock {
    transform: translateY(calc(100% - 69px))
  }
  
  .hExperienceContent {
    height: calc(650px - 281px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transform: translateY(-25%);
    z-index: 0;
    will-change: transform
  }
  
  .hExperienceActions {
    display: flex
  }
  
  .hMore {}
  
  .hExperienceBlock.show {
    transform: none
  }
  
  .hExperienceBlock.show .hExperienceContent {
    transform: none
  }
  
  .hExperienceBlock._1 {
    top: 0;
    z-index: 0
  }
  
  .hExperienceBlock._2 {
    top: 70px;
    z-index: 1
  }
  
  .hExperienceBlock._3 {
    top: 140px;
    z-index: 2
  }
  
  .hExperienceBlock._4 {
    top: 210px;
    z-index: 3
  }
  
  .hExperienceButton {
    display: flex;
    justify-content: space-between;
    height: 70px;
    align-items: center;
    z-index: 1;
    cursor: pointer;
    will-change: transform
  }
  
  .hExperienceContent:after,
  .hExperienceButton:after {
    content: '';
    position: absolute;
    bottom: 0;
    width: 100%;
    background: #8c8279;
    left: 0;
    height: 1px;
    -webkit-transition: -webkit-transform 2e3ms cubic-bezier(.19, 1, .22, 1), opacity 2e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 2e3ms cubic-bezier(.19, 1, .22, 1), opacity 2e3ms cubic-bezier(.19, 1, .22, 1);
    transform-origin: left;
    will-change: transform
  }
  
  .hExperienceBlock.show .hExperienceButton:after {
    transform: scale(0, 1);
    transform-origin: right
  }
  
  .hExperienceTitle {
        font-family: "Petrona", serif;
    font-size: 22px
  }
  
  .hExperienceArrow {
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    pointer-events: none;
    margin-right: 1px
  }
  
  .hExperienceBlock.show .hExperienceArrow {
    pointer-events: all
  }
  
  .hExperienceArrow svg {
    width: 10px;
    z-index: 1
  }
  
  .hExperienceBackground {
    position: absolute;
    width: 100%;
    height: 100%;
    background: #E3E3E5;
    border-radius: 50%;
    transform: scale(.4);
    opacity: 0
  }
  
  .hExperienceBlock.show .hExperienceBackground {
    opacity: 1;
    transform: scale(1)
  }
  
  .hExperienceBlock.show .hExperienceArrow {
    transform: rotate(45deg)
  }
  
  .hExperienceBlock.show .hExperienceArrow .fillColor {
    fill: #6e6259
  }
  
  .hExperienceArrow .fillColor {
    fill: #fff
  }
  
  .hExperienceSubTitle {
    font-family: LM Roman
  }
  
  .hExperiencePic {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
  }
  
  .hExperiencePic:first-child {
    position: relative
  }
  
  .hExperienceText {
    flex: 1;
    display: flex;
    justify-content: center;
    flex-direction: column
  }
  
  .hExperienceText p:first-child {
    max-width: 100%;
  }
  
  #hExperiencesPicsContainer {
    height: 100%
  }
  
  #clocksContainer {
    display: flex;
    justify-content: space-between
  }
  
  .clock {
    width: 180px
  }
  
  .clock-container {
    width: 100%;
    height: 200px;
    position: relative
  }
  
  .clock-container>div {
    will-change: transform
  }
  
  .clock-container:after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    background: #dbdbdf;
    border-radius: 6px;
    content: "";
    display: block
  }
  
  .clock-hour {
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: calc(50% + .5px);
    margin: -1px 0 0 -25%;
    padding: 1px 0 0 25%;
    background: #bab0a7;
    -webkit-transform-origin: 100% 50%;
    -ms-transform-origin: 100% 50%;
    transform-origin: 100% 50%
  }
  
  .clock-minute {
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -40% -1px 0 0;
    padding: 40% 1px 0 0;
    background: #bab0a7;
    -webkit-transform-origin: 50% 100%;
    -ms-transform-origin: 50% 100%;
    transform-origin: 50% 100%
  }
  
  .clock-second {
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -40% 0 0;
    padding: 40% 0 0 1px;
    background: #e1dfdb;
    -webkit-transform-origin: 50% 100%;
    -ms-transform-origin: 50% 100%;
    transform-origin: 50% 100%
  }
  
  .clock .center {
    width: 8px;
    height: 8px;
    background: #e1dfdb;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    left: 50%;
    margin-left: -4px
  }
  
  .clock-city p {
        font-family: "Petrona", serif;
    font-size: 18px;
    text-align: center;
    margin-top: 20px
  }
  
  .clock.main {
    margin: 0 5vw
  }
  
  .clock.main .clock-container:before {
    content: '';
    position: absolute;
    width: 60%;
    left: 20%;
    background: #f6f4f2;
    top: 0;
    height: 100%;
    border-radius: 60px
  }
  span.block {
    will-change: transform;
}

  #footerMain {
    height: 100%
  }
  
  #footerTarget {
    height: 200vh;
    position: absolute
  }
  
  #footerSticky {
    height: 100vh
  }
  
  #footerDataTop {
    background: #f3f0ec;
    display: flex;
    flex-direction: column
  }
  
  #footerMain .mainContainer {
    z-index: 1;
    position: relative;
    display: flex;
    align-items: flex-end;
    height: 100%;
    justify-content: space-between
  }
  
  #footerLeft {
    height: 65%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    will-change: transform
  }
  
  #footerLogo {
    width: 280px
  }
  
  #footerLogo .fillColor {
    fill: #fff
  }
  
  #footerInfo p,
  #footerInfo a {
        font-family: "Petrona", serif;
    font-size: 18px;
    line-height: 33px;
    color: #fff;
    font-weight: 300;
    text-decoration: none
  }
  
  #copyright {
    margin-bottom: 20px
  }
  
  #copyright p {
    font-family: LM Roman;
    font-size: 14px;
    color: #fff;
    font-weight: 300;
    text-decoration: none;
    letter-spacing: 1px
  }
  
  .socials {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px
  }
  
  .ig,
  .tw {
    margin-top: 20px
  }
  
  #footerData {
    position: absolute;
    left: 100%;
    width: 50%;
    height: 100%;
    top: 0;
    flex-direction: column;
    display: flex;
    will-change: transform
  }
  
  #weatherIn {
    position: absolute;
    top: 100vh
  }
  
  #date {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-top: 2.5vw
  }
  
  #date .year {
        font-family: "Petrona", serif;
    font-size: 7vw;
    font-weight: 300
  }
  
  #date .day {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.2vw;
    margin-left: 2.5vw
  }
  
  #date .ext-day {
    font-family: LM Roman;
    font-size: 1.3vw
  }
  
  #date .ext-date {
        font-family: "Petrona", serif;
    font-weight: 300;
    font-size: 2vw
  }
  
  .weatherContainer {
    width: calc(100% - 5vw);
    max-width: 700px;
    margin: auto
  }
  
  #days {
    padding: 1vw 0;
    border-top: 1px solid #b9ada4;
    border-bottom: 1px solid #b9ada4
  }
  
  #days .weatherContainer {
    display: flex
  }
  
  #weather {
    flex: 1
  }
  
  #weather img {
    filter: brightness(.8)
  }
  
  .meteo_row {
    margin-top: 30px
  }
  
  .meteo_row .weatherContainer {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    font-size: 13px
  }
  
  .meteo_row:first-child {
    margin-top: 0
  }
  
  .meteo_col {
    width: 200px
  }
  
  .meteo_ico_big {
    display: flex;
    align-items: center;
    height: 85px;
    justify-content: center
  }
  
  .meteo_stats {
    text-align: center;
        font-family: "Petrona", serif;
    color: #6d5f51;
    font-size: 15px;
    height: 40px
  }
  
  .meteo_row .data {
    display: flex;
    justify-content: center
  }
  
  .meteo_row .data>div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 10px
  }
  
  .meteo_row .data>div img {
    margin-right: 12px
  }
  
  .meteo_small,
  .hour_text {
    font-size: 13px;
        font-family: "Petrona", serif;
    color: #6d5f51
  }
  
  .temp_text {
    text-align: center;
    font-family: LM Roman;
    color: #6d5f51;
    font-size: 50px;
    letter-spacing: -6px;
    width: 100%;
    position: relative
  }
  
  .temp_text span.temp_deg {
    position: absolute;
    top: 10px;
    font-size: 24px;
    margin-left: 7px
  }
  
  #hourlyBox {
    margin-top: 2.5vw
  }
  
  .hourly_row {
    display: flex;
    border-top: 1px solid #b9ada4;
    border-bottom: 1px solid #b9ada4;
    padding-top: 20px;
    padding-bottom: 15px
  }
  
  .hourly_row .weatherContainer {
    display: flex
  }
  
  .hour_box {
    width: 12.5%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center
  }
  
  .hour_box .hour_ico {
    height: 60px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end
  }
  
  .hour_box .hour_ico img {
    transform: scale(.55)translateY(20px)
  }
  
  .hour_box.active .hour_ico img,
  .hour_box:hover .hour_ico img {
    transform: scale(.8)translateY(-5px)
  }
  
  .hour_box.active .active_line,
  .hour_box:hover .active_line {
    transform: scale(1, 1)
  }
  
  .hour_box.active .hour_text p,
  .hour_box:hover .hour_text p {
    transform: translateY(0)
  }
  
  .hour_box .active_line {
    width: 40px;
    height: 3px;
    background: #cfced3;
    margin-top: -2px;
    transform: scale(0, 1)
  }
  
  .hour_box .separator {
    width: 100%;
    margin-top: 10px;
    height: 1px;
    background: #e5e0e1
  }
  
  .hour_box .hour_text {
    margin-top: 12px
  }
  
  .hour_box .hour_text p {
    font-size: 14px;
    transform: translateY(-100%)
  }
  
  .hour_box.right .hour_ico {
    align-self: flex-end
  }
  
  .hour_box.active>.hour_ico {
    align-self: center;
    transform: translateY(-5px)
  }
  
  #days_box {
    width: calc(100% - 5vw);
    max-width: 700px;
    margin: auto;
    display: flex;
    margin-top: 50px
  }
  
  .day_name {
    width: 14.2857%;
    padding: 5px 15px;
    position: relative;
    cursor: pointer;
    will-change: transform
  }
  
  .day_name:first-child p {
    text-transform: none
  }
  
  .day_name p {
        font-family: "Petrona", serif;
    font-size: 16px;
    text-align: center;
    z-index: 1;
    position: relative;
    text-transform: uppercase;
    will-change: transform
  }
  
  .day_name .day_back {
    width: 100%;
    height: 100%;
    position: absolute;
    background: #dbd6d1;
    left: 0;
    top: 0;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    z-index: 0;
    -webkit-transform-origin: left;
    transform-origin: left;
    border-radius: 25px
  }
  
  .day_name.active .day_back,
  .day_name:hover .day_back {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  
  #footerDataBottom {
    flex: 1;
    display: flex;
    align-items: center
  }
  
  #footerDataBottom .weatherContainer {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width: calc(100% - 5vw);
    max-width: none
  }
  
  #weather .animating {
    will-change: transform
  }
  
  .partner.lhw {
    max-width: 160px
  }
  
  .partner.michelin {
    max-width: 90px
  }
  
  .partner.virtuoso {
    max-width: 162px
  }
  
  .partner.ae,
  .partner.traveller {
    max-width: 150px
  }
  
  .partner.virtuoso,
  .partner.ae,
  .partner.traveller,
  .partner.lhw,
  .partner.michelin {
    width: 20%
  }
  
  .weatherContainer .partner.virtuoso,
  .weatherContainer .partner.ae,
  .weatherContainer .partner.traveller,
  .weatherContainer .partner.lhw,
  .weatherContainer .partner.michelin {
    width: 15%
  }
  
  .weatherContainer .partner.michelin {
    max-width: 75px
  }
  
  nav {
    position: fixed;
    top: 0;
    left: 0;
    will-change: transform;
    width: 100%;
    height: 100vh;
    z-index: 2;
    display: none
  }
  
  nav.active {
    display: block
  }
  
  nav.hidden {
    transform: scale(.99);
    opacity: 0
  }
  
  #navVideo {
    position: absolute;
    width: 100%;
    height: 100%
  }
  
  #navVideo video {
    width: 100%;
    height: 100%;
    top: 0%;
    right: 0%;
    position: absolute;
    object-fit: cover;
    pointer-events: none
  }
  
  #navInner {
    display: flex;
    flex-direction: column;
    z-index: 1;
    position: relative;
    left: 10px;
    top: 10px;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    will-change: transform
  }
  
  #navTop {
    display: flex;
    width: 100%;
    height: calc(100% - 140px);
    margin-top: 70px;
    box-sizing: border-box;
    margin-left: 10px;
    width: calc(100% - 20px);
    padding: 7.5vh 0;
    position: relative
  }
  
  #navTop:before {
    content: '';
    position: absolute;
    top: 0;
    width: 100%;
    height: 1px;
    background: #fff;
    opacity: .3
  }
  
  #navTop:after {
    content: '';
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: #fff;
    opacity: .3
  }
  
  #navBottom {
    display: flex;
    align-items: center;
    flex: 1;
    margin-left: 10px;
    width: calc(100% - 20px)
  }
  
  #navBottom .socials {
    min-width: 320px;
    display: none;
    flex-direction: row;
    margin-bottom: 0;
    justify-content: center
  }
  
  #navBottom .socials .ig,
  #navBottom .socials .tw {
    margin-left: 20px;
    margin-top: 0
  }
  
  #navBottom .socials .tw {
    margin-left: 25px
  }
  
  #navBackground {
    position: absolute;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    opacity: .85;
    border-radius: 25px;
    top: 10px;
    left: 10px
  }
  
  #navBackground.hidden {
    transform: scale(.99);
    opacity: 0
  }
  
  #navBar {
    min-width: 320px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between
  }
  
  #navLogo {
    width: 100%;
    max-width: 200px;
    margin-top: 4px
  }
  
  #navLogo .logoLine.exit {
    transform-origin: center;
    -webkit-transition: -webkit-transform 800ms cubic-bezier(.19, 1, .22, 1), opacity 800ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 800ms cubic-bezier(.19, 1, .22, 1), opacity 800ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .navSideItem {
    font-size: 16px;
        font-family: "Petrona", serif;
    text-transform: lowercase;
    margin-top: 15px;
    position: relative;
    font-weight: 500
  }
  
  .navSideItem:after {
    content: '';
    position: absolute;
    bottom: 0;
    width: 100%;
    background: #fff;
    height: 1px;
    transform: scale(0, 1);
    transform-origin: left;
    -webkit-transition: -webkit-transform 800ms cubic-bezier(.19, 1, .22, 1), opacity 800ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 800ms cubic-bezier(.19, 1, .22, 1), opacity 800ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .navSideItem:hover:after,
  .navSideItem.active:after {
    transform: scale(1)
  }
  
  .navSideItem:first-child {
    margin-top: 0
  }
  
  .navSideItem.margin {
    margin-top: 5vw
  }
  
  #navSideItems {
    display: flex;
    flex-direction: column;
    align-items: center
  }
  
  #navContent {
    flex: 1;
    padding-right: 100px;
    overflow: hidden;
    padding-left: 5vw
  }
  
  /* #navScroller {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: calc(70px + 28vh);
    will-change: transform;
    position: relative;
    top: -10px
  } */
  
  .navSection {
    margin-top: 4.5vh
  }
  
  .navSection:first-child {
    margin-top: 0
  }
  
  .navSectionTitle {
        font-family: "Petrona", serif;
    color: #fff;
    font-size: 4.5vh;
    font-weight: 300;
    line-height: 5.8vh;
    padding-right: 100px
  }
  
  .navSection:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background: #fff;
    top: 6.5vh;
    transform-origin: left;
    transform: scale(0, 1);
    opacity: 0;
    -webkit-transition: -webkit-transform 1e3ms cubic-bezier(.19, 1, .22, 1), opacity 600ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1e3ms cubic-bezier(.19, 1, .22, 1), opacity 600ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .navSection.show:after {
    opacity: 1;
    transform: scale(1);
    -webkit-transition: -webkit-transform 3e3ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 3e3ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transform-origin: left
  }
  
  .navSectionItems {
    display: flex;
    flex-direction: column;
    margin-top: 3vh;
    padding-left: 2.5vw;
    padding-right: 2.5vw
  }
  
  .navItem:first-child {}
  
  .navItem {
        font-family: "Petrona", serif;
    color: #6f6359;
    font-size: 2.2vh;
    font-weight: 300;
    padding: 4px 0;
    text-transform: lowercase;
    display: flex;
    justify-content: space-between;
    position: relative;
    will-change: transform;
    margin-top: 1px
  }
  
  .navItem:after {
    content: '';
    position: absolute;
    height: 100%;
    width: calc(100% + 5vw);
    border: 1px solid #ffff;
    border-radius: 50px;
    left: -2.5vw;
    top: -.1vh;
    transform: scale(1, 0);
    backface-visibility: hidden;
    -webkit-transition: -webkit-transform 150ms linear, opacity 800ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 150ms linear, opacity 800ms cubic-bezier(.19, 1, .22, 1);
    will-change: transform
  }
  
  .navItem:hover:after,
  .navItem.active:after {
    transform: scale(1);
    -webkit-transition: -webkit-transform 800ms cubic-bezier(.19, 1, .22, 1), opacity 800ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 800ms cubic-bezier(.19, 1, .22, 1), opacity 800ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .subItem {
    font-size: 1.6vh;
    color: #fff;
    position: relative;
    height: 2.9vh;
    font-weight: 500;
    display: flex;
    align-items: center;
    padding-right: 30px;
    will-change: transform
  }
  
  .subItem .oArrow {
    position: relative;
    left: 20px;
    will-change: transform
  }
  
  .subItem:before {
    content: '';
    background: #b6ada5;
    position: absolute;
    right: 0;
    height: 100%;
    width: 80px;
    border-radius: 50px;
    z-index: -1;
    transform: translateX(-10px);
    opacity: 0;
    will-change: transform;
    -webkit-transition: -webkit-transform 500ms cubic-bezier(.19, 1, .22, 1), opacity 500ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 500ms cubic-bezier(.19, 1, .22, 1), opacity 500ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .navItem:hover .subItem:before,
  .navItem.active .subItem:before {
    opacity: 1;
    transform: translateX(0);
    -webkit-transition: -webkit-transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .navItem:hover .subItem span,
  .navItem.active .subItem span {
    transform: none
  }
  
  .subItem:after {
    content: ''
  }
  
  #tracker {
    will-change: transform;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
    transform: translate(50vw, 50vh)
  }
  
  #tracker * {
    pointer-events: none
  }
  
  #simpleTrack {
    position: absolute;
    width: 12px;
    height: 12px;
    border-radius: 50px;
    top: -6px;
    left: -6px;
    transition-delay: 300ms
  }
  
  #simpleTrack.no_opacity {
    transition-delay: 0ms
  }
  
  #navigationTrack {
    position: absolute;
    top: -30px;
    left: -60px;
    white-space: nowrap;
    text-transform: lowercase
  }
  
  .activeLayerContainer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    display: flex;
    cursor: pointer
  }
  
  .activeLayer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    cursor: pointer
  }
  
  .activeLayerContainer .activeLayer {
    position: relative;
    width: 50%;
    height: 100%;
    z-index: 0
  }
  
  #actionTrack {
    top: -8px;
    left: 6px;
    position: absolute
  }
  
  #actionTrack .oArrow.fillColor {
    fill: #fff
  }
  
  #actionTrack circle.fillColor {
    stroke: #fff
  }
  
  #actionTrack.dark .oArrow.fillColor {
    fill: #6e6259
  }
  
  #actionTrack.dark circle.fillColor {
    stroke: #6e6259
  }
  
  #actionTrack circle {
    stroke-dasharray: 113;
    stroke-dashoffset: 113
  }
  
  #actionTrack .oArrow {
    position: absolute;
    top: -3px;
    left: -3px;
    transform: rotateZ(0);
    opacity: 0
  }
  
  #actionTrack .circlePath {
    opacity: 1;
    fill: transparent;
    top: -18px;
    left: -18px;
    transform: none;
    position: absolute
  }
  
  #actionTrack.show circle {
    stroke-dashoffset: 0
  }
  
  #overview #clocks,
  #overview footer {
    display: none
  }
  
  #overviewScroller {
    height: 100vh;
    padding-top: 90px;
    padding-bottom: 12vh;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    width: 200vw
  }
  
  [data-scroll-direction=horizontal] [data-scroll-section] {
    white-space: normal;
    display: flex
  }
  
  #overviewViewport {
    display: flex;
    height: 100%;
    max-height: 660px
  }
  
  #overviewIntro {
    min-width: 100vw
  }
  
  #overviewIntro .mainContainer {
    height: 100%;
    display: flex;
    justify-content: space-between;
    position: relative
  }
  
  #overviewIntroLeft {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 45%
  }
  
  #overviewMiniTitle {
    position: absolute;
    left: -7.75vw;
    top: 12px;
    width: 7.75vw;
    display: flex;
    justify-content: center
  }
  
  #overviewMiniTitle span {
    writing-mode: tb;
    transform: rotateZ(180deg);
    margin-left: -33px
  }
  
  .overWord {
        font-family: "Petrona", serif;
    font-size: 57px;
    font-weight: 300
  }
  
  .overviewText {
    max-width: 520px;
    margin-left: 5vw;
    overflow: auto
  }
  
  .overviewSub {
    font-family: lm roman;
    font-size: 40px
  }
  
  #overviewIntroRight {
    flex: 1;
    margin-left: 5vw;
    display: flex;
    justify-content: center
  }
  
  #overviewIntroRight .oButton {
    position: absolute;
    right: 0;
    bottom: 5vw;
    cursor: pointer
  }
  
  .scrollBackContainer {
    position: absolute;
    left: 0;
    bottom: 0;
    cursor: pointer;
    width: 7.75vw;
    display: flex;
    justify-content: center;
    display: none
  }
  
  .oButton.bordered.scrollBack {
    margin-right: -68px;
    z-index: 1
  }
  
  .oButton.bordered.scrollBack .oSymbol {
    left: -30px
  }
  
  .oButton.bordered.scrollBack .oArrow {
    transform: rotateZ(-130deg)
  }
  
  #overviewIntroPic {
    height: calc(100vh - 90px - 12vh);
    width: calc(100vh - 90px - 12vh);
    min-width: 220px;
    min-height: 220px;
    max-width: 660px;
    max-height: 660px
  }
  
  #overviewItems {
    display: flex;
    min-width: 100vw
  }
  
  #overviewItems .mainContainer {
    display: flex;
    position: relative
  }
  
  .oLeftBar {
    width: 10vw;
    max-width: 150px;
    height: calc(100% + 15vh)
  }
  
  .oLeftBar.azureRoom .mainBackground {
    background: url(assets/images/rooms/azureBack1.jpg)no-repeat;
    background-size: cover
  }
  
  .styleBackground.azure {
    background: #7ab0b4
  }
  
  #overviewItemsContent {
    display: flex;
    width: 60%;
    flex: 1;
    z-index: 1
  }
  
  #overviewItemTop {
    height: 100%;
    display: flex
  }
  
  #overviewItemBottom {
    min-height: 12vh;
    display: flex;
    align-items: center
  }
  
  #overviewItemPicsContainer {
    height: 100%;
    z-index: 1;
    overflow: hidden
  }
  
  .itemPic {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
  }
  
  .itemPic img {
    will-change: transform
  }
  
  .itemPic:first-child {
    position: relative
  }
  
  .detailTitle {
        font-family: "Petrona", serif;
    font-weight: 300;
    font-size: 2.2vw;
    will-change: transform
  }
  
  .detailDate {
    margin-top: 5px
  }
  
  #overviewItems .detailTitle {
    display: none
  }
  
  #overviewSnippetContainer {
    width: 100%
  }
  
  #overviewSnippetContainer .snippet:last-child {
    font-size: 18px;
    line-height: 28px
  }
  
  .overviewSnippet {
    display: none
  }
  
  .detailSubtitle {
    font-family: LM Roman;
    font-size: 1.2vw;
    text-transform: uppercase;
    will-change: transform
  }
  
  #overviewItems .detailSubtitle {
    display: none;
    writing-mode: tb;
    transform: rotateZ(180deg);
    max-height: 50vh;
    text-align: right
  }
  
  #overviewItemSubtitleContainer {
    margin-left: -.6vw
  }
  
  #overviewItemTitleContainer {
    margin-left: 25px;
    height: calc(34vh - 178px);
    display: flex;
    align-items: center;
    width: 200%
  }
  
  .overviewItemText:first-child {
    position: relative
  }
  
  #overviewItemRight {
    display: flex;
    justify-content: space-between;
    margin-left: 50px;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
    width: 100%
  }
  
  #overviewItemLeft {
    width: 100%;
    max-width: 660px
  }
  
  #overviewItems .detailTitle.active,
  #overviewItems .overviewSnippet.active,
  #overviewItems .detailSubtitle.active {
    display: block
  }
  
  #overview .detailSubtitle ._2 {
    margin-right: 68px
  }
  
  .oNavigation {
    color: #fff;
    position: relative;
    height: 36px;
    display: flex;
    align-items: center;
    padding-right: 27px;
    padding-left: 13px;
    will-change: transform;
    border-radius: 25px;
    overflow: hidden;
    cursor: pointer;
    -webkit-transition: -webkit-transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .oNavigation .oArrow {
    position: relative;
    left: 12px;
    will-change: transform;
    top: 1px
  }
  
  .oNavigation:before {
    content: '';
    background: #eae6e0;
    position: absolute;
    right: 0;
    height: 100%;
    width: 100%;
    border-radius: 50px;
    z-index: -1;
    opacity: 0;
    will-change: transform;
    -webkit-transition: -webkit-transform 500ms cubic-bezier(.19, 1, .22, 1), opacity 500ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 500ms cubic-bezier(.19, 1, .22, 1), opacity 500ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .oNavigation.show:before {
    opacity: 1;
    transform: translateX(calc(100% - 100px));
    -webkit-transition: -webkit-transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .oNavigation.show.left:before {
    transform: translateX(calc(-100% + 100px))
  }
  
  .oNavigation:hover.show:before {
    transform: translateX(0)
  }
  
  .oNavigation:hover {
    transform: translateX(0) !important
  }
  
  .navigationTitle {
        font-family: "Petrona", serif;
    font-size: 14px
  }
  
  #overviewControls {
    position: absolute;
    width: 100%;
    height: 100%
  }
  
  .overviewColumn.left {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    z-index: 3;
    width: 7.75vw;
    display: flex;
    justify-content: center
  }
  
  .overviewColumn.right {
    position: absolute;
    top: 0;
    height: 100%;
    right: 0;
    z-index: 3;
    width: 7.75vw;
    display: flex;
    justify-content: center
  }
  
  .oNavigation.left {
    padding-right: 13px;
    padding-left: 27px;
    margin-top: 100px;
    transform: translateX(-10px)
  }
  
  .oNavigation.right {
    margin-top: 100px;
    transform: translateX(10px)
  }
  
  .oNavigation.left .oArrow {
    transform: rotateZ(-135deg);
    left: -12px
  }
  
  #detailTop {
    padding-top: 120px
  }
  
  .column {
    flex-direction: column
  }
  
  #detailTop .miniTitle {
    text-transform: lowercase
  }
  
  #detailTop>.mainContainer {
    display: flex
  }
  
  #detailTop .oLeftBar,
  .oLeftBar.wide {
    width: 17.5vw;
    max-width: 330px;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: flex-start
  }
  
  #detailTopTarget {
    position: absolute;
    top: 100vh
  }
  
  #detailTopContent {
    flex: 1
  }
  
  #detailSectionTitle {
    margin-left: 2.5vw;
    margin-top: 100px
  }
  
  .titleLogo {
    position: absolute;
    top: 0;
    right: 0
  }
  
  .titleLogo.sustainability img {
    width: 7vw;
    margin-top: -2.6vw
  }
  
  #detailSectionTitle .detailTitle {}
  
  #detailTopImgContainer {
    height: 106vh;
    width: calc(100% + 150px);
    transform: scale(.95);
    opacity: 0
  }
  
  #detailTopImgContainer.show {
    transform: none;
    opacity: 1
  }
  
  #detailTopImg {
    height: 100%;
    will-change: transform;
    transform: scale(.8);
    transform-origin: top
  }
  
  #detailImgBlock {
    transform: scale(1.25);
    height: 100%;
    overflow: hidden;
    transform-origin: top
  }
  
  #detailTopLayer {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    opacity: 0
  }
  
  #detailTopLayer .tl {
    opacity: .6
  }
  
  #detailTopLayer .tl._1 {
    top: 20vw;
    left: -10vw
  }
  
  html[lang=de] #detailTopLayer .tl._1.special {
    left: -16vw;
    font-size: 6vw
  }
  
  #detailTopLayer .tl._2 {
    top: 36vw;
    right: 32vw;
    width: auto;
    left: auto;
    text-align: left;
    white-space: nowrap
  }
  
  #detailTopLayer .tl._2.seascapeSpecial {
    top: 55vw;
    right: 45vw
  }
  
  #detailTopLayer .tl._3 {
    top: 0;
    right: 12.5vw;
    left: auto;
    font-weight: 300;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%
  }
  
  #detailTopLayer .tl._3 span {
    display: block;
    white-space: nowrap
  }
  
  .textLayer {
    will-change: transform;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
  }
  
  .tl {}
  
  #detailIntroTitle,
  #detailIntroSubtitle {
    margin-left: 2.5vw;
    max-width: 75%
  }
  
  #detailIntroSubtitle {
    text-transform: uppercase
  }
  
  .blockTitle span {
    padding-bottom: .5vw
  }
  
  #detailText {
    margin-left: 2.5vw;
    margin-bottom: 7.5vw;
    width: 30vw
  }
  
  #detailText.no_margin_bottom {
    margin-bottom: 0
  }
  
  #detailTextSpecial {
    width: 30vw;
    margin-left: 2.5vw
  }
  
  #detailText .hBook {
    width: 50%;
    margin-top: -36px
  }
  
  #detailSpaces {
    height: 200vh
  }
  
  #detailSpaces.azure {
    height: 100vh
  }
  
  #detailSpacesContainer.azure {
    top: calc(100% - 14vw)
  }
  
  #detailSpaces.azure+#detailServices {
    margin-top: 14vw
  }
  
  #detailSpaces .introPic.covered:after,
  #detailInfo .introPic.covered:after {
    background: #eae6e0
  }
  
  #detailSpaces .introPic {
    margin-top: -2.5vw
  }
  
  .fullPicture {
    width: 100%;
    height: 200vh
  }
  
  .fullPicture.azure {
    top: -3vw;
    height: 30vw;
    width: 50vw;
    left: 27vw
  }
  
  .simplePicture {
    width: 100%;
    height: 100vh
  }
  
  #fullPictureTarget,
  #fullPictureTarget2,
  #fullPictureTarget3,
  #fullPictureTarget4 {
    height: 200vh;
    position: absolute;
    top: 0
  }
  
  .fullPictureSticky {
    height: 100vh
  }
  
  .fullPictureBlock,
  .fullPictureBlock2,
  .fullPictureBlock3,
  .fullPictureBlock4 {
    transform: scale(.8)
  }
  
  .fullPictureContainer,
  .fullPictureContainer2,
  .fullPictureContainer3,
  .fullPictureContainer4 {
    transform: scale(1.25)
  }
  
  #detailSpaces .mainContainer {
    display: flex;
    flex-direction: column
  }
  
  #detailSpacesContainer {
    position: absolute;
    width: calc(100% - 17.5vw);
    align-self: flex-end;
    top: calc(100% - 4vw)
  }
  
  #detailSpacesBackground {
    height: 100%;
    position: absolute;
    width: 100%
  }
  
  #detailSpacesBackground.azure {
    background: url(assets/images/rooms/azureBack2.jpg)no-repeat;
    background-size: cover
  }
  
  #detailSpacesContent {
    display: flex;
    flex-direction: column
  }
  
  #detailSpaces #detailSnippets {
    margin-top: 2.5vw;
    text-align: right
  }
  
  #detailSpacesContent .tech ._2 {
    margin-top: 2.5vw
  }
  
  #detailSpaces #detailSnippets .snippet._2:last-child {
    font-size: 25px
  }
  
  #detailSpacesContent .slidingTitleBig,
  .locationNameContent .slidingTitleBig {
    position: relative;
    top: 3.3vw;
    margin-left: 2.5vw;
    margin-top: -3.3vw
  }
  
  #detailServices {
    margin-top: 24vw
  }
  
  #detailServices .mainContainer {}
  
  .listTitle {
    font-size: 6.5vw;
        font-family: "Petrona", serif;
    font-weight: 300;
    margin-left: -3.1vw
  }
  
  .listText {
    margin-left: 6vw
  }
  
  .listItem {
    font-family: LM Roman;
    font-size: 2.2vw;
    margin-top: 1vw
  }
  
  #detailServicesContent {
    display: flex;
    justify-content: space-between
  }
  
  #detailServicesLeft {
    width: 60vw
  }
  
  #detailServicesPic {
    width: 25vw;
    height: 40vw
  }
  
  .sliderContainer {
    height: 100%;
    z-index: 0;
    position: relative
  }
  
  .slideContainer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    will-change: transform;
    height: 100%
  }
  
  .slideContainer img {
    will-change: auto
  }
  
  .gallery {
    height: 100%;
    width: 100%
  }
  
  .galleryContainer {
    display: flex;
    height: 100vh
  }
  
  .loading {
    position: absolute;
    left: -100px;
    top: -25px;
    display: none
  }
  
  .loading svg {
    stroke-dasharray: 87px;
    animation: spinning 2s cubic-bezier(.575, .005, .285, 1.005)infinite
  }
  
  .loading svg circle {
    stroke: #fff
  }
  
  .loading.blue svg circle {
    stroke: #6c96bc
  }
  
  @keyframes spinning {
    0% {
      stroke-dashoffset: 87
    }
  
    50% {
      stroke-dashoffset: 174
    }
  
    100% {
      stroke-dashoffset: 261
    }
  }
  
  .sliderPreview {
    position: absolute;
    width: 330px;
    bottom: -40px;
    right: 150px
  }
  
  .previewText {
    height: 40px;
    display: flex;
    justify-content: space-around;
    align-items: center;
        font-family: "Petrona", serif;
    font-size: 13px
  }
  
  .previewContainer {
    height: 185px;
    margin-bottom: 40px
  }
  
  #styleDetails {}
  
  #styleDetails .mainContainer {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding-bottom: 6vw
  }
  
  .styleBackground {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1
  }
  
  #styleDetailsTitle {}
  
  #styleDetailsTitle .slidingTitleSmall {
    margin-top: -6.5vw;
    z-index: 1;
    align-self: center
  }
  
  #styleDetailsContainer {
    width: 100vw
  }
  
  #styleDetailsScroller {
    display: flex;
    animation: styleDetailScroll 55s linear infinite
  }
  
  @keyframes styleDetailScroll {
    0% {
      transform: translateX(0)
    }
  
    100% {
      transform: translateX(-253.5%)
    }
  }
  
  .styleDetail {
    margin-left: 2.5vw;
    min-width: 17vw
  }
  
  #styleDetailsLogos {
    display: flex;
    flex-wrap: wrap;
    padding: 0 5vw
  }
  
  .styleLogo {
    width: 33.333%;
    display: flex;
    justify-content: center;
    align-items: center
  }
  
  .styleLogo.smaller {
    width: 25%;
    flex: 1
  }
  
  .styleLogo.smaller.left {
    margin-left: 5%
  }
  
  .styleLogo.smaller.right {
    margin-right: 5%
  }
  
  .styleLogo img {
    width: auto
  }
  
  #others {
    position: relative
  }
  
  #others .layerUpdate {
    top: -5vw
  }
  
  #others .mainContainer {
    display: flex
  }
  
  #otherTarget {
    position: absolute
  }
  
  .otherItemPic {
    width: 50vw
  }
  
  .otherItemPic img,
  .listItemTitle,
  .listItemSubtitle {
    will-change: transform
  }
  
  #otherFixed {
    margin-left: 5vw;
    margin-top: -2vw
  }
  
  #otherFixed .blockTitle {
    text-transform: lowercase
  }
  
  #detailExpandableText {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-top: -23vw;
    position: relative;
    top: -2.5vw
  }
  
  #detailExpandableText.big {
    margin-top: -35vw
  }
  
  #detailExpandableText .text {
    max-width: 700px
  }
  
  .more p {
    display: flex;
    align-items: flex-end;
    flex-direction: column
  }
  
  .more p>span {
    margin-top: 2.5vw;
    margin-right: 5vw
  }
  
  #detailSnippets {
    align-self: flex-end;
    margin-right: 2.5vw;
    flex-direction: column;
    display: flex
  }
  
  .introLogo {
    position: absolute;
    top: 17.5vw;
    width: 17.2vw;
    display: flex;
    flex-direction: column;
    align-items: center
  }
  
  .introLogo a {
    margin-top: 10px;
    white-space: nowrap
  }
  
  .introLogo a:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background: #333;
    left: 0;
    bottom: 6px
  }
  
  .introLogo+#detailSnippets {
    margin-top: 15vw
  }
  
  #detailInfo #detailSnippets .snippet._2,
  #detailInfo #detailSnippets .snippet._4,
  #detailInfoSecond #detailSnippets .snippet._2,
  #detailInfoSecond #detailSnippets .snippet._4 {
    font-size: 25px;
    margin-top: 0
  }
  
  #detailSnippets .snippet._2,
  #detailSnippets .snippet._4 {
    margin-top: 2.5vw
  }
  
  .snippet.no_margin {
    margin-top: 0 !important
  }
  
  #detailComposition,
  #detailBody,
  .infoBlock {
    flex-direction: column
  }
  
  #detailComposition .mainContainer,
  .infoBlock .mainContainer {
    display: flex;
    align-items: center;
    justify-content: space-between
  }
  
  #detailComposition.seascape .mainBackground {
    top: 5vw
  }
  
  .compositionPicContainer {
    position: relative;
    margin-left: 5vw;
    margin-right: 5vw;
    height: 39.5vw;
    width: 56vw;
    margin-bottom: 5vw
  }
  
  .compositionPic {
    height: 100%;
    width: 100%
  }
  
  .compositionLayer {
    position: absolute
  }
  
  .compositionPicContainer .tl._3 {
    top: 10.5vw;
    left: 0
  }
  
  .compositionPicContainer .tl._1 {
    top: auto;
    bottom: 7.8vw;
    left: 19vw;
    display: flex
  }
  
  #detailBody .mainContainer>.introPic {
    margin-top: -2.5vw
  }
  
  .detailBodyContent {
    display: flex;
    justify-content: space-between;
    padding-left: 5vw
  }
  
  #detailBody .detailBodyContent.scheme1 .blockTitle {
    margin-left: 13vw
  }
  
  #detailBody .detailBodyContent.summer {
    align-items: center
  }
  
  #detailBody .detailBodyContent.summer .right {
    width: 25vw
  }
  
  #detailBody .detailBodyContent.summer .left .blockTitle {
    margin-left: 0
  }
  
  #detailBody .detailBodyContent.scheme1 .left {
    width: 60%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: 650px
  }
  
  .verticalPic {
    width: 25vw;
    height: 40vw
  }
  
  #detailBody .galleryContainer {
    width: 56.771vw;
    height: 40vw
  }
  
  .detailBodyContent .blockTitle {
    text-transform: lowercase
  }
  
  .detailBodyContent.scheme2>.right {
    flex: 1;
    display: flex;
    align-items: center;
    padding-left: 5vw;
    box-sizing: border-box;
    min-width: 300px
  }
  
  #detailBody .detailBodyContent.scheme3 .left {
    max-width: 590px;
    width: 40vw
  }
  
  .detailBodyContent.scheme3 .blockTitle {
    margin-left: 13vw
  }
  
  .detailBodyContent.scheme4 {
    padding-right: 5vw;
    flex-direction: column
  }
  
  .menu {
    display: flex
  }
  
  .menuBlock,
  .menuPic {
    width: 34vw;
    height: 34vw
  }
  
  .menuBlock+.menuPic,
  .menuPic+.menuBlock,
  .menuBlock+.menuBlock {
    margin-left: 30px
  }
  
  .menu+.menu {
    margin-top: 30px
  }
  
  .menuBlock {
    display: flex;
    align-items: flex-end;
    position: relative
  }
  
  .menuLayout {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 2.5vw;
    width: 100%
  }
  
  .menuLayout .slidingTitleBig {
    position: relative;
    top: 3.3vw
  }
  
  .menuBlock.small .slidingTitleBig {
    font-size: 3.5vw;
    top: 1.9vw
  }
  
  .menuType {
        font-family: "Petrona", serif;
    font-weight: 300;
    font-size: 4.5vw;
    opacity: .6;
    position: absolute;
    top: 30px;
    right: 15px
  }
  
  .menuBlock.small .menuType {
    font-size: 3vw
  }
  
  .menuType span {
    writing-mode: tb;
    transform: rotate(180deg);
    text-align: right
  }
  
  .menu._2 .menuType {
    opacity: 1
  }
  
  .menuBlock.small .oButton {
    position: absolute;
    top: 78%;
    left: 2.5vw
  }
  
  .menuBlock .oButton {
    position: absolute;
    top: 70%;
    left: 2.5vw
  }
  
  .infoBlock .mainBackground {
    top: 3vw;
    height: calc(100% - 6vw)
  }
  
  img.ruinart {
    width: 170px
  }
  
  .outerBlock {
    width: 40vw;
    position: relative;
    padding: 5vw;
    box-sizing: border-box
  }
  
  .outerBorders {
    position: absolute;
    width: 100%;
    height: calc(100% + 2vw);
    top: -1vw;
    left: 0;
    pointer-events: none
  }
  
  .outerBorders * {
    position: absolute
  }
  
  .outerBorders .top {
    height: 1vw;
    width: 100%
  }
  
  .outerBorders .bottom {
    height: 1vw;
    width: 100%;
    bottom: 0
  }
  
  .outerBorders .left {
    height: 100%;
    width: 1vw
  }
  
  .outerBorders .right {
    height: 100%;
    width: 1vw;
    right: 0
  }
  
  .outerContent {}
  
  .outerRow {
    display: flex;
    align-items: center
  }
  
  .outerPic {
    width: 250px;
    display: flex;
    justify-content: center
  }
  
  .outerDescription {
        font-family: "Petrona", serif;
    font-size: 16px;
    display: flex;
    flex-direction: column;
    flex: 1;
    align-items: flex-start
  }
  
  .outerDescription .outerTitle {
    font-weight: 600
  }
  
  .outerDescription a {
    display: block;
    margin-top: 5px;
    text-decoration: underline
  }
  
  .blockText.ruinart {
    max-width: 500px
  }
  
  .outerBlock.ruinart .otherContent {}
  
  .outerBlock.ruinart .outerRow {
    flex-direction: column
  }
  
  .outerBlock .outerRow .outerDescription .action:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #333;
    transform: scale(0, 1);
    transform-origin: left;
    -webkit-transition: -webkit-transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .outerBlock .outerRow:hover .action:after {
    transform: scale(1)
  }
  
  .outerBlock.ruinart .outerDescription {
    text-align: center;
    align-items: center
  }
  
  .outerBlock.ruinart .outerPic {
    width: 300px
  }
  
  .outerBlock.cnd {
    height: 20vw;
    display: flex;
    justify-content: center;
    align-items: center
  }
  
  .outerBlock.ab {
    height: 25vw;
    display: flex;
    justify-content: center;
    align-items: center
  }
  
  .outerBlock.cnd .outerPic {
    width: 148px
  }
  
  .outerBlock.ab .outerPic {
    width: 100%;
    max-width: 600px
  }
  
  .outerBlock.cnd .outerDescription {
    margin-left: 15px
  }
  
  .detailBodyContent.profile {
    padding-left: 0;
    flex-direction: column
  }
  
  .profileTitle {
    display: inline-block;
    font-size: 5vw;
    font-weight: 300;
        font-family: "Petrona", serif;
    margin-left: -3.1vw
  }
  
  .profileLogo {
    position: absolute;
    right: 0;
    top: 0;
    width: 19vw;
    max-width: 356px
  }
  
  .profileContent {
    display: flex;
    justify-content: space-between
  }
  
  .profileInfo {
    flex: 1
  }
  
  .vCenter {
    display: flex;
    align-items: center
  }
  
  .profilePic {
    width: 25vw;
    height: 40vw;
    margin-left: 5vw;
    margin-top: -15vw;
    position: relative;
    top: 8vw
  }
  
  #detailBody .detailBodyContent .left .profileText {
    max-width: 650px
  }
  
  .sustainabilityText {
    margin-left: 5vw
  }
  
  .sustainabilityText.wide {
    width: 146%
  }
  
  .sustainabilityIco {
    position: absolute;
    left: -7.5vw;
    top: .5vw;
    width: 63px;
    display: flex;
    align-items: center;
    justify-content: center
  }
  
  .profileScheme .mainBackground {
    height: calc(100% + 3vw)
  }
  
  .scheme1.simpler .text {
    margin-left: 10vw
  }
  
  .profilePic.sustainability {
    margin-top: -7vw
  }
  
  .sustWorld {
    position: absolute;
    bottom: -3vw;
    right: 7.5vw
  }
  
  .backgroundScheme .mainContainer {
    display: flex;
    margin-top: 10vw
  }
  
  .taste .backgroundScheme .mainBackground {
    height: calc(100% - 5vw)
  }
  
  .taste .compositionPicContainer {
    margin-bottom: 0
  }
  
  .unlimited {
    max-width: none !important
  }
  
  #detailBody.taste .mainContainer:last-child .scheme1 .left {
    justify-content: flex-start
  }
  
  .compositionPicContainer.reversed .tl._3 {
    right: 0;
    left: auto;
    top: 8vw;
    opacity: .9
  }
  
  .compositionPicContainer.reversed .tl._1 {
    left: -7.5vw
  }
  
  #detailBody .mainContainer.introRight {
    display: flex;
    flex-direction: column
  }
  
  #detailBody .mainContainer.introRight>.introPic {
    align-self: flex-end
  }
  
  #detailBody .detailBodyContent .left.full {
    width: 56.771vw;
    max-width: none
  }
  
  #detailTopSecond {
    padding-top: 120px;
    flex-direction: column
  }
  
  #detailTopSecond>.mainContainer {
    display: flex
  }
  
  #detailTopSecond .oLeftBar {
    width: 17.5vw;
    max-width: 330px;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: flex-start
  }
  
  .boatBody {
    margin-top: 24vw
  }
  
  .boatBody .detailBodyContent.scheme1 {
    padding-left: 0
  }
  
  #detailSpaces+#detailBody {
    margin-top: 24vw
  }
  
  .locationNameContainer {
    position: absolute;
    width: calc(100% - 17.5vw);
    align-self: flex-end;
    top: calc(100% - 4vw)
  }
  
  .locationNameBackground {
    height: 100%;
    position: absolute;
    width: 100%
  }
  
  .locationNameContent {
    display: flex;
    flex-direction: column
  }
  
  .locationContainer {
    display: flex;
    flex-direction: column;
    position: relative
  }
  
  .locationContainer+.mainContainer {
    margin-top: 17vw
  }
  
  .introPic.down {
    margin-top: 10vw
  }
  
  .editorialPreTitle {
    font-family: Lm Roman Dunhill;
    margin-left: 2.5vw;
    font-size: 2vw;
    line-height: 3vw
  }
  
  .editorialText .editorialPreTitle {
    margin-left: 0
  }
  
  #editorialWords {
    font-size: 1.2vw;
    font-family: Lm Roman Dunhill;
    margin-left: 2.5vw;
    line-height: 2vw
  }
  
  #editorialTitle {
    margin-left: 7.5vw;
    font-family: lm roman dunhill;
    line-height: 5vw;
    font-size: 3.8vw
  }
  
  #editorialSubtitle {
    font-style: italic;
    font-size: 3vw;
    line-height: 3.6vw;
    margin-left: 7.5vw
  }
  
  .editorialText {
    margin-left: 7.5vw;
    width: 34vw;
    position: relative
  }
  
  .editorialText .text {
    font-size: 21px;
    text-align: justify;
    line-height: 40px;
    letter-spacing: .25px
  }
  
  #editorialInfo {}
  
  #editorialInfo .mainContainer {
    display: flex
  }
  
  .editorialPic {
    height: 32vw;
    margin-left: 2.5vw;
    width: 45vw;
    max-width: 850px;
    max-height: 600px
  }
  
  #editorialInfo>.mainContainer>.introPic {
    margin-top: -11.5vw
  }
  
  .editorialText+.introPic {
    position: absolute;
    right: 6.75vw;
    margin-top: -20%;
    height: auto
  }
  
  #editorialInfo .editorialText+.introPic {
    right: -20.5vw;
    margin-top: -43%
  }
  
  #editorialInfo .editorialText+.introPic.anita {
    right: -20.5vw;
    margin-top: -103%
  }
  
  #editorialInfo .editorialText+.introPic:nth-child(7) {
    margin-top: -21%
  }
  
  .introPicText .text {
    font-family: Cormorant Garamond;
    font-style: italic;
    font-weight: 300;
    font-size: 1.7vw;
    line-height: 3vw
  }
  
  .introPicText .leftQuo {
    font-size: 5vw
  }
  
  .introPicText .rightQuo {
    font-size: 5vw;
    position: absolute;
    bottom: -2vw
  }
  
  .formLayer {
    display: flex;
    flex-direction: column;
    min-height: 33vw
  }
  
  #formTitle {
    margin-top: -2.8vw;
    margin-left: 25px
  }
  
  #formTitle .slidingTitleBig {
    margin-top: -3.5vw
  }
  
  #formTitle .slidingTitleBig+.slidingTitleBig {
    margin-top: -5vw
  }
  
  .formContainer {
    margin-right: 5vw;
    margin-left: 5vw;
    width: 55%;
    margin-top: -30px
  }
  
  .formContent {
    display: flex
  }
  
  .formInfo.left {
    width: 45%;
    max-width: 600px
  }
  
  .formDescription {
    margin-left: 5vw;
        font-family: "Petrona", serif;
    font-size: 1.3vw;
    line-height: 2.5vw;
    font-weight: 300
  }
  
  .wpforms-field-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }
  
  .formContainer .wpforms-confirmation-container {
    color: #fff;
    position: absolute;
    left: 0;
    top: 14vw;
    background: #6e6259;
    height: calc(100% - 14vw);
    pointer-events: none;
    margin-left: 5vw;
        font-family: "Petrona", serif;
    font-size: 1.3vw;
    line-height: 2.5vw;
    font-weight: 300;
    width: 45%;
    max-width: 600px
  }
  
  .formField.readOnly textarea {
    display: none
  }
  
  .formField.half {
    width: 45%
  }
  
  .formField {
    width: 100%;
    margin-top: 30px
  }
  
  .formField.noMargin {
    margin-top: 0
  }
  
  .formField input {
    background: 0 0;
    border: none;
    border-bottom: 1px solid #b4a89f;
    padding-bottom: 5px;
        font-family: "Petrona", serif;
    font-size: 16px;
    color: #fff
  }
  
  .formField select {
    background: 0 0;
    border: none;
    border-bottom: 1px solid #b4a89f;
    padding-bottom: 3px;
    font-size: 16px;
        font-family: "Petrona", serif;
    color: #fff;
    margin-top: -3px
  }
  
  .formField textarea {
    background: 0 0;
    border: 1px solid #b4a89f;
    padding: 5px;
    font-size: 15px;
        font-family: "Petrona", serif;
    color: #fff
  }
  
  .wpforms-container label {
        font-family: "Petrona", serif;
    color: #fff;
    font-size: 16px;
    font-weight: 400 !important
  }
  
  .formContainer.dark .wpforms-container label,
  .formContainer.dark .formField textarea,
  .formContainer.dark .formField select,
  .formContainer.dark .formField input,
  .formContainer.dark input::-webkit-input-placeholder,
  .formContainer.dark textarea::-webkit-input-placeholder,
  .formContainer.dark .wpforms-field-description {
    color: #6e6259
  }
  
  .formContainer.dark input,
  .formContainer.dark select {
    border-bottom: 1px solid #b6ada5
  }
  
  .formContainer.dark .formField textarea {
    border: 1px solid #6e6259
  }
  
  .formContainer.dark .wpforms-confirmation-container {
    background: #eae6e0;
    color: #6e6259;
    top: 19vw;
    height: calc(100% - 19vw)
  }
  
  .formField select option {
    color: #6e6259
  }
  
  .formField.wpforms-field-checkbox.multiple {
    display: flex;
    justify-content: space-between
  }
  
  .formField.wpforms-field-checkbox.multiple ul {
    width: 45%
  }
  
  .formField.wpforms-field-checkbox.multiple ul li {
    margin-top: 10px
  }
  
  .formField.wpforms-field-checkbox.multiple ul li:first-child {
    margin-top: 0
  }
  
  .formField.wpforms-field-checkbox input[type=checkbox] {
    display: none
  }
  
  .formField.wpforms-field-checkbox input[type=checkbox]+label {
    padding-left: 30px;
    background-repeat: no-repeat;
    background-position: -4px -1px;
    padding-bottom: 2px;
    padding-top: 2px;
    cursor: pointer;
    background-image: url(/wp-content/themes/casangelina/assets/images/checks.png)
  }
  
  .formField.wpforms-field-checkbox input[type=checkbox]:checked+label {
    background-position: -4px -26px
  }
  
  .formField.readOnly textarea {}
  
  .formField.multiple {}
  
  .formField.multiple ul {}
  
  .formField.right {
    display: flex;
    justify-content: flex-end
  }
  
  .formField.right label.wpforms-error {
    left: auto;
    right: calc(45% - 5px);
    transform: translateX(100%)
  }
  
  .formField.right input,
  .formField.right textarea {
    width: 45%
  }
  
  ::-webkit-input-placeholder {
        font-family: "Petrona", serif;
    color: #fff;
    font-size: 15px;
    padding-left: 2px
  }
  
  .formField textarea::-webkit-input-placeholder {
    padding-left: 0
  }
  
  .wpforms-field-description {
        font-family: "Petrona", serif;
    color: #fff;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin-top: 15px !important;
    max-width: 100%;
    border: 1px solid #999;
    padding: 10px !important;
    box-sizing: border-box;
    background: 0 0 !important
  }
  
  .wpforms-container .wpforms-field input.wpforms-error,
  .wpforms-container .wpforms-field input.user-invalid,
  .wpforms-container .wpforms-field textarea.user-invalid,
  .wpforms-container .wpforms-field select.wpforms-error,
  .wpforms-container .wpforms-field select.user-invalid,
  .wpforms-container .wpforms-field.wpforms-has-error .choices__inner {
    border: none !important;
    border-bottom: 1px solid #c00 !important
  }
  
  .wpforms-container .wpforms-field textarea.wpforms-error {
    border: 1px solid #c00 !important
  }
  
  .wpforms-container label.wpforms-error {
    font-size: 12px !important;
    position: absolute;
    left: 5px;
    bottom: -7px
  }
  
  .wpforms-submit-container {
    display: flex;
    justify-content: flex-end;
    padding-right: 50% !important;
    margin-top: 15px;
    width: 100%
  }
  
  .wpforms-submit {
        font-family: "Petrona", serif;
    padding: 0 12px;
    background: #fff !important
  }
  
  .wpforms-container input.wpforms-field-medium,
  .wpforms-container select.wpforms-field-medium,
  .wpforms-container .wpforms-field-row.wpforms-field-medium {
    max-width: none !important
  }
  
  .wpforms-submit-container .oButton.bordered {
    border: none
  }
  
  .experienceConditions {
    padding: 10vw 5vw
  }
  
  .newsletterForm {
    margin-top: 15px;
    font-family: Geometria
  }
  
  .newsletterFormTitle {
    color: #fff;
    font-size: 15px;
    font-weight: 300
  }
  
  .newsletter_input {
    margin-top: 10px;
    border-bottom: 1px solid #fff;
    padding-bottom: 4px !important;
    width: 40%
  }
  
  .newsletter_input.full {
    width: 100%
  }
  
  .newsletter_input.wpforms-has-error {
    border-bottom: 1px solid #900
  }
  
  .wpforms-container .wpforms-field.newsletter_input input.wpforms-error {
    border-bottom: none !important
  }
  
  .nLangPref {
    display: flex;
    align-items: flex-start;
    padding-bottom: 4px
  }
  
  .newsletter_input label {
    color: #fff;
    font-size: 13px;
    display: inline;
    padding: 1px 2px;
    height: auto;
    margin-top: 15px
  }
  
  .newsletter_input label.wpforms-error {
    display: none !important
  }
  
  .newsletter_input.nLangPref label {
    color: #fff;
    font-size: 13px;
    display: inline;
    height: 16px;
    padding: 1px 2px;
    margin-top: 0
  }
  
  .newsletter_input input {
    background: 0 0;
    border: none;
    color: #fff;
        font-family: "Petrona", serif;
    font-size: 13px;
    width: 100%;
    display: block
  }
  
  .newsletter_input select {
    background: 0 0;
    border: none;
    color: #fff;
        font-family: "Petrona", serif;
    font-size: 13px;
    padding-bottom: 0;
    width: 54px;
    display: block
  }
  
  html[lang=it] .newsletter_input select {
    width: 70px
  }
  
  html[lang=it] .newsletter_input.title {
    width: 80px
  }
  
  .newsletter_input.nLangPref select {
    width: 80px !Important
  }
  
  .newsletter_input select option {
    color: #000
  }
  
  .radio li {
    color: #333;
    font-size: 12px;
    position: relative;
    width: 100%;
    height: 18px;
    margin-top: 13px !important;
    float: left
  }
  
  .radio li>input {
    padding: 0;
    margin: 0;
    height: 16px;
    width: 16px;
    float: left;
    position: absolute;
    left: 0;
    opacity: 0
  }
  
  input[type=radio],
  input[type=checkbox] {
    cursor: pointer
  }
  
  .radio li:not(#foo)>input[type=radio]+label {
    background-position: 0 -7px
  }
  
  .radio li:not(#foo)>input+label {
    background: url(/wp-content/themes/casangelina/assets/images/radio_input_white.png)0 -1px no-repeat;
    height: 16px
  }
  
  .radio li>label {
    padding: 0 0 1px 28px;
    float: left;
    letter-spacing: 0;
    line-height: 15px;
        font-family: "Petrona", serif;
    font-size: 13px;
    color: #fff;
    display: block;
    margin-top: 0
  }
  
  .radio li:not(#foo)>input[type=radio]:hover+label,
  .radio li:not(#foo)>input[type=radio]:focus+label,
  .radio li:not(#foo)>input[type=radio]+label:hover {
    background-position: 0 -32px
  }
  
  .radio li:not(#foo)>input[type=radio]+label {
    background-position: 0 -7px
  }
  
  .radio li:not(#foo)>input[type=radio]:hover:checked+label,
  .radio li:not(#foo)>input[type=radio]:focus:checked+label,
  .radio li:not(#foo)>input[type=radio]:checked+label:hover,
  .radio li:not(#foo)>input[type=radio]:focus:checked+label {
    background-position: 0 -57px
  }
  
  .radio li:not(#foo)>input[type=radio]:checked+label {
    background-position: 0 -57px
  }
  
  .radio li:not(#foo)>input[type=checkbox]+label {
    background-position: 0 -7px
  }
  
  .radio li:not(#foo)>input+label {
    background: url(/wp-content/themes/casangelina/assets/images/radio_input_white.png)0 -1px no-repeat;
    height: 16px
  }
  
  .radio li:not(#foo)>input[type=checkbox]:hover+label,
  .radio li:not(#foo)>input[type=checkbox]:focus+label,
  .radio li:not(#foo)>input[type=checkbox]+label:hover {
    background-position: 0 -32px
  }
  
  .radio li:not(#foo)>input[type=checkbox]+label {
    background-position: 0 -7px
  }
  
  .radio li:not(#foo)>input[type=checkbox]:hover:checked+label,
  .radio li:not(#foo)>input[type=checkbox]:focus:checked+label,
  .radio li:not(#foo)>input[type=checkbox]:checked+label:hover,
  .radio li:not(#foo)>input[type=checkbox]:focus:checked+label {
    background-position: 0 -57px
  }
  
  .radio li:not(#foo)>input[type=checkbox]:checked+label {
    background-position: 0 -57px
  }
  
  .newsletter_input.radio.wpforms-has-error ul li label {
    background-position: 0 -82px !important
  }
  
  .radio.wpforms-has-error li:not(#foo)>input[type=checkbox]:hover+label,
  .radio.wpforms-has-error li:not(#foo)>input[type=checkbox]+label:hover {
    background-position: 0 -107px !important
  }
  
  .radio.wpforms-has-error li:not(#foo)>input[type=checkbox]:checked+label {
    background-position: 0 -157px !important
  }
  
  .newsletter_input input:-webkit-autofill,
  .newsletter_input input:-webkit-autofill:hover,
  .newsletter_input input:-webkit-autofill:focus,
  .newsletter_input input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px #a8a297 inset !important;
    -webkit-text-fill-color: white !important
  }
  
  .newsletter_input input::placeholder {
    color: #fff;
    opacity: 1;
        font-family: "Petrona", serif;
    color: #fff;
    font-size: 13px;
    padding-left: 2px
  }
  
  .newsletter_input input:-ms-input-placeholder {
    color: #fff;
        font-family: "Petrona", serif;
    color: #fff;
    font-size: 13px;
    padding-left: 2px
  }
  
  .newsletter_input input::-ms-input-placeholder {
    color: #fff;
        font-family: "Petrona", serif;
    color: #fff;
    font-size: 13px;
    padding-left: 2px
  }
  
  .newsletter_input.title {
    width: 59px
  }
  
  .newsletter_input .checkbox_container {
    width: 100%;
    margin-top: 0;
    margin-left: 0;
    float: inherit
  }
  
  .newsletter_input .checkbox_label {
    color: #fff;
    margin-left: 0;
    text-transform: uppercase
  }
  
  .newsletter_input .radio li:not (#foo)>input+label {
    background: url(/wp-content/themes/casangelina/assets/images/radio_input_white.png)0 -5.4px no-repeat;
    height: 14px;
    font-size: 14px;
    font-weight: 300;
    background-size: 14px;
    line-height: 14px
  }
  
  .newsletter_input .radio li:not (#foo)>input[type=checkbox]:focus+label {
    background-position: 0 -5.4px
  }
  
  .newsletter_input .radio li:not (#foo)>input[type=checkbox]:hover+label,
  .radio li:not (#foo)>input[type=checkbox]+label:hover {
    background-position: 0 -26px
  }
  
  .newsletter_input .radio li:not (#foo)>input[type=checkbox]:checked+label {
    background-position: 0 -47px !important
  }
  
  .newsletter_controls .form_reset p {
    font-family: notera;
    letter-spacing: 0;
    font-size: 40px;
    color: #a7fffe;
    line-height: inherit
  }
  
  .newsletter_controls .form_submit p {
    font-family: notera;
    letter-spacing: 0;
    font-size: 40px;
    color: #fff;
    line-height: inherit;
    margin-right: 0
  }
  
  .newsletterForm .wpforms-confirmation-container {
    font-family: notera;
    letter-spacing: 0;
    font-size: 40px;
    color: #fff;
    line-height: inherit;
    margin-right: 0;
    margin-top: 8px
  }
  
  .newsletterForm .wpforms-container {
    margin-bottom: 0
  }
  
  .formText {
    color: #fff;
    margin-top: 30px;
    font-weight: 300;
    font-size: 13px;
    line-height: 23px
  }
  
  .newsletter_input.radio {
    border: none;
    margin-top: 0
  }
  
  .privacy>textarea {
    width: 98%;
    border: none;
    font-size: 14px;
    letter-spacing: 0;
    line-height: 20px;
        font-family: "Petrona", serif;
    text-align: left;
    background: 0 0;
    height: 35px;
    margin-top: 6px;
    resize: none
  }
  
  .newsletter_input.privacy {
    color: #fff;
    border-bottom: none;
    display: flex;
    flex-direction: column;
    padding: 0 !important
  }
  
  .newsletter_input.privacy ul {
    order: 1
  }
  
  .newsletter_input.privacy label {
    color: #fff;
    font-size: 13px
  }
  
  .newsletter_input .wpforms-field-description {
    order: 0;
    font-size: 12px !important;
    color: #fff;
    line-height: 15px;
    padding: 5px !important;
    border: 1px solid #fff;
    height: 70px;
    overflow: auto;
    margin-top: 10px !important
  }
  
  .newsletter_input .wpforms-field-description::-webkit-scrollbar {
    width: 0
  }
  
  .newsletter_input .wpforms-required-label {
    color: #fff !important
  }
  
  .newsletterForm .wpforms-submit {
    font-family: notera;
    letter-spacing: 0;
    font-size: 40px;
    color: #fff;
    line-height: inherit;
    background: 0 0 !important;
    margin-right: 0;
    border: none !important;
    cursor: pointer
  }
  
  .newsletterForm .wpforms-submit-container {
    padding-right: 0 !important
  }
  
  #popClose {
    top: 0;
    right: 0;
    width: 23px;
    height: 23px;
    position: absolute;
    transform: rotateZ(45deg);
    padding: 10px;
    cursor: pointer
  }
  
  .newsletter_input.privacy textarea {
    font-size: 12px;
    color: #fff;
    line-height: 12px
  }
  
  .newsletter_controls {
    display: flex;
    justify-content: flex-end;
    margin-top: 20px
  }
  
  #popLayer .menuCloseLine {
    background: #fff
  }
  
  #popLayer .menuCloseLine._1 {
    top: 21px;
    position: absolute;
    width: 23px;
    height: 1px
  }
  
  #popLayer .menuCloseLine._2 {
    height: 23px;
    width: 1px;
    left: 21px;
    position: absolute;
    top: 10px
  }
  
  #newsletterBody .confirm,
  #newsletterBody .deleted,
  #newsletterBody .already {
    display: none
  }
  
  .pressButtons {
    display: flex;
    flex-direction: column;
    align-items: flex-start
  }
  
  .pressButton {
    margin-top: 20px;
    position: relative;
    cursor: pointer
  }
  
  .pressButton:first-child {
    margin-top: 0
  }
  
  .pressButton:after {
    content: '';
    position: absolute;
    bottom: .1vw;
    left: 0;
    width: 100%;
    height: 1px;
    background: #6f6359;
    transform: scale(0, 1);
    transform-origin: left;
    -webkit-transition: -webkit-transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .pressButton.active:after,
  .pressButton:hover:after {
    transform: scale(1)
  }
  
  .pressList {
    align-self: flex-end;
    width: calc(100% - 17.5vw);
    display: flex;
    flex-direction: column;
    align-items: flex-start
  }
  
  .pressEntry:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: -3px;
    left: 0;
    background: #333;
    transform: scale(0, 1);
    transform-origin: left;
    -webkit-transition: -webkit-transform 1e3ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1e3ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .pressEntry:hover:after {
    transform: none
  }
  
  #pressBody {
    padding-top: 5vw
  }
  
  #pressContainer {
    display: flex
  }
  
  #pressContainer #detailSnippets {
    align-self: flex-start
  }
  
  #pressTarget {
    height: calc(100% - 5vw);
    position: absolute;
    top: 0
  }
  
  .pressContent .locationNameContainer {
    top: 0
  }
  
  .pressContent .locationContainer+.locationContainer {
    margin-top: 21vw
  }
  
  #pressList {
    flex: 1
  }
  
  #text .oLeftBar {
    width: 17.5vw;
    max-width: 330px;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: flex-start
  }
  
  #bodyIndex .mainContainer,
  #bodyContent .mainContainer {
    display: flex
  }
  
  .textIndexContainer,
  .bodyParagraphContainer {
    flex: 1;
    margin-left: 2.5vw
  }
  
  .textIndex {
    display: flex;
    flex-direction: column;
    align-items: flex-start
  }
  
  .textIndexItem {
    margin-top: 15px;
    cursor: pointer;
    position: relative
  }
  
  .textIndexItem:after {
    content: '';
    position: absolute;
    transform: scale(0, 1);
    transform-origin: left;
    -webkit-transition: -webkit-transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 1500ms cubic-bezier(.19, 1, .22, 1), opacity 1e3ms cubic-bezier(.19, 1, .22, 1);
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #6e6259
  }
  
  .textIndexItem:hover:after {
    transform: scale(1)
  }
  
  .bodyParagraphTitle {
    margin-left: -2.5vw;
    display: flex
  }
  
  .bodyParagraphTitle h2 {
    margin-left: 2.5vw;
    font-size: 2vw;
    font-family: LM Roman Dunhill;
    position: relative;
    top: 1.15vw
  }
  
  .contactsContainer {
    display: flex
  }
  
  .mailBlock {
    display: flex;
    flex-direction: column
  }
  
  .overlay {
    position: fixed;
    height: 100vh;
    width: 100%;
    top: 0;
    left: 0;
    align-items: center;
    justify-content: center;
    z-index: 3;
    display: none
  }
  
  .overlay.hidden {
    transform: scale(.99);
    opacity: 0
  }
  
  .overlay.active {
    display: flex
  }
  
  .overlay .mainBackground {
    border-radius: 25px;
    left: 10px;
    top: 10px;
    width: calc(100% - 20px);
    height: calc(100% - 20px)
  }
  
  .overlay .mainBackground.hidden {
    transform: scale(.99);
    opacity: 0
  }
  
  .overlayContainer {
    max-width: 1080px;
    max-height: 770px;
    width: 70%;
    height: calc(100% - 60px);
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-around
  }
  
  #tableOverlay .overlayContainer {
    max-width: 600px;
    margin: auto;
    justify-content: center
  }
  
  #resBooking {
    width: 100%;
    height: 100%
  }
  
  .overlayLabel {
    width: 18vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.5vw
  }
  
  .overlayTitle {}
  
  .ovSmall {
        font-family: "Petrona", serif;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400
  }
  
  .ovSmall+.ovSmall {
    margin-left: 5vw
  }
  
  .ovPeople {
    font-size: 2.3vw;
        font-family: "Petrona", serif;
    font-weight: 300;
    will-change: transform
  }
  
  .overlayClose {
    position: absolute;
    width: 38px;
    height: 38px;
    top: 25px;
    right: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer
  }
  
  .overlayClose:hover .overlayCloseInner,
  .overlayClose.hover .overlayCloseInner {
    transform: scale(1.5);
    -webkit-transition: -webkit-transform 600ms cubic-bezier(.19, 1, .22, 1), opacity 400ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 600ms cubic-bezier(.19, 1, .22, 1), opacity 400ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .overlayClose .circlePath {
    width: 38px;
    height: 38px;
    transform: none;
    opacity: 1;
    position: absolute;
    top: 0;
    left: 0
  }
  
  .overlayClose .circlePath circle {
    stroke-dasharray: 125px;
    stroke-dashoffset: 125px
  }
  
  .show .overlayClose .circlePath circle,
  .show.overlayClose .circlePath circle {
    stroke-dashoffset: 0
  }
  
  .overlayCloseInner {
    width: 8px;
    height: 8px;
    position: relative;
    transform: scale(0)
  }
  
  .show .overlayCloseInner {
    transform: scale(1)
  }
  
  .overlayCloseInner:before {
    content: '';
    width: 12px;
    height: 1px;
    background: #6e6259;
    position: absolute;
    transform: rotate(45deg);
    transform-origin: top left;
    left: 0
  }
  
  .overlayCloseInner:after {
    content: '';
    width: 12px;
    height: 1px;
    background: #6e6259;
    position: absolute;
    transform: rotate(-45deg);
    transform-origin: top right;
    right: 0
  }
  
  .overlayClose .fillColor {
    stroke: #6e6259
  }
  
  .ovGroup {
    display: flex;
    padding-bottom: 30px;
    position: relative;
    flex-direction: column;
    align-items: flex-start
  }
  
  #bookOverlay .ovGroup.double {
    justify-content: space-between;
    align-items: flex-start
  }
  
  .ovGroup.extended {
    flex: 1;
    padding-bottom: 0
  }
  
  .ovGroup.extended:after {
    content: ''
  }
  
  #bookOverlay .ovGroup {
    align-items: center;
    flex-direction: row;
    padding-bottom: 20px
  }
  
  .ovGroup.leaders {
    margin-top: -25px;
    width: 530px
  }
  
  .ovGroup.leaders .ovSmall {
    padding-top: 16px;
    line-height: 5px;
    padding-bottom: 10px
  }
  
  .ovGroup.leaders img {
    width: 146px;
    top: -14px;
    position: relative;
    margin-left: 7px
  }
  
  .ovGroup input,
  .ovGroup select {
    border: none;
    background: 0 0;
    margin-left: 35px;
    font-size: 20px;
    letter-spacing: 3px;
    height: 100%
  }
  
  .ovGroup select option {
    font-size: 20px
  }
  
  .ovGroup:after {
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #fff;
    opacity: .6;
    transform: scale(0, 1);
    transform-origin: left;
    -webkit-transition: -webkit-transform 2e3ms cubic-bezier(.19, 1, .22, 1), opacity 2e3ms cubic-bezier(.19, 1, .22, 1);
    transition: transform 2e3ms cubic-bezier(.19, 1, .22, 1), opacity 2e3ms cubic-bezier(.19, 1, .22, 1)
  }
  
  .ovGroup:last-child:after {
    content: none
  }
  
  .show .ovGroup:after {
    transform: scale(1)
  }
  
  .ovGroup select {
    margin-left: -40px;
    padding-left: 75px
  }
  
  #bookSubmit {
    align-self: flex-end;
    width: 200px
  }
  
  .icoContainer {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px
  }
  
  .calendarIco {
    width: 100%
  }
  
  .downArrow {
    display: block;
    width: 15px;
    height: 15px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: translateY(-6px)rotateZ(-45deg)
  }
  
  .ovGroup select::-ms-expand {
    display: none
  }
  
  .ovGroup select {
    -moz-appearance: none;
    -webkit-appearance: none
  }
  
  #thanksOverlay .overlayContainer {
    max-height: 600px
  }
  
  @media all and (max-width:1440px) {
    .ovSmall+.ovSmall {
      margin-left: 2vw
    }
  
    .overviewText {
      max-width: 520px;
      margin-left: 0
    }
  
    #overviewIntroRight {
      margin-right: -100px
    }
  
    #overviewIntroPic,
    #overviewItemPicsContainer {
      width: calc(15vw + 40vh);
      height: calc(15vw + 40vh)
    }
  
    .overviewIntroLeft {
      width: 60%
    }
  
    .outerBlock {
      padding: 5vw 2.5vw
    }
  
    .text {
      font-size: 18px;
      line-height: 32px
    }
  
    .text.big {
      font-size: 22px;
      line-height: 40px
    }
  
    .text.tech.smaller {
      font-size: 18px
    }
  
    .text.small,
    #overviewSnippetContainer .snippet:last-child {
      font-size: 16px;
      line-height: 28px
    }
  
    #overviewIntroRight .oButton {
      margin-right: -20px;
      bottom: 0
    }
  
    .text.tech {
      font-size: 26px
    }
  
    #detailInfo #detailSnippets .snippet._2,
    #detailInfo #detailSnippets .snippet._4 {
      font-size: 20px
    }
  
    #overviewItemRight {
      padding-bottom: 12vh
    }
  
    #overviewItems .detailSubtitle {
      writing-mode: horizontal-tb;
      transform: none;
      max-height: 50vh;
      text-align: left;
      font-size: 22px
    }
  
    #overviewItemRight {
      padding-bottom: 0;
      height: calc(15vw + 40vh)
    }
  
    .listItemTitle {
      font-size: 20px
    }
  
    .listItemSubtitle {
      font-size: 18px
    }
  
    .hExperienceTitle {
      font-size: 20px
    }
  
    .more p>span {
      margin-top: 5vw;
      margin-right: 2.5vw
    }
  }
  
  @media all and (max-width:1365px) {
    #bookOverlay .ovGroup.double {
      flex-direction: column;
      align-items: flex-start
    }
  
    .ovSmall+.ovSmall {
      margin-left: 0;
      margin-top: 25px
    }
  
    .ovSmall br:nth-child(2) {
      display: none
    }
  
    #bookOverlay .overlayContainer>div:nth-child(2):after {
      content: none
    }
  }
  
  @media all and (max-width:1279px) {
    #overviewIntroLeft {
      width: 70%
    }
  
    #overviewIntroRight {
      margin-left: 5vw;
      margin-right: -50px;
      justify-content: flex-end;
      display: flex;
      align-items: flex-start
    }
  
    #overviewIntroPic {
      height: 25vw;
      width: 25vw;
      margin-top: 7vw
    }
  
    .tl._3 {
      top: 24vw;
      left: 46vw
    }
  
    #detailExpandableText .text {
      max-width: 500px
    }
  
    .outerBlock {
      width: 48vw
    }
  
    #overviewIntroRight .oButton {
      bottom: 0
    }
  }
  
  .is-touch #tracker {
    display: none
  }
  
  .is-touch .oButton.mobileOnly {
    display: block !important
  }
  
  .is-touch .oButton.watch,
  .is-touch .oButton.close {
    display: none !important
  }
  
  .is-mobile .oButton.watch,
  .is-mobile .oButton.close {
    display: block !important
  }
  
  .is-touch #ethosText {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center
  }
  
  .is-touch #hVideoLayer {
    transform-origin: right bottom;
    transform: scale(.5)translateX(calc(50% - 130px))translateY(calc(50% - 130px));
    pointer-events: none
  }
  
  .is-touch #hVideoLayer video {
    pointer-events: all
  }
  
  .is-touch .oButton.watch {
    position: absolute;
    bottom: 30px;
    right: 75px;
    pointer-events: none;
    z-index: 1
  }
  
  .is-touch .oButton.close {
    position: absolute;
    bottom: 15px;
    right: 15px;
    pointer-events: none;
    z-index: 1
  }
  
  .is-touch #prSlider+.oButton {
    position: absolute;
    bottom: 120px;
    left: 60px
  }
  
  .is-touch #hFacilities,
  .is-touch #hFacilitiesSticky,
  .is-touch #hFacilitiesSlider,
  .is-touch #hFacilitiesScroller,
  .is-touch nav {
    will-change: transform;
    backface-visibility: hidden
  }
  
  @media all and (max-width:960px) {
    body {
      position: fixed;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0
    }
  
    .mobileMargin {
      margin-top: 30px !important
    }
  
    .mobile {
      display: flex
    }
  
    .mobileOnly {
      display: block !important
    }
  
    .mobileHidden {
      display: none !important
    }
  
    [data-disable-mobile-scroll] {
      transform: none !important
    }
  
    .compositionPic img,
    .slide img {
      height: 105%;
      top: -2.5%
    }
  
    header {
      padding: 0 16px 0 0;
      height: 30px;
      top: 15px
    }
  
    .headerButton.email {
      display: none
    }
  
    #leftHeader {
      width: auto;
      position: relative
    }
  
    #mainLogo {
      width: 132px;
      margin-top: 10px
    }
  
    #mainMenuController {
      width: 25px;
      height: 25px;
      padding: 10px
    }
  
    #mainMenuController:after {
      content: none
    }
  
    .menuController .line {
      width: 25px
    }
  
    .mainContainer {
      width: calc(100% - 60px);
      margin-left: 45px
    }
  
    #brownies {
      padding: 0 12px;
      left: -8px;
      bottom: 12px
    }
  
    .brownie.closed {
      height: 27px
    }
  
    #brownies.hidden {
      transform: translateX(-40px)
    }
  
    #cookieBrownie.closed {
      transform: translateX(-83px)translateY(0)
    }
  
    #newsLetterBrownie.closed {
      transform: translateX(-77px)translateY(-87px)
    }
  
    #covidBrownie.closed {
      transform: translateX(-81px)translateY(-167px)
    }
  
    .closed .brownieBack {
      opacity: 0 !important;
      transition-duration: 0ms
    }
  
    .brownie {
      height: 250px;
      position: absolute;
      width: calc(100vw - 61px);
      bottom: 0;
      left: 50px
    }
  
    .brownie.closed .brownieBack,
    .brownie.closed:hover .brownieBack {
      transform: translateX(23px)translateY(-10px)scale(.5) !important
    }
  
    .brownie .brownieIcoContainer {
      display: none
    }
  
    .brownie.closed .brownieIcoContainer {
      display: flex
    }
  
    .brownieButtons {
      width: 100%
    }
  
    .brownieButtons .oArrow {
      display: none
    }
  
    .brownie.closed .brownieIco {
      transform: scale(.8)
    }
  
    #cookieBrownie.opened {
      height: 340px
    }
  
    .cookiePrefs ul {
      width: calc(100% - 10px)
    }
  
    .oButton {
      height: 30px;
      margin-right: 18px
    }
  
    .brownieContent {
      margin: 0 10px;
      width: 100%;
      padding: 0
    }
  
    .oContent {
      padding: 0 8px
    }
  
    .oArrow {
      width: 7px
    }
  
    .oOuter {
      width: 44.5px
    }
  
    .oButton.open .oOuter {
      transform: translateX(20px)
    }
  
    .oSymbol {
      position: absolute;
      right: -11px;
      top: 2px;
      height: 26px;
      display: flex;
      align-items: center
    }
  
    .oLabel {
      font-size: 11px
    }
  
    #hLogo {
      width: 250px;
      position: absolute;
      top: 37%;
      left: calc(50% - 125px)
    }
  
    #hTarget {
      height: 30vh
    }
  
    #payLook {
      font-size: 25vw;
      letter-spacing: 0;
      margin-left: 35px;
      height: 24.5vw;
      margin-top: 2vw
    }
  
    #payLimits {
      font-size: 6vw;
      font-weight: 300;
      color: #928474;
      top: calc(50% + 3vw);
      left: 30vw
    }
  
    #hStrip {
      width: 73vw;
      margin-top: 10vw;
      height: 14vh
    }
  
    #payFind {
      font-size: 6.5vw;
      margin-right: 7.5vw;
      margin-top: -6vw
    }
  
    #payPerfection {
      font-size: 8.65vw;
      margin-top: 1vw;
      margin-right: 6vw
    }
  
    .introTextContainer {
      justify-content: flex-start
    }
  
    .introText {
      width: 100%
    }
  
    .text {
      font-size: 16px;
      line-height: 26px
    }
  
    .tripleMargin {
      margin-top: 90px
    }
  
    .doubleMargin {
      margin-top: 60px
    }
  
    .margin {
      margin-top: 30px
    }
  
    .halfMargin {
      margin-top: 15px
    }
  
    #accoladesScroller.runAccolades {
      animation: accoladeScroll 30s linear infinite
    }
  
    @keyframes accoladeScroll {
      0% {
        transform: translateX(calc(100vw - 45px))
      }
  
      100% {
        transform: translateX(-1287px)
      }
    }
  
    .accolade.slh img,
    .accolade.reader img {
      width: auto
    }
  
    .accolade {
      margin-left: 70px;
      width: auto !important
    }
  
    .accolade.ruinart {
      min-width: 180px
    }
  
    .accolade:first-child {
      margin-left: 0
    }
  
    .accolade.lhwbnh {
      min-width: 100px
    }
  
    .accolade.lhwsl {
      min-width: 100px
    }
  
    .accolade.traveller,
    .accolade.forbes,
    .accolade.design {
      max-width: 80px;
      min-width: 80px
    }
  
    .accolade.gstc {
      max-width: 162px;
      min-width: 162px
    }
  
    #ethos {
      margin-top: calc(80px + 15vw)
    }
  
    #ethosTitleContainer {
      width: 100%;
      flex-direction: column
    }
  
    .introPic,
    .introPic.big {
      width: 43vw;
      height: 30vw
    }
  
    #ethosIntroPic {
      margin-top: -15vw
    }
  
    #ethosTitle {
      margin-top: 20px;
      align-self: flex-start;
      margin-left: 0
    }
  
    .blockTitle {
      font-size: 35px;
      line-height: 40px
    }
  
    #ethosContent {
      flex-direction: column;
      margin-top: 40px
    }
  
    #ethosPic {
      margin-left: -20px;
      width: calc(100% + 40px);
      height: 68vw;
      top: 0
    }
  
    #ethosPic img {
      height: 120%;
      top: -10%
    }
  
    #ethosText {
      margin-top: 40px;
      margin-bottom: 40px;
      max-width: none;
      margin-left: 0;
      flex-direction: column;
      align-items: flex-start
    }
  
    #ethosIntroText {
      margin-left: 22vw
    }
  
    #ethosLayer {
      position: absolute;
      top: calc(39vw + 120px);
      height: 68vw
    }
  
    #minimalism {
      font-size: 25px;
      top: 35vw;
      left: 20vw
    }
  
    #sublime {
      font-size: 50px;
      top: 17vw;
      left: 2.5vw
    }
  
    #modern {
      font-size: 50px;
      top: 14vw;
      left: auto;
      right: 5vw
    }
  
    html[lang=it] #modern {
      top: 53vw
    }
  
    #prSection {
      margin-top: 90px
    }
  
    .miniTitle {
      font-size: 16px
    }
  
    .sectionTitle .small {
      font-size: 7vw
    }
  
    .sectionTitle .big {
      font-size: 11.3vw;
      line-height: 12vw
    }
  
    #prTop {
      flex-direction: column
    }
  
    #prSlider+.oButton {
      position: absolute;
      bottom: 60px !important;
      left: 0 !important
    }
  
    #prSection .mainBackground {
      top: 26vw
    }
  
    #prIntroPic {
      width: 60%;
      height: 32vw;
      margin-top: 5px;
      z-index: 1
    }
  
    #prIntroText {
      margin-top: 90px
    }
  
    #prSlider {
      margin-top: -5vw;
      margin-left: calc(-45px + 5vw);
      width: calc(100% + 60px - 5vw);
      height: 50vw
    }
  
    #prSection .mainBackground {
      top: calc(46px + 18vw)
    }
  
    #hFacilitiesTitle {
      margin-top: 15px
    }
  
    #hFacilities {
      height: 300vh
    }
  
    #hFacilitiesTarget {
      position: absolute;
      top: 0;
      height: 300vh
    }
  
    #hFacilitiesSticky {
      height: 100vh;
      display: flex;
      flex-direction: column;
      justify-content: space-around
    }
  
    #hFacilitiesSlider {
      top: 0
    }
  
    .hFacilitiesItem.horizontal .hFItemPic {
      width: 75vw;
      height: 47vw
    }
  
    .hFacilitiesItem.vertical .hFItemPic {
      width: 47vw;
      height: 75vw
    }
  
    .hFacilitiesItem {
      margin-left: 60px
    }
  
    .hFItemTitle {
      font-weight: 400;
      opacity: .7;
      font-size: 8vw
    }
  
    .hFacilitiesItem:first-child {
      margin-left: 35px
    }
  
    .hFacilitiesItem.horizontal .hFItemTitle {
      bottom: 10vw;
      left: auto;
      right: -7vw
    }
  
    .hFacilitiesItem.vertical .hFItemTitle {
      bottom: 16vw;
      left: -4vw
    }
  
    #hDining {
      margin-top: calc(15vw + 60px)
    }
  
    #hDiningSticky {
      height: auto;
      width: 100%
    }
  
    #hDiningIntroPic {
      margin-top: -15vw;
      align-self: flex-end
    }
  
    #hDining .mainContainer {
      flex-direction: column;
      margin-top: 0
    }
  
    #hDiningScroll {
      width: 100%
    }
  
    #hDiningScroll .miniTitle {
      margin-top: 7vw
    }
  
    #hDiningItems {
      width: 100%;
      margin-top: 260px
    }
  
    #hDiningFixed {
      margin-left: 0;
      position: absolute;
      top: 0;
      width: 100%;
      left: 0
    }
  
    #hDiningTitle {
      align-self: flex-end;
      margin-top: 30px
    }
  
    #tasteTitle {
      margin-top: 160px
    }
  
    .long .hDiningItemPic {
      height: 38vw;
      width: 100%
    }
  
    #hDining .mainBackground {
      height: calc(48vw + 345px)
    }
  
    .hDiningItemTitle {
      font-size: 18px;
      margin-top: 15px
    }
  
    .hDiningItemSubtitle {
      font-size: 18px
    }
  
    .hDiningItemPic {
      height: 76vw
    }
  
    .hDiningItem {
      width: 100%
    }
  
    .hDiningItemContainer {
      flex-direction: column;
      margin-top: 0
    }
  
    .hDiningItemRow {
      flex-direction: column
    }
  
    #hDiningItems .callerBottom {
      position: relative
    }
  
    .hDiningItemSubtitle {
      margin-top: 0
    }
  
    .hDiningItemPic {
      height: 76vw;
      width: 60%;
      margin: auto
    }
  
    .hDiningItem {
      margin-top: 30px
    }
  
    #hDiningItems>.hDiningItem:first-child {
      margin-top: 0
    }
  
    .slidingTitleBig {
      font-size: 10vw
    }
  
    .slidingTitleBig.small {
      font-size: 8vw !important;
      top: 4.4vw !important
    }
  
    .slidingTitleSmall {
      font-size: 5.9vw
    }
  
    #hExperiences {
      margin-top: 120px
    }
  
    #detailText .hBook {
      margin-top: -30px
    }
  
    #hLifeStyle .slidingTitleSmall {
      margin-top: -14vw
    }
  
    #hLifeStyle .mainBackground {
      top: 16.8vw;
      height: 105%
    }
  
    .panelLabel {
      font-size: 20px
    }
  
    .hLSBlockTitle {
      height: 65px
    }
  
    #hLifeStylePanel {
      margin-top: 0
    }
  
    #hExperiencesTitle {
      margin-top: -8.5vw
    }
  
    #hExperiencesTitle .slidingTitleBig {
      margin-top: -4.6vw
    }
  
    .hExperienceTitle {
      font-size: 18px
    }
  
    .hExperienceButton {
      height: 40px
    }
  
    .hExperienceTitle {
      font-size: 16px
    }
  
    .hExperienceActions {
      margin-top: 30px
    }
  
    .hExperienceActions .oLabel,
    #detailText .hBook .oLabel {
      position: relative;
      top: -2px
    }
  
    .hExperienceBlock._2 {
      top: 40px
    }
  
    .hExperienceBlock._3 {
      top: 80px
    }
  
    .hExperienceBlock._4 {
      top: 120px
    }
  
    .hExperienceContent {
      height: auto;
      justify-content: flex-start;
      padding-left: 15px;
      pointer-events: none
    }
  
    .hExperiencePic {
      position: relative;
      height: 60vw;
      margin-top: 20px
    }
  
    #hExperiencesLayer {
      height: calc(60vw + 510px)
    }
  
    .hExperienceText {
      flex: none;
      margin-top: 20px;
      margin-bottom: 20px;
      height: 260px
    }
  
    .hExperienceSubTitle {
      height: 30px;
      line-height: 20px
    }
  
    #hExperiences .mainContainer {
      padding-bottom: 35px
    }
  
    .hExperienceBlock.show~.hExperienceBlock {
      transform: translateY(calc(100% - 40px))
    }
  
    .clock {
      width: 80px
    }
  
    .clock.main {
      flex: 1;
      margin: 0
    }
  
    .clock-city p {
      font-size: 14px
    }
  
    #date {
      margin-top: 15px
    }
  
    .weatherContainer {
      width: calc(100% - 20px)
    }
  
    #date .year {
      font-size: 50px
    }
  
    #date .day {
      margin-bottom: 9px;
      margin-left: 10px
    }
  
    #date .ext-day {
      font-size: 18px
    }
  
    #date .ext-date {
      font-size: 18px
    }
  
    #weather {
      border-top: 1px solid #b9ada4
    }
  
    footer {
      height: auto !important
    }
  
    #footerSticky {
      display: flex;
      flex-direction: column;
      height: auto !important
    }
  
    #footerMain {
      order: 1;
      height: 100vh
    }
  
    #footerData {
      position: relative;
      top: 0;
      width: 100%;
      left: 0;
      height: auto
    }
  
    #weatherIn {
      top: 0
    }
  
    #weather img {
      width: 40px
    }
  
    #weather .wind_direction img,
    #weather .wind_speed img {
      width: 20px
    }
  
    #weather .wave_height img {
      width: 11px
    }
  
    .meteo_stats {
      font-size: 14px
    }
  
    .temp_text {
      font-size: 50px;
      letter-spacing: -2px;
      font-size: 30px
    }
  
    .temp_text span.temp_deg {
      top: 3px;
      margin-left: 3px
    }
  
    .meteo_col {
      width: 33%
    }
  
    #footerInfo p,
    #footerInfo a {
      font-size: 16px;
      line-height: 28px
    }
  
    #footerLogo {
      width: 200px;
      position: relative;
      top: -18%
    }
  
    #footerRight {
      position: absolute;
      bottom: 320px;
      right: 0
    }
  
    #footerLeft {
      justify-content: flex-end
    }
  
    #footerMain .mainBackground img {
      object-position: right
    }
  
    #overviewScroller {
      height: auto;
      padding: 0;
      flex-direction: row;
      justify-content: flex-start;
      width: auto;
      padding-top: 60px;
      padding-bottom: 45px
    }
  
    #overviewScroller .oLeftBar {
      position: absolute;
      height: 100%
    }
  
    .oLeftBar {
      width: 45px
    }
  
    #overviewViewport {
      flex: 1;
      height: auto;
      max-height: none;
      flex-direction: column
    }
  
    #overviewMiniTitle {
      position: relative;
      left: 0;
      top: 0;
      width: 100%;
      justify-content: flex-start;
      margin-left: 35px;
      margin-top: 30px
    }
  
    #overviewMiniTitle span {
      transform: none;
      writing-mode: horizontal-tb
    }
  
    #overviewIntro .mainContainer {
      flex-direction: column
    }
  
    #overviewIntroRight {
      justify-content: flex-start;
      margin-left: 10px;
      margin-right: 0
    }
  
    #overviewIntroLeft {
      order: 2;
      width: auto;
      margin-left: 10px
    }
  
    #overviewSnippetContainer {
      width: 100%;
      height: auto
    }
  
    #overviewSnippetContainer br {}
  
    .overWord {
      font-size: 30px
    }
  
    .overviewSub {
      font-size: 20px
    }
  
    #overviewItems {
      margin-top: 60px;
      width: 100vw
    }
  
    #overviewControls {
      width: calc(35vw - 45px);
      height: 60vw;
      right: 0;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-end
    }
  
    .overviewColumn.left {
      position: relative;
      height: auto;
      left: 0;
      display: flex;
      flex-direction: column;
      align-items: center
    }
  
    .overviewColumn.right {
      position: relative;
      height: auto;
      right: 0;
      display: flex;
      flex-direction: column;
      align-items: center
    }
  
    #overviewIntroPic,
    #overviewItemPicsContainer {
      width: 65vw;
      height: 65vw;
      margin-left: -10px;
      margin-top: 0
    }
  
    #overviewItemsContent .activeLayer {
      width: 70vw
    }
  
    .oNavigation.left,
    .oNavigation.right {
      width: 75px;
      padding-right: 10px;
      padding-left: 10px;
      box-sizing: border-box;
      margin-top: 0;
      transform: none !important
    }
  
    .oNavigation.left {
      justify-content: flex-end
    }
  
    .oNavigation.right {
      margin-top: 15px
    }
  
    .oNavigation .oArrow {
      left: 16px
    }
  
    .oNavigation.left .oArrow {
      left: -16px
    }
  
    .oNavigation.left:before {
      transform: translateX(25px)
    }
  
    .oNavigation.left:before {
      transform: translateX(-25px)
    }
  
    .oNavigation.show:hover:before {
      opacity: 1;
      transform: translateX(0) !important
    }
  
    .oNavigation .navigationTitle {
      width: 30px
    }
  
    .detailTitle {
      font-size: 30px
    }
  
    #overviewItemsContent {
      flex-direction: column
    }
  
    #overviewItemTitleContainer {
      margin-left: 0;
      height: auto;
      width: auto;
      padding: 20px 0
    }
  
    #overviewItemRight {
      margin-left: 0;
      padding-bottom: 0;
      align-items: flex-start;
      margin-left: 10px;
      max-height: 250px
    }
  
    #overviewItemLeft {
      margin-left: 10px
    }
  
    #detailTop {
      padding-top: 60px
    }
  
    #detailTop>.mainContainer:first-child,
    #detailTopSecond .simplePicture+.mainContainer {
      position: relative
    }
  
    #detailTop .oLeftBar,
    .oLeftBar.wide {
      width: 45px;
      position: absolute;
      left: -45px;
      height: calc(100% - 65px)
    }
  
    #detailTop .oLeftBar.mobileRoom,
    #detailTop .oLeftBar.azureRoom {
      height: calc(100% - 130px)
    }
  
    #detailTopContent {
      display: flex;
      flex-direction: column;
      width: 100%
    }
  
    #detailSectionTitle {
      order: 1;
      margin-top: 30px;
      margin-left: 10px
    }
  
    #detailTopImgContainer {
      margin-top: 0;
      order: 0;
      margin-left: 0;
      width: calc(100vw - 45px);
      height: calc(100vw - 45px);
      transform: translateY(60px);
      opacity: 0
    }
  
    #detailTopImgContainer.show #detailTopImg {
      transform: scale(1) !important;
      -webkit-transition: -webkit-transform 3e3ms cubic-bezier(.19, 1, .22, 1), opacity 3e3ms cubic-bezier(.19, 1, .22, 1);
      transition: transform 3e3ms cubic-bezier(.19, 1, .22, 1), opacity 3e3ms cubic-bezier(.19, 1, .22, 1)
    }
  
    #detailTopImgContainer.show #detailImgBlock {
      transform: scale(1) !important;
      -webkit-transition: -webkit-transform 3e3ms cubic-bezier(.19, 1, .22, 1), opacity 3e3ms cubic-bezier(.19, 1, .22, 1);
      transition: transform 3e3ms cubic-bezier(.19, 1, .22, 1), opacity 3e3ms cubic-bezier(.19, 1, .22, 1)
    }
  
    #detailIntroTitle {
      order: 2;
      margin-left: 10px;
      font-size: 25px;
      line-height: 30px;
      max-width: none
    }
  
    #detailIntroSubtitle {
      text-transform: uppercase;
      order: 3;
      margin-left: 10px;
      max-width: none
    }
  
    #detailText,
    #detailText.no_margin_bottom {
      order: 4;
      width: calc(100% - 10px);
      margin-left: 10px;
      margin-bottom: 60px
    }
  
    .titleLogo {
      display: block;
      position: relative;
      float: right;
      width: 80px
    }
  
    .editorialPreTitle {
      order: 2;
      font-size: 24px;
      line-height: 39px;
      margin-top: 20px;
      margin-left: 10px
    }
  
    .editorialText .editorialPreTitle {
      margin-top: 30px
    }
  
    #editorialWords {
      order: 3;
      font-size: 17px;
      line-height: 27px;
      margin-top: 10px;
      margin-left: 10px
    }
  
    #editorialTitle {
      order: 4;
      margin-left: 10px;
      font-size: 35px;
      line-height: 56px
    }
  
    #editorialSubtitle {
      margin-left: 10px;
      font-size: 35px;
      line-height: 38px;
      order: 5
    }
  
    .editorialText {
      width: calc(100% - 10px);
      margin-left: 10px
    }
  
    #editorialInfo .editorialText+.introPic,
    #editorialInfo .editorialText+.introPic:nth-child(7),
    #editorialInfo .editorialText+.introPic.anita {
      right: 0;
      margin-top: 30px
    }
  
    .editorialPic {
      width: calc(100% - 10px);
      height: 60vw;
      margin-left: 10px
    }
  
    #detailTopContent>.editorialText {
      order: 6;
      margin-left: 10px
    }
  
    .editorialText .text {
      font-size: 16px;
      line-height: 28px
    }
  
    .editorialText+.introPic {
      position: relative;
      top: auto;
      right: auto;
      margin-top: 30px;
      transform: none !important;
      margin-left: 10px;
      margin-bottom: 30px;
      width: calc(100% - 10px)
    }
  
    #detailTopContent .editorialText+.introPic {
      order: 6;
      width: calc(100% - 10px);
      margin-left: 10px
    }
  
    .editorialText+.introPic.right {
      margin-left: calc(100% - 43vw)
    }
  
    .introPicText .text {
      font-size: 22px;
      line-height: 40px
    }
  
    .introPicText .leftQuo {
      font-size: 50px
    }
  
    .introPicText .rightQuo {
      font-size: 50px;
      position: absolute;
      bottom: -25px
    }
  
    .introPicText .text br {
      display: none
    }
  
    .text.limited {
      width: 100%
    }
  
    .detailSubtitle {
      font-size: 20px
    }
  
    .detailTitle {
      font-size: 25px
    }
  
    #detailTop .miniTitle {
      margin-top: 0
    }
  
    #detailSectionTitle .detailTitle {
      margin-top: 15px
    }
  
    .more p>span {
      margin-top: 30px;
      margin-right: 0
    }
  
    #detailSpaces .introPic {
      margin-top: -25vw
    }
  
    .fullPicture,
    .fullPictureSticky {
      height: 70vw !important
    }
  
    .fullPicture.azure img {
      width: 132%;
      left: -14.5%;
      top: 3%
    }
  
    .fullPicture.azure .fullPictureBlock {
      transform: scale(1)
    }
  
    #fullPictureTarget,
    #fullPictureTarget2,
    #fullPictureTarget3,
    #fullPictureTarget4 {
      height: 90vw !important
    }
  
    .locationContainer+.mainContainer {
      margin-top: 45vw
    }
  
    #detailBody .locationContainer+.mainContainer .detailBodyContent.scheme2 .left {
      order: 0;
      margin-top: 0
    }
  
    #detailBody .locationContainer+.mainContainer .detailBodyContent.scheme2 .right {
      order: 1;
      margin-top: 60px
    }
  
    #detailBody .locationContainer+.mainContainer .detailBodyContent.scheme3 .right {
      order: 0;
      margin-top: 0
    }
  
    #detailBody .locationContainer+.mainContainer .detailBodyContent.scheme3 .left {
      order: 1;
      margin-top: 60px
    }
  
    .locationContainer+.mainContainer+.fullPicture {
      margin-top: 120px
    }
  
    .mobileNegative {
      margin-top: -5vw
    }
  
    #detailSpacesContainer {
      width: 100%;
      position: relative;
      top: 0;
      margin-top: 60vw
    }
  
    #detailSpacesContainer.azure {
      margin-top: 80vw;
      top: 0
    }
  
    #detailSpaces {
      height: auto;
      margin-top: 26vw
    }
  
    #detailSpaces.azure {
      height: auto
    }
  
    .fullPicture.azure {
      top: 15vw;
      height: 55vw !important;
      width: 70vw;
      left: 20.5vw
    }
  
    #detailSpaces #detailSnippets {
      margin-top: 8vw;
      order: 0
    }
  
    #detailSpaces .mainContainer {
      position: relative
    }
  
    #detailSpacesContent {
      padding: 0 30px;
      align-items: center
    }
  
    .text.small,
    .text.tech,
    #overviewSnippetContainer .snippet:last-child {
      font-size: 16px;
      line-height: 28px
    }
  
    .text.tech.small,
    .text.tech.smaller {
      font-size: 14px !important;
      line-height: 26px
    }
  
    #detailSnippets .snippet {
      width: 100%;
      margin-top: 15px
    }
  
    #detailSnippets .snippet:first-child {
      margin-top: 0
    }
  
    .introLogo+#detailSnippets {
      margin-top: 30px
    }
  
    .introLogo {
      position: relative;
      top: 7.5vw;
      width: 42.5vw
    }
  
    #detailSpaces .snippet {
      text-align: center
    }
  
    #detailSpacesContent .slidingTitleBig,
    .locationNameContent .slidingTitleBig {
      top: 6.2vw;
      margin-left: 10px;
      margin-top: 0;
      order: 1;
      position: relative
    }
  
    #detailServices,
    #shopItems {
      margin-top: 60px
    }
  
    #detailServicesContent {
      order: 0;
      flex-direction: column;
      margin-left: 0;
      align-items: center
    }
  
    #detailServicesPic {
      order: 0;
      height: 66vw;
      width: 42vw;
      max-width: none;
      flex: auto;
      margin-top: 0
    }
  
    #detailServices .mainContainer {
      display: flex;
      flex-direction: column
    }
  
    #detailServicesLeft {
      order: 1;
      width: 100%;
      margin-top: 60px
    }
  
    #detailServicesLeft.noServicesPic {
      margin-top: 0
    }
  
    .listTitle {
      font-size: 33px;
      margin-left: 0
    }
  
    .listText {
      margin-left: 0;
      margin-top: 30px
    }
  
    .listItem {
      font-size: 18px;
      margin-top: 12px
    }
  
    .galleryContainer {
      height: 70vw !important
    }
  
    #styleDetailsTitle .slidingTitleSmall {
      margin-top: -13vw;
      font-size: 6vw
    }
  
    .styleDetail {
      min-width: 40vw
    }
  
    #styleDetailsScroller {
      display: flex;
      animation: styleDetailScroll 40s linear infinite
    }
  
    @keyframes styleDetailScroll {
      0% {
        transform: translateX(-5%)
      }
  
      100% {
        transform: translateX(-557.5%)
      }
    }
  
    #styleDetails .mainContainer {
      width: calc(100% - 60px)
    }
  
    #others .mainContainer {
      flex-direction: column
    }
  
    #otherFixed {
      order: 0;
      margin-left: 0;
      margin-top: 0
    }
  
    #otherFixed .blockTitle {
      text-align: center;
      font-size: 30px;
      line-height: 30px
    }
  
    #otherFixed .blockTitle br {
      display: none
    }
  
    #otherItems {
      order: 1;
      margin-top: 60px
    }
  
    .otherItemPic {
      width: 100%
    }
  
    .listItemTitle {
      font-size: 17px
    }
  
    .listItemSubtitle {
      font-size: 15px;
      margin-top: 0
    }
  
    #detailExpandableText,
    #detailExpandableText.big {
      order: 0;
      margin-left: 0;
      margin-top: 0
    }
  
    #detailInfo>.mainContainer {
      display: flex;
      flex-direction: column
    }
  
    #detailInfo>.mainContainer>.introPic {
      order: 1;
      margin-top: 60px
    }
  
    #detailInfo.noText>.mainContainer>.introPic {
      margin-top: 0
    }
  
    #detailInfo .snippet._2,
    #detailInfo .snippet._4,
    #detailInfoSecond .snippet._2,
    #detailInfoSecond .snippet._4 {
      margin-top: 0
    }
  
    #detailInfo .snippet br {}
  
    #detailSnippets {
      order: 3;
      width: 100%;
      margin-right: 0
    }
  
    #detailBody .mainContainer>.introPic {
      margin-top: -5vw
    }
  
    .compositionPicContainer {
      width: 100%;
      margin-left: 0;
      margin-right: 0;
      height: 62vw;
      order: 0;
      margin-bottom: 30px
    }
  
    .compositionText {
      margin-bottom: 60px;
      max-width: none;
      margin-top: 60px
    }
  
    #detailComposition .mainContainer,
    .infoBlock .mainContainer {
      flex-direction: column
    }
  
    .compositionPicContainer .tl._3 {
      font-size: 15vw;
      top: 20vw
    }
  
    .compositionPicContainer .tl._1 {
      top: 10vw;
      bottom: auto;
      left: 25vw
    }
  
    .text.big {
      font-size: 20px;
      line-height: 35px
    }
  
    .detailBodyContent {
      padding-left: 0;
      flex-direction: column
    }
  
    .detailBodyContent .blockTitle {
      margin-left: 0 !important;
      margin-top: 60px
    }
  
    #detailBody .detailBodyContent>.left,
    #detailBody .detailBodyContent>.right {
      width: 100% !important
    }
  
    .verticalPic {
      width: 100%;
      height: 140vw;
      margin-top: 40px;
      margin-left: 0
    }
  
    #detailBody .galleryContainer {
      height: 60vw
    }
  
    .detailBodyContent.summer .right {
      order: 1
    }
  
    #detailBody .detailBodyContent.scheme2>.right {
      order: 0;
      padding-left: 0
    }
  
    #detailBody .detailBodyContent.scheme2>.left {
      order: 1;
      margin-top: 60px;
      width: 100% !important;
      margin-left: 0
    }
  
    #detailBody .detailBodyContent.scheme2>.left:only-child {
      margin-top: 0
    }
  
    .menuPic img {
      height: 110%;
      top: -5%
    }
  
    .detailBodyContent.scheme3>.right {
      display: flex;
      justify-content: flex-end;
      margin-top: 60px
    }
  
    .detailBodyContent.scheme3>.right .introPic {
      transform: none !important;
      margin-right: 0
    }
  
    .menuBlock,
    .menuPic {
      width: 41vw;
      height: 41vw;
      margin-left: 0 !important;
      margin-right: 0
    }
  
    .detailBodyContent.scheme4 {
      padding-right: 0;
      width: 100% !important;
      margin-left: 0
    }
  
    .menu {
      display: flex;
      justify-content: space-between
    }
  
    .menu+.menu {
      margin-top: 2vw
    }
  
    .menuLayout .slidingTitleBig {
      position: relative;
      top: 5.45vw;
      font-size: 10vw
    }
  
    .menuBlock.small .slidingTitleBig,
    .menuBlock.mobileSmall .slidingTitleBig {
      font-size: 5vw;
      top: 2.6vw
    }
  
    .menu .oButton {
      position: absolute |important;
      top: 30% !important
    }
  
    .menuType {
      right: 0;
      top: 20px;
      font-size: 20px
    }
  
    #detailForm .mainBackground {
      left: 0;
      width: 100%
    }
  
    .formLayer {
      flex-direction: column;
      width: calc(100% - 20px);
      margin: auto;
      min-height: 45vw
    }
  
    .wpforms-confirmation-container {
      font-size: 16px;
      width: calc(100% - 5vw);
      line-height: 25px
    }
  
    .formContent {
      flex-direction: column
    }
  
    #formTitle {
      margin-left: 0;
      margin-top: -13.3vw
    }
  
    #detailForm {
      margin-top: calc(60px + 13.3vw)
    }
  
    #formTitle .slidingTitleBig {
      margin-top: -5.5vw
    }
  
    .formDescription {
      margin-left: 0
    }
  
    .formInfo.left {
      width: 100%
    }
  
    .formContainer .right {
      width: 100%;
      margin-right: 0;
      margin-left: 0;
      margin-top: 0
    }
  
    .formField {
      width: 100% !important;
      padding-bottom: 17px !important
    }
  
    .formField {
      margin-top: 20px
    }
  
    .formField select,
    ::-webkit-input-placeholder,
    .formField input,
    .wpforms-container label {
      font-size: 14px
    }
  
    .wpforms-field-description {
      font-size: 12px !important;
      padding: 5px 5px 0 !important
    }
  
    .wpforms-container .wpforms-submit-container {
      padding: 0 !important;
      width: 100%
    }
  
    .wpforms-submit {
      margin-right: 0;
      border: none !important
    }
  
    .formContainer {
      margin: 0;
      width: 100%
    }
  
    .wpforms-container label.wpforms-error {
      bottom: 0
    }
  
    .taste .backgroundScheme .mainBackground {
      top: 5vw
    }
  
    .compositionPicContainer.reversed .tl._3 {
      bottom: 5vw;
      top: auto;
      right: 5vw
    }
  
    .compositionPicContainer.reversed .tl._1 {
      left: 8vw;
      top: auto;
      bottom: 2vw;
      opacity: .8
    }
  
    .backgroundScheme .mainContainer {
      margin-top: 0;
      flex-direction: column
    }
  
    .taste .compositionPicContainer {
      margin-left: 0
    }
  
    .backgroundScheme+.mainContainer .detailBodyContent.scheme1 {
      margin-top: 0
    }
  
    .infoBlock .blockText>.text {
      text-align: center;
      font-size: 20px
    }
  
    .infoBlock .blockText>.text.tech {
      font-size: 16px !important
    }
  
    .outerBlock {
      width: 100%;
      margin-top: 30px;
      padding: 25px 20px
    }
  
    .outerRow {
      flex-direction: column
    }
  
    .outerDescription {
      margin-top: 30px;
      font-size: 14px;
      text-align: center;
      align-items: center
    }
  
    .infoBlock .mainBackground {
      top: 0
    }
  
    .infoBlock .mainContainer {
      margin-top: 30px;
      width: calc(100% - 90px)
    }
  
    .outerRow._1 img {
      width: 75px
    }
  
    .ab .outerRow._1 img {
      width: 200px
    }
  
    .outerRow._2 img.ruinart {
      width: 100px
    }
  
    .scheme1.simpler .text {
      margin-left: 0
    }
  
    .outerBlock.ruinart .outerPic {
      width: 200px
    }
  
    #detailBody .detailBodyContent.scheme1 .left .text:only-child {
      margin-top: 60px
    }
  
    #detailSpaces+#detailBody .detailBodyContent.scheme1 .left .text:only-child {
      margin-top: 0
    }
  
    #detailTop+#detailSpaces+#detailTop {
      margin-top: 60vw
    }
  
    .seascape .compositionPicContainer {
      order: 0
    }
  
    .seascape .compositionText {
      order: 1
    }
  
    #detailTextSpecial {
      order: 4;
      width: 100%;
      margin-left: 10px
    }
  
    .simplePicture {
      height: 70vw
    }
  
    #detailTopSecond .oLeftBar {
      width: 20px;
      position: absolute;
      left: -35px;
      height: calc(100% - 65px)
    }
  
    .detailBodyContent.scheme3 .blockTitle {
      margin-top: 0
    }
  
    #detailIntroTitle br {
      display: none
    }
  
    #detailInfo .mainContainer #detailSnippets:only-child {
      margin-top: 0
    }
  
    .profileTitle {
      font-size: 30px;
      margin-left: 0
    }
  
    .profileLogo {
      position: relative;
      top: 0;
      left: 0;
      display: block;
      right: auto;
      margin-top: 50px;
      width: 150px
    }
  
    .profileContent {
      flex-direction: column
    }
  
    .profilePic,
    .profilePic.sustainability {
      width: 100%;
      height: 129vw;
      margin-left: 0;
      margin-top: 50px
    }
  
    .locationContainer+.mainContainer .text.big br {
      display: none
    }
  
    #detailSpaces+#detailBody {
      margin-top: 30px
    }
  
    .pressButton {
      margin-top: 10px
    }
  
    #navBar {
      display: none
    }
  
    #navBackground {
      width: calc(100% - 10px);
      height: calc(100% - 10px);
      border-radius: 15px;
      top: 5px;
      left: 5px
    }
  
    #navScroller {
      padding-bottom: 165px
    }
  
    #navTop {
      padding: 25px 0;
      margin-top: 55px;
      margin-left: 0;
      width: 100%;
      height: calc(100% - 110px)
    }
  
    .navSection {
      margin-top: 30px
    }
  
    .navSectionItems {
      margin-top: 1.5vh
    }
  
    .navItem {
      font-size: 18px;
      padding: 5px 0;
      margin: 0
    }
  
    .subItem {
      height: auto
    }
  
    .navItem:after {
      top: 1px;
      height: 26px;
      left: -9px;
      width: calc(100% + 17px)
    }
  
    .navItem:hover .subItem svg {
      transform: translateX(10px)rotateZ(45deg)
    }
  
    #navBottom {
      justify-content: space-between
    }
  
    #navBottom .socials {
      order: 1;
      justify-content: flex-end;
      min-width: 0;
      margin-right: 25px;
      display: flex
    }
  
    #navBottom .socials svg {
      height: 18px
    }
  
    #navBottom .socials .tw {
      margin-left: 12px
    }
  
    #navBottom .socials .ig {
      margin-left: 10px
    }
  
    .navSection:after {
      top: 50px
    }
  
    .subItem .subTitle {
      display: none
    }
  
    .subItem:before {
      content: none
    }
  
    .navSectionTitle {
      padding-right: 0;
      font-size: 24px
    }
  
    #navContent {
      padding-right: 0;
      padding-left: 0;
      margin: 0 10px
    }
  
    .c-scrollbar {
      right: 2px;
      overflow: hidden
    }
  
    .mobileArrow {
      width: 30px;
      height: 30px;
      border-radius: 50px;
      display: flex;
      align-items: center;
      justify-content: center
    }
  
    .mobileArrow.left {
      margin-left: 15px
    }
  
    .mobileArrow.right {
      margin-right: 15px
    }
  
    .mobileArrow.left .oArrow {
      transform: rotateZ(-135deg)
    }
  
    .mobileArrow.right .oArrow {}
  
    .galleryContainer .activeLayer {
      display: flex;
      align-items: center
    }
  
    .galleryContainer .activeLayer.right {
      justify-content: flex-end
    }
  
    .sliderPreview {
      position: relative;
      top: 0;
      width: 100%;
      right: 0;
      bottom: 0
    }
  
    .photogalleryMarginBottom {
      margin-bottom: 100px
    }
  
    .hExperienceArrow svg {
      width: 8px
    }
  
    .hExperienceArrow {
      width: 25px;
      height: 25px
    }
  
    .styleLogo:nth-child(1),
    .styleLogo:nth-child(2) {
      margin-top: 0
    }
  
    .styleLogo,
    .styleLogo.smaller,
    .styleLogo.smaller.left,
    .styleLogo.smaller.right {
      width: 40%;
      margin-left: 0;
      margin-right: 0;
      margin-top: 60px;
      flex: inherit
    }
  
    #styleDetailsLogos {
      padding: 30px;
      justify-content: space-between
    }
  
    .styleLogo img.tinyLogo {
      width: 75%
    }
  
    .styleLogo img.smallerLogo {
      width: 50%
    }
  
    .styleLogo img.smallestLogo {
      width: 30%
    }
  
    .styleLogo:nth-child(3) {
      margin-top: 30px
    }
  
    .styleLogo img {
      width: 100%
    }
  
    .wind_direction img {
      display: none
    }
  
    #mainLogo.menuForced {
      transform: translateY(0)
    }
  
    .formField.wpforms-field-checkbox.multiple {
      flex-direction: column
    }
  
    .formField.wpforms-field-checkbox.multiple ul {
      width: 100%;
      margin-top: 15px
    }
  
    .formField.wpforms-field-checkbox input[type=checkbox]+label {
      background-position: -4px -3px
    }
  
    .formField.wpforms-field-checkbox input[type=checkbox]:checked+label {
      background-position: -4px -28px
    }
  
    .formField.right input,
    .formField.right textarea {
      width: 100%
    }
  
    .langsContainer a {
      font-size: 16px
    }
  
    .overlay .mainBackground {
      width: calc(100% - 10px);
      height: calc(100% - 10px);
      border-radius: 15px;
      top: 5px;
      left: 5px
    }
  
    .overlayContainer {
      width: calc(100% - 50px);
      max-width: 280px
    }
  
    .ovGroup input,
    .ovGroup select {
      font-size: 18px;
      letter-spacing: 0;
      margin-left: 20px
    }
  
    .overlayLabel {
      width: 100px;
      font-size: 18px
    }
  
    .bookGuests .icoContainer {
      margin-left: 56px
    }
  
    .ovGroup select {
      margin-left: 0;
      padding-left: 50px
    }
  
    .overlayClose {
      transform: scale(.8);
      top: 10px;
      right: 10px;
      z-index: 2
    }
  
    .lang-item {
      margin-left: 30px;
      position: relative
    }
  
    .lang-item:before {
      right: -15px
    }
  
    .ovPeople {
      font-size: 20px
    }
  
    .ovSmall {
      font-size: 13px;
      line-height: 20px
    }
  
    #thanksOverlay .overlayContainer {
      max-height: 300px
    }
  
    #creditsOverlay .overlayContainer {
      max-height: 530px
    }
  
    .ovGroup {
      padding-bottom: 15px
    }
  
    #bookOverlay .ovGroup {
      padding-bottom: 5px
    }
  
    .ovGroup.leaders {
      margin-top: 0;
      width: auto
    }
  
    .text.tech.small.ovRole {
      line-height: 20px
    }
  
    #menuClose .circlePath {
      display: none
    }
  
    #menuClose {
      top: 11px;
      left: 9px;
      transform: scale(1.2)
    }
  
    #partners {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap
    }
  
    .partner {
      width: 40% !important;
      display: flex;
      justify-content: center;
      max-width: none !important
    }
  
    .partner.slh img {
      max-width: 80px
    }
  
    .partner.virtuoso img {
      max-width: 162px
    }
  
    .partner.ae {
      margin-top: 77px
    }
  
    .partner.michelin {
      margin-top: 50px
    }
  
    .partner.ae img {
      max-width: 100px
    }
  
    .partner.michelin img {
      max-width: 71px
    }
  
    .partner.traveller {
      margin-top: 66px
    }
  
    #footerDataBottom .weatherContainer {
      flex-wrap: wrap;
      padding: 90px 40px;
      align-items: center
    }
  
    #scrollDown {
      width: 200px;
      margin-left: -100px;
      letter-spacing: .5px;
      text-align: center;
      bottom: 174px
    }
  
    #verticalArrow {
      transform: rotateZ(180deg)
    }
  
    .scrollDownText {
      font-size: 12px
    }
  
    .mobile {
      margin-right: 10px
    }
  
    .amalfiFirst {
      margin-top: 60px
    }
  
    #formTitle .slidingTitleSmall {
      height: 13.3vw;
      display: flex;
      align-items: flex-end
    }
  
    .navSection:last-child .navItem {
      color: #6f6359 !important
    }
  
    .newsletter_input.title {
      width: 50px
    }
  
    .bodyParagraphTitle h2 {
      font-size: 20px;
      top: 11px
    }
  
    .textIndexContainer,
    .bodyParagraphContainer {
      width: 100%
    }
  
    #pressBody {
      padding-top: 90px
    }
  
    #pressContainer {
      width: calc(100% - 20px);
      margin-left: 10px
    }
  
    #pressContainer #detailSnippets {
      width: 70px;
      order: 0
    }
  
    .pressContent .locationNameContainer {
      width: 100%
    }
  
    .pressContent .locationNameContent {
      margin-top: 0
    }
  
    .pressContent .locationContainer+.locationContainer {
      margin-top: 35vw
    }
  
    .pressList {
      width: 100%
    }
  
    .pressList .text.big {
      text-transform: lowercase;
      font-size: 18px
    }
  
    #pressBody+#clocks {
      margin-top: 160px
    }
  
    #pressTarget {
      height: calc(100% - 90px)
    }
  
    .outerBlock.cnd {
      height: auto
    }
  
    .ovGroup.leaders .ovSmall {
      padding-bottom: 4px;
      line-height: 17px
    }
  
    .ovGroup.leaders img {
      top: -15px
    }
  
    header .ig {
      position: absolute;
      left: 3px;
      top: 50px
    }
  
    header .fb {
      position: absolute;
      left: 2px;
      top: 100px
    }
  
    .headerButton.dark.ig .icon .fillColor,
    .headerButton.dark.fb .icon .fillColor {
      fill: #6e6259
    }
  
    .headerButton.hidden.ig,
    .headerButton.hidden.fb {
      transform: translateX(-40px);
      transition-delay: 0ms
    }
  
    .headerButton.ig.menuForced,
    .headerButton.fb.menuForced {
      transform: translateX(-40px) !important
    }
  
    #text #detailSectionTitle {
      margin-top: -5px
    }
  
    #bodyIndex {
      margin-top: 22px
    }
  
    #reserveTable {
      top: auto;
      bottom: 15px;
      position: fixed;
      right: 34px;
      width: auto;
      margin-right: 0
    }
  
    .sustainabilityIco {
      left: -70px
    }
  
    .sustainabilityIco img {
      transform: scale(.6)
    }
  
    .sustainabilityText,
    .sustainabilityText.wide {
      margin-left: 56px;
      width: auto
    }
  
    .titleLogo.sustainability img {
      width: 20vw;
      margin-top: -1.5vw
    }
  
    .introLogo a.smaller.text.tech {
      font-size: 11px !important
    }
  
    html[lang=en] .titleLogo.sustainability img {
      margin-top: 4vw
    }
  }