@font-face {
    font-family: geometria;
    src: url(../fonts/Geometria-Light.woff)format('woff');
    font-weight: 300;
}

@font-face {
    font-family: geometria;
    src: url(../fonts/Geometria.woff)format('woff');
    font-weight: 400
}

@font-face {
    font-family: geometria;
    src: url(../fonts/Geometria-Medium.woff)format('woff');
    font-weight: 600
}

body {
    color: #6e6259;
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    background: #fff;
    cursor: default;
    overflow: hidden
}

body::-webkit-scrollbar {
    display: none
}

body * {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none
}

body.exiting {
    opacity: 0;
    -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)
}

a {
    text-decoration: none;
    color: #333
}

p>a {
    text-decoration: underline
}

.relative {
    position: relative
}

.absolute {
    position: absolute
}

.above {
    z-index: 2;
    position: relative
}

.uppercase {
    text-transform: uppercase
}

.capitalize {
    text-transform: capitalize
}

.lowercase {
    text-transform: lowercase
}

.fit {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    will-change: transform
}

.fit.bottom {
    object-position: bottom
}

.fit.top {
    object-position: top
}

.fit.left {
    object-position: left
}

.fit.right {
    object-position: right
}

.no_events {
    pointer-events: none
}

.no_opacity {
    opacity: 0!important;
    pointer-events: none
}

.invisible {
    visibility: hidden
}

.no_opacity.show,.show .no_opacity {
    opacity: 1!important;
    pointer-events: all
}

.no_transition {
    transition: none!important
}

.no_width {
    transform: scale(0,1);
    pointer-events: none
}

.no_height {
    transform: scale(1,0);
    pointer-events: none
}

.no_overflow {
    overflow: hidden
}

.top_hidden {
    -webkit-transform: translateY(101%);
    transform: translateY(101%)
}

.top_low {
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    opacity: 0
}

.top_ultralow {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
    opacity: 0
}

.top_single {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0
}

.top_double {
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    opacity: 0
}

.left_single {
    -webkit-transform: translateX(25px);
    transform: translateX(25px);
    opacity: 0
}

.left_double {
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
    opacity: 0
}

.top_translated {
    -webkit-transform: translateY(25vw);
    transform: translateY(25vw)
}

.top_translated.less {
    -webkit-transform: translateY(10vw);
    transform: translateY(10vw)
}

.top_translated.full {
    -webkit-transform: translateY(100vh);
    transform: translateY(100vh)
}

.scaled {
    transform: scale(1.03)
}

.top_double.show,.show .top_double,.top_single.show,.show .top_single,.top_low.show,.show .top_low,.top_ultralow.show,.show .top_ultralow,.left_single.show,.left_double.show,.show .left_single,.show .left_double,.scaled.show,.show .scaled {
    -webkit-transform: none;
    transform: none;
    opacity: 1
}

.top_hidden.show,.top_translated.show,.show .top_hidden,.show .top_translated,.no_width.show,.show .no_width,.no_height.show,.show .no_height {
    -webkit-transform: none;
    transform: none;
    pointer-events: all
}

.t_container {
    transform: translateX(0);
    height: 100%
}

.t_container:nth-child(2) {
    transition-delay: 100ms
}

.mask_left {
    transform: translateX(50%);
    display: block
}

.mask_left.full {
    transform: translateX(-100%)
}

.mask_left .t_container {
    transform: translateX(-100%);
    display: block
}

.mask_left.full .t_container {
    transform: translateX(100%)
}

.t_container img {
    transform: scale(1.05)
}

.mask_right {
    transform: translateX(-50%)
}

.mask_right .t_container {
    transform: translateX(100%)
}

.mask_right.full {
    transform: translateX(100%)
}

.mask_right.full .t_container {
    transform: translateX(-100%)
}

.mask_top {
    transform: translateY(-50%)
}

.mask_top .t_container {
    transform: translateY(50%)
}

.mask_top.full {
    transform: translateY(-100%)
}

.mask_top .t_container {
    transform: translateY(100%)
}

.mask_bottom {
    transform: translateY(50%)
}

.mask_bottom .t_container {
    transform: translateY(-50%)
}

.mask_bottom.full {
    transform: translateY(100%)
}

.mask_bottom.full .t_container {
    transform: translateY(-100%)
}

.mobileOnly {
    display: none!important
}

.show>.mask_bottom,.show>.mask_left,.show>.mask_left .t_container,.show>.mask_left .t_container img,.show>.mask_right,.show>.mask_right .t_container,.show>.mask_right .t_container img,.show>.mask_top,.show>.mask_top .t_container,.show>.mask_top .t_container img,.show>.mask_bottom,.show>.mask_bottom .t_container,.show>.mask_bottom .t_container img {
    transform: none
}

.transition_all {
    transition-property: all!important
}

.has_transition_5000 {
    -webkit-transition: -webkit-transform 5e3ms cubic-bezier(.19,1,.22,1),opacity 5e3ms cubic-bezier(.19,1,.22,1);
    transition: transform 5e3ms cubic-bezier(.19,1,.22,1),opacity 5e3ms cubic-bezier(.19,1,.22,1)
}

.has_transition_3000 {
    -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)
}

.has_transition_2000 {
    -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)
}

.has_transition_1500 {
    -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)
}

.has_transition_1000 {
    -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)
}

.has_transition_800 {
    -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)
}

