@charset "UTF-8";
/* This file is autogenerated by app_client/build-iconfont.js, do not change */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: outside none none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none;
}

table {
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0;
}

td {
    vertical-align: top;
}

input,
select,
textarea {
    font-family: inherit;
}

:root {
    --vw100: 100vw;
    --layout-padding: 40px;
    --fontsize-default: 18px;
    --header-height: 160px;
    --element-gap: 50px;
    --el-title-fontsize: var(--typo-h1-fs);
    --el-typography-fontsize: 20px;
    --typo-h1-fs: 32px;
    --typo-h2-fs: 24px;
    --typo-h3-fs: 20px;
    --typo-h4-fs: 18px;
    --typo-h5-fs: 18px;
    --typo-h6-fs: 18px;
    --zindex-menu2: 1000;
}
@media (max-width: 880px) {
    :root {
        --header-height: 100px;
    }
}
@media (max-width: 880px) {
    :root {
        --el-title-fontsize: 26px;
    }
}
@media (max-width: 460px) {
    :root {
        --layout-padding: 20px;
        --el-title-fontsize: 20px;
        --fontsize-default: 13px;
        --element-gap: 35px;
    }
}

* {
    -webkit-transform-origin: center center;
    transform-origin: center center;
}

body {
    font-family: "Outfit", sans-serif;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 400;
    color: #000;
    background: white;
}

a {
    text-decoration: none;
    font-weight: inherit;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
}
img {
    max-width: 100%;
    height: auto;
}

strong,
.bold {
    font-weight: 700;
}

em,
.italic {
    font-style: italic;
}

.layout-maxWidth {
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
}

.layout-padding {
    padding-left: var(--layout-padding);
    padding-right: var(--layout-padding);
}
.el-nesting .layout-padding {
    padding-left: 0;
    padding-right: 0;
}

.font-typography,
.typography {
    font-family: "Outfit", sans-serif;
}

.fp-container {
    position: relative;
    overflow: hidden;
}
.fp-container img {
    position: absolute;
    left: 0;
    top: 0;
    margin: 0;
    display: block;
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    max-height: none;
    max-width: none;
}

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

@media (max-width: 880px) {
    .show-min-desktop {
        display: none !important;
    }
}

@media (max-width: 460px) {
    .show-min-tablet {
        display: none !important;
    }
}

@media (min-width: 881px) {
    .show-max-mobile {
        display: none !important;
    }
}

@media (min-width: 461px) {
    .show-max-phone {
        display: none !important;
    }
}

