@font-face{font-family:"wask-new";src:url("/fonts/wask_new.woff") format('woff');}@font-face{font-family:"wask-new";src:url("/fonts/wask_new_b.woff") format('woff');font-weight:bold;}@font-face{font-family:"wask-new";src:url("/fonts/wask_new_bi.woff") format('woff');font-weight:bold;font-style:italic;}@font-face{font-family:"wask-new";src:url("/fonts/wask_new_i.woff") format('woff');font-style:italic;}
body,
html {
    margin: 0;
    padding: 0;
    user-select: none;
    overscroll-behavior: none
}
footer{
	background:#03663a;
	color:#fff;
}
#ricmobile{
	display:block;
	position:fixed;
	bottom:120px; right:0px;
	z-index:10000;
}
#ricmobile a{
	display:block;
	color:#fff;
	padding:10px;
	background:#03663a;
	font-size:18px;
}
html {
    border-collapse: collapse
}

*,
html {
    box-sizing: border-box
}
.col-6{
	width:50%;
	float:left;
	text-align:left;
}
.col-12{
	width:100%;
	float:left;
	text-align:left;
}
input, select, textarea{
	width:calc(100% - 20px);
	border: solid 1px #eaeaea;
	margin:10px;
	padding:5px;
	font-weight: 300;
font-size: 1.042vw;
line-height: 1.875vw;
letter-spacing: .05vw;
	box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 15px -5px;
	color: #3a3636;
font-family: "Muli",Arial,Helvetica,sans-serif;
}
label{
font-size: 1.042vw;
line-height: 1.875vw;
letter-spacing: .05vw;
margin-left:10px;
}
select{
	height:50px;
}

* {
    border-collapse: inherit;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent
}

*,
:after,
:before {
    box-sizing: inherit
}

menu,
ol,
ul {
    list-style: none
}

li,
menu,
ol,
ul {
    margin: 0;
    padding: 0
}

a {
    outline: none;
    color: inherit;
    text-decoration: none
}

img {
    width: 100%;
    border: none;
    display: block;
    pointer-events: none
}

pre {
    margin: 16.66vw
}

p,
small {
    padding: 0
}

figure,
form,
p,
small {
    margin: 0
}

fieldset {
    border: none;
    margin: 0;
    padding: 0
}

blockquote,
h1,
h2,
h3,
h4,
h5,
p {
    margin: 0;
    font-weight: 400
}

hr {
    margin: 0;
    border: 0
}

button {
    padding: 0;
    border: none;
    outline: none
}

body {
    color: #3a3636;
    font-family: "Muli",Arial,Helvetica,sans-serif;
}

body,
html {
    width: 100%
}


.is__native.y__scroll {
    overflow-y: scroll;
    overflow-x: hidden
}

.a__scroll {
    top: 30;
    left: 0;
    right: 0;
    z-index: 1;
    width: 100%;
    height: auto;
    margin: auto;
    position: fixed;
    will-change: transform
}

.a__device .a__scroll {
    top: unset;
    left: unset;
    right: unset;
    position: relative
}

.a__container {
    width: 1px;
    pointer-events: none
}


.a__container,
section {
    position: relative
}

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

.js__modal {
    cursor: pointer
}

.js__parallax {
    will-change: transform;
    backface-visibility: hidden
}

.a__main {
    width: 100vw;
    overflow: hidden
}

.is-scrolling {
    pointer-events: none
}

.js__split span {
    position: relative;
    display: inline-block;
    will-change: transform
}

::-webkit-scrollbar {
    display: none!important;
    color: #fff!important;
    height: 0!important;
    width: 0!important
}

.heading__xxl {
    font-size: 9.028vw;
    font-weight: 400;
    line-height: 9.028vw;
    letter-spacing: -.2vw;
    font-family: "Amiri",'Times New Roman',Times,serif
}

@media only screen and (max-width:580px) {
    .heading__xxl {
        font-size: 14.667vw;
        line-height: 14.667vw
    }
	.col-6{
		width:100%;
	}
	label, input, select, email, textarea{
		font-size:14px;
		line-height:18px;
	}
	#ricmobile{
	display:block;
	position:fixed;
	bottom:120px; right:0px;
	z-index:10000;
}
}

@media only screen and (max-width:580px) {
    .heading__xxl br {
        display: none
    }
}

.heading__xl {
    font-size: 4.25vw;
    font-weight: 400;
    line-height: 4.25vw;
    letter-spacing: -.18vw;
    font-family: "Amiri",'Times New Roman',Times,serif
}

@media only screen and (max-width:580px) {
    .heading__xl {
        font-size: 14.667vw;
        line-height: 14.667vw
		
    }
}

.heading__l,
.modal__text h2 {
    font-size: 2.472vw;
    font-weight: 400;
    letter-spacing: -.061vw;
    font-family: "Amiri",'Times New Roman',Times,serif
	
	 
}

@media only screen and (max-width:580px) {
    .heading__l,
    .modal__text h2 {
        font-size: 7.467vw
    }
}

.count__l {
    width: 1.9vw;
    font-size: 3.472vw;
    font-weight: 400;
    line-height: 3.958vw;
    letter-spacing: -.061vw;
    font-family: "Amiri",'Times New Roman',Times,serif
}

@media only screen and (max-width:580px) {
    .count__l {
        font-size: 13.333vw;
        line-height: 9.333vw
    }
}

.count__s {
    line-height: 4vw;
    font-size: 1.042vw
}

@media only screen and (max-width:580px) {
    .count__s {
        font-size: 2.933vw;
        line-height: 9.333vw
    }
}

.count__s:before {
    content: "/";
    padding: 0 .2vw
}

@media only screen and (max-width:580px) {
    .count__s:before {
        padding: 0 1vw 0 6vw
    }
}

.heading__r,
.modal__text h3 {
    font-size: 2.083vw;
    font-weight: 400;
    line-height: 2.083vw;
    letter-spacing: -.002vw;
    font-family: "Amiri",'Times New Roman',Times,serif
}

@media only screen and (max-width:580px) {
    .heading__r,
    .modal__text h3 {
        font-size: 7.467vw;
        line-height: 8.533vw
    }
}

.heading__s {
    font-size: 1.389vw;
    font-weight: 400;
    line-height: 1.389vw;
    letter-spacing: -.001vw;
    font-family: "Amiri",'Times New Roman',Times,serif
}

.heading__m,
.s__tab .tab__nav .list__item {
    font-size: 1.111vw;
    font-weight: 400;
    line-height: 1.111vw;
    letter-spacing: .15vw;
    text-transform: uppercase;
    font-family: "Amiri",'Times New Roman',Times,serif
}

@media only screen and (max-width:580px) {
    .heading__m,
    .s__tab .tab__nav .list__item {
        font-size: 4vw;
        line-height: 4vw
    }
}

.marquee__r {
    color: #ff4338;
    font-size: 27.778vw;
    font-weight: 400;
    line-height: 27.778vw;
    letter-spacing: -.5vw;
    font-family: "Amiri",'Times New Roman',Times,serif
}

@media only screen and (max-width:580px) {
    .marquee__r {
        font-size: 38.667vw;
        line-height: 38.667vw
    }
}

.blockquote__r {
    font-size: 2.083vw;
    font-style: italic;
    font-weight: 400;
    line-height: 2.917vw;
    font-family: Roos St Regis Text
}

.a__menu .menu__button,
.a__nav .sub__item,
.chapeau__r {
    font-weight: 500;
    font-size: .964vw;
    line-height: .964vw;
    letter-spacing: .108vw;
    text-transform: uppercase;
    margin-bottom: 3.472vw
}

@media only screen and (max-width:580px) {
    .a__menu .menu__button,
    .a__nav .sub__item,
    .chapeau__r {
        font-size: 2.933vw;
        line-height: 2.933vw;
        margin-bottom: 8vw
    }
}

.divider__r {
    height: 1px;
    width: 8.33vw;
    margin: 2.8vw 0;
    background: #03663a;
    text-align: left
	
}

@media only screen and (max-width:580px) {
    .divider__r {
        width: 16.533vw;
        margin: 6.667vw 0
    }
}

.divider__s {
    height: 1px;
    width: 5.556vw;
    margin: 2.8vw 0;
    background: #03663a
}

.paragraph__l {
    font-weight: 400;
    font-size: 1.389vw;
    line-height: 2.222vw;
    letter-spacing: .056vw;
	text-align: justify;
}
.hero__heading .paragraph__l{
	text-align:center;
}

@media only screen and (max-width:580px) {
    .paragraph__l {
        font-size: 4.8vw;
        line-height: 7.2vw
    }
}

.a__nav .contact__item,
.modal__head p,
.modal__text li,
.modal__text p,
.modal__text td,
.modal__text th,
.paragraph__r,
.s__partnerships .partners__partner p,
.s__rooms .categories__category p,
.s__tab li,
.s__tab p {
    font-weight: 300;
    font-size: 1.042vw;
    line-height: 1.475vw;
    letter-spacing: .05vw;
	text-align: justify;
	/*margin-left: -4.528vw;
	margin-left: -4.528vw;*/
}

@media only screen and (max-width:580px) {
    .a__nav .contact__item,
    .modal__head p,
    .modal__text li,
    .modal__text p,
    .modal__text td,
    .modal__text th,
    .paragraph__r,
    .s__partnerships .partners__partner p,
    .s__rooms .categories__category p,
    .s__tab li,
    .s__tab p {
        font-size: 4vw;
        line-height: 6.4vw
    }
}

.link__r {
    font-weight: 300;
    font-size: 1.042vw;
    line-height: 1.875vw;
    letter-spacing: .05vw
}

@media only screen and (max-width:580px) {
    .link__r {
        font-size: 4vw;
        line-height: 6.4vw
    }
}

.link__r:before {
    left: 0;
    bottom: 0;
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    background: #000;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .4s ease-out
}

.link__r:hover:before {
    transform: scaleX(1);
    transform-origin: left
}

.button__b {
    color: #fff;
    cursor: pointer;
    width: 12.153vw;
    height: 3.819vw;
    background: #03663a;
    font-weight: 400;
    font-size: 1vw;
    text-align: center;
    line-height: 4vw;
    display: inline-block;
    letter-spacing: .208vw;
    text-transform: uppercase
}

@media only screen and (max-width:580px) {
    .button__b {
        width: 42.667vw;
        height: 13.333vw;
        font-size: 2.933vw;
        line-height: 13.333vw
    }
	.maurofooter{
		font-size: 4.933vw;
	}
}

.button__c {
    width: 5.833vw;
    height: 5.833vw;
    z-index: 5;
    cursor: pointer;
    appearance: none;
    position: absolute;
    background: transparent;
    border: 1px solid rgba(58, 54, 54, .2);
    background-size: 1.389vw;
    background-position: 50%;
    background-repeat: no-repeat;
    background-image: url(/svg/icon-close.svg)
}

@media only screen and (max-width:580px) {
    .button__c {
        top: 8.33vw;
        right: 8.33vw;
        width: 13.333vw;
        height: 13.333vw;
        background-size: 4vw
    }
}

.button__r {
    height: 2.778vw;
    line-height: 2.778vw;
    color: #03663a;
    display: block;
    cursor: pointer;
    position: relative;
    padding-left: 3.5vw;
    font-weight: 500;
    font-size: .764vw;
    letter-spacing: .208vw;
    text-transform: uppercase
}

@media only screen and (max-width:580px) {
    .button__r {
        height: 8vw;
        line-height: 8vw;
        font-size: 2.933vw;
        padding-left: 9vw
    }
}

.button__r:hover svg {
    fill: #fff;
    transform: translateX(.3vw)
}

.button__r:hover svg rect {
    transform: scaleX(.5)
}

.button__r:hover span {
    transform: translateX(.5vw)
}

.button__r:hover:after,
.button__r:hover:before {
    transform: rotate(-45deg) scale(1.2)
}

.button__r:after,
.button__r:before,
.button__r span {
    display: block;
    will-change: transform;
    transition: transform .25s ease-out
}

.button__r:after,
.button__r:before {
    left: 0;
    top: .27vw;
    width: 1.944vw;
    height: 1.944vw;
    content: "";
    position: absolute;
    transform: rotate(45deg)
}

.button__r svg {
    top: .95vw;
    left: -.95vw;
    width: 2.153vw;
    height: .556vw;
    fill: #03663a;
    z-index: 1;
    position: absolute;
    transition: all .25s ease-out
}

@media only screen and (max-width:580px) {
    .button__r svg {
        top: 2.2vw;
        left: -3vw;
        width: 6.667vw;
        height: 2.667vw
    }
}

.button__r svg rect {
    will-change: transform;
    transform-origin: right center;
    transition: transform .25s ease-out
}

.button__r:after {
    background: #03663a;
    transform: scale(.01) rotate(45deg)
}