.has_transition_400 {
    -webkit-transition: -webkit-transform 400ms cubic-bezier(.19,1,.22,1),opacity 400ms cubic-bezier(.19,1,.22,1);
    transition: transform 400ms cubic-bezier(.19,1,.22,1),opacity 400ms cubic-bezier(.19,1,.22,1)
}

.has_transition_2000_inout {
    -webkit-transition: -webkit-transform 2e3ms cubic-bezier(.575,.005,.285,1.005),opacity 2e3ms cubic-bezier(.575,.005,.285,1.005);
    transition: transform 2e3ms cubic-bezier(.575,.005,.285,1.005),opacity 2e3ms cubic-bezier(.575,.005,.285,1.005)
}

.has_transition_1500_inout {
    -webkit-transition: -webkit-transform 1500ms cubic-bezier(.575,.005,.285,1.005),opacity 1500ms cubic-bezier(.575,.005,.285,1.005);
    transition: transform 1500ms cubic-bezier(.575,.005,.285,1.005),opacity 1500ms cubic-bezier(.575,.005,.285,1.005)
}

.has_transition_1000_inout {
    -webkit-transition: -webkit-transform 1e3ms cubic-bezier(.575,.005,.285,1.005),opacity 1e3ms cubic-bezier(.575,.005,.285,1.005);
    transition: transform 1e3ms cubic-bezier(.575,.005,.285,1.005),opacity 1e3ms cubic-bezier(.575,.005,.285,1.005)
}

.show .d50,.show.d50 {
    transition-delay: 50ms
}

.show .d100,.show.d100 {
    transition-delay: 100ms
}

.show .d150,.show.d150 {
    transition-delay: 150ms
}

.show .d200,.show.d200 {
    transition-delay: 200ms
}

.show .d250,.show.d250 {
    transition-delay: 250ms
}

.show .d300,.show.d300 {
    transition-delay: 300ms
}

.show .d350,.show.d350 {
    transition-delay: 350ms
}

.show .d400,.show.d400 {
    transition-delay: 400ms
}

.show .d450,.show.d450 {
    transition-delay: 450ms
}

.show .d500,.show.d500 {
    transition-delay: 500ms
}

.show .d550,.show.d550 {
    transition-delay: 550ms
}

.show .d600,.show.d600 {
    transition-delay: 600ms
}

.show .d650,.show.d650 {
    transition-delay: 650ms
}

.show .d700,.show.d700 {
    transition-delay: 700ms
}

.show .d750,.show.d750 {
    transition-delay: 750ms
}

.show .d800,.show.d800 {
    transition-delay: 800ms
}

.show .d900,.show.d900 {
    transition-delay: 900ms
}

.show .d950,.show.d950 {
    transition-delay: 950ms
}

.show .d1000,.show.d1000 {
    transition-delay: 1e3ms
}

.show .d1050,.show.d1050 {
    transition-delay: 1050ms
}

.show .d1100,.show.d1100 {
    transition-delay: 1100ms
}

.show .d1150,.show.d1150 {
    transition-delay: 1150ms
}

.show .d1200,.show.d1200 {
    transition-delay: 1200ms
}

.show .d1250,.show.d1250 {
    transition-delay: 1250ms
}

.show .d1300,.show.d1300 {
    transition-delay: 1300ms
}

.show .d1350,.show.d1350 {
    transition-delay: 1350ms
}

.show .d1400,.show.d1400 {
    transition-delay: 1400ms
}

.show .d1500,.show.d1500 {
    transition-delay: 1500ms
}

.show .d1600,.show.d1600 {
    transition-delay: 1600ms
}

.show .d1700,.show.d1700 {
    transition-delay: 1700ms
}

.show .d1800,.show.d1800 {
    transition-delay: 1800ms
}

.show .d1900,.show.d1900 {
    transition-delay: 1900ms
}

.show .d2000,.show.d2000 {
    transition-delay: 2e3ms
}

.show .d2100,.show.d2100 {
    transition-delay: 2100ms
}

.show .d2200,.show.d2200 {
    transition-delay: 2200ms
}

.show .d2300,.show.d2300 {
    transition-delay: 2300ms
}

.show .d2400,.show.d2400 {
    transition-delay: 2400ms
}

.show .d2500,.show.d2500 {
    transition-delay: 2500ms
}

.full_width {
    width: 100%;
    height: auto
}

.full_height {
    height: 100%;
    width: auto
}

.block {
    display: block
}

span.block {
    will-change: transform
}

.inline_block {
    display: inline-block;
    will-change: transform
}

.centered {
    text-align: center
}

.flex {
    display: flex
}

.bWhite {
    background: #fff
}

.bAlyssum {
    background: #D8F8E4
}

.bTortora {
    background: #d7d2cb
}
.bCream{
    background: #F7FAF8;
}
.bFango {
    background: #b6ada5
}

.bArgilla {
    background: #8c8279
}

.bMarrone {
    background: #6e6259
}

.bGreige {
    background: #9d968d
}

.cWhite {
    color: #fff
}

.cAlyssum {
    color: #eae6e0
}

.cTortora {
    color: #d7d2cb
}

.cFango {
    color: #b6ada5
}

.cArgilla {
    color: #8c8279
}

.cMarrone {
    color: #6e6259
}

.cGreige {
    color: #9d968d
}

.mobileArrow {
    display: none
}

section {
    position: relative;
    width: 100%;
    display: flex
}

article {
    transform: translate3d(0,0,0);
    backface-visibility: hidden
}

.halfMargin {
    margin-top: 2.5vw
}

.margin {
    margin-top: 5vw
}