/* outfit-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: "Outfit";
    font-style: normal;
    font-weight: 400;
    src:
        url("./assets/outfit-v14-latin-regular-CxQwsq.woff2") format("woff2"),
        url("./assets/outfit-v14-latin-regular-Dk6BEO.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* outfit-700 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: "Outfit";
    font-style: normal;
    font-weight: 700;
    src:
        url("./assets/outfit-v14-latin-700-B1by5K.woff2") format("woff2"),
        url("./assets/outfit-v14-latin-700-T6IymL.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
@font-face {
    font-family: "iconfont-app";
    src: url("./assets/iconfont-app-DQTtep.eot?t=1782943407072"); /* IE9*/
    src:
        url("./assets/iconfont-app-DQTtep.eot?t=1782943407072#iefix")
            format("embedded-opentype"),
        url("data:font/woff2;base64,d09GMgABAAAAAA5sAAsAAAAAG0QAAA4cAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHFQGYACGFAqiEJxRATYCJAOBAAtCAAQgBYRGB4QnG38XM5J0xj6y//KAOyysc0MUKEodow/+nEYK1qG5XCwORqAOzGR+fsXXWZ6w1VeuODzXCZ0Urx5KSUA/9mufIh4STPfQ8CQuiUQm4SFE8g8Nu1u6NLncj729WMFJVrIaVksyRf7vadNeVOCAstHhL5FFI9r6snFg2v1QtyhJG3ItVMShRg3qTs3ZupwYZ/Tm2HYAQFj9a/7edoGXmb8L7yU5s1pL06IzJPETcRpooT2x6W+uFpMqMjmXyb1LJoEsENvNApIc274FsoSUtE/NLKVvHhb+k4zRnux1jXgb+7gCFuZS/m+qUtuJ+hrWAcjYbBFUxAqg7mTl+f/7l1SxOxRnLWXLGWPBdrOwlM3HT1lb6d4sr4CNRQthCcN1a4n67CNYXG3w8MO198GK3UKuFjgRWIUVzyKg1bAjNjk9s8K8Oby/k+KCqwOHxuHm8vyQfB6VSxoHzYJqumx6hQ+F+BDP40V9//BpJDAQlQTBQyycTZ14/jV66YutTNfZjekjChL6W8ZqCpfHn6RdRT/Sqotne2LyLNCo9p0GJka7vQiiJCvn/4nXpFmLVm3adejUpZvD5fEFQpFYIpXJFUoVCBWChu0QHqnsBQ2MkCIGgggEcRAkgCARBEkgSAZBCghSQZAGgnQQZIAgEwRZIMgGQQ4IckGQB4J8EBSAoBAERSAoBkEJCEpBUAaCchBUgKASBFWExOlLlhkFbkF5pn4J5K+sWwVBeS2IKkXK81RShHATL5pvIEkRjblQ1Q5utxhBkyRTb+NZPsJQ7CYn2821uN9TVSUePU6SXYgozb21bZ9S/ZpIqY3zRLGtWrEsvNcoiRbJIpEkXDWK9fcvjlm2ODlDKMoIX9Sbs1gsF0rCW7WQevh8/dey2c/3Gv8MHsZn2g83zVipAMoxJGsccqris7X6V2Fq//WdQkiitHJcZtmh61cLYFDnAX1pGtcpJwVnblgGwfYUCyfZx/2Kg+PmPDrPdtzBazQR3S6gSwRAuQeAHYeO4xhzCR1keF1nWuyO1XI8x0qlEEnRYqjaPw2j+9e/xAstSTF2wLIBjzeskWsVXHviYzwBw58x6OX7w+Z/03loJ4f8g64HsAvbTIoiWV8Ls1CPN9mJ9lgtRgFTpEBYSjHEHC+zTxUEjl+LyXGMWGLwNIsO2viOkq3dfNzMXrv1/ozWpX3H2H3djZYqFbGpZdic+e3TjTmXOxrkgUPwrJyXa6gtFSDGcXbz4GH4wStIyOhiQX5X6/AJ1m5r2nD/we58agLtqgcjDLcgJTYv2T7vc9HmEyZCMj+ddtKLlbmhZ1p1rwSwJTHLhVnsc3n7GZ1YIkD1HMwILCn9fgMs9CgY3A+MlWsq0LguUwAReCuoQbB6MHYVbQQMRbBfgZc+YtEA6elcaApirGEo31RVmHUIdbBGji1KP1JXGjeBgId5lJEw3JU3i9wvcTXccUJYGMh9m175cOgIxLPYQdo9YIvqPmaOm7r7njFk9rzKAsbeXcjo8XsEFqHNwrTO1kPp1yJcColE/zert205eFDpVORKnkzuzJ42NnsW4xLHq4Y7BwRJinzG/mMuDDkeOWx8NJVSEImQZWmxrLcCjmO7ulHUAWa5sxvm3NlVtSA0K4AWxMlAaxPCEIYQYMGyfH60yLiAGT5iJYr2lgDkJMQLggt3xSM9uQjNtfuFlcEJf0xN3G8hQITRLaRpZjPIffJXXh4k8xEq1g4M9SkPaeMTz8G77GVL5a/Kr//X7tKisMp2IyrySrhOPUC82VV5W/uL+ooc5lSr+wd7FQc1sfFn416jrrSVnRgnw5GLg9zG2qfnrdD0adIll2prt3+J+mvYWh7DqWX0nlp+86m3yYdGvFgHKX3dzp34zCaL+/wgXIUgvmdRmXzx0oWCrB+SKNZz4+RPI/DhPceA5VjbGNTrczlJp8gHxh3bgJ2lmE90p1zHx3TwRitFgYgDj3oyBMR8RiYAo4F5gbNTCGZKXR7vB3TDY/1v645PLteRUcpjQjboWwsM4B7mlC10sQRaN6d2zXsNey74su0fhJB193slZwu0b2u2j1Bp16XuMLyDtTBBDOzuB+7d0L7DdSUY5sUxtDFFhd4Zneb9VvbNW5bMa7Nfu3ONTScB2dFfpJWctnYSyBYKQcVGjVhNnVKlH6Sqq1MNkm79gT7zkbb2nqsy6NX4DrYmWk5s6tGj+PWAS0Nq00G+wzOJhckezgfy6mtfmbr69hdivsM2w8aLZb/yNhu7K7bdu2yBR5YtFIdCkbDKXrMI1F47ieTKUjElkZxYZVwuAdk4O0fGb7bS57Q7gXShGQQjncmsjGZiVsh2Cayog+xA1gib0WDYhi3Y7rdjq7rR95WlN/A8AgS36kIeFTxC6gI1Uu6TRwPOAKuvEYyRdIvX58RYMB8tEGC5XdCBOgR2uVtoJa1CN/j+8Af87e1oZTQCFL0yTpkprSWdiXwUGY4bAbnt2QheXtMfGLs2mvyQf2UaQwwnRlQu7E5OJ2fm9e3r+Fr0dcP8xOSe3gWuboE/SlXqTi6nC9J9gtwp2/QcPZ+cmlyBgHSSgALUmpKDNHpf7HI4TW7sZbNBOQ7LQICsjzLhQVoRyG5n5CcuEtPoEhdmXGuPJCJ2N7xFD3axOYKI7N4vh5zfyyfoE5j6xmbmS1htGV42pKR0aNlwyzjNAHXfrZNHJsonfj9xsMFkqlH/NK5IHvYhzThJ2DFCPjLJNUnVVzNgbAhYyoaXDh1SMrwMknasHTFz7loGgkE9lnPcnUH9Y2zEBjd+iCF/dn01AhT5OTCCMBMU7sGPJ0yEz5bCEOP3+snz9FD06NeKu/P2xG4Ku8JnoxQURD2uF8wX/lBUjj9FpBSlQAqTEvGoHBf9IJwvAG2ZO+ZcNMz5Ytzpz+UNn7O6/yYPVuS6eMqlwJ7mcd3+b1o+cBD8RVWksOW6g9xudrcvbsTQIflvBA2nKnpfz1W0KjyoMwRWS1FX11LuQHNmh97egQ92V1dsMVlAerW+24jK3HEPEJOrVun1SrXxjskutAqMAqsQm1bc42oqy3uyxK7P40lAnpyLUztzlOF8RTKQf1X8RSrEr8ByTJp40wvjVeqDAU7Oy7kAdPnAr1GvYps2+saJxy16yInbxUnzjoMIrx1KN/Xs2URb3/odhU4pojDF5OQwVBOVerKHHtLdTewXg+SPaN63EhC/k7zqXj60tHRoOZRv/bKHHql0vJaHwa5lp7b6X40jpkS1D+Z1w9+ag32likz82ab1c7m7yn+Uuv2N30b9ZNN+6GRMHYg0IkkbcGA9tXup9e8hSnW34pEqrDNVDFIYHnQdLaYpw0yrjta8xQTdP6fXv+uff928+b/n6wN/fn+iV5G2ZatO50ZQAUykUKSrB9TVig2S46Vb/+ZT5yK4PbcS5abR2tbUBalnizSqVjY3yOgqbLWWaaVpi67I61Y6oP0XoIP0NksrXUD+heB1y6MAUujT1f3r6iR68Unphv7OT84wJ3dqzGL/YrNm50mGgbn/Fprz882Fpeenz3TMnH635PhcgXlcMTkZm/bNmx6S7v2WBrsUSHuV3auC/f7cEpezs9db8/DouzHtUQvZX43Bfu/6RUWfj56jG5ZdkhEJLb5gv7/yhl/2hoW/7TvihRCe/G4Goj8mHDeTt9XjdQ7H3mq2DstZZ3W13N1fZwvLMdyu5FnMsrzd4VDwbBDjTcKbR0DyJCC4/W/ZOBLKPA6Hh9ud4QzFG8mfZcGIWCEzylYQCMtWShF3HDEVuCJe0IBD0pUidunnt8mGpb7kndRhsjRVNlhtcYK35UKBJ+BRKvg3yHt4K6Z8TuVjBe9KRfB5FCd2QkJhferHQYpTSbpZ55AsP7Na9l0mOjdrbQ7FqamXU0P6qE4NFH+UivaFEbf/YqW3p1Mpl8UDuZN9rknea46Kos6d6yM5VxuaInov+WnE/PIi66kJ83M6x/I1fFzZgU3/30G76WeqXxvHbhChYlSvK6S1JGWL90Tmz95M3jJJ+5JhNklrdtKba9Mb0BpHeuuQtEr1KdfadCsbuVaOtotIA810WGj95No2yXoFLlPzp/tfuf/Upt+nXS8zfQHAe+ixEKwfQW+mDOwsAzAX1plJL3/cmD9Qmfw3I6M1sbo/sAS0GdRNCcAuyLa7IbIRdGNuBFIqfAa0kx5BrlX7BdBgA1GnHUA9kzSgWc3caBMwXAGEuBmH/QxMeAAJzQ0c7eJ+AcKegYj2+zkVTjZRaDC6cVTJ+ioHrPWNyjyiZXscdn2RNR4XHjV5RY/zSkKGTims/kP7KU/uOWTTKbyU3h+No4Zq2lP0Reden5fasddLLKJOayxSIiduB41QNz/eG1LMRsgM+iWP/0JMw3culJ+mPMPgqxDjw5EjyR7pP2nZ5kfx1CRhZyFyjJp2stLeJuOmQoVa9FP1SOQWjbdwque0YrSxpmLRDjm9FgSsqj6DpWsMCTkKKKKEMio/vdnfEID/MWwCtDlcHl8gFIklUplcoVSpNYkWo87iELF1oLOPLHQ6wkx/IU19Ae9YjtPRuZ6tsjUSTc5WlGBgKeZ4eG8exL6jiozNj3ce0zw615FOR82qu3YqBK3CdumeJuQRPFcbl86t6ULLr1OzC+yNxUgr1eE680gNq4nzRPKYONJsuKYMK/07HauaIKsNkIxl2Eq7zsuIrTVklQI/aIziR+N1ortTdxx2IXDR2MmgS3blZ3+CNMdiOB00YoWRCjWb7/MntMGskWHiuYnRz7XGcw5vhBa7zdqHzZUEWI7Q707r1eNQO2njIpDYKDqrXDbNCI2ldMd0WXe7zdXoIrkim3Y6Y20NAAA=")
            format("woff2"),
        url("./assets/iconfont-app-CYFi5z.woff?t=1782943407072") format("woff"),
        url("./assets/iconfont-app-xVOYzG.ttf?t=1782943407072")
            format("truetype"),
        url("./assets/iconfont-app-BqdQ_3.svg?t=1782943407072") format("svg");
}
[class*="icon-"]::before {
    font-family: "iconfont-app" !important;
    speak: never;
    font-size: var(--icon-fontsize);
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
}

