@font-face {
    font-family: 'Portland';
    src: url('../fonts/portland-regular.otf') format('opentype'),
    url('../fonts/portland-regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Portland';
    src: url('../fonts/portland-medium.otf') format('opentype'),
    url('../fonts/portland-medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Portland';
    src: url('../fonts/portland-bold.otf') format('opentype'),
    url('../fonts/portland-bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Portland';
    src: url('../fonts/portland-black.otf') format('opentype'),
    url('../fonts/portland-black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

:root {
    --contrast-color: #ce5b2c;
    --contrast-color-rgb: 206 91 44;
    --primary-color: #e1d1ba;
    --primary-color-rgb: 225 209 186;
    --third-color: #265358;
    --third-color-rgb: 38 83 88;
    /*--primary-color: #b42d4b;
    --primary-color-rgb: 180 45 75;
    --contrast-color: #DD9786;
    --contrast-color-rgb: 221 151 134;
    --contrast-color: #D08A80;
    --contrast-color-rgb: 208 138 128;*/
    --cc-bg: #fff;
    --cc-text: #262424;
    --cc-btn-primary-bg: var(--primary-color);
    --cc-btn-primary-text: var(--cc-bg);
    --cc-btn-primary-hover-bg: #F7F5EE;
    --cc-btn-secondary-bg: #eaeff2;
    --cc-btn-secondary-text: var(--cc-text);
    --cc-btn-secondary-hover-bg: #d8e0e6;
    --cc-toggle-bg-off: #919ea6;
    --cc-toggle-bg-on: var(--cc-btn-primary-bg);
    --cc-toggle-bg-readonly: #d5dee2;
    --cc-toggle-knob-bg: #fff;
    --cc-toggle-knob-icon-color: #ecf2fa;
    --cc-block-text: var(--cc-text);
    --cc-cookie-category-block-bg: #f0f4f7;
    --cc-cookie-category-block-bg-hover: #e9eff4;
    --cc-section-border: #f1f3f5;
    --cc-cookie-table-border: #e9edf2;
    --cc-overlay-bg: rgba(4, 6, 8, .85);
    --cc-webkit-scrollbar-bg: #cfd5db;
    --cc-webkit-scrollbar-bg-hover: #9199a0;
    --font-size: 22px;
    --line-height: 1.5rem;
    letter-spacing: 1px;
}
*,:before,:after {
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
    border-color: #e5e7eb
}

:before,:after {
    --tw-content: ""
}

html {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    font-family: Portland;
}

body {
    margin: 0;
    line-height: inherit
}

hr {
    height: 0;
    color: inherit;
    border-top-width: 1px
}

abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

h1,h2,h3,h4,h5,h6 {
    font-size: inherit;
    font-weight: inherit
}

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

b,strong {
    font-weight: bolder
}

code,kbd,samp,pre {
    font-family: Portland;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse
}

button,input,optgroup,select,textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: inherit;
    color: inherit;
    margin: 0;
    padding: 0
}

button,select {
    text-transform: none
}

button,[type=button],[type=reset],[type=submit] {
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none
}

:-moz-focusring {
    outline: auto
}

:-moz-ui-invalid {
    box-shadow: none
}

progress {
    vertical-align: baseline
}

::-webkit-inner-spin-button,::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

summary {
    display: list-item
}

blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre {
    margin: 0
}

fieldset {
    margin: 0;
    padding: 0
}

legend {
    padding: 0
}

ol,ul,menu {
    list-style: none;
    margin: 0;
    padding: 0
}

textarea {
    resize: vertical
}

input::-moz-placeholder,textarea::-moz-placeholder {
    opacity: 1;
    color: #9ca3af
}

input:-ms-input-placeholder,textarea:-ms-input-placeholder {
    opacity: 1;
    color: #9ca3af
}

input::placeholder,textarea::placeholder {
    opacity: 1;
    color: #9ca3af
}

button,[role=button] {
    cursor: pointer
}

:disabled {
    cursor: default
}

img,svg,video,canvas,audio,iframe,embed,object {
    display: block;
    vertical-align: middle
}

img,video {
    max-width: 100%;
    height: auto
}

[hidden] {
    display: none
}

*,:before,:after {
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / .5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia:
}

.container {
    max-width: 1172px!important;
    padding-left: 30px!important;
    padding-right: 30px!important
}

.container-sm {
    max-width: 1041px!important
}

.container-lg {
    max-width: 2108px!important
}

.container-xl {
    max-width: 1685px!important
}

.container-2xl {
    max-width: 1385px!important
}

.container-none {
    padding: 0!important;
    max-width: 100vw!important
}

.container-full {
    max-width: 100vw!important;
    padding-left: 0!important;
    padding-right: 0!important
}

@media screen and (min-width: 1232px) {
    .container-full {
        max-width:calc(100% - 60px)!important
    }
}

* {
    font-family: Portland;
    color: rgb(38 36 36)
}

a:not(.btn):not(.Link),.a {
    position: relative;
    --tw-text-opacity: 1;
    color: rgb(38 36 36 / var(--tw-text-opacity));
    transition-property: color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

a:not(.btn):not(.Link):hover:before,.a:hover:before {
    content: var(--tw-content);
    height: 50%
}

a:not(.btn):not(.Link):before,.a:before {
    content: "";
    position: absolute;
    left: -3px;
    bottom: 2px;
    z-index: -1;
    height: 2px;
    width: 100%;
    --tw-bg-opacity: 1;
    background-color: rgb(var(--primary-color-rgb) / var(--tw-bg-opacity));
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s;
    width: calc(100% + 6px)
}

p,ol,li {
    font-size: 18px;
    font-weight: 300;
    line-height: 38px;
}

@media (min-width: 768px) {
    p,ol,li {
        font-size:20px
    }

    p,ol,li {
        line-height: 40px
    }
}

@media (min-width: 1024px) {
    p,ol,li {
        font-size:22px
    }

    p,ol,li {
        line-height: 46px
    }
}

p b,p strong,ol b,ol strong,li b,li strong {
    font-weight: 500
}

ul {
    list-style-type: disc;
    padding-left: 1.75rem
}

ol {
    list-style-type: decimal;
    padding-left: 1.75rem
}

h1,h2,h3,h4,.Hero-title,.Subtitle {
    font-weight: bold;
}

h1 b,h1 strong,h2 b,h2 strong,h3 b,h3 strong,h4 b,h4 strong,.Hero-title b,.Hero-title strong,.Subtitle b,.Subtitle strong {
    position: relative;
    display: inline-block;
    font-weight: bold
}

h1 b:before,h1 strong:before,h2 b:before,h2 strong:before,h3 b:before,h3 strong:before,h4 b:before,h4 strong:before,.Hero-title b:before,.Hero-title strong:before,.Subtitle b:before,.Subtitle strong:before {
    content: "";
    position: absolute;
    left: -3px;
    bottom: 0px;
    z-index: -1;
    height: 40%;
    width: 100%;
    --tw-bg-opacity: 1;
    background-color: rgb(var(--primary-color-rgb) / var(--tw-bg-opacity))
}

@media (min-width: 768px) {
    h1 b:before,h1 strong:before,h2 b:before,h2 strong:before,h3 b:before,h3 strong:before,h4 b:before,h4 strong:before,.Hero-title b:before,.Hero-title strong:before,.Subtitle b:before,.Subtitle strong:before {
        bottom:8px
    }

    h1 b:before,h1 strong:before,h2 b:before,h2 strong:before,h3 b:before,h3 strong:before,h4 b:before,h4 strong:before,.Hero-title b:before,.Hero-title strong:before,.Subtitle b:before,.Subtitle strong:before {
        height: 36%
    }
}

h1 b:before,h1 strong:before,h2 b:before,h2 strong:before,h3 b:before,h3 strong:before,h4 b:before,h4 strong:before,.Hero-title b:before,.Hero-title strong:before,.Subtitle b:before,.Subtitle strong:before {
    width: calc(100% + 6px)
}

.Hero-title {
    font-size: 24px;
    /*text-transform: uppercase;*/
    line-height: 32px;
}

@media (min-width: 768px) {
    .Hero-title {
        font-size:38px;
        line-height: 46px;
    }
}

@media (min-width: 1024px) {
    .Hero-title {
        font-size:40px;
        line-height: 56px;
    }
}

h1,.h1 {
    font-size: 26px;
    line-height: 36px
}

@media (min-width: 768px) {
    h1,.h1 {
        font-size:30px;
        line-height: 38px
    }
}

@media (min-width: 1024px) {
    h1,.h1 {
        font-size:36px;
        line-height: 59px;
    }
}

h2,.h2 {
    font-size: 22px;
    line-height: 26px
}

@media (min-width: 768px) {
    h2,.h2 {
        font-size:26px;
        line-height: 30px;
    }
}

@media (min-width: 1024px) {
    h2,.h2 {
        font-size:30px;
        line-height: 34px;
    }
}

h3,.h3 {
    font-size: 22px;
    line-height: 26px;
}

@media (min-width: 768px) {
    h3,.h3 {
        font-size:22px;
        line-height: 26px;
    }
}

@media (min-width: 1024px) {
    h3,.h3 {
        font-size:26px;
        line-height: 30px;
    }
}

h4,.h4,.Subtitle {
    font-size: 16px;
    font-weight: bold;
    line-height: 22px;
    --tw-text-opacity: 1;
    color: rgb(38 36 36 / var(--tw-text-opacity))
}

@media (min-width: 768px) {
    h4,.h4,.Subtitle {
        font-size:16px;
        line-height: 22px;
    }
}

@media (min-width: 1024px) {
    h4,.h4,.Subtitle {
        font-size:16px;
        line-height: 22px;
    }
}

:root {
    --fui-font-size: 16px;
    --fui-line-height: 22px;
    --fui-color: #262424
}

.fui-i .btn {
    transition: all .5s!important
}

.fui-label,.fui-required,.fui-checkbox-label,.fui-input {
    color: var(--fui-color)!important;
    font-size: var(--fui-font-size)!important;
    line-height: var(--fui-line-height)!important;
    font-weight: 400!important;
    margin-bottom: 14px!important
}

.fui-label:focus,.fui-required:focus,.fui-checkbox-label:focus,.fui-input:focus {
    border: 1px solid black!important;
    box-shadow: none!important
}

.fui-checkbox input:checked+label:before {
    background-color: var(--primary-color)!important
}

.fui-input {
    transition: border .5s!important;
    border-radius: 0!important;
    background-color: transparent!important;
    border: 1px solid rgba(0,0,0,.3)!important
}

.fui-checkbox-label:before {
    border: none!important;
    top: 0px!important
}

.fui-checkbox-label {
    font-size: 10px!important;
    line-height: 18px!important;
    font-weight: 300!important;
}

.fui-checkbox-label a {
    text-decoration: underline!important
}

.fui-checkbox-label a:before {
    display: none!important
}

.fui-checkbox-label a:hover {
    text-decoration: none!important
}

.fui .btn {
    transition: all .5s!important
}

.pointer-events-none {
    pointer-events: none
}

.fixed {
    position: fixed
}

.absolute {
    position: absolute
}

.relative {
    position: relative
}

.top-\[2px\] {
    top: 2px
}

.row-auto {
    grid-row: auto
}

.my-11 {
    margin-top: 2.75rem;
    margin-bottom: 2.75rem
}

.my-5 {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem
}

.mx-2 {
    margin-left: .5rem;
    margin-right: .5rem
}

.mx-auto {
    margin-left: auto;
    margin-right: auto
}

.mx-1 {
    margin-left: .25rem;
    margin-right: .25rem
}

.my-8 {
    margin-top: 2rem;
    margin-bottom: 2rem
}

.mb-5 {
    margin-bottom: 1.25rem
}

.mt-5 {
    margin-top: 1.25rem
}

.mb-2 {
    margin-bottom: .5rem
}

.mt-10 {
    margin-top: 2.5rem
}

.mt-20 {
    margin-top: 5rem
}

.mb-6 {
    margin-bottom: 1.5rem
}

.mt-\[137px\] {
    margin-top: 137px
}

.mt-8 {
    margin-top: 2rem
}

.mt-4 {
    margin-top: 1rem
}

.mb-auto {
    margin-bottom: auto
}

.mb-4 {
    margin-bottom: 1rem
}

.mr-2 {
    margin-right: .5rem
}

.mt-3 {
    margin-top: .75rem
}

.mt-auto {
    margin-top: auto
}

.mr-auto {
    margin-right: auto
}

.mt-1 {
    margin-top: .25rem
}

.mb-10 {
    margin-bottom: 2.5rem
}

.mr-6 {
    margin-right: 1.5rem
}

.mr-1 {
    margin-right: .25rem
}

.mr-3 {
    margin-right: .75rem
}

.mt-6 {
    margin-top: 1.5rem
}

.mb-11 {
    margin-bottom: 2.75rem
}

.mb-8 {
    margin-bottom: 2rem
}

.-mt-4 {
    margin-top: -1rem
}

.mt-11 {
    margin-top: 2.75rem
}

.mt-2 {
    margin-top: .5rem
}

.mt-12 {
    margin-top: 3rem
}

.mb-7 {
    margin-bottom: 1.75rem
}

.mt-16 {
    margin-top: 4rem
}

.mb-16 {
    margin-bottom: 4rem
}

.block {
    display: block
}

.inline-block {
    display: inline-block
}

.inline {
    display: inline
}

.flex {
    display: flex
}

.grid {
    display: grid
}

.hidden {
    display: none
}

.aspect-\[5\/2\] {
    aspect-ratio: 5 / 2
}

.h-full {
    height: 100%
}

.h-auto {
    height: auto
}

.h-\[20px\] {
    height: 20px
}

.h-\[1px\] {
    height: 1px
}

.w-full {
    width: 100%
}

.w-auto {
    width: auto
}

.w-fit {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.w-\[35px\] {
    width: 35px
}

.w-\[100\%\] {
    width: 100%
}

.w-\[10px\] {
    width: 10px
}

.min-w-full {
    min-width: 100%
}

.max-w-\[700px\] {
    max-width: 700px
}

.max-w-\[180px\] {
    max-width: 180px
}

.max-w-\[52px\] {
    max-width: 52px
}

.max-w-\[186px\] {
    max-width: 186px
}

.max-w-\[111px\] {
    max-width: 111px
}

.flex-1 {
    flex: 1 1 0%
}

.cursor-pointer {
    cursor: pointer
}

.list-none {
    list-style-type: none
}

.grid-cols-3 {
    grid-template-columns: repeat(3,minmax(0,1fr))
}

.grid-cols-1 {
    grid-template-columns: repeat(1,minmax(0,1fr))
}

.flex-col {
    flex-direction: column
}

.items-center {
    align-items: center
}

.justify-center {
    justify-content: center
}

.justify-between {
    justify-content: space-between
}

.gap-6 {
    gap: 1.5rem
}

.gap-10 {
    gap: 2.5rem
}

.bg-secondary {
    --tw-bg-opacity: 1;
    background-color: rgb(var(--contrast-color-rgb) / var(--tw-bg-opacity))
}

.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity))
}

.fill-secondary {
    fill: #262424
}

.object-cover {
    -o-object-fit: cover;
    object-fit: cover
}

.p-0 {
    padding: 0
}

.py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem
}

.px-3 {
    padding-left: .75rem;
    padding-right: .75rem
}

.pt-10 {
    padding-top: 2.5rem
}

.pb-8 {
    padding-bottom: 2rem
}

.text-left {
    text-align: left
}

.text-text_default_sm {
    font-size: 18px
}

.text-\[12px\] {
    font-size: 12px
}

.text-\[13px\] {
    font-size: 13px
}

.text-\[14px\] {
    font-size: 14px
}

.font-medium {
    font-weight: 500
}

.font-normal {
    font-weight: 400
}

.uppercase {
    text-transform: uppercase
}

.leading-\[18px\] {
    line-height: 18px
}

.text-secondary {
    --tw-text-opacity: 1;
    color: rgb(38 36 36 / var(--tw-text-opacity))
}

.text-\[\#003562\] {
    --tw-text-opacity: 1;
    color: rgb(0 53 98 / var(--tw-text-opacity))
}

.antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.opacity-40 {
    opacity: .4
}

.opacity-50 {
    opacity: .5
}

.opacity-100 {
    opacity: 1
}

.mix-blend-multiply {
    mix-blend-mode: multiply
}

.transition-all {
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s
}

.transition {
    transition-property: color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s
}

.duration-500 {
    transition-duration: .5s
}

html {
    overflow-x: hidden;
    max-width: 100vw
}

body {
    position: relative;
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    --tw-bg-opacity: 1;
    background-color: rgb(247 245 238 / var(--tw-bg-opacity));
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
    max-width: 100vw
}

body footer {
    margin-top: auto
}

@media (max-width: 1023px) {
    .nav-active {
        overflow:hidden
    }
}

.u-block {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.u-block--padding {
    padding-top: 4rem;
    padding-bottom: 4rem
}

@media (min-width: 768px) {
    .u-block--padding {
        padding-top:7rem;
        padding-bottom: 7rem
    }
}

@media (min-width: 1024px) {
    .u-block--padding {
        padding-top:8rem;
        padding-bottom: 8rem
    }
}

.u-block--small {
    margin-top: 4rem;
    margin-bottom: 4rem
}

@media (min-width: 768px) {
    .u-block--small {
        margin-top:6rem;
        margin-bottom: 6rem
    }
}

.richText {
    display: block
}

.richText p:not(:last-child),.richText ul:not(:last-child),.richText ol:not(:last-child) {
    margin-bottom: 1rem
}

.richText a {
    display: inline-block
}

@tailwind components;.Header {
                         display: flex;
                         align-items: center;
                         transition: margin .5s;
                         margin: 25px 30px
                     }

@media screen and (min-width: 1024px) {
    .Header {
        margin:50px 60px
    }
}

.Header-wrapper {
    z-index: 50
}

.Header-wrapper.Modal-active {
    transform: translateY(-100%)!important
}

.Header-wrapper.show-nav {
    z-index: 99
}

@media screen and (max-width: 1023px) {
    .Header-wrapper.show-nav .Header-logo svg * {
        fill:#fff
    }

    .Header-wrapper.show-nav .Toggle-line {
        background-color: #fff!important
    }

    .Header-wrapper.show-nav .Header-mainNav {
        transform: translate(0)
    }

    .Header-wrapper.show-nav .Header-mainNav {
        align-items: center
    }

    .Header-wrapper.show-nav .Header-mainNav {
        justify-content: center
    }

    .Header-wrapper.show-nav .Header-mainNav .btn {
        margin-top: 15px
    }

    .Header-wrapper.show-nav .Header-mainNav .btn {
        border-width: 1px
    }

    .Header-wrapper.show-nav .Header-mainNav .btn {
        --tw-border-opacity: 1;
        border-color: rgb(var(--primary-color-rgb) / var(--tw-border-opacity))
    }

    .Header-wrapper.show-nav .Header-mainNav .btn {
        background-color: transparent
    }

    .Header-wrapper.show-nav .Header-mainNav .btn {
        --tw-text-opacity: 1;
        color: rgb(var(--primary-color-rgb) / var(--tw-text-opacity))
    }

    .Header-wrapper.show-nav .Header-mainNav .btn:before {
        content: var(--tw-content);
        display: none
    }

    .Header-wrapper.show-nav .Header-mainNav .MainNav {
        display: flex
    }

    .Header-wrapper.show-nav .Header-mainNav .MainNav {
        flex-direction: column
    }

    .Header-wrapper.show-nav .Header-mainNav .MainNav {
        align-items: center
    }

    .Header-wrapper.show-nav .Header-mainNav .MainNav-item {
        margin: 15px 0!important
    }

    .Header-wrapper.show-nav .Header-mainNav .MainNav-item--link {
        font-size: 18px
    }

    .Header-wrapper.show-nav .Header-mainNav .MainNav-item--link {
        font-weight: 500
    }

    .Header-wrapper.show-nav .Header-mainNav .MainNav-item--link {
        --tw-text-opacity: 1;
        color: rgb(255 255 255 / var(--tw-text-opacity))
    }
}

.Header-logo {
    position: relative;
    z-index: 99
}

.Header-logo * {
    transition: fill .5s
}

@media screen and (min-width: 1024px) {
    .Header-logo {
        grid-column:1/span 1;
        grid-row: 2/span 1
    }
}

@media screen and (max-width: 1023px) {
    .Header-mainNav {
        position:fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        min-height: 100vh;
        overflow: scroll
    }

    .Header-mainNav {
        --tw-bg-opacity: 1;
        background-color: rgb(38 36 36 / var(--tw-bg-opacity))
    }

    .Header-mainNav {
        display: flex;
        flex-direction: column;
        padding: 90px 30px 30px;
        transform: translateY(-100%);
        transition: transform .5s
    }
}

@media screen and (min-width: 1024px) {
    .Header-mainNav {
        width:100%
    }

    .Header-mainNav {
        flex: 1 1 0%
    }
}

.Header-mainNav .MainNav-item {
    position: relative;
    margin-bottom: 1.5rem;
    line-height: 18px;
}

@media (min-width: 1024px) {
    .Header-mainNav .MainNav-item {
        margin-left:1.8vw;
        margin-right: 1.8vw
    }

    .Header-mainNav .MainNav-item {
        margin-bottom: 0
    }
}

.Header-mainNav .MainNav-item--link {
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    line-height: 18px;
}

.Header-mainNav .MainNav-item:before {
    content: "";
    bottom: -5px;
    position: absolute;
    left: -3px;
    z-index: -1;
    height: 0px;
    width: 100%;
    --tw-bg-opacity: 1;
    background-color: rgb(var(--primary-color-rgb) / var(--tw-bg-opacity));
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

@media (min-width: 768px) {
    .Header-mainNav .MainNav-item:before {
        bottom:-1px
    }
}

.Header-mainNav .MainNav-item:before {
    width: calc(100% + 6px)
}

.Header-mainNav .MainNav-item.is-active:before,.Header-mainNav .MainNav-item:hover:before {
    height: 3px
}

@media (min-width: 768px) {
    .Header-mainNav .MainNav-item.is-active:before,.Header-mainNav .MainNav-item:hover:before {
        height:50%
    }
}

@media screen and (min-width: 1024px) {
    .Header-topNav {
        grid-column:1/span 2;
        grid-row: 1/span 1
    }
}

.Header-toggle {
    z-index: 10
}

.Header-toggle .Toggle-line {
    position: absolute;
    left: 0;
    transition: all .5s
}

.Header-toggle .Toggle-line:nth-child(1) {
    top: 0
}

.show-nav .Header-toggle .Toggle-line:nth-child(1) {
    top: 50%!important;
    transform: rotate(135deg)
}

.Header-toggle .Toggle-line:nth-child(2) {
    top: 50%
}

.show-nav .Header-toggle .Toggle-line:nth-child(2) {
    top: 50%!important;
    transform: rotate(-135deg)
}

.Header-toggle .Toggle-line:nth-child(3) {
    top: 100%
}

.show-nav .Header-toggle .Toggle-line:nth-child(3) {
    top: 0px!important;
    transform: rotate(-135deg);
    opacity: 0
}

.Footer {
    padding-top: 5rem;
    padding-bottom: 5rem;
    background-color: var(--third-color);
}

@media (min-width: 640px) {
    .Footer-container {
        grid-template-columns:120px auto
    }
}

@media (min-width: 768px) {
    .Footer-container {
        display:grid
    }
}

@media (min-width: 1024px) {
    .Footer-container {
        grid-template-columns:180px auto
    }
}

.Footer-logo {
    margin-bottom: 2.5rem
}

@media (min-width: 768px) {
    .Footer-logo {
        grid-column:span 1 / span 1
    }

    .Footer-logo {
        grid-column-start: 1
    }
}

.Footer-title {
    margin-bottom: .75rem;
    font-size: 15px;
    line-height: 30px;
    --tw-text-opacity: 1;
    color: rgb(var(--primary-color-rgb) / var(--tw-text-opacity))
}

.Footer p,.Footer a:not(.btn):not(.Credits-link) {
    color: #fff!important;
    font-size: 14px;
    font-weight: 400;
    line-height: 26px;
}

.Footer a:not(.btn):not(.Credits-link):hover {
    color: var(--primary-color)!important
}

@media (min-width: 768px) {
    .Footer-content {
        grid-column:span 1 / span 1
    }

    .Footer-content {
        grid-column-start: 2
    }

    .Footer-content {
        display: grid
    }

    .Footer-content {
        grid-auto-columns: minmax(0,1fr)
    }

    .Footer-content {
        grid-auto-flow: column
    }

    .Footer-content {
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem
    }
}

.Footer-content--hours {
    margin-top: 3.5rem
}

@media (min-width: 768px) {
    .Footer-content--hours {
        margin-top:0
    }
}

.Footer-content--extra {
    margin-top: 3.5rem
}

@media (min-width: 768px) {
    .Footer-content--extra {
        margin-top:0
    }
}

.Footer-credits {
    margin-top: 3.5rem;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width: 1024px) {
    .Footer-credits {
        display:flex
    }
}

@media (min-width: 768px) {
    .Footer-credits {
        grid-column:span 1 / span 1
    }

    .Footer-credits {
        grid-column-start: 2
    }
}

.Footer-credits--logo {
    margin-top: 2rem;
    display: inline-block
}

@media (min-width: 768px) {
    .Footer-credits--logo {
        margin-top:1rem
    }
}

@media (min-width: 1024px) {
    .Footer-credits--logo {
        margin-top:0
    }
}

.Footer-credits--logo svg {
    opacity: .5
}

.Footer-credits--logo svg:hover {
    opacity: 1
}

.Footer-credits--logo svg:hover * {
    fill: var(--primary-color)
}

.Footer-credits--logo svg * {
    fill: #fff;
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.Footer-credits--logo svg *:hover {
    fill: var(--primary-color)
}

.Footer-credits .Credits-list {
    list-style-type: none;
    padding: 0;
    flex-wrap: wrap
}

@media (min-width: 768px) {
    .Footer-credits .Credits-list {
        display:flex
    }
}

.Footer-credits .Credits-item {
    line-height: 14px
}

.Footer-credits .Credits-item:not(:last-child) {
    margin-right: 1rem
}

.Footer-credits .Credits-link {
    font-size: 11px;
    font-weight: 400;
    /*text-transform: uppercase;*/
    line-height: 28px;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
    opacity: .5;
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

@media (min-width: 768px) {
    .Footer-credits .Credits-link {
        font-size:9px
    }

    .Footer-credits .Credits-link {
        line-height: 14px
    }
}

.Footer-credits .Credits-link:not(.noHover):hover {
    --tw-text-opacity: 1;
    color: rgb(var(--primary-color-rgb) / var(--tw-text-opacity));
    opacity: 1
}

.headroom {
    transition: all .5s;
    background-color: transparent
}

.headroom--unpinned {
    transform: translateY(-100%)!important
}

.headroom--not-top .Header {
    margin-top: 15px!important;
    margin-bottom: 15px!important
}

.headroom--pinned {
    --tw-bg-opacity: 1;
    background-color: rgb(247 245 238 / var(--tw-bg-opacity));
    box-shadow: 0 12px 22px -16px #00000080;
    transform: translateY(0)!important
}

.headroom--top {
    background-color: transparent!important;
    box-shadow: none!important
}

@media (max-width: 1023px) {
    .headroom.show-nav {
        transform:translateY(0)!important
    }
}

.btn {
    position: relative;
    display: inline-block;
    font-size: 16px;
    font-weight: 400;
    line-height: 18px;
    padding: .75rem 1.25rem
}

@media (min-width: 768px) {
    .btn {
        font-size:16px;
        line-height: 18px;
        padding: 1rem 1.75rem;
    }
}

.btn-primary {
    display: inline-flex;
    align-items: center;
    background-color: var(--contrast-color);
    color: var(--primary-color);
    svg path {
        fill: var(--primary-color);
    }
}

.btn-primary:hover {
    background-color: var(--primary-color);
    color: var(--contrast-color);
    svg path {
        fill: var(--contrast-color);
    }
}

.btn-primary .btn-icon {
    position: relative;
    margin-left: .5rem;
}

.btn-secondary {
    border-width: 1px;
    border-color: var(--primary-color);
    background-color: transparent;
    color: var(--primary-color);
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.btn-secondary:hover {
    background-color: var(--primary-color);
    color: var(--contrast-color);
}

.kint-rich {
    bottom: 0;
    top: auto;
    position: fixed;
    width: 100%;
    margin-bottom: 0;
    z-index: 99999;
    height: 40%;
    max-height: 450px
}

.kint-rich * {
    font-size: 18px
}

.DateIcon {
    display: flex;
    height: 92px;
    width: 92px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border-width: 2px;
    --tw-border-opacity: 1;
    border-color: rgb(var(--primary-color-rgb) / var(--tw-border-opacity));
    font-size: 28px;
    line-height: 32px;
    --tw-text-opacity: 1;
    color: rgb(var(--primary-color-rgb) / var(--tw-text-opacity))
}

.DateIcon-line {
    display: block;
    height: 1px;
    width: 34px;
    --tw-bg-opacity: 1;
    background-color: rgb(var(--primary-color-rgb) / var(--tw-bg-opacity))
}

picture {
    position: relative
}

.AltText {
    position: absolute;
    left: 0px;
    bottom: .75rem;
    display: block;
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
    line-height: 19px;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

@media (min-width: 768px) {
    .AltText {
        font-size:14px;
        line-height: 22px;
    }
}

.Social {
    display: flex;
    height: 30px;
    width: 30px;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--tw-border-opacity));
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.Social:hover {
    --tw-border-opacity: 1;
    border-color: rgb(var(--primary-color-rgb) / var(--tw-border-opacity))
}

.Social:hover .Social-icon * {
    fill: var(--primary-color)
}

.Social-icon {
    height: 12px
}

.Social-icon * {
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.cc_div *,.cc_div :after,.cc_div :before {
    box-sizing: border-box;
    float: none;
    font-style: inherit;
    font-variant: normal;
    font-weight: inherit;
    font-family: inherit;
    line-height: var(--line-height);
    font-size: var(--font-size);
    transition: none;
    -webkit-animation: none;
    animation: none;
    margin: 0;
    padding: 0;
    text-transform: none;
    color: inherit;
    background: 0 0;
    border: none;
    box-shadow: none;
    text-decoration: none;
    text-align: left;
    visibility: unset
}

.cc_div {
    font-size: 16px;
    font-weight: 400;
    font-family: Portland;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    color: #2d4156;
    color: var(--cc-text)
}

#c-ttl,#s-bl td:before,#s-ttl,.cc_div .b-tl,.cc_div .c-bn {
    font-weight: 600
}

#cm,#s-bl .act .b-acc,#s-inr,.cc_div .b-tl,.cc_div .c-bl {
    border-radius: .35em
}

#s-bl .act .b-acc {
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.cc_div a,.cc_div button,.cc_div input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.cc_div a {
    border-bottom: 1px solid
}

.cc_div a:hover {
    text-decoration: none;
    border-color: transparent
}

#cm-ov,#cs-ov,.c--anim #cm,.c--anim #s-cnt,.c--anim #s-inr {
    transition: visibility .25s linear,opacity .25s ease,transform .25s ease!important
}

.c--anim .c-bn {
    transition: background-color .25s ease!important
}

.c--anim #cm.bar.slide,.c--anim .bar.slide #s-inr {
    transition: visibility .4s ease,opacity .4s ease,transform .4s ease!important
}

.c--anim #cm.bar.slide+#cm-ov,.c--anim .bar.slide+#cs-ov {
    transition: visibility .4s ease,opacity .4s ease,transform .4s ease!important
}

#cm.bar.slide,.cc_div .bar.slide #s-inr {
    transform: translate(100%);
    opacity: 1
}

#cm.bar.top.slide,.cc_div .bar.left.slide #s-inr {
    transform: translate(-100%);
    opacity: 1
}

#cm.slide,.cc_div .slide #s-inr {
    transform: translateY(1.6em)
}

