* {
    box-sizing: border-box;
    position: relative
}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

body {
    line-height: 1
}

ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
    content: '';
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

a {
    text-decoration: none
}

strong {
    font-weight: bold
}

em {
    font-style: italic
}

img {
    max-width: 100%
}

.hamburger {
    font: inherit;
    display: inline-block;
    overflow: visible;
    margin: 0;
    padding: 15px;
    cursor: pointer;
    transition-timing-function: linear;
    transition-duration: .15s;
    transition-property: opacity, filter;
    text-transform: none;
    color: inherit;
    border: 0;
    background-color: transparent
}

.hamburger:hover {
    opacity: .7
}

.hamburger-box {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 24px
}

.hamburger-inner {
    top: 50%;
    display: block;
    margin-top: -2px
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
    position: absolute;
    width: 40px;
    height: 4px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform;
    border-radius: 4px;
    background-color: #000
}

.hamburger-inner:after,
.hamburger-inner:before {
    display: block;
    content: ""
}

.hamburger-inner:before {
    top: -10px
}

.hamburger-inner:after {
    bottom: -10px
}

.hamburger--3dx .hamburger-box {
    perspective: 80px
}

.hamburger--3dx .hamburger-inner {
    transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dx .hamburger-inner:after,
.hamburger--3dx .hamburger-inner:before {
    transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dx.is-active .hamburger-inner {
    transform: rotateY(180deg);
    background-color: transparent
}

.hamburger--3dx.is-active .hamburger-inner:before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dx.is-active .hamburger-inner:after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dx-r .hamburger-box {
    perspective: 80px
}

.hamburger--3dx-r .hamburger-inner {
    transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dx-r .hamburger-inner:after,
.hamburger--3dx-r .hamburger-inner:before {
    transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dx-r.is-active .hamburger-inner {
    transform: rotateY(-180deg);
    background-color: transparent
}

.hamburger--3dx-r.is-active .hamburger-inner:before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dx-r.is-active .hamburger-inner:after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dy .hamburger-box {
    perspective: 80px
}

.hamburger--3dy .hamburger-inner {
    transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dy .hamburger-inner:after,
.hamburger--3dy .hamburger-inner:before {
    transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dy.is-active .hamburger-inner {
    transform: rotateX(-180deg);
    background-color: transparent
}

.hamburger--3dy.is-active .hamburger-inner:before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dy.is-active .hamburger-inner:after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dy-r .hamburger-box {
    perspective: 80px
}

.hamburger--3dy-r .hamburger-inner {
    transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dy-r .hamburger-inner:after,
.hamburger--3dy-r .hamburger-inner:before {
    transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dy-r.is-active .hamburger-inner {
    transform: rotateX(180deg);
    background-color: transparent
}

.hamburger--3dy-r.is-active .hamburger-inner:before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dy-r.is-active .hamburger-inner:after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dxy .hamburger-box {
    perspective: 80px
}

.hamburger--3dxy .hamburger-inner {
    transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dxy .hamburger-inner:after,
.hamburger--3dxy .hamburger-inner:before {
    transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dxy.is-active .hamburger-inner {
    transform: rotateX(180deg) rotateY(180deg);
    background-color: transparent
}

.hamburger--3dxy.is-active .hamburger-inner:before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dxy.is-active .hamburger-inner:after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dxy-r .hamburger-box {
    perspective: 80px
}

.hamburger--3dxy-r .hamburger-inner {
    transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dxy-r .hamburger-inner:after,
.hamburger--3dxy-r .hamburger-inner:before {
    transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dxy-r.is-active .hamburger-inner {
    transform: rotateX(180deg) rotateY(180deg) rotate(-180deg);
    background-color: transparent
}

.hamburger--3dxy-r.is-active .hamburger-inner:before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dxy-r.is-active .hamburger-inner:after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--arrow.is-active .hamburger-inner:before {
    transform: translate3d(-8px, 0, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrow.is-active .hamburger-inner:after {
    transform: translate3d(-8px, 0, 0) rotate(45deg) scaleX(.7)
}

.hamburger--arrow-r.is-active .hamburger-inner:before {
    transform: translate3d(8px, 0, 0) rotate(45deg) scaleX(.7)
}

.hamburger--arrow-r.is-active .hamburger-inner:after {
    transform: translate3d(8px, 0, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrowalt .hamburger-inner:before {
    transition: top .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1)
}

.hamburger--arrowalt .hamburger-inner:after {
    transition: bottom .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1)
}

.hamburger--arrowalt.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
    transform: translate3d(-8px, -10px, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrowalt.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
    transform: translate3d(-8px, 10px, 0) rotate(45deg) scaleX(.7)
}

.hamburger--arrowalt-r .hamburger-inner:before {
    transition: top .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1)
}

.hamburger--arrowalt-r .hamburger-inner:after {
    transition: bottom .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1)
}

.hamburger--arrowalt-r.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
    transform: translate3d(8px, -10px, 0) rotate(45deg) scaleX(.7)
}

.hamburger--arrowalt-r.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
    transform: translate3d(8px, 10px, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrowturn.is-active .hamburger-inner {
    transform: rotate(-180deg)
}

.hamburger--arrowturn.is-active .hamburger-inner:before {
    transform: translate3d(8px, 0, 0) rotate(45deg) scaleX(.7)
}

.hamburger--arrowturn.is-active .hamburger-inner:after {
    transform: translate3d(8px, 0, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrowturn-r.is-active .hamburger-inner {
    transform: rotate(-180deg)
}

.hamburger--arrowturn-r.is-active .hamburger-inner:before {
    transform: translate3d(-8px, 0, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrowturn-r.is-active .hamburger-inner:after {
    transform: translate3d(-8px, 0, 0) rotate(45deg) scaleX(.7)
}

.hamburger--boring .hamburger-inner,
.hamburger--boring .hamburger-inner:after,
.hamburger--boring .hamburger-inner:before {
    transition-property: none
}

.hamburger--boring.is-active .hamburger-inner {
    transform: rotate(45deg)
}

.hamburger--boring.is-active .hamburger-inner:before {
    top: 0;
    opacity: 0
}

.hamburger--boring.is-active .hamburger-inner:after {
    bottom: 0;
    transform: rotate(-90deg)
}

.hamburger--collapse .hamburger-inner {
    top: auto;
    bottom: 0;
    transition-delay: .13s;
    transition-timing-function: cubic-bezier(.55, .055, .675, .19);
    transition-duration: .13s
}

.hamburger--collapse .hamburger-inner:after {
    top: -20px;
    transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity .1s linear
}

.hamburger--collapse .hamburger-inner:before {
    transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--collapse.is-active .hamburger-inner {
    transition-delay: .22s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--collapse.is-active .hamburger-inner:after {
    top: 0;
    transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s linear .22s;
    opacity: 0
}

.hamburger--collapse.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
    transform: rotate(-90deg)
}

.hamburger--collapse-r .hamburger-inner {
    top: auto;
    bottom: 0;
    transition-delay: .13s;
    transition-timing-function: cubic-bezier(.55, .055, .675, .19);
    transition-duration: .13s
}

.hamburger--collapse-r .hamburger-inner:after {
    top: -20px;
    transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity .1s linear
}

.hamburger--collapse-r .hamburger-inner:before {
    transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--collapse-r.is-active .hamburger-inner {
    transition-delay: .22s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transform: translate3d(0, -10px, 0) rotate(45deg)
}

.hamburger--collapse-r.is-active .hamburger-inner:after {
    top: 0;
    transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s linear .22s;
    opacity: 0
}

.hamburger--collapse-r.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
    transform: rotate(90deg)
}

.hamburger--elastic .hamburger-inner {
    top: 2px;
    transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55);
    transition-duration: .275s
}

.hamburger--elastic .hamburger-inner:before {
    top: 10px;
    transition: opacity .125s ease .275s
}

.hamburger--elastic .hamburger-inner:after {
    top: 20px;
    transition: transform .275s cubic-bezier(.68, -.55, .265, 1.55)
}

.hamburger--elastic.is-active .hamburger-inner {
    transition-delay: 75ms;
    transform: translate3d(0, 10px, 0) rotate(135deg)
}

.hamburger--elastic.is-active .hamburger-inner:before {
    transition-delay: 0s;
    opacity: 0
}

.hamburger--elastic.is-active .hamburger-inner:after {
    transition-delay: 75ms;
    transform: translate3d(0, -20px, 0) rotate(-270deg)
}

.hamburger--elastic-r .hamburger-inner {
    top: 2px;
    transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55);
    transition-duration: .275s
}

.hamburger--elastic-r .hamburger-inner:before {
    top: 10px;
    transition: opacity .125s ease .275s
}

.hamburger--elastic-r .hamburger-inner:after {
    top: 20px;
    transition: transform .275s cubic-bezier(.68, -.55, .265, 1.55)
}

.hamburger--elastic-r.is-active .hamburger-inner {
    transition-delay: 75ms;
    transform: translate3d(0, 10px, 0) rotate(-135deg)
}

.hamburger--elastic-r.is-active .hamburger-inner:before {
    transition-delay: 0s;
    opacity: 0
}

.hamburger--elastic-r.is-active .hamburger-inner:after {
    transition-delay: 75ms;
    transform: translate3d(0, -20px, 0) rotate(270deg)
}

.hamburger--emphatic {
    overflow: hidden
}

.hamburger--emphatic .hamburger-inner {
    transition: background-color .125s ease-in .175s
}

.hamburger--emphatic .hamburger-inner:before {
    left: 0;
    transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, left .125s ease-in .175s
}

.hamburger--emphatic .hamburger-inner:after {
    top: 10px;
    right: 0;
    transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, right .125s ease-in .175s
}

.hamburger--emphatic.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent
}

.hamburger--emphatic.is-active .hamburger-inner:before {
    top: -80px;
    left: -80px;
    transition: left .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
    transform: translate3d(80px, 80px, 0) rotate(45deg)
}

.hamburger--emphatic.is-active .hamburger-inner:after {
    top: -80px;
    right: -80px;
    transition: right .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
    transform: translate3d(-80px, 80px, 0) rotate(-45deg)
}

.hamburger--emphatic-r {
    overflow: hidden
}

.hamburger--emphatic-r .hamburger-inner {
    transition: background-color .125s ease-in .175s
}

.hamburger--emphatic-r .hamburger-inner:before {
    left: 0;
    transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, left .125s ease-in .175s
}

.hamburger--emphatic-r .hamburger-inner:after {
    top: 10px;
    right: 0;
    transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, right .125s ease-in .175s
}

.hamburger--emphatic-r.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent
}

.hamburger--emphatic-r.is-active .hamburger-inner:before {
    top: 80px;
    left: -80px;
    transition: left .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
    transform: translate3d(80px, -80px, 0) rotate(-45deg)
}

.hamburger--emphatic-r.is-active .hamburger-inner:after {
    top: 80px;
    right: -80px;
    transition: right .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
    transform: translate3d(-80px, -80px, 0) rotate(45deg)
}

.hamburger--minus .hamburger-inner:after,
.hamburger--minus .hamburger-inner:before {
    transition: bottom .08s ease-out 0s, top .08s ease-out 0s, opacity 0s linear
}

.hamburger--minus.is-active .hamburger-inner:after,
.hamburger--minus.is-active .hamburger-inner:before {
    transition: bottom .08s ease-out, top .08s ease-out, opacity 0s linear .08s;
    opacity: 0
}

.hamburger--minus.is-active .hamburger-inner:before {
    top: 0
}

.hamburger--minus.is-active .hamburger-inner:after {
    bottom: 0
}

.hamburger--slider .hamburger-inner {
    top: 2px
}

.hamburger--slider .hamburger-inner:before {
    top: 10px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform, opacity
}

.hamburger--slider .hamburger-inner:after {
    top: 20px
}

.hamburger--slider.is-active .hamburger-inner {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--slider.is-active .hamburger-inner:before {
    transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
    opacity: 0
}

.hamburger--slider.is-active .hamburger-inner:after {
    transform: translate3d(0, -20px, 0) rotate(-90deg)
}

.hamburger--slider-r .hamburger-inner {
    top: 2px
}

.hamburger--slider-r .hamburger-inner:before {
    top: 10px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform, opacity
}

.hamburger--slider-r .hamburger-inner:after {
    top: 20px
}

.hamburger--slider-r.is-active .hamburger-inner {
    transform: translate3d(0, 10px, 0) rotate(-45deg)
}

.hamburger--slider-r.is-active .hamburger-inner:before {
    transform: rotate(45deg) translate3d(5.71429px, -6px, 0);
    opacity: 0
}

.hamburger--slider-r.is-active .hamburger-inner:after {
    transform: translate3d(0, -20px, 0) rotate(90deg)
}

.hamburger--spin .hamburger-inner {
    transition-timing-function: cubic-bezier(.55, .055, .675, .19);
    transition-duration: .22s
}

.hamburger--spin .hamburger-inner:before {
    transition: top .1s ease-in .25s, opacity .1s ease-in
}

.hamburger--spin .hamburger-inner:after {
    transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spin.is-active .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transform: rotate(225deg)
}

.hamburger--spin.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s ease-out, opacity .1s ease-out .12s;
    opacity: 0
}

.hamburger--spin.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
    transform: rotate(-90deg)
}

.hamburger--spin-r .hamburger-inner {
    transition-timing-function: cubic-bezier(.55, .055, .675, .19);
    transition-duration: .22s
}

.hamburger--spin-r .hamburger-inner:before {
    transition: top .1s ease-in .25s, opacity .1s ease-in
}

.hamburger--spin-r .hamburger-inner:after {
    transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spin-r.is-active .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transform: rotate(-225deg)
}

.hamburger--spin-r.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s ease-out, opacity .1s ease-out .12s;
    opacity: 0
}

.hamburger--spin-r.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
    transform: rotate(90deg)
}

.hamburger--spring .hamburger-inner {
    top: 2px;
    transition: background-color 0s linear .13s
}

.hamburger--spring .hamburger-inner:before {
    top: 10px;
    transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spring .hamburger-inner:after {
    top: 20px;
    transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spring.is-active .hamburger-inner {
    transition-delay: .22s;
    background-color: transparent
}

.hamburger--spring.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--spring.is-active .hamburger-inner:after {
    top: 0;
    transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
    transform: translate3d(0, 10px, 0) rotate(-45deg)
}

.hamburger--spring-r .hamburger-inner {
    top: auto;
    bottom: 0;
    transition-delay: 0s;
    transition-timing-function: cubic-bezier(.55, .055, .675, .19);
    transition-duration: .13s
}

.hamburger--spring-r .hamburger-inner:after {
    top: -20px;
    transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity 0s linear
}

.hamburger--spring-r .hamburger-inner:before {
    transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spring-r.is-active .hamburger-inner {
    transition-delay: .22s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--spring-r.is-active .hamburger-inner:after {
    top: 0;
    transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity 0s linear .22s;
    opacity: 0
}

.hamburger--spring-r.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
    transform: rotate(90deg)
}

.hamburger--stand .hamburger-inner {
    transition: transform 75ms cubic-bezier(.55, .055, .675, .19) .15s, background-color 0s linear 75ms
}

.hamburger--stand .hamburger-inner:before {
    transition: top 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s
}

.hamburger--stand .hamburger-inner:after {
    transition: bottom 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s
}

.hamburger--stand.is-active .hamburger-inner {
    transition: transform 75ms cubic-bezier(.215, .61, .355, 1) 0s, background-color 0s linear .15s;
    transform: rotate(90deg);
    background-color: transparent
}

.hamburger--stand.is-active .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
    transform: rotate(-45deg)
}

.hamburger--stand.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
    transform: rotate(45deg)
}

.hamburger--stand-r .hamburger-inner {
    transition: transform 75ms cubic-bezier(.55, .055, .675, .19) .15s, background-color 0s linear 75ms
}

.hamburger--stand-r .hamburger-inner:before {
    transition: top 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s
}

.hamburger--stand-r .hamburger-inner:after {
    transition: bottom 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s
}

.hamburger--stand-r.is-active .hamburger-inner {
    transition: transform 75ms cubic-bezier(.215, .61, .355, 1) 0s, background-color 0s linear .15s;
    transform: rotate(-90deg);
    background-color: transparent
}

.hamburger--stand-r.is-active .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
    transform: rotate(-45deg)
}

.hamburger--stand-r.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
    transform: rotate(45deg)
}

.hamburger--squeeze .hamburger-inner {
    transition-timing-function: cubic-bezier(.55, .055, .675, .19);
    transition-duration: 75ms
}

.hamburger--squeeze .hamburger-inner:before {
    transition: top 75ms ease .12s, opacity 75ms ease
}

.hamburger--squeeze .hamburger-inner:after {
    transition: bottom 75ms ease .12s, transform 75ms cubic-bezier(.55, .055, .675, .19)
}

.is-active > .hamburger--squeeze .hamburger-inner,
.hamburger--squeeze.is-active .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transform: rotate(45deg)
}

.is-active > .hamburger--squeeze .hamburger-inner:before,
.hamburger--squeeze.is-active .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease, opacity 75ms ease .12s;
    opacity: 0
}

.is-active > .hamburger--squeeze .hamburger-inner:after,
.hamburger--squeeze.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease, transform 75ms cubic-bezier(.215, .61, .355, 1) .12s;
    transform: rotate(-90deg)
}

.hamburger--vortex .hamburger-inner {
    transition-timing-function: cubic-bezier(.19, 1, .22, 1);
    transition-duration: .2s
}

.hamburger--vortex .hamburger-inner:after,
.hamburger--vortex .hamburger-inner:before {
    transition-delay: .1s;
    transition-timing-function: linear;
    transition-duration: 0s
}

.hamburger--vortex .hamburger-inner:before {
    transition-property: top, opacity
}

.hamburger--vortex .hamburger-inner:after {
    transition-property: bottom, transform
}

.hamburger--vortex.is-active .hamburger-inner {
    transition-timing-function: cubic-bezier(.19, 1, .22, 1);
    transform: rotate(765deg)
}

.hamburger--vortex.is-active .hamburger-inner:after,
.hamburger--vortex.is-active .hamburger-inner:before {
    transition-delay: 0s
}

.hamburger--vortex.is-active .hamburger-inner:before {
    top: 0;
    opacity: 0
}

.hamburger--vortex.is-active .hamburger-inner:after {
    bottom: 0;
    transform: rotate(90deg)
}

.hamburger--vortex-r .hamburger-inner {
    transition-timing-function: cubic-bezier(.19, 1, .22, 1);
    transition-duration: .2s
}

.hamburger--vortex-r .hamburger-inner:after,
.hamburger--vortex-r .hamburger-inner:before {
    transition-delay: .1s;
    transition-timing-function: linear;
    transition-duration: 0s
}

.hamburger--vortex-r .hamburger-inner:before {
    transition-property: top, opacity
}

.hamburger--vortex-r .hamburger-inner:after {
    transition-property: bottom, transform
}

.hamburger--vortex-r.is-active .hamburger-inner {
    transition-timing-function: cubic-bezier(.19, 1, .22, 1);
    transform: rotate(-765deg)
}

.hamburger--vortex-r.is-active .hamburger-inner:after,
.hamburger--vortex-r.is-active .hamburger-inner:before {
    transition-delay: 0s
}

.hamburger--vortex-r.is-active .hamburger-inner:before {
    top: 0;
    opacity: 0
}

.hamburger--vortex-r.is-active .hamburger-inner:after {
    bottom: 0;
    transform: rotate(-90deg)
}

/* @import '~@fortawesome/fontawesome-pro/css/fontawesome.css'; */

/* @import '~@fortawesome/fontawesome-pro/css/light.css'; */

/*
- FONTS
- SIZES
- COLORS
- SPACING
*/

/* FONTS */

@font-face {
    font-family: 'Outfit';
    src: url('/dist/assets/Outfit-VariableFont-5OM8xsXA.woff2') format("woff2 supports variations"), url('/dist/assets/Outfit-VariableFont-5OM8xsXA.woff2') format('woff2-variations');
    font-weight: 100 900;
    font-optical-sizing: auto;
    /* font-variation-settings: "wght" 375; */
    font-stretch: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Volkhov';
    src: url('/dist/assets/Volkhov-Regular-onDd1dre.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Volkhov';
    src: url('/dist/assets/Volkhov-Bold-GxNMXNVO.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Volkhov';
    src: url('/dist/assets/Volkhov-Italic-DALO9j82.woff2') format('woff2');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Volkhov';
    src: url('/dist/assets/Volkhov-BoldItalic-le1wWja_.woff2') format('woff2');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

:root {
    --mainFont: 'Outfit', Helvetica, Arial, sans-serif;
    --altFont: 'Volkhov', Georgia, Times, serif;
}

.mainFont {
    font-family: var(--mainFont);
}

.altFont {
    font-family: var(--altFont);
}

:root {
    --fontFamilyHero: var(--altFont);
    --fontSizeHero: var(--fontSizeH1);
    --lineHeightHero: var(--lineHeightH1);
    --fontWeightHero: var(--fontWeightH1);
    --letterSpacingHero: var(--letterSpacingH1);
    --fontStyleHero: var(--fontStyleH1);
    --textTransformHero: var(--textTransformH1);

    --fontFamilyH1: var(--altFont);
    --fontSizeH1: 70px;
    --lineHeightH1: 1.25;
    --fontWeightH1: 400;
    --letterSpacingH1: normal;
    --fontStyleH1: normal;
    --textTransformH1: none;

    --fontFamilyH2: var(--altFont);
    --fontSizeH2: 56px;
    --lineHeightH2: 1.25;
    --fontWeightH2: 400;
    --letterSpacingH2: normal;
    --fontStyleH2: normal;
    --textTransformH2: none;

    --fontFamilyH3: var(--altFont);
    --fontSizeH3: 46px;
    --lineHeightH3: 1.25;
    --fontWeightH3: 400;
    --letterSpacingH3: normal;
    --fontStyleH3: normal;
    --textTransformH3: none;

    --fontFamilyH4: var(--altFont);
    --fontSizeH4: 36px;
    --lineHeightH4: 1.25;
    --fontWeightH4: 400;
    --letterSpacingH4: normal;
    --fontStyleH4: normal;
    --textTransformH4: none;

    --fontFamilyH5: var(--altFont);
    --fontSizeH5: 30px;
    --lineHeightH5: 1.25;
    --fontWeightH5: 400;
    --letterSpacingH5: normal;
    --fontStyleH5: normal;
    --textTransformH5: none;

    --fontFamilyH6: var(--altFont);
    --fontSizeH6: 22px;
    --lineHeightH6: 1.25;
    --fontWeightH6: 400;
    --letterSpacingH6: normal;
    --fontStyleH6: normal;
    --textTransformH6: none;

    --fontFamilyBody: var(--mainFont);
    --fontSizeBody: 20px;
    --lineHeightBody: 1.5;
    --fontWeightBody: 300;
    --letterSpacingBody: normal;
    --fontStyleBody: normal;
    --textTransformBody: none;

    --fontFamilyBodySmall: var(--mainFont);
    --fontSizeBodySmall: 15px;
    --lineHeightBodySmall: 1.5;
    --fontWeightBodySmall: 300;
    --letterSpacingBodySmall: normal;
    --fontStyleBodySmall: normal;
    --textTransformBodySmall: none;

    --fontFamilyOverline: var(--mainFont);
    --fontSizeOverline: 15px;
    --lineHeightOverline: 1.5;
    --fontWeightOverline: 600;
    --letterSpacingOverline: 0.15em;
    --fontStyleOverline: normal;
    --textTransformOverline: uppercase;

    --fontFamilyButton: var(--altFont);
    --fontSizeButton: 14px;
    --lineHeightButton: 1.5;
    --fontWeightButton: 700;
    --letterSpacingButton: 0.08em;
    --fontStyleButton: normal;
    --textTransformButton: uppercase;

    --fontFamilyTestimonial: var(--altFont);
    --fontSizeTestimonial: 34px;
    --lineHeightTestimonial: 1.5;
    --fontWeightTestimonial: 400;
    --letterSpacingTestimonial: normal;
    --fontStyleTestimonial: normal;
    --textTransformTestimonial: normal;

    --fontFamilyLeadtext: var(--mainFont);
    --fontSizeLeadtext: 28px;
    --lineHeightLeadtext: 1.5;
    --fontWeightLeadtext: 300;
    --letterSpacingLeadtext: normal;
    --fontStyleLeadtext: normal;
    --textTransformLeadtext: normal;

    --fontFamilyNavigation: var(--altFont);
    --fontSizeNavigation: 28px;
    --lineHeightNavigation: 1.5;
    --fontWeightNavigation: 400;
    --letterSpacingNavigation: normal;
    --fontStyleNavigation: normal;
    --textTransformNavigation: none;

    --fontFamilyNavigationSmall: var(--altFont);
    --fontSizeNavigationSmall: 15px;
    --lineHeightNavigationSmall: 1.5;
    --fontWeightNavigationSmall: 400;
    --letterSpacingNavigationSmall: normal;
    --fontStyleNavigationSmall: normal;
    --textTransformNavigationSmall: none;

    --transition-property: all;
    --transition-duration: 200ms;
    --transition-timing-function: ease-in-out;
    --transition-delay: 0s;
    --transition: var(--transition-property) var(--transition-duration) var(--transition-timing-function) var(--transition-delay);
}

@media screen and (max-width: 1500px) {
    :root {
        --fontSizeH1: 60px;
        --fontSizeH2: 48px;
        --fontSizeH3: 40px;
        --fontSizeH4: 32px;
        --fontSizeH5: 26px;
        --fontSizeH6: 20px;
        --fontSizeBody: 19px;
        --fontSizeTestimonial: 32px;
        --fontSizeLeadtext: 25px;
        --fontSizeNavigation: 28px;
        --fontSizeNavigationSmall: 15px;
    }
}

@media screen and (max-width: 1200px) {
    :root {
        --fontSizeH1: 48px;
        --fontSizeH2: 40px;
        --fontSizeH3: 34px;
        --fontSizeH4: 26px;
        --fontSizeH5: 23px;
        --fontSizeH6: 19px;
        --fontSizeBody: 18px;
        --fontSizeBodySmall: 14px;
        --fontSizeButton: 14px;
        --fontSizeOverline: 14px;
        --fontSizeTestimonial: 28px;
        --fontSizeLeadtext: 23px;
        --fontSizeNavigation: 26px;
        --fontSizeNavigationSmall: 15px;
    }
}

@media screen and (max-width: 600px) {
    :root {
        --fontSizeH1: 32px;
        --fontSizeH2: 28px;
        --fontSizeH3: 25px;
        --fontSizeH4: 22px;
        --fontSizeH5: 19px;
        --fontSizeH6: 17px;
        --fontSizeBody: 18px;
        --fontSizeBodySmall: 13px;
        --fontSizeButton: 13px;
        --fontSizeOverline: 13px;
        --fontSizeTestimonial: 23px;
        --fontSizeLeadtext: 20px;
        --fontSizeNavigation: 23px;
        --fontSizeNavigationSmall: 14px;
    }
}

/* COLORS */

:root {
    --colorDark: #000000;
    --colorDarkRGB: 0, 0, 0;

    --colorDarkGray: #817F77;
    --colorDarkGrayRGB: 129, 127, 119;

    --colorDarkHover: #D3A69D;
    --colorDarkHoverRGB: 211, 166, 157;

    --colorHighlight: #D3A69D;
    --colorHighlightRGB: 211, 166, 157;

    --colorHighlightDark: #c38679;
    --colorHighlightDarkRGB: 195, 134, 121;

    --colorHighlightHover: #e3c5c0;
    --colorHighlightHoverRGB: 227, 197, 192;

    --colorMuted: #EBE8E1;
    --colorMutedRGB: 235, 232, 225;

    --colorMutedLight: #F2F0EC;
    --colorMutedLightRGB: 242, 240, 236;

    --colorMutedHover: #d3a69d;
    --colorMutedHoverRGB: 211, 166, 157;

    --colorReset: #ffffff;
    --colorResetRGB: 255, 255, 255;

    --formErrorColor: #ff8c00;

    --colorBodyBorder: var(--colorReset);
}

/* SPACING */

:root {
    --wrapperWidth: 1600px;
    --headerWrapperWidth: 100%;
    --wrapperSmallWidth: 1100px;

    --verticalPadding: 200px;
    --horizontalMargin: 100px;
    --layoutMargin: 60px;

    --headerHeight: 80px;
    --headerHeightSmall: 80px;
    --logoSpacing: calc(var(--headerHeight) + var(--layoutMargin));
    --logoSpacingSmall: 15px;
    --logoHeight: 150px;
    --logoHeightSmall: calc(var(--headerHeightSmall) - (var(--logoSpacingSmall) * 2));

    --mobileNavWidth: 100%;
    --bodyBorder: 0px;

    --svgStrokeWidth: 3px;
    --buttonMargin: .75em;

    --hamburgerWidth: 40px;
    --hamburgerHeight: 20px;
    --hamburgerLineHeight: 2px;
}

@media screen and (max-width: 1500px) {
    :root {
        --layoutMargin: 50px;
        --verticalPadding: 175px;

        --logoSpacingSmall: 12px;
        --logoHeight: 120px;
    }
}

@media screen and (max-width: 1200px) {
    :root {
        --horizontalMargin: 60px;
        --layoutMargin: 40px;
        --verticalPadding: 150px;
        --headerHeight: 70px;
        --headerHeightSmall: 70px;
        --logoHeight: 110px;
    }
}

/* @media screen and (max-width: 850px) {
    :root {
        --mobileNavWidth: 75%
    }
} */

@media screen and (max-width: 768px) {
    :root {
        --horizontalMargin: 45px;
        --layoutMargin: 30px;
        --verticalPadding: 125px;
        --hamburgerWidth: 40px;
        --hamburgerHeight: 19px;
    }
}

@media screen and (max-width: 600px) {
    :root {
        --horizontalMargin: 15px;
        --layoutMargin: 15px;
        --verticalPadding: 100px;
        --headerHeight: 60px;
        --headerHeightSmall: 60px;
        --logoSpacingSmall: 10px;
        --logoHeight: 70px;

        --hamburgerWidth: 35px;
        --hamburgerHeight: 16px;
    }
}

/*
- BASE
- THEMES
- HELPER / CLASS
- RESET
- IMG EFFECT
- GRID / FLEX
- VIDEO
*/

/*BASE*/

html {
    scroll-behavior: smooth;
    scroll-padding-top: var(--headerHeight);
    scrollbar-gutter: stable;
}

* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smooth: never;
    font-synthesis: none;
    font-variant: unset;
}

body {
    font-family: var(--fontFamilyBody);
    font-size: var(--fontSizeBody);
    line-height: var(--lineHeightBody);
    font-weight: var(--fontWeightBody);
    letter-spacing: var(--letterSpacingBody);
    font-style: var(--fontStyleBody);
    text-transform: var(--textTransformBody);

    color: var(--colorDark);
    background: var(--colorReset);
}

body.mobileNavigationOpen {
    overflow-y: hidden;
}

body.bookingOverlayOpen {
    overflow: hidden;
}

.bookingOverlay {
    position: fixed;
    inset: 0;
    z-index: 29;
    display: block;
    pointer-events: none;
    background: rgba(var(--colorDarkRGB), 0.45);
    opacity: 0;
    transition: var(--transition);
}

.bookingOverlay.is-active {
    pointer-events: auto;
    opacity: 1;
}

.bodyBorder {
    background: var(--colorMuted);
    padding: 0 var(--bodyBorder) var(--bodyBorder) var(--bodyBorder);
    overflow: hidden;
}

.mainContent {
    z-index: 2;
    overflow: hidden;
    background: var(--colorMuted);
}

article:focus {
    outline: none;
}

.wrapper {
    margin: 0 auto;
    width: var(--wrapperWidth);
    max-width: calc(100% - var(--horizontalMargin) * 2);
    overflow: hidden;
    z-index: 2;
}

.noWrapper {
    width: 100% !important;
    max-width: none !important;
}

.wrapperSmall {
    width: var(--wrapperSmallWidth);
}

/* Chrome, Safari, Edge, Opera */

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */

input[type=number] {
    -moz-appearance: textfield;
}

a {
    color: var(--colorHighlight);
    transition: var(--transition);
}

a:hover {
    color: var(--colorHighlightHover);
}

a[href=""] {
    pointer-events: none;
}

strong,
.strong {
    font-weight: bold;
}

sup {
    vertical-align: super;
    font-size: small;
}

sub {
    vertical-align: sub;
    font-size: small;
}

small,
.small {
    font-family: var(--fontFamilyBodySmall);
    font-size: var(--fontSizeBodySmall);
    line-height: var(--lineHeightBodySmall);
    font-weight: var(--fontWeightBodySmall);
    letter-spacing: var(--letterSpacingBodySmall);
    font-style: var(--fontStyleBodySmall);
    text-transform: var(--textTransformBodySmall);
}

ul,
ol,
p {
    margin: 1em 0;
}

.textAlignRight ul,
.textAlignRight ol {
    display: inline-block;
}

p:first-child {
    margin-top: 0;
}

p:last-child {
    margin-bottom: 0;
}

li {
    margin-left: 25px;
}

ul li::before {
    font: var(--fa-font-light);
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    position: absolute;
    left: -25px;
    top: 0;
    line-height: inherit;

    content: "\203a";
}

table {
    display: block;
    overflow-x: auto;
    width: 100%;
    text-align: left;
    margin: 1em 0;
}

table thead {
    font-weight: bold;
}

table tr td p {
    margin: 0;
}

table tr td,
table tr th {
    padding: .5em 0;
    border-bottom: 1px solid var(--colorMuted);
}

svg,
svg circle,
svg ellipse,
svg rect,
svg polygon,
svg path,
svg line,
svg g,
svg polyline {
    overflow: visible;
    stroke-width: var(--svgStrokeWidth);
}

/*HELPER / CLASS*/

.verticalPadding {
    padding: var(--verticalPadding) 0;
}

.verticalPaddingTop {
    padding-top: var(--verticalPadding);
}

.verticalPaddingBottom {
    padding-bottom: var(--verticalPadding);
}

.verticalPaddingHalf {
    padding: calc(var(--verticalPadding) / 2) 0;
}

.verticalPaddingTopHalf {
    padding-top: calc(var(--verticalPadding) / 2);
}

.verticalPaddingBottomHalf {
    padding-bottom: calc(var(--verticalPadding) / 2);
}

.verticalPaddingBottomBig {
    padding-bottom: calc(var(--verticalPadding) * 1.5);
}

.verticalPaddingTopBig {
    padding-top: calc(var(--verticalPadding) * 1.5);
}

.verticalPaddingNone {
    padding: 0;
}

.verticalPaddingTopNone {
    padding-top: 0;
}

.verticalPaddingBottomNone {
    padding-bottom: 0;
}

.textAlignLeft {
    text-align: left;
}

.textAlignCenter {
    text-align: center;
}

.textAlignRight {
    text-align: right;
}

.floatLeft {
    float: left;
}

.floatRight {
    float: right;
}

.fontSizeNavigation {
    font-family: var(--fontFamilyNavigation);
    font-size: var(--fontSizeNavigation);
    line-height: var(--lineHeightNavigation);
    font-weight: var(--fontWeightNavigation);
    letter-spacing: var(--letterSpacingNavigation);
    font-style: var(--fontStyleNavigation);
    text-transform: var(--textTransformNavigation);
}

.fontSizeNavigationSmall {
    font-family: var(--fontFamilyNavigationSmall);
    font-size: var(--fontSizeNavigationSmall);
    line-height: var(--lineHeightNavigationSmall);
    font-weight: var(--fontWeightNavigationSmall);
    letter-spacing: var(--letterSpacingNavigationSmall);
    font-style: var(--fontStyleNavigationSmall);
    text-transform: var(--textTransformNavigationSmall);
}

:root,
.fontSizeBody {
    font-family: var(--fontFamilyBody);
    font-size: var(--fontSizeBody);
    line-height: var(--lineHeightBody);
    font-weight: var(--fontWeightBody);
    letter-spacing: var(--letterSpacingBody);
    font-style: var(--fontStyleBody);
    text-transform: var(--textTransformBody);
}

.fontSizeBodySmall {
    font-family: var(--fontFamilyBodySmall);
    font-size: var(--fontSizeBodySmall);
    line-height: var(--lineHeightBodySmall);
    font-weight: var(--fontWeightBodySmall);
    letter-spacing: var(--letterSpacingBodySmall);
    font-style: var(--fontStyleBodySmall);
    text-transform: var(--textTransformBodySmall);
}

.fontSizeOverline {
    font-family: var(--fontFamilyOverline);
    font-size: var(--fontSizeOverline);
    line-height: var(--lineHeightOverline);
    font-weight: var(--fontWeightOverline);
    letter-spacing: var(--letterSpacingOverline);
    font-style: var(--fontStyleOverline);
    text-transform: var(--textTransformOverline);
}

.fontSizeLeadtext {
    font-family: var(--fontFamilyLeadtext);
    font-size: var(--fontSizeLeadtext);
    line-height: var(--lineHeightLeadtext);
    font-weight: var(--fontWeightLeadtext);
    letter-spacing: var(--letterSpacingLeadtext);
    font-style: var(--fontStyleLeadtext);
    text-transform: var(--textTransformLeadtext);
}

.fontSizeTestimonial {
    font-family: var(--fontFamilyTestimonial);
    font-size: var(--fontSizeTestimonial);
    line-height: var(--lineHeightTestimonial);
    font-weight: var(--fontWeightTestimonial);
    letter-spacing: var(--letterSpacingTestimonial);
    font-style: var(--fontStyleTestimonial);
    text-transform: var(--textTransformTestimonial);
}

.fontSizeHero {
    font-family: var(--fontFamilyHero);
    font-size: var(--fontSizeHero);
    line-height: var(--lineHeightHero);
    font-weight: var(--fontWeightHero);
    letter-spacing: var(--letterSpacingHero);
    font-style: var(--fontStyleHero);
    text-transform: var(--textTransformHero);
}

h1,
.fontSizeH1 {
    font-family: var(--fontFamilyH1);
    font-size: var(--fontSizeH1);
    line-height: var(--lineHeightH1);
    font-weight: var(--fontWeightH1);
    letter-spacing: var(--letterSpacingH1);
    font-style: var(--fontStyleH1);
    text-transform: var(--textTransformH1);
}

h2,
.fontSizeH2 {
    font-family: var(--fontFamilyH2);
    font-size: var(--fontSizeH2);
    line-height: var(--lineHeightH2);
    font-weight: var(--fontWeightH2);
    letter-spacing: var(--letterSpacingH2);
    font-style: var(--fontStyleH2);
    text-transform: var(--textTransformH2);
}

h3,
.fontSizeH3 {
    font-family: var(--fontFamilyH3);
    font-size: var(--fontSizeH3);
    line-height: var(--lineHeightH3);
    font-weight: var(--fontWeightH3);
    letter-spacing: var(--letterSpacingH3);
    font-style: var(--fontStyleH3);
    text-transform: var(--textTransformH3);
}

h4,
.fontSizeH4 {
    font-family: var(--fontFamilyH4);
    font-size: var(--fontSizeH4);
    line-height: var(--lineHeightH4);
    font-weight: var(--fontWeightH4);
    letter-spacing: var(--letterSpacingH4);
    font-style: var(--fontStyleH4);
    text-transform: var(--textTransformH4);
}

h5,
.fontSizeH5 {
    font-family: var(--fontFamilyH5);
    font-size: var(--fontSizeH5);
    line-height: var(--lineHeightH5);
    font-weight: var(--fontWeightH5);
    letter-spacing: var(--letterSpacingH5);
    font-style: var(--fontStyleH5);
    text-transform: var(--textTransformH5);
}

h6,
.fontSizeH6 {
    font-family: var(--fontFamilyH6);
    font-size: var(--fontSizeH6);
    line-height: var(--lineHeightH6);
    font-weight: var(--fontWeightH6);
    letter-spacing: var(--letterSpacingH6);
    font-style: var(--fontStyleH6);
    text-transform: var(--textTransformH6);
}

/*IMG EFFECT*/

.imgEffect {
    display: block;
    line-height: 0;
    overflow: hidden;
}

.imgEffectTrigger {
    display: block;
    transition: var(--transition);
}

.imgEffectOverlay {
    width: 50%;
    aspect-ratio: 1/1;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -40%);
    pointer-events: none;
    cursor: pointer;
    transition: var(--transition);
    backdrop-filter: blur(16px);
    border-radius: 100%;
    opacity: 0;
}

.imgEffectTrigger:hover .imgEffectOverlay,
.imgEffect:hover .imgEffectOverlay {
    opacity: 1;
    transform: translate(-50%, -50%);
}

.imgEffectOverlayContent {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    gap: 10px;
    cursor: pointer;
}

.imgEffectOverlayContent span.fontSizeButton {
    width: 100%;
    text-align: center;
}

.imgEffect video,
.imgEffect img,
.imgEffect picture {
    transition: var(--transition);
}

.imgEffectTrigger:hover .imgEffect video,
.imgEffectTrigger:hover .imgEffect img,
.imgEffectTrigger:hover .imgEffect picture {
    transform: scale(1.05);
}

a .imgEffect:hover video,
a .imgEffect:hover img,
a .imgEffect:hover picture,
a.imgEffect:hover video,
a.imgEffect:hover img,
a.imgEffect:hover picture {
    transform: scale(1.05);
}

.imgEffect[data-pswp] {
    width: 100%;
    height: 100%;
}

/* GRID */

.gridBlocks {
    display: grid;
    width: 100%;
    grid-gap: var(--layoutMargin);
}

.textAlignCenter .gridBlocks {
    display: inline-grid;
    justify-items: center;
}

.gridBlocks-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.gridBlocks-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gridBlocks-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gridBlocks-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.gridBlocks-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.gridBlocks.mosaic > div:nth-of-type(1) {
    grid-area: col-1;
}

.gridBlocks.mosaic > div:nth-of-type(2) {
    grid-area: col-2;
}

.gridBlocks.mosaic > div:nth-of-type(3) {
    grid-area: col-3;
}

.gridBlocks.mosaic > div:nth-of-type(4) {
    grid-area: col-4;
}

.gridBlocks.mosaic {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-template-areas:
        "col-1 col-1 col-2"
        "col-3 col-4 col-4";
}

.gridBlocks.mosaic.mirrored {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-template-areas:
        "col-1 col-2 col-2"
        "col-3 col-3 col-4";
}

@media screen and (max-width: 1200px) {

    .gridBlocks-4,
    .gridBlocks-5,
    .gridBlocks-6 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media screen and (max-width: 1024px) {

    .gridBlocks-3,
    .gridBlocks-4,
    .gridBlocks-5,
    .gridBlocks-6 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 768px) {
    .gridBlocks.mosaic {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
        grid-template-areas:
            "col-1 col-2"
            "col-3 col-4";
    }

    .gridBlocks.mosaic.mirrored {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
        grid-template-areas:
            "col-1 col-2"
            "col-3 col-4";
    }
}

@media screen and (max-width: 600px) {

    .gridBlocks-2,
    .gridBlocks-3,
    .gridBlocks-4,
    .gridBlocks-5,
    .gridBlocks-6 {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .gridBlocks.mosaic,
    .gridBlocks.mosaic.mirrored {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-template-areas:
            "col-1"
            "col-2"
            "col-3"
            "col-4";
    }
}

/* FLEX */

.flexBlocks {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(var(--horizontalMargin) * -1);
    margin-bottom: calc(var(--horizontalMargin) * -1);
}

.flexBlocks > div {
    margin-left: var(--horizontalMargin);
    margin-bottom: var(--horizontalMargin);
}

:root {
    --numBoxes: 3;
}

.flexBlocks-6 {
    --numBoxes: 6;
}

.flexBlocks-5 {
    --numBoxes: 5;
}

.flexBlocks-4 {
    --numBoxes: 4;
}

.flexBlocks-3 {
    --numBoxes: 3;
}

.flexBlocks-2 {
    --numBoxes: 2;
}

@media screen and (max-width: 1200px) {

    .flexBlocks-6,
    .flexBlocks-5 {
        --numBoxes: 4;
    }
}

@media screen and (max-width: 1024px) {

    .flexBlocks-6,
    .flexBlocks-5,
    .flexBlocks-4 {
        --numBoxes: 3;
    }
}

@media screen and (max-width: 768px) {

    :root,
    .flexBlocks-6,
    .flexBlocks-5,
    .flexBlocks-4,
    .flexBlocks-3,
    .flexBlocks-2 {
        --numBoxes: 1;
    }
}

.flexBlocks > div {
    width: calc(((100% / var(--numBoxes)) - var(--horizontalMargin) - 1px));
}

/*VIDEO*/

.imgageVdieosWrapper,
.imageVideo {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.imgageVdieosWrapper .videoController {
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

a .imgageVdieosWrapper .videoController {
    display: none !important;
}

.imgageVdieosWrapper .videoController svg {
    max-width: 175px;
    aspect-ratio: 1/1;
    width: 25%;
    height: 25%;
}

.imgageVdieosWrapper .videoController.is-playing {
    display: none;
}

/* CURSOR */

.cursorGallery,
.imgEffectTrigger:has(.cursorGallery) {
    cursor: none !important;
}

.cursor {
    opacity: 1;
    position: fixed;
    top: 0;
    left: 0;
    height: auto;
    width: 100px;
    aspect-ratio: 1/1;
    z-index: 9999;
    pointer-events: none;
    transform: translate(-50%, -50%) scale(0);
    transform-origin: center;
    will-change: transform;
    transition: transform .45s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes stretch {
    0% {
        transform: scale(1.0);
    }

    50% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1.0);
    }
}

.cursorContainer {
    position: relative;
    width: 100px;
    height: 100px;
    transform-origin: center;
    animation-name: stretch;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-direction: alternate;
    animation-iteration-count: infinite;
    animation-play-state: running;
}

.blurBg {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    will-change: backdrop-filter, transform;
    transform: translateZ(0);
    backface-visibility: hidden;
    background: rgba(255, 255, 255, 0.1);

    z-index: 0;
}

.cursor svg {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
}

.cursorGallery::after,
.cursorGallery::before {
    content: unset;
}

body:has(.cursorGallery:hover) .cursor,
body:has(.imgEffectTrigger:hover .cursorGallery) .cursor {
    width: 100px;
    transform: translate(-50%, -50%) scale(1);
}

@media only screen and (max-width: 768px) {
    .cursor {
        display: none;
    }
}

/*
.pageTransitionOverlay{
    height: 250vw;
    width: 250vw;
    border-radius: 50%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    pointer-events: none !important;
    background-color: var(--colorHighlight);
    transform: translate(-50%, -50%) scale(0);
    transform-origin: center;
    will-change: transform;
}

@media only screen and (max-width: 768px) {
    .pageTransitionOverlay{
        height: 300vw;
        width: 300vw;
    }
}

@media only screen and (max-width: 600px) {
    .pageTransitionOverlay{
        height: 400vw;
        width: 400vw;
    }
} */

body > .rr__button {
    display: none !important;
}

/*THEMES*/

.reset {
    background: var(--colorReset);
    color: var(--colorDark);
}

.reset a {
    color: var(--colorHighlight);
}

.reset a:hover {
    color: var(--colorHighlightHover);
}

.reset table tr td,
.reset table tr th {
    border-color: var(--colorMuted);
}

.muted {
    background: var(--colorMuted);
    color: var(--colorDark);
}

.muted.mutedLight {
    background: var(--colorMutedLight);
}

.muted a {
    color: var(--colorHighlight);
}

.muted a:hover {
    color: var(--colorHighlightHover);
}

.muted table tr td,
.muted table tr th {
    border-color: var(--colorReset);
}

.highlight {
    background: var(--colorHighlight);
    color: var(--colorReset);
}

.highlight a {
    color: var(--colorDark);
}

.highlight a:hover {
    color: var(--colorDarkHover);
}

.highlight table tr td,
.highlight table tr th {
    border-color: var(--colorDark);
}

.dark {
    background: var(--colorDark);
    color: var(--colorReset);
}

.dark.darkGradient::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    background: linear-gradient(
        to top right,
        rgba(var(--colorHighlightRGB), 0.6) 0%,
        rgba(var(--colorHighlightRGB), 0.05) 80%,
        rgba(var(--colorHighlightRGB), 0) 100%
        );
}

.dark a {
    color: var(--colorHighlight);
}

.dark a:hover {
    color: var(--colorHighlightHover);
}

.dark table tr td,
.dark table tr th {
    border-color: var(--colorDarkHover);
}

.dark h1,
.dark h2,
.dark h3,
.dark h4,
.dark h5,
.dark h6 {
    color: var(--colorHighlight);
}

button{
    all: unset;
}

.button,
.button > span,
.fontSizeButton {
    font-family: var(--fontFamilyButton);
    font-size: var(--fontSizeButton);
    line-height: var(--lineHeightButton);
    font-weight: var(--fontWeightButton);
    letter-spacing: var(--letterSpacingButton);
    font-style: var(--fontStyleButton);
    text-transform: var(--textTransformButton);
    transition: var(--transition);
}

.button,
a.button {
    display: flex;
    width: max-content;
    gap: 8px;
    overflow: hidden;
}

.button:hover span:last-child,
a.button:hover span:last-child,
.button span:last-child,
a.button span:last-child {
    display: flex;
    color: var(--colorDark);
    justify-content: center;
    align-items: center;
}

.dark .button span:last-child,
.dark a.button span:last-child {
    color: var(--colorHighlight);
}

.button span:last-child,
a.button span:last-child {
    flex-shrink: 0;
}

.button span:first-child,
a.button span:first-child {
    width: 15px;
    color: var(--colorHighlight);
    display: flex;
    justify-content: center;
    align-items: center;
}

.button:hover span:last-child,
a.button:hover span:last-child{
    transform-origin: left;
}

.button:hover span:first-child,
a.button:hover span:first-child {
    width: 35px;
}

.button svg,
a.button svg {
    height: 1em;
    width: auto;
    position: absolute;
    right: 0;
}

.button svg path,
a.button svg path {
    stroke-width: 1px;
    stroke: currentColor;
}

.highlight .button span:first-child,
.highlight a.button span:first-child {
    color: var(--colorDark);
}

.highlight .button span:last-child,
.highlight a.button span:last-child {
    color: var(--colorReset);
}

.dark .button span:first-child,
.dark a.button span:first-child {
    color: var(--colorHighlight);
}

.dark .button span:last-child,
.dark a.button span:last-child {
    color: var(--colorReset);
}

.buttonSquare,
a.buttonSquare {
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 15px 10px;
    width: 200px;
    max-width: min(400px, 100%);
    border-radius: 5px;
    text-align: center;
    cursor: pointer;
    transition: var(--transition);
    border: 1px solid var(--colorHighlight);
    color: var(--colorDark);
}

.buttonSquare,
.buttonSquare > span,
.fontSizebuttonSquare {
    font-family: var(--fontFamilyButton);
    font-size: var(--fontSizeButton);
    line-height: var(--lineHeightButton);
    font-weight: var(--fontWeightButton);
    letter-spacing: var(--letterSpacingButton);
    font-style: var(--fontStyleButton);
    text-transform: var(--textTransformButton);
}

.buttonSquare:hover,
a.buttonSquare:hover {
    background: var(--colorHighlight);
    color: var(--colorReset);
}

.highlight .buttonSquare,
.highlight a.buttonSquare {
    border-color: var(--colorReset);
    color: var(--colorReset);
}

.highlight .buttonSquare:hover,
.highlight a.buttonSquare:hover {
    background-color: var(--colorReset);
    color: var(--colorDark);
}

.dark .buttonSquare,
.dark a.buttonSquare {
    border-color: var(--colorHighlight);
    color: var(--colorReset);
}

.dark .buttonSquare:hover,
.dark a.buttonSquare:hover {
    background-color: var(--colorHighlight);
    color: var(--colorReset);
}

.blocks {
    background: var(--colorMuted);
}

article[data-wrapper-small-align="left"] .wrapper.wrapperSmall:has(> .wrapperInner) {
    width: var(--wrapperWidth);
}

article[data-wrapper-small-align="left"] .wrapper.wrapperSmall > .wrapperInner {
    max-width: 100%;
    width: var(--wrapperSmallWidth);
}

.blockTopline {
    margin-bottom: .5em;
}

.blockTitle:has(+ .blockText) {
    margin-bottom: .5rem;
}

.blockText > h2:not(:first-child),
.blockText > h3:not(:first-child),
.blockText > h4:not(:first-child),
.blockText > h5:not(:first-child),
.blockText > h6:not(:first-child) {
    margin-top: 1em;
}

.blockText i {
    font-style: italic;
}

.blockContent {
    margin-top: 2rem;
}

.blockLinks {
    display: flex;
    flex-wrap: wrap;
    gap: var(--buttonMargin);
    margin-top: var(--layoutMargin);
}

/*** blockBackground ***/

.blockBackground {
    z-index: 1;
    position: absolute;
    bottom: 0;
    right: 0;
    overflow: hidden;
}

/********/

.backgroundPattern svg {
    object-fit: cover;
    min-height: 100%;
    min-width: 100%;
    color: var(--colorMuted);
}

.backgroundPattern {
    height: 100%;
    width: 100%;
    overflow: hidden;
}

.muted .backgroundPattern svg {
    color: var(--colorMutedLight);
}

.highlight .backgroundPattern svg,
.dark .backgroundPattern svg {
    color: #000;
    opacity: .1;
}

/********/

.backgroundLogo {
    max-height: 400px;
    max-width: 700px;

    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    height: 90%;
    width: 90%;
}

.backgroundLogo svg {
    max-height: 100%;
    max-width: 100%;
    color: var(--colorMuted);
}

.muted .backgroundLogo svg {
    color: var(--colorMutedLight);
}

.highlight .backgroundLogo svg,
.dark .backgroundLogo svg {
    color: #000;
    opacity: .1;
}

article[data-block-type="blockContent"] .wrapperInner {
    width: var(--wrapperSmallWidth);
    margin-right: auto;
    max-width: 100%;
}

.accordionHeader {
    padding-top: 15px;
    padding-bottom: 15px;
    border-top: solid 1px;
    overflow: hidden;
}

.accordionEntries {
    text-align: left;
}

.accordionTrigger {
    height: 60px;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
    cursor: pointer;
}

div.accordionEntry.accordionHeightIcon .accordionTrigger {
    height: 90px;
}

.accordionTriggerUp {
    top: 0;
    transition: .5s;
}

.accordionTriggerDown {
    transform: rotateX(180deg) translateY(-20px);
    transition: .5s;
    top: -20px;
}

.accordionEntry.accordionHeightIcon .accordionHeader {
    padding-top: 30px;
    padding-bottom: 30px;
}

.accordionEntries .accordionEntry:last-child {
    border-bottom: solid 1px;
}

.accordionEntry .accordionSvgWrapper {
    position: absolute;
    height: 100%;
    width: 90px;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.accordionEntry .accordionSvgWrapper svg {
    height: 50px;
    width: 50px;
}

.accordionEntry h6 {
    padding-right: 50px;
}

.accordionEntry.accordionHeightIcon .accordionHeader h6 {
    margin-left: 90px;
}

.accordionTriggerIcon {
    height: 25px;
    width: 25px;
}

.accordionWrapper {
    padding-top: 1rem;
    padding-bottom: 95px;
    display: flex;
    flex-direction: row;
}

.accordionImgWrapper {
    max-width: 400px;
    width: 40%;
    aspect-ratio: 3/2;
    overflow: hidden;
    border-radius: 5px;
}

.accordionImgWrapper img {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%;
    aspect-ratio: 3/2;
}

.accordionWrapper.accordionWithImg .accordionText {
    width: calc(100% - 400px);
    padding-left: 60px;
}

@media only screen and (max-width: 1200px) {
    .accordionTriggerDown {
        height: 70px;
    }
}

@media only screen and (max-width: 1100px) {
    .accordionWrapper.accordionWithImg .accordionText {
        width: 60%;
    }
}

@media only screen and (max-width: 768px) {
    .accordionWrapper {
        flex-direction: column;
        padding-bottom: calc(var(--horizontalMargin)*3);
    }

    /* .accordionTriggerIcon {
        height: 30px;
        width: 30px;
    }

    .accordionTriggerDown {
        height: 30px;
        width: 30px;
    } */

    .accordionWrapper.accordionWithImg div.accordionText {
        width: 100%;
        padding-left: 0;
        padding-top: 15px;
    }

    .accordionImgWrapper {
        max-width: initial;
        width: 100%;
    }

    .accordionImgWrapper img {
        width: 100%;
    }
}

/**/

/**/

/**/

article.reset .accordionEntries {
    color: var(--colorDark);
}

article.reset .accordionHeader {
    border-color: var(--colorDark);
}

article.reset .accordionEntries .accordionEntry:last-child {
    border-color: var(--colorDark);
}

article.reset .accordionSvgWrapper svg {
    fill: var(--colorHighlight);
}

/**/

article.muted .accordionEntries {
    color: var(--colorDark);
}

article.muted .accordionHeader {
    border-color: var(--colorDark);
}

article.muted .accordionEntries .accordionEntry:last-child {
    border-color: var(--colorDark);
}

article.muted .accordionSvgWrapper svg {
    fill: var(--colorHighlight);
}

/**/

article.highlight .accordionEntries {
    color: var(--colorMuted);
}

article.highlight .accordionHeader {
    border-color: var(--colorMuted);
}

article.highlight .accordionEntries .accordionEntry:last-child {
    border-color: var(--colorMuted);
}

article.highlight .accordionSvgWrapper svg {
    fill: var(--colorMuted);
}

/**/

article.dark .accordionEntries {
    color: var(--colorMuted);
}

article.dark .accordionHeader {
    border-color: var(--colorMuted);
}

article.dark .accordionEntries .accordionEntry:last-child {
    border-color: var(--colorMuted);
}

article.dark .accordionSvgWrapper svg {
    fill: var(--colorHighlight);
}

.alertSmall {
    position: fixed;
    right: 0;
    bottom: 0;
    padding: var(--layoutMargin);
    max-width: 100%;
    z-index: 25;
    animation-name: bounce-small;
    animation-timing-function: ease;
    animation-delay: .5s;
    animation-fill-mode: forwards;
    animation-duration: 1s;
    transform: translateX(100%);
}

.alertSmall .alert {
    display: flex;
    width: 1000px;
    max-width: 100%;
    box-shadow: 0 0 10px -2px rgba(var(--colorDarkRGB), 0.4);
    max-height: calc(100svh - (var(--horizontalMargin) * 2) - var(--headerHeight));
    overflow: auto;
    transition: var(--transition);
}

@keyframes bounce-small {
  0% {
    transform: translateX(100%);
    padding: var(--layoutMargin) 0;
  }
  60% {
    transform: translateX(-10px);
  }
  80% { transform: translateX(5px); }
  100% { 
    transform: translateX(0); 
    padding: var(--layoutMargin); 
  }
}

.alertSmall .alert.highlight .alertLink i {
    transition: var(--transition);
}

.alertSmall .alert.highlight .alertClose,
.alertSmall .alert.highlight .alertLink,
.alertSmall .alert.highlight a {
    color: var(--colorReset);
    transition: var(--transition);
}

.alertSmall .alert.highlight .alertClose:hover,
.alertSmall .alert.highlight .alertLink:hover,
.alertSmall .alert.highlight a:hover {
    color: var(--colorDark);
}

.alertSmall .alert.dark .alertClose,
.alertSmall .alert.dark .alertLink,
.alertSmall .alert.dark a {
    color: var(--colorReset);
    transition: var(--transition);
}

.alertSmall .alert.dark .alertClose:hover,
.alertSmall .alert.dark .alertLink:hover,
.alertSmall .alert.dark a:hover {
    color: var(--colorHighlight);
}

.alertOverlay .alertOverlayWrapper {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: auto;
}

.alertSmall .alertLink {
    display: block;
    margin-top: 2em;
}

.alertSmall .alertImage {
    width: 300px;
    min-height: 300px;
    overflow: hidden;
    flex-shrink: 0;
}

.alertSmall .alertImage img,
.alertSmall .alertImage>* {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.alertSmall .alertContent {
    display: flex;
    align-items: center;
    padding: 1rem var(--layoutMargin);
}

/**/

.alertSmall .alertClose {
    position: absolute;
    top: 0;
    right: 0;
    padding: 15px 20px;
    font-size: 37px;
    cursor: pointer;
    z-index: 2;
    line-height: 30px;
    color: var(--colorDark);
    transition: var(--transition);
}

.alertSmall .alertClose:hover {
    color: var(--colorHighlight);
}

@media only screen and (max-width: 768px) {
    .alertSmall .alert {
        flex-direction: column;
        width: 350px;
    }

    .alertSmall .alertImage {
        width: 100%;
        min-height: unset;
        aspect-ratio: 16/9;
        pointer-events: none;
    }

    .alertSmall .alertContent {
        padding: 2rem 1.5rem;
    }

    .alertSmall .alertClose {
        background: var(--colorReset);
        color: var(--colorDark);
        height: 35px;
        width: 35px;
        font-size: 28px;
        border-radius: 50%;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        top: 10px;
        right: 10px;
        transition: var(--transition);
    }
}

@media only screen and (max-width: 500px) {
    .alertSmall .alertContent {
        padding: 1rem;
    }

    .alertSmall .alertClose {
        padding: 10px 15px;
    }
}

.alertMedium {
    position: fixed;
    bottom: calc(var(--layoutMargin)/2);
    left: 50%;
    transform: translateX(-50%);
    z-index: 27;
    margin: auto;
    padding-bottom: 30px;
}

@media only screen and (max-height: 980px) {
    body:has(.alertMedium):not(:has(.alertMedium[style="transition: opacity 0.3s; opacity: 0; display: none;"])) .logoLink {
        opacity: 0;
        pointer-events: none;
    }
}

.alertMedium .alert {
    display: flex;
    flex-direction: column;
    width: 500px;
    max-width: 100%;
    box-shadow: 0 0 10px -2px rgba(var(--colorDarkRGB), 0.4);
    --max-height: calc(100svh - (var(--layoutMargin) * 2) - var(--headerHeight));
    max-height: var(--max-height);
    min-height: min(500px, var(--max-height));
    transition: var(--transition);
    transform: translateY(120%);
    padding: 1rem;
    border-radius: 5px;
    animation-name: bounce-medium;
    animation-timing-function: ease;
    animation-delay: .5s;
    animation-fill-mode: forwards;
    animation-duration: 1s;
}

@keyframes bounce-medium {
    0% {
        transform: translateY(120%);
    }

    60% {
        transform: translateY(-10px);
    }

    80% {
        transform: translateY(5px);
    }

    100% {
        transform: translateY(0);
    }
}

/*
.alertMedium .alert.highlight .alertLink i {
    transition: var(--transition);
}

.alertMedium .alert.highlight .alertClose,
.alertMedium .alert.highlight .alertLink,
.alertMedium .alert.highlight a {
    color: var(--colorReset);
    transition: var(--transition);
}

.alertMedium .alert.highlight .alertClose:hover,
.alertMedium .alert.highlight .alertLink:hover,
.alertMedium .alert.highlight a:hover {
    color: var(--colorDark);
}

.alertMedium .alert.dark .alertClose,
.alertMedium .alert.dark .alertLink,
.alertMedium .alert.dark a {
    color: var(--colorReset);
    transition: var(--transition);
}

.alertMedium .alert.dark .alertClose:hover,
.alertMedium .alert.dark .alertLink:hover,
.alertMedium .alert.dark a:hover {
    color: var(--colorHighlight);
} */

.alertOverlay .alertOverlayWrapper {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: auto;
}

.alertMedium .alert .alertLink {
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
    background-color: var(--colorReset);
    color: var(--colorDark);
    border: none;
    width: 250px;
}

.alertMedium .alert .alertLink:hover {
    background-color: var(--colorDark);
    color: var(--colorReset);
}

.alertMedium .alertImage {
    overflow: hidden;
    flex-shrink: 0;
    width: 100%;
    min-height: unset;
    aspect-ratio: 21/9;
    pointer-events: none;
    border-radius: 5px;
}

.alertMedium .alertImage img,
.alertMedium .alertImage > * {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.alertMedium .alertContent {
    display: flex;
    padding: 1rem 0;
}

/**/

.alertMedium .alertClose svg {
    height: 1.5rem;
    width: 1.5rem;
}

.alertMedium .alertClose {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    width: 2rem;
    height: 2rem;
    aspect-ratio: 1/1;
    cursor: pointer;
    z-index: 2;
    line-height: 30px;
    color: var(--colorReset);
    background-color: var(--colorDark);
    border-radius: 50%;
    transition: var(--transition);
}

.alertMedium .alertClose:hover {
    background-color: var(--colorReset);
    color: var(--colorDark);
}

@media only screen and (max-width: 1200px) {
    .alertMedium .alert {
        width: 450px;
    }
}

@media only screen and (max-width: 768px) {
    .alertMedium .alert {
        width: 380px;
        padding: .5rem;
        --max-height: calc(100svh - (var(--layoutMargin) * 4) - var(--headerHeight));
    }

    .alertMedium .alertContent {
        padding: .75rem 0 1.25rem 0;
    }
}

@media only screen and (max-width: 500px) {
    .alertMedium .alert {
        width: 300px;
    }
}

.alertLarge.alertOverlay article {
    max-height: calc(100svh - (var(--horizontalMargin) * 2) - var(--headerHeight));
    max-width: calc(100% - var(--horizontalMargin) * 2);
    width: max-content;
    overflow: auto;
    transition: var(--transition);
}

.alertLarge .alertLink {
    display: block;
    width: max-content;
    margin-top: 2em;
}

.alertLarge article.highlight .alertLink i {
    transition: var(--transition);
}

.alertLarge .highlight .alertClose,
.alertLarge article.highlight .alertLink,
.alertLarge article.highlight a {
    color: var(--colorReset);
    transition: var(--transition);
}

.alertLarge .highlight .alertClose:hover,
.alertLarge article.highlight .alertLink:hover,
.alertLarge article.highlight a:hover {
    color: var(--colorDark);    
}

.dark .alertLarge .alertClose,
.alertLarge article.dark .alertLink,
.alertLarge article.dark a {
    color: var(--colorReset);
    transition: var(--transition);
}

.alertLarge .dark .alertClose:hover,
.alertLarge article.dark .alertLink:hover,
.alertLarge article.dark a:hover {
    color: var(--colorHighlight);
}

.alertLarge.alertOverlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background: rgba(var(--colorDarkRGB), 0.85);
}

.alertLarge.alertOverlay .alertOverlayWrapper {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: auto;
}

.alertLarge .alert {
    overflow: hidden;
    padding: 0;
    box-shadow: 0 0 10px -2px rgba(var(--colorDarkRGB), 0.4);
}

.alertLarge .alertWrapper {
    overflow: hidden;
    margin-top: var(--horizontalMargin);
    display: flex;
    text-align: left;
}

.alertLarge .alertWrapper.textAlignCenter {
    text-align: center;
}

.alertLarge .alertWrapper:first-child {
    margin-top: 0;
}

.alertLarge .alertImage,
.alertLarge .alertContent {
    max-width: 100%;
    width: 500px;
    aspect-ratio: 1/1;
}

.alertLarge .alert.noImage .alertContent {
    width: 750px;
    aspect-ratio: unset;
}

.alertLarge .alertImage {
    line-height: 0;
}

/**/

.alertLarge .alertImage a:first-child {
    display: block;
    width: 100%;
    height: 100%;
    background: #000;
}

.alertLarge .alertImage > picture > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.alertLarge .alertImage > a > picture > img {
    display: block;
    transition: 0.2s ease-out;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.alertLarge .alertContent {
    padding: calc(var(--horizontalMargin) / 2);
}

.alertLarge .alertContentWrapper {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

.alertLarge .alertTitle {
    margin-bottom: 0.3em;
}

.alertLarge .alertLinks {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.alertLarge .alertLinks > a {
    color: var(--colorDark);
}

.dark .alertLarge .alertLinks > a {
    color: var(--colorHighlightDark);
}

.alertLarge .alertWrapper.textAlignCenter .alertLinks {
    justify-content: center;
}

.alertLarge .alertLinks {
    margin-top: var(--buttonMargin);
}

.alertLarge .alertText p:first-child {
    margin-top: 1em;
}

.alertLarge .alertText p:last-child {
    margin-bottom: 0;
}

.alertLarge .alertLargeIcon > svg {
    width: 80px;
    height: 80px;
    color: var(--colorGreen);
}

.alertLarge .alertClose {
    position: absolute;
    top: 0;
    right: 0;
    padding: 15px 20px;
    font-size: 37px;
    cursor: pointer;
    z-index: 2;
    line-height: 30px;
    color: var(--colorDark);
}

.alertLarge .alertClose:hover {
    color: var(--colorHighlight);
}

.alertLarge .alertImageShadow {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(45deg, rgba(0, 0, 0, 0.1) 80%, rgb(0, 0, 0) 100%);
}

@media only screen and (max-width: 768px) {
    .alertLarge .alertClose {
        background: var(--colorReset);
        color: var(--colorDark);
        height: 35px;
        width: 35px;
        font-size: 28px;
        border-radius: 50%;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        top: 10px;
        right: 10px;
        transition: var(--transition);
    }

    .alertLarge .alertImageShadow {
        display: block;
    }

    .alertLarge .alertWrapper {
        display: block;
    }

    .alertLarge .alertImage,
    .alertLarge .alertContent {
        aspect-ratio: unset;
    }

    .alertLarge .alertContent {
        padding: var(--horizontalMargin);
    }

    .alertLarge .alertContentWrapper {
        top: auto;
        transform: none;
    }

    .alertLarge .alertLargeIcon > svg {
        width: 60px;
        height: 60px;
    }

    .alertLarge .highlight .alertClose {
        color: var(--colorDark);
        font-size: 30px;
        top: 5px;
        right: 5px;
    }

    .alertLarge .highlight .alertClose:hover {
        color: var(--colorDarkHover);
    }
}

@media only screen and (max-width: 500px) {
    .alertOverlay .wrapper {
        padding: calc(var(--horizontalMargin) / 2) 0;
    }


    .alertLarge .alertContent {
        padding: 1rem;
    }

    .alertLarge .alertLargeIcon > svg {
        width: 40px;
        height: 40px;
    }
}

/* General */

#content .contentWrapper {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

@media screen and (max-width: 768px) {
    #content .contentWrapper {
        gap: var(--buttonMargin);
        flex-direction: column;
    }
}

.contentText > h2,
.contentText > h3,
.contentText > h4,
.contentText > h5,
.contentText > h6 {
    margin-top: 2em;
}

.contentText i {
    font-style: italic;
}

/* Partial specific */

.contentLead i {
    font-style: italic;
}

.contentLinks {
    display: flex;
    flex-direction: column;
    gap: var(--buttonMargin);
    margin-top: var(--buttonMargin);
}

@media screen and (max-width: 768px) {
    .contentLinks {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: left;
        gap: var(--buttonMargin);
    }

    .contentLinks .button {
        margin-top: 0;
    }
}

.contentText tbody,
.contentText tr{
    display: block;
    width: 100%;
}

.contentText tr{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.contentText tr > :first-child{
    flex-grow: 1;
}

.prefooter {
    display: flex;
    justify-content: center;
    gap: 2rem;
    padding: var(--horizontalMargin);
}

.prefooter > div {
    display: flex;
    align-items: center;
    gap: 1rem;
    color: var(--colorHighlightHover);
    width: 50%;
}

.prefooter > div:first-child {
    justify-content: flex-end;
}

.prefooter > div > a {
    background-color: var(--colorHighlightHover);
    border-radius: 50%;
    width: 50px;
    height: 50px;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: var(--transition);
}

.prefooter > div > a svg {
    width: 100%;
    height: 100%;
    color: var(--colorDark);
    transition: var(--transition);
}

.prefooter > div > a:hover {
    background-color: var(--colorReset);
}

@media screen and (max-width: 1023px) {
    .prefooter h5 {
        font-size: var(--fontSizeH6);
    }
}

@media screen and (max-width: 760px) {

    .prefooter > div,
    .prefooter {
        flex-direction: column;
        align-items: center;
    }

    .prefooter > div > a {
        z-index: 10;
    }

    .prefooter > div:first-child > a {
        margin-right: 30px;
        transform: translateX(-50%);
    }

    .prefooter > div:last-child > a {
        margin-left: 30px;
        transform: translateX(50%);
    }

    .prefooter > div:last-child {
        margin-top: -85px;
    }
}

/****** Layout ******/

footer .footerLegalLinks a,
footer .footerContact a,
footer .footerLinks a,
footer .footerSocialLinks a {
    color: var(--colorReset);
    transition: var(--transition)
}

footer .footerContact a:hover,
footer .footerLinks a:hover,
footer .footerSocialLinks a:hover {
    color: var(--colorHighlight);
}

footer .footerLegalLinks .separator,
footer .footerLegalLinks a {
    opacity: .5;
    transition: var(--transition);
}

footer .footerLegalLinks a:hover {
    opacity: 1;
    color: var(--colorReset);
}

footer.dark .button span:last-child,
footer.dark a.button span:last-child {
    color: var(--colorReset);
}

footer {
    z-index: 2;
    position: relative;
}

footer .wrapper {
    overflow: visible;
}

footer .footerRow {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 20px;
    z-index: 5;
}

footer .footerRow:last-child {
    margin-bottom: unset;
    margin-top: 3rem;
}

footer .footerBottomLine {
    padding-bottom: var(--layoutMargin);
    border-bottom: 2px solid rgba(var(--colorResetRGB), 0.25);
    margin-bottom: var(--layoutMargin);
}

footer .separator {
    display: inline-block;
    margin: 0 10px;
    color: var(--colorReset);
}

footer .footerBodyBorderPusher {
    position: absolute;
    bottom: calc(var(--bodyBorder) * -1);
    width: 100%;
    height: var(--bodyBorder);
    background: var(--colorBodyBorder);
}

footer .footerAward {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 2rem;
    flex-grow: 1;
}

footer .footerAward a[href=""] {
    pointer-events: none;
}

footer .footerAward a {
    transition: var(--transition);
    filter: grayscale(1);
}

footer .footerAward a:hover {
    transform: scale(1.1);
    filter: grayscale(0);
}

footer .footerAwardContainer picture {
    display: block;
    width: max-content;
    height: max-content;
    object-fit: contain;
}

footer .footerAwardContainer {
    z-index: 10;
    width: 120px;
    height: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
}

footer .footerContactAndOpeningHours {
    display: flex;
    gap: 40px;
    width: 100%;
}

/****** Footer links ******/

footer .footerLinks a:not(:last-child) {
    margin-right: calc(var(--horizontalMargin));
}

/****** Social Links ******/

footer .footerSocialLinks a:not(:last-child) {
    margin-right: var(--horizontalMargin);
}

footer .footerSocialLinks {
    display: flex;
    width: max-content;
}

footer .footerSocialLinks svg {
    height: 2.5em;
}

/****** Go To Top ******/

footer .goToTop {
    cursor: pointer;
    transition: var(--transition);
    flex-direction: row-reverse;
    justify-content: space-between;
    display: flex;
}

footer .goToTop:hover {
    padding-bottom: 10px;
    margin-top: -10px;
}

/****** links ******/

footer .footerButtons {
    width: 250px;
}

footer .footerButtons > div {
    margin-top: 1rem;
    gap: .5rem;
    display: flex;
    flex-direction: column;
}

/*
footer .footerButtons a.button:not(:hover) > span:first-child{
    width: var(--fontSizeBody);
}

footer .footerButtons a.button > span {s
    font-family: var(--fontFamilyBody);
    font-size: var(--fontSizeBody);
    line-height: var(--lineHeightBody);
    font-weight: var(--fontWeightBody);
    letter-spacing: var(--letterSpacingBody);
    font-style: var(--fontStyleBody);
    text-transform: var(--textTransformBody);
} */

/****** footerAffiliates ******/

footer .footerAffiliates {
    width: 200px;
}

footer .footerAffiliates .affiliatesWrapper {
    margin-top: 1rem;
    gap: 1rem;
    display: flex;
    flex-direction: column;
}

footer .footerAffiliates .affiliatesWrapper a {
    opacity: .5;
    transition: var(--transition);
}

footer .footerAffiliates .affiliatesWrapper a:hover {
    opacity: 1;
}

/****** Responsive ******/

@media screen and (max-width: 1480px) {
    footer .footerContactAndOpeningHours {
        flex-wrap: wrap;
        row-gap: calc(var(--horizontalMargin)*1.5);
    }

    footer .footerContact {
        order: 1;
    }

    footer .footerAward {
        order: 2;
    }

    footer .footerButtons {
        order: 3;
        width: 300px;
    }

    footer .footerAffiliates {
        order: 4;
    }

    footer .footerRow:last-child {
        margin-top: calc(var(--horizontalMargin)*1.5);
    }

    footer .footerAward,
    footer .footerContact {
        width: calc(50% - 2rem);
        flex-grow: 1;
        justify-content: center;
    }
}

@media screen and (max-width: 760px) {
    footer .footerRow:last-child {
        margin-top: calc(var(--horizontalMargin)*3);
    }

    footer .footerAffiliates,
    footer .footerButtons,
    footer .footerAward,
    footer .footerContact {
        width: 100%;
        flex-grow: 1;
    }
}

@media screen and (max-width: 600px) {
    footer .footerContactAndOpeningHours {
        row-gap: calc(var(--horizontalMargin)*3);
    }
}

/*
@media screen and (max-width: 850px) {
    footer .footerRow span {
        display: block;
    }

    footer .footerContact,
    footer .footerOpeningHours {
        width: 100%;
    }

}

@media screen and (max-width: 760px) {
    footer .footerLinks a {
        display: block;
    }

    footer .footerLinks a:not(:first-child) {
        margin-top: calc(var(--horizontalMargin) / 4);
    }

    footer .footerSocialLinks {
        display: flex;
        width: max-content;
        align-content: center;
    }

}

@media screen and (max-width: 600px) {
    footer .footerRow {
        gap: calc(var(--layoutMargin)*3);
    }

    footer .footerBottomLine {
        padding-bottom: calc(var(--layoutMargin)*3);
        margin-bottom: calc(var(--layoutMargin)*3);
    }

    footer .footerRow .footerBottomLine {
        display: flex;
        align-items: center;
    }

    footer .footerAward {
        width: 100%;
        height: 100%;
        position: relative;
        right: 0;
        top: 50%;
        display: flex;
        justify-content: center;
        margin: 2em 0;
        gap: calc(var(--layoutMargin)*2);
    }

    footer .footerAwardContainer {
        width: 90px;
    }
} */

.mood,
.moodPusher {
    --moodHeight: 100svh;
}

.mood,
.moodPusher {
    --aspectRatio: 1/1;
}

.mood,
.moodPusher {
    --moodHeight: 100svh;
}

/*
.moodSmall.mood {
    --aspectRatio: 6/3;
}

@media screen and (max-width: 1024px) {

    .moodSmall.mood {
        --aspectRatio: 5/3;
    }
}

@media screen and (max-width: 768px) {

    .moodSmall.mood {
        --aspectRatio: 5/4;
    }
} */

.mood {
    z-index: 0;
    background: var(--colorDark);
    height: var(--moodHeight);
}

.mood::after {
    content: '';
    background: linear-gradient(180deg, rgba(0, 0, 0, .8) 0, rgba(0, 0, 0, 0) 33%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    pointer-events: none;
}

.mood:not(.moodSmall) {
    position: fixed;
    width: calc(100% - var(--bodyBorder) * 2);
    left: var(--bodyBorder);
}

.moodPusher {
    width: 100%;
    height: var(--moodHeight);
    z-index: 1;
    pointer-events: none;
}

/*
.moodSmall.mood {
    position: relative;
    width: 100%;
    height: var(--aspectRatio);
    line-height: 0;
    max-height: 75svh;
}

.moodSmall.mood > .splide {
    position: relative;
    aspect-ratio: var(--aspectRatio);
} */

@media screen and (orientation: portrait) and (max-width: 1024px) {

    .mood,
    .moodPusher {
        height: auto;
    }
}

@media screen and (orientation: portrait) and (max-width: 1024px) {

    /*     .mood.moodSmall{
        height: 0;
        line-height: 0;
        padding-bottom: calc(100svh / (var(--aspectRatio)));
    } */

    .mood:not(.moodSmall),
    .moodPusher:not(.moodSmall) {
        height: 0;
        line-height: 0;
        padding-bottom: calc(75svh / (var(--aspectRatio)));
    }

    .mood > .splide {
        position: absolute;
    }
}

.heroShadowBottomDark {
    background: linear-gradient(0, rgba(0, 0, 0, .7) 0, rgba(0, 0, 0, 0) 50%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    pointer-events: none;
}

.heroWrapper {
    pointer-events: none;
    z-index: 2;
    position: absolute;
    bottom: 0;
    height: 100%;
    width: 100%;
}

.heroWrapper > .wrapper {
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.heroTitleContainer {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0;
    /* bottom: calc(var(--layoutMargin) * 2); */
    bottom: var(--verticalPadding);
    z-index: 1;
    text-align: center;
    pointer-events: auto;
    color: var(--colorReset);
}

/* .mood.moodSmall .splide__pagination {
    display: none;
} */

.mood .splide__pagination__slider,
.mood .splide__pagination .splide__pagination__page::after {
    background-color: var(--colorReset);
}

.mood .splide__pagination {
    right: unset;
    position: absolute;
    bottom: 20px;
    left: 20px;
    width: 185px;
}

.mood .splide__progress {
    height: 1px;
    width: 185px;
    position: absolute;
    bottom: 20px;
    left: 20px;
    background-color: rgba(var(--colorResetRGB), .5);
    z-index: 10;
}

@media only screen and (max-width: 760px) {
    .mood .splide__progress {
        width: 100px;
    }

    .mood .splide__pagination {
        width: 100px;
    }
}

.mood .splide__bar {
    background: var(--colorReset);
    height: 4px;
    transition: width 400ms ease;
    width: 0;
    position: absolute;
    bottom: 0;
    left: 0;
}

.heroTitle {
    text-align: center;
    width: var(--wrapperSmallWidth);
    max-width: 100%;
    margin: 0 auto;
    filter: drop-shadow(.075em .075em 0px #000);
}

.heroTitle p {
    margin: 0;
}

.heroLinks {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 2em;
    gap: var(--buttonMargin);
}

.goToMain {
    pointer-events: auto;
    position: absolute;
    bottom: var(--layoutMargin);
    z-index: 1;
    cursor: pointer;
    transition: var(--transition);
    height: 230px;
}

.goToMain svg {
    height: 100%;
}

.goToMain:hover {
    transform: translateY(10px);
}

@media only screen and (max-width: 1500px) {
    .heroTitleContainer {
        bottom: calc(var(--verticalPadding) * .75);
    }

    .goToMain {
        height: 180px;
    }
}

@media only screen and (max-width: 1000px) {
    .goToMain {
        display: none;
    }
}

@media only screen and (max-width: 768px) {

    .heroTitleContainer {
        bottom: calc(var(--layoutMargin) * 2);
    }

    .mood.moodSmall .heroTitleContainer {
        bottom: 40px;
    }
}

@media only screen and (max-width: 600px) {
    .heroLinks {
        display: none;
    }


    .heroTitleContainer {
        bottom: 3rem;
    }
}

.moodHalf {
    z-index: 0;
    min-height: 100svh;
    height: max-content;
    width: calc(100% - var(--bodyBorder) * 2);
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.moodHalf .splide__pagination {
    display: none;
}

.moodHalf .splide__slide picture {
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.moodHalf .moodHalfShadow {
    position: absolute;
    top: 0;
    right: 0;
    opacity: .75;
    height: calc(var(--headerHeight) * 3);
    width: 100%;
    background: linear-gradient(to bottom,
            rgba(0, 0, 0, 0.7) 0%,
            rgba(0, 0, 0, 0.05) 90%,
            rgba(0, 0, 0, 0) 100%);
    z-index: 2;
}

.moodHalf .moodHalfWrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    z-index: 4;
}

.moodHalf .moodTextShadow {
    position: absolute;
    bottom: 0;
    right: 0;
    opacity: .75;
    height: 100%;
    width: 100%;
    background: linear-gradient(to top left,
            rgba(var(--colorHighlightRGB), 0.7) 0%,
            rgba(var(--colorHighlightRGB), 0.05) 90%,
            rgba(var(--colorHighlightRGB), 0) 100%);
    z-index: 2;
    transition: var(--transition);
}

.moodHalf .moodHalfWrapper > .wrapper {
    width: var(--contentWidth);
    max-width: 100%;
    height: 100%;
    margin-right: 0;
    margin-left: 0;
    padding-top: calc((var(--horizontalMargin)*1.5) + var(--headerHeightSmall));
    padding-right: calc(var(--horizontalMargin)*.75);
    padding-bottom: calc((var(--horizontalMargin)*1.5));
    padding-left: calc(var(--horizontalMargin)*.75);
    overflow: visible;
    z-index: 2;
}

.moodHalf .moodHalfLinks {
    display: flex;
    flex-direction: column;
    gap: var(--buttonMargin);
    margin-top: 1.5rem;
}

.moodHalf h1 span,
.moodHalf h2 span {
    display: block;
}

.moodHalf h1,
.moodHalf h2 {
    display: block;
    margin-bottom: 1.5rem;
    color: var(--colorHighlight);
}

.moodHalf .fontSizeOverline {
    display: block;
    color: var(--colorHighlight);
}

.moodHalf a.button {
    color: var(--colorHighlight);
}

.moodHalf .splide__pagination {
    z-index: 5;
}

.moodHalf .goToMain {
    pointer-events: auto;
    position: absolute;
    bottom: var(--layoutMargin);
    z-index: 1;
    border-bottom: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: rotate(45deg) translateX(5px) translateY(-5px);
    cursor: pointer;
    transition: var(--transition);
    width: 45px;
    height: 45px;
    opacity: .4;
}

.moodHalf .goToMain:hover {
    transform: rotate(45deg) translateX(15px) translateY(5px);
    opacity: 1;
}

@media only screen and (max-width: 1200px) {
    .moodHalf {
        height: max-content;
        max-height: 900px;
    }

    .moodHalf .goToMain {
        display: none;
    }
}

@media only screen and (max-width: 1024px) {
    .moodHalf {
        max-height: 800px;
    }

}

@media screen and (min-width: 1024px) {
    body:has(.moodHalf) .logoLink {
        left: 25%;
    }
}

@media only screen and (max-width: 1023px) {
    .moodHalf .moodHalfImage {
        aspect-ratio: 4/3;
    }

    .moodHalf.contentRightBig .moodHalfWrapper > .wrapper {
        max-width: unset;
    }

    .moodHalf h1,
    .moodHalf h2 {
        margin-bottom: 0;
    }

    .moodHalf.contentRightBig,
    .moodHalf {
        grid-template-columns: minmax(0, 1fr);
        max-height: unset;
        height: unset;
        min-height: unset;
    }

    .moodHalf .moodHalfWrapper > .wrapper {
        width: 100%;
        padding: var(--horizontalMargin);
        padding-bottom: calc(var(--verticalPadding) / 1.5);
        padding-top: calc(var(--verticalPadding) / 2);
    }
}

@media only screen and (max-width: 600px) {
    .moodHalf .splide__pagination {
        display: none;
    }

    .moodHalf .moodHalfImage {
        aspect-ratio: 1/1;
    }

    .moodHalf .moodHalfLinks {
        margin-top: calc(var(--layoutMargin) * 2);
        gap: 1.5rem;
        flex-direction: column;
    }
}

.imageGallery .imageGalleryImage > a {
    display: block;
    max-width: 100%;
    line-height: 0;
}

.imageGallery img {
    object-fit: cover;
    width: 100%;
}

.imageGallery:not(.gridBlocks-1) img {
    aspect-ratio: 4/3;
}

/* aspect-ratio fallback */

@supports not (aspect-ratio: auto) {
    .imageGallery:not(.gridBlocks-1) .imageGalleryImage {
        padding-top: calc(100% / (4/3));
        height: 0;
        position: relative;
        overflow: hidden;
    }

    .imageGallery:not(.gridBlocks-1) .imageGalleryImage > a > picture {
        position: relative;
        width: 100%;
        height: 100%;
        display: block;
    }

    .imageGallery:not(.gridBlocks-1) img,
    .imageGallery:not(.gridBlocks-1) .imageGalleryImage > a {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
    }
}

.imageGallery.gridBlocks-2 a,
.imageGallery.gridBlocks-2 img{
    height: 100%;
}

.imageGallery.gridBlocks-2 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.imageGallery.gridBlocks-2 > :nth-child(4n+3),
.imageGallery.gridBlocks-2 > :nth-child(4n+2) {
    grid-column: auto / span 4;
}

.imageGallery.gridBlocks-2 > :nth-child(4n+1),
.imageGallery.gridBlocks-2 > :nth-child(4n+4) {
    grid-column: auto / span 8;
}

.imageGallery .imageGalleryImage {
    border-radius: 5px;
    overflow: hidden;
}

.imageGallery .imageGalleryImage > a > picture {
    position: relative;
    width: 100%;
}

.imageGallery .imageGalleryButton {
    grid-column: auto / span 4;
    width: 100%;
    display: flex;
    justify-content: center;
}

/*  */

article[data-block-type="imageGallery"]:has(.gridGallery-2) .wrapperInner > .blockTitle,
article[data-block-type="imageGallery"]:has(.gridGallery-1) .wrapperInner > .blockTitle{
    display: none;
}

article[data-block-type="imageGallery"]:has(.gridGallery-1) .blockContent,
article[data-block-type="imageGallery"]:has(.gridGallery-2) .blockContent{
    margin-top: 0;
}

article[data-block-type="imageGallery"]:has(.gridGallery-2) .verticalPadding,
article[data-block-type="imageGallery"]:has(.gridGallery-1) .verticalPadding {
    padding-top: 0;
}

article[data-block-type="imageGallery"]:has(.gridGallery-2) .wrapper,
article[data-block-type="imageGallery"]:has(.gridGallery-1) .wrapper {
    overflow: visible;
}

article[data-block-type="imageGallery"]:has(.gridGallery-2) .wrapperInner,
article[data-block-type="imageGallery"]:has(.gridGallery-1) .wrapperInner {
    margin-bottom: calc(var(--verticalPadding) * -1);
    transform: translateY(calc(var(--verticalPadding) * -1));
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.imageGallery.gridGallery-1 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
}

.imageGallery.gridGallery-1 .imageGalleryImage {
    grid-column: span 3;
}

.imageGallery.gridGallery-2 .imageGalleryImage picture,
.imageGallery.gridGallery-2 .imageGalleryImage img,
.imageGallery.gridGallery-2 .imageGalleryImage > a,
.imageGallery.gridGallery-1 .imageGalleryImage picture,
.imageGallery.gridGallery-1 .imageGalleryImage img,
.imageGallery.gridGallery-1 .imageGalleryImage > a {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.imageGallery.gridGallery-1 .imageGalleryImage:first-child {
    grid-column: span 6;
    grid-row: span 2;
}

.imageGallery.gridGallery-1 .imageGalleryImage:nth-child(2) {
    grid-column: span 4;
    aspect-ratio: 4/3;
}

.imageGallery.gridGallery-1 .imageGalleryImage:nth-child(3) {
    grid-column: span 2;
}

.imageGallery.gridGallery-1 .imageGalleryImage:nth-child(4) {
    grid-column: span 6;
}

.imageGallery.gridGallery-1:nth-child(2n+1) .imageGalleryImage:first-child {
    grid-column: 7 / span 6;
    grid-row: span 2;
}

.imageGallery.gridGallery-1:nth-child(2n+1) .imageGalleryImage:nth-child(2) {
    grid-column: span 4;
    grid-row: 1;
}

.imageGallery.gridGallery-1:nth-child(2n+1) .imageGalleryImage:nth-child(3) {
    grid-column: 1 / span 2;
    grid-row: 1;
}

.imageGallery .imageGalleryImage.galleryTitle {
    height: 100%;
    width: 100%;
    padding: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: var(--colorDark);
    color: var(--colorReset);
}

.dark .imageGallery .imageGalleryImage.galleryTitle {
    background-color: var(--colorHighlight);
    color: var(--colorReset);
}

.dark.darkGradient .imageGallery .imageGalleryImage.galleryTitle h2{
    color: var(--colorReset);
}

.dark.darkGradient .imageGallery .imageGalleryImage.galleryTitle {
    background-color: var(--colorDark);
}

@media screen and (max-width: 1000px) {
    .imageGallery.gridGallery-1 .imageGalleryImage {
        grid-column: span 6;
    }
}

@media screen and (max-width: 760px) {
    .imageGallery.gridGallery-1 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
    }

    .imageGallery.gridGallery-1 .imageGalleryImage:nth-child(4),
    .imageGallery.gridGallery-1 .imageGalleryImage:nth-child(1),
    .imageGallery.gridGallery-1 .imageGalleryImage {
        grid-column: span 2;
        aspect-ratio: 4/3;
    }

    .imageGallery.gridGallery-1 .imageGalleryImage:nth-child(2) {
        grid-column: span 1;
        order: -2;
        aspect-ratio: 1/1;
    }

    .imageGallery.gridGallery-1 .imageGalleryImage:nth-child(3) {
        grid-column: span 1;
        order: -1;
        aspect-ratio: 1/1;
    }

    .imageGallery.gridGallery-1 .imageGalleryImage:nth-child(4) {
        aspect-ratio: 16/9;
    }
}

.imageGallery.gridGallery-2 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: minmax(0, 1fr);
    gap: 1rem;
}

.imageGallery.gridGallery-2 .imageGalleryImage {
    grid-column: span 1;
    grid-row: span 3;
}

.imageGallery.gridGallery-2 .imageGalleryImage:nth-child(7),
.imageGallery.gridGallery-2 .imageGalleryImage:nth-child(1) {
    grid-column: span 2;
    grid-row: span 6;
}

.imageGallery.gridGallery-2 .imageGalleryImage:nth-child(2) {
    grid-row: 2 / 5;
    grid-column-start: 3;
}

.imageGallery.gridGallery-2 .imageGalleryImage:nth-child(8),
.imageGallery.gridGallery-2 .imageGalleryImage:nth-child(3) {
    grid-row: span 5;
    height: 100%;
}

.imageGallery.gridGallery-2 .imageGalleryImage:nth-child(6) {
    grid-row: 11 / 14;
}

/********* Navigation general Layout  *********/

x
.mobileNavigationOverlay {
    z-index: 40;
    position: fixed;
    top: 0;
    left: var(--bodyBorder);
    width: calc(100% - var(--bodyBorder) * 2);
    height: 100%;
    background-color: rgba(var(--colorDarkRGB), 0);
    transition: var(--transition);
    opacity: 0;
    pointer-events: none;
}

.mobileNavigationOverlay[data-modal-status="open"] {
    opacity: 1;
    pointer-events: all;
}

.mobileNavigation {
    position: fixed;
    z-index: 40;
    padding-top: calc(var(--headerHeight) + 1rem);
    padding-bottom: calc(var(--headerHeight));
    width: calc(var(--mobileNavWidth) - var(--bodyBorder) * 2);
    height: 100%;
    top: 0;
    left: calc(var(--mobileNavWidth) * -1);
    transition: var(--transition);
    background-color: rgba(var(--colorDarkRGB), .95);
    overflow: hidden;
}

.mobileNavigationOverlay[data-modal-status="open"] .mobileNavigation {
    left: var(--bodyBorder);
}

.mainMobileNavigation {
    padding-left: calc(var(--verticalPadding)*.75);
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: auto;
}

@media only screen and (max-width: 760px) {
    .mainMobileNavigation {
        padding-left: var(--horizontalMargin);
    }
}

.mainMobileNavigation .iconNavLnk i {
    font-size: 1.5em;
}

.mobileNavigation > svg {
    pointer-events: none;
    width: 685px;
    position: absolute;
    right: calc(var(--horizontalMargin)*.75);
    bottom: calc(var(--horizontalMargin)*.75);
}

@media only screen and (max-width: 1500px) {
    .mobileNavigation > svg {
        width: 500px;
        right: calc(var(--horizontalMargin)*.5);
        bottom: var(--layoutMargin);
    }
}

@media only screen and (max-width: 1200px) {
    .mobileNavigation > svg {
        width: 350px;
    }
}

@media only screen and (max-width: 600px) {
    .mobileNavigation > svg {
        width: 250px;
    }
}

/********* Nav Button  *********/

.navigationButton {
    position: absolute;
    top: var(--headerHeightSmall);
    left: calc(var(--verticalPadding)*.75 + min(800px, 70vw));
    z-index: 5;
    width: 200px;
    height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background-color: var(--colorHighlight);
    color: var(--colorDark);
    font-size: 27px;
    line-height: 1.25;
    text-align: center;
}

a.navigationButton:hover {
    color: var(--colorDark);
    background-color: var(--colorHighlightHover);
    transform: scale(1.1) rotate(15deg);
}

.navigationButton > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: max-content;
    width: max-content;
    gap: 10px;
    max-width: 85%;
    max-height: 85%;
}

.navigationButton svg {
    height: 60px;
    width: 60px;
}

@media only screen and (max-width: 1200px) {
    .navigationButton {
        width: 150px;
        height: 150px;
        font-size: 20px;
        right: 15px;
        left: unset;
    }

    .navigationButton svg {
        height: 45px;
        width: 45px;
    }
}

@media only screen and (max-width: 600px) {
    .navigationButton {
        width: 125px;
        height: 125px;
        font-size: 15px;
        top: 20px;
    }

    .navigationButton svg {
        height: 35px;
        width: 35px;
    }
}

/********* Main Navigation *********/

.mainNavigationWrapper {
    /* padding-left: 1rem; */
    padding-right: var(--verticalPadding);
    width: 100%;
    max-width: 800px;
}

.mainMobileNavigationNode {
    display: block;
    color: #8E8B82;
    padding-block: calc(var(--horizontalMargin) / 4);
    padding-inline: 0 calc(var(--horizontalMargin) + var(--lineHeightNavigationMobile));
    overflow: hidden;
    padding: 0.4rem 2rem 0.4rem 0;
}

body:has(.subMobileNavigationTrigger) .affiliates,
body:has(.subMobileNavigationTrigger) .metaMobileNavigation,
.mainNavigationWrapper:has(.subMobileNavigationTrigger) .mainMobileNavigationNode {
    padding-left: 2rem;
}

.mainMobileNavigationNode:hover,
.mainMobileNavigationNode.active {
    color: var(--colorReset);
}

/********* Sub Navigation *********/

.subMobileNavigation {
    display: none;
}

.subMobileNavigationNode {
    display: block;
    text-transform: none;
    padding: .25rem 0 .25rem 3rem;
    color: #8E8B82;
}

.subMobileNavigationNode,
.mainMobileNavigationNode[data-has-subnavigation="true"] {
    display: block;
}

.subMobileNavigationNode:last-child {
    padding-bottom: 2em;
}

.subMobileNavigationNode:hover,
.subMobileNavigationNode.active {
    color: var(--colorReset);
}

/********* Sub Navigation Trigger *********/

.subMobileNavigationTrigger {
    display: block;
    position: absolute;
    text-align: center;
    height: var(--fontSizeNavigation);
    width: var(--fontSizeNavigation);
    line-height: calc(var(--horizontalMargin) + var(--lineHeightNavigation));
    font-size: calc(var(--fontSizeNavigation) / 1.3);
    left: 0;
    top: 0;
    transition: var(--transition);
    transform: translateY(45%);
    display: block;
    transition: var(--transition);
}

.subMobileNavigationTrigger svg {
    transition: var(--transition);
}

.navigationTriggerUp svg {
    transform: rotate(180deg);
}

/********* Meta Navigation *********/

.metaMobileNavigation {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 1.5rem;
    padding: calc(var(--layoutMargin)*1.5) 0;
    padding-right: 2rem;
}

@media only screen and (max-width: 768px) {
    .metaMobileNavigation {
        gap: 1rem 1rem;
    }
}

@media only screen and (max-width: 600px) {
    .metaMobileNavigation {
        padding: calc(var(--layoutMargin)*3) 2rem calc(var(--layoutMargin)*3) 0;
    }
}

.metaMobileNavigation a {
    color: #8E8B82;
    font-family: var(--mainFont);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 600;
}

.metaMobileNavigation a:hover,
.metaMobileNavigation a.active {
    color: var(--colorReset);
}

.affiliates {
    color: #8E8B82;
    font-family: var(--mainFont);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 600;
    padding-right: 2rem;
    padding-bottom: var(--headerHeightSmall);
}

.affiliates a {
    display: block;
    width: 200px;
    height: auto;
    opacity: 0.5;
    transition: var(--transition);
}

.affiliates a:hover {
    opacity: 1;
}

.affiliates .affiliatesWrapper {
    display: flex;
    margin-top: 1rem;
    gap: 2rem;
    flex-wrap: wrap;
}

@media only screen and (max-width: 768px) {
    .affiliates .affiliatesWrapper {
        flex-direction: column;
        margin-top: 2rem;
    }
}

/*
.mobileNavigationFooter {
    padding: calc(var(--horizontalMargin) / 2);
    position: relative;
    margin-top: calc(var(--verticalPadding) * 0.5);
    bottom: 0;
    width: 100%;
}

@media only screen and (max-width: 768px) {
    .mobileNavigationFooter {
        padding: var(--horizontalMargin) calc(var(--horizontalMargin) / 2);
        position: relative;
        bottom: 0;
        width: 100%;
    }
}

.mobileNavigationFooterAddress {
    position: relative;
}

.mobileNavigationFooterAddress > a {
    color: var(--colorMutedLight);
}

.mobileNavigationFooterAddress > a:hover {
    color: var(--colorReset);
}

.mobileNavigationFooterSocial {
    position: relative;
    padding-top: 20px;
}

.mobileNavigationFooterSocial > a {
    font-size: 40px;
    color: var(--colorMutedLight);
    padding: 0 5px;
}

.mobileNavigationFooterSocial > a:first-child {
    padding-left: 0;
}

.mobileNavigationFooterSocial > a:hover {
    color: var(--colorReset);
}

.mobileNavigationFooterSocial svg {
    width: 40px;
    height: 40px;
}


.mobileNavigation a.button,
.mobileNavigation .button,
.mobileNavigation .button > span {
    color: var(--colorMutedLight);
}

.mobileNavigation a.button:hover,
.mobileNavigation .button:hover,
.mobileNavigation .button:hover > span {
    color: var(--colorReset);
}

.mobileNavigation .button:hover::before {
    color: var(--colorReset);
}

@media only screen and (max-width: 600px) {
    .onlineBooking.onlineBookingNavigation {
        opacity: 0;
        transform: translateX(0);
        top: auto;
        right: auto;
        width: 100%;
        position: relative;
    }

    .mainNavigationWrapper {
        padding-left: 0;
        padding-right: 0;
        padding-top: var(--horizontalMargin);
    }

    .mainMobileNavigation {
        padding: calc(var(--headerHeight)*1.5) var(--horizontalMargin) 0 var(--horizontalMargin);
    }
} */

/**** LAYOUT ****/

.headerExtension > article#content:first-child,
.headerExtension > div.blocks:first-child > *:first-child {
    /* padding-top: calc(var(--logoHeight) + var(--headerHeight) + var(--layoutMargin)); */
    padding-top: var(--headerHeight);
}

.topHeader {
    position: fixed;
    left: var(--bodyBorder);
    top: 0;
    z-index: 30;
    width: calc(100% - var(--bodyBorder)*2);
    height: var(--headerHeight);
    transition: var(--transition);
}

.topHeader .wrapper {
    height: 100%;
    width: var(--headerWrapperWidth);
}

.topHeader {
    background-color: var(--colorDark);
    height: var(--headerHeightSmall);
}

.navContainer {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.navContainer > div {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: max-content;
}

.navContainer > .boxLeft > div[data-modal-trigger]{
    cursor: pointer;
    transition: var(--transition);
    pointer-events: all;
}

.navContainer > .boxLeft > div[data-modal-trigger].is-active{
    z-index: 100;
    border-right: 1px solid rgba(255,255,255,0);
}

.navContainer > .boxLeft > div {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    aspect-ratio: 1/1;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

.navContainer > .bookingButtons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    height: 100%;
    width: 100%;
}

.navContainer > .bookingButtons a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1em;
    min-width: 160px;
    height: 100%;
    width: max-content;
    text-align: center;
    border-left: 1px solid rgba(255, 255, 255, 0.5);
    color: var(--colorReset);
}

@media screen and (max-width: 1500px) {
    .navContainer > .bookingButtons a {
        min-width: 120px;
    }
}

@media screen and (max-width: 760px) {
    .navContainer > .bookingButtons a:first-child {
        display: none;
    }
}

.navContainer > .bookingButtons a:first-child {
    background-color: transparent;
}

.navContainer > .bookingButtons a:first-child:hover {
    background-color: var(--colorHighlightHover);
}

.navContainer > .bookingButtons a:last-child {
    background-color: var(--colorHighlight);
}

.navContainer > .bookingButtons a:last-child:hover {
    background-color: var(--colorHighlightHover);
}

/**** LOGO ****/

.topHeader .logoLink {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    transition: .4s ease-in-out;
    z-index: 10;
    top: var(--logoSpacingSmall);
    left: 50%;
    transform: translateX(-50%);
    height: var(--logoHeightSmall);
    width: var(--logoHeightSmall);
    color: var(--colorReset);
}

.topHeader .logoLink:hover svg {
    transform: scale(1.1);
}

.topHeader .logoLink svg:not(.logoSmall) {
    width: auto;
    height: var(--logoHeight);
    transition: .2s ease-in-out;
    opacity: 1;
}

.topHeader[data-scrolling="true"] .logoLink svg:not(.logoSmall) {
    opacity: 0;
    pointer-events: none;
}

.topHeader .logoLink svg.logoSmall {
    position: absolute;
    width: 100%;
    height: 100%;
    transition: .4s ease-in-out;
}

body:has(.moodHalf) .topHeader[data-scrolling="false"] .logoLink svg:not(.logoSmall),
body:not(:has(.moodHalf)) .topHeader[data-scrolling="false"] .logoLink svg.logoSmall {
    opacity: 0;
}

body:not(:has(.moodHalf)) .topHeader[data-scrolling="true"] .logoLink svg.logoSmall {
    opacity: 1;
}

/**** HAMBURGER ****/

.hamburger {
    display: inline-block;
    height: var(--hamburgerHeight);
    width: var(--hamburgerWidth);
    box-sizing: content-box;
    z-index: 50;
    padding: 0;
    transition: var(--transition);
    color: var(--colorReset);
}

.hamburger .hamburger-inner,
.hamburger .hamburger-inner::after,
.hamburger .hamburger-inner::before {
    border-radius: 0;
    height: var(--hamburgerLineHeight);
    width: var(--hamburgerWidth);
    background: currentColor;
    transition: var(--transition);
    opacity: 1;
}

.hamburger .hamburger-inner::before {
    top: calc(var(--hamburgerHeight) * -0.5);
}

.hamburger .hamburger-inner:after {
    bottom: calc(var(--hamburgerHeight) * -0.5);
}

.hamburger .hamburger-box {
    width: var(--hamburgerWidth);
    height: var(--hamburgerHeight);
}

/*! SCROLLED DOWN SHOULD BE THE DEFAULT STATE ON ALL LINKS  */

/*
* WHEN HERO/MOOD EXISTS
*/

.topHeader[data-scrolling="false"] {
    background-color: transparent;
    height: var(--headerHeight);
}

body:not(:has(.moodHalf)) .topHeader[data-scrolling="false"]:not(.noMood) .logoLink {
    top: var(--logoSpacing);
    height: var(--logoHeight);
    width: auto;
}

.topHeader[data-scrolling="false"]:not(.noMood) .logoLink {
    color: var(--colorReset);
}

.topHeader[data-scrolling="false"]:not(.noMood):has(.mobileNavigationOverlay[data-modal-status="closed"]) .hamburger,
.topHeader[data-scrolling="false"]:not(.noMood):has(.mobileNavigationOverlay[data-modal-status="closed"]) .metanav a:not(.active, :hover),
.topHeader[data-scrolling="false"]:not(.noMood):has(.mobileNavigationOverlay[data-modal-status="closed"]) .mainNav a:not(.active, :hover) {
    color: var(--colorReset);
}

.topHeader .metanav a:hover,
.topHeader .mainNav a:hover{
    color: var(--colorHighlight);
}

.topHeader .metanav a.active,
.topHeader .mainNav a.active{
    color: var(--colorHighlight);
}

.topHeader .metanav a.active:hover,
.topHeader .mainNav a.active:hover{
    color: var(--colorHighlightHover);
}

/*
* WHEN NO HERO/MOOD EXISTS
*/

.topHeader[data-scrolling="false"].noMood .languageNavigation,
.topHeader[data-scrolling="false"].noMood .logoLink,
.topHeader[data-scrolling="false"].noMood:has(.mobileNavigationOverlay[data-modal-status="closed"]) .hamburger,
.topHeader[data-scrolling="false"].noMood .metanav a:not(.active, :hover),
.topHeader[data-scrolling="false"].noMood .mainNav a:not(.active, :hover) {
    color: var(--colorDark);
}

.topHeader[data-scrolling="false"].noMood .navContainer > .bookingButtons a,
.topHeader[data-scrolling="false"].noMood .navContainer > .boxLeft > div,
.topHeader[data-scrolling="false"].noMood .navContainer {
    border-color: var(--colorDark);
    color: var(--colorDark);
}

.topHeader[data-scrolling="false"].noMood .navContainer > .bookingButtons a:nth-child(2),
.topHeader[data-scrolling="false"].noMood .navContainer > .bookingButtons a:hover{
    color: var(--colorReset);
}

.topHeader[data-scrolling="false"].noMood .logoLink svg:not(.logoSmall),
.topHeader[data-scrolling="true"].noMood .logoLink svg:not(.logoSmall) {
    opacity: 0 !important;
}

.topHeader[data-scrolling="false"].noMood .logoLink svg.logoSmall,
.topHeader[data-scrolling="true"].noMood .logoLink svg.logoSmall {
    opacity: 1 !important;
}

/*
* WHEN NO HERO/MOOD EXISTS AND FIRST BLOCK DARK OR HIGHLIGHT
*/

body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .languageNavigation,
body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .logoLink,
body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood:has(.mobileNavigationOverlay[data-modal-status="closed"]) .hamburger,
body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .metanav a:not(.active, :hover),
body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .mainNav a:not(.active, :hover) {
    color: var(--colorReset);
}

body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .navContainer > .bookingButtons a,
body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .navContainer > .boxLeft > div,
body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .navContainer {
    border-color: rgba(var(--colorResetRGB),0.5);
    color: var(--colorReset);
}

body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .navContainer > .bookingButtons a:nth-child(2),
body:has(.navTextAlternate) .topHeader[data-scrolling="false"].noMood .navContainer > .bookingButtons a:hover{
    color: var(--colorReset);
}

/*
* WHEN FIRST BLOCK OR CONTENT IS LIGHT
* AND NO HERO/MOOD EXISTS
*/

body:has(.navTextAlternate) .topHeader[data-scrolling="false"]:has(.mobileNavigationOverlay[data-modal-status="closed"]) .logoLink {
    color: var(--colorReset);
}

body:has(.navTextAlternate) .topHeader[data-scrolling="false"]:has(.mobileNavigationOverlay[data-modal-status="closed"]) .hamburger,
body:has(.navTextAlternate) .topHeader[data-scrolling="false"]:has(.mobileNavigationOverlay[data-modal-status="closed"]) .metanav a:not(.active, :hover),
body:has(.navTextAlternate) .topHeader[data-scrolling="false"]:has(.mobileNavigationOverlay[data-modal-status="closed"]) .mainNav a:not(.active, :hover) {
    color: var(--colorReset);
}

/*
* NAVIGATION BUTTON HOVER AND ACTIVE STATE
*/

body:has(.navTextAlternate) .topHeader .metanav a.button.metaNavigationLink.active,
body .topHeader .metanav a.button.metaNavigationLink.active,
body:has(.navTextAlternate) .topHeader .metanav a.button.metaNavigationLink:hover,
body .topHeader .metanav a.button.metaNavigationLink:hover{
    border-color: var(--colorHighlight);
    background-color: var(--colorHighlight);
    color: var(--colorReset);
}

body:has(.navTextAlternate) .topHeader .metanav a.button.metaNavigationLink.active:hover,
body .topHeader .metanav a.button.metaNavigationLink.active:hover{
    border-color: var(--colorHighlightHover);
    background-color: var(--colorHighlightHover);
    color: var(--colorReset);
}

.languageNavigation {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
    color: var(--colorReset);
}

.languageNavigation .trigger .fa-angle-down,
.languageNavigation .trigger .fa-angle-up {
    position: absolute;
    right: 0;
    top: 50%;
    font-size: 0.8em;
    transform: translate(0.2em, -50%);
    transition: var(--transition);
}

.languageNavigationLink:first-child {
    margin-left: 0;
}

.languageNavigation div.trigger {
    width: 100%;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .2s ease-out;
    padding: 0 5px;
    gap: 5px;
}

.languageNavigation div.trigger:hover,
.languageNavigation div.trigger.open {
    color: var(--colorHighlight);
}

.languageNavigation div.trigger.open svg {
    transform: rotate(180deg);
}

.languageNavigation div.trigger svg {
    width: 1rem;
    height: 1rem;
    transition: var(--transition);
}

@media screen and (max-width: 1200px) {
    .languageNavigation div.trigger svg {
        width: .8rem;
        height: .8rem;
    }
}

@media screen and (max-width: 768px) {
    .languageNavigation div.trigger svg {
        width: .6rem;
        height: .6rem;
    }
}

.languageNavigation > div:not(.trigger) {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    pointer-events: none;
    display: flex;
    justify-content: center;
}

.languageNavigation div.target {
    display: none;
    position: absolute;
    text-align: left;
    z-index: 1;
    box-shadow: rgba(0, 0, 0, 0.4) 0 2px 8px -1px;
    pointer-events: all;
    top: calc(50% + 1rem);
}

.languageNavigation div.target .targetWrapper {
    padding: 5px 0;
}

.languageNavigation .languageNavigationLink {
    display: block;
    margin: 0;
    padding: 5px 13px;
    line-height: var(--lineHeightNavigationSmall);
    color: inherit;
}

.languageNavigation .target.highlight .languageNavigationLink:hover {
    color: var(--colorReset);
}

/* Simple navigation */

.metanav > .languageNavigationLink,
.mainMobileNavigation > .languageNavigationLink {
    margin-left: 7px;
    margin-right: 7px;
}

.testimonials {
    margin-left: auto;
    margin-right: auto;
    max-width: 1200px;
}

.testimonial {
    display: flex;
    gap: var(--layoutMargin);
    width: 100%;
    height: 100%;
    margin-inline: auto;
    min-height: 20rem;
    /* height of testimonial image */
}

.testimonial .testimonialImage {
    flex-shrink: 0;
    width: 20rem;
    height: 20rem;
}

.testimonial .testimonialImage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 100%;
}

.testimonial .testimonialText {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    padding: 2em 0;
}

.testimonial blockquote span {
    z-index: 3;
}

.testimonial cite {
    width: 100%;
    margin-top: 2rem;
    color: var(--colorDarkGray);
}

.highlight .testimonial cite,
.dark .testimonial cite {
    color: var(--colorReset);
}

.testimonial .testimonialSvg {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(50%, -2rem);
    color: var(--colorMuted);
    width: 144px;
    height: auto;
}

.testimonial .testimonialSvg svg {
    width: 100%;
    height: 100%;
}

.dark .testimonial .testimonialSvg svg {
    color: var(--colorDarkHover);
}

.muted .testimonial .testimonialSvg svg {
    color: var(--colorReset);
}

.highlight .testimonial .testimonialSvg svg {
    color: var(--colorHighlightDark);
}

.testimonials .splide__pagination {
    flex-direction: revert;
    height: max-content;
    bottom: 0;
    top: unset;
    width: 100%;
    justify-content: center;
    align-items: center;
    transform: translateY(100%);
}

/*
.testimonials .splide__pagination__page {
    transition: var(--transition);
}

.testimonials .splide__pagination__page.is-active {
    width: 30px;
    border-radius: 15px;
    background-color: var(--colorDark);
    transition: var(--transition);
    } */

.testimonials .splide__track {
    overflow-y: visible;
}

.dark .testimonials .splide__pagination__page.is-active {
    background-color: var(--colorReset);
}

.testimonials .splide__slide {
    opacity: 0;
    transition: none !important;
    overflow: hidden;
}

.testimonials .splide__slide.is-active,
.testimonials .splide__slide.is-visible {
    opacity: 1;
}

@media screen and (max-width: 1200px) {
    .testimonial {
        max-width: 900px;
        min-height: 15rem;
    }

    .testimonial .testimonialImage {
        width: 15rem;
        height: 15rem;
    }

    .testimonial .testimonialSvg {
        width: 90px;
    }
}

@media screen and (max-width: 768px) {
    .testimonial {
        min-height: 13rem;
    }

    .testimonial .testimonialImage {
        width: 13rem;
        height: 13rem;
    }

    .testimonial .testimonialSvg {
        width: 65px;
    }
}

@media screen and (max-width: 600px) {
    .testimonial {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: calc(var(--horizontalMargin) * 2);
        max-width: calc(100% - var(--horizontalMargin) * 2);
        min-height: 11rem;
    }

    .testimonial .testimonialImage {
        width: 11rem;
        height: 11rem;
    }

    .testimonial .testimonialText {
        text-align: center;
        padding: 1em 0;
    }

    .testimonial {
        gap: calc(var(--layoutMargin) * 2);
    }

    .testimonial .testimonialSvg {
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

.testimonial:not(:has(.testimonialImage)) {
    text-align: center;
}

.testimonial:not(:has(.testimonialImage)) .testimonialSvg {
    left: 50%;
    transform: translate(-50%, -2rem);
}

/* article[data-block-type="menucards"] > .wrapper {
    overflow: visible;
}

.card {
    text-align: center;
    transition: all 0.2s ease-out;
    height: 100%;
    width: 100%;
}

.card a {
    padding: 3rem 2rem;
    color: var(--colorDark);
    background-color: var(--colorMuted);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.card a:hover {
    transform: scale(1.05);
    background-color: var(--colorHighlight);
    color: var(--colorReset);
}

.cardIcon {
    display: block;
    margin: 0 auto;
    margin-bottom: 10px;
}

.cardIcon svg {
    transition: var(--transition);
    color: var(--colorHighlight);
    width: 80px;
    height: 80px;
}

.card a:hover .cardIcon svg {
    color: var(--colorReset);
}

.muted .card > a {
    background-color: var(--colorReset);
}

.muted .card > a:hover {
    background-color: var(--colorHighlight);
}

.highlight .card a:hover {
    background-color: var(--colorDark);
}

@media screen and (max-width: 1400px) {

    .menucards.gridBlocks-4,
    .menucards.gridBlocks-5,
    .menucards.gridBlocks-6 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media screen and (max-width: 1200px) {
    .cardIcon > svg {
        width: 60px;
        height: 60px;
    }
}

@media screen and (max-width: 1024px) {

    .menucards.gridBlocks-3,
    .menucards.gridBlocks-4,
    .menucards.gridBlocks-5,
    .menucards.gridBlocks-6 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media screen and (max-width: 1023px) {

    .menucards.gridBlocks-3,
    .menucards.gridBlocks-4,
    .menucards.gridBlocks-5,
    .menucards.gridBlocks-6 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .card a {
        padding: 2rem 1.5rem;
    }
}

@media screen and (max-width: 760px) {
    .cardIcon > svg {
        width: 50px;
        height: 50px;
    }
}

@media screen and (max-width: 680px) {
    .menucards.gridBlocks-2,
    .menucards.gridBlocks-3,
    .menucards.gridBlocks-4,
    .menucards.gridBlocks-5,
    .menucards.gridBlocks-6 {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .card {
        max-width: 400px;
        margin: auto;
    }
}

@media screen and (max-width: 600px) {
    .menucards.gridBlocks {
        gap: 30px;
    }

    .cardIcon {
        margin-bottom: 10px;
    }
} */

/* General */

/* article[data-block-type="usps"][data-wrapper-small-align="left"] .wrapper.wrapperSmall > .wrapperInner{
    margin: auto;
} */

.usps.gridBlocks{
    row-gap: calc(var(--layoutMargin) * 2);
    text-align: center;
}

.usp .button {
    margin: 1.5rem auto 0 auto;
}

/* Partial specific */

.usps .uspIcon {
    margin-bottom: .75rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

.usps .uspIcon > svg {
    display: block;
    width: 80px;
    height: 80px;
    overflow: visible;
}

.dark .usps  .uspIcon > svg {
    color: var(--colorReset);
}

@media screen and (max-width: 1700px) {

    .usps.gridBlocks-6,
    .usps.gridBlocks-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media screen and (max-width: 1500px) {

    .usps.gridBlocks-5,
    .usps.gridBlocks-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media screen and (max-width: 1023px) {
    .usps .uspIcon > svg {
        width: 70px;
        height: 70px;
    }

    .usps .uspIcon {
        margin-bottom: 1rem;
    }

    .usps .usp .button {
        margin-top: 1rem;
    }

    .usps.gridBlocks-6,
    .usps.gridBlocks-5,
    .usps.gridBlocks-4,
    .usps.gridBlocks-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 768px) {
    .uspIcon > svg {
        width: 60px;
        height: 60px;
    }

    .usps.gridBlocks {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 600px) {
    .usps.gridBlocks {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        grid-column-gap: calc(var(--horizontalMargin) * 3);
        grid-row-gap: calc(var(--horizontalMargin) * 3);
    }
}

article[data-block-type="usps-uspImage"] {
    /* height: 1000px; */
    height: calc(100svh - var(--headerHeightSmall));
    overflow: hidden;
    background-color: var(--colorDark);
    color: var(--colorReset);
}

.blocks article[data-block-type="usps-uspImage"]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    background: linear-gradient(20deg, rgba(var(--colorHighlightRGB), 0.7) 0%, rgba(var(--colorHighlightRGB), 0.05) 50%, rgba(var(--colorHighlightRGB), 0) 100%);
}

article[data-block-type="usps-uspImage"] .wrapper,
article[data-block-type="usps-uspImage"] .wrapper > .wrapperInner,
article[data-block-type="usps-uspImage"] .wrapper > .wrapperInner .uspImage,
article[data-block-type="usps-uspImage"] .wrapper > .wrapperInner .uspImage .trackWrapper {
    height: 100%;
    overflow: hidden;
}

article[data-block-type="usps-uspImage"] .wrapper {
    padding: 0;
    margin: 0;
    width: 100%;
    max-width: 100%;
}

article[data-block-type="usps-uspImage"] .wrapperInner > h2.blockTitle {
    display: none;
}

.uspImage h1,
.uspImage h2,
.uspImage h3,
.uspImage h4,
.uspImage h5,
.uspImage h6 {
    color: var(--colorHighlight);
}

.uspImage .uspStickyImages .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    object-fit: cover;
}

.uspImage .uspStickyImages .image img {
    opacity: 0;
    transition: var(--transition);
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.uspImage .uspStickyImages .image:first-child img,
.uspImage .uspStickyImages .image img.active {
    opacity: 1;
}

.uspImage .trackWrapper * {
    transition: var(--transition);
}

.uspImage .trackWrapper .usp {
    margin-bottom: var(--layoutMargin);
    opacity: .125;
    display: flex;
    gap: 1.5rem;
}

.uspImage .trackWrapper .uspIcon {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100px;
    width: 100px;
    background-color: rgba(var(--colorHighlightRGB), 0.25);
}

.uspImage .trackWrapper .uspIcon svg {
    height: 50px;
    width: 50px;
}

.uspImage .trackWrapper {
    height: 100%;
    display: flex;
    flex-direction: column;
    padding-top: 150px;
    padding-bottom: 50px;
    width: calc(var(--wrapperWidth)/2);
    max-width: calc(100% - var(--horizontalMargin));
    margin-left: auto;
}

.uspImage .trackWrapper .outerTrack {
    overflow: hidden;
    flex-grow: 1;
}

.uspImage .trackWrapper .button,
.uspImage .trackWrapper h2 {
    flex-shrink: 0;
}

.uspImage .trackWrapper h2 {
    padding-bottom: 100px;
}

.uspImage .trackWrapper .button {
    padding-top: var(--layoutMargin);
    margin-left: calc(100px + 1.5rem);
}

.uspImage .trackWrapper .button span:last-child {
    color: var(--colorHighlight);
}

.uspImage .trackWrapper .usp.active {
    opacity: 1;
}

.uspImage .trackWrapper .usp.active + .usp {
    opacity: .35;
}

@media screen and (max-width: 1500px) {
    article[data-block-type="usps-uspImage"] {
        height: 900px;
    }

    .uspImage .trackWrapper {
        padding-top: 100px;
        padding-bottom: 50px;
    }

    .uspImage .trackWrapper h2 {
        padding-bottom: 75px;
    }
}

@media screen and (max-width: 1200px) {
    .uspImage .trackWrapper .button {
        display: none;
    }

    .uspImage .trackWrapper h2 {
        padding-bottom: 35px;
    }

    .uspImage .trackWrapper {
        padding-top: 75px;
        padding-bottom: 35px;
    }

    .uspImage .trackWrapper .uspIcon {
        height: 80px;
        width: 80px;
    }

    .uspImage .trackWrapper .uspIcon svg {
        height: 40px;
        width: 40px;
    }
}

@media screen and (max-width: 1000px) {
    .blocks article[data-block-type="usps-uspImage"]::before {
        background: linear-gradient(20deg, rgba(var(--colorHighlightRGB), 0.5) 0%, rgba(var(--colorHighlightRGB), 0.05) 40%, rgba(var(--colorHighlightRGB), 0) 100%);
    }

    article[data-block-type="usps-uspImage"] .wrapper > .wrapperInner .uspImage {
        grid-template-columns: minmax(0, 1fr);
        /* grid-template-rows: repeat(2, minmax(0, 1fr)); */
        gap: 0;
    }

    .uspImage .trackWrapper {
        max-width: calc(100% - var(--horizontalMargin) * 2);
        margin: auto;
    }

    .uspImage .uspStickyImages {
        order: -1;
        aspect-ratio: 16/9;
    }

    .uspImage .trackWrapper {
        padding-top: 50px;
        padding-bottom: 35px;
    }

    .uspImage .trackWrapper h2 {
        padding-bottom: 30px;
    }

    .uspImage .trackWrapper .usp {
        margin-bottom: calc(var(--layoutMargin)*2);
    }

    .uspImage .trackWrapper .uspIcon {
        height: 60px;
        width: 60px;
    }

    .uspImage .trackWrapper .uspIcon svg {
        height: 30px;
        width: 30px;
    }
}

@media screen and (max-width: 760px) {
    /* .uspImage .uspStickyImages {
        aspect-ratio: 21/9;
    } */

    .uspImage .trackWrapper h2 {
        display: none;
    }
}

@media screen and (max-width: 600px) {
    .uspImage .trackWrapper h2 {
        display: block;
    }

    .uspImage .trackWrapper .usp.active + .usp,
    .uspImage .trackWrapper .usp {
        opacity: 1;
    }

    article[data-block-type="usps-uspImage"] {
        height: max-content;
    }

    .uspImage .innerTrack {
        transform: unset !important;
    }
}

article[data-block-type="usps-uspList"] {
    height: calc(100svh - var(--headerHeightSmall));
    overflow: hidden;
    background-color: var(--colorDark);
    color: var(--colorReset);
}

.blocks article[data-block-type="usps-uspList"]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    background: linear-gradient(20deg, rgba(var(--colorHighlightRGB), 0.7) 0%, rgba(var(--colorHighlightRGB), 0.05) 50%, rgba(var(--colorHighlightRGB), 0) 100%);
}

article[data-block-type="usps-uspList"] .wrapper,
article[data-block-type="usps-uspList"] .wrapper > .wrapperInner,
article[data-block-type="usps-uspList"] .wrapper > .wrapperInner .uspList,
article[data-block-type="usps-uspList"] .wrapper > .wrapperInner .uspList .trackWrapper {
    height: 100%;
    overflow: hidden;
}

article[data-block-type="usps-uspList"] .wrapper {
    width: var(--wrapperSmallWidth);
    padding-bottom: 0;
}

article[data-block-type="usps-uspList"] .wrapperInner > h2.blockTitle {
    display: none;
}

.uspList h1,
.uspList h2,
.uspList h3,
.uspList h4,
.uspList h5,
.uspList h6 {
    color: var(--colorHighlight);
}

.uspList .trackWrapper * {
    transition: var(--transition);
}

.uspList .trackWrapper .usp {
    margin-bottom: var(--layoutMargin);
    opacity: .125;
    display: flex;
    gap: 1.5rem;
}

.uspList .trackWrapper .uspIcon {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100px;
    width: 100px;
    background-color: rgba(var(--colorHighlightRGB), 0.25);
}

.uspList .trackWrapper .uspIcon svg {
    height: 50px;
    width: 50px;
}

/* .uspList .trackWrapper {
    height: 100%;
    display: flex;
    flex-direction: column;
    padding-top: 150px;
    padding-bottom: 50px;
    width: calc(var(--wrapperWidth)/2);
    max-width: calc(100% - var(--horizontalMargin));
    margin-left: auto;
} */

.uspList .trackWrapper .outerTrack {
    overflow: hidden;
    flex-grow: 1;
}

.uspList .trackWrapper .button,
.uspList .trackWrapper h2 {
    flex-shrink: 0;
}

.uspList .trackWrapper h2 {
    padding-bottom: 100px;
}

.uspList .trackWrapper .button {
    padding-top: var(--layoutMargin);
    margin-left: calc(100px + 1.5rem);
}

.uspList .trackWrapper .button span:last-child {
    color: var(--colorHighlight);
}

@media screen and (min-width: 601px) {
    .uspList .trackWrapper .usp.active {
        opacity: 1;
    }

    .uspList .trackWrapper .usp.active + .usp {
        opacity: .35;
    }
}

@media screen and (max-width: 1500px) {
    article[data-block-type="usps-uspList"] {
        height: 900px;
    }

    .uspList .trackWrapper {
        /* padding-top: 100px; */
        padding-bottom: 50px;
    }

    .uspList .trackWrapper h2 {
        padding-bottom: 75px;
    }
}

@media screen and (max-width: 1200px) {
    article[data-block-type="usps-uspList"] {
        height: calc(100svh - var(--headerHeightSmall));
    }

    .uspList .trackWrapper .button {
        display: none;
    }

    .uspList .trackWrapper .uspIcon {
        height: 80px;
        width: 80px;
    }

    .uspList .trackWrapper .uspIcon svg {
        height: 40px;
        width: 40px;
    }
}

@media screen and (max-width: 1000px) {
    .blocks article[data-block-type="usps-uspList"]::before {
        background: linear-gradient(20deg, rgba(var(--colorHighlightRGB), 0.5) 0%, rgba(var(--colorHighlightRGB), 0.05) 40%, rgba(var(--colorHighlightRGB), 0) 100%);
    }

    .uspList .trackWrapper {
        max-width: calc(100% - var(--horizontalMargin) * 2);
        margin: auto;
    }

    .uspList .uspStickyImages {
        order: -1;
    }

    .uspList .trackWrapper {
        /* padding-top: 50px; */
        padding-bottom: 50px;
    }

    .uspList .trackWrapper h2 {
        padding-bottom: 40px;
    }

    .uspList .trackWrapper .usp {
        margin-bottom: calc(var(--layoutMargin)*2);
    }
}

@media screen and (max-width: 1000px) {
    .uspList .trackWrapper .uspIcon {
        height: 60px;
        width: 60px;
    }

    .uspList .trackWrapper .uspIcon svg {
        height: 30px;
        width: 30px;
    }
}

@media screen and (max-width: 600px) {
    .uspList .trackWrapper .usp {
        opacity: 1;
    }

    article[data-block-type="usps-uspList"] {
        height: max-content;
    }

    .uspList .innerTrack {
        transform: unset !important;
    }
}

/****** Layout ******/

:root {
    --bigPictureBoxWidth: 700px;
}

.bigPictures {
    overflow: hidden;
}

.bigPictures .bigPicture {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
    display: block;
}

.bigPicture {
    width: 100%;
    height: 100%;
    max-height: 1000px;
    overflow: hidden;
    position: relative;
}

article[data-block-type="bigPicture"] > div {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding-bottom: 0;
    padding-top: 0;
    overflow: visible;
}

/****** Background Image ******/

.bigPictureBackground > picture {
    display: block;
    width: 100%;
    height: 100%;
    transition: all .2s ease-out;
}

.bigPictureBackground img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: top;
    transform: scale(1.1);
}

/****** Content Text Box ******/

article[data-block-type="bigPicture"] > div .bigPictureBoxTopWrapper {
    position: absolute;
    top: 0;
    height: 100%;
    left: 0;
    right: 0;
}

.bigPictureBox {
    z-index: 6;
    position: absolute;
    right: 0;
    bottom: 0;
    /* transform: translateY(calc(var(--horizontalMargin) * -1.5)); */
    width: var(--bigPictureBoxWidth);
    height: auto;
    padding: calc(var(--layoutMargin) * 1);
    padding-right: calc(var(--layoutMargin) * 2);
}

.bigPictureBox .button {
    margin-top: var(--layoutMargin);
}

.bigPictureBox > div > div {
    margin-top: calc(var(--layoutMargin) / 2);
}

/****** responsive ******/

@media only screen and (max-width: 1400px) {
    .bigPicture {
        max-height: 750px;
    }
}

@media only screen and (max-width: 1200px) {
    .bigPicture {
        max-height: 650px;
    }
}

@media screen and (max-width: 1024px) {
    .bigPicture {
        max-height: 550px;
    }
}

@media screen and (max-width: 900px) {
    .bigPicture {
        max-height: 450px;
    }
}

@media screen and (max-width: 900px) {
    :root {
        --bigPictureBoxWidth: 450px;
    }

    .bigPictureBox {
        position: relative;
        right: unset;
        bottom: unset;
        width: 100%;
        padding: calc(var(--horizontalMargin)*2) var(--horizontalMargin);
    }
}

@media screen and (max-width: 600px) {

    /* :root {
        --bigPictureBoxWidth: 100%;
    } */
    .bigPicture .bigPictureBackground {
        height: unset;
    }

    .bigPictures .bigPicture img {
        height: 350px;
    }
}

article[data-block-type="logoCollection"][data-wrapper-small-align="left"] .wrapper.wrapperSmall > .wrapperInner{
    margin: auto;
}

.logoCollection .logoCollectionImage {
    background: var(--colorMuted);
}

.dark .logoCollection .logoCollectionImage {
    background: var(--colorDarkGray);
}

.muted .logoCollection .logoCollectionImage {
    background: var(--colorReset);
}

.highlight .logoCollection .logoCollectionImage {
    background: var(--colorHighlightDark);
}

.logoCollection .logoCollectionImage {
    width: 100%;
    height: 0;
    padding-bottom: calc((3/4) * 100%);
    border-radius: 5px;
    overflow: hidden;
}

.logoCollection .logoCollectionImage picture > img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.logoCollection .logoCollectionImage > * {
    position: absolute;
    top: 15%;
    left: 15%;
    width: 70%;
    height: 70%;
    object-fit: contain;
}

.logoCollection .logoCollectionImage > a > * {
    display: inline-block;
    width: 100%;
    height: 100%;
    transition: var(--transition);
}

.logoCollection .logoCollectionImage > a:hover > * {
    transform: scale(1.05);
}

@media screen and (max-width: 1500px) {
    .logoCollection .gridBlocks-5 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media screen and (max-width: 1200px) {
    .logoCollection .gridBlocks-5 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media screen and (max-width: 550px) {
    .logoCollection .gridBlocks-5 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

article[data-block-type="jobs"] .blockText,
article[data-block-type="jobs"] .blockTitle {
    text-align: center;
}

.jobs tbody {
    display: block;
    width: 100%;
}

.jobs .htjobs-table {
    background-color: transparent;
}

.jobs .htjobs-table span {
    font-family: var(--fontFamilyBody);
    font-size: var(--fontSizeBody);
    line-height: var(--lineHeightBody);
    font-weight: var(--fontWeightBody);
    letter-spacing: var(--letterSpacingBody);
    font-style: var(--fontStyleBody);
    text-transform: var(--textTransformBody);
}

.jobs .htjobs-table a {
    font-family: var(--fontFamilyH5);
    font-size: var(--fontSizeH5);
    line-height: var(--lineHeightH5);
    font-weight: var(--fontWeightH5);
    letter-spacing: var(--letterSpacingH5);
    font-style: var(--fontStyleH5);
    text-transform: var(--textTransformH5);
}

.jobs tr {
    display: flex;
    border-top: 2px solid currentColor;
    padding: 1rem 0;
}

.jobs tr:last-child {
    border-bottom: 2px solid currentColor;
}

.jobs tr td:nth-child(2) {
    flex-grow: 1;
}

.jobs tr td {
    padding: 0;
    border: 0;
}

.pin-spacer-socialFeed {
    background-color: var(--colorMuted);
}

article[data-block-type="socialFeed"] .verticalPadding {
    padding-top: 0;
}

article[data-block-type="socialFeed"] .wrapper {
    overflow: visible;
}

article[data-block-type="socialFeed"] .wrapperInner {
    margin-bottom: calc(var(--verticalPadding) * -0.5);
    transform: translateY(calc(var(--verticalPadding) * -0.5));
}

article[data-block-type="socialFeed"] {
    width: max-content;
    min-width: 100%;
    /* height: calc(100vh - var(--verticalPadding)); */
}

article[data-block-type="socialFeed"] > div {
    overflow: visible;
    clip-path: inset(-100vw -100vw -100vw 0);
}

.socialFeed {
    display: grid;
    width: max-content;
    --gridSize: 370px;
    grid-auto-columns: var(--gridSize);
    grid-template-rows: repeat(2, var(--gridSize));
    gap: 1rem;
}

.socialFeed .entry a,
.socialFeed .entry img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
    overflow: hidden;
}

.socialFeed .entry {
    grid-row: 2 / 3;
    grid-column: span 1;
    height: 100%;
    width: 100%;
    aspect-ratio: 1/1;
    display: flex;
    justify-content: center;
    align-items: center;
    object-fit: cover;
}

article[data-block-type="socialFeed"] .hashtag {
    grid-column: 3 / 5;
    grid-row: 1 / 2;
    display: flex;
    align-items: center;
    padding-top: calc(var(--verticalPadding) * 0.5);
}

.dark .hashtag {
    color: var(--colorHighlight);
}

.socialFeed .entry:first-child {
    grid-row: 1 / 3;
    grid-column: span 2;
    height: 100%;
}

@media screen and (max-width:1500px) {
    .socialFeed {
        --gridSize: 300px;
    }
}

@media screen and (max-width:1200px) {
    .socialFeed {
        --gridSize: 215px;
    }
}

@media screen and (max-width:1000px) {
    .socialFeed {
        --gridSize: 160px;
    }
}

@media screen and (max-width: 600px) {
    article[data-block-type="socialFeed"] {
        width: 100%;
        min-width: unset;
        height: unset;
    }

    article[data-block-type="socialFeed"] .hashtag {
        padding: 2em 0;
        text-align: center;
        justify-content: center;
    }

    .socialFeed {
        grid-auto-columns: unset;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: unset;
        width: 100%;
    }

    .socialFeed .entry {
        grid-row: span 1;
        grid-column: span 1;
    }

    article[data-block-type="socialFeed"] .hashtag {
        grid-column: span 2;
        grid-row: unset;
    }

    .socialFeed .entry:first-child {
        grid-row: span 2;
        grid-column: span 2;
        aspect-ratio: 1/1;
    }
}

article[data-block-type="panorama"] .wrapper {
    height: 100%;
    width: 100%;
    max-width: 100%;
    padding: 0;
}

.panorama {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 900px;
    margin: 0 calc(var(--horizontalMargin) * 1.5);
}

.panorama picture::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgb(var(--colorDarkRGB), 0.5);
}

.panorama picture,
.panorama img {
    display: block;
    object-fit: cover;
    height: 100%;
    width: 100%;
    z-index: 1;
    position: absolute;
    transition: var(--transition);
}

.panorama div.buttonSquare {
    z-index: 3;
    color: var(--colorReset);
    transition: var(--transition);
}

.panorama div.buttonSquare:hover {
    transform: scale(1.08);
}

.panorama iframe {
    z-index: 0;
    display: block;
    object-fit: cover;
    height: 100%;
    width: 100%;
    position: absolute;
}

@media screen and (max-width: 1200px) {
    .panorama {
        height: 800px;
    }
}

@media screen and (max-width: 1020px) {
    .panorama {
        height: 700px;
    }
}

@media screen and (max-width: 760px) {
    .panorama {
        height: 600px;
    }
}

@media screen and (max-width: 600px) {
    .panorama {
        height: 50vh;
    }
}

.filterOverview .overviewMenu {
    margin-bottom: var(--horizontalMargin);
}

@media only screen and (max-width: 600px) {
    .filterOverview .overviewMenu {
        margin-bottom: calc(var(--horizontalMargin)*3);
    }
}

.filterOverview .overviewMenu .buttonSquare {
    width: 300px;
    min-width: max-content;
    text-decoration: unset;
    height: max-content;
    min-height: 50px;
    padding: 5px 10px;
}

.filterOverview .overviewMenu .buttonSquare > span {
    padding-right: 15px;
    padding-left: 15px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.5em;
    text-decoration: unset;
}

.filterOverview .overviewMenu .buttonSquare p {
    margin: 0;
}

.filterOverview .overviewMenu .buttonSquare svg {
    height: 2.5em;
}

.filterOverview .overviewMenu .buttonSquare svg path {
    fill: currentColor;
}

.filterOverview .overviewMenu a.buttonSquare.selected span:after,
.filterOverview .overviewMenu a.buttonSquare.selected span:before {
    border: transparent;
    background-color: transparent;
}

.filterOverview .overviewMenu a.buttonSquare.selected {
    border-color: var(--colorHighlight);
    background-color: var(--colorHighlight);
    color: var(--colorReset);
}

.filterOverview .overviewMenu a.buttonSquare.selected:hover {
    background-color: var(--colorHighlightDark);
}

.filterOverview .overviewMenu a.buttonSquare.selected svg.filter,
.filterOverview .overviewMenu a.buttonSquare div {
    display: none;
}

.filterOverview .overviewMenu .buttonSquare.selected div {
    display: inline;
}

.sprig-components .filterOverview .overviewMenu .buttonSquare.selected svg {
    display: none;
}

.filterOverview .overviewMenu .buttonSquare.selected svg {
    display: inherit;
}

.filterOverview .overviewMenu .buttonSquare.selected svg,
.filterOverview .overviewMenu .buttonSquare.selected form,
.filterOverview .overviewMenu .buttonSquare.selected div,
.filterOverview .overviewMenu .buttonSquare.selected buttonSquare {
    padding: 0;
    margin: 0;
    border: none;
    background: none;
    color: currentColor;
    height: 1.25rem;
    transition: var(--transition);
}

.filterOverview .overviewMenu a.buttonSquare.selected buttonSquare:hover {
    color: var(--colorDarkGray);
    cursor: pointer;
}

.filterOverview form {
    display: flex;
    flex-direction: column;
}

.filterOverview form:has(.buttonSquare) {
    align-items: center;
    justify-content: center;
    margin-top: var(--horizontalMargin);
}

.teaserfilterWrapper .filterUsps{
    padding: var(--verticalPadding) 0;
    margin: auto;
    max-width: 100%;
    width: var(--wrapperSmallWidth);
}

.teaserfilterWrapper .filterUsps:not(:has(.usp)) {
    padding-top: 0;
    padding-bottom: var(--horizontalMargin);
}

#filterCategory {
    transition: opacity 0.3s ease;
}

#filterCategory.htmx-swapping {
    opacity: 0;
    transition: opacity 0.25s ease;
}

#filterCategory.htmx-settling {
    opacity: 0;
}

body:has(.filterSelectorModal) .mainContent,
body:has(.filterSelectorModal) .wrapper {
    z-index: unset;
}

.filterSelectorModal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    background-color: rgba(0, 0, 0, 0.5);
}

.filterSelectorModal:not([data-modal-status="open"]) {
    pointer-events: none;
}

.filterSelectorModal article {
    position: absolute;
    right: -100%;
    top: 0;
    width: 40%;
    height: 100%;
    z-index: 101;
    background-color: rgba(var(--colorDarkRGB), .9);
    color: #8E8B82;
    display: flex;
    flex-direction: column;
    padding-top: var(--verticalPadding);
    padding-bottom: calc(var(--verticalPadding) / 2);
    transition: var(--transition);
}

.filterSelectorModal article .wrapper {
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    overflow: hidden;
}

.filterSelectorModal article .sprig-component {
    overflow: hidden;
}

.filterSelectorModal .modalTrigger {
    aspect-ratio: 1/1;
    height: 30px;
    position: absolute;
    top: calc(var(--verticalPadding) / 2);
    right: var(--horizontalMargin);
    cursor: pointer;
    color: var(--colorReset);
    transition: var(--transition);
}

.filterSelectorModal .modalTrigger:hover {
    color: var(--colorHighlight);
}

.filterSelectorModal .modalTrigger path {
    stroke-width: 2px;
}

.filterSelectorModal article .wrapper button {
    line-height: 1.25;
    text-decoration: unset;
    background: unset;
    border: unset;
    outline: unset;
    padding: 0;
    margin: 0;
    transition: var(--transition);
    text-align: left;
    color: currentColor;
}

.filterSelectorModal article .wrapper button:hover {
    color: var(--colorReset);
    cursor: pointer;
}

.filterSelectorModal article .wrapper button.selected {
    color: var(--colorHighlight);
}

.filterSelectorModal article .wrapper h2 {
    margin-bottom: .5em;
    color: var(--colorReset);
}

.filterSelectorModal{
    display: block !important;
}

.filterSelectorModal[data-modal-status="closed"] {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0);
    pointer-events: none !important;
}

.filterSelectorModal[data-modal-status="open"] {
    background-color: rgba(0, 0, 0, 0.5);
}

.filterSelectorModal[data-modal-status="closed"] article {
    left: -100%;
}

.filterSelectorModal[data-modal-status="open"] article {
    left: 0;
}

@media screen and (max-width: 1200px) {
    .filterSelectorModal article{
        width: 60%;
    }
}

@media screen and (max-width: 768px) {
    .filterSelectorModal article{
        width: 80%;
    }
}

@media screen and (max-width: 600px) {
    .filterSelectorModal article{
        width: 100%;
    }
}

/********* Teaser Layout *********/

.teasersInline.gridBlocks {
    display: grid;
    overflow: hidden;
    text-align: left;
    row-gap: var(--horizontalMargin);
}

.teasersInline.gridBlocks-3-inline {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.teasersInline.gridBlocks-2-inline {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

/********* Teaser Image *********/

.teaserInlineImage {
    line-height: 0;
}

.teasersInline .teaserInlineImage {
    aspect-ratio: 2/3;
    overflow: hidden;
}

.teasersInline .teaserInlineImage::before {
    background: var(--colorDark);
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 1;
    opacity: .5;
    transition: var(--transition);
    pointer-events: none;
}

.teasersInline .teaserInline:hover .teaserInlineImage video,
.teasersInline .teaserInline:hover .teaserInlineImage img {
    transform: scale(1.05);
}

.teaserInlineImage a:not(.teaserInlineGalleryIcon) {
    height: 100%;
    width: 100%;
}

.teaserInlineImage picture > img,
.teaserInlineImage video {
    display: block;
    transition: 0.2s ease-out;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/********* Teaser Content *********/

.teasersInline .teaserInlineContent {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 75%;
    color: var(--colorReset);
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 5;
    pointer-events: none;
}

.teaserContent {
    padding: var(--horizontalMargin) calc(var(--horizontalMargin) / 2);
}

.teaserInlineTitle {
    margin-bottom: .25rem;
    transition: var(--transition);
}

.teaserInlineLinks {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
}

.teaser.textAlignCenter .teaserLinks {
    justify-content: center;
}

.teaserInlineText *:last-child {
    margin-bottom: 0;
}

.teasersInline .teaserInlineText {
    /* font-size: var(--fontSizeBodySmall); */
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    line-height: 1.25em;
    transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1), max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.teasersInline .teaserInline:hover .teaserInlineText {
    opacity: 1;
    max-height: calc((var(--fontSizeBody) * 1.25) * 8);
    text-overflow: ellipsis;
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), max-height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

@media screen and (max-width: 768px) {
    .teasersInline .teaserInlineContent {
        width: 90%;
    }
}

@media screen and (max-width: 760px) {

    .teasersInline.gridBlocks-2-inline,
    .teasersInline.gridBlocks-3-inline {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .teasersInline .teaserInlineImage {
        aspect-ratio: 16/9;
    }

    .teasersInline .teaserInlineContent {
        width: 80%;
    }
}

/********* Teaser Layout *********/

article[data-block-type="teaser-gridBlocks-2"] .wrapper,
article[data-block-type="teaser-gridBlocks-3"] .wrapper,
article[data-block-type="teaser-gridBlocks-4"] .wrapper{
    overflow: visible;
}

.teasersGrid.gridBlocks {
    text-align: left;
    row-gap: var(--horizontalMargin);
}

/********* Teaser Image *********/

.teaserGridImage {
    line-height: 0;
    border-radius: 5px;
    overflow: hidden;
}

.teasersGrid .teaserGridImage {
    aspect-ratio: 1/1;
    height: auto;
}

.teasersGrid:has(.ar-1-1) .teaserGridImage {
    aspect-ratio: 1/1;
}

.teasersGrid:has(.ar-3-4) .teaserGridImage {
    aspect-ratio: 3/4;
}

.teasersGrid:has(.ar-4-3) .teaserGridImage {
    aspect-ratio: 4/3;
}

.teaserGrid a:hover h3 {
    color: var(--colorHighlight);
}

.highlight .teaserGrid a:hover h3 {
    color: var(--colorDark);
}

.teaserGrid > div.teaserGridImage.imgEffect::after,
.teaserGrid > div.teaserGridImage.imgEffect::before {
    display: none;
}

.teaserGridImage picture > img,
.teaserGridImage video {
    display: block;
    transition: 0.2s ease-out;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/********* Teaser Content *********/

.teaserGridContent {
    padding-top: 1.5rem;
    color: var(--colorDark);
}

.highlight .teaserGridContent,
.dark .teaserGridContent {
    color: var(--colorReset);
}

.teaserContent {
    padding: var(--horizontalMargin) calc(var(--horizontalMargin) / 2);
}

.teaserGridTitle {
    margin-bottom: .5rem;
    transition: var(--transition);
}

.teaserGridLinks {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: left;
    margin-top: 1rem;
    gap: var(--buttonMargin);
}

.teaser.textAlignCenter .teaserLinks {
    justify-content: center;
}

.teaserGridText *:last-child {
    margin-bottom: 0;
}

.teaserGridLinks .lineButton,
.teaserGridLinks a.lineButton {
    margin-top: var(--layoutMargin);
}

/********* Color Variants *********/

@media screen and (max-width: 1200px) {
    .teasersGrid.gridBlocks {
        row-gap: calc(var(--horizontalMargin)*2);
    }
}

@media screen and (max-width: 600px) {
    .teasersGrid.gridBlocks {
        row-gap: calc(var(--horizontalMargin)*4);
    }
}

/********* Color Variants *********/

.highlight .teaserGridTitle.hoverActive {
    color: var(--colorDarkGray);
}

/********* Layout *********/

article[data-block-type="teaser-teaserSlider"] {
    overflow: hidden;
}

article[data-block-type="teaser-teaserSlider"] > div {
    overflow: visible;
    clip-path: inset(-100vw -100vw -100vw 0);
}

article[data-block-type="teaser-teaserSlider"] .blockTopline,
article[data-block-type="teaser-teaserSlider"] .blockTitle,
article[data-block-type="teaser-teaserSlider"] .blockText {
    width: 65.5%;
}

/********* Teaser Slider *********/

.teaserSliders .splide__track {
    overflow: visible;
}

.teaserSliders .splide__slide {
    opacity: .3 !important;
    overflow: visible;
    transition: var(--transition);
}

.teaserSliders .splide__slide.is-visible {
    opacity: 1 !important;
}

.teaserSliders .splide__arrows {
    display: none !important;
    top: 0;
    transform: translateY(calc((100% + var(--horizontalMargin)) * -0.7));
    width: auto;
    left: unset;
    right: 0;
    display: flex;
}

.teaserSliders .splide__arrow {
    font-size: 20px;
    height: 1em;
    width: 1em;
    color: var(--colorHighlight);
    background: unset;
    opacity: 1;
    padding: 10px;
    box-sizing: content-box;
    border: 2px solid currentColor;
}

.dark .teaserSliders .splide__arrow,
.highlight .teaserSliders .splide__arrow {
    color: var(--colorYellow);
}

.teaserSliders .splide__arrow:disabled {
    opacity: 0.3;
}

.teaserSliders .splide__arrow--prev {
    left: 0;
    transform: unset;
    top: 0;
    position: relative;
    margin-right: 10px;
}

.teaserSliders .splide__arrow--next {
    right: 0;
    transform: unset;
    top: 0;
    position: relative;
    margin-left: 10px;
}

.teaserSliders .splide__pagination {
    /* display: none; */
    position: absolute;
    top: 0;
    transform: translateY(calc((100% + var(--horizontalMargin)) * -0.7));
    left: unset;
    right: 0;
    display: flex;
    max-width: 30%;
}

[dir="rtl"] .teaserSliders .splide__arrows {
    left: 0;
    right: unset;
    flex-direction: row-reverse;
}

[dir="rtl"] .teaserSliders .splide__arrow--prev {
    right: unset;
}

[dir="rtl"] .teaserSliders .splide__arrow--next {
    left: unset;
}

/********* Teaser Category *********/

.teaserSlider .teaserCategory {
    position: absolute;
    top: 0;
    /*! width: 100%; */
    z-index: 2;
    transform: translateY(-50%) rotate(-5deg);
    padding: 0 calc(var(--layoutMargin) * 0.75);
    color: var(--colorHighlight);
}

.teaserSlider video {
    z-index: -1;
}

/********* Teaser Read more *********/

.teaserSliders .teaserSliderReadMore {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, calc(-50% + 40px));
    width: 100%;
    padding: 0 20px;
    text-align: center;
    z-index: 1;
    transition: var(--transition);
}

.teaserSliders a:hover > .teaserSliderReadMore {
    opacity: 1;
    color: var(--colorHighlight);
}

/********* Teaser Image *********/

.teaserSliders .teaserSliderImage {
    border-radius: 5px;
    overflow: hidden;
    line-height: 0;
    aspect-ratio: 1/1;
}

.teaserSliders .teaserSliderImage.noGradient::before {
    display: none;
}

.teaserSliderImage a:not(.teaserSliderGalleryIcon) {
    height: 100%;
    width: 100%;
    overflow: visible;
}

.teaserSliderImage picture > img,
.teaserSliderImage video {
    display: block;
    transition: 0.2s ease-out;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.teaserSliderGalleryIcon {
    display: block;
    position: absolute;
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 25px;
    z-index: 101;
    text-align: center;
    color: var(--colorReset);
    top: 0;
    right: 0;
}

.teaserSliderGalleryIcon i {
    color: var(--colorReset);
    z-index: 3;
    text-align: center;
    transition: var(--transition);
}

.teaserSliderGalleryIcon:hover i {
    color: var(--colorHighlightHover);
}

.multiImageGradiant {
    height: 100%;
    width: 100%;
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    background-image: linear-gradient(-145deg, rgba(var(--colorDarkRGB), 0.8) 0%, rgba(var(--colorDarkRGB), 0.02) 30%, rgba(var(--colorDarkRGB), 0) 50%);
    pointer-events: none;
}

/********* Teaser Content *********/

.teaserSliderContent {
    padding-top: 2rem;
}

.teaserContent {
    padding: var(--horizontalMargin) calc(var(--horizontalMargin) / 2);
}

.teaserSliderTitle {
    transition: var(--transition);
}

.reset .teaserSliders a,
.muted .teaserSliders a {
    color: var(--colorDark);
}

.reset .teaserSliders a:hover,
.muted .teaserSliders a:hover {
    color: var(--colorHighlight);
}

.teaserSliderLinks {
    pointer-events: none;
    opacity: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    margin-top: var(--buttonMargin);
    transition: var(--transition);
    gap: 1rem;
}

.teaserSlider:has(.imgEffectTrigger:hover) .teaserSliderLinks {
    opacity: 1;
}

.teaserSlider:has(.imgEffectTrigger:hover) .button span:first-child {
    width: 35px;
}

.teaser.textAlignCenter .teaserLinks {
    justify-content: center;
}

.teaserSliderText *:last-child {
    margin-bottom: 0;
}

.imgEffectTrigger:hover .teaserSliderText {
    color: var(--colorDark);
}

.highlight .imgEffectTrigger:hover .teaserSliderText,
.dark .imgEffectTrigger:hover .teaserSliderText {
    color: var(--colorReset);
}

/********* Color Variants *********/

.highlight .teaserSliderTitle.hoverActive {
    color: var(--colorDarkGray);
}

/********* Responsive *********/

@media only screen and (max-width: 1200px) {
    .teaserSliders .splide__pagination {
        width: 30%;
    }
}

@media only screen and (max-width: 900px) {
    .teaserSliders .splide__pagination {
        width: 125px;
    }
}

@media only screen and (max-width: 760px) {

    article[data-block-type="teaser-teaserSlider"] .blockTopline,
    article[data-block-type="teaser-teaserSlider"] .blockTitle,
    article[data-block-type="teaser-teaserSlider"] .blockText {
        width: 100%;
    }

    .teaserSliders.blockContent {
        margin-top: 5rem;
    }

    .teaserSliders .splide__pagination {
        width: 100%;
        max-width: unset;
        transform: translateY(-2.5rem);
    }
}

/********* Teaser Overlap *********/

article[data-block-type="teaser-teaserLeftRight"] .verticalPadding:has(.teaserOverlap) {
    padding-top: 0;
}

article[data-block-type="teaser-teaserLeftRight"] .wrapper:has(.teaserOverlap) {
    overflow: visible;
}

article[data-block-type="teaser-teaserLeftRight"] .wrapperInner:has(.teaserOverlap) {
    margin-bottom: calc(var(--verticalPadding) * -0.5);
    transform: translateY(calc(var(--verticalPadding) * -0.5));
}

@media screen and (min-width: 769px) {
    article[data-block-type="teaser-teaserLeftRight"] .wrapperInner:has(.teaserOverlap) .teaserLeftRightContent {
        padding-top: calc(var(--verticalPadding) * 0.5);
    }
}

/********* Layout *********/

.teasersLeftRight .gridBlocks-2 {
    display: grid;
    /* grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); */
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-gap: var(--layoutMargin);
}

/* .teasersLeftRight .gridBlocks-2:nth-of-type(even) {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
} */

.teasersLeftRight .gridBlocks-2:not(:first-of-type) {
    margin-top: var(--verticalPadding);
}

.teasersLeftRight .gridBlocks-2:nth-of-type(even) > div:first-of-type {
    order: 2;
}

.teasersLeftRight .gridBlocks-2:nth-of-type(even) > div:last-of-type {
    order: 1;
}

/*** teaserAlternate / Bild start rechts ***/

/* .teasersLeftRight.teaserAlternate .gridBlocks-2 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
}

.teasersLeftRight.teaserAlternate .gridBlocks-2:nth-of-type(even) {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
} */

.teasersLeftRight.teaserAlternate .gridBlocks-2 > div:first-of-type {
    order: 2;
}

.teasersLeftRight.teaserAlternate .gridBlocks-2 > div:last-of-type {
    order: 1;
}

.teasersLeftRight.teaserAlternate .gridBlocks-2:nth-of-type(even) > div:first-of-type {
    order: 1;
}

.teasersLeftRight.teaserAlternate .gridBlocks-2:nth-of-type(even) > div:last-of-type {
    order: 2;
}

/********* Teaser Image *********/

.teasersLeftRight .teaserLeftRightImg a:not(.button) {
    display: block;
    width: 100%;
    height: 100%;
    transition: var(--transition);
}

.teasersLeftRight .teaserLeftRight .imgEffect {
    height: 100%;
    width: 100%;
}

.teasersLeftRight .teaserLeftRight img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: var(--transition);
}

.teasersLeftRight .teaserLeftRightImg {
    aspect-ratio: 1/1;
    max-width: 100%;
    border-radius: 5px;
    overflow: hidden;
}

/********* Teaser Text / Content *********/

.teasersLeftRight .teaserLeftRightContent {
    padding-top: var(--layoutMargin);
}

.teasersLeftRight .teaserLeftRightContent .teaserContentWrapper > div {
    margin-bottom: 0;
    margin-top: 1.5em;
    height: max-content;
}

.teasersLeftRight .teaserLeftRightContent .teaserLinks {
    display: flex;
    flex-direction: column;
    gap: var(--buttonMargin);
}

/********* splide *********/

.teasersLeftRight .splideShadow {
    pointer-events: none;
    z-index: 10;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 85%, rgba(0, 0, 0, .6) 100%);
}

.teasersLeftRight .splide__arrows {
    display: block !important;
    z-index: 20;
    bottom: unset;
    top: 1rem;
    right: unset;
    left: 50%;
    transform: translateX(-50%);
    transition: var(--transition);
    width: 200px;
    color: var(--colorReset);
}

.teasersLeftRight .splide__arrow {
    background: transparent;
    height: 3em;
    opacity: 1;
}

.teasersLeftRight .splide__arrow svg,
.teasersLeftRight .splide__arrow svg path {
    stroke-width: 2px;
}

.teasersLeftRight .splide__arrow svg {
    height: 1.7em;
    width: 1.7em;
    opacity: 1;
    transition: var(--transition);
    color: var(--colorReset);
}

.teasersLeftRight .splide__arrow:hover svg {
    color: var(--colorHighlight);
}

.teasersLeftRight .splide__arrow--next {
    right: 0;
}

.teasersLeftRight .splide__arrow--prev {
    left: 0;
}

.teasersLeftRight .slideNumberCurrent {
    margin: auto;
    width: max-content;
}

.teasersLeftRight .splide__pagination {
    display: none;

    /*left: 50%;*/
    right: 0;
    flex-direction: revert;
    bottom: .5em;
    top: auto;
    /*transform: translateX(-50%);*/
    width: 100%;
    justify-content: center;
}

/********* Responsive *********/

/*
@media screen and (max-width: 1024px) {
    .teasersLeftRight .gridBlocks-2 {
        grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    }

    .teasersLeftRight .gridBlocks-2:nth-of-type(even) {
        grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    }

    .teasersLeftRight.teaserAlternate .gridBlocks-2 {
        grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    }

    .teasersLeftRight.teaserAlternate .gridBlocks-2:nth-of-type(even) {
        grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    }
} */

@media screen and (max-width: 768px) {
    .teasersLeftRight .gridBlocks-2 {
        grid-template-columns: minmax(0, 1fr);
        grid-gap: calc(var(--layoutMargin) * 1.5);
    }

    .teasersLeftRight.teaserAlternate .gridBlocks-2,
    .teasersLeftRight.teaserAlternate .gridBlocks-2:nth-of-type(even),
    .teasersLeftRight .gridBlocks-2:nth-of-type(even) {
        grid-template-columns: minmax(0, 1fr);
    }

    .teasersLeftRight .gridBlocks-2:nth-of-type(odd) > div:first-of-type,
    .teasersLeftRight .gridBlocks-2:nth-of-type(even) > div:first-of-type {
        order: 2;
    }

    .teasersLeftRight .gridBlocks-2:nth-of-type(odd) > div:last-of-type,
    .teasersLeftRight .gridBlocks-2:nth-of-type(even) > div:last-of-type {
        order: 1;
    }

    .teasersLeftRight.teaserAlternate .gridBlocks-2 > div:first-of-type,
    .teasersLeftRight.teaserAlternate .gridBlocks-2:nth-of-type(even) > div:first-of-type {
        order: 2;
    }

    .teasersLeftRight.teaserAlternate .gridBlocks-2 > div:last-of-type,
    .teasersLeftRight.teaserAlternate .gridBlocks-2:nth-of-type(even) > div:last-of-type {
        order: 1;
    }

    .teasersLeftRight .teaserLeftRightContent {
        padding-top: 0;
    }

    .teasersLeftRight .teaserLeftRightImg {
        max-width: 400px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 600px) {
    .teasersLeftRight .teaserLeftRightContent .teaserContentWrapper > div {
        margin-top: 1rem;
    }

    .teasersLeftRight .gridBlocks-2 {
        grid-gap: calc(var(--layoutMargin) * 2);
    }
}
[data-modal] {
    opacity: 0;
    transition: var(--transition);
}

[data-modal-status="open"] {
    opacity: 1;
}
[data-aos][data-aos][data-aos-duration="50"],body[data-aos-duration="50"] [data-aos]{transition-duration:50ms}[data-aos][data-aos][data-aos-delay="50"],body[data-aos-delay="50"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="50"].aos-animate,body[data-aos-delay="50"] [data-aos].aos-animate{transition-delay:50ms}[data-aos][data-aos][data-aos-duration="100"],body[data-aos-duration="100"] [data-aos]{transition-duration:.1s}[data-aos][data-aos][data-aos-delay="100"],body[data-aos-delay="100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="100"].aos-animate,body[data-aos-delay="100"] [data-aos].aos-animate{transition-delay:.1s}[data-aos][data-aos][data-aos-duration="150"],body[data-aos-duration="150"] [data-aos]{transition-duration:.15s}[data-aos][data-aos][data-aos-delay="150"],body[data-aos-delay="150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="150"].aos-animate,body[data-aos-delay="150"] [data-aos].aos-animate{transition-delay:.15s}[data-aos][data-aos][data-aos-duration="200"],body[data-aos-duration="200"] [data-aos]{transition-duration:.2s}[data-aos][data-aos][data-aos-delay="200"],body[data-aos-delay="200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="200"].aos-animate,body[data-aos-delay="200"] [data-aos].aos-animate{transition-delay:.2s}[data-aos][data-aos][data-aos-duration="250"],body[data-aos-duration="250"] [data-aos]{transition-duration:.25s}[data-aos][data-aos][data-aos-delay="250"],body[data-aos-delay="250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="250"].aos-animate,body[data-aos-delay="250"] [data-aos].aos-animate{transition-delay:.25s}[data-aos][data-aos][data-aos-duration="300"],body[data-aos-duration="300"] [data-aos]{transition-duration:.3s}[data-aos][data-aos][data-aos-delay="300"],body[data-aos-delay="300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="300"].aos-animate,body[data-aos-delay="300"] [data-aos].aos-animate{transition-delay:.3s}[data-aos][data-aos][data-aos-duration="350"],body[data-aos-duration="350"] [data-aos]{transition-duration:.35s}[data-aos][data-aos][data-aos-delay="350"],body[data-aos-delay="350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="350"].aos-animate,body[data-aos-delay="350"] [data-aos].aos-animate{transition-delay:.35s}[data-aos][data-aos][data-aos-duration="400"],body[data-aos-duration="400"] [data-aos]{transition-duration:.4s}[data-aos][data-aos][data-aos-delay="400"],body[data-aos-delay="400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="400"].aos-animate,body[data-aos-delay="400"] [data-aos].aos-animate{transition-delay:.4s}[data-aos][data-aos][data-aos-duration="450"],body[data-aos-duration="450"] [data-aos]{transition-duration:.45s}[data-aos][data-aos][data-aos-delay="450"],body[data-aos-delay="450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="450"].aos-animate,body[data-aos-delay="450"] [data-aos].aos-animate{transition-delay:.45s}[data-aos][data-aos][data-aos-duration="500"],body[data-aos-duration="500"] [data-aos]{transition-duration:.5s}[data-aos][data-aos][data-aos-delay="500"],body[data-aos-delay="500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="500"].aos-animate,body[data-aos-delay="500"] [data-aos].aos-animate{transition-delay:.5s}[data-aos][data-aos][data-aos-duration="550"],body[data-aos-duration="550"] [data-aos]{transition-duration:.55s}[data-aos][data-aos][data-aos-delay="550"],body[data-aos-delay="550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="550"].aos-animate,body[data-aos-delay="550"] [data-aos].aos-animate{transition-delay:.55s}[data-aos][data-aos][data-aos-duration="600"],body[data-aos-duration="600"] [data-aos]{transition-duration:.6s}[data-aos][data-aos][data-aos-delay="600"],body[data-aos-delay="600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="600"].aos-animate,body[data-aos-delay="600"] [data-aos].aos-animate{transition-delay:.6s}[data-aos][data-aos][data-aos-duration="650"],body[data-aos-duration="650"] [data-aos]{transition-duration:.65s}[data-aos][data-aos][data-aos-delay="650"],body[data-aos-delay="650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="650"].aos-animate,body[data-aos-delay="650"] [data-aos].aos-animate{transition-delay:.65s}[data-aos][data-aos][data-aos-duration="700"],body[data-aos-duration="700"] [data-aos]{transition-duration:.7s}[data-aos][data-aos][data-aos-delay="700"],body[data-aos-delay="700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="700"].aos-animate,body[data-aos-delay="700"] [data-aos].aos-animate{transition-delay:.7s}[data-aos][data-aos][data-aos-duration="750"],body[data-aos-duration="750"] [data-aos]{transition-duration:.75s}[data-aos][data-aos][data-aos-delay="750"],body[data-aos-delay="750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="750"].aos-animate,body[data-aos-delay="750"] [data-aos].aos-animate{transition-delay:.75s}[data-aos][data-aos][data-aos-duration="800"],body[data-aos-duration="800"] [data-aos]{transition-duration:.8s}[data-aos][data-aos][data-aos-delay="800"],body[data-aos-delay="800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="800"].aos-animate,body[data-aos-delay="800"] [data-aos].aos-animate{transition-delay:.8s}[data-aos][data-aos][data-aos-duration="850"],body[data-aos-duration="850"] [data-aos]{transition-duration:.85s}[data-aos][data-aos][data-aos-delay="850"],body[data-aos-delay="850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="850"].aos-animate,body[data-aos-delay="850"] [data-aos].aos-animate{transition-delay:.85s}[data-aos][data-aos][data-aos-duration="900"],body[data-aos-duration="900"] [data-aos]{transition-duration:.9s}[data-aos][data-aos][data-aos-delay="900"],body[data-aos-delay="900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="900"].aos-animate,body[data-aos-delay="900"] [data-aos].aos-animate{transition-delay:.9s}[data-aos][data-aos][data-aos-duration="950"],body[data-aos-duration="950"] [data-aos]{transition-duration:.95s}[data-aos][data-aos][data-aos-delay="950"],body[data-aos-delay="950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="950"].aos-animate,body[data-aos-delay="950"] [data-aos].aos-animate{transition-delay:.95s}[data-aos][data-aos][data-aos-duration="1000"],body[data-aos-duration="1000"] [data-aos]{transition-duration:1s}[data-aos][data-aos][data-aos-delay="1000"],body[data-aos-delay="1000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1000"].aos-animate,body[data-aos-delay="1000"] [data-aos].aos-animate{transition-delay:1s}[data-aos][data-aos][data-aos-duration="1050"],body[data-aos-duration="1050"] [data-aos]{transition-duration:1.05s}[data-aos][data-aos][data-aos-delay="1050"],body[data-aos-delay="1050"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1050"].aos-animate,body[data-aos-delay="1050"] [data-aos].aos-animate{transition-delay:1.05s}[data-aos][data-aos][data-aos-duration="1100"],body[data-aos-duration="1100"] [data-aos]{transition-duration:1.1s}[data-aos][data-aos][data-aos-delay="1100"],body[data-aos-delay="1100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1100"].aos-animate,body[data-aos-delay="1100"] [data-aos].aos-animate{transition-delay:1.1s}[data-aos][data-aos][data-aos-duration="1150"],body[data-aos-duration="1150"] [data-aos]{transition-duration:1.15s}[data-aos][data-aos][data-aos-delay="1150"],body[data-aos-delay="1150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1150"].aos-animate,body[data-aos-delay="1150"] [data-aos].aos-animate{transition-delay:1.15s}[data-aos][data-aos][data-aos-duration="1200"],body[data-aos-duration="1200"] [data-aos]{transition-duration:1.2s}[data-aos][data-aos][data-aos-delay="1200"],body[data-aos-delay="1200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1200"].aos-animate,body[data-aos-delay="1200"] [data-aos].aos-animate{transition-delay:1.2s}[data-aos][data-aos][data-aos-duration="1250"],body[data-aos-duration="1250"] [data-aos]{transition-duration:1.25s}[data-aos][data-aos][data-aos-delay="1250"],body[data-aos-delay="1250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1250"].aos-animate,body[data-aos-delay="1250"] [data-aos].aos-animate{transition-delay:1.25s}[data-aos][data-aos][data-aos-duration="1300"],body[data-aos-duration="1300"] [data-aos]{transition-duration:1.3s}[data-aos][data-aos][data-aos-delay="1300"],body[data-aos-delay="1300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1300"].aos-animate,body[data-aos-delay="1300"] [data-aos].aos-animate{transition-delay:1.3s}[data-aos][data-aos][data-aos-duration="1350"],body[data-aos-duration="1350"] [data-aos]{transition-duration:1.35s}[data-aos][data-aos][data-aos-delay="1350"],body[data-aos-delay="1350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1350"].aos-animate,body[data-aos-delay="1350"] [data-aos].aos-animate{transition-delay:1.35s}[data-aos][data-aos][data-aos-duration="1400"],body[data-aos-duration="1400"] [data-aos]{transition-duration:1.4s}[data-aos][data-aos][data-aos-delay="1400"],body[data-aos-delay="1400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1400"].aos-animate,body[data-aos-delay="1400"] [data-aos].aos-animate{transition-delay:1.4s}[data-aos][data-aos][data-aos-duration="1450"],body[data-aos-duration="1450"] [data-aos]{transition-duration:1.45s}[data-aos][data-aos][data-aos-delay="1450"],body[data-aos-delay="1450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1450"].aos-animate,body[data-aos-delay="1450"] [data-aos].aos-animate{transition-delay:1.45s}[data-aos][data-aos][data-aos-duration="1500"],body[data-aos-duration="1500"] [data-aos]{transition-duration:1.5s}[data-aos][data-aos][data-aos-delay="1500"],body[data-aos-delay="1500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1500"].aos-animate,body[data-aos-delay="1500"] [data-aos].aos-animate{transition-delay:1.5s}[data-aos][data-aos][data-aos-duration="1550"],body[data-aos-duration="1550"] [data-aos]{transition-duration:1.55s}[data-aos][data-aos][data-aos-delay="1550"],body[data-aos-delay="1550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1550"].aos-animate,body[data-aos-delay="1550"] [data-aos].aos-animate{transition-delay:1.55s}[data-aos][data-aos][data-aos-duration="1600"],body[data-aos-duration="1600"] [data-aos]{transition-duration:1.6s}[data-aos][data-aos][data-aos-delay="1600"],body[data-aos-delay="1600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1600"].aos-animate,body[data-aos-delay="1600"] [data-aos].aos-animate{transition-delay:1.6s}[data-aos][data-aos][data-aos-duration="1650"],body[data-aos-duration="1650"] [data-aos]{transition-duration:1.65s}[data-aos][data-aos][data-aos-delay="1650"],body[data-aos-delay="1650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1650"].aos-animate,body[data-aos-delay="1650"] [data-aos].aos-animate{transition-delay:1.65s}[data-aos][data-aos][data-aos-duration="1700"],body[data-aos-duration="1700"] [data-aos]{transition-duration:1.7s}[data-aos][data-aos][data-aos-delay="1700"],body[data-aos-delay="1700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1700"].aos-animate,body[data-aos-delay="1700"] [data-aos].aos-animate{transition-delay:1.7s}[data-aos][data-aos][data-aos-duration="1750"],body[data-aos-duration="1750"] [data-aos]{transition-duration:1.75s}[data-aos][data-aos][data-aos-delay="1750"],body[data-aos-delay="1750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1750"].aos-animate,body[data-aos-delay="1750"] [data-aos].aos-animate{transition-delay:1.75s}[data-aos][data-aos][data-aos-duration="1800"],body[data-aos-duration="1800"] [data-aos]{transition-duration:1.8s}[data-aos][data-aos][data-aos-delay="1800"],body[data-aos-delay="1800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1800"].aos-animate,body[data-aos-delay="1800"] [data-aos].aos-animate{transition-delay:1.8s}[data-aos][data-aos][data-aos-duration="1850"],body[data-aos-duration="1850"] [data-aos]{transition-duration:1.85s}[data-aos][data-aos][data-aos-delay="1850"],body[data-aos-delay="1850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1850"].aos-animate,body[data-aos-delay="1850"] [data-aos].aos-animate{transition-delay:1.85s}[data-aos][data-aos][data-aos-duration="1900"],body[data-aos-duration="1900"] [data-aos]{transition-duration:1.9s}[data-aos][data-aos][data-aos-delay="1900"],body[data-aos-delay="1900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1900"].aos-animate,body[data-aos-delay="1900"] [data-aos].aos-animate{transition-delay:1.9s}[data-aos][data-aos][data-aos-duration="1950"],body[data-aos-duration="1950"] [data-aos]{transition-duration:1.95s}[data-aos][data-aos][data-aos-delay="1950"],body[data-aos-delay="1950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="1950"].aos-animate,body[data-aos-delay="1950"] [data-aos].aos-animate{transition-delay:1.95s}[data-aos][data-aos][data-aos-duration="2000"],body[data-aos-duration="2000"] [data-aos]{transition-duration:2s}[data-aos][data-aos][data-aos-delay="2000"],body[data-aos-delay="2000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2000"].aos-animate,body[data-aos-delay="2000"] [data-aos].aos-animate{transition-delay:2s}[data-aos][data-aos][data-aos-duration="2050"],body[data-aos-duration="2050"] [data-aos]{transition-duration:2.05s}[data-aos][data-aos][data-aos-delay="2050"],body[data-aos-delay="2050"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2050"].aos-animate,body[data-aos-delay="2050"] [data-aos].aos-animate{transition-delay:2.05s}[data-aos][data-aos][data-aos-duration="2100"],body[data-aos-duration="2100"] [data-aos]{transition-duration:2.1s}[data-aos][data-aos][data-aos-delay="2100"],body[data-aos-delay="2100"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2100"].aos-animate,body[data-aos-delay="2100"] [data-aos].aos-animate{transition-delay:2.1s}[data-aos][data-aos][data-aos-duration="2150"],body[data-aos-duration="2150"] [data-aos]{transition-duration:2.15s}[data-aos][data-aos][data-aos-delay="2150"],body[data-aos-delay="2150"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2150"].aos-animate,body[data-aos-delay="2150"] [data-aos].aos-animate{transition-delay:2.15s}[data-aos][data-aos][data-aos-duration="2200"],body[data-aos-duration="2200"] [data-aos]{transition-duration:2.2s}[data-aos][data-aos][data-aos-delay="2200"],body[data-aos-delay="2200"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2200"].aos-animate,body[data-aos-delay="2200"] [data-aos].aos-animate{transition-delay:2.2s}[data-aos][data-aos][data-aos-duration="2250"],body[data-aos-duration="2250"] [data-aos]{transition-duration:2.25s}[data-aos][data-aos][data-aos-delay="2250"],body[data-aos-delay="2250"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2250"].aos-animate,body[data-aos-delay="2250"] [data-aos].aos-animate{transition-delay:2.25s}[data-aos][data-aos][data-aos-duration="2300"],body[data-aos-duration="2300"] [data-aos]{transition-duration:2.3s}[data-aos][data-aos][data-aos-delay="2300"],body[data-aos-delay="2300"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2300"].aos-animate,body[data-aos-delay="2300"] [data-aos].aos-animate{transition-delay:2.3s}[data-aos][data-aos][data-aos-duration="2350"],body[data-aos-duration="2350"] [data-aos]{transition-duration:2.35s}[data-aos][data-aos][data-aos-delay="2350"],body[data-aos-delay="2350"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2350"].aos-animate,body[data-aos-delay="2350"] [data-aos].aos-animate{transition-delay:2.35s}[data-aos][data-aos][data-aos-duration="2400"],body[data-aos-duration="2400"] [data-aos]{transition-duration:2.4s}[data-aos][data-aos][data-aos-delay="2400"],body[data-aos-delay="2400"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2400"].aos-animate,body[data-aos-delay="2400"] [data-aos].aos-animate{transition-delay:2.4s}[data-aos][data-aos][data-aos-duration="2450"],body[data-aos-duration="2450"] [data-aos]{transition-duration:2.45s}[data-aos][data-aos][data-aos-delay="2450"],body[data-aos-delay="2450"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2450"].aos-animate,body[data-aos-delay="2450"] [data-aos].aos-animate{transition-delay:2.45s}[data-aos][data-aos][data-aos-duration="2500"],body[data-aos-duration="2500"] [data-aos]{transition-duration:2.5s}[data-aos][data-aos][data-aos-delay="2500"],body[data-aos-delay="2500"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2500"].aos-animate,body[data-aos-delay="2500"] [data-aos].aos-animate{transition-delay:2.5s}[data-aos][data-aos][data-aos-duration="2550"],body[data-aos-duration="2550"] [data-aos]{transition-duration:2.55s}[data-aos][data-aos][data-aos-delay="2550"],body[data-aos-delay="2550"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2550"].aos-animate,body[data-aos-delay="2550"] [data-aos].aos-animate{transition-delay:2.55s}[data-aos][data-aos][data-aos-duration="2600"],body[data-aos-duration="2600"] [data-aos]{transition-duration:2.6s}[data-aos][data-aos][data-aos-delay="2600"],body[data-aos-delay="2600"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2600"].aos-animate,body[data-aos-delay="2600"] [data-aos].aos-animate{transition-delay:2.6s}[data-aos][data-aos][data-aos-duration="2650"],body[data-aos-duration="2650"] [data-aos]{transition-duration:2.65s}[data-aos][data-aos][data-aos-delay="2650"],body[data-aos-delay="2650"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2650"].aos-animate,body[data-aos-delay="2650"] [data-aos].aos-animate{transition-delay:2.65s}[data-aos][data-aos][data-aos-duration="2700"],body[data-aos-duration="2700"] [data-aos]{transition-duration:2.7s}[data-aos][data-aos][data-aos-delay="2700"],body[data-aos-delay="2700"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2700"].aos-animate,body[data-aos-delay="2700"] [data-aos].aos-animate{transition-delay:2.7s}[data-aos][data-aos][data-aos-duration="2750"],body[data-aos-duration="2750"] [data-aos]{transition-duration:2.75s}[data-aos][data-aos][data-aos-delay="2750"],body[data-aos-delay="2750"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2750"].aos-animate,body[data-aos-delay="2750"] [data-aos].aos-animate{transition-delay:2.75s}[data-aos][data-aos][data-aos-duration="2800"],body[data-aos-duration="2800"] [data-aos]{transition-duration:2.8s}[data-aos][data-aos][data-aos-delay="2800"],body[data-aos-delay="2800"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2800"].aos-animate,body[data-aos-delay="2800"] [data-aos].aos-animate{transition-delay:2.8s}[data-aos][data-aos][data-aos-duration="2850"],body[data-aos-duration="2850"] [data-aos]{transition-duration:2.85s}[data-aos][data-aos][data-aos-delay="2850"],body[data-aos-delay="2850"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2850"].aos-animate,body[data-aos-delay="2850"] [data-aos].aos-animate{transition-delay:2.85s}[data-aos][data-aos][data-aos-duration="2900"],body[data-aos-duration="2900"] [data-aos]{transition-duration:2.9s}[data-aos][data-aos][data-aos-delay="2900"],body[data-aos-delay="2900"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2900"].aos-animate,body[data-aos-delay="2900"] [data-aos].aos-animate{transition-delay:2.9s}[data-aos][data-aos][data-aos-duration="2950"],body[data-aos-duration="2950"] [data-aos]{transition-duration:2.95s}[data-aos][data-aos][data-aos-delay="2950"],body[data-aos-delay="2950"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="2950"].aos-animate,body[data-aos-delay="2950"] [data-aos].aos-animate{transition-delay:2.95s}[data-aos][data-aos][data-aos-duration="3000"],body[data-aos-duration="3000"] [data-aos]{transition-duration:3s}[data-aos][data-aos][data-aos-delay="3000"],body[data-aos-delay="3000"] [data-aos]{transition-delay:0s}[data-aos][data-aos][data-aos-delay="3000"].aos-animate,body[data-aos-delay="3000"] [data-aos].aos-animate{transition-delay:3s}[data-aos]{pointer-events:none}[data-aos].aos-animate{pointer-events:auto}[data-aos][data-aos][data-aos-easing=linear],body[data-aos-easing=linear] [data-aos]{transition-timing-function:cubic-bezier(.25,.25,.75,.75)}[data-aos][data-aos][data-aos-easing=ease],body[data-aos-easing=ease] [data-aos]{transition-timing-function:ease}[data-aos][data-aos][data-aos-easing=ease-in],body[data-aos-easing=ease-in] [data-aos]{transition-timing-function:ease-in}[data-aos][data-aos][data-aos-easing=ease-out],body[data-aos-easing=ease-out] [data-aos]{transition-timing-function:ease-out}[data-aos][data-aos][data-aos-easing=ease-in-out],body[data-aos-easing=ease-in-out] [data-aos]{transition-timing-function:ease-in-out}[data-aos][data-aos][data-aos-easing=ease-in-back],body[data-aos-easing=ease-in-back] [data-aos]{transition-timing-function:cubic-bezier(.6,-.28,.735,.045)}[data-aos][data-aos][data-aos-easing=ease-out-back],body[data-aos-easing=ease-out-back] [data-aos]{transition-timing-function:cubic-bezier(.175,.885,.32,1.275)}[data-aos][data-aos][data-aos-easing=ease-in-out-back],body[data-aos-easing=ease-in-out-back] [data-aos]{transition-timing-function:cubic-bezier(.68,-.55,.265,1.55)}[data-aos][data-aos][data-aos-easing=ease-in-sine],body[data-aos-easing=ease-in-sine] [data-aos]{transition-timing-function:cubic-bezier(.47,0,.745,.715)}[data-aos][data-aos][data-aos-easing=ease-out-sine],body[data-aos-easing=ease-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.39,.575,.565,1)}[data-aos][data-aos][data-aos-easing=ease-in-out-sine],body[data-aos-easing=ease-in-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.445,.05,.55,.95)}[data-aos][data-aos][data-aos-easing=ease-in-quad],body[data-aos-easing=ease-in-quad] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quad],body[data-aos-easing=ease-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quad],body[data-aos-easing=ease-in-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-cubic],body[data-aos-easing=ease-in-cubic] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-cubic],body[data-aos-easing=ease-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-cubic],body[data-aos-easing=ease-in-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-quart],body[data-aos-easing=ease-in-quart] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quart],body[data-aos-easing=ease-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quart],body[data-aos-easing=ease-in-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}@media screen{html:not(.no-js) [data-aos^=fade][data-aos^=fade]{opacity:0;transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform}html:not(.no-js) [data-aos^=fade][data-aos^=fade].aos-animate{opacity:1;-webkit-transform:none;transform:none}html:not(.no-js) [data-aos=fade-up]{-webkit-transform:translate3d(0,100px,0);transform:translate3d(0,100px,0)}html:not(.no-js) [data-aos=fade-down]{-webkit-transform:translate3d(0,-100px,0);transform:translate3d(0,-100px,0)}html:not(.no-js) [data-aos=fade-right]{-webkit-transform:translate3d(-100px,0,0);transform:translate3d(-100px,0,0)}html:not(.no-js) [data-aos=fade-left]{-webkit-transform:translate3d(100px,0,0);transform:translate3d(100px,0,0)}html:not(.no-js) [data-aos=fade-up-right]{-webkit-transform:translate3d(-100px,100px,0);transform:translate3d(-100px,100px,0)}html:not(.no-js) [data-aos=fade-up-left]{-webkit-transform:translate3d(100px,100px,0);transform:translate3d(100px,100px,0)}html:not(.no-js) [data-aos=fade-down-right]{-webkit-transform:translate3d(-100px,-100px,0);transform:translate3d(-100px,-100px,0)}html:not(.no-js) [data-aos=fade-down-left]{-webkit-transform:translate3d(100px,-100px,0);transform:translate3d(100px,-100px,0)}html:not(.no-js) [data-aos^=zoom][data-aos^=zoom]{opacity:0;transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform}html:not(.no-js) [data-aos^=zoom][data-aos^=zoom].aos-animate{opacity:1;-webkit-transform:translateZ(0) scale(1);transform:translateZ(0) scale(1)}html:not(.no-js) [data-aos=zoom-in]{-webkit-transform:scale(.6);transform:scale(.6)}html:not(.no-js) [data-aos=zoom-in-up]{-webkit-transform:translate3d(0,100px,0) scale(.6);transform:translate3d(0,100px,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-down]{-webkit-transform:translate3d(0,-100px,0) scale(.6);transform:translate3d(0,-100px,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-right]{-webkit-transform:translate3d(-100px,0,0) scale(.6);transform:translate3d(-100px,0,0) scale(.6)}html:not(.no-js) [data-aos=zoom-in-left]{-webkit-transform:translate3d(100px,0,0) scale(.6);transform:translate3d(100px,0,0) scale(.6)}html:not(.no-js) [data-aos=zoom-out]{-webkit-transform:scale(1.2);transform:scale(1.2)}html:not(.no-js) [data-aos=zoom-out-up]{-webkit-transform:translate3d(0,100px,0) scale(1.2);transform:translate3d(0,100px,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-down]{-webkit-transform:translate3d(0,-100px,0) scale(1.2);transform:translate3d(0,-100px,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-right]{-webkit-transform:translate3d(-100px,0,0) scale(1.2);transform:translate3d(-100px,0,0) scale(1.2)}html:not(.no-js) [data-aos=zoom-out-left]{-webkit-transform:translate3d(100px,0,0) scale(1.2);transform:translate3d(100px,0,0) scale(1.2)}html:not(.no-js) [data-aos^=slide][data-aos^=slide]{transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;visibility:hidden}html:not(.no-js) [data-aos^=slide][data-aos^=slide].aos-animate{visibility:visible;-webkit-transform:translateZ(0);transform:translateZ(0)}html:not(.no-js) [data-aos=slide-up]{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}html:not(.no-js) [data-aos=slide-down]{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}html:not(.no-js) [data-aos=slide-right]{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}html:not(.no-js) [data-aos=slide-left]{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}html:not(.no-js) [data-aos^=flip][data-aos^=flip]{-webkit-backface-visibility:hidden;backface-visibility:hidden;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}html:not(.no-js) [data-aos=flip-left]{-webkit-transform:perspective(2500px) rotateY(-100deg);transform:perspective(2500px) rotateY(-100deg)}html:not(.no-js) [data-aos=flip-left].aos-animate{-webkit-transform:perspective(2500px) rotateY(0);transform:perspective(2500px) rotateY(0)}html:not(.no-js) [data-aos=flip-right]{-webkit-transform:perspective(2500px) rotateY(100deg);transform:perspective(2500px) rotateY(100deg)}html:not(.no-js) [data-aos=flip-right].aos-animate{-webkit-transform:perspective(2500px) rotateY(0);transform:perspective(2500px) rotateY(0)}html:not(.no-js) [data-aos=flip-up]{-webkit-transform:perspective(2500px) rotateX(-100deg);transform:perspective(2500px) rotateX(-100deg)}html:not(.no-js) [data-aos=flip-up].aos-animate{-webkit-transform:perspective(2500px) rotateX(0);transform:perspective(2500px) rotateX(0)}html:not(.no-js) [data-aos=flip-down]{-webkit-transform:perspective(2500px) rotateX(100deg);transform:perspective(2500px) rotateX(100deg)}html:not(.no-js) [data-aos=flip-down].aos-animate{-webkit-transform:perspective(2500px) rotateX(0);transform:perspective(2500px) rotateX(0)}}