.doubleMargin {
    margin-top: 10vw
}

.tripleMargin {
    margin-top: 15vw
}

.layerUpdate {
    position: absolute;
    top: 0
}

#bannerTop {
    position: relative;
    height: 200vh;
    transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
}

#hElementsLayer {
    height: 100vh;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    will-change: transform;
    z-index: 1;
}

#scrollDown {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: absolute;
    bottom: 5%;
    right: 0;
    left: 0;
    text-align: center;
	width: max-content;
	margin: auto;
}

.scrollDownText {
    font-family: geometria;
    font-weight: 300;
    font-size: 14px;
    letter-spacing: .5px;
    margin-top: 12px
}

#verticalArrow {
    height: 60px
}

svg * {
    will-change: transform
}

#bannerImgContainer {
    transform: scale(1.01);
    height: 100vh;
    opacity: 0;
    width: 100vw
}

#bannerImgContainer.show {
    opacity: 1;
    transform: scale(1)
}

#bannerImgLayer {
    position: absolute;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0
}

#imageCover {
    height: 100%;
    overflow: hidden;
    width: 190vw
}
#bannerImg {
    width: 100vw
}

#bannerTarget {
    position: absolute;
    top: 100vh;
    height: 50vh
}

#hPayTarget {
    position: absolute;
    top: 50vh;
    height: calc(100% - 50vh)
}

#hPayLayer {
    font-family: Geometria;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    flex-direction: column
}

#hPayLayer span {
    will-change: transform
}

#payLook {
    font-size: 13vw;
    font-weight: 300;
    margin-left: 8vw;
    height: 20vh;
    margin-top: 6vh;
    display: flex;
    position: relative;
    align-items: center
}


#payLimits {
    font-size: 2.5vw;
    font-weight: 400;
    position: absolute;
/*     top: calc(50% + 2.3vw); */
	bottom: -2vh;
    left: 19vw
}

#hStrip {
    width: 75vw;
    margin-top: 2.5vw;
    height: 40vh
}

#hImgStrip {
    top: -35%;
    height: 100%;
    width: 100%;
}

#payFind {
    font-size: 5.5vw;
    line-height: 6vw;
    font-weight: 300;
    margin-right: 7.5vw;
    align-self: flex-end;
    margin-top: -5vw
}

#payPerfection {
    font-size: 7vw;
    line-height: 8vw;
    margin-top: .5vw;
    font-weight: 500;
    margin-right: 7.5vw;
    align-self: flex-end
}

#bannerLogo {
    position: absolute;
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
    width: 100%;
}

#navLogo .fillColor {
    fill: #fff
}

#hLogo .logoLine {
    transform-origin: center
}
.cWhite {
    color: #fff
}
.cDark {
    color: #22242A;
}
.cBlueDianne{
    color: #114556;
}
.cTourBlue{
    color: #58D5DB;
}
.cCream {
    color: #FFE0C2;
}
.cPermint{
    color: #D8F8E4;
}
.cHerp{
    color: #E7EFEC;
}
.cLaGreen {
    color: #007F39;
}
.cGrey {
    color: #D5D5D5;
}
.page-template #mainHeader{
    
    background: transparent;
}
#mainHeader {
    position: fixed;
    background: #d7d2cb;
    top: 0;
    left: 0;
    padding-right: 20px;
    z-index: 3;
    display: flex;
    align-items: center;
    height: 90px;
    justify-content: space-between;
    width: 100%;
    box-sizing: border-box;
    pointer-events: none
}

#headerShowTarget {
    position: absolute;
    top: 105vh
}

#headerHideTarget {
    position: absolute;
    top: 110vh
}

#textSwitch {
    position: absolute;
    z-index: 1;
    bottom: 30px;
    right: 2vw
}

#mainLogo {
    width: 260px;
    display: flex;
    align-items: center;
    margin-left: -56px
}

#mainLogo img {
    transform: translateX(30px);
	height: 40px;
}

#mainLogo.hidden,#mainLogo.menuForced {
    transform: translateY(-65px)
}

#mainLogo .fillColor {
    fill: #fff
}

#mainLogo.dark .fillColor {
    fill: #9d968d
}

#mainMenuController {
    width: 7.75vw;
    height: 40px;
    will-change: transform;
    cursor: pointer;
    z-index: 1;
    position: relative
}

#menuClose {
    width: 38px;
    height: 38px;
    top: 26px;
    left: 55px;
    z-index: 1
}

#mainMenuController:after {
    content: '';
    position: absolute;
    width: 60px;
    height: 60px;
    background: #eae6e0;
    left: calc(50% - 30px);
    opacity: 0;
    top: -10px;
    border-radius: 50px;
    transform: scale(.2);
    -webkit-transition: -webkit-transform 800ms cubic-bezier(.19,1,.22,1),opacity 600ms cubic-bezier(.19,1,.22,1);
    transition: transform 800ms cubic-bezier(.19,1,.22,1),opacity 600ms cubic-bezier(.19,1,.22,1);
    z-index: -1
}

#mainMenuController.show:hover:after {
    transform: scale(1);
    opacity: .7
}

.menuLines {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

@media all and (min-width: 961px) {
    #mainMenuController.show:hover .line {
        background:#6e6259;
        transition: background 1e3ms cubic-bezier(.19,1,.22,1),fill 1e3ms cubic-bezier(.19,1,.22,1),transform 1500ms cubic-bezier(.19,1,.22,1);
        transition-delay: 0ms!important
    }
}