@media only screen and (max-width:580px) {
    .button__r:after {
        top: 1vw;
        width: 5.333vw;
        height: 5.333vw
    }
}

.button__r:before {
    border: 1px solid #03663a
}

@media only screen and (max-width:580px) {
    .button__r:before {
        top: 1vw;
        width: 5.333vw;
        height: 5.333vw
    }
}

.bullets__list {
    display: flex
}

.bullets__list .list__item {
    width: 2.083vw;
    height: 2.083vw;
    display: block;
    cursor: pointer;
    position: relative;
    border-radius: 100%;
    margin-right: .694vw;
    text-indent: 4vw;
    font-size: 1.389vw;
    line-height: 2.083vw;
    letter-spacing: -.005vw;
    font-family: "Amiri",'Times New Roman',Times,serif
}

@media only screen and (max-width:580px) {
    .bullets__list .list__item {
        width: 6.667vw;
        height: 6.667vw;
        margin-right: 1.867vw
    }
}

.bullets__list .list__item svg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    transform: rotate(-90deg)
}

.bullets__list .list__item svg circle {
    fill: none;
    stroke: #03663a;
    stroke-width: 1;
    stroke-miterlimit: 10;
    stroke-dasharray: 100;
    stroke-dashoffset: 100
}

@keyframes timer {
    to {
        stroke-dashoffset: 0
    }
}

.bullets__list .list__item:last-of-type {
    margin-right: 0
}

.bullets__list .list__item:before {
    top: 50%;
    left: 50%;
    content: "";
    width: .486vw;
    height: .486vw;
    position: absolute;
    background: #ccc;
    transform: translate(-50%, -50%) rotate(45deg)
}

@media only screen and (max-width:580px) {
    .bullets__list .list__item:before {
        width: 1.467vw;
        height: 1.467vw
    }
}

.bullets__list .list__item.is__active:before {
    background: #fff
}

.bullets__list .list__item.is__active svg circle {
    animation: timer 8s linear forwards
}

.s__album {
    position: relative;
    margin: 0 16.667vw 17.361vw
}

@media only screen and (max-width:580px) {
    .s__album {
        margin: 0 8vw 26.667vw
    }
}

.a__nav .s__album .contact__item,
.modal__head .s__album p,
.modal__text .s__album li,
.modal__text .s__album p,
.modal__text .s__album td,
.modal__text .s__album th,
.s__album .a__nav .contact__item,
.s__album .modal__head p,
.s__album .modal__text li,
.s__album .modal__text p,
.s__album .modal__text td,
.s__album .modal__text th,
.s__album .paragraph__r,
.s__album .s__partnerships .partners__partner p,
.s__album .s__rooms .categories__category p,
.s__album .s__tab li,
.s__album .s__tab p,
.s__partnerships .partners__partner .s__album p,
.s__rooms .categories__category .s__album p,
.s__tab .s__album li,
.s__tab .s__album p {
    position: relative;
    margin-top: 3.472vw;
    padding: 0 11.111vw 0 16.667vw
}

@media only screen and (max-width:580px) {
    .a__nav .s__album .contact__item,
    .modal__head .s__album p,
    .modal__text .s__album li,
    .modal__text .s__album p,
    .modal__text .s__album td,
    .modal__text .s__album th,
    .s__album .a__nav .contact__item,
    .s__album .modal__head p,
    .s__album .modal__text li,
    .s__album .modal__text p,
    .s__album .modal__text td,
    .s__album .modal__text th,
    .s__album .paragraph__r,
    .s__album .s__partnerships .partners__partner p,
    .s__album .s__rooms .categories__category p,
    .s__album .s__tab li,
    .s__album .s__tab p,
    .s__partnerships .partners__partner .s__album p,
    .s__rooms .categories__category .s__album p,
    .s__tab .s__album li,
    .s__tab .s__album p {
        margin-top: 8vw;
        padding: 0 0 0 25.333vw
    }
}

.a__nav .s__album .contact__item:before,
.modal__head .s__album p:before,
.modal__text .s__album li:before,
.modal__text .s__album p:before,
.modal__text .s__album td:before,
.modal__text .s__album th:before,
.s__album .a__nav .contact__item:before,
.s__album .modal__head p:before,
.s__album .modal__text li:before,
.s__album .modal__text p:before,
.s__album .modal__text td:before,
.s__album .modal__text th:before,
.s__album .paragraph__r:before,
.s__album .s__partnerships .partners__partner p:before,
.s__album .s__rooms .categories__category p:before,
.s__album .s__tab li:before,
.s__album .s__tab p:before,
.s__partnerships .partners__partner .s__album p:before,
.s__rooms .categories__category .s__album p:before,
.s__tab .s__album li:before,
.s__tab .s__album p:before {
    left: 0;
    top: .5vw;
    height: 1px;
    width: 6.944vw;
    content: "";
    background: #03663a;
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__nav .s__album .contact__item:before,
    .modal__head .s__album p:before,
    .modal__text .s__album li:before,
    .modal__text .s__album p:before,
    .modal__text .s__album td:before,
    .modal__text .s__album th:before,
    .s__album .a__nav .contact__item:before,
    .s__album .modal__head p:before,
    .s__album .modal__text li:before,
    .s__album .modal__text p:before,
    .s__album .modal__text td:before,
    .s__album .modal__text th:before,
    .s__album .paragraph__r:before,
    .s__album .s__partnerships .partners__partner p:before,
    .s__album .s__rooms .categories__category p:before,
    .s__album .s__tab li:before,
    .s__album .s__tab p:before,
    .s__partnerships .partners__partner .s__album p:before,
    .s__rooms .categories__category .s__album p:before,
    .s__tab .s__album li:before,
    .s__tab .s__album p:before {
        width: 16.533vw
    }
}

.s__album .button__r {
    margin-right: 5.556vw;
    display: inline-block
}

@media only screen and (max-width:580px) {
    .s__album .button__r {
        margin-bottom: 4vw;
        margin-right: 12.556vw
    }
}

.s__album .button__r:last-child {
    margin-right: 0
}

.s__album .album__links {
    text-align: center
}

@media only screen and (max-width:580px) {
    .s__album .album__links {
        text-align: left
    }
}
@media only screen and (min-width:581px) {
.a__menu .menu__burger{
	display:none;
}
}

.s__album .album__logo {
    left: 50%;
    top: 3.472vw;
    z-index: 5;
    width: 10.417vw;
    height: 8.333vw;
    position: absolute;
    transform: translateX(-50%);
    background-repeat: no-repeat;
    background-position: 50%;
}

@media only screen and (max-width:580px) {
    .s__album .album__logo {
        top: 21.333vw;
        width: 33.333vw;
        height: 26.667vw
    }
}

.s__album .album__heading {
    padding-top: 21.528vw;
    margin-left: 11.111vw;
    margin-bottom: 5.556vw
}

@media only screen and (max-width:580px) {
    .s__album .album__heading {
        margin-left: 0;
        padding-top: 70.528vw;
        margin-bottom: 10.667vw
    }
}

.s__album .album__image {
    width: 66.667vw;
    height: 37.153vw;
    display: block;
    position: relative;
    margin-bottom: 5.556vw
}

@media only screen and (max-width:580px) {
    .s__album .album__image {
        width: 100%;
        height: 47.153vw;
        margin-bottom: 10.667vw
    }
}

.a__background {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    will-change: background-color;
    transition: background-color .5s cubic-bezier(.25, .25, .75, .75)
}

[class*=__color] {
    top: 50%;
    height: 1px;
    width: 100%;
    position: absolute
}

.s__brand-values {
    margin: 17.361vw 11.111vw
}

.s__brand-values .heading__xl {
    opacity: 0;
    will-change: opacity
}

@media only screen and (max-width:580px) {
    .s__brand-values .heading__xl {
        opacity: 1
    }
}

@media only screen and (max-width:580px) {
    .s__brand-values {
        margin: 26.667vw 8vw
    }
}

.s__brand-values .button__r {
    display: block;
    margin-top: 3.472vw
}

@media only screen and (max-width:580px) {
    .s__brand-values .button__r {
        margin-top: 8vw
    }
}

.s__brand-values .brand-values__sticky {
    top: 0;
    left: 0;
    z-index: 3;
    position: absolute;
    will-change: transform
}

@media only screen and (max-width:580px) {
    .s__brand-values .brand-values__sticky {
        top: unset;
        left: unset;
        position: relative;
        margin-bottom: 13.333vw
    }
}

.s__brand-values .brand-values__count {
    height: 3.472vw;
    line-height: 3.472vw;
    display: flex;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__brand-values .brand-values__count {
        display: none
    }
}

.s__brand-values .blocks__block {
    width: 100%;
    display: table;
    position: relative;
    margin-bottom: 16.667vw
}

@media only screen and (max-width:580px) {
    .s__brand-values .blocks__block {
        margin-bottom: 26.667vw
    }
}

@media only screen and (max-width:580px) {
    .s__brand-values .blocks__block:last-of-type {
        margin-bottom: 0
    }
}

.s__brand-values .block__landscape {
    position: relative
}

.s__brand-values .block__landscape .block__text {
    margin-left: 38.889vw
}

@media only screen and (max-width:580px) {
    .s__brand-values .block__landscape .block__text {
        margin: -8vw 8vw 0
    }
}

.s__brand-values .block__landscape .block__image {
    width: 55.556vw;
    height: 36.111vw;
    margin-left: 33.333vw
}

@media only screen and (max-width:580px) {
    .s__brand-values .block__landscape .block__image {
        margin: 0;
        width: 100%;
        height: 65.067vw
    }
}

.s__brand-values .block__portrait {
    position: relative
}

.s__brand-values .block__portrait .block__text {
    margin-left: 33.333vw
}

@media only screen and (max-width:580px) {
    .s__brand-values .block__portrait .block__text {
        margin: -8vw 8vw 0
    }
}

.s__brand-values .block__portrait .block__image {
    width: 50vw;
    height: 77.778vw;
    margin-left: 38.889vw
}

@media only screen and (max-width:580px) {
    .s__brand-values .block__portrait .block__image {
        margin: 0;
        width: 100%;
        height: 129.333vw
    }
}

.s__brand-values .block__text {
    z-index: 1;
    width: 33.333vw;
    padding: 5.556vw;
    background: #fff;
    position: relative;
    margin-top: -15.972vw
}

@media only screen and (max-width:580px) {
    .s__brand-values .block__text {
        width: auto;
        padding: 8vw;
        margin-top: -8vw
    }
}

.a__menu .s__brand-values .block__text .menu__button,
.a__nav .s__brand-values .block__text .sub__item,
.s__brand-values .block__text .a__menu .menu__button,
.s__brand-values .block__text .a__nav .sub__item,
.s__brand-values .block__text .chapeau__r {
    margin: 0;
    height: 1px;
    visibility: hidden
}

.s__brand-values .block__image {
    overflow: hidden;
    background: #fff;
    position: relative
}

.s__brand-values .image__src {
    top: -15%;
    height: 110%;
    will-change: transform
}

.s__calendar {
    margin: 17.361vw 11.111vw
}

@media only screen and (max-width:580px) {
    .s__calendar {
        margin: 26.667vw 0
    }
}

.s__calendar .calendar__heading {
    margin-bottom: 13.889vw
}

@media only screen and (max-width:580px) {
    .s__calendar .calendar__heading {
        margin: 0 8vw 16vw
    }
}

.a__menu .s__calendar .calendar__heading .menu__button,
.a__nav .s__calendar .calendar__heading .sub__item,
.s__calendar .calendar__heading .a__menu .menu__button,
.s__calendar .calendar__heading .a__nav .sub__item,
.s__calendar .calendar__heading .chapeau__r,
.s__calendar .calendar__heading .heading__xxl {
    margin-left: 5.556vw
}

@media only screen and (max-width:580px) {
    .a__menu .s__calendar .calendar__heading .menu__button,
    .a__nav .s__calendar .calendar__heading .sub__item,
    .s__calendar .calendar__heading .a__menu .menu__button,
    .s__calendar .calendar__heading .a__nav .sub__item,
    .s__calendar .calendar__heading .chapeau__r,
    .s__calendar .calendar__heading .heading__xxl {
        margin-left: unset
    }
}

.s__calendar .calendar__heading .divider__r {
    margin-bottom: unset
}

.s__calendar .calendar__events {
    position: relative
}

@media only screen and (max-width:580px) {
    .s__calendar .calendar__events {
        margin: 0 8vw
    }
}

.a__menu .s__calendar .calendar__events .menu__button,
.a__nav .s__calendar .calendar__events .sub__item,
.s__calendar .calendar__events .a__menu .menu__button,
.s__calendar .calendar__events .a__nav .sub__item,
.s__calendar .calendar__events .chapeau__r {
    margin-bottom: 1.736vw
}

.s__calendar .events__event {
    width: 100%;
    display: table;
    margin: 5.556vw 0;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__calendar .events__event {
        display: block;
        margin: 16vw 0
    }
}