#cm.top.slide {
    transform: translateY(-1.6em)
}

#cm.bar.slide {
    transform: translateY(100%)
}

#cm.bar.top.slide {
    transform: translateY(-100%)
}

.show--consent .c--anim #cm,.show--consent .c--anim #cm.bar,.show--settings .c--anim #s-inr,.show--settings .c--anim .bar.slide #s-inr {
    opacity: 1;
    transform: scale(1);
    visibility: visible!important
}

.show--consent .c--anim #cm.box.middle,.show--consent .c--anim #cm.cloud.middle {
    transform: scale(1) translateY(-50%)
}

.show--settings .c--anim #s-cnt {
    visibility: visible!important
}

.force--consent.show--consent .c--anim #cm-ov,.show--settings .c--anim #cs-ov {
    visibility: visible!important;
    opacity: 1!important
}

#cm {
    font-family: inherit;
    padding: 1.1em 1.8em 1.4em;
    position: fixed;
    z-index: 1;
    background: #fff;
    background: var(--cc-bg);
    max-width: 24.2em;
    width: 100%;
    bottom: 1.25em;
    right: 1.25em;
    box-shadow: 0 .625em 1.875em #000;
    box-shadow: 0 .625em 1.875em #02020347;
    opacity: 0;
    visibility: hidden;
    transform: scale(.95);
    line-height: initial
}