.quickColor {
    transition: background 1e3ms cubic-bezier(.19,1,.22,1),fill 1e3ms cubic-bezier(.19,1,.22,1);
    transition-delay: 0ms!important
}

.menuController .line {
    width: 25px;
    height: 3px;
    background: #fff
}

.menuController .fillColor,.headerButton .circlePath .fillColor {
    stroke: #fff
}

.menuController .line {
    margin-top: 4px
}

.menuController .line._1 {
    margin-top: 0
}

.menuController .line._2 {
    transition-delay: 50ms
}

.menuController .line._3 {
    transition-delay: 100ms
}

.menuController.dark .line {
    background: #9d968d
}

.circlePath {
    font-size: 38px;
    transform: scale(.5);
    opacity: 0
}

.show .circlePath {
    transform: scale(1);
    opacity: 1
}

.headerButton.dark .circlePath {
    color: #9d968d
}

.headerButton.dark .icon {
    color: #9d968d
}
.headerButton.dark svg.icon {
    fill: #9d968d
}
.headerButton .icon {
    transform: scale(.5);
    opacity: 0;
    z-index: 1
}

.show .icon {
    transform: scale(1);
    opacity: 1
}

.headerButton.hidden {
    transform: translateY(-65px)
}

.headerButton:hover .circlePath {
    color: #000;
}

.headerButton:hover .icon {
    color: #000;
}
.headerButton:hover svg.icon {
    fill: #000;
}

.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.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: geometria;
    font-size: 13px
}

.oSymbol {
    position: absolute;
    right: -12px;
    top: 0px
}

.oArrow {
    width: 10px;
    transform: rotateZ(-45deg)
}

.oArrow.fillColor {
    fill: #6e6259
}

.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 {
    fill: #9c998f
}

#bookNow.dark:hover .oSymbol .fillColor {
    fill: #fff
}

.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.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(-90deg)translateX(0px)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: 30px;
    height: 30px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    margin-right: 10px;
}
.headerButton.menuForced {
    transform: none!important
}

.headerButton .icon {
    color: #fff;
    font-size: 14px;
    
}

.socialIcon svg.icon{
    width: 14px;
    fill: #fff;
}
.headerButton .circlePath {
    position: absolute;
    left: 0;
    top: 0;
    color: #fff;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mainBackground+.mainContainer {
    z-index: 1
}

.text {
    font-family: geometria;
    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: geometria
}
.bodyContent .bodyText {
    font-size: 17px;
    line-height: 26px;
}
.compositionText {
    max-width: 280px
}

.geometria {
    font-family: Geometria
}

.text.tech {
    font-family: geometria;
    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: geometria;
    text-transform: lowercase
}

.introText {
    width: 100%;
    text-align: center;
}
.introText p{
    font-size: 32px;
}

.introTextContainer {
    display: flex;
    justify-content: center
}

#partners {
    display: flex;
    justify-content: space-between;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}

#partners .partner{
    width: 20%;
}
.partners-icons.show{
    -webkit-transform: none;
    transform: none;
    opacity: 1;
}
.partners-icons {
    text-align: center;
    /* -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0; */
}
.partners-icons svg {
    width: 100px;
    height: 100px;
    display: block;
    background: #114556;
    margin: auto;
    padding: 34px;
    border-radius: 50%;
}
.partners-icons svg path {
    fill: #58D5DB;
}
.partners-icons .partners-text {
    font-size: 20px;
    color: #22242A;
    font-family: 'geometria';
    line-height: 29px;
}
.mainBackground {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    will-change: transform
}

#ethos {
    display: flex
}

.introPic {
    width: 17.5vw;
    position: relative;
    height: 11.5vw;
    max-width: 330px
}

.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: 4vw;
    font-family: geometria;
    line-height: 4.2vw;
    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: 2vw;
    max-width: 500px;
    display: flex;
    justify-content: center;
	flex-direction: column;
    margin-top: 5vw
}
#ethosText p span{
    
    font-weight: 700;
    text-transform: uppercase;
    font-style: italic;
}
.tl {
    opacity: .6
}

.tl._1 {
    font-family: Geometria;
    font-size: 7.5vw;
    color: #fff;
    position: absolute;
    top: 5vw;
    left: 2.5vw;
    font-weight: 300;
    will-change: transform
}

.tl._1.smaller {
    font-size: 7.5vw
}

.tl._2 {
    font-family: geometria;
    font-size: 4vw;
    color: #114556;
    position: absolute;
    bottom: -19vh;
    left: 12.5vh;
    will-change: transform;
    opacity: 0.7;
}

.tl._3 span {
    transform: rotateZ(180deg);
    display: block;
    will-change: transform;
    writing-mode: tb
}

.tl._3 {
    font-family: geometria;
    font-size: 8vw;
    color: #fff;
    opacity: .6;
    position: absolute;
    top: 15vh;
    left: 50vw;
    font-weight: 300;
    will-change: transform;
    text-transform: uppercase;
    text-align: center;
    display: flex;
    justify-content: center;
}


#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: Geometria;
    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;
}

#hDiningIntroPic {
    margin-top: -6vw;
    align-self: flex-end
}

#hDiningScroll {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1;
}

#hDiningItems {
    /* width: 52.5vw; */
    will-change: transform
}

.hDiningItemPic {
    height: 40vw
}

.long .hDiningItemPic {
    height: 13.2vw
}

#hDining .mainBackground {
    height: 41vw
}