.s__calendar .events__event:first-of-type {
    margin-top: unset
}

.s__calendar .events__event:last-of-type {
    margin-bottom: unset
}

.s__calendar .event__text {
    top: 50%;
    left: -5.556vw;
    z-index: 1;
    display: flex;
    flex-wrap: nowrap;
    width: 38.889vw;
    padding: 5.556vw;
    background: #fff;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__calendar .event__text {
        top: unset;
        left: unset;
        display: block;
        flex-wrap: unset;
        width: auto;
        padding: 0;
        position: relative;
        transform: unset
    }
}

.s__calendar .event__date {
    flex-basis: 11.111vw
}

@media only screen and (max-width:580px) {
    .s__calendar .event__date {
        width: 25.333vw;
        padding-top: 8vw;
        background: #fff;
        transform: translateY(-99%)
    }
}

@media only screen and (max-width:580px) {
    .s__calendar .event__date .divider__s {
        width: 16vw;
        margin-bottom: unset
    }
}

.s__calendar .event__info {
    flex-basis: 16.667vw
}

.s__calendar .event__image {
    width: 50vw;
    float: right;
    height: 33.333vw;
    background: #000;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__calendar .event__image {
        width: auto;
        float: unset;
        height: 56vw
    }
}

.a__cursor {
    opacity: 0;
    z-index: 99;
    width: 6.458vw;
    height: 6.458vw;
    position: fixed;
    pointer-events: none
}

@media only screen and (max-width:580px) {
    .a__cursor {
        display: none
    }
}

.a__cursor .cursor__shape {
    background: #fff;
    transform: rotate(45deg);
    box-shadow: 0 0 35px -25px rgba(0, 0, 0, .75)
}

.a__cursor .cursor__icon,
.a__cursor .cursor__shape {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute
}

.a__cursor .cursor__icon {
    transform: rotate(-45deg);
    background-size: 2.153vw;
    background-repeat: no-repeat;
    background-position: 50%;
    background-image: url(/svg/icon-arrow.svg)
}

.a__cursor .cursor__icon.icon__drag {
    background-size: 3.153vw;
    background-image: url(/svg/icon-drag.svg)
}

.s__flexible-content {
    cursor: none;
    margin: 16.667vw 11.111vw
}

@media only screen and (max-width:580px) {
    .s__flexible-content {
        margin: 26.667vw 0
    }
}

.s__flexible-content .flexible-content__color {
    display: none
}

@media only screen and (max-width:580px) {
    .s__flexible-content .flexible-content__color {
        display: block
    }
}

.s__flexible-content .flexible-content__pattern {
    right: 6.944vw;
    bottom: -18.75vw;
    width: 8.333vw;
    height: 8.333vw;
    z-index: 1;
    position: absolute;
    background-size: 8.33vw;
    background-repeat: repeat;
    background-image: url(../img/pattern-diamond.png)
}

@media only screen and (max-width:580px) {
    .s__flexible-content .flexible-content__pattern {
        right: 16vw;
        width: 16vw;
        height: 16vw;
        background-size: 16vw
    }
}

.s__flexible-content .flexible-content__slider {
    width: 100%;
    height: 44.444vw
}

@media only screen and (max-width:580px) {
    .s__flexible-content .flexible-content__slider {
        height: auto
    }
}

.s__flexible-content .slider__count {
    top: 50%;
    left: -5.556vw;
    height: 3.472vw;
    line-height: 3.472vw;
    display: flex;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__flexible-content .slider__count {
        left: 50%;
        top: unset;
        height: 9vw;
        width: 12.5vw;
        margin: 8vw 0;
        position: relative;
        transform: translateX(-50%)
    }
}

.s__flexible-content .slider__container {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    position: absolute;
    will-change: transform
}

@media only screen and (max-width:580px) {
    .s__flexible-content .slider__container {
        position: relative
    }
}

.s__flexible-content .slider__slide {
    height: 44.444vw;
    padding: 0 5.556vw;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__flexible-content .slider__slide {
        height: 164vw;
        padding: 0 8vw
    }
}

.s__flexible-content .slide__text {
    top: 50%;
    right: 5.556vw;
    z-index: 1;
    width: 27.778vw;
    padding: 5.556vw;
    background: #fff;
    position: absolute;
    will-change: transform;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__flexible-content .slide__text {
        bottom: 0;
        top: unset;
        left: 16vw;
        right: 16vw;
        width: auto;
        height: 96.267vw;
        padding: 8vw;
        transform: unset
    }
}

.s__flexible-content .slide__image {
    top: -5.5vw;
    width: 44.444vw;
    height: 44.444vw;
    overflow: hidden;
    background: #fff;
    position: relative;
    perspective: 1000px
}

@media only screen and (max-width:580px) {
    .s__flexible-content .slide__image {
        top: -12.5vw;
        width: 100%;
        height: auto;
        padding-bottom: 100%
    }
}

.s__flexible-content .image__src {
    will-change: transform
}

.s__footer {
    margin: 0 5.556vw;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__footer {
        margin: 0 8vw
    }
}

.modal__text .s__footer h3,
.s__footer .heading__r,
.s__footer .modal__text h3 {
    margin-bottom: 2.083vw
}

.s__footer .link__r {
    position: relative
}

.s__footer .link__r:before {
    bottom: -.15vw
}

@media only screen and (max-width:580px) {
    .s__footer .button__r {
        display: none
    }
}

.s__footer .social__icons {
    display: flex;
    height: 1.389vw
}

@media only screen and (max-width:580px) {
    .s__footer .social__icons {
        height: 5.333vw
    }
}

.s__footer .social__icons a {
    display: flex;
    height: 1.389vw;
    align-items: center
}

@media only screen and (max-width:580px) {
    .s__footer .social__icons a {
        height: 5.333vw
    }
}

.s__footer .social__icon:nth-child(2) {
    margin: 0 2.083vw
}

@media only screen and (max-width:580px) {
    .s__footer .social__icon:nth-child(2) {
        margin: 0 8vw
    }
}

.s__footer .social__icon:nth-child(3) .social__svg {
    height: 1.111vw
}

@media only screen and (max-width:580px) {
    .s__footer .social__icon:nth-child(3) .social__svg {
        height: 4.267vw
    }
}

.s__footer .social__svg {
    height: 1.389vw;
    transition: fill .4s ease-out
}

@media only screen and (max-width:580px) {
    .s__footer .social__svg {
        height: 5.333vw
    }
}

.s__footer .social__svg:hover {
    fill: #3a3636
}

.s__footer .footer__columns,
.s__footer .footer__nav {
    display: flex
}

.s__footer .footer__columns:first-child {
    padding: 7.722vw 0;
    border-top: 1px solid rgba(0, 0, 0, .1);
    border-bottom: 1px solid rgba(0, 0, 0, .1)
}

@media only screen and (max-width:580px) {
    .s__footer .footer__columns:first-child {
        flex-wrap: wrap;
        border-top: unset;
        border-bottom: unset
    }
}

.s__footer .footer__columns:first-child .footer__list {
    margin-bottom: 2.083vw
}

.s__footer .footer__columns:first-child .footer__column {
    position: relative
}

@media only screen and (max-width:580px) {
    .s__footer .footer__columns:first-child .footer__column:first-child {
        margin-bottom: 8vw
    }
}

.a__nav .s__footer .footer__columns:first-child .footer__column:first-child .contact__item,
.modal__head .s__footer .footer__columns:first-child .footer__column:first-child p,
.modal__text .s__footer .footer__columns:first-child .footer__column:first-child li,
.modal__text .s__footer .footer__columns:first-child .footer__column:first-child p,
.modal__text .s__footer .footer__columns:first-child .footer__column:first-child td,
.modal__text .s__footer .footer__columns:first-child .footer__column:first-child th,
.s__footer .footer__columns:first-child .footer__column:first-child .a__nav .contact__item,
.s__footer .footer__columns:first-child .footer__column:first-child .modal__head p,
.s__footer .footer__columns:first-child .footer__column:first-child .modal__text li,
.s__footer .footer__columns:first-child .footer__column:first-child .modal__text p,
.s__footer .footer__columns:first-child .footer__column:first-child .modal__text td,
.s__footer .footer__columns:first-child .footer__column:first-child .modal__text th,
.s__footer .footer__columns:first-child .footer__column:first-child .paragraph__r,
.s__footer .footer__columns:first-child .footer__column:first-child .s__partnerships .partners__partner p,
.s__footer .footer__columns:first-child .footer__column:first-child .s__rooms .categories__category p,
.s__footer .footer__columns:first-child .footer__column:first-child .s__tab li,
.s__footer .footer__columns:first-child .footer__column:first-child .s__tab p,
.s__partnerships .partners__partner .s__footer .footer__columns:first-child .footer__column:first-child p,
.s__rooms .categories__category .s__footer .footer__columns:first-child .footer__column:first-child p,
.s__tab .s__footer .footer__columns:first-child .footer__column:first-child li,
.s__tab .s__footer .footer__columns:first-child .footer__column:first-child p {
    max-width: 27.778vw;
    margin-bottom: 2.083vw
}

@media only screen and (max-width:580px) {
    .a__nav .s__footer .footer__columns:first-child .footer__column:first-child .contact__item,
    .modal__head .s__footer .footer__columns:first-child .footer__column:first-child p,
    .modal__text .s__footer .footer__columns:first-child .footer__column:first-child li,
    .modal__text .s__footer .footer__columns:first-child .footer__column:first-child p,
    .modal__text .s__footer .footer__columns:first-child .footer__column:first-child td,
    .modal__text .s__footer .footer__columns:first-child .footer__column:first-child th,
    .s__footer .footer__columns:first-child .footer__column:first-child .a__nav .contact__item,
    .s__footer .footer__columns:first-child .footer__column:first-child .modal__head p,
    .s__footer .footer__columns:first-child .footer__column:first-child .modal__text li,
    .s__footer .footer__columns:first-child .footer__column:first-child .modal__text p,
    .s__footer .footer__columns:first-child .footer__column:first-child .modal__text td,
    .s__footer .footer__columns:first-child .footer__column:first-child .modal__text th,
    .s__footer .footer__columns:first-child .footer__column:first-child .paragraph__r,
    .s__footer .footer__columns:first-child .footer__column:first-child .s__partnerships .partners__partner p,
    .s__footer .footer__columns:first-child .footer__column:first-child .s__rooms .categories__category p,
    .s__footer .footer__columns:first-child .footer__column:first-child .s__tab li,
    .s__footer .footer__columns:first-child .footer__column:first-child .s__tab p,
    .s__partnerships .partners__partner .s__footer .footer__columns:first-child .footer__column:first-child p,
    .s__rooms .categories__category .s__footer .footer__columns:first-child .footer__column:first-child p,
    .s__tab .s__footer .footer__columns:first-child .footer__column:first-child li,
    .s__tab .s__footer .footer__columns:first-child .footer__column:first-child p {
        max-width: unset
    }
}

.s__footer .footer__columns:first-child .footer__column:nth-child(2) {
    flex-basis: 25vw
}

@media only screen and (max-width:580px) {
    .s__footer .footer__columns:first-child .footer__column:nth-child(2) {
        flex-basis: 100%;
		margin-bottom: 8vw;;
    }
}

.s__footer .footer__columns:first-child .footer__column:nth-child(3) {
    flex-basis: 25vw
}

@media only screen and (max-width:580px) {
    .s__footer .footer__columns:first-child .footer__column:nth-child(3) {
        flex-basis: 100%;
		margin-bottom: 8vw;
    }
}

.s__footer .footer__columns:nth-child(2) {
    color: #fff;
    padding: 2.083vw 0
}

@media only screen and (max-width:580px) {
    .s__footer .footer__columns:nth-child(2) {
        flex-wrap: wrap;
        padding: 0 0 6.667vw
    }
}

.footer__columns li{
	padding:10px;
}

.s__footer .footer__columns:nth-child(2) .footer__list {
    display: flex
}

.s__footer .footer__columns:nth-child(2) .link__r {
    margin-right: 4vw
}

.s__footer .footer__columns:nth-child(2) .link__r:before {
    background: #fff
}

@media only screen and (max-width:580px) {
    .s__footer .footer__columns:nth-child(2) .footer__column {
        flex-basis: 100%
    }
}

@media only screen and (max-width:580px) {
    .s__footer .footer__columns:nth-child(2) .footer__column:first-child {
        order: 2;
        margin-top: 6.667vw
    }
}

.s__footer .footer__columns:nth-child(2) .footer__column:first-child .link__r:before {
    display: none
}

.s__footer .footer__columns:nth-child(2) .footer__column:nth-child(2) {
    flex-basis: 33.333vw
}

@media only screen and (max-width:580px) {
    .s__footer .footer__columns:nth-child(2) .footer__column:nth-child(2) {
        flex-basis: 100%
    }
}