.icon-account-cash-outline::before {
    content: "\ea01";
}

.icon-arrow-down-thin::before {
    content: "\ea02";
}

.icon-arrow-up-thin::before {
    content: "\ea03";
}

.icon-barn::before {
    content: "\ea04";
}

.icon-bed-king-outline::before {
    content: "\ea05";
}

.icon-bed-outline::before {
    content: "\ea06";
}

.icon-cash-fast::before {
    content: "\ea07";
}

.icon-cash-multiple::before {
    content: "\ea08";
}

.icon-cellphone-sound::before {
    content: "\ea09";
}

.icon-email-arrow-right-outline::before {
    content: "\ea0a";
}

.icon-email-fast-outline::before {
    content: "\ea0b";
}

.icon-facebook::before {
    content: "\ea0c";
}

.icon-file-document-outline::before {
    content: "\ea0d";
}

.icon-file-pdf-box::before {
    content: "\ea0e";
}

.icon-food-fork-drink::before {
    content: "\ea0f";
}

.icon-food::before {
    content: "\ea10";
}

.icon-glass-mug-variant::before {
    content: "\ea11";
}

.icon-home-variant::before {
    content: "\ea12";
}

.icon-image-filter-hdr-outline::before {
    content: "\ea13";
}

.icon-instagram::before {
    content: "\ea14";
}

.icon-map-legend::before {
    content: "\ea15";
}

.icon-map-marker-radius-outline::before {
    content: "\ea16";
}

.icon-map-marker-radius::before {
    content: "\ea17";
}

.icon-map-search::before {
    content: "\ea18";
}

.icon-map::before {
    content: "\ea19";
}

.icon-open-in-new::before {
    content: "\ea1a";
}

.icon-routes::before {
    content: "\ea1b";
}

.icon-sign-direction::before {
    content: "\ea1c";
}

.icon-sofa-single-outline::before {
    content: "\ea1d";
}

.icon-store::before {
    content: "\ea1e";
}

.icon-storefront-outline::before {
    content: "\ea1f";
}