.listItemTitle {
    text-align: left;
    margin-top: 25px;
    font-family: geometria;
    font-size: 24px
}

.listItemSubtitle {
    text-align: center;
    font-family: geometria;
    text-transform: uppercase;
    margin-top: 5px;
    font-size: 22px
}

.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;
    width: 100%;
}

.panelLabel {
    font-family: Geometria;
    font-size: 2vw
}

.panelLabel * {
    font-weight: 300
}

footer.mainFooter {
    height: 200vh
}

#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
}
.footer-content-right {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}
#footerLogo {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #D5D5D5;
    padding-bottom: 20px;
}
#footerInfo {
    width: 100%;
    text-align: center;
}
#footerInfo p{
    margin-top: 30px;
}
#footerInfo p:first-child{
    margin-top: 0px;
}
#footerInfo p,#footerInfo a {
    font-family: Geometria;
    font-size: 16px;
    line-height: 24px;
    text-decoration: none;
    text-align: center;
    color: #22242A;
}
#footerRight {
    width: 100%;
    text-align: center;
}
#footerRight p {
    text-align: center;
    width: 100%;
    font-size: 16px;
    line-height: 23px;
    font-family: 'geometria';
}
#copyright {
    margin-bottom: 20px
}

#copyright p {
    font-family: geometria;
    font-size: 14px;
    color: #22242A;
    opacity: 0.7;
    text-align: center;
    text-decoration: none;
}

.socials {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.socials a {
    display: inline-block;
    padding: 12px;
}
.socials svg {
    fill: #007F39;
    width: 20px;
    display: block;
}
#footerData {
    position: absolute;
    left: 100%;
    width: 50%;
    height: 100%;
    top: 0;
    flex-direction: column;
    display: flex;
    will-change: transform;
    align-items: center;
    padding: 30px 80px;
    justify-content: space-between;
    background: #e7efec59;
}

#footerDataBottom {
    flex: 1;
    display: flex;
    align-items: center
}

.partner {
    width: 20%
}

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
}
#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;
    margin-left: 10px;
    width: calc(100% - 20px)
}

#navBottom .socials {
    min-width: 320px;
    display: flex;
    flex-direction: row;
    margin-bottom: 0;
    justify-content: center
}

#navBottom .socials .ig,#navBottom .socials .tw {
    margin-top: 0
}


#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: 130px
}

#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: geometria;
    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: 7.5vh
}

.navSection:first-child {
    margin-top: 0
}

.navSectionTitle {
    font-family: Geometria;
    color: #fff;
    font-size: 6vh;
    font-weight: 300;
    line-height: 7vh;
    padding-right: 100px
}

.navSection:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background: #fff;
    top: 7.2vh;
    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: 4vh;
    padding-left: 2.5vw;
    padding-right: 2.5vw
}


.navItem {
    font-family: geometria;
    color: #6f6359;
    font-size: 3vh;
    font-weight: 300;
    padding: 7px 0;
    text-transform: lowercase;
    display: flex;
    justify-content: space-between;
    position: relative;
    will-change: transform
}

.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.8vh;
    color: #fff;
    position: relative;
    height: 3.5vh;
    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: ''
}

.langsContainer {
    position: absolute;
    left: calc(340px + 5vw);
    top: 21px
}

.langsContainer a {
    color: #fff;
    font-family: Geometria;
    font-size: 16px;
    text-transform: lowercase;
    font-weight: 500
}


.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
}

.listTitle {
    font-size: 6.5vw;
    font-family: geometria;
    font-weight: 300;
    margin-left: -3.1vw
}

.listText {
    margin-left: 6vw
}

.listItem {
    font-family: geometria;
    font-size: 2.2vw;
    margin-top: 1vw
}

.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
    }
}

.previewText {
    height: 40px;
    display: flex;
    justify-content: space-around;
    align-items: center;
    font-family: geometria;
    font-size: 13px
}

.previewContainer {
    height: 185px;
    margin-bottom: 40px
}

.styleBackground {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1
}

.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: geometria;
    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: 5vw;
    height: calc(100% - 10vw)
}

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
}


.outerRow {
    display: flex;
    align-items: center
}

.outerPic {
    width: 250px;
    display: flex;
    justify-content: center
}

.outerDescription {
    font-family: geometria;
    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 .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: geometria;
    margin-left: -3.1vw
}

.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
}
.backgroundScheme .mainContainer {
    display: flex;
    margin-top: 10vw
}

.taste .backgroundScheme .mainBackground {
    height: calc(100% - 5vw)
}

.taste .compositionPicContainer {
    margin-bottom: 0
}

.unlimited {
    max-width: none!important
}
#tasteText {
    max-width: 500px;
}
#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: geometria  ;
    position: relative;
    top: 1.15vw
}

.contactsContainer {
    display: flex
}

.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: 1024px;
    max-height: 770px;
    width: 70%;
    height: calc(100% - 60px);
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-around
}
.book-calenderly{
	width: 100%;
	height: 100%;
	border: none;
	border-radius: 20px;
}
#bookOverlay .overlayContainer {
	width: 100%;
}
.overlayLabel {
    width: 18vw;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.ovSmall {
    font-family: geometria;
    font-size: 18px
}

.ovPeople {
    font-size: 2.3vw;
    font-family: Geometria;
    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 {
    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 {
    align-items: center;
    flex-direction: row;
    padding-bottom: 10px
}

#bookSubmit {
    align-self: flex-end
}

.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
}

#thanksOverlay .overlayContainer {
    max-height: 600px
}