.s__footer .footer__column {
    position: relative
}

.s__footer .footer__column:first-child {
    flex-basis: 25vw
}

@media only screen and (max-width:580px) {
    .s__footer .footer__column:first-child {
        flex-basis: 100%
    }
}

.s__gallery {
    position: relative;
    margin: 7.0vw 11.111vw
}

@media only screen and (max-width:580px) {
    .s__gallery {
        margin: 26.667vw 8vw
    }
}

.s__gallery .gallery__heading {
    margin-left: 0.0vw;
    margin-bottom: 4.556vw
}

@media only screen and (max-width:580px) {
    .s__gallery .gallery__heading {
        margin-left: 0
    }
}

.s__gallery .gallery__slider {
    width: 83.333vw;
    height: 55.556vw;
    position: relative;
    transform: translateX(5.556vw)
}

@media only screen and (max-width:580px) {
    .s__gallery .gallery__slider {
        width: 100%;
        height: auto;
        transform: unset
    }
}

.s__gallery .slider__slides {
    top: 105;
    left: -84px;
    width: 80%;
    height: 80%;
    overflow: hidden;
    position: absolute
}

@media only screen and (max-width:580px) {
    .s__gallery .slider__slides {
        top: unset;
        left: unset;
        height: 56vw;
        position: relative
    }
}

.s__gallery .slider__count {
    top: 50%;
    right: 90vw;
    height: 3.472vw;
    line-height: 3.472vw;
    display: flex;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__gallery .slider__count {
        top: unset;
        left: unset;
        right: unset;
        height: 9vw;
        width: 12.5vw;
        transform: unset;
        position: relative;
        margin: 10.667vw auto 0
    }
}

@media only screen and (max-width:580px) {
    .s__gallery .slider__count .count__s:before {
        padding: 0 1vw
    }
}

.s__gallery .slider__count .count__l {
    width: unset;
    text-align: right
}

.s__gallery .slider__slide {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #fff;
    position: absolute;
    will-change: transform
}

.s__gallery .slider__slide .image__src {
    will-change: transform
}

.s__hero {
    width: 100%;
    height: 100vh;
    color: #fff;
    overflow: hidden;
    position: relative;
    background: #000
}

@media only screen and (max-width:580px) {
    .s__hero {
        height: 90vh;
        min-height: 155vw
    }
}

.s__hero .hero__logo {
    left: 50%;
    top: 3.472vw;
    z-index: 5;
    width: 10.417vw;
    height: 8.333vw;
    position: absolute;
    transform: translateX(-50%);
    background-repeat: no-repeat;
    background-position: 50%;

}

@media only screen and (max-width:580px) {
    .s__hero .hero__logo {
        top: 21.333vw;
        width: 33.333vw;
        height: 26.667vw
    }
}

.s__hero .hero__indicator {
    bottom: 0;
    right: 3.472vw;
    z-index: 5;
    width: 1px;
    height: 4.167vw;
    overflow: hidden;
    background: #fff;
    position: absolute
}

@media only screen and (max-width:580px) {
    .s__hero .hero__indicator {
        right: 8vw;
        height: 16vw
    }
}

.s__hero .indicator__stroke {
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background: #03663a;
    position: absolute
}

.s__hero .hero__copy {
    z-index: 5;
    left: 5.556vw;
    bottom: 4.167vw;
    font-size: 1.103vw;
    position: absolute;
	display:none;
}

@media only screen and (max-width:580px) {
    .s__hero .hero__copy {
        display: none
    }
}

.s__hero .hero__heading {
    top: 50%;
    z-index: 5;
    width: 100%;
    text-align: center;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__hero .hero__heading {
        top: unset;
        left: 8vw;
        right: 8vw;
        width: auto;
        bottom: 32vw;
        text-align: left;
        transform: unset
    }
}

.s__hero .hero__bullets {
    z-index: 5;
    left: 5.556vw;
    bottom: 3.639vw;
    position: absolute
}

@media only screen and (max-width:580px) {
    .s__hero .hero__bullets {
        left: 8vw;
        bottom: 8vw
    }
}

.s__hero .hero__bullets .list__item {
    opacity: .5
}

.s__hero .hero__bullets .list__item.is__active {
    opacity: 1
}

.s__hero .paragraph__l {
    margin: 2.778vw 27.083vw 0
}

@media only screen and (max-width:580px) {
    .s__hero .paragraph__l {
        margin: 5.333vw 8vw 0 0
    }
}

.s__hero .hero__slider {
    will-change: transform
}

.s__hero .hero__slider,
.s__hero .slider__slide {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute
}

.s__hero .slider__slide {
    opacity: 0;
    will-change: opacity
}