#cc_div #cm {
    display: block!important
}

#c-ttl {
    margin-bottom: .7em;
    font-size: 1.05em
}

.cloud #c-ttl {
    margin-top: -.15em
}

#c-txt {
    font-size: .9em;
    line-height: 1.5em
}

.cc_div #c-bns {
    display: flex;
    justify-content: space-between;
    margin-top: 1.4em
}

.cc_div .c-bn {
    color: #40505a;
    color: var(--cc-btn-secondary-text);
    background: #e5ebef;
    background: var(--cc-btn-secondary-bg);
    padding: 1em;
    display: inline-block;
    cursor: pointer;
    font-size: .82em;
    -moz-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-align: center;
    border-radius: 4px;
    flex: 1
}

#c-bns button+button,#s-c-bn,#s-cnt button+button {
    float: right;
    margin-left: 1em
}

#s-cnt #s-rall-bn {
    float: none
}

#cm .c_link:active,#cm .c_link:hover,#s-c-bn:active,#s-c-bn:hover,#s-cnt button+button:active,#s-cnt button+button:hover {
    background: #d8e0e6;
    background: var(--cc-btn-secondary-hover-bg)
}

#s-cnt {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 101;
    display: table;
    height: 100%;
    visibility: hidden
}

#s-bl {
    outline: 0
}

#s-bl .title {
    margin-top: 1.4em
}

#s-bl .title:first-child,#s-bl .b-bn {
    margin-top: 0
}

#s-bl .b-acc .p {
    margin-top: 0;
    padding: 1em
}

#s-cnt .b-bn .b-tl {
    display: block;
    font-family: inherit;
    font-size: .95em;
    width: 100%;
    position: relative;
    padding: 1.3em 6.4em 1.3em 2.7em;
    background: 0 0;
    transition: background-color .25s ease
}

#s-cnt .b-bn .b-tl.exp {
    cursor: pointer
}

#s-cnt .act .b-bn .b-tl {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0
}

#s-cnt .b-bn .b-tl:active,#s-cnt .b-bn .b-tl:hover {
    background: #e9eff4;
    background: var(--cc-cookie-category-block-bg-hover)
}

#s-bl .b-bn {
    position: relative
}

#s-bl .c-bl {
    padding: 1em;
    margin-bottom: .5em;
    border: 1px solid #f1f3f5;
    border-color: var(--cc-section-border);
    transition: background-color .25s ease
}

#s-bl .c-bl:hover {
    background: #f0f4f7;
    background: var(--cc-cookie-category-block-bg)
}

#s-bl .c-bl:last-child {
    margin-bottom: .5em
}

#s-bl .c-bl:first-child {
    transition: none;
    padding: 0;
    margin-top: 0;
    border: none;
    margin-bottom: 2em
}

#s-bl .c-bl:not(.b-ex):first-child:hover {
    background: 0 0;
    background: unset
}

#s-bl .c-bl.b-ex {
    padding: 0;
    border: none;
    background: #f0f4f7;
    background: var(--cc-cookie-category-block-bg);
    transition: none
}

#s-bl .c-bl.b-ex+.c-bl {
    margin-top: 2em
}

#s-bl .c-bl.b-ex+.c-bl.b-ex {
    margin-top: 0
}

#s-bl .c-bl.b-ex:first-child {
    margin-bottom: .5em
}

#s-bl .b-acc {
    max-height: 0;
    overflow: hidden;
    padding-top: 0;
    margin-bottom: 0;
    display: none
}

#s-bl .act .b-acc {
    max-height: 100%;
    display: block;
    overflow: hidden
}

#s-cnt .p {
    font-size: .9em;
    line-height: 1.5em;
    margin-top: .85em;
    color: #2d4156;
    color: var(--cc-block-text)
}

.cc_div .b-tg .c-tgl:disabled {
    cursor: not-allowed
}

#c-vln {
    display: table-cell;
    vertical-align: middle;
    position: relative
}

#cs {
    padding: 0 1.7em;
    width: 100%;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    height: 100%
}

#s-inr {
    max-width: 45em;
    margin: 0 auto;
    transform: scale(.96);
    opacity: 0;
    padding-top: 4.75em;
    padding-bottom: 4.75em;
    position: relative;
    height: 100%;
    overflow: hidden;
    visibility: hidden;
    box-shadow: #03060942 0 13px 27px -5px
}

#s-bns,#s-hdr,#s-inr {
    background: #fff;
    background: var(--cc-bg)
}

#s-bl {
    overflow-y: auto;
    overflow-y: overlay;
    overflow-x: hidden;
    height: 100%;
    padding: 1.3em 2.1em;
    display: block;
    width: 100%
}

#s-bns {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1em 2.1em;
    border-top: 1px solid #f1f3f5;
    border-color: var(--cc-section-border)
}

.cc_div .cc-link {
    color: #253b48;
    color: var(--cc-btn-primary-bg);
    border-bottom: 1px solid #253b48;
    border-color: var(--cc-btn-primary-bg);
    display: inline;
    padding-bottom: 0;
    text-decoration: none;
    cursor: pointer;
    font-weight: 600
}

.cc_div .cc-link:before {
    display: none!important
}

.cc_div .cc-link:active,.cc_div .cc-link:hover {
    border-color: transparent
}

#c-bns button:first-child,#s-bns button:first-child {
    color: #fff;
    color: #262424;
    background: #253b48;
    background: var(--cc-btn-primary-bg)
}

#c-bns.swap button:first-child {
    color: #40505a;
    color: var(--cc-btn-secondary-text);
    background: #e5ebef;
    background: var(--cc-btn-secondary-bg)
}

#c-bns.swap button:last-child {
    color: #fff;
    color: var(--cc-btn-primary-text);
    background: #253b48;
    background: var(--cc-btn-primary-bg)
}

.cc_div .b-tg .c-tgl:checked~.c-tg {
    background: #253b48;
    background: var(--cc-toggle-bg-on)
}

#c-bns button:first-child:active,#c-bns button:first-child:hover,#c-bns.swap button:last-child:active,#c-bns.swap button:last-child:hover,#s-bns button:first-child:active,#s-bns button:first-child:hover {
    background: #1d2e38;
    background: var(--cc-btn-primary-hover-bg)
}

#c-bns.swap button:first-child:active,#c-bns.swap button:first-child:hover {
    background: #d8e0e6;
    background: var(--cc-btn-secondary-hover-bg)
}

#s-hdr {
    position: absolute;
    top: 0;
    width: 100%;
    display: table;
    padding: 0 2.1em;
    height: 4.75em;
    vertical-align: middle;
    z-index: 2;
    border-bottom: 1px solid #f1f3f5;
    border-color: var(--cc-section-border)
}

#s-ttl {
    display: table-cell;
    vertical-align: middle;
    font-size: 1em
}

#s-c-bn {
    padding: 0;
    width: 1.7em;
    height: 1.7em;
    font-size: 1.45em;
    margin: 0;
    font-weight: initial;
    position: relative
}

#s-c-bnc {
    display: table-cell;
    vertical-align: middle
}

.cc_div span.t-lb {
    position: absolute;
    top: 0;
    z-index: -1;
    opacity: 0;
    pointer-events: none;
    overflow: hidden
}

#c_policy__text {
    height: 31.25em;
    overflow-y: auto;
    margin-top: 1.25em
}

#c-s-in {
    position: relative;
    transform: translateY(-50%);
    top: 50%;
    height: 100%;
    height: calc(100% - 2.5em);
    max-height: 40em
}

@media screen and (min-width: 688px) {
    #s-bl::-webkit-scrollbar {
        width:.9em;
        height: 100%;
        background: 0 0;
        border-radius: 0 .25em .25em 0
    }

    #s-bl::-webkit-scrollbar-thumb {
        border: .25em solid var(--cc-bg);
        background: #cfd5db;
        background: var(--cc-webkit-scrollbar-bg);
        border-radius: 100em
    }

    #s-bl::-webkit-scrollbar-thumb:hover {
        background: #9199a0;
        background: var(--cc-webkit-scrollbar-bg-hover)
    }

    #s-bl::-webkit-scrollbar-button {
        width: 10px;
        height: 5px
    }
}

.cc_div .b-tg {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    display: inline-block;
    margin: auto;
    right: 1.2em;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    vertical-align: middle
}

.cc_div .b-tg .c-tgl {
    position: absolute;
    cursor: pointer;
    display: block;
    top: 0;
    left: 0;
    margin: 0;
    border: 0
}