/* About Page */
.banner-pages {
    height: 50vh;
}

.banner-pages .banner-images {
    height: 100%;
    object-fit: cover;
    will-change: transform;
    width: 100vw;
    position: absolute;
    z-index: -1;
    object-position: center;
}
.pagesBannerContent {
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 40px 0;
    justify-content: space-between;
}
.pagesBannerContent #bannerLogo {
    position: relative;
    display: block;
    height: auto;
    text-align: center;
    margin: 0 auto;
}
.pagesBannerContent #bannerLogo #logo {
    height: 71px;
}
.pagesBannerContent .banner-title {
    font-family: 'geometria';
    font-weight: 300;
    font-size: 52px;
    line-height: 75px;
    will-change: transform;
}
/* pages content */
.bodyIndex .mainContainer .textContainer {
    max-width: 40vw;
    margin: auto;
    background-size: contain !IMPORTANT;
    background-repeat: no-repeat !IMPORTANT;
    background-position: center !important;
    padding: 80px 0;
}
.bodyIndex .mainContainer .textContainer .text {
    font-size: 24px;
    font-family: 'geometria';
    line-height: 32px;
}
.bodyContent .mainContainer .textContainer {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.contentLeft {
    width: 26vw;
    margin-right: 30px;
    border-radius: 16px;
}
.contentHalfLeft{
    width: 50%;
}
.contentLeft img.img-fluid {
    width: 100%;
    border-radius: 16px;
}
.bodyContent .mainContainer .textContainer .text.block {
    flex: 1;
}
.contentHeadTitle {
    font-size: 32px;
    line-height: 46px;
    font-family: 'geometria';
    font-weight: 600;
}

.contentIconsList {
    padding: 0 40px 40px;
}
.contentIconsList .listItems {
    display: flex;
    margin-top: 30px;
}
.contentIconsList .listItems .img-icon {
    width: 50px;
    height: 50px;
    margin-right: 30px;
}
.listItemContent {
    flex: 1;
}
.listItemContent p {
    font-size: 20px;
    line-height: 29px;
}
.listItemContent span {
    font-size: 16px;
    display: block;
}
/* contact us page */
.bodyIndex .mainContainer .textContainer .text .halfMargin {
    margin-top: 30px;
}
.liveChat {
    height: 75px;
}
.bookNowBtn {
    background: #00851F !important;
    color: #fff !important;
    font-size: 18px;
    line-height: 27px;
    width: 50%;
    border: 1px solid;
    padding: 16px;
    display: block;
    margin: auto;
}
.bookNowBtn:hover{
    color: #00851F !important;
    background: #fff !important;
}
.contact-form .wpforms-field {
    width: 100% !important;
}
.contact-form .wpforms-field.wpforms-one-half {
    width: 48% !important;
}
.contact-form .wpforms-field input{
    height: auto !important;
}
.contact-form .wpforms-field input, .contact-form .wpforms-field textarea {
    color: #22242A !important;
    border: 1px solid #E3E3E3 !important;
    font-family: 'geometria' !important;
    font-size: 18px !important;
    line-height: 27px !important;
    padding: 14px !important;
}
.contact-form .wpforms-field .wpforms-field-label-inline {
    color: #22242A !important;
    font-size: 18px !important;
    line-height: 27px !important;
}
.contact-form .wpforms-field input::placeholder, .contact-form .wpforms-field textarea::placeholder{
    color: #8C959F !important;
}
.contact-form {
    padding: 50px;
    background: #d8f8e459;
    max-width: 50%;
    margin: auto;
}
.contact-form .wpforms-title {
    color: #000;
    font-family: 'geometria';
    font-weight: 600;
    font-size: 22px !important;
    line-height: 32px;
    margin-bottom: 30px !important;
}
.contact-form .wpforms-submit-container{
    padding-right: 0 !important;
}
.contact-form .wpforms-submit-container .wpforms-submit {
    background: #00851F !important;
    color: #fff !important;
    width: 100% !important;
    font-family: 'geometria';
    font-weight: 600;
    font-size: 18px !important;
    line-height: 27px;
    margin-top: 50px;
    border: 1px solid #00851F !important;
}
.contact-form .wpforms-submit-container .wpforms-submit:hover{
    color: #00851F !important;
    background: #fff !important;
}
.contentHalfLeft .contentHeadTitle {
    font-size: 22px;
    line-height: 32px;
}
.contactMail {
    margin: 25px 0;
    display: block;
    font-size: 18px;
    line-height: 27px;
}
.contactMail .fa {
    margin-right: 15px;
}
/* how we do help */
.helpImgRight {
    width: 40%;
}
.helpCols {
    width: 50%;
    text-align: center;
}
.contentLists {
    list-style: none;
    padding-left: 0;
}
.contentLists li {
    font-size: 18px;
    font-weight: 600;
    font-family: 'geometria';
    line-height: 40px;
}
.contactPageContainer .contentHalfLeft {
    width: 100%;
}
@media all and (max-width: 1440px) {

    .text {
        font-size: 18px;
        line-height: 32px
    }

}

@media all and (max-width: 1279px) {

    .tl._3 {
        top: 24vw;
        left: 46vw
    }

    .contentIconsList{
        padding: 0 20px 40px;
    }
    .contentIconsList .listItems .img-icon{
        margin-right: 15px;
    }
}

.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 .oButton.close {
    position: absolute;
    bottom: 15px;
    right: 15px;
    pointer-events: none;
    z-index: 1
}

@media all and (max-width: 960px) {
    .mobileMargin {
        margin-top:30px!important
    }

    .mobileOnly {
        display: block!important
    }

    .mobileHidden {
        display: none!important
    }

    [data-disable-mobile-scroll] {
        transform: none!important
    }

    #mainHeader {
        padding: 0 16px 0 16px;
        height: 30px;
        top: 15px
    }

    
    #leftHeader {
        width: auto;
        position: relative
    }

    #mainLogo {
        position: absolute;
        margin-left: 20px;
        width: 200px;
        height: 45px
    }

    #mainLogo svg {
        transform: translateX(-70px)
    }

    #mainMenuController {
        width: 25px;
        height: 25px;
        padding: 10px
    }

    #mainMenuController:after {
        content: none
    }

    .menuController .line {
        width: 20px
    }

    .mainContainer {
        width: calc(100% - 25px);
    }

    .oButton {
        height: 30px;
        margin-right: 18px
    }

    .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
    }

    #logo{
        width: 200px;
    }

    #bannerTarget {
        height: 30vh
    }

    #payLook {
        font-size: 25vw;
        letter-spacing: 0;
        margin-left: 35px;
        height: 24.5vw;
        margin-top: 2vw
    }

    #payLimits {
        font-size: 6vw;
        font-weight: 400;
        top: calc(50% + 3vw);
        left: 30vw
    }

    #hStrip {
        width: 73vw;
        height: auto;
    }

    #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
    }

   
    #ethos {
        margin-top: calc(10px + 5vw);
    }

    #ethosTitleContainer {
        width: 100%;
        flex-direction: column
    }

    .introPic {
        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: 100%;
        top: 0
    }

    #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: 5vh;
        height: 68vw
    }

    #minimalism {
        left: 12vh;
        bottom: 0;
    }

    #sublime {
        top: 0vh;
        left: 8vw;
    }

    #modern {
        top: 14vw;
        left: auto;
        right: 5vw
    }

    #prSection {
        margin-top: 90px
    }

    .miniTitle {
        font-size: 16px
    }

    .sectionTitle .small {
        font-size: 7vw
    }

    .sectionTitle .big {
        font-size: 11.3vw;
        line-height: 12vw
    }

    #hDining {
        margin-top: calc(2vw + 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: 10vw;
    }

    #hDiningFixed {
        margin-left: 0;
        position: relative;
        top: 0;
        width: 100%;
        left: 0
    }

    #hDiningTitle {
        align-self: flex-end;
        margin-top: 30px
    }

    #tasteTitle {
        margin-top: 160px
    }

    .long .hDiningItemPic {
        height: 20vw;
        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
    }
    #intro {
        margin-top: 12vw;
    }


    footer.mainFooter {
        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: 100%;
    }

    #footerInfo p,#footerInfo a {
        font-size: 16px;
        line-height: 28px
    }

    #footerLogo {
        width: 200px;
        position: relative;
    }

    #footerRight {
        position: relative;
    }

    #footerLeft {
        justify-content: flex-end
    }

    #footerMain .mainBackground img {
        object-position: center
    }

    .oLeftBar {
        width: 45px
    }

    .more p>span {
        margin-top: 30px;
        margin-right: 0
    }

    #detailSpaces .introPic {
        margin-top: -25vw
    }

    .fullPicture,.fullPictureSticky {
        height: 70vw!important
    }

    .mobileNegative {
        margin-top: -5vw
    }

    .listTitle {
        font-size: 33px;
        margin-left: 0
    }

    .listText {
        margin-left: 0;
        margin-top: 30px
    }

    .listItem {
        font-size: 18px;
        margin-top: 12px
    }

    .listItemTitle {
        font-size: 17px
    }

    .listItemSubtitle {
        font-size: 15px;
        margin-top: 0
    }

    .text.big {
        font-size: 20px;
        line-height: 35px
    }

    .detailBodyContent {
        padding-left: 0;
        flex-direction: column
    }

    .detailBodyContent .blockTitle {
        margin-left: 0!important;
        margin-top: 60px
    }

    .menuPic img {
        height: 110%;
        top: -5%
    }

    .menuBlock,.menuPic {
        width: 41vw;
        height: 41vw;
        margin-left: 0!important;
        margin-right: 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
    }

    .infoBlock .mainBackground {
        top: 0
    }

    .infoBlock .mainContainer {
        margin-top: 30px;
        width: calc(100% - 90px)
    }
    #navBar {
        width: 100%;
        align-items: center;
        min-width: auto;
    }

    #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: center
    }

    #navBottom .socials {
        order: 1;
        justify-content: flex-end;
        min-width: 0;
        margin-right: 25px
    }

    #navBottom .socials svg {
        height: 18px
    }

    #navBottom .socials .tw {
        margin-left: 12px
    }

    #navBottom .socials .ig {
        margin-left: 10px
    }

    #navBottom .langsContainer {
        order: 0;
        margin-left: 10px;
        padding-left: 0;
        position: static
    }

    .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)
    }

    /* #mainLogo.menuForced {
        transform: translateY(0)
    } */

    .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
    }
	#bookOverlay .overlayContainer {
		max-width: 100%;
		width: calc(100% - 50px);
	}

    .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
    }

    #bookOverlay .ovGroup {
        padding-bottom: 5px
    }

    .text.tech.small.ovRole {
        line-height: 20px
    }

    #menuClose .circlePath {
        display: none
    }

    #menuClose {
        top: 11px;
        left: 9px;
        transform: scale(1.2)
    }

    #footerDataBottom .weatherContainer {
        flex-wrap: wrap;
        padding: 90px 0
    }

    #scrollDown {
        width: 200px;
        margin: auto;
        letter-spacing: .5px;
        text-align: center;
    }


    .scrollDownText {
        font-size: 12px
    }
    .headerButton{
        margin-right: 0;
        width: 25px;
        height: 25px;
    }

    .headerButton .icon {
        margin-right: 0px
    }
   
    .navSection:last-child .navItem {
        color: #6f6359!important
    }

    .newsletter_input.title {
        width: 50px
    }

    .bodyParagraphTitle h2 {
        font-size: 20px;
        top: 11px
    }

    .textIndexContainer,.bodyParagraphContainer {
        width: 100%
    }
    .outerBlock.cnd {
        height: auto
    }

    .bodyIndex .mainContainer .textContainer{
        max-width: 80vw;
    }
    .contentLeft {
        display: flex;
        width: 100%;
        margin: 80px 0;
    }
    .contentHalfLeft{
        display: block;
    }
    .contentLeft img.img-fluid{
        width: 50%;
    }
    .contentIconsList {
        padding: 0 20px 40px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        flex: 1;
    }
    #partners {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        max-width: 100%;
    }
    .partner {
        display: flex;
        justify-content: center;
        max-width: none!important;
        width: 50% !important;
        margin-top: 30px;
    }
    .contact-form{
        max-width: 80%;
    }
    #bannerImg{
        object-position: center right;
    }
}
@media all and (max-width: 767px) {
    .contentLeft{
        flex-direction: column;
    }
    .contentLeft img.img-fluid{
        width: 100%;
    }
    .helpImgRight {
        width: 100%;
        margin-top: 50px;
    }
    .helpCols {
        width: 100%;
        text-align: center;
        margin: 30px 0;
    }
}
@media all and (max-width: 500px) {
    .bookNowBtn {
        width: 100%;
    }
    .contact-form .wpforms-field.wpforms-one-half{
        width: 100% !important;
        margin: 0 !important;
    }
    .contact-form{
        padding: 30px 20px;
        max-width: 100%;
    }
    .oLabel {
        font-size: 8px;
    }
}