.s__hero .slider__slide:before {
    top: 0;
    left: 0;
    z-index: 1;
    content: "";
    opacity: .1;
    width: 100%;
    height: 100%;
    position: absolute;
    background: linear-gradient(180deg, transparent 10%, #000)
}

.s__hero .image__src {
    opacity: .8;
    object-position: top center
}

.s__hotel-pillars {
    margin: 7.0vw 11.111vw
}

@media only screen and (max-width:580px) {
    .s__hotel-pillars {
        margin: 26.667vw 8.533vw
    }
}

.a__menu .s__hotel-pillars .menu__button,
.a__nav .s__hotel-pillars .sub__item,
.s__hotel-pillars .a__menu .menu__button,
.s__hotel-pillars .a__nav .sub__item,
.s__hotel-pillars .chapeau__r,
.s__hotel-pillars .heading__xxl {
    margin-left: 0.0vw
}

@media only screen and (max-width:580px) {
    .s__hotel-pillars .heading__xl {
        font-size: 7.467vw;
        line-height: 8.533vw
    }
}

.a__menu .s__hotel-pillars .menu__button,
.a__nav .s__hotel-pillars .sub__item,
.s__hotel-pillars .a__menu .menu__button,
.s__hotel-pillars .a__nav .sub__item,
.s__hotel-pillars .chapeau__r {
    margin-bottom: 4.167vw
}

.a__nav .s__hotel-pillars .contact__item,
.modal__head .s__hotel-pillars p,
.modal__text .s__hotel-pillars li,
.modal__text .s__hotel-pillars p,
.modal__text .s__hotel-pillars td,
.modal__text .s__hotel-pillars th,
.s__hotel-pillars .a__nav .contact__item,
.s__hotel-pillars .modal__head p,
.s__hotel-pillars .modal__text li,
.s__hotel-pillars .modal__text p,
.s__hotel-pillars .modal__text td,
.s__hotel-pillars .modal__text th,
.s__hotel-pillars .paragraph__r,
.s__hotel-pillars .s__partnerships .partners__partner p,
.s__hotel-pillars .s__rooms .categories__category p,
.s__hotel-pillars .s__tab li,
.s__hotel-pillars .s__tab p,
.s__partnerships .partners__partner .s__hotel-pillars p,
.s__rooms .categories__category .s__hotel-pillars p,
.s__tab .s__hotel-pillars li,
.s__tab .s__hotel-pillars p {
    position: relative;
    margin-top: 3.472vw;
    padding: 0 38.889vw 0 11.111vw
}

@media only screen and (max-width:580px) {
    .a__nav .s__hotel-pillars .contact__item,
    .modal__head .s__hotel-pillars p,
    .modal__text .s__hotel-pillars li,
    .modal__text .s__hotel-pillars p,
    .modal__text .s__hotel-pillars td,
    .modal__text .s__hotel-pillars th,
    .s__hotel-pillars .a__nav .contact__item,
    .s__hotel-pillars .modal__head p,
    .s__hotel-pillars .modal__text li,
    .s__hotel-pillars .modal__text p,
    .s__hotel-pillars .modal__text td,
    .s__hotel-pillars .modal__text th,
    .s__hotel-pillars .paragraph__r,
    .s__hotel-pillars .s__partnerships .partners__partner p,
    .s__hotel-pillars .s__rooms .categories__category p,
    .s__hotel-pillars .s__tab li,
    .s__hotel-pillars .s__tab p,
    .s__partnerships .partners__partner .s__hotel-pillars p,
    .s__rooms .categories__category .s__hotel-pillars p,
    .s__tab .s__hotel-pillars li,
    .s__tab .s__hotel-pillars p {
        padding: 0 0 0 25.333vw
    }
}

.a__nav .s__hotel-pillars .contact__item:before,
.modal__head .s__hotel-pillars p:before,
.modal__text .s__hotel-pillars li:before,
.modal__text .s__hotel-pillars p:before,
.modal__text .s__hotel-pillars td:before,
.modal__text .s__hotel-pillars th:before,
.s__hotel-pillars .a__nav .contact__item:before,
.s__hotel-pillars .modal__head p:before,
.s__hotel-pillars .modal__text li:before,
.s__hotel-pillars .modal__text p:before,
.s__hotel-pillars .modal__text td:before,
.s__hotel-pillars .modal__text th:before,
.s__hotel-pillars .paragraph__r:before,
.s__hotel-pillars .s__partnerships .partners__partner p:before,
.s__hotel-pillars .s__rooms .categories__category p:before,
.s__hotel-pillars .s__tab li:before,
.s__hotel-pillars .s__tab p:before,
.s__partnerships .partners__partner .s__hotel-pillars p:before,
.s__rooms .categories__category .s__hotel-pillars p:before,
.s__tab .s__hotel-pillars li:before,
.s__tab .s__hotel-pillars p:before {
    left: 0;
    top: .5vw;
    height: 1px;
    width: 6.944vw;
    content: "";
    background: #03663a;
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__nav .s__hotel-pillars .contact__item:before,
    .modal__head .s__hotel-pillars p:before,
    .modal__text .s__hotel-pillars li:before,
    .modal__text .s__hotel-pillars p:before,
    .modal__text .s__hotel-pillars td:before,
    .modal__text .s__hotel-pillars th:before,
    .s__hotel-pillars .a__nav .contact__item:before,
    .s__hotel-pillars .modal__head p:before,
    .s__hotel-pillars .modal__text li:before,
    .s__hotel-pillars .modal__text p:before,
    .s__hotel-pillars .modal__text td:before,
    .s__hotel-pillars .modal__text th:before,
    .s__hotel-pillars .paragraph__r:before,
    .s__hotel-pillars .s__partnerships .partners__partner p:before,
    .s__hotel-pillars .s__rooms .categories__category p:before,
    .s__hotel-pillars .s__tab li:before,
    .s__hotel-pillars .s__tab p:before,
    .s__partnerships .partners__partner .s__hotel-pillars p:before,
    .s__rooms .categories__category .s__hotel-pillars p:before,
    .s__tab .s__hotel-pillars li:before,
    .s__tab .s__hotel-pillars p:before {
        width: 16.533vw
    }
}

.s__hotel-pillars .hotel-pillars__slider {
    cursor: none;
    position: relative;
    margin-top: 5.028vw
}

@media only screen and (max-width:580px) {
    .s__hotel-pillars .hotel-pillars__slider {
        margin-top: 16vw
    }
}

.s__hotel-pillars .slider__count {
    top: 50%;
    left: -5.556vw;
    height: 3.472vw;
    line-height: 3.472vw;
    display: flex;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__hotel-pillars .slider__count {
        top: unset;
        left: unset;
        height: 9.333vw;
        line-height: 9.333vw;
        margin-top: 8vw;
        transform: unset;
        position: relative
    }
}
/*
.s__hotel-pillars .slider__next,
.s__hotel-pillars .slider__prev {
    z-index: 5;
    width: 20%;
    height: 100%;
    position: absolute
}
*/

.intro__logo svg{
	transform: scale(1);
animation: pulse 1s infinite;
}

@keyframes pulse {
	0% {
		opacity:0;
	}

	50% {
		opacity:1;
	}

	100% {
		opacity:0;
	}
}

.s__hotel-pillars .slider__next,
.s__hotel-pillars .slider__prev {
    z-index: 5;
    width: 20%;
	height: 20px;
	position: absolute;
	bottom: -60px;
	font-size:26px;
	cursor:pointer;
}

.slider__next::after{
	content: 'Next >>';
	position: absolute;
	top:0px;
	left:0px;
}

.slider__prev::after{
	content: '<< Prev';
	position: absolute;
	top:0px;
	left:0px;
}

@media only screen and (max-width:580px) {
    .s__hotel-pillars .slider__next,
    .s__hotel-pillars .slider__prev, .slider__next::after, .slider__prev::after {
        display: none
    }
}

.s__hotel-pillars .slider__prev {
    left: 0
}

.s__hotel-pillars .slider__next {
    right: 0
}

.s__hotel-pillars .slider__container {
    position: relative
}

.s__hotel-pillars .slider__large {
    width: 55.556vw;
    height: 59.028vw;
    overflow: hidden;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__hotel-pillars .slider__large {
        width: 66.4vw;
        height: 70.667vw
    }
}

.s__hotel-pillars .slider__small {
    top: 50%;
    right: -25vw;
    width: 41.667vw;
    height: 41.667vw;
    overflow: hidden;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__hotel-pillars .slider__small {
        right: -39vw;
        width: 42.667vw;
        height: 42.667vw
    }
}

.s__hotel-pillars .slider__mask,
.s__hotel-pillars .slider__slide {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: absolute
}

.s__hotel-pillars .slider__slide {
    will-change: transform;
    backface-visibility: hidden
}

.s__hotel-pillars .slider__mask {
    perspective: 3000px
}

.s__hotel-pillars .slider__text {
    left: 5.556vw;
    bottom: 5.556vw;
    z-index: 2;
    color: #fff;
    position: absolute;
    will-change: transform;
    backface-visibility: hidden
}

@media only screen and (max-width:580px) {
    .s__hotel-pillars .slider__text {
        left: 5.333vw;
        bottom: 5.333vw
    }
}

.s__hotel-pillars .slider__image {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: #000;
    position: absolute
}

.s__hotel-pillars .slider__image .image__src {
    will-change: transform;
    backface-visibility: hidden
}

.s__hotel-pillars .slider__image:before {
    top: 0;
    left: 0;
    z-index: 1;
    content: "";
    opacity: .5;
    width: 100%;
    height: 100%;
    position: absolute;
    background: linear-gradient(180deg, transparent 30%, #000);
    backface-visibility: hidden
}

.s__image {
    width: 100%;
    height: 58.681vw;
    position: relative;
    margin: 16.667vw 0
}

@media only screen and (max-width:580px) {
    .s__image {
        margin: 26.667vw 0
    }
}

.s__image .image__pattern {
    top: -4.16vw;
    left: 11.111vw;
    width: 8.333vw;
    height: 8.333vw;
    z-index: 1;
    position: absolute;
    background-size: 100%;
    background-repeat: repeat;
    background-image: url(../img/pattern-diamond.png)
}

@media only screen and (max-width:580px) {
    .s__image .image__pattern {
        left: 8vw;
        top: -10vw;
        width: 16vw;
        height: 16vw
    }
}

.s__image .image__mask {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #fff;
    position: absolute
}

.s__image .image__src {
    top: -15%;
    height: 110%
}

.s__instagram {
    width: 100%;
    overflow: hidden;
    margin: 7.0vw 0;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__instagram {
        margin: 26.667vw 0
    }
}

.modal__text .s__instagram h3,
.s__instagram .heading__r,
.s__instagram .modal__text h3 {
    right: 0;
    bottom: 4.167vw;
    position: absolute
}

@media only screen and (max-width:580px) {
    .modal__text .s__instagram h3,
    .s__instagram .heading__r,
    .s__instagram .modal__text h3 {
        bottom: -14.5vw;
        font-size: 5.333vw
    }
}

.modal__text .s__instagram h3:before,
.s__instagram .heading__r:before,
.s__instagram .modal__text h3:before {
    left: 0;
    bottom: 0;
    content: "";
    width: 100%;
    height: 1px;
    background: #03663a;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    backface-visibility: hidden;
    transition: transform .4s ease-out
}

@media only screen and (max-width:580px) {
    .modal__text .s__instagram h3:before,
    .s__instagram .heading__r:before,
    .s__instagram .modal__text h3:before {
        display: none
    }
}

.modal__text .s__instagram h3:hover:before,
.s__instagram .heading__r:hover:before,
.s__instagram .modal__text h3:hover:before {
    transform: scaleX(1);
    transform-origin: left
}

.s__instagram .instagram__heading {
    position: relative;
    margin: 0 16.66vw 6.944vw
}

@media only screen and (max-width:580px) {
    .s__instagram .instagram__heading {
        margin: 0 8vw 21.333vw
    }
}

.s__instagram .instagram__dragger {
    cursor: none;
    display: flex
}

.s__instagram .instagram__image {
    display: flex;
    flex-shrink: 0;
    background: #fff;
    position: relative;
    margin-right: 5.556vw
}

@media only screen and (max-width:580px) {
    .s__instagram .instagram__image {
        margin-right: 8vw
    }
}

.s__instagram .instagram__image:last-of-type {
    margin-right: 0
}

.s__instagram .instagram__image:nth-child(4n+1) {
    width: 33.333vw;
    height: 33.333vw
}

@media only screen and (max-width:580px) {
    .s__instagram .instagram__image:nth-child(4n+1) {
        width: 64vw;
        height: 64vw
    }
}

.s__instagram .instagram__image:nth-child(4n+2) {
    width: 22.222vw;
    height: 22.222vw;
    margin-top: 19.375vw
}

@media only screen and (max-width:580px) {
    .s__instagram .instagram__image:nth-child(4n+2) {
        width: 41.6vw;
        height: 41.6vw;
        margin-top: 38.667vw
    }
}

.s__instagram .instagram__image:nth-child(4n+3) {
    width: 16.667vw;
    height: 16.667vw;
    margin-top: 5.556vw
}

@media only screen and (max-width:580px) {
    .s__instagram .instagram__image:nth-child(4n+3) {
        width: 33.333vw;
        height: 33.333vw;
        margin-top: 13.867vw
    }
}

.s__instagram .instagram__image:nth-child(4n+4) {
    width: 27.778vw;
    height: 27.778vw;
    margin-top: 13.75vw
}

@media only screen and (max-width:580px) {
    .s__instagram .instagram__image:nth-child(4n+4) {
        width: 50.133vw;
        height: 50.133vw;
        margin-top: 25.333vw
    }
}

.a__intro {
    width: 100vw;
    z-index: 99;
    position: fixed;
    background: #fff;
    text-align: center
}

.a__intro,
.a__intro .intro__container {
    top: 0;
    left: 0;
    height: 100%;
    overflow: hidden
}

.a__intro .intro__container {
    width: 100%;
    position: absolute
}

.a__intro .logo__location,
.a__intro .logo__wordmark {
    opacity: 1;
    position: relative;
    will-change: transform
}

.a__intro .intro__logo {
    top: 50%;
    left: 50%;
    width: 300px;
    height: 300px;
    opacity: 1;
	margin-left:-150px;
	margin-top:-150px;
    position: absolute;
    will-change: transform
}

@media only screen and (max-width:580px) {
    .a__intro .intro__logo {
        width: 120px;
		height: 120px;
		margin-left:-60px;
		left:50%;
		/*margin:20px;
		/*33.6vw;
        height: 27.2vw*/
    }
}

.a__intro .logo__monogram {
    width: 4.653vw;
    height: 4.236vw;
    margin: 0 auto
}

@media only screen and (max-width:580px) {
    .a__intro .logo__monogram {
        /*width: 15.2vw;
        height: 13.867vw*/
    }
}

.a__intro .logo__wordmark {
    width: 10.417vw;
    height: 8.389vw;
    margin: .694vw 0
}

@media only screen and (max-width:580px) {
    .a__intro .logo__wordmark {
        width: 120px;
        height: 120px;
        margin: 0 auto;
    }
}

.a__intro .logo__location {
    width: 3.611vw;
    height: 1.255vw;
    margin: 0 auto
}

@media only screen and (max-width:580px) {
    .a__intro .logo__location {
        width: 12vw;
        height: 4.667vw
    }
}

.s__invite {
    width: 100%;
    color: #fff;
    position: relative;
    margin-bottom: 8.33vw
}

@media only screen and (max-width:580px) {
    .s__invite {
        margin-bottom: 16.66vw
    }
}

.s__invite .button__r {
    margin: auto;
    display: inline-block
}

@media only screen and (max-width:580px) {
    .s__invite .button__r {
        margin-bottom: 8.33vw
    }
}

.s__invite .invite__video {
    margin-top: 8.33vw
}

.s__invite .invite__back {
    margin: 8.33vw 0;
    text-align: center
}

.s__invite .video__src {
    width: 75vw;
    margin: auto;
    border: none;
    outline: none;
    display: block;
    object-fit: cover
}

@media only screen and (max-width:580px) {
    .s__invite .video__src {
        width: 83.33vw
    }
}

.a__logo {
    z-index: 25;
    top: 2px;
    left: 3.472vw;
    /*width: 8vw;*/
	height:110px;
    /*height: 4.306vw;*/
    /*opacity: 0;*/
    cursor: pointer;
    position: fixed
}

@media only screen and (max-width:580px) {
    .a__logo {
        display: block
    }
}

.a__logo svg {
    fill: #3a3636;
    transition: fill .25s cubic-bezier(.25, .25, .75, .75)
}

.a__logo.is__light svg {
    fill: #fff
}

.s__marquee {
    width: 100%;
    overflow: hidden;
    margin: 8.33vw 0;
    position: relative;
    white-space: nowrap
}

.s__marquee .marquee__container {
    width: 100%;
    height: 28vw;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__marquee .marquee__container {
        height: 40vw
    }
}

.s__marquee .marquee__r {
    top: 0;
    left: 0;
    position: absolute;
    will-change: transform;
    backface-visibility: hidden
}

.a__menu {
    z-index: 10;
    top: 0;
    right: 0;
	width:100%;
    height: 120px;
    position: fixed;
    overflow: hidden
}

@media only screen and (max-width:580px) {
    .a__menu {
        top: 8vw;
        right: 8vw;
        left: unset;
        width: 13.333vw;
        height: 13.333vw;
		z-index: 81;
    }
}

.a__menu .menu__bar {
    top: 0;
    z-index: 2;
    height: 120px;
    display: flex;
    /*color: #fff;*/
	color:rgb(58, 54, 54);
    position: relative;
    /*margin-right: 5.85vw;*/
	background:#fff;
}
.menu__language i{
	margin-left:10px;
	margin-right:10px;
	color:#999;
}
.menu__language2 i{
	margin-left:10px;
	margin-right:10px;
	color:#03663a;
}
.menu__language2{
	display:none;
}
.menu__language i:hover, .menu__language2 i:hover{

	color:#8fbf54;
}
#bg_white{
	display:none;
}

@media only screen and (max-width:580px) {
    .a__menu .menu__bar {
        display: none
    }
	.a__logo{
		width: 25vw;
		top:10px;
	}
	.menu__language2{
	display:block;
	font-size: 24px;
z-index: 20;
position: fixed;
top: 48px;
left: 35%;
}
#bg_white{
	display:block;
	position:fixed;
	top:0px;
	left:0px;
	width:100%;
	z-index:2;
	height:120px;
	background:#fff;
	
}

}

.a__menu .social__button {
    height: 100%;
    display: flex;
    align-items: center
}

.a__menu .button__instagram {
    width: 1.667vw;
    height: 1.667vw;
    fill: #fff
}

.a__menu .button__instagram:hover {
    fill: #03663a!important
}

.a__menu .menu__buttons {
    height: auto;
    overflow: hidden;
	margin: 0 auto;
    margin-right:0px;
}

.a__menu .menu__language,
.a__menu .menu__social {
    margin: 0 0.5vw;
	line-height: 60px
}

.a__menu .menu__divider {
    top: 50%;
    width: 1px;
    height: 2.083vw;
    position: relative;
    margin-left: 1.042vw;
    background-color: #fff;
    backface-visibility: hidden;
    transform: translateY(-50%)
}

.a__menu .menu__button {
    display: block;
    cursor: pointer;
    margin: 0 1.042vw;
    position: relative;
    margin-bottom: unset;
    line-height: /*5.833vw;*/ 60px;
	font-family: 'wask-new';
	font-weight:bold;
}
/*
.a__menu .menu__button:before {
    left: 0;
    bottom: 1.2vw;
    width: 100%;
    height: 3px;
    content: "";
    background: #fff;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .4s ease-out
}
*/
.a__menu .menu__button:hover:before {
    transform: scaleX(1);
    transform-origin: left
}
.a__menu .selected:before {
	
	left: 0;
    bottom: 1.2vw;
    width: 100%;
    height: 3px;
    content: "";
    background: none;
    position: absolute;
    transform: scaleX(1);
    transform-origin: right;
    transition: transform .4s ease-out
}
.submenu{
	height:50px;
	background:#8FBF54;
	position:fixed;
	z-index:1000;
	margin-top:0px;
	width:100%;
	display:none;
	text-align:center;

}


.a__menu .menu__list {
    display: flex
}

.a__menu .burger__close,
.a__menu .burger__open {
    top: 50%;
    left: 50%;
    width: 2.222vw;
    z-index: 2;
    overflow: hidden;
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__menu .burger__close,
    .a__menu .burger__open {
        width: 5.333vw
    }
}

.a__menu .burger__open {
    transform: translate(-50%, -50%)
}

.a__menu .burger__open span {
    height: 2px;
    width: 2.222vw
}

@media only screen and (max-width:580px) {
    .a__menu .burger__open span {
        height: 1px;
        width: 5.333vw
    }
}

.a__menu .burger__open span:nth-child(2) {
    margin: 4px 0
}