.cc_div .b-tg .c-tg {
    position: absolute;
    background: #919ea6;
    background: var(--cc-toggle-bg-off);
    transition: background-color .25s ease,box-shadow .25s ease;
    pointer-events: none
}

.cc_div .b-tg,.cc_div .b-tg .c-tg,.cc_div .b-tg .c-tgl,.cc_div span.t-lb {
    width: 3.4em;
    height: 1.5em;
    border-radius: 4em
}

.cc_div .b-tg .c-tg.c-ro {
    cursor: not-allowed
}

.cc_div .b-tg .c-tgl~.c-tg.c-ro {
    background: #d5dee2;
    background: var(--cc-toggle-bg-readonly)
}

.cc_div .b-tg .c-tgl~.c-tg.c-ro:after {
    box-shadow: none
}

.cc_div .b-tg .c-tg:after {
    content: "";
    position: relative;
    display: block;
    left: .125em;
    top: .125em;
    width: 1.25em;
    height: 1.25em;
    border: none;
    box-sizing: content-box;
    background: #fff;
    background: var(--cc-toggle-knob-bg);
    box-shadow: 0 1px 2px #1820235c;
    transition: transform .25s ease;
    border-radius: 100%
}

.cc_div .b-tg .c-tgl:checked~.c-tg:after {
    transform: translate(1.9em)
}

#s-bl table,#s-bl td,#s-bl th {
    border: none
}

#s-bl tbody tr {
    transition: background-color .25s ease
}

#s-bl tbody tr:hover {
    background: #e9eff4;
    background: var(--cc-cookie-category-block-bg-hover)
}

#s-bl table {
    text-align: left;
    border-collapse: collapse;
    width: 100%;
    padding: 0;
    margin: 0;
    overflow: hidden
}

#s-bl td,#s-bl th {
    text-align: left;
    vertical-align: top;
    font-size: .8em;
    padding: .8em .625em .8em 1.2em
}

#s-bl th {
    font-family: inherit;
    padding: 1.2em
}

#s-bl thead tr:first-child {
    border-bottom: 1px solid #e9edf2;
    border-color: var(--cc-cookie-table-border)
}

.force--consent #cs,.force--consent #s-cnt {
    width: 100vw
}

#cm-ov,#cs-ov {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    visibility: hidden;
    opacity: 0;
    background: #070707;
    background: rgba(4,6,8,.85);
    background: var(--cc-overlay-bg);
    display: none;
    transition: none
}

.c--anim #cs-ov,.force--consent .c--anim #cm-ov,.force--consent.show--consent #cm-ov,.show--settings #cs-ov {
    display: block
}

#cs-ov {
    z-index: 2
}

.force--consent .cc_div {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    width: 100vw;
    visibility: hidden;
    transition: visibility .25s linear
}

.force--consent.show--consent .c--anim .cc_div,.force--consent.show--settings .c--anim .cc_div {
    visibility: visible
}

.force--consent #cm {
    position: absolute
}

.force--consent #cm.bar {
    width: 100vw;
    max-width: 100vw
}

html.force--consent.show--consent {
    overflow-y: hidden!important
}

html.force--consent.show--consent,html.force--consent.show--consent body {
    height: auto!important;
    overflow-x: hidden!important
}

.cc_div .act .b-bn .exp:before,.cc_div .b-bn .exp:before {
    border: solid #2d4156;
    border-color: var(--cc-btn-secondary-text);
    border-width: 0 2px 2px 0;
    padding: .2em;
    display: inline-block;
    content: "";
    margin-right: 15px;
    position: absolute;
    transform: translateY(-50%) rotate(45deg);
    left: 1.2em;
    top: 50%
}

.cc_div .act .b-bn .b-tl:before {
    transform: translateY(-20%) rotate(225deg)
}

.cc_div .on-i:before {
    border: solid #fff;
    border-color: var(--cc-toggle-knob-icon-color);
    border-width: 0 2px 2px 0;
    padding: .1em .1em .45em;
    display: inline-block;
    content: "";
    margin: 0 auto;
    transform: rotate(45deg);
    top: .37em;
    left: .75em;
    position: absolute
}

#s-c-bn:after,#s-c-bn:before {
    content: "";
    position: absolute;
    left: .82em;
    top: .58em;
    height: .6em;
    width: 1.5px;
    background: #444d53;
    background: var(--cc-btn-secondary-text);
    transform: rotate(45deg);
    border-radius: 1em;
    margin: 0 auto
}

#s-c-bn:after {
    transform: rotate(-45deg)
}

.cc_div .off-i,.cc_div .on-i {
    height: 100%;
    width: 50%;
    position: absolute;
    right: 0;
    display: block;
    text-align: center;
    transition: opacity .15s ease
}

.cc_div .on-i {
    left: 0;
    opacity: 0
}

.cc_div .off-i:after,.cc_div .off-i:before {
    right: .8em;
    top: .42em;
    content: " ";
    height: .7em;
    width: .09375em;
    display: block;
    background: #cdd6dc;
    background: var(--cc-toggle-knob-icon-color);
    margin: 0 auto;
    position: absolute;
    transform-origin: center
}

.cc_div .off-i:before {
    transform: rotate(45deg)
}

.cc_div .off-i:after {
    transform: rotate(-45deg)
}

.cc_div .b-tg .c-tgl:checked~.c-tg .on-i {
    opacity: 1
}

.cc_div .b-tg .c-tgl:checked~.c-tg .off-i {
    opacity: 0
}

#cm.box.middle,#cm.cloud.middle {
    top: 50%;
    transform: translateY(-37%);
    bottom: auto
}

#cm.box.middle.zoom,#cm.cloud.middle.zoom {
    transform: scale(.95) translateY(-50%)
}

#cm.box.center {
    left: 1em;
    right: 1em;
    margin: 0 auto
}

#cm.cloud {
    max-width: 50em;
    margin: 0 auto;
    text-align: center;
    left: 1em;
    right: 1em;
    overflow: hidden;
    padding: 1.3em 2em;
    width: unset
}

.cc_div .cloud #c-inr {
    display: table;
    width: 100%
}

.cc_div .cloud #c-inr-i {
    width: 70%;
    display: table-cell;
    vertical-align: top;
    padding-right: 2.4em
}

.cc_div .cloud #c-txt {
    font-size: .85em
}

.cc_div .cloud #c-bns {
    min-width: 170px;
    display: table-cell;
    vertical-align: middle
}

#cm.cloud .c-bn {
    margin: .625em 0 0;
    width: 100%
}

#cm.cloud .c-bn:first-child {
    margin: 0
}

#cm.cloud.left {
    margin-right: 1.25em
}

#cm.cloud.right {
    margin-left: 1.25em
}

#cm.bar {
    width: 100%;
    max-width: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 0;
    position: fixed;
    padding: 2em
}

#cm.bar #c-inr {
    max-width: 32em;
    margin: 0 auto
}

#cm.bar #c-bns {
    max-width: 33.75em
}

#cm.bar #cs {
    padding: 0
}

.cc_div .bar #c-s-in {
    top: 0;
    transform: none;
    height: 100%;
    max-height: 100%
}

.cc_div .bar #s-bl,.cc_div .bar #s-bns,.cc_div .bar #s-hdr {
    padding-left: 1.6em;
    padding-right: 1.6em
}

.cc_div .bar #cs {
    padding: 0
}

.cc_div .bar #s-inr {
    margin: 0 0 0 auto;
    border-radius: 0;
    max-width: 32em
}

.cc_div .bar.left #s-inr {
    margin-left: 0;
    margin-right: auto
}

.cc_div .bar #s-bl table,.cc_div .bar #s-bl tbody,.cc_div .bar #s-bl td,.cc_div .bar #s-bl th,.cc_div .bar #s-bl thead,.cc_div .bar #s-bl tr,.cc_div .bar #s-cnt {
    display: block
}

.cc_div .bar #s-bl thead tr {
    position: absolute;
    top: -9999px;
    left: -9999px
}

.cc_div .bar #s-bl tr {
    border-top: 1px solid #e3e7ed;
    border-color: var(--cc-cookie-table-border)
}

.cc_div .bar #s-bl td {
    border: none;
    position: relative;
    padding-left: 35%
}

.cc_div .bar #s-bl td:before {
    position: absolute;
    left: 1em;
    padding-right: .625em;
    white-space: nowrap;
    content: attr(data-column);
    color: #000;
    color: var(--cc-text);
    overflow: hidden;
    text-overflow: ellipsis
}

#cm.top {
    bottom: auto;
    top: 1.25em
}

#cm.left {
    right: auto;
    left: 1.25em
}

#cm.right {
    left: auto;
    right: 1.25em
}

#cm.bar.left,#cm.bar.right {
    left: 0;
    right: 0
}

#cm.bar.top {
    top: 0
}

@media screen and (max-width: 688px) {
    #cm,#cm.cloud,#cm.left,#cm.right {
        width:auto;
        max-width: 100%;
        margin: 0;
        padding: 1.4em!important;
        right: 1em;
        left: 1em;
        bottom: 1em;
        display: block
    }

    .force--consent #cm,.force--consent #cm.cloud {
        width: auto;
        max-width: 100vw
    }

    #cm.top {
        top: 1em;
        bottom: auto
    }

    #cm.bottom {
        bottom: 1em;
        top: auto
    }

    #cm.bar.bottom {
        bottom: 0
    }

    #cm.cloud .c-bn {
        font-size: .85em
    }

    #s-bns,.cc_div .bar #s-bns {
        padding: 1em 1.3em
    }

    .cc_div .bar #s-inr {
        max-width: 100%;
        width: 100%
    }

    .cc_div .cloud #c-inr-i {
        padding-right: 0
    }

    #cs {
        border-radius: 0;
        padding: 0
    }

    #c-s-in {
        max-height: 100%;
        height: 100%;
        top: 0;
        transform: none
    }

    .cc_div .b-tg {
        transform: scale(1.1);
        right: 1.1em
    }

    #s-inr {
        margin: 0;
        padding-bottom: 7.9em;
        border-radius: 0
    }

    #s-bl,.cc_div .bar #s-bl {
        padding: 1.3em
    }

    #s-hdr,.cc_div .bar #s-hdr {
        padding: 0 1.3em
    }

    #s-bl table {
        width: 100%
    }

    #s-inr.bns-t {
        padding-bottom: 10.5em
    }

    .cc_div .bns-t .c-bn {
        font-size: .83em;
        padding: .9em 1.6em
    }

    #s-cnt .b-bn .b-tl {
        padding-top: 1.2em;
        padding-bottom: 1.2em
    }

    #s-bl table,#s-bl tbody,#s-bl td,#s-bl th,#s-bl thead,#s-bl tr,#s-cnt {
        display: block
    }

    #s-bl thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px
    }

    #s-bl tr {
        border-top: 1px solid #e3e7ed;
        border-color: var(--cc-cookie-table-border)
    }

    #s-bl td {
        border: none;
        position: relative;
        padding-left: 35%
    }

    #s-bl td:before {
        position: absolute;
        left: 1em;
        padding-right: .625em;
        white-space: nowrap;
        content: attr(data-column);
        color: #000;
        color: var(--cc-text);
        overflow: hidden;
        text-overflow: ellipsis
    }

    #cm .c-bn,.cc_div .c-bn {
        width: 100%;
        margin-right: 0
    }

    #s-cnt #s-rall-bn {
        margin-left: 0
    }

    .cc_div #c-bns {
        flex-direction: column
    }

    #c-bns button+button,#s-cnt button+button {
        margin-top: .625em;
        margin-left: 0;
        float: unset
    }

    #cm.box,#cm.cloud {
        left: 1em;
        right: 1em;
        width: auto
    }

    #cm.cloud.left,#cm.cloud.right {
        margin: 0
    }

    .cc_div .cloud #c-bns,.cc_div .cloud #c-inr,.cc_div .cloud #c-inr-i {
        display: block;
        width: auto;
        min-width: unset
    }

    .cc_div .cloud #c-txt {
        font-size: .9em
    }

    .cc_div .cloud #c-bns {
        margin-top: 1.625em
    }
}

.cc_div.ie #c-vln {
    height: 100%;
    padding-top: 5.62em
}

.cc_div.ie .bar #c-vln {
    padding-top: 0
}

.cc_div.ie #cs {
    max-height: 37.5em;
    position: relative;
    top: 0;
    margin-top: -5.625em
}

.cc_div.ie .bar #cs {
    margin-top: 0;
    max-height: 100%
}

.cc_div.ie #cm {
    border: 1px solid #dee6e9
}

.cc_div.ie #c-s-in {
    top: 0
}

.cc_div.ie .b-tg {
    padding-left: 1em;
    margin-bottom: .7em
}

.cc_div.ie .b-tg .c-tgl:checked~.c-tg:after {
    left: 1.95em
}

.cc_div.ie #s-bl table {
    overflow: auto
}

.cc_div.ie .b-tg .c-tg {
    display: none
}

.cc_div.ie .b-tg .c-tgl {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin-bottom: .2em;
    height: auto
}

.cc_div.ie #s-cnt .b-bn .b-tl {
    padding: 1.3em 6.4em 1.3em 1.4em
}

.cc_div.ie .bar #s-bl td:before {
    display: none
}

.cc_div.ie .bar #s-bl td {
    padding: .8em .625em .8em 1.2em
}

.cc_div.ie .bar #s-bl thead tr {
    position: relative
}

.cc_div.ie .b-tg .t-lb {
    filter: alpha(opacity=0)
}

.cc_div.ie #cm-ov,.cc_div.ie #cs-ov {
    filter: alpha(opacity=80)
}

.glightbox-container .glightbox-button-hidden {
    display: none!important
}

.popup-container,.popup-overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100vw
}

.popup-container {
    z-index: 99;
    display: flex
}

.popup-container[aria-hidden=true] {
    display: none
}

.popup-overlay {
    background-color: #2b2e38e6
}