.block2 {
    display: block;
    margin-left: auto;
    margin-right: auto;
}


 .mig {
  	 display: flex;
	justify-content: center;
	align-items: center;
}

/* New css home page */
#hPay{
	background: #fff;
}
#bannerTextBelow{
	padding: 5vw 0;
	text-align: center;
}
#bannerTextBelow ul li{
	list-style: none;
}

/* home banner */
#homeBannerTop{
	height: 60vh;
}
#homeBannerTop #bannerLogo {
    height: 100%;
    display: flex;
}
.homeSrokes {
    display: flex;
    justify-content: center;
}
.homeSrokes .strokes {
    display: flex;
    width: 300px;
    justify-content: center;
    align-items: center;
    height: 300px;
    background: #007f39;
    color: #fff;
    margin: 20px;
    border-radius: 50%;
    padding: 20px;
}
.homeSrokes .strokes p {
    display: flex;
    align-items: center;
    height: 100%;
}
.homeSrokes .outer-circle {
  background-image: linear-gradient(#007f39, #D8F8E4, #fff);
  width: 305px;
  height: 305px;
  border-style: solid;
  border-color: transparent;
  border-radius: 50%;
  border-width: 0;
  animation: rotateCircle 2s linear infinite;
  padding: 2px;
  display: flex;
	margin: 0 3vw;
}
.homeSrokes .inner-circle {
    background: #fff;
    height: 305px;
    width: 305px;
    border-style: solid;
    border-color: transparent;
    border-radius: 50%;
    border-width: 1px;
    animation: rotateCircle 2s linear infinite reverse;
    display: flex;
    text-align: center;
	align-items: center;

}
.homeSrokes .inner-circle {
    padding: 20px;
    text-align: center;
}

@keyframes rotateCircle {
  0% {
    transform: rotate(0);
  }

  25% {
    transform: rotate(90deg);
  }

  50% {
    transform: rotate(180deg);
  }

  75% {
    transform: rotate(270deg);
  }

  100% {
    transform: rotate(360deg);
  }
}
@media(max-width: 768px){
	.homeSrokes{
		flex-direction: column;
		align-items: center;
	}
	.homeSrokes .outer-circle{
		margin: 3vw;
	}
}
@media(max-width: 400px){
	.homeSrokes .strokes{
		width: 250px;
		height: 250px;
	}
}

/* Calendly tabs */
.book_tab {
    margin: 10px 0;
    display: flex;
    justify-content: center;
}

.book_tab .booking_tablinks {
	background-color: inherit;
	float: left;
	border: none;
	outline: none;
	cursor: pointer;
	padding: 14px 16px;
	color: #fff;
	font-size: 17px;
	margin: 10px;
}

.book_tab .booking_tablinks:hover {
  background-color: #007f39 !important;
	color: #fff !important;
}

.book_tab .booking_tablinks.active {
  background-color: #007f39 !important;
	color: #114556;
}

.booking_tabcontent {
  display: none;
  border-top: none;
  height: 100%;
}
@media(max-width: 600px){
	.book_tab {
		flex-direction: column;
	}
}

/* contact form */
.contact-form .wpforms-field-container {
    display: flex;
    flex-wrap: wrap;
}
.contact-form .wpforms-field.wpforms-first {
    flex: 1;
}