.a__menu .burger__close {
    transform: translate(-50%, -50%) rotate(45deg);
    width: 1.667vw;
    height: 1.667vw
}

@media only screen and (max-width:580px) {
    .a__menu .burger__close {
        width: 5.333vw;
        height: 5.333vw
    }
}

.a__menu .burger__close span {
    position: absolute
}

.a__menu .burger__close span:first-child {
    height: 2px;
    width: 100%;
    top: calc(50% - 1px)
}

@media only screen and (max-width:580px) {
    .a__menu .burger__close span:first-child {
        height: 1px
    }
}

.a__menu .burger__close span:nth-child(2) {
    width: 2px;
    height: 100%;
    left: calc(50% - 1px)
}

@media only screen and (max-width:580px) {
    .a__menu .burger__close span:nth-child(2) {
        width: 1px
    }
	
}
@media only screen and (min-width:1025px) {
.a__menu .menu__button {
	font-size:26px;
	color:#3a3636;
	
}

.mauro3 a {
	font-size: 36px !important
}

}

.a__menu .burger__shape,
.a__menu .menu__shape {
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    position: absolute;
    background: #fff
}

.a__menu .burger__outline {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    border: 1px solid hsla(0, 0%, 100%, .2)
}

.a__menu .menu__shape {
    width: auto;
    right: 5.833vw
}

@media only screen and (max-width:580px) {
    .a__menu .menu__shape {
        display: none
    }
}

.a__menu .burger__shape {
    background-color: #03663a;
    transition: background-color .25s ease-out
}

.a__menu .menu__burger {
    top: 0;
    right: 0;
    z-index: 81;
    width: 5.833vw;
    height: 5.833vw;
    cursor: pointer;
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__menu .menu__burger {
        width: 13.333vw;
        height: 13.333vw
    }
}

.a__menu .menu__burger:hover .burger__shape {
    background-color: #8fbf54
}

.a__menu .menu__burger span {
    display: block;
    background: #fff;
    border-radius: 1px;
    will-change: transform
}

.a__nav {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100vw;
    z-index: 80;
    color: #fff;
    position: fixed;
    overflow: hidden;
    background: #03663a;
    text-align: center;
    visibility: hidden
}

@media only screen and (max-width:580px) {
    .a__nav {
        text-align: left
    }
}

.a__nav .nav__mask {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__nav .nav__mask {
        right: 0;
        bottom: 0;
        overflow-x: hidden;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch
    }
}

.a__nav .nav__mask::-webkit-scrollbar {
    display: none;
    color: #fff;
    height: 0
}

.a__nav .nav__logo {
    left: 50%;
    top: 3.472vw;
    width: 10.417vw;
    height: 8.333vw;
    z-index: 1;
    position: absolute;
    transform: translateX(-50%);
    background-repeat: no-repeat;
    background-position: 50%;
}

@media only screen and (max-width:580px) {
    .a__nav .nav__logo {
        top: 21.333vw;
        width: 33.333vw;
        height: 26.667vw
    }
}

.a__nav .nav__image {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .06;
    position: absolute;
    filter: grayscale(100%);
    will-change: transform
}

.a__nav .nav__image .image__src {
    object-position: top center
}

@media only screen and (max-width:580px) {
    .a__nav .nav__image {
        display: none
    }
}

.a__nav .sub__items {
    display: none
}

@media only screen and (max-width:580px) {
    .a__nav .sub__items {
        display: flex;
        position: relative;
        margin: 70vw 8vw 16vw
    }
}

.a__nav .sub__item {
    opacity: .7;
    color: #fff;
    position: relative;
    line-height: 8.933vw;
    margin: 0 8vw 0 0
}

.a__nav .sub__item:last-of-type {
    margin: 0 0 0 8vw
}

.a__nav .sub__item:last-of-type:before {
    top: 0;
    left: -8vw;
    width: 1px;
    height: 100%;
    content: "";
    position: absolute;
    background: #fff
}

.a__nav .contact__item,
.a__nav .nav__item {
    z-index: 1;
    position: relative;
    display: inline-block
}

.a__nav .contact__item span,
.a__nav .nav__item span {
    position: relative;
    display: inline-block
}

.a__nav .contact__item span:before,
.a__nav .nav__item span:before {
    left: 0;
    bottom: 0;
    content: "";
    width: 100%;
    height: 1px;
    background: #03663a;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    backface-visibility: hidden;
    transition: transform .4s ease-out
}

.a__nav .contact__item:hover span:before,
.a__nav .nav__item:hover span:before {
    transform: scaleX(1);
    transform-origin: left
}

.a__nav .contact__items {
    z-index: 1;
    left: 22.222vw;
    right: 22.222vw;
    bottom: 8.333vw;
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__nav .contact__items {
        left: unset;
        right: unset;
        bottom: unset;
        position: relative;
        margin: 13.333vw 8vw;
        padding-top: 13.333vw;
        border-top: 1px solid hsla(0, 0%, 100%, .4)
    }
}

.a__nav .contact__item {
    text-align: center;
    display: inline-block;
    margin-right: 2.083vw
}

@media only screen and (max-width:580px) {
    .a__nav .contact__item {
        margin-right: 3vw
    }
}

@media only screen and (max-width:580px) {
    .a__nav .contact__item:first-child,
    .a__nav .contact__item:nth-child(2) {
        margin-bottom: 3vw
    }
}

.a__nav .contact__item:last-of-type {
    margin-right: unset
}

.a__nav .nav__items {
    z-index: 1;
    top: 50%;
    left: 22.222vw;
    right: 22.222vw;
    text-align: center;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .a__nav .nav__items {
        top: unset;
        left: unset;
        right: unset;
        transform: unset;
        text-align: left;
        position: relative;
        margin: 0 8vw;
		margin-top:20px;
    }
}

.a__nav .nav__item {
    cursor: pointer;
    margin: 1.389vw 2.083vw;
    font-size: 2.951vw;
    font-weight: 400;
    font-family: "Amiri",'Times New Roman',Times,serif
}

@media only screen and (max-width:580px) {
    .a__nav .nav__item {
        margin: 0;
        display: block;
        font-size: 5.333vw
    }
}

.a__nav .nav__item:hover {
    opacity: 1
}

.a__nav .nav__item:before {
    height: 2px
}

.a__nav .nav__item:last-child:after {
    display: none
}

.a__nav .nav__item:after {
    top: .05vw;
    right: -2.8vw;
    opacity: .5;
    content: "/";
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__nav .nav__item:after {
        display: none
    }
}

.a__notification {
    z-index: 90;
    right: 4.16vw;
    bottom: 4.16vw;
    width: 34.556vw;
    position: fixed;
    padding: 3.472vw;
    background: #fff;
    box-shadow: 0 0 35px -25px rgba(0, 0, 0, .75)
}

@media only screen and (max-width:580px) {
    .a__notification {
        top: 50%;
        left: 4.16vw;
        right: 4.16vw;
        bottom: unset;
        width: auto;
        padding: 6.944vw;
        transform: translateY(-50%)
    }
}

.a__notification .button__c {
    top: 2.083vw;
    right: 2.083vw;
    width: 3.819vw;
    height: 3.819vw;
    position: absolute;
    background-size: 1.111vw
}

@media only screen and (max-width:580px) {
    .a__notification .button__c {
        top: 4.166vw;
        width: 7.638vw;
        right: 4.166vw;
        height: 7.638vw;
        background-size: 2.222vw
    }
}

.a__notification .button__b {
    width: 9.153vw;
    right: 2.083vw;
    bottom: 2.083vw;
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__notification .button__b {
        right: 4.166vw;
        bottom: 4.166vw;
        width: 29.153vw
    }
}

.a__notification .heading__r,
.a__notification .modal__text h3,
.modal__text .a__notification h3 {
    margin-bottom: 1.042vw
}

@media only screen and (max-width:580px) {
    .a__notification .heading__r,
    .a__notification .modal__text h3,
    .modal__text .a__notification h3 {
        margin-bottom: 8vw
    }
}

.a__nav .a__notification .contact__item,
.a__notification .a__nav .contact__item,
.a__notification .modal__head p,
.a__notification .modal__text li,
.a__notification .modal__text p,
.a__notification .modal__text td,
.a__notification .modal__text th,
.a__notification .paragraph__r,
.a__notification .s__partnerships .partners__partner p,
.a__notification .s__rooms .categories__category p,
.a__notification .s__tab li,
.a__notification .s__tab p,
.modal__head .a__notification p,
.modal__text .a__notification li,
.modal__text .a__notification p,
.modal__text .a__notification td,
.modal__text .a__notification th,
.s__partnerships .partners__partner .a__notification p,
.s__rooms .categories__category .a__notification p,
.s__tab .a__notification li,
.s__tab .a__notification p {
    font-size: .903vw;
    line-height: 1.25vw;
    margin-bottom: 1.042vw
}

@media only screen and (max-width:580px) {
    .a__nav .a__notification .contact__item,
    .a__notification .a__nav .contact__item,
    .a__notification .modal__head p,
    .a__notification .modal__text li,
    .a__notification .modal__text p,
    .a__notification .modal__text td,
    .a__notification .modal__text th,
    .a__notification .paragraph__r,
    .a__notification .s__partnerships .partners__partner p,
    .a__notification .s__rooms .categories__category p,
    .a__notification .s__tab li,
    .a__notification .s__tab p,
    .modal__head .a__notification p,
    .modal__text .a__notification li,
    .modal__text .a__notification p,
    .modal__text .a__notification td,
    .modal__text .a__notification th,
    .s__partnerships .partners__partner .a__notification p,
    .s__rooms .categories__category .a__notification p,
    .s__tab .a__notification li,
    .s__tab .a__notification p {
        font-size: 3.2vw;
        margin-bottom: 8vw;
        line-height: 4.533vw
    }
}

.a__notification .link__r {
    position: relative;
    font-size: .903vw;
    line-height: 1.25vw;
    display: inline-block
}

@media only screen and (max-width:580px) {
    .a__notification .link__r {
        font-size: 3.2vw;
        line-height: 4.533vw
    }
}

.s__offers {
    margin: 7.0vw 11.111vw
}

@media only screen and (max-width:580px) {
    .s__offers {
        margin: 26.667vw 0
    }
}

.s__offers .button__r {
    margin: 2.8vw 0 0
}

.s__offers .offers__heading {
    text-align: center;
    margin-bottom: 5.111vw
}

@media only screen and (max-width:580px) {
    .s__offers .offers__heading {
        text-align: left;
        margin: 0 8vw 16vw
    }
}

.s__offers .offers__heading .divider__r {
    margin-left: auto;
    margin-right: auto
}

@media only screen and (max-width:580px) {
    .s__offers .offers__heading .divider__r {
        margin-left: 0
    }
}

.s__offers .offers__container {
    position: relative
}

@media only screen and (max-width:580px) {
    .s__offers .offers__container {
        margin: 0 8vw
    }
}

.s__offers .offers__sticky {
    left: 0;
    top: 5.556vw;
    width: 33.333vw;
    height: 42.708vw;
    z-index: 5;
    padding: 5.556vw;
    background: #fff;
    position: absolute;
    will-change: transform
}

@media only screen and (max-width:580px) {
    .s__offers .offers__sticky {
        display: none
    }
}

.s__offers .offers__blocks {
    position: relative
}

.s__offers .offers__block {
    width: 61.111vw;
    position: relative;
    margin: 0 0 11.361vw 16.667vw
}

@media only screen and (max-width:580px) {
    .s__offers .offers__block {
        margin: 0;
        width: auto
    }
}

.s__offers .block__text {
    width: 1px;
    height: 1px;
    z-index: 1;
    overflow: hidden;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__offers .block__text {
        height: auto;
        width: 66.667vw;
        padding: 8vw;
        background: #fff;
        margin: -26.667vw 8vw 13.333vw
    }
}

@media only screen and (max-width:580px) {
    .s__offers .block__text .button__r {
        margin-top: 4vw
    }
}

.s__offers .image__src {
    height: auto;
    position: relative
}

.s__partnerships {
    margin: 7.0vw 11.111vw
}

@media only screen and (max-width:580px) {
    .s__partnerships {
        margin: 26.667vw 0
    }
}

.s__partnerships .partnerships__heading {
    position: relative
}

@media only screen and (max-width:580px) {
    .s__partnerships .partnerships__heading {
        margin: 0 8vw
    }
}

.a__menu .s__partnerships .partnerships__heading .menu__button,
.a__nav .s__partnerships .partnerships__heading .sub__item,
.s__partnerships .partnerships__heading .a__menu .menu__button,
.s__partnerships .partnerships__heading .a__nav .sub__item,
.s__partnerships .partnerships__heading .chapeau__r,
.s__partnerships .partnerships__heading .heading__xxl {
    margin-left: 0.0vw
}