.popup-window {
    margin: auto;
    z-index: 99;
    position: relative;
    background-color: #fff;
    padding: 30px;
    width: 100%
}

@media (min-width: 768px) {
    .popup-window {
        width:90%
    }
}

.popup-window {
    max-width: 976px;
    max-height: 95vh;
    border-radius: 0;
    overflow-y: auto;
    box-sizing: border-box
}

.popup-close {
    top: 30px;
    left: 30px;
    position: absolute;
    background: transparent;
    border: 0;
    cursor: pointer;
    font-size: 1.5rem;
    z-index: 3
}

.popup-content {
    position: relative
}

@-webkit-keyframes fade-in {
    0% {
        opacity: 0
    }
}

@keyframes fade-in {
    0% {
        opacity: 0
    }
}

@-webkit-keyframes slide-up {
    0% {
        transform: translateY(10%)
    }
}

@keyframes slide-up {
    0% {
        transform: translateY(10%)
    }
}

.popup-overlay {
    -webkit-animation: fade-in .15s both;
    animation: fade-in .15s both
}

.popup-window {
    -webkit-animation: fade-in .3s .15s both,slide-up .3s .15s both;
    animation: fade-in .3s .15s both,slide-up .3s .15s both
}

@media (prefers-reduced-motion: reduce) {
    .popup-close {
        transition: none
    }

    .dialog-content {
        -webkit-animation: none;
        animation: none
    }
}

.ContentBlocks .u-block:first-child {
    margin-top: 0!important;
    margin-bottom: 0!important
}

.ContentBlocks-itemTitle {
    margin-top: 2.5rem
}

@media (min-width: 768px) {
    .ContentBlocks-itemTitle {
        margin-top:5rem
    }
}

.ContentBlocks-itemTitle:first-child {
    margin-top: 0!important
}

.ContentBlocks-itemCards {
    position: relative;
    display: grid;
    grid-template-columns: repeat(1,minmax(0,1fr));
    gap: 2.5rem
}

@media (min-width: 768px) {
    .ContentBlocks-itemCards {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }

    .ContentBlocks-itemCards {
        gap: 3.5rem
    }
}

@media (min-width: 1024px) {
    .ContentBlocks-itemCards {
        gap:5rem
    }
}

.ContentBlocks-itemCards .Card {
    position: relative;
    z-index: 10;
    overflow: hidden;
    box-shadow: 0 24.3px 24.3px -16.2px #a4a097
}

.ContentBlocks-itemCards .Card-background--img {
    height: 100%;
    width: 100%;
    transition-property: transform;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s;
    object-fit: cover;
}