.burger-menu {
    --burger-color: #000;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 20px;
    height: 15px;
    cursor: pointer;
}
.burger-menu .burger-bar {
    height: 2px;
    will-change: transform;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    background-color: var(--burger-color);
    -webkit-transition:
        transform 0.3s,
        background-color 0.3s;
    transition:
        transform 0.3s,
        background-color 0.3s;
}
.burger-menu .center {
    position: relative;
}
.burger-menu .center .burger-bar:nth-child(2) {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.burger-menu.open .burger-bar.outer {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}
.burger-menu.open .center .burger-bar:nth-child(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.burger-menu.open .center .burger-bar:nth-child(2) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

header {
    --header-height: 100px;
    --logo-height: 60px;
    position: relative;
    display: grid;
    grid-template-columns: 1fr max-content 1fr;
    height: var(--header-height);
    border-bottom: 2px solid #00763d;
    background: #fff;
}
header .logo img {
    display: block;
    height: 100%;
    max-height: var(--logo-height);
}
header nav a,
header nav span {
    display: block;
    cursor: pointer;
}
header nav li.lvl1.home > a {
    display: flex;
    justify-content: center;
    border-top: none;
    font-size: 0;
    --icon-fontsize: 30px;
}
header nav li.lvl1.home > a::before {
    font-family: "iconfont-app" !important;
    speak: never;
    font-size: var(--icon-fontsize);
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
header nav li.lvl1.home > a::before {
    content: "\ea12";
}
@media (min-width: 881px) {
    header .burger-menu {
        display: none;
    }
    header .logo {
        place-self: end center;
        margin-bottom: 28px;
    }
    header nav {
        --nav-bottom: 24px;
        align-self: end;
        margin-bottom: var(--nav-bottom);
    }
    header nav ul.lvl1 {
        display: flex;
        align-items: center;
    }
    header nav ul.lvl1 li.lvl1 {
        position: relative;
    }
    header nav ul.lvl1 li.lvl1 > a,
    header nav ul.lvl1 li.lvl1 span {
        position: relative;
        margin: 0 10px;
        font-weight: bold;
        color: #00763d;
        cursor: pointer;
    }
    header nav ul.lvl1 li.lvl1:not(.home) > a::after,
    header nav ul.lvl1 li.lvl1:not(.home) > span::after {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        border: 2px solid transparent;
        -webkit-transition:
            left 0.3s,
            right 0.3s,
            top 0.3s,
            bottom 0.3s,
            border-color 0.3s;
        transition:
            left 0.3s,
            right 0.3s,
            top 0.3s,
            bottom 0.3s,
            border-color 0.3s;
    }
    header nav ul.lvl1 li.lvl1:not(.home) > a:hover::after,
    header nav ul.lvl1 li.lvl1:not(.home) > span:hover::after,
    header nav ul.lvl1 li.lvl1:not(.home).section a::after,
    header nav ul.lvl1 li.lvl1:not(.home).section span::after {
        left: -11px;
        right: -11px;
        top: -10px;
        bottom: -10px;
        border-color: #00763d;
    }
    header nav ul.lvl2 {
        position: absolute;
        z-index: var(--zindex-menu2);
        top: calc(100% + var(--nav-bottom) + 2px);
        left: 50%;
        -webkit-transform-origin: top center;
        transform-origin: top center;
        -webkit-transition: transform 0.3s;
        transition: transform 0.3s;
        transform: translateX(-50%);
        padding: 5px 30px;
        background-color: #00763d;
        min-width: 240px;
        text-align: center;
    }
    header nav ul.lvl2 a {
        display: block;
        padding: 12px 10px;
        color: #fff;
    }
    header nav ul.lvl2 li:not(:first-child) a {
        border-top: 2px solid #c9d19c;
    }
    header nav li.lvl1:not(.open) ul.lvl2 {
        -webkit-transform: translateX(-50%) scaleY(0);
        transform: translateX(-50%) scaleY(0);
    }
    header nav ul.menu-extra {
        position: absolute;
        right: 0;
        top: 15px;
    }
    header nav ul.menu-extra a {
        margin-right: 25px;
        font-size: 16px;
        color: #000;
    }
}
@media (max-width: 880px) {
    header {
        --header-height: 80px;
        --logo-height: 54px;
    }
    header * {
        color: #fff;
    }
    header .burger-menu {
        grid-column: 3;
        place-self: center end;
        position: relative;
        margin-right: 15px;
        z-index: 200;
    }
    header .logo {
        grid-column: 2;
        place-self: center;
    }
    header nav {
        --menu-width: 190px;
        position: absolute;
        z-index: 100;
        left: 0;
        right: 0;
        top: 0;
        padding: 40px 10px 20px;
        background-color: #00763d;
        -webkit-transform-origin: top center;
        transform-origin: top center;
        -webkit-transition: transform 0.3s;
        transition: transform 0.3s;
    }
    header nav::before {
        content: "Menü";
        position: absolute;
        left: 15px;
        top: 20px;
        text-transform: uppercase;
        font-size: 20px;
        font-weight: bold;
    }
    header nav a,
    header nav span {
        display: block;
        max-width: var(--menu-width);
        margin: 0 auto;
        padding: 10px;
        border-top: 1px solid #fff;
        text-align: center;
        font-weight: bold;
        font-size: 13px;
    }
    header nav li.lvl1.home > a {
        --icon-fontsize: 25px;
    }
    header nav li.lvl1 > span {
        position: relative;
    }
    header nav li.lvl1 > span::after {
        font-family: "iconfont-app" !important;
        speak: never;
        font-size: var(--icon-fontsize);
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
    header nav li.lvl1 > span::after {
        content: "\ea02";
    }
    header nav li.lvl1 > span::after {
        --icon-fontsize: 1.5em;
        position: absolute;
        right: -20px;
        top: 10px;
        transform-origin: center center;
        -webkit-transition: transform 0.3s;
        transition: transform 0.3s;
    }
    header nav li.lvl1 ul.lvl2 {
        margin-left: auto;
        margin-right: auto;
        max-width: calc(var(--menu-width) - 10px);
    }
    header nav li.lvl1:not(.open) ul.lvl2 {
        display: none;
    }
    header nav li.lvl1.open > span::after {
        transform: scaleY(-1);
    }
    header:not(.menu-open) nav {
        -webkit-transform: scaleY(0);
        transform: scaleY(0);
    }
    header.menu-open .burger-menu {
        --burger-color: #fff;
    }
}

footer {
    --content-width: 1160px;
    display: grid;
    grid-template-columns: 1fr 2fr 1fr 1fr;
    grid-gap: 40px;
    margin-top: var(--element-gap);
    padding: 20px calc(50% - var(--content-width) / 2) 40px;
    background-color: #00763d;
}
footer * {
    color: #fff;
    font-size: 14px;
}
footer .menu-social a {
    --color-text: #00763d;
    --color-background: transparent;
    --color-border: #00763d;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 8px;
    border: 2px solid var(--color-border);
    line-height: 1;
    font-size: 18px;
    font-weight: 700;
    color: var(--color-text);
    background-color: var(--color-background);
    -webkit-transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
    transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
    --color-text: #fff;
    --color-background: transparent;
    --color-border: #fff;
    margin-top: 10px;
    margin-right: 10px;
    font-size: 1.3em;
}
footer .menu-social a .button-icon {
    display: inline-block;
    margin-right: 10px;
    font-size: 1.3em;
}
footer .menu-social a .button-icon.icon-default::before {
    font-family: "iconfont-app" !important;
    speak: never;
    font-size: var(--icon-fontsize);
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
footer .menu-social a .button-icon.icon-default::before {
    content: "";
}
footer .menu-social a:hover {
    --color-text: #fff;
    --color-background: #00763d;
}
footer .menu-social a::before {
    display: inline-block;
    margin-right: 5px;
}
footer .menu-social a:first-of-type {
    margin-top: 20px;
}
footer .menu-social a:hover {
    --color-text: #00763d;
    --color-background: #fff;
}
footer .menu-social a::before {
    font-family: "iconfont-app" !important;
    speak: never;
    font-size: var(--icon-fontsize);
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
footer .menu-social a::before {
    content: "\ea1a";
}
footer .menu-social a[href*="facebook"]::before {
    content: "\ea0c";
}
footer .menu-social a[href*="instagram"]::before {
    content: "\ea14";
}
footer .menu-extra {
    display: flex;
    flex-direction: column;
    font-weight: 700;
}
@media (max-width: 880px) {
    footer {
        grid-template-columns: 1fr;
        align-items: center;
        padding-bottom: 0;
        text-align: center;
    }
    footer .logo {
        max-width: 200px;
        justify-self: center;
    }
    footer .typography table td {
        display: block;
        width: 100% !important;
    }
    footer .menu-social p {
        display: none;
    }
    footer .menu-social a {
        margin-top: 5px !important;
    }
    footer .menu-extra a {
        display: block;
        padding: 7px var(--layout-padding);
        border-top: 1px solid #fff;
    }
}

::-webkit-input-placeholder {
    opacity: 0.7;
}

::-moz-placeholder {
    opacity: 0.7;
}

:-moz-placeholder {
    opacity: 0.7;
}

:-ms-input-placeholder {
    opacity: 0.7;
}

.typography strong {
    font-weight: 700;
}
.typography em {
    font-style: italic;
}
.typography a {
    outline: none;
}
.typography a:not(:hover) {
    text-decoration: underline;
}
.typography h1 {
    color: #00763d;
    font-size: var(--typo-h1-fs);
    font-weight: bold;
}
.typography h2 {
    color: #00763d;
    font-size: var(--typo-h2-fs);
    font-weight: bold;
}
.typography h3 {
    color: #00763d;
    font-size: var(--typo-h3-fs);
    font-weight: bold;
}
.typography h4 {
    color: #00763d;
    font-size: var(--typo-h4-fs);
    font-weight: bold;
}
.typography h5 {
    color: #00763d;
    font-size: var(--typo-h5-fs);
    font-weight: bold;
}
.typography h6 {
    color: #00763d;
    font-size: var(--typo-h6-fs);
    font-weight: bold;
}
.typography h2,
.typography h3,
.typography h4,
.typography h5,
.typography h6 {
    margin-top: 20px;
}
.typography > *:first-child {
    margin-top: 0 !important;
}
.typography p,
.typography ul,
.typography ol {
    margin-top: 1.5em;
    line-height: 1.5;
}
.typography ul,
.typography ol {
    list-style: outside none disc;
    margin-top: 1.5em;
    margin-left: 20px;
    padding-left: 0;
}
.typography ul {
    list-style-type: square;
    padding-left: 15px;
}
.typography ol {
    list-style-position: inside;
    list-style-type: decimal;
}
.typography li span {
    line-height: 1em !important;
}
.typography pre {
    width: 100%;
    font-family:
        courier new,
        courier,
        monospace,
        monospace;
}
.typography .text-left {
    text-align: left;
}
.typography .text-center {
    text-align: center;
}
.typography .text-right {
    text-align: right;
}
.typography img {
    max-width: 100%;
    height: auto;
}
.typography img .left {
    float: left;
    margin-right: 1em;
    margin-bottom: 1em;
}
.typography img .right {
    float: right;
    margin-left: 1em;
    margin-bottom: 1em;
}
.typography hr {
    border: none;
    border-top: 1px solid #e6e6e6;
}
.typography table {
    margin-top: 20px;
}
.typography table td {
    padding: 5px;
    vertical-align: top;
}
.typography table p {
    margin: 0;
}
.typography table p:last-child {
    margin-bottom: 0;
}
.typography span[class*="icon-"]::before {
    --icon-fontsize: 1.2em;
    box-sizing: border-box;
    width: 2em;
    height: 2em;
    margin-top: 0.3em;
    margin-bottom: 0.3em;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid currentColor;
}
.typography .text-center span[class*="icon-"]::before {
    margin-left: auto;
    margin-right: auto;
}
.typography .text-right span[class*="icon-"]::before {
    margin-left: auto;
    margin-right: 0;
}

form {
    transition: filter 0.3s;
}
form input:not([type="checkbox"]),
form textarea {
    box-sizing: border-box;
    width: 100%;
    padding: 5px;
    min-height: 40px;
    border: 1px solid #97c15c;
    font-family: "Outfit", sans-serif;
    background-color: #fff;
}
form input[type="checkbox"],
form input[type="radio"] {
    width: auto;
    margin: 0 10px 0 0;
    vertical-align: middle;
}
form input[type="checkbox"] + label,
form input[type="radio"] + label {
    vertical-align: middle;
}
form select {
    width: 100%;
}
form label.left {
    font-size: 16px;
}
form .btn-toolbar {
    margin-top: 20px;
}
form .btn-toolbar input,
form .btn-toolbar button {
    --color-text: #00763d;
    --color-background: transparent;
    --color-border: #00763d;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 8px;
    border: 2px solid var(--color-border);
    line-height: 1;
    font-size: 18px;
    font-weight: 700;
    color: var(--color-text);
    background-color: var(--color-background);
    -webkit-transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
    transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
    --icon-fontsize: 26px;
}
form .btn-toolbar input .button-icon,
form .btn-toolbar button .button-icon {
    display: inline-block;
    margin-right: 10px;
    font-size: 1.3em;
}
form .btn-toolbar input .button-icon.icon-default::before,
form .btn-toolbar button .button-icon.icon-default::before {
    font-family: "iconfont-app" !important;
    speak: never;
    font-size: var(--icon-fontsize);
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
form .btn-toolbar input .button-icon.icon-default::before,
form .btn-toolbar button .button-icon.icon-default::before {
    content: "";
}
form .btn-toolbar input:hover,
form .btn-toolbar button:hover {
    --color-text: #fff;
    --color-background: #00763d;
}
form .btn-toolbar input::before,
form .btn-toolbar button::before {
    display: inline-block;
    margin-right: 5px;
}
form .btn-toolbar input::before,
form .btn-toolbar button::before {
    font-family: "iconfont-app" !important;
    speak: never;
    font-size: var(--icon-fontsize);
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
form .btn-toolbar input::before,
form .btn-toolbar button::before {
    content: "\ea0b";
}
form .btn-toolbar input::before,
form .btn-toolbar button::before {
    margin-right: 10px;
}
form .field {
    margin-top: 20px;
}
form .field .message {
    font-size: 16px;
}
form .field .message.error,
form .field .message.required {
    color: red;
}
form .field.checkbox-privacy {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}
form .field.checkbox-privacy input {
    flex: 0 0 auto;
    margin-top: 0.2em;
}
form .field.checkbox-privacy label {
    display: block;
    width: calc(100% - 40px);
}
form .field.checkbox-privacy label p {
    margin-top: 0;
}
form .field.checkbox-privacy .message {
    width: 100%;
}
form.htmx-request {
    filter: blur(3px);
    pointer-events: none;
}

form.userform {
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-padding);
    padding-right: var(--layout-padding);
    box-sizing: border-box;
}
.el-nesting form.userform {
    padding-left: 0;
    padding-right: 0;
}
form.userform .field {
    width: 100%;
}
form.userform .field .middleColumn a {
    color: #00763d;
}
form.userform .field.checkbox label.left {
    line-height: 1;
}
form.userform .form-step {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
form.userform .form-step fieldset.userformsgroup {
    flex: 0 1 calc(50% - 10px);
    box-sizing: border-box;
    padding: 0;
    border: none;
}
@media (max-width: 880px) {
    form.userform .form-step fieldset.userformsgroup {
        flex-basis: 100%;
    }
}
form.userform .form-step fieldset.userformsgroup > legend {
    display: none;
}
form.userform .form-step fieldset.userformsgroup > .middleColumn,
form.userform .form-step fieldset.userformsgroup .field.textarea {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
form.userform .form-step fieldset.userformsgroup > .middleColumn {
    min-height: 100%;
}
form.userform .form-step fieldset.userformsgroup > .middleColumn,
form.userform .form-step fieldset.userformsgroup .field.textarea,
form.userform .form-step fieldset.userformsgroup .field.textarea .middleColumn {
    flex: 1 1 100%;
}
form.userform .form-step fieldset.userformsgroup textarea {
    height: 100%;
    resize: vertical;
}

.cookie-consent-wrapper {
    position: fixed;
    z-index: 1000;
    left: 0;
    right: 0;
    bottom: 0;
    padding-top: var(--layout-padding);
    padding-bottom: var(--layout-padding);
    background-color: #fff;
    box-shadow: 0 0 7px #333;
}
.cookie-consent-wrapper .cookie-consent {
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-padding);
    padding-right: var(--layout-padding);
}
.el-nesting .cookie-consent-wrapper .cookie-consent {
    padding-left: 0;
    padding-right: 0;
}
.cookie-consent-wrapper .cookie-consent-title {
    color: #00763d;
    font-size: var(--typo-h1-fs);
    font-weight: bold;
}
.cookie-consent-wrapper .cookie-consent-description {
    margin-top: var(--layout-padding);
}
.cookie-consent-wrapper .cookie-consent-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.cookie-consent-wrapper .cookie-consent-buttons .button {
    margin-top: var(--layout-padding);
    --color-text: #00763d;
    --color-background: transparent;
    --color-border: #00763d;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 8px;
    border: 2px solid var(--color-border);
    line-height: 1;
    font-size: 18px;
    font-weight: 700;
    color: var(--color-text);
    background-color: var(--color-background);
    -webkit-transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
    transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
}
.cookie-consent-wrapper .cookie-consent-buttons .button .button-icon {
    display: inline-block;
    margin-right: 10px;
    font-size: 1.3em;
}
.cookie-consent-wrapper
    .cookie-consent-buttons
    .button
    .button-icon.icon-default::before {
    font-family: "iconfont-app" !important;
    speak: never;
    font-size: var(--icon-fontsize);
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.cookie-consent-wrapper
    .cookie-consent-buttons
    .button
    .button-icon.icon-default::before {
    content: "";
}
.cookie-consent-wrapper .cookie-consent-buttons .button:hover {
    --color-text: #fff;
    --color-background: #00763d;
}
.cookie-consent-wrapper .cookie-consent-buttons .button::before {
    display: inline-block;
    margin-right: 5px;
}
@media (min-width: 880px) {
    .cookie-consent-wrapper .cookie-consent-buttons .button-accept-all {
        order: 3;
    }
    .cookie-consent-wrapper .cookie-consent-buttons .button-accept-necessary {
        order: 2;
    }
    .cookie-consent-wrapper .cookie-consent-buttons .button-manage {
        order: 1;
    }
}
@media (max-width: 879px) {
    .cookie-consent-wrapper .cookie-consent-buttons .button {
        width: 100%;
        text-align: center;
    }
}
@media (max-width: 460px) {
    .cookie-consent-wrapper .cookie-consent .toggle-inactive-indicator {
        display: none;
    }
    .cookie-consent-wrapper .cookie-consent-title {
        display: flex;
        justify-content: space-between;
        cursor: pointer;
    }
    .cookie-consent-wrapper .cookie-consent-title .toggle-icon {
        align-self: center;
    }
}

.cookie-consent-form .cookie-consent-field {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
}
.cookie-consent-form .cookie-consent-field__field {
    flex: 0 0 auto;
    order: -1;
}
.cookie-consent-form .cookie-consent-field__field input {
    margin: 3px 5px 0 0;
}
.cookie-consent-form .cookie-consent-field__label {
    flex: 1 0 25%;
    margin-top: 3px;
    font-weight: bold;
}
.cookie-consent-form .cookie-consent-field__description {
    flex: 1 1 100%;
}
@media (max-width: 460px) {
    .cookie-consent-form .cookie-consent-field {
        flex-wrap: wrap;
    }
    .cookie-consent-form .cookie-consent-field__description {
        margin-top: 5px;
        flex: 0 0 100%;
    }
}
.cookie-consent-form .action {
    font-size: 20px;
}

.cookie-compliance-required[data-preview-image] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: var(--preview-image) center center no-repeat;
    background-size: cover;
}
.cookie-compliance-required[data-preview-image]
    .cookie-compliance-required-text {
    padding: 10px;
    background: rgba(242, 244, 248, 0.75);
}

.linkbutton {
    --color-text: #00763d;
    --color-background: transparent;
    --color-border: #00763d;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 8px;
    border: 2px solid var(--color-border);
    line-height: 1;
    font-size: 18px;
    font-weight: 700;
    color: var(--color-text);
    background-color: var(--color-background);
    -webkit-transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
    transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
}
.linkbutton .button-icon {
    display: inline-block;
    margin-right: 10px;
    font-size: 1.3em;
}
.linkbutton .button-icon.icon-default::before {
    font-family: "iconfont-app" !important;
    speak: never;
    font-size: var(--icon-fontsize);
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.linkbutton .button-icon.icon-default::before {
    content: "";
}
.linkbutton:hover {
    --color-text: #fff;
    --color-background: #00763d;
}
.linkbutton::before {
    display: inline-block;
    margin-right: 5px;
}

html body .contentnote-category-Inhaltsanpassung {
    --contentnote-category-icon: "📄";
}
html body .contentnote-category-Feinschliff {
    --contentnote-category-icon: "📲";
}
html body .contentnote-category-Feature {
    --contentnote-category-icon: "🛠️";
}
html body .contentnotes-listall .contentnote-item .contentnote-head br {
    display: none;
}
html body > .contentnotes-wrapper {
    right: auto;
    left: 2vw;
}
html body > .contentnotes-wrapper .noteform-wrapper .contentnote-preview {
    right: auto;
    left: calc(100% + 5px);
}

.el a[name] {
    position: relative;
    display: block;
}
.el .el-title {
    color: #00763d;
    font-size: var(--typo-h1-fs);
    font-weight: bold;
}
.el .typography {
    font-size: var(--el-typography-fontsize);
}
.el:not(:first-child) {
    margin-top: var(--element-gap);
}

.el.formposition .el-inner {
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-padding);
    padding-right: var(--layout-padding);
}
.el-nesting .el.formposition .el-inner {
    padding-left: 0;
    padding-right: 0;
}
.el.formposition .el-inner:not(.form-error) .form-error {
    display: none;
}
.el.formposition .el-inner.form-error .form-content {
    display: none;
}

.el.text {
    --el-PROPERTY: 75px;
}
@media (max-width: 880px) {
    .el.text {
        --el-PROPERTY: 75px;
    }
}
@media (max-width: 460px) {
    .el.text {
        --el-PROPERTY: 75px;
    }
}
.el.text .el-inner {
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-padding);
    padding-right: var(--layout-padding);
}
.el-nesting .el.text .el-inner {
    padding-left: 0;
    padding-right: 0;
}
.el.text.align-center .el-inner {
    text-align: center;
}
.el.text.align-center .typography ul {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.el.text.align-right .el-inner {
    text-align: right;
}
.el.text.align-right .typography ul {
    display: flex;
    flex-direction: column;
    align-items: end;
}

.el.images {
    --image-gap: 10px;
    --image-height: 500px;
    --fontsize: 24px;
    --text-width: 33%;
    --text-color: #fff;
    --text-bg-color: rgba(0, 118, 61, 0.8);
    --border-color: #00763d;
}
@media (max-width: 880px) {
    .el.images {
        --image-height: 350px;
    }
}
.el.images + .el.images {
    margin-top: 0;
}
.el.images .image-list-item {
    position: relative;
    margin-top: var(--image-gap);
}
.el.images .image-list-item .image-container {
    height: var(--image-height);
}
.el.images .image-list-item .image-container img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.el.images .image-list-item .text-container {
    box-sizing: border-box;
    min-height: 80px;
    padding: 10px 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    -webkit-transition:
        background-color 0.3s,
        border-color 0.3s;
    transition:
        background-color 0.3s,
        border-color 0.3s;
}
.el.images .image-list-item .text-container .image-text {
    padding: 10px;
    text-align: center;
    font-size: var(--fontsize);
    line-height: 1.2;
    color: var(--text-color);
    -webkit-transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
    transition:
        color 0.3s,
        background-color 0.3s,
        border-color 0.3s;
}
.el.images .image-list-item .text-container .image-text span {
    display: block;
}
.el.images .image-list-item .text-container .image-text .title > *:first-child {
    margin-bottom: 0.2em;
    font-weight: 700;
}
.el.images .image-list-item .text-container .image-text *[class*="icon-"] {
    font-size: 1.3em;
}
.el.images .image-list-item .text-container .image-text .stars::before {
    content: "****";
    font-weight: bold;
}
.el.images:not([class*="textpos-outside"]) .text-container {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    min-width: var(--text-width);
    background-color: var(--text-bg-color);
    border: 2px solid var(--border-color);
}
.el.images:not([class*="textpos-outside"]) .text-container.linkable.hover,
.el.images:not([class*="textpos-outside"])
    .text-container.linkable.hover
    .image-text {
    background-color: var(--border-color);
}
.el.images.textpos-center .text-container {
    bottom: 50%;
    -webkit-transform: translateX(-50%) translateY(50%);
    transform: translateX(-50%) translateY(50%);
    border: 2px solid var(--border-color);
    padding: 5px;
    background-color: transparent;
}
.el.images.textpos-center .text-container .image-text {
    flex-basis: 100%;
    background-color: var(--text-bg-color);
}
.el.images.textpos-centerbig .text-container {
    top: 0;
}
.el.images.textpos-centerbig .text-container .image-text {
    padding-left: 10px;
    padding-right: 10px;
    border: 2px solid #fff;
}
.el.images.textpos-outside {
    --image-height: 320px;
    --fontsize: 18px;
}
.el.images.textpos-outside .text-container {
    padding: 0;
    background: none;
}
.el.images.textpos-outside .text-container .image-text {
    position: relative;
    flex-basis: 80%;
    padding: 10px;
    color: #00763d;
    background-color: #e7ead9;
}
.el.images.textpos-outside .text-container .image-text .title > *:first-child {
    font-size: 1.8em;
    text-transform: uppercase;
}
.el.images[class*="columns-"],
.el.images.gallery-enabled {
    --columns: 1;
}
.el.images[class*="columns-"] .image-list,
.el.images.gallery-enabled .image-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.el.images[class*="columns-"] .image-list .image-list-item,
.el.images.gallery-enabled .image-list .image-list-item {
    width: calc(
        (100% - (var(--columns) - 1) * (var(--image-gap))) / var(--columns)
    );
}
.el.images.columns-2 {
    --columns: 2;
    --fontsize: 20px;
    --image-height: 320px;
}
@media (max-width: 460px) {
    .el.images.columns-2:not(.columns_min-2) {
        --columns: 1;
    }
}
.el.images.columns-3 {
    --columns: 3;
    --fontsize: 16px;
    --image-height: 185px;
}
@media (max-width: 880px) {
    .el.images.columns-3 {
        --columns: 2;
    }
}
@media (max-width: 460px) {
    .el.images.columns-3:not(.columns_min-2) {
        --columns: 1;
    }
}
.el.images.gallery-enabled {
    --columns: 3;
    --image-height: 160px;
    --image-gap: 10px;
}
.el.images.gallery-enabled .el-inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-padding);
    padding-right: var(--layout-padding);
}
.el-nesting .el.images.gallery-enabled .el-inner {
    padding-left: 0;
    padding-right: 0;
}
.el.images.gallery-enabled .image-list {
    justify-content: start;
}
.el.images.gallery-enabled .image-list .image-list-item:nth-child(3n + 2),
.el.images.gallery-enabled .image-list .image-list-item:nth-child(3n + 3) {
    margin-left: var(--image-gap);
}
@media (max-width: 880px) {
    .el.images.gallery-enabled {
        --image-height: 105px;
    }
}

.el.links .el-inner {
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-padding);
    padding-right: var(--layout-padding);
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
}
.el-nesting .el.links .el-inner {
    padding-left: 0;
    padding-right: 0;
}
.el.links .linkbutton {
    margin-right: 10px;
    margin-top: 10px;
}
.el.links.align-center .el-inner {
    justify-content: center;
}
.el.links.align-right .el-inner {
    justify-content: end;
}

.el.headline {
    --image-height: 270px;
    --text-color: #fff;
    --bg-color: #00763d;
}
.el.headline .el-inner .text-container {
    box-sizing: border-box;
    width: 100%;
    padding-top: 25px;
    padding-bottom: 25px;
    background-color: var(--bg-color);
    display: flex;
    justify-content: center;
    align-items: center;
}
.el.headline .el-inner .text-container .text {
    padding: 10px;
    border: 2px solid #fff;
    text-align: center;
    font-size: var(--fontsize);
    line-height: 1.2;
    color: var(--text-color);
}
.el.headline .el-inner .text-container .text .heading *:first-child {
    margin-bottom: 0.2em;
    font-weight: 700;
}
.el.headline .el-inner .text-container .text *[class*="icon-"] {
    font-size: 1.3em;
}
.el.headline .el-inner .text-container .text .stars::before {
    content: "****";
    font-weight: bold;
}
.el.headline.hasImage .image-container {
    height: var(--image-height);
}
.el.headline.hasImage .image-container img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
@media (min-width: 881px) {
    .el.headline.hasImage .el-inner {
        position: relative;
    }
    .el.headline.hasImage .text-container {
        position: absolute;
        left: 50%;
        top: 0;
        bottom: 0;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        max-width: 460px;
        padding: 65px 10px;
        --bg-color: rgba(0, 118, 61, 0.8);
    }
    .el.headline.hasImage.height-big {
        --image-height: 550px;
    }
    .el.headline.hasImage.height-big .text-container {
        top: 50%;
        bottom: auto;
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}
@media (max-width: 880px) {
    .el.headline.hasImage.imgMobile-hide .image-container {
        display: none;
    }
}

.el.weekly-menu {
    --day-size: 32px;
    --entry-gap: 30px;
}
@media (max-width: 880px) {
    .el.weekly-menu {
        --entry-gap: 15px;
    }
}
@media (max-width: 460px) {
    .el.weekly-menu {
        --entry-gap: 5px;
    }
}
.el.weekly-menu .el-inner {
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-padding);
    padding-right: var(--layout-padding);
}
.el-nesting .el.weekly-menu .el-inner {
    padding-left: 0;
    padding-right: 0;
}
.el.weekly-menu .el-title {
    margin-bottom: 20px;
}
.el.weekly-menu .timespan {
    margin-bottom: 20px;
    color: #00763d;
}
.el.weekly-menu .weekday-entry {
    display: flex;
    margin-bottom: var(--entry-gap);
    font-size: 16px;
}
.el.weekly-menu .weekday-entry > * {
    flex: 1 1 100%;
}
.el.weekly-menu .weekday-entry .day {
    flex: 0 0 var(--day-size);
    box-sizing: border-box;
    height: var(--day-size);
    border: 2px solid #00763d;
    color: #00763d;
    text-align: center;
    font-size: 15px;
    line-height: 1.8;
}
.el.weekly-menu .weekday-entry .meals {
    margin-left: 10px;
    margin-top: 3px;
    list-style-type: decimal;
}
.el.weekly-menu .weekday-entry .meals > * {
    display: flex;
    justify-content: space-between;
}
.el.weekly-menu .weekday-entry .meals > * .pos {
    margin-right: 10px;
}
.el.weekly-menu .weekday-entry .meals > * .meal {
    flex: 1 1 100%;
}
.el.weekly-menu .weekday-entry .meals > * .price {
    margin-left: 10px;
    font-weight: bold;
}

#ForgotPassword {
    display: none;
} /*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */

.pswp {
    --pswp-bg: #000;
    --pswp-placeholder-bg: #222;

    --pswp-root-z-index: 100000;

    --pswp-preloader-color: rgba(79, 79, 79, 0.4);
    --pswp-preloader-color-secondary: rgba(255, 255, 255, 0.9);

    /* defined via js:
  --pswp-transition-duration: 333ms; */

    --pswp-icon-color: #fff;
    --pswp-icon-color-secondary: #4f4f4f;
    --pswp-icon-stroke-color: #4f4f4f;
    --pswp-icon-stroke-width: 2px;

    --pswp-error-text-color: var(--pswp-icon-color);
}

/*
	Styles for basic PhotoSwipe (pswp) functionality (sliding area, open/close transitions)
*/

.pswp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: var(--pswp-root-z-index);
    display: none;
    touch-action: none;
    outline: 0;
    opacity: 0.003;
    contain: layout style size;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* Prevents focus outline on the root element,
  (it may be focused initially) */
.pswp:focus {
    outline: 0;
}

.pswp * {
    box-sizing: border-box;
}

.pswp img {
    max-width: none;
}

.pswp--open {
    display: block;
}

.pswp,
.pswp__bg {
    transform: translateZ(0);
    will-change: opacity;
}

.pswp__bg {
    opacity: 0.005;
    background: var(--pswp-bg);
}

.pswp,
.pswp__scroll-wrap {
    overflow: hidden;
}

.pswp__scroll-wrap,
.pswp__bg,
.pswp__container,
.pswp__item,
.pswp__content,
.pswp__img,
.pswp__zoom-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.pswp__img,
.pswp__zoom-wrap {
    width: auto;
    height: auto;
}

.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img {
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in;
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img {
    cursor: move;
    cursor: -webkit-grab;
    cursor: -moz-grab;
    cursor: grab;
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active {
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: grabbing;
}

/* :active to override grabbing cursor */
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,
.pswp__img {
    cursor: -webkit-zoom-out;
    cursor: -moz-zoom-out;
    cursor: zoom-out;
}

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img,
.pswp__button,
.pswp__counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.pswp__item {
    /* z-index for fade transition */
    z-index: 1;
    overflow: hidden;
}

.pswp__hidden {
    display: none !important;
}

/* Allow to click through pswp__content element, but not its children */
.pswp__content {
    pointer-events: none;
}
.pswp__content > * {
    pointer-events: auto;
}

/*

  PhotoSwipe UI

*/

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg-container {
    display: grid;
}
.pswp__error-msg {
    margin: auto;
    font-size: 1em;
    line-height: 1;
    color: var(--pswp-error-text-color);
}

/*
class pswp__hide-on-close is applied to elements that
should hide (for example fade out) when PhotoSwipe is closed
and show (for example fade in) when PhotoSwipe is opened
 */
.pswp .pswp__hide-on-close {
    opacity: 0.005;
    will-change: opacity;
    transition: opacity var(--pswp-transition-duration)
        cubic-bezier(0.4, 0, 0.22, 1);
    z-index: 10; /* always overlap slide content */
    pointer-events: none; /* hidden elements should not be clickable */
}

/* class pswp--ui-visible is added when opening or closing transition starts */
.pswp--ui-visible .pswp__hide-on-close {
    opacity: 1;
    pointer-events: auto;
}

/* <button> styles, including css reset */
.pswp__button {
    position: relative;
    display: block;
    width: 50px;
    height: 60px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    cursor: pointer;
    background: none;
    border: 0;
    box-shadow: none;
    opacity: 0.85;
    -webkit-appearance: none;
    -webkit-touch-callout: none;
}

.pswp__button:hover,
.pswp__button:active,
.pswp__button:focus {
    transition: none;
    padding: 0;
    background: none;
    border: 0;
    box-shadow: none;
    opacity: 1;
}

.pswp__button:disabled {
    opacity: 0.3;
    cursor: auto;
}

.pswp__icn {
    fill: var(--pswp-icon-color);
    color: var(--pswp-icon-color-secondary);
}

.pswp__icn {
    position: absolute;
    top: 14px;
    left: 9px;
    width: 32px;
    height: 32px;
    overflow: hidden;
    pointer-events: none;
}

.pswp__icn-shadow {
    stroke: var(--pswp-icon-stroke-color);
    stroke-width: var(--pswp-icon-stroke-width);
    fill: none;
}

.pswp__icn:focus {
    outline: 0;
}

/*
	div element that matches size of large image,
	large image loads on top of it,
	used when msrc is not provided
*/
div.pswp__img--placeholder,
.pswp__img--with-bg {
    background: var(--pswp-placeholder-bg);
}

.pswp__top-bar {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 60px;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    z-index: 10;

    /* allow events to pass through top bar itself */
    pointer-events: none !important;
}
.pswp__top-bar > * {
    pointer-events: auto;
    /* this makes transition significantly more smooth,
     even though inner elements are not animated */
    will-change: opacity;
}

/*

  Close button

*/
.pswp__button--close {
    margin-right: 6px;
}

/*

  Arrow buttons

*/
.pswp__button--arrow {
    position: absolute;
    top: 0;
    width: 75px;
    height: 100px;
    top: 50%;
    margin-top: -50px;
}

.pswp__button--arrow:disabled {
    display: none;
    cursor: default;
}

.pswp__button--arrow .pswp__icn {
    top: 50%;
    margin-top: -30px;
    width: 60px;
    height: 60px;
    background: none;
    border-radius: 0;
}

.pswp--one-slide .pswp__button--arrow {
    display: none;
}

/* hide arrows on touch screens */
.pswp--touch .pswp__button--arrow {
    visibility: hidden;
}

/* show arrows only after mouse was used */
.pswp--has_mouse .pswp__button--arrow {
    visibility: visible;
}

.pswp__button--arrow--prev {
    right: auto;
    left: 0px;
}

.pswp__button--arrow--next {
    right: 0px;
}
.pswp__button--arrow--next .pswp__icn {
    left: auto;
    right: 14px;
    /* flip horizontally */
    transform: scale(-1, 1);
}

/*

  Zoom button

*/
.pswp__button--zoom {
    display: none;
}

.pswp--zoom-allowed .pswp__button--zoom {
    display: block;
}

/* "+" => "-" */
.pswp--zoomed-in .pswp__zoom-icn-bar-v {
    display: none;
}

/*

  Loading indicator

*/
.pswp__preloader {
    position: relative;
    overflow: hidden;
    width: 50px;
    height: 60px;
    margin-right: auto;
}

.pswp__preloader .pswp__icn {
    opacity: 0;
    transition: opacity 0.2s linear;
    animation: pswp-clockwise 600ms linear infinite;
}

.pswp__preloader--active .pswp__icn {
    opacity: 0.85;
}

@keyframes pswp-clockwise {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/*

  "1 of 10" counter

*/
.pswp__counter {
    height: 30px;
    margin-top: 15px;
    margin-inline-start: 20px;
    font-size: 14px;
    line-height: 30px;
    color: var(--pswp-icon-color);
    text-shadow: 1px 1px 3px var(--pswp-icon-color-secondary);
    opacity: 0.85;
}

.pswp--one-slide .pswp__counter {
    display: none;
}