@media only screen and (max-width:580px) {
    .a__menu .s__partnerships .partnerships__heading .menu__button,
    .a__nav .s__partnerships .partnerships__heading .sub__item,
    .s__partnerships .partnerships__heading .a__menu .menu__button,
    .s__partnerships .partnerships__heading .a__nav .sub__item,
    .s__partnerships .partnerships__heading .chapeau__r,
    .s__partnerships .partnerships__heading .heading__xxl {
        margin-left: 0
    }
}

.a__menu .s__partnerships .partnerships__heading .menu__button,
.a__nav .s__partnerships .partnerships__heading .sub__item,
.s__partnerships .partnerships__heading .a__menu .menu__button,
.s__partnerships .partnerships__heading .a__nav .sub__item,
.s__partnerships .partnerships__heading .chapeau__r {
    margin-bottom: 4.167vw
}

.s__partnerships .partners__partner {
    width: 100%;
    display: table;
    margin: 0.0vw 0;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner {
        width: auto;
        display: block;
        margin: 16vw 8vw
    }
}

.modal__text .s__partnerships .partners__partner h2,
.s__partnerships .partners__partner .heading__l,
.s__partnerships .partners__partner .modal__text h2 {
    margin-left: -10vw
}

@media only screen and (max-width:580px) {
    .modal__text .s__partnerships .partners__partner h2,
    .s__partnerships .partners__partner .heading__l,
    .s__partnerships .partners__partner .modal__text h2 {
        margin-left: unset
    }
}

.s__partnerships .partners__partner p {
    margin-left: -10.0vw
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner p {
        margin-left: unset
    }
}

.s__partnerships .partners__partner .button__r {
    display: block;
    margin: 2.8vw 0 0
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner .button__r {
        margin: 4vw 0 0
    }
}

.s__partnerships .partners__partner:nth-child(odd) .partner__text {
    right: 0
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner:nth-child(odd) .partner__text {
        right: unset
    }
}

.s__partnerships .partners__partner:nth-child(odd) .partner__image {
    margin: 0 auto 0 0.0vw
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner:nth-child(odd) .partner__image {
        margin: 0
    }
}

.s__partnerships .partners__partner:nth-child(2n) .partner__text {
    left: 5.556vw
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner:nth-child(2n) .partner__text {
        left: unset
    }
}

.s__partnerships .partners__partner:nth-child(2n) .partner__image {
    float: right
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner:nth-child(2n) .partner__image {
        float: unset
    }
}

.s__partnerships .partners__partner .partner__text {
    top: 50%;
    width: 27.778vw;
    padding: 5.556vw;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner .partner__text {
        top: unset;
        width: auto;
        transform: unset;
        position: relative;
        padding: 8vw 0 0
    }
}

.s__partnerships .partners__partner .partner__image {
    width: 38.889vw;
    height: 60.417vw;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner .partner__image {
        width: unset;
        height: auto
    }
}

@media only screen and (max-width:580px) {
    .s__partnerships .partners__partner .partner__image .image__src {
        height: auto;
        position: relative
    }
}

.s__rooms {
    margin: 17.361vw 11.111vw
}

@media only screen and (max-width:580px) {
    .s__rooms {
        margin: 26.667vw 8vw
    }
}

.s__rooms .rooms__color {
    top: 0
}

.s__rooms .rooms__heading {
    position: relative
}

.a__menu .s__rooms .rooms__heading .menu__button,
.a__nav .s__rooms .rooms__heading .sub__item,
.s__rooms .rooms__heading .a__menu .menu__button,
.s__rooms .rooms__heading .a__nav .sub__item,
.s__rooms .rooms__heading .chapeau__r,
.s__rooms .rooms__heading .heading__xxl {
    margin-left: 3.472vw
}

@media only screen and (max-width:580px) {
    .a__menu .s__rooms .rooms__heading .menu__button,
    .a__nav .s__rooms .rooms__heading .sub__item,
    .s__rooms .rooms__heading .a__menu .menu__button,
    .s__rooms .rooms__heading .a__nav .sub__item,
    .s__rooms .rooms__heading .chapeau__r,
    .s__rooms .rooms__heading .heading__xxl {
        margin-left: 0
    }
}

.a__menu .s__rooms .rooms__heading .menu__button,
.a__nav .s__rooms .rooms__heading .sub__item,
.s__rooms .rooms__heading .a__menu .menu__button,
.s__rooms .rooms__heading .a__nav .sub__item,
.s__rooms .rooms__heading .chapeau__r {
    margin-bottom: 4.167vw
}

@media only screen and (max-width:580px) {
    .a__menu .s__rooms .rooms__heading .menu__button,
    .a__nav .s__rooms .rooms__heading .sub__item,
    .s__rooms .rooms__heading .a__menu .menu__button,
    .s__rooms .rooms__heading .a__nav .sub__item,
    .s__rooms .rooms__heading .chapeau__r {
        margin-bottom: 6.667vw
    }
}

.a__nav .s__rooms .rooms__text .contact__item,
.modal__head .s__rooms .rooms__text p,
.modal__text .s__rooms .rooms__text li,
.modal__text .s__rooms .rooms__text p,
.modal__text .s__rooms .rooms__text td,
.modal__text .s__rooms .rooms__text th,
.s__partnerships .partners__partner .s__rooms .rooms__text p,
.s__rooms .categories__category .rooms__text p,
.s__rooms .rooms__text .a__nav .contact__item,
.s__rooms .rooms__text .categories__category p,
.s__rooms .rooms__text .modal__head p,
.s__rooms .rooms__text .modal__text li,
.s__rooms .rooms__text .modal__text p,
.s__rooms .rooms__text .modal__text td,
.s__rooms .rooms__text .modal__text th,
.s__rooms .rooms__text .paragraph__r,
.s__rooms .rooms__text .s__partnerships .partners__partner p,
.s__rooms .rooms__text .s__tab li,
.s__rooms .rooms__text .s__tab p,
.s__tab .s__rooms .rooms__text li,
.s__tab .s__rooms .rooms__text p {
    column-count: 2;
    column-gap: 5.556vw;
    position: relative;
    margin-top: 3.472vw;
    padding: 0 0 0 11.111vw
}

@media only screen and (max-width:580px) {
    .a__nav .s__rooms .rooms__text .contact__item,
    .modal__head .s__rooms .rooms__text p,
    .modal__text .s__rooms .rooms__text li,
    .modal__text .s__rooms .rooms__text p,
    .modal__text .s__rooms .rooms__text td,
    .modal__text .s__rooms .rooms__text th,
    .s__partnerships .partners__partner .s__rooms .rooms__text p,
    .s__rooms .categories__category .rooms__text p,
    .s__rooms .rooms__text .a__nav .contact__item,
    .s__rooms .rooms__text .categories__category p,
    .s__rooms .rooms__text .modal__head p,
    .s__rooms .rooms__text .modal__text li,
    .s__rooms .rooms__text .modal__text p,
    .s__rooms .rooms__text .modal__text td,
    .s__rooms .rooms__text .modal__text th,
    .s__rooms .rooms__text .paragraph__r,
    .s__rooms .rooms__text .s__partnerships .partners__partner p,
    .s__rooms .rooms__text .s__tab li,
    .s__rooms .rooms__text .s__tab p,
    .s__tab .s__rooms .rooms__text li,
    .s__tab .s__rooms .rooms__text p {
        column-count: 1;
        column-gap: 0;
        margin-top: 6.667vw;
        padding: 0 0 0 25.333vw
    }
}

.a__nav .s__rooms .rooms__text .contact__item:before,
.modal__head .s__rooms .rooms__text p:before,
.modal__text .s__rooms .rooms__text li:before,
.modal__text .s__rooms .rooms__text p:before,
.modal__text .s__rooms .rooms__text td:before,
.modal__text .s__rooms .rooms__text th:before,
.s__partnerships .partners__partner .s__rooms .rooms__text p:before,
.s__rooms .categories__category .rooms__text p:before,
.s__rooms .rooms__text .a__nav .contact__item:before,
.s__rooms .rooms__text .categories__category p:before,
.s__rooms .rooms__text .modal__head p:before,
.s__rooms .rooms__text .modal__text li:before,
.s__rooms .rooms__text .modal__text p:before,
.s__rooms .rooms__text .modal__text td:before,
.s__rooms .rooms__text .modal__text th:before,
.s__rooms .rooms__text .paragraph__r:before,
.s__rooms .rooms__text .s__partnerships .partners__partner p:before,
.s__rooms .rooms__text .s__tab li:before,
.s__rooms .rooms__text .s__tab p:before,
.s__tab .s__rooms .rooms__text li:before,
.s__tab .s__rooms .rooms__text p:before {
    left: 0;
    top: .5vw;
    height: 1px;
    width: 6.944vw;
    content: "";
    background: #03663a;
    position: absolute
}

@media only screen and (max-width:580px) {
    .a__nav .s__rooms .rooms__text .contact__item:before,
    .modal__head .s__rooms .rooms__text p:before,
    .modal__text .s__rooms .rooms__text li:before,
    .modal__text .s__rooms .rooms__text p:before,
    .modal__text .s__rooms .rooms__text td:before,
    .modal__text .s__rooms .rooms__text th:before,
    .s__partnerships .partners__partner .s__rooms .rooms__text p:before,
    .s__rooms .categories__category .rooms__text p:before,
    .s__rooms .rooms__text .a__nav .contact__item:before,
    .s__rooms .rooms__text .categories__category p:before,
    .s__rooms .rooms__text .modal__head p:before,
    .s__rooms .rooms__text .modal__text li:before,
    .s__rooms .rooms__text .modal__text p:before,
    .s__rooms .rooms__text .modal__text td:before,
    .s__rooms .rooms__text .modal__text th:before,
    .s__rooms .rooms__text .paragraph__r:before,
    .s__rooms .rooms__text .s__partnerships .partners__partner p:before,
    .s__rooms .rooms__text .s__tab li:before,
    .s__rooms .rooms__text .s__tab p:before,
    .s__tab .s__rooms .rooms__text li:before,
    .s__tab .s__rooms .rooms__text p:before {
        width: 16.533vw
    }
}

.s__rooms .rooms__categories {
    position: relative;
    margin-top: 21.889vw
}

@media only screen and (max-width:580px) {
    .s__rooms .rooms__categories {
        margin-top: 26.667vw
    }
}

.s__rooms .categories__category {
    width: 100%;
    display: table;
    margin: 21.889vw 0;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category {
        margin: 0 auto 18.667vw
    }
}

.modal__text .s__rooms .categories__category h2,
.s__rooms .categories__category .heading__l,
.s__rooms .categories__category .modal__text h2 {
    margin-left: 1.389vw
}

@media only screen and (max-width:580px) {
    .modal__text .s__rooms .categories__category h2,
    .s__rooms .categories__category .heading__l,
    .s__rooms .categories__category .modal__text h2 {
        margin-left: 0
    }
}

.s__rooms .categories__category p {
    margin-left: 1.389vw
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category p {
        margin-left: 0
    }
}

.s__rooms .categories__category .button__r {
    display: block;
    margin: 2.8vw 0 0
}

.s__rooms .categories__category .category__image {
    background: #fff
}

.s__rooms .categories__category:first-child .category__text {
    float: right;
    position: relative;
    margin-top: 11.111vw
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category:first-child .category__text {
        float: none;
        margin: 46.667vw auto 0
    }
}

.s__rooms .categories__category:first-child .category__image {
    left: 0;
    top: -8vw;
    width: 55.556vw;
    height: 36.806vw;
    position: absolute
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category:first-child .category__image {
        right: 0;
        width: auto;
        height: 55.467vw
    }
}

.s__rooms .categories__category:nth-child(2) .category__text {
    top: 50%;
    left: 22.222vw;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category:nth-child(2) .category__text {
        top: unset;
        left: unset;
        transform: unset;
        position: relative;
        margin: 120vw auto 0
    }
}

.s__rooms .categories__category:nth-child(2) .category__image {
    top: -8vw;
    float: right;
    width: 44.444vw;
    height: 68.958vw;
    position: relative;
    transform: translateX(11.111vw)
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category:nth-child(2) .category__image {
        top: 0;
        left: 0;
        right: 0;
        float: none;
        width: auto;
        height: 129.333vw;
        transform: unset;
        position: absolute
    }
}

.s__rooms .categories__category:nth-child(3) .category__text {
    top: 50%;
    left: 38.889vw;
    position: absolute;
    transform: translateY(-50%)
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category:nth-child(3) .category__text {
        top: unset;
        left: unset;
        transform: unset;
        position: relative;
        margin: 120vw auto 0
    }
}

.s__rooms .categories__category:nth-child(3) .category__image {
    top: -8vw;
    width: 44.444vw;
    height: 68.958vw;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category:nth-child(3) .category__image {
        top: 0;
        left: 0;
        right: 0;
        float: none;
        width: auto;
        height: 129.333vw;
        transform: unset;
        position: absolute
    }
}