.ContentBlocks-itemCards .Card:hover .Card-background--img {
    --tw-scale-x: 1.1;
    --tw-scale-y: 1.1;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.ContentBlocks-itemCards .Card:hover:before {
    opacity: .7
}

.ContentBlocks-itemCards .Card:before {
    content: "";
    position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: 10;
    height: 100%;
    width: 100%;
    --tw-bg-opacity: 1;
    background-color: rgb(38 36 36 / var(--tw-bg-opacity));
    opacity: 0;
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.ContentBlocks-itemCards .Card-content {
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 10;
    display: flex;
    height: 100%;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding: 1.75rem
}

@media (min-width: 768px) {
    .ContentBlocks-itemCards .Card-content {
        padding:2.75rem
    }
}

.ContentBlocks-itemCards .Card-content:before {
    content: "";
    background: linear-gradient(0deg,#262424 0%,rgba(38,36,36,0) 100%);
    position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: -1;
    height: 100%;
    width: 100%;
    opacity: .7
}

.ContentBlocks-itemCards .Card-content--title {
    margin-bottom: 1rem;
    line-height: 30px;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

@media (min-width: 768px) {
    .ContentBlocks-itemCards .Card-content--title {
        margin-bottom:1.5rem;
        line-height: 35px;
    }
}

@media (min-width: 1024px) {
    .ContentBlocks-itemCards .Card-content--title {
        line-height:42px;
    }
}

.ContentBlocks-itemCards .Latem-icon {
    position: absolute;
    bottom: -50px;
    right: -20vw;
    z-index: 0;
    height: auto;
    width: 80%;
    max-width: 350px;
    opacity: .5
}

@media (min-width: 768px) {
    .ContentBlocks-itemCards .Latem-icon {
        bottom:-110px
    }

    .ContentBlocks-itemCards .Latem-icon {
        max-width: 700px
    }
}

.ContentMedia,.ContentMedia-media {
    position: relative
}

.ContentMedia-media .DateIcon {
    position: absolute;
    top: 1.75rem;
    right: 1.75rem
}

.ContentMedia .Latem-icon {
    position: absolute;
    top: 0px;
    left: -20vw;
    z-index: -1;
    height: auto;
    width: 80%;
    max-width: 350px;
    opacity: .5
}

@media (min-width: 768px) {
    .ContentMedia .Latem-icon {
        max-width:620px
    }
}

.MediaContentLarge {
    margin-left: auto;
    margin-right: auto;
    display: grid;
    grid-template-columns: repeat(1,minmax(0,1fr))
}

@media (min-width: 1024px) {
    .MediaContentLarge {
        grid-template-columns:auto
    }
}

.MediaContentLarge-topTitle,.MediaContentLarge-title,.MediaContentLarge-text,.MediaContentLarge-btn {
    grid-column: span 1 / span 1;
    grid-column-start: 1;
    padding: 0 30px
}

@media screen and (min-width: 1150px) {
    .MediaContentLarge-topTitle,.MediaContentLarge-title,.MediaContentLarge-text,.MediaContentLarge-btn {
        margin-left:calc((100vw - 1172px)/2);
        max-width: 1112px
    }
}

.MediaContentLarge-media {
    position: relative
}

@media (min-width: 1024px) {
    .MediaContentLarge-media {
        grid-column:span 1 / span 1
    }

    .MediaContentLarge-media {
        grid-column-start: 2
    }

    .MediaContentLarge-media {
        grid-row: span 4 / span 4
    }

    .MediaContentLarge-media {
        grid-row-start: 1
    }

    .MediaContentLarge-media {
        max-width: 1000px
    }

    .MediaContentLarge-media {
        align-self: center
    }

    .MediaContentLarge-media {
        justify-self: end
    }
}

.MediaContentLarge-media--icon {
    position: absolute;
    left: 10%;
    bottom: 4%
}

@media (min-width: 1024px) {
    .MediaContentLarge-media--icon {
        left:20%
    }

    .MediaContentLarge-media--icon {
        bottom: 8%
    }
}

@media (min-width: 800px) {
    .mb-half-800 {
        margin-bottom: 50%;
    }
    .mt-half-800 {
        margin-top: 50%;
    }
}

@media (min-width: 1024px) {
    .mb-half-1024 {
        margin-bottom: 50%;
    }
    .mt-half-1024 {
        margin-top: 50%;
    }
}

.Slider-arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    height: 96px;
    width: 96px;
    --tw-border-opacity: 1;
    display: flex;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.Slider-arrow:hover .Slider-arrow--icon {
    --tw-scale-x: 1.1;
    --tw-scale-y: 1.1;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.Slider-arrow--prev {
    left: 1.5rem
}

.Slider-arrow--prev .Slider-arrow--icon {
    --tw-rotate: 180deg;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.Slider-arrow--next {
    right: 1.5rem
}
@media screen and (max-width: 915px) {
    .Slider-arrow--prev {
        left: -1.5rem
    }
    .Slider-arrow--next {
        right: -1.5rem
    }
}

.Slider-arrow--icon {
    height: 18px;
    width: 35px;
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.Slider-arrow--icon * {
    fill: #b58e56
}

.popup-window {
    padding: 0!important
}

@media (min-width: 768px) {
    .Newsletter {
        display:flex
    }

    .Newsletter {
        justify-content: space-between
    }

    .Newsletter {
        gap: 2.5rem
    }
}

#ReservationPopup .popup-window {
    max-width: 860px;
}

.ReservationPopup-inner {
    padding: 4rem 1.5rem 3rem;
}

.ReservationPopup-title {
    text-align: center;
    margin-bottom: 2rem;
}

.ReservationPopup-choices {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

.ReservationPopup-content {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0 1.5rem;
}

.ReservationPopup-heading {
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: .75rem;
}

.ReservationPopup-note {
    font-size: 14px !important;
    line-height: 22px !important;
    letter-spacing: 1px;
    opacity: .8;
    max-width: 340px;
    margin-bottom: 1.75rem;
}

.ReservationPopup-btn {
    /* equal-height columns: buttons align at the bottom regardless of text length */
    margin-top: auto;
}

@media (max-width: 767px) {
    .ReservationPopup-content + .ReservationPopup-content {
        border-top: 1px solid rgba(181, 142, 86, .45);
        padding-top: 2.5rem;
    }
}

@media (min-width: 768px) {
    .ReservationPopup-inner {
        padding: 4.5rem 2rem 4rem;
    }

    .ReservationPopup-title {
        margin-bottom: 3rem;
    }

    .ReservationPopup-choices {
        flex-direction: row;
        gap: 0;
    }

    .ReservationPopup-content + .ReservationPopup-content {
        border-left: 1px solid rgba(181, 142, 86, .45);
    }
}


.Newsletter-content {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 5rem;
    padding-bottom: 5rem
}

@media (min-width: 768px) {
    .Newsletter-content {
        padding-left:0;
        padding-right: 0
    }

    .Newsletter-content {
        padding-left: 5rem
    }
}

.Newsletter-content .fui-checkbox-label,.Newsletter-content .fui-input {
    margin-bottom: 0!important
}

.Newsletter-content .fui-checkbox-label:before {
    border: 1px solid var(--primary-color)!important
}

.Newsletter-media {
    display: none;
    width: 100%;
    max-width: 380px;
    --tw-scale-x: -1;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

@media (min-width: 768px) {
    .Newsletter-media {
        display:block
    }
}

.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto
}

@media (min-width: 640px) {
    .container {
        max-width:640px
    }
}

@media (min-width: 768px) {
    .container {
        max-width:768px
    }
}

@media (min-width: 1024px) {
    .container {
        max-width:1024px
    }
}

@media (min-width: 1280px) {
    .container {
        max-width:1280px
    }
}

@media (min-width: 1536px) {
    .container {
        max-width:1536px
    }
}

.TypeHomepage #Header.headroom--top .Header-logo svg * {
    fill: #fff
}

.TypeHomepage #Header.headroom--top .MainNav-item--link {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

.TypeHomepage #Header.headroom--top .LangSwitcher summary {
    color: #fff
}

.TypeHomepage #Header.headroom--top .Toggle-line {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity))
}

.TypeHomepage main {
    margin: 0!important
}

.TypeHomepage .HomepageBanner {
    position: relative;
    display: flex;
    min-height: 100vh;
    align-items: center;
    justify-content: center;
    --tw-bg-opacity: 1;
    background-color: #000;
}
.aspect-\[16\/9\] {
    aspect-ratio: 16 / 9;
}
.TypeHomepage .HomepageBanner:before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0px;
    z-index: 1;
    height: 90px;
    width: 1px;
    --tw-translate-x: -50%;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity))
}

@media (min-width: 768px) {
    .TypeHomepage .HomepageBanner:before {
        bottom:10%
    }

    .TypeHomepage .HomepageBanner:before {
        height: 160px
    }
}

.TypeHomepage .HomepageBanner-content {
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 1200px;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 137px;
    padding-bottom: 137px
}

@media (min-width: 1024px) {
    .TypeHomepage .HomepageBanner-content {
        padding-top:187px;
        padding-bottom: 187px
    }
}

.TypeHomepage .HomepageBanner-content--topTitle {
    margin-bottom: 1rem;
    text-align: center;
    font-size: 10px;
    font-weight: 400;
    line-height: 15px;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

@media (min-width: 768px) {
    .TypeHomepage .HomepageBanner-content--topTitle {
        margin-bottom:2rem;
        font-size: 12px;
    }
}

.TypeHomepage .HomepageBanner-content--title,.TypeHomepage .HomepageBanner-content--title strong,.TypeHomepage .HomepageBanner-content--title b {
    text-align: center;
    font-weight: 400;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}


.TypeHomepage .HomepageBanner-background {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 0;
    height: 100%;
    width: 100%;
    opacity: 0.85;
}

.TypeHomepage .HomepageBanner-background img {
    -o-object-fit: cover;
    object-fit: cover
}

.EventDetail {
    display: block;
    align-items: center;
    justify-content: space-between;
    gap: 2.5rem
}

@media (min-width: 768px) {
    .EventDetail {
        display:flex
    }
}

.EventDetail-content--title {
    margin-top: 2.5rem;
    margin-bottom: 1.25rem
}

.EventDetail-content--intro {
    margin-bottom: 1.75rem;
    width: 100%
}

@media (min-width: 768px) {
    .EventDetail-content--intro {
        margin-bottom:2.5rem
    }

    .EventDetail-content--intro {
        max-width: 420px
    }
}

.EventDetail-content--title,.EventDetail-content--intro p {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

.EventDetail-content--text {
    width: 100%
}

@media (min-width: 768px) {
    .EventDetail-content--text {
        max-width:420px
    }
}

.EventDetail-content--text p {
    font-size: 15px;
    line-height: 30px;
    --tw-text-opacity: 1;
    color: rgb(var(--primary-color-rgb) / var(--tw-text-opacity))
}

.EventDetail-media {
    margin-top: 2.5rem;
    width: 100%
}

@media (min-width: 768px) {
    .EventDetail-media {
        margin-top:0
    }

    .EventDetail-media {
        max-width: 445px
    }
}

.EventSignUp {
    position: relative
}

@media (min-width: 1024px) {
    .EventSignUp {
        display:flex
    }

    .EventSignUp {
        justify-content: flex-start
    }

    .EventSignUp {
        gap: 8rem
    }
}

@media (min-width: 1280px) {
    .EventSignUp {
        gap:13rem
    }
}

.EventSignUp-form {
    margin-bottom: 2.5rem;
    width: 100%
}

@media (min-width: 1024px) {
    .EventSignUp-form {
        max-width:520px
    }

    .EventSignUp-form {
        margin-bottom: 0
    }
}

.EventSignUp-share {
    margin-top: auto
}

@media (min-width: 1024px) {
    .EventSignUp-share {
        margin-bottom:8rem
    }
}

.EventSignUp-share p {
    font-size: 18px;
    font-weight: 500
}

@media (min-width: 768px) {
    .EventSignUp-share p {
        font-size:22px
    }
}

.EventSignUp-share .ShareIcons {
    margin-top: .5rem;
    display: flex;
    gap: .75rem
}

.EventSignUp-share .ShareIcons-link {
    display: flex;
    height: 39px;
    width: 39px;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(38 36 36 / var(--tw-border-opacity));
    transition-property: color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.EventSignUp-share .ShareIcons-link:hover {
    --tw-border-opacity: 1;
    border-color: rgb(var(--primary-color-rgb) / var(--tw-border-opacity))
}

.EventSignUp-share .ShareIcons-link:hover .ShareIcons-link--icon * {
    fill: var(--primary-color)
}

.EventSignUp-share .ShareIcons-link--icon {
    height: 15px
}

.EventSignUp-share .ShareIcons-link--icon * {
    fill: #262424;
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.EventSignUp .Latem-icon {
    position: absolute;
    bottom: -50px;
    right: -10vw;
    z-index: -1;
    height: auto;
    width: 80%;
    max-width: 350px;
    opacity: .4
}

@media (min-width: 768px) {
    .EventSignUp .Latem-icon {
        bottom:-110px
    }

    .EventSignUp .Latem-icon {
        max-width: 620px
    }
}

.EventItem {
    display: flex;
    flex-direction: column;
    --tw-bg-opacity: 1;
    background-color: rgb(38 36 36 / var(--tw-bg-opacity))
}

.EventItem-media {
    position: relative;
    display: block
}

.EventItem-media:hover img {
    --tw-scale-x: 1.1;
    --tw-scale-y: 1.1;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.EventItem-media:before {
    content: "";
    position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: 10;
    height: 50%;
    width: 100%;
    opacity: .7;
    background: linear-gradient(0deg,#262424 0%,rgba(38,36,36,0) 84.19%);
    pointer-events: none
}

.EventItem-media--item {
    overflow: hidden
}

.EventItem-media--item img {
    transition-property: transform;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.EventItem-content {
    position: relative;
    z-index: 10;
    padding: 3rem 2rem 2.5rem
}

@media (min-width: 768px) {
    .EventItem-content {
        padding-left:3rem;
        padding-right: 3rem
    }

    .EventItem-content {
        padding-bottom: 4rem
    }

    .EventItem-content {
        padding-top: 4rem
    }
}

.EventItem-content {
    display: flex;
    height: 100%;
    flex-direction: column;
    align-items: flex-start
}

.EventItem-content .DateIcon {
    position: absolute;
    top: -3.5rem
}

@media (min-width: 768px) {
    .EventItem-content .DateIcon {
        top:-2.5rem
    }
}

.EventItem-content--title,.EventItem-content--text p {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

.MenuBanner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--third-color);
}

@media (min-width: 1024px) {
    .MenuBanner {
        padding-bottom:5rem
    }
}

.MenuBanner-content {
    z-index: 10;
    padding-top: 5rem;
    padding-bottom: 5rem
}

.MenuBanner-title {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

.MenuBanner-categories {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem
}

@media (min-width: 768px) {
    .MenuBanner-categories {
        gap:1.25rem
    }
}

.MenuBanner-categories--link {
    position: relative;
    padding: 10px 18px;
    transition-property: color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s;
    font-size: 11px;
    /*text-transform: uppercase;*/
    line-height: 15px;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

@media (min-width: 768px) {
    .MenuBanner-categories--link {
        font-size:15px
    }

    .MenuBanner-categories--link {
        line-height: 19px
    }
}

.MenuBanner-categories--link:before {
    content: "";
    position: absolute;
    left: 0px;
    bottom: 0px;
    height: 100%;
    width: 100%;
    --tw-scale-x: .5;
    --tw-scale-y: .5;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    border-radius: 2px;
    border-width: 2px;
    --tw-border-opacity: 1;
    border-color: var(--primary-color);
    opacity: 0;
    transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .5s
}

.MenuBanner-categories--link.is-active:before,.MenuBanner-categories--link:hover:before {
    height: 100%;
    width: 100%;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    opacity: 1
}

.MenuBanner-intro p,.MenuBanner-intro p a {
    color: #fff!important
}

.MenuBanner-media {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 1;
    height: 100%;
    width: 100%;
    opacity: .1
}

.MenuBanner-media img {
    -o-object-fit: cover;
    object-fit: cover
}

.MenuOverview2 {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 980px;
    padding:0 30px;
}

@media screen and (max-width: 915px) {
    .MenuOverview2 {
        padding: 0;
    }
}

.MenuOverview2 .swiper {
    min-height: 320px
}

.MenuOverview {
    position: relative;
    z-index: 11;
    --tw-bg-opacity: 1;
    background-color: rgb(247 245 238 / var(--tw-bg-opacity))
}

@media (min-width: 1024px) {
    .MenuOverview {
        margin-top:-5rem
    }
}

.MenuOverview-nav {
    display: flex;
    align-items: center;
    padding-top: 4rem
}

.MenuOverview-nav--prev {
    --tw-rotate: 180deg;
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.MenuOverview-nav--icon {
    height: 14px;
    width: 30px
}

.MenuOverview-nav--arrow svg * {
    fill: #000
}

.MenuOverview-nav--arrow.swiper-button-disabled {
    pointer-events: none;
    opacity: .3
}

.MenuOverview-nav--count {
    margin-left: 1rem;
    margin-right: 1rem;
    font-size: 18px;
    letter-spacing: 0px;
    width: auto!important
}

.MenuOverview-items {
    margin-top: 3rem;
    min-height: 200px!important
}

.MenuOverview-items--title strong:before {
    bottom: -.5rem;
    height: 25px
}

.MenuItems {
    margin-top: 3.5rem
}

.MenuItem {
    margin-bottom: 1.5rem;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 2.5rem
}

.MenuItem:last-child {
    margin-bottom: 0!important
}

.MenuItem-title,.MenuItem-money {
    display: flex;
    font-size: 16px;
    font-weight: 400;
    /*text-transform: uppercase;*/
    line-height: 20px;
}

.MenuItem .ItemIntro {
    font-size: 14px;
    font-weight: 300;
    line-height: 22px;
}

.MenuItem .ItemInfo {
    font-size: 12px;
    font-weight: 400;
    /*text-transform: uppercase;*/
    font-style: italic;
    line-height: 18px;
}

.Suggestions {
    position: relative;
    --tw-bg-opacity: 1;
    background-color: rgb(var(--primary-color-rgb) / var(--tw-bg-opacity));
    padding-top: 5rem;
    padding-bottom: 5rem
}

.Suggestions-wrapper {
    --tw-bg-opacity: 1;
    background-color: rgb(var(--primary-color-rgb) / var(--tw-bg-opacity))
}

@media (min-width: 1024px) {
    .Suggestions-wrapper {
        background-color:transparent
    }
}

.Suggestions-title,.Suggestions .MenuItems {
    position: relative;
    z-index: 10;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 980px
}

@media screen and (min-width: 1024px) {
    .Suggestions-title,.Suggestions .MenuItems {
        padding:0 30px
    }
}

.Suggestions .Latem-icon {
    position: absolute;
    bottom: -50px;
    right: -20px;
    z-index: 1;
    height: auto;
    width: 80%;
    max-width: 350px;
    opacity: .2
}

@media (min-width: 768px) {
    .Suggestions .Latem-icon {
        bottom:-65px
    }

    .Suggestions .Latem-icon {
        right: 1rem
    }

    .Suggestions .Latem-icon {
        max-width: 380px
    }
}

.ContactForm {
    position: relative
}

.ContactForm-info {
    font-size: 13px;
    line-height: 26px;
}

.ContactForm .Latem-icon {
    position: absolute;
    bottom: -50px;
    right: -20vw;
    z-index: -1;
    height: auto;
    width: 80%;
    max-width: 350px;
    opacity: .5
}

@media (min-width: 768px) {
    .ContactForm .Latem-icon {
        bottom:-110px
    }

    .ContactForm .Latem-icon {
        max-width: 700px
    }
}

.hover\:fill-tertiary:hover {
    fill: #f7f5ee
}

.hover\:text-tertiary:hover {
    --tw-text-opacity: 1;
    color: rgb(247 245 238 / var(--tw-text-opacity))
}

.hover\:text-primary:hover {
    --tw-text-opacity: 1;
    color: rgb(var(--primary-color-rgb) / var(--tw-text-opacity))
}

.hover\:opacity-100:hover {
    opacity: 1
}

.group:hover .group-hover\:block {
    display: block
}

.group:hover .group-hover\:opacity-100 {
    opacity: 1
}

.grid-cols-2 {
    grid-template-columns: repeat(2,minmax(0,1fr))
}

@media (min-width: 640px) {
    .sm\:m-0 {
        margin:0
    }

    .sm\:mt-16 {
        margin-top: 4rem
    }

    .sm\:mt-0 {
        margin-top: 0
    }

    .sm\:block {
        display: block
    }

    .sm\:flex {
        display: flex
    }

    .sm\:columns-2 {
        -moz-columns: 2;
        columns: 2
    }

    .sm\:grid-cols-2 {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }

    .sm\:flex-wrap {
        flex-wrap: wrap
    }

    .sm\:items-center {
        align-items: center
    }

    .sm\:justify-between {
        justify-content: space-between
    }

    .sm\:gap-8 {
        gap: 2rem
    }
}

@media (min-width: 768px) {
    .md\:my-0 {
        margin-top:0;
        margin-bottom: 0
    }

    .md\:mt-12 {
        margin-top: 3rem
    }

    .md\:mb-10 {
        margin-bottom: 2.5rem
    }

    .md\:mb-8 {
        margin-bottom: 2rem
    }

    .md\:mt-6 {
        margin-top: 1.5rem
    }

    .md\:ml-12 {
        margin-left: 3rem
    }

    .md\:mb-0 {
        margin-bottom: 0
    }

    .md\:mr-12 {
        margin-right: 3rem
    }

    .md\:mb-14 {
        margin-bottom: 3.5rem
    }

    .md\:mt-10 {
        margin-top: 2.5rem
    }

    .md\:mt-16 {
        margin-top: 4rem
    }

    .md\:mt-0 {
        margin-top: 0
    }

    .md\:mt-24 {
        margin-top: 6rem
    }

    .md\:mb-16 {
        margin-bottom: 4rem
    }

    .md\:mb-24 {
        margin-bottom: 6rem
    }

    .md\:flex {
        display: flex
    }

    .md\:max-w-\[152px\] {
        max-width: 152px
    }

    .md\:max-w-\[280px\] {
        max-width: 280px
    }

    .md\:max-w-\[570px\] {
        max-width: 570px
    }

    .md\:max-w-\[550px\] {
        max-width: 550px
    }

    .md\:max-w-\[520px\] {
        max-width: 520px
    }

    .md\:max-w-\[445px\] {
        max-width: 445px
    }

    .md\:flex-row {
        flex-direction: row
    }

    .md\:flex-row-reverse {
        flex-direction: row-reverse
    }

    .md\:justify-between {
        justify-content: space-between
    }

    .md\:gap-16 {
        gap: 4rem
    }

    .md\:gap-5 {
        gap: 1.25rem
    }
}

@media (min-width: 1024px) {
    .lg\:mt-\[187px\] {
        margin-top:187px
    }

    .lg\:flex {
        display: flex
    }

    .lg\:hidden {
        display: none
    }

    .lg\:max-w-\[450px\] {
        max-width: 450px
    }

    .lg\:justify-end {
        justify-content: flex-end
    }

    .lg\:gap-20 {
        gap: 5rem
    }
}

.glightbox-container {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999!important;
    overflow: hidden;
    touch-action: none;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    outline: 0
}

.glightbox-container.inactive {
    display: none
}

.glightbox-container .gcontainer {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 9999;
    overflow: hidden
}

.glightbox-container .gslider {
    transition: transform .4s ease;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    position: relative;
    overflow: hidden;
    display: flex!important;
    justify-content: center;
    align-items: center;
    transform: translateZ(0)
}

.glightbox-container .gslide {
    width: 100%;
    position: absolute;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0
}

.glightbox-container .gslide.current {
    opacity: 1;
    z-index: 99999;
    position: relative
}

.glightbox-container .gslide.prev {
    opacity: 1;
    z-index: 9999
}

.glightbox-container .gslide-inner-content {
    width: 100%
}

.glightbox-container .ginner-container {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    max-width: 100%;
    margin: auto;
    height: 100vh
}

.glightbox-container .ginner-container.gvideo-container {
    width: 100%
}

.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top {
    flex-direction: column
}

.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right {
    max-width: 100%!important
}

.gslide iframe,.gslide video {
    outline: 0!important;
    border: none;
    min-height: 165px;
    -webkit-overflow-scrolling: touch;
    touch-action: auto
}

.gslide:not(.current) {
    pointer-events: none
}

.gslide-image {
    align-items: center
}

.gslide-image img {
    max-height: 100vh;
    display: block;
    padding: 0;
    float: none;
    outline: 0;
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    max-width: 100vw;
    width: auto;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    touch-action: none;
    margin: auto;
    min-width: 200px
}

.desc-bottom .gslide-image img,.desc-top .gslide-image img {
    width: auto
}

.desc-left .gslide-image img,.desc-right .gslide-image img {
    width: auto;
    max-width: 100%
}

.gslide-image img.zoomable {
    position: relative
}

.gslide-image img.dragging {
    cursor: -webkit-grabbing!important;
    cursor: grabbing!important;
    transition: none
}

.gslide-video {
    position: relative;
    max-width: 100vh;
    width: 100%!important
}

.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster {
    display: none
}

.gslide-video .gvideo-wrapper {
    width: 100%;
    margin: auto
}

.gslide-video:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(255,0,0,.34);
    display: none
}

.gslide-video.playing:before {
    display: none
}

.gslide-video.fullscreen {
    max-width: 100%!important;
    min-width: 100%;
    height: 75vh
}

.gslide-video.fullscreen video {
    max-width: 100%!important;
    width: 100%!important
}

.gslide-inline {
    background: #fff;
    text-align: left;
    max-height: calc(100vh - 40px);
    overflow: auto;
    max-width: 100%;
    margin: auto
}

.gslide-inline .ginlined-content {
    padding: 20px;
    width: 100%
}

.gslide-inline .dragging {
    cursor: -webkit-grabbing!important;
    cursor: grabbing!important;
    transition: none
}

.ginlined-content {
    overflow: auto;
    display: block!important;
    opacity: 1
}

.gslide-external {
    display: flex;
    width: 100%;
    min-width: 100%;
    background: #fff;
    padding: 0;
    overflow: auto;
    max-height: 75vh;
    height: 100%
}

.gslide-media {
    display: flex;
    width: auto
}

.zoomed .gslide-media {
    box-shadow: none!important
}

.desc-bottom .gslide-media,.desc-top .gslide-media {
    margin: 0 auto;
    flex-direction: column
}

.gslide-description {
    position: relative;
    flex: 1 0 100%
}

.gslide-description.description-left,.gslide-description.description-right {
    max-width: 100%
}

.gslide-description.description-bottom,.gslide-description.description-top {
    margin: 0 auto;
    width: 100%
}

.gslide-description p {
    margin-bottom: 12px
}

.gslide-description p:last-child {
    margin-bottom: 0
}

.zoomed .gslide-description,.glightbox-button-hidden {
    display: none
}

.glightbox-mobile .glightbox-container .gslide-description {
    height: auto!important;
    width: 100%;
    position: absolute;
    bottom: 0;
    padding: 19px 11px 50px;
    max-width: 100vw!important;
    order: 2!important;
    max-height: 78vh;
    overflow: auto!important;
    background: linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);
    transition: opacity .3s linear
}

.glightbox-mobile .glightbox-container .gslide-title {
    color: #fff;
    font-size: 1em
}

.glightbox-mobile .glightbox-container .gslide-desc {
    color: #a1a1a1
}

.glightbox-mobile .glightbox-container .gslide-desc a {
    color: #fff;
    font-weight: 700
}

.glightbox-mobile .glightbox-container .gslide-desc * {
    color: inherit
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
    color: #fff;
    opacity: .4
}

.gdesc-open .gslide-media {
    transition: opacity .5s ease;
    opacity: .4
}

.gdesc-open .gdesc-inner {
    padding-bottom: 30px
}

.gdesc-closed .gslide-media {
    transition: opacity .5s ease;
    opacity: 1
}

.greset {
    transition: all .3s ease
}

.gabsolute {
    position: absolute
}

.grelative {
    position: relative
}

.glightbox-desc {
    display: none!important
}

.glightbox-open {
    overflow: hidden
}

.gloader {
    height: 25px;
    width: 25px;
    -webkit-animation: lightboxLoader .8s infinite linear;
    animation: lightboxLoader .8s infinite linear;
    border: 2px solid #fff;
    border-right-color: transparent;
    border-radius: 50%;
    position: absolute;
    display: block;
    z-index: 9999;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 47%
}

.goverlay {
    width: 100%;
    height: calc(100vh + 1px);
    position: fixed;
    top: -1px;
    left: 0;
    background: #000;
    will-change: opacity
}

.glightbox-mobile .goverlay {
    background: #000
}

.gclose,.gnext,.gprev {
    z-index: 99999;
    cursor: pointer;
    width: 26px;
    height: 44px;
    border: none;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

.gclose svg,.gnext svg,.gprev svg {
    display: block;
    width: 25px;
    height: auto;
    margin: 0;
    padding: 0
}

.gclose.disabled,.gnext.disabled,.gprev.disabled {
    opacity: .1
}

.gclose .garrow,.gnext .garrow,.gprev .garrow {
    stroke: #fff
}

.gbtn.focused {
    outline: 2px solid #0f3d81
}

iframe.wait-autoplay {
    opacity: 0
}

.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev {
    opacity: 0!important
}

.glightbox-clean .gslide-description {
    background: #fff
}

.glightbox-clean .gdesc-inner {
    padding: 22px 20px
}

.glightbox-clean .gslide-title {
    font-size: 1em;
    font-weight: 400;
    font-family: arial;
    color: #000;
    margin-bottom: 19px;
    line-height: 1.4em
}

.glightbox-clean .gslide-desc {
    font-size: .86em;
    margin-bottom: 0;
    font-family: arial;
    line-height: 1.4em
}

.glightbox-clean .gslide-video {
    background: #000
}

.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev {
    background-color: #000000bf;
    border-radius: 4px
}

.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path {
    fill: #fff
}

.glightbox-clean .gprev {
    position: absolute;
    top: -100%;
    left: 30px;
    width: 40px;
    height: 50px
}

.glightbox-clean .gnext {
    position: absolute;
    top: -100%;
    right: 30px;
    width: 40px;
    height: 50px
}

.glightbox-clean .gclose {
    width: 35px;
    height: 35px;
    top: 15px;
    right: 10px;
    position: absolute
}

.glightbox-clean .gclose svg {
    width: 18px;
    height: auto
}

.glightbox-clean .gclose:hover {
    opacity: 1
}

.gfadeIn {
    -webkit-animation: gfadeIn .5s ease;
    animation: gfadeIn .5s ease
}

.gfadeOut {
    -webkit-animation: gfadeOut .5s ease;
    animation: gfadeOut .5s ease
}

.gslideOutLeft {
    -webkit-animation: gslideOutLeft .3s ease;
    animation: gslideOutLeft .3s ease
}

.gslideInLeft {
    -webkit-animation: gslideInLeft .3s ease;
    animation: gslideInLeft .3s ease
}

.gslideOutRight {
    -webkit-animation: gslideOutRight .3s ease;
    animation: gslideOutRight .3s ease
}

.gslideInRight {
    -webkit-animation: gslideInRight .3s ease;
    animation: gslideInRight .3s ease
}

.gzoomIn {
    -webkit-animation: gzoomIn .5s ease;
    animation: gzoomIn .5s ease
}

.gzoomOut {
    -webkit-animation: gzoomOut .5s ease;
    animation: gzoomOut .5s ease
}

@-webkit-keyframes lightboxLoader {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

@keyframes lightboxLoader {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

@-webkit-keyframes gfadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes gfadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes gfadeOut {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes gfadeOut {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@-webkit-keyframes gslideInLeft {
    0% {
        opacity: 0;
        transform: translate3d(-60%,0,0)
    }

    to {
        visibility: visible;
        transform: translateZ(0);
        opacity: 1
    }
}

@keyframes gslideInLeft {
    0% {
        opacity: 0;
        transform: translate3d(-60%,0,0)
    }

    to {
        visibility: visible;
        transform: translateZ(0);
        opacity: 1
    }
}

@-webkit-keyframes gslideOutLeft {
    0% {
        opacity: 1;
        visibility: visible;
        transform: translateZ(0)
    }

    to {
        transform: translate3d(-60%,0,0);
        opacity: 0;
        visibility: hidden
    }
}

@keyframes gslideOutLeft {
    0% {
        opacity: 1;
        visibility: visible;
        transform: translateZ(0)
    }

    to {
        transform: translate3d(-60%,0,0);
        opacity: 0;
        visibility: hidden
    }
}

@-webkit-keyframes gslideInRight {
    0% {
        opacity: 0;
        visibility: visible;
        transform: translate3d(60%,0,0)
    }

    to {
        transform: translateZ(0);
        opacity: 1
    }
}

@keyframes gslideInRight {
    0% {
        opacity: 0;
        visibility: visible;
        transform: translate3d(60%,0,0)
    }

    to {
        transform: translateZ(0);
        opacity: 1
    }
}

@-webkit-keyframes gslideOutRight {
    0% {
        opacity: 1;
        visibility: visible;
        transform: translateZ(0)
    }

    to {
        transform: translate3d(60%,0,0);
        opacity: 0
    }
}

@keyframes gslideOutRight {
    0% {
        opacity: 1;
        visibility: visible;
        transform: translateZ(0)
    }

    to {
        transform: translate3d(60%,0,0);
        opacity: 0
    }
}

@-webkit-keyframes gzoomIn {
    0% {
        opacity: 0;
        transform: scale3d(.3,.3,.3)
    }

    to {
        opacity: 1
    }
}

@keyframes gzoomIn {
    0% {
        opacity: 0;
        transform: scale3d(.3,.3,.3)
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes gzoomOut {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0;
        transform: scale3d(.3,.3,.3)
    }

    to {
        opacity: 0
    }
}

@keyframes gzoomOut {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0;
        transform: scale3d(.3,.3,.3)
    }

    to {
        opacity: 0
    }
}

@media (min-width: 769px) {
    .glightbox-container .ginner-container {
        width:auto;
        height: auto;
        flex-direction: row
    }

    .glightbox-container .ginner-container.desc-top .gslide-description {
        order: 0
    }

    .glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img {
        order: 1
    }

    .glightbox-container .ginner-container.desc-left .gslide-description {
        order: 0
    }

    .glightbox-container .ginner-container.desc-left .gslide-image {
        order: 1
    }

    .gslide-image img {
        max-height: 97vh;
        max-width: 100%
    }

    .gslide-image img.zoomable {
        cursor: zoom-in
    }

    .zoomed .gslide-image img.zoomable {
        cursor: -webkit-grab;
        cursor: grab
    }

    .gslide-inline {
        max-height: 95vh
    }

    .gslide-external {
        max-height: 100vh
    }

    .gslide-description.description-left,.gslide-description.description-right {
        max-width: 275px
    }

    .glightbox-open {
        height: auto
    }

    .goverlay {
        background: rgba(0,0,0,.92)
    }

    .glightbox-clean .gslide-media {
        box-shadow: 1px 2px 9px #000000a6
    }

    .glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner {
        position: absolute;
        height: 100%;
        overflow-y: auto
    }

    .glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev {
        background-color: #00000052
    }

    .glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover {
        background-color: #000000b3
    }

    .glightbox-clean .gprev,.glightbox-clean .gnext {
        top: 45%
    }
}

@media (min-width: 992px) {
    .glightbox-clean .gclose {
        opacity:.7;
        right: 20px
    }
}

@media screen and (max-height: 420px) {
    .goverlay {
        background:#000
    }
}

@font-face {
    font-family: swiper-icons;
    src: url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-android .swiper-slide,.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-pointer-events {
    touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform,height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0,0,0,.15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-start: var(--swiper-centered-offset-before);
    margin-inline-start:var(--swiper-centered-offset-before)}

.swiper-centered.swiper-horizontal>.swiper-wrapper: before {
    height:100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-before: var(--swiper-centered-offset-before);
    margin-block-start:var(--swiper-centered-offset-before)}

.swiper-centered.swiper-vertical>.swiper-wrapper: before {
    width:100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next,.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/ 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color,var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev {
    display: none!important
}

.swiper-button-next:after,.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none!important;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev,.swiper-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next,.swiper-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: .3s opacity;
    transform: translateZ(0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled {
    display: none!important
}

.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));
    height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));
    display: inline-block;
    border-radius: 50%;
    background: var(--swiper-pagination-bullet-inactive-color,#000);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none!important
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color,var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0,-50%,0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap,6px) 0;
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: .2s transform,.2s top
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap,4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translate(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform,.2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform,.2s right
}

.swiper-pagination-progressbar {
    background: rgba(0,0,0,.25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color,var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-lock {
    display: none
}

.takeaway-container {
    display: flex;
    justify-content: center;
    margin-bottom: 80px;
}

.takeaway-image {
    width: 75%;
}

.block-image-right {
    display: flex;
    .block-image-image {
        display: flex;
        justify-content: right;
        img {
            min-width: 400px;
        }
    }
}
.block-image-right-reverse {
    display: flex;
    .block-image-image {
        display: flex;
        justify-content: right;
        img {
            min-width: 400px;
        }
    }
}

@media screen and (max-width: 915px) {
    .block-image-right-reverse {
        flex-wrap: wrap-reverse;
        row-gap: 20px;
        .block-image-image {
            width: 100%;
            justify-content: center;
            padding: 0 30px;
            img {
                min-width: unset;
            }
        }
    }
    .block-image-right {
        flex-wrap: wrap;
        row-gap: 20px;
        .block-image-image {
            width: 100%;
            justify-content: center;
            padding: 0 30px;
            img {
                min-width: unset;
            }
        }
    }
}

/* Keep menu rows stable: left content wraps, price fixed on the right */
.MenuItem {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: start;
}

/* Allow the left column to shrink and wrap instead of pushing price */
.MenuItem > div:first-child {
    min-width: 0;
}

/* Wrap long titles/descriptions gracefully */
.MenuItem-title {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.MenuItem .ItemInfo {
    overflow-wrap: anywhere;
    word-break: break-word;
    /* if ItemInfo is flex (from utility class), allow wrapping */
    flex-wrap: wrap;
}

/* Ensure slides don�t bleed into the next one */
.MenuOverview-items {
    overflow: hidden;
}

/* Keep price on one line and aligned right */
.MenuItem-money {
    white-space: nowrap;
    text-align: right;
}

/* Bar & Bites gallery */
.bottom-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.bottom-gallery__img {
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 9 / 13;
}

/* Language switcher dropdown (NL / FR / EN) */
.LangSwitcher {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 1.5rem;
}

.LangSwitcher summary {
    display: flex;
    align-items: center;
    gap: 7px;
    cursor: pointer;
    list-style: none;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 4px 0;
}

.LangSwitcher summary::-webkit-details-marker {
    display: none;
}

.LangSwitcher summary::after {
    content: "";
    width: 6px;
    height: 6px;
    margin-top: -3px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg);
    transition: transform .2s ease;
}

.LangSwitcher[open] summary::after {
    margin-top: 3px;
    transform: rotate(225deg);
}

.LangSwitcher-menu {
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    min-width: 64px;
    padding: 4px 0;
    background: #fff;
    border: 1px solid rgba(38, 36, 36, .15);
    box-shadow: 0 4px 14px rgba(0, 0, 0, .12);
    z-index: 100;
}

.LangSwitcher-menu .LangSwitcher-link {
    padding: 8px 16px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
}

.LangSwitcher-menu .LangSwitcher-link:hover {
    background: #f7f5ee;
}

@media screen and (max-width: 1023px) {
    .LangSwitcher {
        margin: 1.5rem 0;
        align-self: flex-start;
    }

    .LangSwitcher summary {
        color: #fff;
    }

    .LangSwitcher-menu {
        left: 0;
        transform: none;
    }
}

/* Sticky mobile "Reserveren" CTA */
.MobileReserverenCTA {
    display: none;
}

@media screen and (max-width: 1023px) {
    .MobileReserverenCTA {
        display: flex;
        justify-content: center;
        gap: 10px;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        /* below .popup-container / .Header-wrapper.show-nav (both z-index: 99) */
        z-index: 60;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
        background: linear-gradient(to top, rgba(247, 245, 238, .97) 55%, rgba(247, 245, 238, 0));
    }

    .MobileReserverenCTA .btn {
        flex: 1 1 0;
        max-width: 250px;
        justify-content: center;
        text-align: center;
        box-shadow: 0 4px 14px rgba(0, 0, 0, .25);
    }

    .MobileReserverenCTA .MobileReserverenCTA-call {
        flex: 0 1 auto;
        background-color: var(--primary-color);
        border-color: transparent;
        color: var(--contrast-color);
    }

    .Footer {
        padding-bottom: calc(5rem + 76px + env(safe-area-inset-bottom, 0px));
    }
}
/* ============================================================
   CMS landing pages (views/page.php)
   Image reveal animations in the spirit of the design reference:
   directional clip-path reveals + a small parallax translate,
   driven by IntersectionObserver in custom.js (html.lp-anim).
   ============================================================ */

.LandingPage .LandingBlock {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

@media (min-width: 768px) {
    .LandingPage .LandingBlock {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
}

/* --- Hero ---
   Full-bleed banner in the style of the homepage banner (same treatment,
   own LandingHero naming): dimmed cover image on black, centered white
   title, white line at the bottom, white header while at the top. */
.TypeLandingHero main {
    margin: 0 !important;
}

.TypeLandingHero #Header.headroom--top .Header-logo svg * {
    fill: #fff;
}

.TypeLandingHero #Header.headroom--top .MainNav-item--link {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
}

.TypeLandingHero #Header.headroom--top .LangSwitcher summary {
    color: #fff;
}

.TypeLandingHero #Header.headroom--top .Toggle-line {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.LandingPage .LandingHero {
    position: relative;
    display: flex;
    min-height: 80vh;
    align-items: center;
    justify-content: center;
    background-color: #000;
    padding-top: 0;
    padding-bottom: 0;
}

@media (min-width: 768px) {
    .LandingPage .LandingHero {
        min-height: 100vh;
    }
}

/* Dark overlay between image and text so the title stays readable on
   light hero images (sits above the background, below the content).
   Strength comes from the hero block's "overlay" setting via
   --hero-overlay (0..1) set inline on the section; edges use the full
   value, the middle a bit less. */
.LandingHero {
    --hero-overlay: 0.4;
}

.LandingHero:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, var(--hero-overlay)) 0%,
        rgba(0, 0, 0, calc(var(--hero-overlay) * 0.7)) 50%,
        rgba(0, 0, 0, var(--hero-overlay)) 100%
    );
}

/* White line at the bottom: tablet and up only, hidden on mobile. */
@media (min-width: 768px) {
    .LandingHero:before {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 10%;
        z-index: 1;
        height: 160px;
        width: 1px;
        transform: translateX(-50%);
        background-color: #fff;
    }
}

.LandingHero-content {
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 1200px;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 137px;
    padding-bottom: 137px;
}

@media (min-width: 1024px) {
    .LandingHero-content {
        padding-top: 187px;
        padding-bottom: 187px;
    }
}

.LandingHero-title,
.LandingHero-title strong,
.LandingHero-title b {
    text-align: center;
    font-weight: 400;
    color: #fff;
}

.LandingHero-cta {
    display: flex;
    justify-content: center;
    margin-top: 2rem;
}

@media (min-width: 768px) {
    .LandingHero-cta {
        margin-top: 2.5rem;
    }
}

.LandingHero-background {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    height: 100%;
    width: 100%;
    opacity: 0.85;
}

.LandingHero-background img {
    object-fit: cover;
}

.LandingBlock-heroIntro {
    max-width: 860px;
}

.LandingBlock-ctaWrap {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.5rem;
    margin-top: 2rem;
}

/* --- Text --- */
.LandingBlock-textInner {
    max-width: 860px;
}

/* --- Text + image --- */
.LandingBlock--textImage {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

@media (min-width: 768px) {
    .LandingBlock--textImage {
        flex-direction: row;
        align-items: center;
        gap: 4rem;
    }

    .LandingBlock--textImage.is-imageLeft {
        flex-direction: row-reverse;
    }

    .LandingBlock--textImage .LandingBlock-col {
        width: 50%;
    }
}

.LandingBlock-col--image img {
    width: 100%;
    object-fit: cover;
}

/* --- Split screen --- */
.LandingBlock--split {
    display: flex;
    flex-direction: column;
    background-color: rgb(var(--primary-color-rgb) / 0.25);
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 3rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    .LandingBlock--split {
        flex-direction: row;
        margin-top: 5rem;
        margin-bottom: 5rem;
    }

    .LandingBlock--split.is-imageRight {
        flex-direction: row-reverse;
    }

    .LandingBlock--split > * {
        width: 50%;
    }
}

.LandingBlock-splitImage img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
}

.LandingBlock-splitContent {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 2.5rem 30px;
}

@media (min-width: 1024px) {
    .LandingBlock-splitContent {
        padding: 5rem 6vw;
    }
}

/* --- Image row (1-3) --- */
.LandingBlock--images {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
}

@media (min-width: 640px) {
    .LandingBlock--images[data-count="2"],
    .LandingBlock--images[data-count="3"] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .LandingBlock--images[data-count="3"] {
        grid-template-columns: repeat(3, 1fr);
    }
}

.LandingBlock-imageItem img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
}

.LandingBlock--images[data-count="1"] .LandingBlock-imageItem img {
    aspect-ratio: 16 / 9;
}

/* --- FAQ --- */
.LandingBlock--faq .LandingBlock-faqList {
    max-width: 860px;
}

.LandingBlock-faqItem {
    border-bottom: 1px solid rgb(0 0 0 / 0.15);
}

.LandingBlock-faqItem summary {
    cursor: pointer;
    list-style: none;
    position: relative;
    padding: 1.25rem 3rem 1.25rem 0;
    font-weight: 400;
    letter-spacing: 2px;
    font-size: 18px;
}

@media (min-width: 768px) {
    .LandingBlock-faqItem summary {
        font-size: 20px;
    }
}

.LandingBlock-faqItem summary::-webkit-details-marker {
    display: none;
}

.LandingBlock-faqItem summary:after {
    content: "+";
    position: absolute;
    right: 0.5rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 26px;
    font-weight: 300;
    transition: transform 0.25s ease;
}

.LandingBlock-faqItem[open] summary:after {
    transform: translateY(-50%) rotate(45deg);
}

.LandingBlock-faqAnswer {
    padding: 0 0 1.5rem;
}

.LandingBlock-faqAnswer p {
    font-size: 16px;
    line-height: 30px;
}

@media (min-width: 768px) {
    .LandingBlock-faqAnswer p {
        font-size: 18px;
        line-height: 34px;
    }
}

/* --- CTA --- */
.LandingBlock--cta .LandingBlock-ctaInner {
    max-width: 860px;
    margin: 0 auto;
    text-align: center;
    padding: 3rem 30px;
    background-color: rgb(var(--primary-color-rgb) / 0.25);
}

.LandingBlock--cta .LandingBlock-ctaWrap {
    justify-content: center;
}

.LandingBlock-phone {
    font-size: 18px;
    letter-spacing: 2px;
}

/* --- Internal links --- */
.LandingBlock--links {
    padding-top: 0;
}

.LandingBlock-linkList ul {
    list-style: none;
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 3rem;
}

/* --- Reveal animations ---
   Hidden states only apply once custom.js has added .lp-anim to <html>,
   so content stays visible without JS and with reduced motion. */
@media (prefers-reduced-motion: no-preference) {
    html.lp-anim .lp-fade {
        opacity: 0;
        transform: translateY(28px);
        transition: opacity 0.9s ease, transform 0.9s ease;
        transition-delay: var(--lp-delay, 0ms);
    }

    html.lp-anim .lp-fade.is-inview {
        opacity: 1;
        transform: translateY(0);
    }

    html.lp-anim .show-image-left,
    html.lp-anim .show-image-right,
    html.lp-anim .show-image-bottom {
        overflow: hidden;
    }

    html.lp-anim .show-image-left img,
    html.lp-anim .show-image-right img,
    html.lp-anim .show-image-bottom img {
        transition: clip-path 1.1s cubic-bezier(0.22, 1, 0.36, 1), transform 1.1s cubic-bezier(0.22, 1, 0.36, 1);
        transition-delay: var(--lp-delay, 0ms);
        will-change: clip-path, transform;
    }

    html.lp-anim .show-image-left img {
        clip-path: inset(0 30% 0 0);
        transform: translateX(-8%);
    }

    html.lp-anim .show-image-right img {
        clip-path: inset(0 0 0 30%);
        transform: translateX(8%);
    }

    html.lp-anim .show-image-bottom img {
        clip-path: inset(0 0 30% 0);
        transform: translateY(-8%);
    }

    html.lp-anim .show-image-left.is-inview img,
    html.lp-anim .show-image-right.is-inview img,
    html.lp-anim .show-image-bottom.is-inview img {
        clip-path: inset(0);
        transform: translate(0, 0);
    }
}

/* ============================================================
   Homepage: Restaurant / Bar & Bites split cards (under the hero)
   ============================================================ */
.HomeSplit {
    padding: 0 30px;
}

.HomeSplit-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    max-width: 1112px;
    margin: 0 auto;
}

@media (min-width: 768px) {
    .HomeSplit-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.5rem;
    }
}

.HomeSplit-card {
    --split-accent: var(--third-color);
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border: 1px solid rgb(181 142 86 / 0.55);
    color: #262424;
    text-decoration: none;
    overflow: hidden;
    transition: border-color .5s, box-shadow .5s, transform .5s;
}

.HomeSplit-card--barbites {
    --split-accent: #b58e56;
}

.HomeSplit-card:hover,
.HomeSplit-card:focus-visible {
    border-color: #b58e56;
    box-shadow: 0 18px 40px -24px rgb(38 36 36 / 0.35);
    transform: translateY(-4px);
}

.HomeSplit-media {
    position: relative;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background-color: rgb(var(--primary-color-rgb) / 0.25);
}

.HomeSplit-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.1s cubic-bezier(0.22, 1, 0.36, 1);
}

.HomeSplit-card:hover .HomeSplit-image {
    transform: scale(1.04);
}

.HomeSplit-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 1.75rem 1.75rem 2rem;
}

@media (min-width: 1024px) {
    .HomeSplit-body {
        padding: 2.25rem 2.5rem 2.5rem;
    }
}

.HomeSplit-title {
    font-size: 24px;
    line-height: 30px;
    font-weight: bold;
    margin: 0 0 0 -0.05em; /* optical: compensate Portland's capital side bearing */
}

@media (min-width: 768px) {
    .HomeSplit-title {
        font-size: 26px;
        line-height: 32px;
    }
}

.HomeSplit-eyebrow {
    margin: .6rem 0 0;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: var(--split-accent);
}

.HomeSplit-text {
    margin: 1.1rem 0 0;
    font-size: 15px;
    line-height: 26px;
    letter-spacing: .5px;
}

.HomeSplit-cta {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    margin-top: auto;
    padding-top: 1.5rem;
    font-size: 15px;
    line-height: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    color: var(--split-accent);
}

.HomeSplit-cta--icon {
    flex: 0 0 auto;
    transition: transform .5s;
}

.HomeSplit-cta--icon path {
    fill: var(--split-accent);
}

.HomeSplit-card:hover .HomeSplit-cta--icon {
    transform: translateX(6px);
}

/* ------------------------------------------------------------
   REVERTABLE OVERRIDE (2026-09-16): keep the Restaurant / Bar & Bites
   cards side by side on mobile instead of stacking them.
   To revert to the stacked mobile layout, delete this whole block
   (everything between the two dashed comment lines). The base rules
   above are untouched.
   ------------------------------------------------------------ */
@media (max-width: 767px) {
    .HomeSplit {
        padding: 0 15px;
    }

    .HomeSplit-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: .75rem;
    }

    .HomeSplit-media {
        aspect-ratio: 4 / 5;
    }

    .HomeSplit-body {
        padding: .9rem .85rem 1rem;
    }

    .HomeSplit-title {
        font-size: 17px;
        line-height: 22px;
    }

    .HomeSplit-eyebrow {
        margin-top: .35rem;
        font-size: 10px;
        line-height: 14px;
        letter-spacing: 1.5px;
    }

    .HomeSplit-text {
        margin-top: .7rem;
        font-size: 13px;
        line-height: 20px;
        letter-spacing: .3px;
    }

    .HomeSplit-cta {
        padding-top: 1rem;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: .5px;
    }

    .HomeSplit-cta--icon {
        width: 16px;
        height: 9px;
    }
}
/* ---------------------- end revertable override ---------------------- */