.s__rooms .categories__category .category__text {
    z-index: 1;
    width: 27.778vw;
    padding: 5.556vw;
    background: #fff;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__rooms .categories__category .category__text {
        padding: 8vw;
        width: 66.667vw
    }
}

.s__tab {
    margin: 7.0vw 11.111vw
}

@media only screen and (max-width:580px) {
    .s__tab {
        margin: 26.667vw 8vw
    }
}

.s__tab .divider__r {
    /*margin-left: -4.167vw*/
}

@media only screen and (max-width:580px) {
    .s__tab .divider__r {
        margin-left: unset
    }
}

.s__tab .button__r {
    margin-top: 3.472vw;
    display: inline-block
	/*margin-left: -3.4vw;
	margin-left: -3.4vw;*/
}

.s__tab .tab__heading {
    text-align: center
}

@media only screen and (max-width:580px) {
    .s__tab .tab__heading {
        text-align: left
    }
}

.s__tab .tab__nav {
    margin: 6.944vw 0;
    position: relative;
    text-align: center
}

@media only screen and (max-width:580px) {
    .s__tab .tab__nav {
        text-align: left;
        white-space: nowrap;
        margin: 16vw 0 8vw
    }
}

@media only screen and (max-width:580px) {
    .s__tab .tab__nav:after,
    .s__tab .tab__nav:before {
        top: 0;
        bottom: 0;
        z-index: 1;
        width: 8vw;
        content: "";
        height: 100%;
        position: absolute
    }
}

.s__tab .tab__nav:before {
    left: -8vw;
    background: linear-gradient(90deg, #fff 0, hsla(0, 0%, 100%, 0))
}

.s__tab .tab__nav:after {
    right: -8vw;
    background: linear-gradient(270deg, #fff 0, hsla(0, 0%, 100%, 0))
}

.s__tab .tab__nav .nav__list {
    position: relative
}

@media only screen and (max-width:580px) {
    .s__tab .tab__nav .nav__list {
        width: 100vw;
        overflow-x: scroll;
        transform: translateX(-8vw);
        -webkit-overflow-scrolling: touch
    }
}

@media only screen and (max-width:580px) {
    .s__tab .tab__nav .nav__list::-webkit-scrollbar {
        height: 1px
    }
}

.s__tab .tab__nav .nav__list::-webkit-scrollbar-thumb {
    background: transparent
}

.s__tab .tab__nav .list__item {
    height: 1.389vw;
    cursor: pointer;
    margin: 0 3.472vw;
    position: relative;
    line-height: 1.389vw;
    display: inline-block
}

@media only screen and (max-width:580px) {
    .s__tab .tab__nav .list__item {
        margin: 0 4vw;
        height: 5.867vw;
        line-height: 5.867vw
    }
}

.s__tab .tab__nav .list__item:before {
    top: 50%;
    right: -3.8vw;
    width: .486vw;
    height: .486vw;
    content: "";
    position: absolute;
    background: #ccc;
    transform: translateY(-50%) rotate(45deg)
}

@media only screen and (max-width:580px) {
    .s__tab .tab__nav .list__item:before {
        top: 38%;
        right: -5.3vw;
        width: 1.6vw;
        height: 1.6vw
    }
}

.s__tab .tab__nav .list__item:after {
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    content: "";
    background: #03663a;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .4s ease-out
}

.s__tab .tab__nav .list__item.is__active {
    pointer-events: none;
    color: #03663a
}

.s__tab .tab__nav .list__item.is__active:after {
    transform: scaleX(1);
    transform-origin: left
}

@media only screen and (max-width:580px) {
    .s__tab .tab__nav .list__item:first-of-type {
        margin-left: 8vw
    }
}

@media only screen and (max-width:580px) {
    .s__tab .tab__nav .list__item:last-of-type {
        margin-right: 8vw
    }
}

.s__tab .tab__nav .list__item:last-of-type:before {
    display: none
}

.s__tab .tab__container {
    display: flex;
    position: relative
}

@media only screen and (max-width:580px) {
    .s__tab .tab__container {
        flex-wrap: wrap
    }
}

.s__tab .tab__text {
    position: relative;
    flex-basis: 33.333vw
}

@media only screen and (max-width:580px) {
    .s__tab .tab__text {
        order: 2;
        z-index: 4;
        flex-basis: 100%;
        height: 123.133vw;
        background: #fff;
        margin: -8vw 8vw 0
    }
}

.s__tab .tab__text__slide {
    top: 0;
    left: 0;
    opacity: 0;
    position: absolute;
    padding: 0 11.111vw 3.472vw 5.556vw
}

@media only screen and (max-width:580px) {
    .s__tab .tab__text__slide {
        padding: 16vw 8vw
    }
}

.s__tab .tab__images {
    overflow: hidden;
    height: 34.722vw;
    position: relative;
    flex-basis: 38.889vw;
    margin-right: 5.556vw
}

@media only screen and (max-width:580px) {
    .s__tab .tab__images {
        margin-right: 0;
        height: 74.667vw;
        flex-basis: 100%
    }
}

.s__tab .image__mask,
.s__tab .tab__image__slide {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #fff;
    position: absolute
}

.a__desktop .s__tab .tab__nav .list__item:hover {
    color: #03663a
}

.a__desktop .s__tab .tab__nav .list__item:hover:after {
    transform: scaleX(1);
    transform-origin: left
}

.a__modal {
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    opacity: 0;
    z-index: 99;
    position: fixed;
    overflow: hidden;
    pointer-events: none
}

.a__modal .button__b {
    display: none
}

.a__modal .modal__container,
.a__modal .modal__main {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    overflow: hidden;
    position: absolute;
    will-change: transform;
    backface-visibility: hidden
}

.a__modal .modal__background {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    position: fixed;
    pointer-events: none;
    background: rgba(0, 0, 0, .6);
    transition: opacity .25s cubic-bezier(.25, .25, .75, .75)
}

.a__modal .modal__scroll {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch
}

.a__modal .modal__close {
    top: 3.472vw;
    right: 3.472vw;
    width: 5.833vw;
    height: 5.833vw;
    z-index: 5;
    cursor: pointer;
    appearance: none;
    position: absolute;
    background: transparent;
    border: 1px solid rgba(58, 54, 54, .2);
    backface-visibility: hidden;
    background-size: 1.389vw;
    background-position: 50%;
    background-repeat: no-repeat;
    background-image: url(/svg/icon-close.svg)
}

@media only screen and (max-width:580px) {
    .a__modal .modal__close {
        top: 8.33vw;
        right: 8.33vw;
        width: 13.333vw;
        height: 13.333vw;
        background-size: 4vw
    }
}

.a__modal .modal__fluid {
    position: relative;
    background: #fff;
    padding: 16.667vw 0
}

@media only screen and (max-width:580px) {
    .a__modal .modal__fluid {
        padding: 26.667vw 0
    }
}

.a__modal .modal__fluid .button__b {
    z-index: 5;
    right: 3.472vw;
    bottom: 3.472vw;
    display: block;
    position: fixed
}

@media only screen and (max-width:580px) {
    .a__modal .modal__fluid .button__b {
        display: none
    }
}

.a__modal .modal__fluid .modal__close {
    position: fixed
}

.a__modal .modal__large {
    margin: 8.33vw;
    padding: 8.33vw;
    position: relative;
    background: #fff
}

.a__modal .modal__small {
    top: 50%;
    left: 50%;
    width: 59.722vw;
    background: #fff;
    position: absolute;
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:580px) {
    .a__modal .modal__small {
        width: 83.33vw;
        padding: 13.333vw 0
    }
}

.a__modal .modal__small:before {
    top: 0;
    left: 0;
    height: 100%;
    width: 6.806vw;
    z-index: 1;
    content: "";
    position: absolute;
    background-size: 55vw;
    background-repeat: repeat;
    background-image: url(../img/pattern-diamond.jpg)
}

@media only screen and (max-width:580px) {
    .a__modal .modal__small:before {
        background-size: 85vw
    }
}

.modal__gallery {
    height: 37.5vw;
    position: relative;
    margin: 8.333vw 16.667vw
}

@media only screen and (max-width:580px) {
    .modal__gallery {
        margin: 8vw;
        height: 46.667vw
    }
}

.modal__gallery .image__src {
    top: unset;
    left: unset;
    width: auto;
    height: 37.5vw;
    position: relative
}

@media only screen and (max-width:580px) {
    .modal__gallery .image__src {
        height: 46.667vw
    }
}

.modal__gallery .gallery__dragger {
    cursor: none;
    display: flex
}

.modal__gallery .gallery__image {
    margin-right: 5.556vw
}

@media only screen and (max-width:580px) {
    .modal__gallery .gallery__image {
        margin-right: 4vw
    }
}

.modal__gallery .gallery__image:last-child {
    margin-right: 0
}

.modal__head {
    margin: 0 16.667vw 8.333vw
}

@media only screen and (max-width:580px) {
    .modal__head {
        margin: 0 8vw
    }
}

.a__menu .modal__head .menu__button,
.a__nav .modal__head .sub__item,
.modal__head .a__menu .menu__button,
.modal__head .a__nav .sub__item,
.modal__head .chapeau__r,
.modal__head .heading__xl {
    margin-left: 11.111vw
}

@media only screen and (max-width:580px) {
    .a__menu .modal__head .menu__button,
    .a__nav .modal__head .sub__item,
    .modal__head .a__menu .menu__button,
    .modal__head .a__nav .sub__item,
    .modal__head .chapeau__r,
    .modal__head .heading__xl {
        margin-left: 0
    }
}

.modal__head p {
    margin-top: 4.167vw;
    margin-left: 22.222vw;
    margin-right: 16.667vw
}

@media only screen and (max-width:580px) {
    .modal__head p {
        margin-left: 25.333vw
    }
}

.modal__image {
    margin: 8.333vw 16.667vw
}

@media only screen and (max-width:580px) {
    .modal__image {
        margin: 5.333vw 8vw
    }
}

.modal__image:last-of-type {
    margin-bottom: 0
}

.modal__fluid .modal__text {
    padding: 0 11.111vw;
    margin: 8.33vw 16.667vw
}

@media only screen and (max-width:580px) {
    .modal__fluid .modal__text {
        margin: 8vw 0;
        padding: 0 8vw
    }
}

@media only screen and (max-width:580px) {
    .modal__large .modal__text {
        margin: 16vw 0 8vw
    }
}

.modal__small .modal__text {
    padding: 5.556vw 0;
    margin: 0 12.153vw
}

@media only screen and (max-width:580px) {
    .modal__small .modal__text {
        padding: 0
    }
}

@media only screen and (max-width:580px) {
    .modal__text {
        padding: 0;
        margin: 0 8vw
    }
}

.modal__text:last-of-type {
    margin-bottom: unset
}

.modal__text h2 {
    margin-bottom: 2.8vw
}

@media only screen and (max-width:580px) {
    .modal__text h2 {
        margin-bottom: 5.6vw
    }
}

.modal__text h3 {
    margin-top: 2.8vw;
    margin-bottom: .7vw
}

@media only screen and (max-width:580px) {
    .modal__text h3 {
        margin-top: 5.6vw;
        margin-bottom: 1.4vw
    }
}

.modal__text ul {
    margin-top: 2.778vw;
    margin-left: 1.389vw
}

@media only screen and (max-width:580px) {
    .modal__text ul {
        margin-left: 0;
        margin-top: 5.333vw
    }
}

.modal__text table {
    width: 100%;
    margin: 1.4vw 0
}

.modal__text li,
.modal__text p,
.modal__text td,
.modal__text th {
    position: relative;
    margin-bottom: 1.4vw
}

@media only screen and (max-width:580px) {
    .modal__text li,
    .modal__text p,
    .modal__text td,
    .modal__text th {
        margin-bottom: 5.333vw
    }
}

.modal__text li strong,
.modal__text p strong,
.modal__text td strong,
.modal__text th strong {
    font-weight: 500
}

.modal__text th {
    font-weight: 500;
    text-align: left
}

.modal__text td {
    word-break: break-all
}

.modal__text li {
    line-height: 2.431vw;
    margin-bottom: unset
}

@media only screen and (max-width:580px) {
    .modal__text li {
        line-height: 8vw;
        padding-left: 8vw
    }
}

.modal__text li:before {
    top: 1vw;
    left: -1.3vw;
    width: .278vw;
    height: .278vw;
    content: "";
    background: #ccc;
    position: absolute;
    transform: rotate(45deg)
}

@media only screen and (max-width:580px) {
    .modal__text li:before {
        top: 2.7vw;
        left: 2.5vw;
        width: 1.867vw;
        height: 1.867vw
    }
}

.modal__text p:last-of-type {
    margin-bottom: unset
}

.modal__text a {
    color: #03663a;
    text-decoration: underline
}

.modal__text a:hover {
    text-decoration: none
}

