@charset "UTF-8";
.page-header-warning p.call a:before, .page-header .menu-item-has-children > a:after,
.page-header .menu-item-has-children summary:after, .hentry.type-employee a:before, .fancybox__carousel .f-button.is-arrow:after, .icon-circle-exclamation-light-full, .blaze-prev::before,
.blaze-next::before, .breadcrumbs-container nav li:not(:last-child)::after, details:not(.menu-item) summary:after, .page-footer > .page-footer__top .menu li a:after, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:after, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:after, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a:after, .page-footer > .page-footer__top .menu li .wp-element-button:after, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:after, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:after, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:after, button[type=submit] a:before, .wp-block-button.is-style-block:not(.help, .call, .questions) a:before, .fancybox__carousel .f-button:not(.help, .call, .questions) a:before, input.wp-block-button[type=submit]:not(.help, .call, .questions) a:before, input.is-style-block[type=submit]:not(.help, .call, .questions) a:before, input[type=submit]:not(.help, .call, .questions) a:before, button[type=submit] .wp-element-button:before, .wp-block-button.is-style-block:not(.help, .call, .questions) .wp-element-button:before, .fancybox__carousel .f-button:not(.help, .call, .questions) .wp-element-button:before, input[type=submit]:not(.help, .call, .questions) .wp-element-button:before, .wp-block-gallery.downloads .wp-block-image:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) article:not(.is_link) a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) article.is_link a:after, .wp-block-nez-rouge-luzern-posts .page-numbers.prev:before, .wp-block-nez-rouge-luzern-posts .page-numbers.next:before, .wp-block-nez-rouge-luzern-teasers-with-icon a span:after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li.is-external a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li.is-external a:after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li.is-file a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li.is-file a:after, .wp-block-social-links .wp-block-social-link.wp-social-link-instagram a:before, .wp-block-social-links .wp-block-social-link.wp-social-link-facebook a:before, .wp-block-button.call .wp-element-button:before, .fancybox__carousel .call.f-button .wp-element-button:before, input.call[type=submit] .wp-element-button:before, .wp-block-button.questions .wp-element-button:before, .fancybox__carousel .questions.f-button .wp-element-button:before, input.questions[type=submit] .wp-element-button:before, .wp-block-button.help .wp-element-button:before, .fancybox__carousel .help.f-button .wp-element-button:before, input.help[type=submit] .wp-element-button:before, .phone a:before, .email a:before {
    background-color: currentColor;
    content: "";
    height: 1em;
    display: inline-block;
    -webkit-mask-position: right;
    mask-position: right;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    width: 1em;
}

html {
    scroll-behavior: smooth;
    overflow-x: clip;
}

body {
    overflow-x: clip;
}

@media (max-width: 990px) {
    .is-root-container {
        padding-inline: var(--wp--custom--layout--device-spacing);
    }
    .is-root-container > .alignfull {
        margin-inline: calc(-1 * var(--wp--custom--layout--device-spacing));
    }
}
.is-root-container > .alignfull.has-background:not(.wp-block-media-text) {
    padding-inline: var(--wp--custom--layout--device-spacing);
}

:is(.is-layout-constrained, .is-layout-flow) > [class*=wp-block-]:not(:first-child, h1, h2, h3, h4, h5, h6, p, ul, ol, table, details, .wp-block-buttons) {
    margin-top: var(--wp--custom--layout--flow-space);
}

.alignfull + .alignfull {
    --wp--custom--layout--flow-space: 0;
}

.is-layout-flex,
.is-layout-grid {
    gap: 2em clamp(1em, 3vw, 1.61em);
}

.is-content-justification-space-between.is-layout-flex {
    row-gap: 0.625em;
}

:where(.editor-styles-wrapper) .hide-on-mobile, :where(.editor-styles-wrapper) .hide-on-desktop {
    display: block;
}

@media (max-width: 990px) {
    body.page .hide-on-mobile {
        display: none;
    }
}
@media (min-width: 991px) {
    body.page .hide-on-desktop {
        display: none;
    }
}

.has-right-wide-offset {
    max-width: 1060px !important;
    margin-right: var(--wp--custom--layout--wide-offset) !important;
}
@media (min-width: 782px) {
    .has-right-wide-offset .wp-block-group.has-background {
        max-width: 20.4em;
        margin-left: auto;
    }
}
@media (max-width: 990px) {
    .has-right-wide-offset {
        margin-right: auto !important;
    }
}

html:has(.menu-toggle input:checked), html:has(.menu-toggle input:checked) body {
    height: 100vh;
}

*, *::before, *::after {
    box-sizing: border-box;
}

* {
    margin: 0;
}

body {
    -webkit-font-smoothing: antialiased;
}

img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
}

input, button, textarea, select {
    font: inherit;
}

p, h1, h2, h3, h4, h5, h6 {
    overflow-wrap: break-word;
}

@view-transition {
    navigation: auto;
}
body {
    accent-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--base);
    font-family: var(--wp--preset--font-family--sans-serif);
    font-weight: 400;
    font-size: var(--wp--preset--font-size--normal);
    line-height: 1.33;
    padding-inline: var(--wp--custom--layout--body-padding);
    position: relative;
}
@media (max-width: 990px) {
    body {
        padding-inline: 0;
        --wp--custom--layout--wide-offset: max(var(--wp--custom--layout--device-spacing), calc((100 * var(--vw, 1vw) - var(--wp--style--global--wide-size)) / 2));
    }
}
@media (max-width: 700px) {
    body {
        line-height: 1.25;
    }
}

:where(h1, h2, h3, h4, h5, h6) {
    font-weight: 700;
    text-wrap: balance;
    color: var(--wp--preset--color--primary);
}
:where(h1, h2, h3, h4, h5, h6):not(:last-child) {
    margin-bottom: 0.5em;
}

h1, .has-huge-font-size {
    font-size: var(--wp--preset--font-size--huge);
    line-height: 1.09;
    margin-bottom: 0.7em !important;
}
@media (max-width: 700px) {
    h1, .has-huge-font-size {
        line-height: 1.14;
    }
}

h2, .has-extra-large-font-size {
    font-size: var(--wp--preset--font-size--extra-large);
    line-height: 1.125;
    margin-bottom: 0.31em;
}
@media (max-width: 700px) {
    h2, .has-extra-large-font-size {
        line-height: 1.18;
    }
}

h3, .has-large-font-size, .hentry.type-employee .teaser-title {
    font-size: var(--wp--preset--font-size--large);
    line-height: 1.23;
    margin-bottom: 0.38em;
}
@media (max-width: 700px) {
    h3, .has-large-font-size, .hentry.type-employee .teaser-title {
        line-height: 1.3;
    }
}

h4, .has-normal-font-size {
    font-size: var(--wp--preset--font-size--normal);
    line-height: 1.33;
    margin-bottom: 0.44em;
}

:not(h1, h2, h3, h4, h5, h6) + h1 {
    margin-top: clamp(2.67em, 9vw, 3.67em);
}

:not(h1, h2, h3, h4, h5, h6) + h2 {
    margin-top: 2.5em;
}

p + h2 {
    margin-top: 1.5625em !important;
}

:not(h1, h2, h3, h4, h5, h6, details) + h3 {
    margin-top: 1.12em;
}

.wp-block-nez-rouge-luzern-questions + .wp-block-heading {
    margin-top: 3.46em;
}

p + h3 {
    margin-top: 0.96em !important;
}

:not(h1, h2, h3, h4, h5, h6) + h4 {
    margin-top: 2.5em;
}

:not(h1, h2, h3, h4, h5, h6) + :is(h5, h6) {
    margin-top: 1.5em;
}

a {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
    transition: 0.3s;
}

p > a {
    color: var(--wp--preset--color--accent);
    text-decoration: underline;
}
p > a:is(:hover, :focus, :active) {
    text-decoration: none;
}

:is(p, ul, ol, table):not(:last-child) {
    margin-bottom: 1em;
}

strong {
    font-weight: 700;
}

.email + .phone,
.phone + .email {
    margin-top: 0.3em;
}

.email, .phone {
    margin-bottom: 0 !important;
}
.email a:before, .phone a:before {
    font-size: 1.22em;
    margin-right: 0.41em;
}

.email a:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/envelope-thin.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/envelope-thin.svg");
}

.phone a:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/phone-thin.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/phone-thin.svg");
}

.has-extra-large-font-size:has(+ .has-enormous-font-size) {
    margin-bottom: 0;
}
.has-extra-large-font-size:has(+ .has-enormous-font-size) + .has-enormous-font-size {
    margin-top: 0 !important;
    font-weight: 400;
}

.is-script {
    font-family: var(--wp--preset--font-family--cursive);
    margin-bottom: 0 !important;
}

p.has-medium-font-size:has(+ h1) {
    margin-bottom: 0;
    color: var(--wp--preset--color--primary);
}
p.has-medium-font-size:has(+ h1) + h1 {
    margin-top: 0;
}

p.is-style-h3 {
    font-size: var(--wp--preset--font-size--large);
    line-height: 1.23;
    margin-block: 1.92em !important;
    font-weight: 700;
    color: var(--wp--preset--color--primary);
}
@media (max-width: 700px) {
    p.is-style-h3 {
        line-height: 1.3;
    }
}

address {
    font-style: normal;
}

.has-light-background-color p, .has-light-background-color ul li, .has-light-background-color p > a,
.has-primary-light-background-color p,
.has-primary-light-background-color ul li,
.has-primary-light-background-color p > a,
.page-footer p,
.page-footer ul li,
.page-footer p > a {
    color: var(--wp--preset--color--primary);
}

.has-background p > a {
    font-weight: 700;
}

.has-primary-background-color .has-cursive-font-family {
    color: var(--wp--preset--color--primary-light);
}
.has-primary-background-color p,
.has-primary-background-color .wp-block-heading {
    color: var(--wp--preset--color--white);
}
.has-primary-background-color p > a {
    color: var(--wp--preset--color--primary-light);
}
.has-primary-background-color .wp-block-button.is-style-block:not(.call), .has-primary-background-color .fancybox__carousel .f-button:not(.call), .fancybox__carousel .has-primary-background-color .f-button:not(.call), .has-primary-background-color input[type=submit]:not(.call) {
    --_btn-text-color: var(--wp--preset--color--primary);
    --_arrow-color: var(--wp--preset--color--primary);
    --_btn-bg-color: var(--wp--preset--color--primary-light);
}
@media (hover: hover) {
    .has-primary-background-color .wp-block-button.is-style-block:not(.call) .wp-element-button:is(:hover, :focus, :active), .has-primary-background-color .fancybox__carousel .f-button:not(.call) .wp-element-button:is(:hover, :focus, :active), .fancybox__carousel .has-primary-background-color .f-button:not(.call) .wp-element-button:is(:hover, :focus, :active), .has-primary-background-color input[type=submit]:not(.call) .wp-element-button:is(:hover, :focus, :active) {
        --_btn-bg-color: var(--wp--preset--color--white);
    }
}
.has-primary-background-color .wp-block-button:not(.is-style-block):not(input[type=submit]), .has-primary-background-color .fancybox__carousel .f-button:not(.is-style-block):not(input[type=submit]), .fancybox__carousel .has-primary-background-color .f-button:not(.is-style-block):not(input[type=submit]), .has-primary-background-color input[type=submit]:not(.is-style-block):not(input[type=submit]) {
    --_btn-text-color: var(--wp--preset--color--white);
    --_btn-hover-color: var(--wp--preset--color--white);
}

.has-base-background-color .wp-block-button.is-style-block:not(.call), .has-base-background-color .fancybox__carousel .f-button:not(.call), .fancybox__carousel .has-base-background-color .f-button:not(.call), .has-base-background-color input[type=submit]:not(.call),
.has-accent-background-color .wp-block-button.is-style-block:not(.call),
.has-accent-background-color .fancybox__carousel .f-button:not(.call),
.fancybox__carousel .has-accent-background-color .f-button:not(.call),
.has-accent-background-color input[type=submit]:not(.call) {
    --_btn-text-color: var(--wp--preset--color--primary);
    --_arrow-color: var(--wp--preset--color--primary);
    --_btn-bg-color: var(--wp--preset--color--white);
}
.has-base-background-color .wp-block-button:not(.is-style-block):not(input[type=submit]), .has-base-background-color .fancybox__carousel .f-button:not(.is-style-block):not(input[type=submit]), .fancybox__carousel .has-base-background-color .f-button:not(.is-style-block):not(input[type=submit]), .has-base-background-color input[type=submit]:not(.is-style-block):not(input[type=submit]),
.has-accent-background-color .wp-block-button:not(.is-style-block):not(input[type=submit]),
.has-accent-background-color .fancybox__carousel .f-button:not(.is-style-block):not(input[type=submit]),
.fancybox__carousel .has-accent-background-color .f-button:not(.is-style-block):not(input[type=submit]),
.has-accent-background-color input[type=submit]:not(.is-style-block):not(input[type=submit]) {
    --_btn-text-color: var(--wp--preset--color--white);
    --_btn-hover-color: var(--wp--preset--color--white);
}
.has-base-background-color p, .has-base-background-color ul li, .has-base-background-color p > a,
.has-accent-background-color p,
.has-accent-background-color ul li,
.has-accent-background-color p > a {
    color: var(--wp--preset--color--white);
}

.has-accent-background-color .wp-block-button.call, .has-accent-background-color .fancybox__carousel .call.f-button, .fancybox__carousel .has-accent-background-color .call.f-button, .has-accent-background-color input.call[type=submit] {
    --_btn-text-color: var(--wp--preset--color--white);
    --_btn-bg-color: var(--wp--preset--color--base);
}

body.login #login {
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
    gap: 2.5rem;
}
body.login #login label {
    color: var(--wp--preset--color--white);
    margin-bottom: 0.55em;
    display: inline-block;
}
body.login #login #loginform {
    gap: 0;
}
body.login #login #loginform .user-pass-wrap {
    margin-top: 2em;
}
body.login #login #loginform .submit {
    margin-top: 1.5em;
}
body.login #login input[type=submit] {
    color: var(--wp--preset--color--white);
    background-color: var(--wp--preset--color--accent);
}
@media (hover: hover) {
    body.login #login input[type=submit]:is(:hover, :focus, :active) {
        --_btn-outline-color: var(--wp--preset--color--white);
    }
}

.wp-block-cover {
    padding: 0;
}
.wp-block-cover__inner-container {
    padding-inline: var(--wp--custom--layout--device-spacing);
}
.wp-block-cover.cta-with-image.alignfull {
    --wp--custom--layout--flow-space: clamp(4.75rem, 8vw, 6.375rem);
    --_padding-block: clamp(4.5em, 10vw, 7.55em);
    margin-left: var(--wp--custom--layout--wide-offset);
    margin-right: calc(-1 * var(--wp--custom--layout--body-padding));
    border-top-left-radius: var(--wp--custom--layout--border-radius);
    border-bottom-left-radius: var(--wp--custom--layout--border-radius);
    padding: var(--_padding-block) var(--wp--custom--layout--wide-offset) var(--_padding-block) clamp(1.875em, 7vw, 5.55em);
    justify-content: flex-start;
}
.wp-block-cover.cta-with-image.alignfull .wp-block-cover__inner-container {
    max-width: var(--wp--style--global--content-size);
    padding-inline: 0;
}
@media (max-width: 990px) {
    .wp-block-cover.cta-with-image.alignfull {
        margin-left: 0 !important;
    }
}

.page-content > .wp-block-cover:first-child {
    border-bottom-right-radius: var(--wp--custom--layout--border-radius);
    border-bottom-left-radius: var(--wp--custom--layout--border-radius);
    background-color: var(--wp--preset--color--primary);
    min-height: clamp(24em, 32vw, 33.16em);
    margin-bottom: var(--wp--custom--layout--flow-space);
    position: relative;
}
.page-content > .wp-block-cover:first-child:after {
    content: "";
    position: absolute;
    bottom: -1.1em;
    right: clamp(var(--wp--custom--layout--device-spacing), 5vw, 8.33em);
    width: clamp(15.625em, 31vw, 31.11em);
    height: clamp(10em, 20vw, 20em);
    z-index: 2;
    background-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/reindeer.webp");
    background-repeat: no-repeat;
    background-size: contain;
}
.page-content > .wp-block-cover:first-child img {
    mix-blend-mode: luminosity;
}
@media (max-width: 990px) {
    .page-content > .wp-block-cover:first-child {
        border-radius: 0;
    }
}

.wp-block-buttons {
    gap: 1.17em;
    margin-top: 1em;
}

@media (hover: hover) {
    .wp-block-button.is-style-block:is(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active):before, .fancybox__carousel .f-button:is(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active):before, input[type=submit]:is(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active):before {
        transform: scale(1.1);
    }
}
.wp-block-button.help .wp-element-button, .fancybox__carousel .help.f-button .wp-element-button, input.help[type=submit] .wp-element-button {
    padding-inline: 3.5em 2.5em !important;
}
.wp-block-button.help .wp-element-button:before, .fancybox__carousel .help.f-button .wp-element-button:before, input.help[type=submit] .wp-element-button:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/hands-holding-heart-thin.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/hands-holding-heart-thin.svg");
    left: 0.7em;
    font-size: 1.65em;
}
.wp-block-button.questions .wp-element-button, .fancybox__carousel .questions.f-button .wp-element-button, input.questions[type=submit] .wp-element-button {
    padding-inline: 2.3em 0.9em !important;
}
.wp-block-button.questions .wp-element-button:before, .fancybox__carousel .questions.f-button .wp-element-button:before, input.questions[type=submit] .wp-element-button:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/messages-question-light.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/messages-question-light.svg");
    left: 0.55em;
    font-size: 1.25em;
}
.wp-block-button.call, .fancybox__carousel .call.f-button, input.call[type=submit] {
    --_btn-text-color: var(--wp--preset--color--white);
    --_btn-bg-color: var(--wp--preset--color--accent);
}
.wp-block-button.call .wp-element-button, .fancybox__carousel .call.f-button .wp-element-button, input.call[type=submit] .wp-element-button {
    padding-inline: 3.5em 2.5em !important;
}
.wp-block-button.call .wp-element-button:before, .fancybox__carousel .call.f-button .wp-element-button:before, input.call[type=submit] .wp-element-button:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/phone-thin.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/phone-thin.svg");
    left: 0.7em;
    font-size: 1.65em;
}
@media (hover: hover) {
    .wp-block-button.call .wp-element-button:is(:hover, :focus, :active), .fancybox__carousel .call.f-button .wp-element-button:is(:hover, :focus, :active), input.call[type=submit] .wp-element-button:is(:hover, :focus, :active) {
        --_btn-outline-color: var(--wp--preset--color--white);
    }
}

.wp-block-nez-rouge-luzern-low-season .wp-block-button.help, .wp-block-nez-rouge-luzern-low-season .fancybox__carousel .help.f-button, .fancybox__carousel .wp-block-nez-rouge-luzern-low-season .help.f-button, .wp-block-nez-rouge-luzern-low-season input.help[type=submit],
.wp-block-nez-rouge-luzern-high-season .wp-block-button.help,
.wp-block-nez-rouge-luzern-high-season .fancybox__carousel .help.f-button,
.fancybox__carousel .wp-block-nez-rouge-luzern-high-season .help.f-button,
.wp-block-nez-rouge-luzern-high-season input.help[type=submit] {
    --_btn-text-color: var(--wp--preset--color--primary);
    --_btn-bg-color: var(--wp--preset--color--primary-light);
}
@media (hover: hover) {
    .wp-block-nez-rouge-luzern-low-season .wp-block-button.help .wp-element-button:is(:hover, :focus, :active), .wp-block-nez-rouge-luzern-low-season .fancybox__carousel .help.f-button .wp-element-button:is(:hover, :focus, :active), .fancybox__carousel .wp-block-nez-rouge-luzern-low-season .help.f-button .wp-element-button:is(:hover, :focus, :active), .wp-block-nez-rouge-luzern-low-season input.help[type=submit] .wp-element-button:is(:hover, :focus, :active),
    .wp-block-nez-rouge-luzern-high-season .wp-block-button.help .wp-element-button:is(:hover, :focus, :active),
    .wp-block-nez-rouge-luzern-high-season .fancybox__carousel .help.f-button .wp-element-button:is(:hover, :focus, :active),
    .fancybox__carousel .wp-block-nez-rouge-luzern-high-season .help.f-button .wp-element-button:is(:hover, :focus, :active),
    .wp-block-nez-rouge-luzern-high-season input.help[type=submit] .wp-element-button:is(:hover, :focus, :active) {
        --_btn-bg-color: var(--wp--preset--color--white);
    }
}

.wp-block-social-links {
    gap: 0.5rem;
    margin-top: 0.9em;
    font-size: inherit;
}
.wp-block-social-links .wp-block-social-link {
    background: transparent;
}
@media (hover: hover) {
    .wp-block-social-links .wp-block-social-link:is(:hover, :focus, :active) {
        transform: none;
    }
}
.wp-block-social-links .wp-block-social-link.wp-social-link-instagram a, .wp-block-social-links .wp-block-social-link.wp-social-link-facebook a {
    padding: 0;
    font-size: 1.44em;
}
@media (hover: hover) {
    .wp-block-social-links .wp-block-social-link.wp-social-link-instagram a:is(:hover, :focus, :active):before, .wp-block-social-links .wp-block-social-link.wp-social-link-facebook a:is(:hover, :focus, :active):before {
        background-color: var(--wp--preset--color--white);
    }
}
.wp-block-social-links .wp-block-social-link.wp-social-link-instagram a:before, .wp-block-social-links .wp-block-social-link.wp-social-link-facebook a:before {
    transition: 0.3s ease;
    background-color: var(--wp--preset--color--primary);
}
.wp-block-social-links .wp-block-social-link.wp-social-link-instagram a svg, .wp-block-social-links .wp-block-social-link.wp-social-link-facebook a svg {
    display: none;
}
.wp-block-social-links .wp-block-social-link.wp-social-link-facebook a:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/facebook-brands-solid.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/facebook-brands-solid.svg");
}
.wp-block-social-links .wp-block-social-link.wp-social-link-instagram a:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/instagram-brands-solid.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/instagram-brands-solid.svg");
}

.wp-block-group {
    --wp--custom--layout--flow-space: clamp(3.75rem, 10vw, 11.3rem);
}
.wp-block-group.has-background {
    --wp--custom--layout--flow-space: 3.11em;
    border-radius: var(--wp--custom--layout--border-radius);
    padding-inline: clamp(1.25em, 5.5vw, 5.5em);
    padding-block: clamp(2em, 5vw, 3.44em);
}
.wp-block-group.has-background:has(.gform_wrapper) {
    --wp--custom--layout--flow-space: 2.22em;
    padding-block: clamp(2em, 5vw, 4.72em) !important;
}
.wp-block-group.has-background h3, .wp-block-group.has-background .has-large-font-size, .wp-block-group.has-background .hentry.type-employee .teaser-title, .hentry.type-employee .wp-block-group.has-background .teaser-title {
    margin-bottom: 1em;
}
.wp-block-group.has-background .wp-block-buttons:has(.is-style-block, .fancybox__carousel .f-button, input[type=submit]) {
    margin-top: 1.66em;
}

.page-content > .wp-block-group.has-background {
    margin-bottom: 3.11em;
}

.wp-block-group.has-background.is-teaser {
    padding-inline: clamp(1.25em, 5.5vw, 1.66em);
    padding-block: 1.66em;
}
.wp-block-group.has-background.is-teaser h3, .wp-block-group.has-background.is-teaser .has-large-font-size, .wp-block-group.has-background.is-teaser .hentry.type-employee .teaser-title, .hentry.type-employee .wp-block-group.has-background.is-teaser .teaser-title {
    margin-bottom: 0.38em;
}
.wp-block-group.has-background.is-teaser .wp-block-buttons:has(.is-style-block, .fancybox__carousel .f-button, input[type=submit]) {
    margin-top: 1.38em;
}
@media (max-width: 781px) {
    .wp-block-group.has-background.is-teaser {
        padding-block: 2em;
    }
}

:is(p) + .wp-block-group.has-background {
    --wp--custom--layout--flow-space: 2.77em;
}

:is(p) + .wp-block-group.is-layout-grid {
    --wp--custom--layout--flow-space: 4.44em;
}

:is(.cta-with-image) + .wp-block-group.is-layout-grid {
    --wp--custom--layout--flow-space: clamp(4.75rem, 8vw, 6.375rem);
}

.wp-block-nez-rouge-luzern-partner {
    --wp--custom--layout--flow-space: 1.55em;
}
.wp-block-nez-rouge-luzern-partner:not(.is-style-list):not(.acf-block-preview), .wp-block-nez-rouge-luzern-partner:not(.is-style-list) > div:not([class]) {
    display: grid;
    gap: 2.77em 1.72em;
    grid-template-columns: repeat(auto-fill, minmax(min(16em, 100%), 1fr));
}
.wp-block-nez-rouge-luzern-partner.is-style-list .hentry {
    display: flex;
    align-items: flex-start;
}
@media (max-width: 627px) {
    .wp-block-nez-rouge-luzern-partner.is-style-list .hentry {
        display: block;
    }
}
.wp-block-nez-rouge-luzern-partner.is-style-list .hentry img {
    max-width: 16.66em;
    margin-right: 1.72em;
    margin-bottom: 0;
    width: 100%;
}
@media (max-width: 627px) {
    .wp-block-nez-rouge-luzern-partner.is-style-list .hentry img {
        margin-right: 0;
        margin-bottom: 1.1em;
        max-width: 100%;
    }
}
.wp-block-nez-rouge-luzern-partner.is-style-list .hentry:not(:last-child) {
    margin-bottom: 2.77em;
}
.wp-block-nez-rouge-luzern-partner.is-style-list .hentry .wp-block-button, .wp-block-nez-rouge-luzern-partner.is-style-list .hentry .fancybox__carousel .f-button, .fancybox__carousel .wp-block-nez-rouge-luzern-partner.is-style-list .hentry .f-button, .wp-block-nez-rouge-luzern-partner.is-style-list .hentry input[type=submit] {
    margin-top: 0.83em;
}

h2:has(+ .wp-block-nez-rouge-luzern-partner):first-of-type {
    margin-top: 2.81em;
}

.wp-block-nez-rouge-luzern-employees {
    --wp--custom--layout--flow-space: 3.11em;
}
.wp-block-nez-rouge-luzern-employees:not(.acf-block-preview), .wp-block-nez-rouge-luzern-employees > div:not([class]) {
    display: grid;
    gap: 3.33em 1.72em;
    grid-template-columns: repeat(auto-fill, minmax(min(16em, 100%), 1fr));
}

:where(.editor-styles-wrapper) .wp-block-nez-rouge-luzern-high-season .wp-block-group.has-background:not(.alignfull) {
    padding: 1em;
}

:where(.editor-styles-wrapper) .wp-block-nez-rouge-luzern-low-season .wp-block-group.has-background:not(.alignfull) {
    padding: 1em;
}

.wp-block-nez-rouge-luzern-dates:not(.wp-block) {
    --wp--custom--layout--flow-space: 2em;
    -moz-columns: 14.5em;
    columns: 14.5em;
    -moz-column-gap: clamp(1em, 3vw, 3.17em);
    column-gap: clamp(1em, 3vw, 3.17em);
    -moz-column-break-after: column;
    break-after: column;
    margin-bottom: 2.78em;
}
@media (max-width: 990px) {
    .wp-block-nez-rouge-luzern-dates:not(.wp-block) {
        -moz-column-width: 16em;
        column-width: 16em;
    }
}
.wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser {
    background: var(--wp--preset--color--white);
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    border-radius: 0.3125rem;
    padding: 2.78em 0.78em 1.11em;
    position: relative;
    overflow: hidden;
}
@media (max-width: 1814px) {
    .wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser {
        font-size: 1rem;
    }
}
.wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser:not(:last-child) {
    margin-bottom: clamp(1.25em, 3vw, 2.78em);
}
.wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser__badge {
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--wp--preset--color--accent);
    padding: 0.44em 0.66em;
    border-bottom-right-radius: 0.3125rem;
    font-weight: 700;
    color: var(--wp--preset--color--white);
}
.wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser__dates {
    list-style: none;
}
.wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser__dates__date {
    display: grid;
    grid-template-columns: 2.2em 6.4em auto;
    font-weight: 700;
}
.wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser__dates__date.disabled {
    color: var(--wp--preset--color--accent);
}
.wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser__dates__date > :first-child {
    text-transform: uppercase;
}
.wp-block-nez-rouge-luzern-dates:not(.wp-block) .week-teaser__dates__date:not(:last-child) {
    margin-bottom: 2px;
}

@media (max-width: 990px) {
    .wp-block-columns:not(.is-not-stacked-on-mobile):not(.has-three-columns) > .wp-block-column {
        flex-basis: 100% !important;
    }
}
.wp-block-columns .wp-block-column.has-background {
    border-radius: var(--wp--custom--layout--border-radius);
    padding: 3.11em 1.7em;
}
.wp-block-columns .wp-block-column.has-background .wp-block-hayloft-icon:not(.wp-block):first-child {
    font-size: 5em;
    display: block;
    margin-inline: auto;
    color: var(--_icon-color, var(--wp--preset--color--primary));
}
.wp-block-columns .wp-block-column.has-background .wp-block-hayloft-icon + .wp-block-heading {
    margin-top: 1.12em;
}
.wp-block-columns.has-three-columns:not(.acf-block-preview), .wp-block-columns.has-three-columns > div:not([class]) {
    display: grid;
    gap: 2.77em 1.72em;
    grid-template-columns: repeat(auto-fill, minmax(min(17em, 100%), 1fr));
}

:is(h1, h2, h3, h4, h5, .wp-block-image) + .wp-block-columns {
    --wp--custom--layout--flow-space: 2em;
}

.wp-block-nez-rouge-luzern-link-list, .wp-block-nez-rouge-luzern-reports:not(.wp-block) {
    margin-top: 1.55em !important;
}
.wp-block-nez-rouge-luzern-link-list:not(.wp-block), .wp-block-nez-rouge-luzern-reports:not(.wp-block) {
    --_border: 2px dashed var(--wp--preset--color--primary-light);
    border-top: var(--_border);
    list-style: none;
}
.wp-block-nez-rouge-luzern-link-list:not(.wp-block) li, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li {
    border-bottom: var(--_border);
}
.wp-block-nez-rouge-luzern-link-list:not(.wp-block) li a, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li a {
    display: flex;
    padding-block: 0.77em !important;
    font-weight: 700;
    width: 100% !important;
}
@media (hover: hover) {
    .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li a:is(:hover, :focus, :active, :focus-within), .wp-block-nez-rouge-luzern-reports:not(.wp-block) li a:is(:hover, :focus, :active, :focus-within) {
        background: var(--wp--preset--color--light);
        padding-inline: 0.55em;
    }
}
.wp-block-nez-rouge-luzern-link-list:not(.wp-block) li.is-external a, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li.is-external a, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li.is-file a, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li.is-file a {
    justify-content: space-between;
    gap: 2.3em;
}
.wp-block-nez-rouge-luzern-link-list:not(.wp-block) li.is-external a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li.is-external a:after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li.is-file a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li.is-file a:after {
    flex-shrink: 0;
    font-size: 1.3em;
}
.wp-block-nez-rouge-luzern-link-list:not(.wp-block) li.is-file a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li.is-file a:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/cloud-arrow-down-light-full.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/cloud-arrow-down-light-full.svg");
}
.wp-block-nez-rouge-luzern-link-list:not(.wp-block) li.is-external a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li.is-external a:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-up-right-from-square-light-full.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-up-right-from-square-light-full.svg");
}
.wp-block-nez-rouge-luzern-teasers-with-icon {
    --wp--custom--layout--flow-space: 1.5em;
}
.wp-block-nez-rouge-luzern-teasers-with-icon:not(.wp-block) {
    list-style: none;
}
.wp-block-nez-rouge-luzern-teasers-with-icon:not(.wp-block):not(.acf-block-preview), .wp-block-nez-rouge-luzern-teasers-with-icon:not(.wp-block) > div:not([class]) {
    display: grid;
    gap: 2.77em 1.72em;
    grid-template-columns: repeat(auto-fill, minmax(min(16em, 100%), 1fr));
}
.wp-block-nez-rouge-luzern-teasers-with-icon:not(.wp-block) + *:not(h2) {
    margin-top: var(--wp--preset--spacing--huge);
}
.wp-block-nez-rouge-luzern-teasers-with-icon a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
    border-radius: var(--wp--custom--layout--border-radius);
    padding: 2em 1em 1.44em;
}
.wp-block-nez-rouge-luzern-teasers-with-icon a:is(:hover, :focus, :active) {
    background-color: var(--wp--preset--color--primary-light);
}
.wp-block-nez-rouge-luzern-teasers-with-icon a i {
    content: "";
    height: 1em;
    display: inline-block;
    width: 1em;
    font-size: 3.88em;
}
.wp-block-nez-rouge-luzern-teasers-with-icon a i:not(.is-colored) {
    background-color: currentColor;
    -webkit-mask-image: var(--file);
    mask-image: var(--file);
    -webkit-mask-position: right;
    mask-position: right;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
}
.wp-block-nez-rouge-luzern-teasers-with-icon a i.is-colored {
    background-image: var(--file);
    background-position: right;
    background-repeat: no-repeat;
    background-size: contain;
}
.wp-block-nez-rouge-luzern-teasers-with-icon a span {
    margin-top: 0.82em;
    font-weight: 700;
    display: flex;
    align-items: center;
    position: relative;
    gap: 0.85em;
}
.wp-block-nez-rouge-luzern-teasers-with-icon a span:before {
    content: "";
    width: 3.66em;
    height: 3.66em;
    display: inline-block;
    aspect-ratio: 1;
    border: 1px solid currentColor;
    border-radius: 100%;
    font-size: 0.5em;
    transition: 0.3s ease;
    margin-top: 0;
    order: 1;
}
.wp-block-nez-rouge-luzern-teasers-with-icon a span:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-long.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-long.svg");
    position: absolute;
    right: 0.64em;
    color: currentColor;
    font-size: 0.74em;
    top: 50%;
    transform: translateY(-50%);
    -webkit-mask-size: cover;
    mask-size: cover;
    overflow-x: hidden;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: var(--arrow-width, 1.25em);
    padding-right: 2px;
}

.wp-block-nez-rouge-luzern-questions {
    --wp--custom--layout--flow-space: 1.5em;
}
.wp-block-nez-rouge-luzern-questions:not(.wp-block) {
    border-top: 2px dashed var(--wp--preset--color--primary-light);
}

video, .wp-block-video {
    --wp--custom--layout--flow-space: 4.375rem;
}

.wp-block-nez-rouge-luzern-posts {
    --wp--custom--layout--flow-space: 2.77em;
}
.wp-block-nez-rouge-luzern-posts .posts-container__posts:not(.acf-block-preview), .wp-block-nez-rouge-luzern-posts .posts-container__posts > div:not([class]) {
    display: grid;
    gap: 2.77em 1.72em;
    grid-template-columns: repeat(auto-fill, minmax(min(16em, 100%), 1fr));
}
.wp-block-nez-rouge-luzern-posts .posts-container__pagination {
    display: flex;
    align-items: center;
    gap: 0.55em;
    margin-top: 2.77em;
}
.wp-block-nez-rouge-luzern-posts .page-numbers {
    --_button-size: 2.94em;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--_button-size);
    height: var(--_button-size);
    aspect-ratio: 1;
    font-size: 1em;
    font-weight: 700;
    padding: 0.83em 0.5em;
    border-radius: 50%;
    border: 1px solid var(--_button-color, var(--wp--preset--color--primary-light));
    color: var(--_button-color, var(--wp--preset--color--primary-light));
}
.wp-block-nez-rouge-luzern-posts .page-numbers[aria-current=page], .wp-block-nez-rouge-luzern-posts .page-numbers:not(.prev, .next, .dots):is(:hover, :focus, :active) {
    --_button-color: var(--wp--preset--color--primary);
}
.wp-block-nez-rouge-luzern-posts .page-numbers.dots {
    color: var(--wp--preset--color--primary);
    border: none;
    --_button-size: 1.8em;
}
.wp-block-nez-rouge-luzern-posts .page-numbers.prev, .wp-block-nez-rouge-luzern-posts .page-numbers.next {
    border: none;
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
}
.wp-block-nez-rouge-luzern-posts .page-numbers.prev:before, .wp-block-nez-rouge-luzern-posts .page-numbers.next:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-short.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-short.svg");
    font-size: 1.45em;
}
.wp-block-nez-rouge-luzern-posts .page-numbers.prev:is(:hover, :focus, :active), .wp-block-nez-rouge-luzern-posts .page-numbers.next:is(:hover, :focus, :active) {
    background: var(--wp--preset--color--primary-light);
    color: var(--wp--preset--color--primary);
}
.wp-block-nez-rouge-luzern-posts .page-numbers.prev {
    margin-right: 0.27em;
}
.wp-block-nez-rouge-luzern-posts .page-numbers.prev:before {
    transform: scaleX(-1);
}
.wp-block-nez-rouge-luzern-posts .page-numbers.next {
    margin-left: 0.27em;
}

.wp-block-nez-rouge-luzern-reports {
    margin-top: 1.55em !important;
}
.wp-block-nez-rouge-luzern-reports:not(.wp-block) article {
    border-bottom: var(--_border);
}
.wp-block-nez-rouge-luzern-reports:not(.wp-block) article a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2.3em;
    padding-block: 0.77em !important;
    font-weight: 700;
}
.wp-block-nez-rouge-luzern-reports:not(.wp-block) article a:after {
    flex-shrink: 0;
    font-size: 1.3em;
}
@media (hover: hover) {
    .wp-block-nez-rouge-luzern-reports:not(.wp-block) article a:is(:hover, :focus, :active, :focus-within) {
        background: var(--wp--preset--color--light);
        padding-inline: 0.55em;
    }
}
.wp-block-nez-rouge-luzern-reports:not(.wp-block) article.is_link a:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-up-right-from-square-light-full.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-up-right-from-square-light-full.svg");
}
.wp-block-nez-rouge-luzern-reports:not(.wp-block) article:not(.is_link) a:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/cloud-arrow-down-light-full.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/cloud-arrow-down-light-full.svg");
}

.wp-block-gallery {
    --wp--custom--layout--flow-space: 1.55em;
    --wp--style--gallery-gap-default: 1.77em;
}
.wp-block-gallery:not(.acf-block-preview), .wp-block-gallery > div:not([class]) {
    display: grid;
    gap: 2.77em 1.72em;
    grid-template-columns: repeat(auto-fill, minmax(min(16em, 100%), 1fr));
}
.wp-block-gallery .wp-block-image {
    border-radius: var(--wp--custom--layout--border-radius);
    overflow: hidden;
    width: 100% !important;
    aspect-ratio: 1.39;
}
.wp-block-gallery.downloads .wp-block-image {
    --_edge-spacing: .5em;
}
.wp-block-gallery.downloads .wp-block-image:before {
    content: "Download" !important;
    padding: 0.375em 2.68em 0.375em 0.68em;
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
    top: var(--_edge-spacing);
    right: var(--_edge-spacing) !important;
    bottom: revert !important;
    left: revert !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    max-height: none !important;
    height: auto !important;
    z-index: 1;
    font-size: 0.88em;
    border-radius: 1.75rem;
    transition: 0.3s ease;
}
.wp-block-gallery.downloads .wp-block-image:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/cloud-arrow-down-thin-full.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/cloud-arrow-down-thin-full.svg");
    position: absolute;
    top: 0.35em;
    right: 0.65em;
    color: var(--wp--preset--color--white);
    z-index: 1;
    font-size: 1.5em;
}
.wp-block-gallery.downloads .wp-block-image a {
    position: relative;
}
.wp-block-gallery.downloads .wp-block-image a:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
}
.wp-block-gallery.downloads .wp-block-image a:after {
    content: "";
    position: absolute;
    bottom: 0;
    inset-inline: 0;
    max-height: 50% !important;
    height: 100%;
    transition: 0.3s opacity ease;
    background: linear-gradient(180deg, rgba(46, 50, 52, 0) 0%, #2E3234 100%);
}
@media (hover: hover) {
    .wp-block-gallery.downloads .wp-block-image:is(:hover, :focus, :active) a:after {
        background: linear-gradient(180deg, rgba(46, 50, 52, 0) 0%, #000000 100%);
    }
    .wp-block-gallery.downloads .wp-block-image:is(:hover, :focus, :active):before {
        background: var(--wp--preset--color--primary-light);
    }
}
.wp-block-gallery figcaption {
    text-align: left !important;
    font-size: 1em !important;
    font-weight: 700;
    padding: 0.88em 0.5em !important;
}
.wp-block-gallery:not(.downloads) .wp-block-image img {
    transition: 0.3s ease;
}
@media (hover: hover) {
    .wp-block-gallery:not(.downloads) .wp-block-image:is(:hover, :focus, :active) img {
        transform: scale(1.1);
    }
}

.wp-block-media-text {
    --wp--custom--layout--flow-space: 2.77em;
    margin-bottom: 3.11em;
    border-radius: var(--wp--custom--layout--border-radius);
    overflow: hidden;
}
.wp-block-media-text__content {
    padding-inline: clamp(1.25em, 5.5vw, 5.5em) !important;
    padding-block: clamp(2em, 5vw, 3.44em) !important;
}

button {
    all: unset;
    cursor: pointer;
    transition: 0.3s;
}

.page-footer > .page-footer__top .menu li a, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a, .page-footer > .page-footer__top .menu li .wp-element-button, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button {
    white-space: nowrap;
    padding: 0 0.75em 0 2.25em;
    width: -moz-fit-content;
    width: fit-content;
    text-decoration: none;
    text-align: left;
    color: var(--_btn-text-color, var(--wp--preset--color--primary));
    line-height: 1.27;
    z-index: 3;
    font-weight: 700;
}
@media screen and (max-width: 1290px) {
    .page-footer > .page-footer__top .menu li a, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a, .page-footer > .page-footer__top .menu li .wp-element-button, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button {
        white-space: wrap;
        align-items: baseline;
    }
}
@media (hover: hover) {
    .page-footer > .page-footer__top .menu li a:is(:hover, :focus, :active), .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active), .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active), input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active), .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a:is(:hover, :focus, :active), .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a:is(:hover, :focus, :active), .page-footer > .page-footer__top .menu li .wp-element-button:is(:hover, :focus, :active), .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active), .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active), input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active), .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:is(:hover, :focus, :active), .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:is(:hover, :focus, :active) {
        padding-right: 0.27em;
        padding-left: 2.75em;
        color: var(--_btn-hover-color, var(--wp--preset--color--primary));
    }
    .page-footer > .page-footer__top .menu li a:is(:hover, :focus, :active):before, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active):before, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active):before, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active):before, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a:is(:hover, :focus, :active):before, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a:is(:hover, :focus, :active):before, .page-footer > .page-footer__top .menu li .wp-element-button:is(:hover, :focus, :active):before, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active):before, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active):before, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active):before, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:is(:hover, :focus, :active):before, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:is(:hover, :focus, :active):before {
        border-color: var(--_btn-hover-color, var(--wp--preset--color--primary));
    }
    .page-footer > .page-footer__top .menu li a:is(:hover, :focus, :active):after, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active):after, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active):after, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:is(:hover, :focus, :active):after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a:is(:hover, :focus, :active):after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a:is(:hover, :focus, :active):after, .page-footer > .page-footer__top .menu li .wp-element-button:is(:hover, :focus, :active):after, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active):after, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active):after, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:is(:hover, :focus, :active):after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:is(:hover, :focus, :active):after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:is(:hover, :focus, :active):after {
        --arrow-width: 2.75em;
        color: var(--_btn-hover-color, var(--wp--preset--color--primary));
    }
}

.page-footer > .page-footer__top .menu li a, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a, .page-footer > .page-footer__top .menu li .wp-element-button, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button {
    position: relative;
    min-height: 1.75em;
    display: flex;
    align-items: center;
    transition: 0.3s ease-in-out;
    font-size: var(--wp--preset--font-size--normal);
}
.page-footer > .page-footer__top .menu li a:before, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:before, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:before, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:before, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a:before, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a:before, .page-footer > .page-footer__top .menu li .wp-element-button:before, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:before, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:before, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:before, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:before, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:before {
    content: "";
    width: 3.35em;
    height: 3.35em;
    display: inline-block;
    aspect-ratio: 1;
    border: 1px solid var(--_btn-text-color, var(--wp--preset--color--primary));
    border-radius: 100%;
    font-size: 0.5em;
    transition: 0.3s ease;
    margin-top: 0;
    position: absolute;
    top: 50%;
    left: var(--_btn-circle-left-position, 0);
    transform: translateY(-50%);
}
button[type=submit] a, .wp-block-button.is-style-block:not(.help, .call, .questions) a, .fancybox__carousel .f-button:not(.help, .call, .questions) a, input.wp-block-button[type=submit]:not(.help, .call, .questions) a, input.is-style-block[type=submit]:not(.help, .call, .questions) a, input[type=submit]:not(.help, .call, .questions) a, .wp-block-button.is-style-block:is(.help, .call, .questions) a, .fancybox__carousel .f-button:is(.help, .call, .questions) a, input.wp-block-button[type=submit]:is(.help, .call, .questions) a, input.is-style-block[type=submit]:is(.help, .call, .questions) a, input[type=submit]:is(.help, .call, .questions) a, button[type=submit] .wp-element-button, .wp-block-button.is-style-block:not(.help, .call, .questions) .wp-element-button, .fancybox__carousel .f-button:not(.help, .call, .questions) .wp-element-button, input[type=submit]:not(.help, .call, .questions) .wp-element-button, .wp-block-button.is-style-block:is(.help, .call, .questions) .wp-element-button, .fancybox__carousel .f-button:is(.help, .call, .questions) .wp-element-button, input[type=submit]:is(.help, .call, .questions) .wp-element-button {
    white-space: nowrap;
    padding: 0.55em 1.75em 0.55em 3em;
    width: -moz-fit-content;
    width: fit-content;
    text-decoration: none;
    text-align: left;
    color: var(--_btn-text-color, var(--wp--preset--color--white));
    line-height: 1.3;
    z-index: 3;
    font-weight: 700;
    display: flex;
    align-items: center;
    transition: 0.3s ease-in-out;
    border-radius: 1.75rem;
    background-color: var(--_btn-bg-color, var(--wp--preset--color--primary));
    font-size: clamp(1rem, 3vw, 1.25rem);
    position: relative;
    outline: 1px solid var(--_btn-outline-color, transparent);
    outline-offset: -1px;
}
button[type=submit] a:before, .wp-block-button.is-style-block:not(.help, .call, .questions) a:before, .fancybox__carousel .f-button:not(.help, .call, .questions) a:before, input.wp-block-button[type=submit]:not(.help, .call, .questions) a:before, input.is-style-block[type=submit]:not(.help, .call, .questions) a:before, input[type=submit]:not(.help, .call, .questions) a:before, .wp-block-button.is-style-block:is(.help, .call, .questions) a:before, .fancybox__carousel .f-button:is(.help, .call, .questions) a:before, input.wp-block-button[type=submit]:is(.help, .call, .questions) a:before, input.is-style-block[type=submit]:is(.help, .call, .questions) a:before, input[type=submit]:is(.help, .call, .questions) a:before, button[type=submit] .wp-element-button:before, .wp-block-button.is-style-block:not(.help, .call, .questions) .wp-element-button:before, .fancybox__carousel .f-button:not(.help, .call, .questions) .wp-element-button:before, input[type=submit]:not(.help, .call, .questions) .wp-element-button:before, .wp-block-button.is-style-block:is(.help, .call, .questions) .wp-element-button:before, .fancybox__carousel .f-button:is(.help, .call, .questions) .wp-element-button:before, input[type=submit]:is(.help, .call, .questions) .wp-element-button:before {
    position: absolute;
    transition: 0.3s ease;
}

button[type=submit] a:before, .wp-block-button.is-style-block:not(.help, .call, .questions) a:before, .fancybox__carousel .f-button:not(.help, .call, .questions) a:before, input.wp-block-button[type=submit]:not(.help, .call, .questions) a:before, input.is-style-block[type=submit]:not(.help, .call, .questions) a:before, input[type=submit]:not(.help, .call, .questions) a:before, button[type=submit] .wp-element-button:before, .wp-block-button.is-style-block:not(.help, .call, .questions) .wp-element-button:before, .fancybox__carousel .f-button:not(.help, .call, .questions) .wp-element-button:before, input[type=submit]:not(.help, .call, .questions) .wp-element-button:before {
    --_btn-text-color: var(--_arrow-color, var(--wp--preset--color--white));
    --_arrow-position-left: 1em;
    --_arrow-font-size: .8em;
    --arrow-width: 1.3em;
}
@media (hover: hover) {
    button[type=submit] a:is(:hover, :focus, :active), .wp-block-button.is-style-block:not(.help, .call, .questions) a:is(:hover, :focus, :active), .fancybox__carousel .f-button:not(.help, .call, .questions) a:is(:hover, :focus, :active), input[type=submit]:not(.help, .call, .questions) a:is(:hover, :focus, :active), button[type=submit] .wp-element-button:is(:hover, :focus, :active), .wp-block-button.is-style-block:not(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active), .fancybox__carousel .f-button:not(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active), input[type=submit]:not(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active) {
        padding-right: 1.55em;
        padding-left: 3.2em;
    }
    button[type=submit] a:is(:hover, :focus, :active):before, .wp-block-button.is-style-block:not(.help, .call, .questions) a:is(:hover, :focus, :active):before, .fancybox__carousel .f-button:not(.help, .call, .questions) a:is(:hover, :focus, :active):before, input[type=submit]:not(.help, .call, .questions) a:is(:hover, :focus, :active):before, button[type=submit] .wp-element-button:is(:hover, :focus, :active):before, .wp-block-button.is-style-block:not(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active):before, .fancybox__carousel .f-button:not(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active):before, input[type=submit]:not(.help, .call, .questions) .wp-element-button:is(:hover, :focus, :active):before {
        --arrow-width: 2.75em;
    }
}

.page-footer > .page-footer__top .menu li a:after, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:after, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:after, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) a:after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) a:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) a:after, .page-footer > .page-footer__top .menu li .wp-element-button:after, .wp-block-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:after, .fancybox__carousel .f-button:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:after, input[type=submit]:not(.is-style-block, input[type=submit], .primary-light-button, .white-button, .red-button):not([type=submit]) .wp-element-button:after, .wp-block-nez-rouge-luzern-link-list:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:after, .wp-block-nez-rouge-luzern-reports:not(.wp-block) li:not(.is-file, .is-external) .wp-element-button:after, button[type=submit] a:before, .wp-block-button.is-style-block:not(.help, .call, .questions) a:before, .fancybox__carousel .f-button:not(.help, .call, .questions) a:before, input.wp-block-button[type=submit]:not(.help, .call, .questions) a:before, input.is-style-block[type=submit]:not(.help, .call, .questions) a:before, input[type=submit]:not(.help, .call, .questions) a:before, button[type=submit] .wp-element-button:before, .wp-block-button.is-style-block:not(.help, .call, .questions) .wp-element-button:before, .fancybox__carousel .f-button:not(.help, .call, .questions) .wp-element-button:before, input[type=submit]:not(.help, .call, .questions) .wp-element-button:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-long.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-long.svg");
    overflow-x: hidden;
    position: absolute;
    left: var(--_arrow-position-left, 0.58em);
    display: flex;
    align-items: center;
    color: var(--_btn-text-color, var(--wp--preset--color--primary));
    font-size: var(--_arrow-font-size, 0.74em);
    justify-content: flex-end;
    transition: 0.3s width ease;
    width: var(--arrow-width, 1.2em);
    padding-right: 2px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-mask-size: cover;
    mask-size: cover;
}

.custom-logo-link {
    z-index: 10;
    background: var(--wp--preset--color--primary);
    padding: clamp(1em, 3vw, 1.62em) clamp(0.875em, 3vw, 1.67em) clamp(0.75em, 3vw, 1.2em);
    border-bottom-right-radius: 0.55em;
    border-bottom-left-radius: 0.55em;
}

.custom-logo {
    height: clamp(3.75em, 6vw, 5.7em);
    width: auto;
}

details:not(.menu-item) {
    border-bottom: 2px dashed var(--wp--preset--color--primary-light);
    cursor: pointer;
}
@media (hover: hover) {
    details:not(.menu-item):is(:hover, :focus, :active, :focus-within):not([open]) summary {
        background: var(--wp--preset--color--light);
        padding-inline: 0.55em;
    }
    details:not(.menu-item):is(:hover, :focus, :active, :focus-within):not([open]) summary:after {
        right: 0.4em;
    }
}
details:not(.menu-item):not([open]) summary::after {
    rotate: -90deg;
    right: -3px;
    transform: translateY(-50%) translateX(50%);
}
details:not(.menu-item) summary {
    font-weight: 700;
    color: var(--wp--preset--color--primary);
    padding: 1em 0;
    align-items: center;
    display: inline-flex;
    justify-content: space-between;
    width: 100%;
    transition: 0.3s ease;
    position: relative;
    gap: 0.5em;
}
details:not(.menu-item) summary:before {
    content: "";
    width: 3.35em;
    height: 3.35em;
    display: inline-block;
    aspect-ratio: 1;
    border: 1px solid var(--wp--preset--color--primary);
    border-radius: 100%;
    font-size: 0.5em;
    transition: 0.3s ease;
    margin-top: 0;
    order: 1;
}
details:not(.menu-item) summary:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/chevron-down-sharp-light.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/chevron-down-sharp-light.svg");
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0.32em;
    color: var(--wp--preset--color--primary);
    transition: 0.3s ease;
}
details:not(.menu-item)[open]::details-content {
    padding-block: 0.5em 1.77em;
}
details:not(.menu-item) > *:not(summary):not(.sub-menu):first-of-type {
    padding-top: 0.5em;
}
@media screen and (max-width: 760px) {
    details:not(.menu-item) > *:not(summary):not(.sub-menu):first-of-type {
        padding-top: 0;
    }
}
details:not(.menu-item) > *:not(summary):not(.sub-menu):last-of-type {
    padding-bottom: 1.77em;
}

details summary {
    list-style: none;
}
details summary::-webkit-details-marker {
    display: none;
}
details summary::marker {
    content: none;
}

@supports selector(::details-content) {
    details > *:not(summary):not(.sub-menu):first-of-type, details > *:not(summary):not(.sub-menu):last-of-type {
        padding-block: 0 !important;
    }
}
.gform_fields {
    display: grid;
    gap: 2em 1.1em;
    grid-template-columns: repeat(12, minmax(0, 1fr));
}
.gform_fields > * {
    grid-column: span 12;
}
.gform_fields .gfield_price:not(.gfield_total) {
    grid-column: span 6;
}
@media (min-width: 768px) {
    .gform_fields .gfield--width-three-quarters {
        grid-column: span 9;
    }
    .gform_fields .gfield--width-half {
        grid-column: span 6;
    }
    .gform_fields .gfield--width-third {
        grid-column: span 4;
    }
    .gform_fields .gfield--width-quarter {
        grid-column: span 3;
    }
    .gform_fields .gfield_price:not(.gfield_total) {
        grid-column: span 2;
    }
    .gform_fields .gfield--width-quarter.city {
        grid-column: span 4 !important;
        margin-left: -0.3em;
        min-width: calc(100% + 0.2rem);
    }
    .gform_fields .gfield--width-quarter.zip {
        grid-column: span 2 !important;
        min-width: 100%;
    }
}

@media screen and (min-width: 500px) and (max-width: 767px) {
    .gfield--width-quarter.city {
        grid-column: span 8 !important;
    }
    .gfield--width-quarter.zip {
        grid-column: span 4 !important;
    }
}
.gfield--width-quarter.city {
    grid-column: span 12;
}

.gfield--width-quarter.zip {
    grid-column: span 12;
}

label, legend {
    font-weight: 700;
    color: var(--wp--preset--color--primary);
}
label + .ginput_container, legend + .ginput_container {
    margin-top: 0.55em;
}

input:not([type=submit]), select, textarea {
    background: var(--wp--preset--color--white);
    border: 0;
    border-radius: var(--wp--custom--layout--border-radius);
    box-shadow: none;
    outline: 0;
    padding: 1em 1.1em;
    width: 100%;
}
input:not([type=submit]):is([type=checkbox], [type=radio]), select:is([type=checkbox], [type=radio]), textarea:is([type=checkbox], [type=radio]) {
    aspect-ratio: 1;
    height: 1em;
    padding: 0;
    width: 1em;
}

textarea {
    height: 10.9em;
    resize: none;
}

.hidden_label .gfield_label,
.gform_heading,
.gfield_visibility_hidden,
.gfield_validation_message {
    display: none;
}

.gform-footer {
    margin-top: 1.35em;
    text-align: right;
}

.gfield.gfield_error input:not(.ginput_total) {
    outline: 2px solid var(--wp--preset--color--primary);
    outline-offset: -2px;
}

.gform_confirmation_message {
    --_notice-bg: transparent;
    --_notice-text: var(--wp--preset--color--primary);
    padding: 0 !important;
    margin-bottom: 0 !important;
}

.gform_validation_errors, .gform_confirmation_message {
    background: var(--_notice-bg, var(--wp--preset--color--primary));
    padding: 1.88em 1.5em;
    border-radius: var(--wp--custom--layout--border-radius);
    color: var(--_notice-text, var(--wp--preset--color--white));
    font-weight: 700;
    margin-bottom: 3em;
}

.wp-block-heading + .gform_wrapper {
    margin-top: 2em;
}

.gfield--type-time {
    border: none;
    padding: 0;
}
.gfield--type-time .gform-grid-row {
    display: flex;
    align-items: center;
    gap: 0.5em;
}
.gfield--type-time .gform-grid-row .ginput_container {
    flex: 1;
}

.ginput_container_date {
    position: relative;
}

input[type=submit] {
    padding: 0.75em 1.5em !important;
    box-shadow: none;
    line-height: 1.3;
    border-radius: 1.75rem;
    outline: 1px solid var(--_btn-outline-color, transparent);
    outline-offset: -1px;
    font-weight: 700;
    display: flex;
    align-items: center;
    transition: 0.3s ease-in-out;
    border: none;
    cursor: pointer;
}

.gsection:not(:first-child) {
    border-top: 1px solid var(--wp--preset--color--primary-light);
    margin-top: calc(var(--wp--preset--spacing--large) - 2em);
}
.gsection:not(:first-child) .gsection_title {
    margin-bottom: 0 !important;
    padding-top: 1em;
}
.gsection:not(:first-child) .gsection_title:not(:empty) {
    padding-top: var(--wp--preset--spacing--large);
}

.gfield_price {
    position: relative;
}
.gfield_price .ginput_product_price_wrapper {
    display: none;
    inset: 0 0 auto auto;
    position: absolute;
}
.gfield_price .ginput_product_price_label,
.gfield_price .ginput_quantity_label {
    display: none;
}
.gfield_price .gfield_validation_message {
    display: block;
    color: var(--wp--preset--color--accent);
    font-weight: 700;
    margin-top: 0.5em;
}
.gfield_price.gfield_error [readonly] {
    font-weight: 700;
}

[readonly] {
    background-color: unset !important;
    padding: unset !important;
}

.gfield--type-consent {
    border: none;
    padding: 0;
}
.gfield--type-consent .ginput_container_consent {
    display: flex;
    align-items: center;
    gap: 0.35em;
}

input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0.2em;
    background: var(--wp--preset--color--white);
    display: flex;
    align-items: center;
    justify-content: center;
}
input[type=checkbox]:checked {
    background: var(--wp--preset--color--primary);
}
input[type=checkbox]:checked:before {
    content: "✓";
    color: var(--wp--preset--color--white);
    font-size: 0.8em;
}

:is(ul, ol) {
    margin: 0;
    padding: 0;
}

:not(nav) > :is(ul, ol):is(:not([class]), .wp-block-list) {
    list-style: none;
    margin-top: 1.22em;
    margin-bottom: 2.5em;
}
:not(nav) > :is(ul, ol):is(:not([class]), .wp-block-list):has(+ p) {
    margin-bottom: 1.22em;
}
:not(nav) > :is(ul, ol):is(:not([class]), .wp-block-list) > li {
    padding-left: 1em;
    position: relative;
}
:not(nav) > :is(ul, ol):is(:not([class]), .wp-block-list) > li:before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0.35em;
    width: 0.55em;
    height: 0.55em;
    border-radius: 50%;
    background-color: var(--wp--preset--color--primary-light);
}
:not(nav) > :is(ul, ol):is(:not([class]), .wp-block-list) > li + li {
    margin-top: 0.83em;
}
:not(nav) > :is(ul, ol):is(:not([class]), .wp-block-list) > li > ul {
    margin-top: 0.94em;
    margin-bottom: 0;
}
:not(nav) > :is(ul, ol):is(:not([class]), .wp-block-list) > li > ul li {
    padding-left: 1em;
}
:not(nav) > :is(ul, ol):is(:not([class]), .wp-block-list) > li > ul li:before {
    content: "⁃";
    background-color: transparent;
    top: 0;
    width: auto;
    height: auto;
}

:is(.menu, .sub-menu) {
    display: flex;
    gap: 0.5em 1em;
    list-style: none;
}

.sub-menu {
    flex-direction: column;
    background-color: var(--wp--preset--color--primary-light);
    padding: 1.22em 0.89em 1.39em;
    border-radius: var(--wp--custom--layout--border-radius);
    gap: 0.67em;
}
.sub-menu .menu-item {
    color: var(--wp--preset--color--primary) !important;
    font-weight: 700;
}
.sub-menu .menu-item[class*=current-] a {
    color: var(--wp--preset--color--white);
}

@media (min-width: 991px) {
    .sub-menu {
        visibility: hidden;
        opacity: 0;
        position: absolute;
        top: 100%;
        transform: translateY(-1rem);
        left: -0.89em;
        transition: 0.3s ease;
        padding: 1.22em 0.89em 1.39em;
        min-width: 12em;
        max-width: 12em;
    }
    .sub-menu a:is(:hover, :focus, :active) {
        color: var(--wp--preset--color--white);
    }
}
.menu-toggle {
    cursor: pointer;
    flex-direction: column;
    font-size: 2em;
    gap: 7px;
    margin-bottom: 0;
    transition: 0.3s;
    width: 1em;
    z-index: 999;
    padding-bottom: clamp(0.35em, 2vw, 1.75em);
}
.menu-toggle input {
    display: none;
}
.menu-toggle::before, .menu-toggle::after,
.menu-toggle * {
    background-color: var(--wp--preset--color--white);
    content: "";
    display: inherit;
    height: 4px;
    transition: inherit;
    transform-origin: left;
    border-radius: 2px;
}
.menu-toggle:has(:checked) * {
    opacity: 0;
}
.menu-toggle:has(:checked)::before {
    transform: translate(2px, -2px) rotate(45deg);
}
.menu-toggle:has(:checked)::after {
    transform: translate(1px, -1px) rotate(-45deg);
}

:is(.mobile-menu, .menu-toggle) {
    display: none;
}

@media (max-width: 990px) {
    body:has(.menu-toggle input:checked) .page-header:before {
        background: var(--wp--preset--color--primary);
    }
    :is(.mobile-menu, .menu-toggle) {
        display: flex;
    }
    .page-header {
        align-items: flex-end !important;
    }
    .page-header:before {
        content: "";
        height: 5.5em;
        position: absolute;
        top: 0;
        right: 0;
        left: var(--wp--custom--layout--wide-offset);
        background: transparent;
        z-index: 2;
        transition: 0.3s;
        border-bottom-left-radius: 0.55em;
    }
    .mobile-menu {
        background-color: var(--wp--preset--color--primary);
        display: flex;
        flex-direction: column;
        gap: 2.8em;
        height: 100vh;
        inset: 0;
        overflow-y: auto;
        padding: 8.6em 0.9em 7.5em;
        position: absolute;
        transform: translateX(100%);
        transition: 0.3s;
        z-index: 1;
        margin-left: var(--wp--custom--layout--wide-offset);
        visibility: hidden;
    }
    .mobile-menu .wp-block-group {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }
    .mobile-menu .wp-block-group .is-script {
        color: var(--wp--preset--color--primary-light);
        font-size: 2.625em !important;
        margin-bottom: 0 !important;
    }
    .mobile-menu .wp-block-group .wp-block-buttons {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.5em;
        margin-top: 0 !important;
    }
    .mobile-menu .primary-menu {
        width: 100%;
    }
    .mobile-menu .menu {
        flex-direction: column;
        gap: 1.4em;
    }
    .mobile-menu .menu > a,
    .mobile-menu .menu summary a {
        font-size: 1.25em;
    }
    .mobile-menu .menu .menu-item:not(.menu-item-has-children) {
        width: -moz-fit-content;
        width: fit-content;
    }
    .mobile-menu .menu summary, .mobile-menu .menu summary a, .mobile-menu .menu > a {
        color: var(--wp--preset--color--white);
        font-weight: 700;
    }
    .mobile-menu .menu .menu-item[class*=current-], .mobile-menu .menu .menu-item[class*=current-] summary > a, .mobile-menu .menu .menu-item[class*=current-] summary {
        color: var(--wp--preset--color--primary-light);
    }
    .mobile-menu .menu summary {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
    }
    .mobile-menu .menu summary:after {
        margin-left: 0 !important;
        flex-shrink: 0;
    }
    .mobile-menu .menu .menu-item[open] summary:after {
        transform: scale(-1, -1);
    }
    .mobile-menu .sub-menu {
        margin-top: 1em;
        gap: 1rem;
    }
    .mobile-menu .sub-menu .menu-item {
        font-size: 1rem;
    }
    .mobile-menu .sub-menu .menu-item[class*=current-] {
        color: var(--wp--preset--color--white) !important;
    }
    body:has(.menu-toggle input:checked) .mobile-menu {
        transform: translateX(0);
        visibility: visible;
    }
}
.email a, .phone a {
    font-weight: 700;
    text-decoration: none;
    display: flex;
    align-items: center;
    color: var(--_link-color, var(--wp--preset--color--primary));
}
.email a:before, .phone a:before {
    color: var(--_link-color, var(--wp--preset--color--primary));
    transition: 0.3s ease;
}
@media (hover: hover) {
    .email a:is(:hover, :focus, :active), .phone a:is(:hover, :focus, :active) {
        color: var(--_link-hover-color, var(--wp--preset--color--white));
    }
    .email a:is(:hover, :focus, :active):before, .phone a:is(:hover, :focus, :active):before {
        background-color: var(--_link-hover-color, var(--wp--preset--color--white));
    }
}

.breadcrumbs-container {
    max-width: 100%;
    margin-top: 4.83em;
}
@media (max-width: 990px) {
    .breadcrumbs-container {
        display: none;
    }
}
.breadcrumbs-container p {
    padding-top: 3.05em;
    border-top: 1px solid var(--wp--preset--color--primary-light);
    margin-bottom: 0.55em;
    color: var(--wp--preset--color--primary);
}
.breadcrumbs-container nav span[aria-current=page] {
    color: var(--wp--preset--color--primary);
    font-weight: 700;
}
.breadcrumbs-container nav li:not(:last-child) {
    display: inline-flex;
    align-items: center;
}
.breadcrumbs-container nav li:not(:last-child)::after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/chevron-down-sharp-thin.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/chevron-down-sharp-thin.svg");
    transform: rotate(-90deg);
    font-size: 0.65em;
    background-color: var(--wp--preset--color--primary);
}
.breadcrumbs-container nav a:is(:hover, :focus, :active) {
    text-decoration: underline;
}

body.single-post .breadcrumb-item:nth-of-type(3) {
    display: none;
}

.hentry.type-post {
    display: flex;
    flex-direction: column;
}
.hentry.type-post p {
    margin-bottom: 0;
    font-weight: 700;
    font-size: 0.875rem;
}
.hentry.type-post .wp-block-button, .hentry.type-post .fancybox__carousel .f-button, .fancybox__carousel .hentry.type-post .f-button, .hentry.type-post input[type=submit] {
    margin-top: auto;
}
.hentry.type-post .wp-element-button {
    --_btn-text-color: var(--wp--preset--color--accent);
    --_btn-hover-color: var(--wp--preset--color--accent);
}
.hentry.type-post .teaser-image-container {
    aspect-ratio: 1.6;
    overflow: hidden;
    border-radius: var(--wp--custom--layout--border-radius);
    margin-bottom: 0.88em;
}
.hentry.type-post .teaser-image-container img {
    transition: 0.3s ease;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.hentry.type-post h3 {
    margin-block: 0 0.57em !important;
}
.hentry.type-post:has(.badge) .teaser-image-container {
    position: relative;
}
.hentry.type-post:has(.badge) .badge {
    background: var(--_post-badge-bg-color, var(--wp--preset--color--primary));
    color: var(--wp--preset--color--white);
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    font-weight: 700;
    padding: 0.44em 0.66em;
    border-bottom-left-radius: 0.3125rem;
}
.hentry.type-post:has(.badge) .badge--red {
    --_post-badge-bg-color: var(--wp--preset--color--accent);
}
.hentry.type-post:is(:hover, :focus, :active) img {
    transform: scale(1.1);
}
.hentry.type-post:is(:hover, :focus, :active) .wp-element-button {
    padding-right: 0.27em !important;
    padding-left: 2.75em !important;
}
.hentry.type-post:is(:hover, :focus, :active) .wp-element-button:after {
    --arrow-width: 2.75em;
}

.wp-block-post-date {
    color: var(--wp--preset--color--primary);
    font-weight: 700;
}
.wp-block-post-date + h1 {
    margin-top: 0;
}

.blaze-slider {
    margin-top: clamp(1.5em, 5vw, 2.22em);
    margin-inline: calc(-1 * var(--wp--custom--layout--body-padding));
    direction: ltr;
}
@media (max-width: 990px) {
    .blaze-slider {
        margin-inline: 0 !important;
    }
}

.blaze-container {
    position: relative;
}

.alignfull > .blaze-container {
    max-width: unset !important;
}

.blaze-track {
    --slide-width: calc((100% - (var(--slides-to-show, 3) - 1) * var(--slide-gap, 1.875rem)) / var(--slides-to-show, 3));
    box-sizing: border-box;
    display: flex;
    gap: var(--slide-gap, 1.875rem);
    touch-action: pan-y;
    will-change: transform;
    margin-inline: calc(var(--wp--custom--layout--wide-offset) + var(--wp--custom--layout--body-padding));
}
@media (max-width: 990px) {
    .blaze-track {
        margin-inline: 0 !important;
    }
}

.blaze-track > * {
    box-sizing: border-box;
    flex-shrink: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: var(--slide-width);
}

.blaze-track img {
    pointer-events: none;
}

.blaze-pagination {
    display: flex;
    flex: 1;
    justify-content: space-between;
}
.blaze-pagination button {
    background-color: var(--wp--preset--color--light);
    height: 0.3125rem;
    font-size: 0;
    width: 100%;
}
.blaze-pagination button.active {
    background-color: var(--wp--preset--color--primary);
}

.blaze-prev,
.blaze-next {
    align-items: center;
    background-color: var(--wp--preset--color--primary);
    display: flex;
    width: 2.94em;
    height: 2.94em;
    border-radius: 50%;
    justify-content: center;
}
.blaze-prev::before,
.blaze-next::before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-short.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-short.svg");
    color: var(--wp--preset--color--white);
    font-size: 1.6em;
}
@media (hover: hover) {
    .blaze-prev:is(:hover, :focus, :active),
    .blaze-next:is(:hover, :focus, :active) {
        background-color: var(--wp--preset--color--primary-light);
    }
    .blaze-prev:is(:hover, :focus, :active)::before,
    .blaze-next:is(:hover, :focus, :active)::before {
        color: var(--wp--preset--color--primary);
    }
}

.blaze-prev::before {
    transform: rotate(180deg);
}

.blaze-buttons {
    display: flex;
    gap: 1.1em;
}

.blaze-controls {
    align-items: center;
    display: flex;
    margin-top: clamp(1.25em, 5vw, 2.78em);
    gap: clamp(2em, 5vw, 4em);
    justify-content: space-between;
    margin-inline: calc(var(--wp--custom--layout--wide-offset) + var(--wp--custom--layout--body-padding));
}
@media (max-width: 990px) {
    .blaze-controls {
        margin-inline: 0 !important;
    }
}

.blaze-slider.static .blaze-controls {
    display: none;
}

.wp-block-nez-rouge-luzern-posts-slider.wp-block {
    --wp--custom--layout--flow-space: clamp(1.5em, 5vw, 2.22em);
}
.wp-block-nez-rouge-luzern-posts-slider.wp-block .blaze-track, .wp-block-nez-rouge-luzern-posts-slider.wp-block .blaze-controls {
    margin-inline: auto !important;
    max-width: var(--wp--style--global--wide-size);
}

.wp-block-nez-rouge-luzern-low-season,
.wp-block-nez-rouge-luzern-high-season {
    --_image-height: clamp(11em, 18vw, 18.5em);
}
.wp-block-nez-rouge-luzern-low-season .has-extra-large-font-size,
.wp-block-nez-rouge-luzern-high-season .has-extra-large-font-size {
    --wp--preset--font-size--extra-large: clamp(1.375rem, 2vw, 2rem) ;
}
.wp-block-nez-rouge-luzern-low-season .has-enormous-font-size,
.wp-block-nez-rouge-luzern-high-season .has-enormous-font-size {
    --wp--preset--font-size--enormous: clamp(2rem, 3vw, 3.5rem) ;
}
.wp-block-nez-rouge-luzern-low-season .wp-block-button.questions, .wp-block-nez-rouge-luzern-low-season .fancybox__carousel .questions.f-button, .fancybox__carousel .wp-block-nez-rouge-luzern-low-season .questions.f-button, .wp-block-nez-rouge-luzern-low-season input.questions[type=submit],
.wp-block-nez-rouge-luzern-high-season .wp-block-button.questions,
.wp-block-nez-rouge-luzern-high-season .fancybox__carousel .questions.f-button,
.fancybox__carousel .wp-block-nez-rouge-luzern-high-season .questions.f-button,
.wp-block-nez-rouge-luzern-high-season input.questions[type=submit] {
    --_btn-text-color: var(--wp--preset--color--primary);
    --_btn-bg-color: var(--wp--preset--color--white);
}
.wp-block-nez-rouge-luzern-low-season > .wp-block-group,
.wp-block-nez-rouge-luzern-high-season > .wp-block-group {
    position: relative;
}
.wp-block-nez-rouge-luzern-low-season > .wp-block-group .wp-block-cover:first-child,
.wp-block-nez-rouge-luzern-high-season > .wp-block-group .wp-block-cover:first-child {
    min-height: calc(100dvh - var(--wp--custom--layout--body-padding));
    border-bottom-left-radius: var(--wp--custom--layout--border-radius);
    background-color: var(--wp--preset--color--base);
}
@media (max-width: 990px) {
    .wp-block-nez-rouge-luzern-low-season > .wp-block-group .wp-block-cover:first-child,
    .wp-block-nez-rouge-luzern-high-season > .wp-block-group .wp-block-cover:first-child {
        border-radius: 0;
        min-height: 30.25em;
    }
}
.wp-block-nez-rouge-luzern-low-season > .wp-block-group .wp-block-cover:first-child img,
.wp-block-nez-rouge-luzern-high-season > .wp-block-group .wp-block-cover:first-child img {
    mix-blend-mode: luminosity;
}
.wp-block-nez-rouge-luzern-low-season > .wp-block-group .wp-block-cover:first-child .wp-block-cover__background,
.wp-block-nez-rouge-luzern-high-season > .wp-block-group .wp-block-cover:first-child .wp-block-cover__background {
    opacity: 0.35 !important;
    background-color: var(--wp--preset--color--primary);
}
@media (min-width: 991px) {
    .wp-block-nez-rouge-luzern-low-season > .wp-block-group .wp-block-column:has(figure.hide-on-mobile),
    .wp-block-nez-rouge-luzern-high-season > .wp-block-group .wp-block-column:has(figure.hide-on-mobile) {
        position: sticky;
        margin-block: calc(-1 * clamp(2em, 5vw, 3.5em));
        top: 100vh;
    }
    .wp-block-nez-rouge-luzern-low-season > .wp-block-group figure.hide-on-mobile,
    .wp-block-nez-rouge-luzern-high-season > .wp-block-group figure.hide-on-mobile {
        margin-top: calc(-1 * var(--_image-height));
    }
    .wp-block-nez-rouge-luzern-low-season > .wp-block-group figure.hide-on-mobile img,
    .wp-block-nez-rouge-luzern-high-season > .wp-block-group figure.hide-on-mobile img {
        height: var(--_image-height);
    }
}
@media (max-width: 990px) {
    .wp-block-nez-rouge-luzern-low-season > .wp-block-group .wp-block-column:has(.hide-on-mobile),
    .wp-block-nez-rouge-luzern-high-season > .wp-block-group .wp-block-column:has(.hide-on-mobile) {
        display: none;
    }
    .wp-block-nez-rouge-luzern-low-season > .wp-block-group .hide-on-desktop,
    .wp-block-nez-rouge-luzern-high-season > .wp-block-group .hide-on-desktop {
        position: absolute;
        bottom: calc(100% - 1px);
        right: 0;
        max-width: 16.5em;
    }
}
.wp-block-nez-rouge-luzern-low-season > .wp-block-group .wp-block-buttons,
.wp-block-nez-rouge-luzern-high-season > .wp-block-group .wp-block-buttons {
    margin-top: 2.77em;
}
.wp-block-nez-rouge-luzern-low-season .wp-block-group.has-background.alignfull,
.wp-block-nez-rouge-luzern-high-season .wp-block-group.has-background.alignfull {
    margin-top: -8.5em;
    margin-left: var(--wp--custom--layout--wide-offset);
    margin-right: calc(-1 * var(--wp--custom--layout--body-padding));
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    z-index: 4;
    position: relative;
}
.wp-block-nez-rouge-luzern-low-season .wp-block-group.has-background.alignfull p,
.wp-block-nez-rouge-luzern-high-season .wp-block-group.has-background.alignfull p {
    max-width: 56ch;
}
@media (max-width: 990px) {
    .wp-block-nez-rouge-luzern-low-season .wp-block-group.has-background.alignfull,
    .wp-block-nez-rouge-luzern-high-season .wp-block-group.has-background.alignfull {
        padding-right: var(--wp--custom--layout--body-padding);
        margin-right: 0;
        padding-left: 1.875em;
        margin-top: -6em;
    }
    .wp-block-nez-rouge-luzern-low-season .wp-block-group.has-background.alignfull p,
    .wp-block-nez-rouge-luzern-high-season .wp-block-group.has-background.alignfull p {
        max-width: none;
    }
}

table, .wp-block-table {
    --wp--custom--layout--flow-space: 2.77em;
    border-radius: 0.3125rem;
}

table,
.wp-block-table table {
    border-collapse: collapse;
    border-bottom: 8px solid var(--wp--preset--color--primary);
}
table thead,
.wp-block-table table thead {
    border-bottom: none;
}
table thead tr,
.wp-block-table table thead tr {
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
}
table th:first-child, table tbody tr td:first-child,
.wp-block-table table th:first-child,
.wp-block-table table tbody tr td:first-child {
    text-align: left;
    white-space: nowrap;
}
table tbody tr td:not(:first-child),
.wp-block-table table tbody tr td:not(:first-child) {
    text-align: center;
}
table tbody tr,
.wp-block-table table tbody tr {
    background: var(--wp--preset--color--light);
}
table tbody tr:nth-child(even),
.wp-block-table table tbody tr:nth-child(even) {
    background: var(--wp--preset--color--white);
}
table td,
.wp-block-table table td {
    font-weight: 700;
}
table tr, table td, table th,
.wp-block-table table tr,
.wp-block-table table td,
.wp-block-table table th {
    border: none;
}
table td, table th,
.wp-block-table table td,
.wp-block-table table th {
    padding: 0.5em 0.66em;
}

.wp-block-image {
    --wp--custom--layout--flow-space: 3.11em;
}

.ui-datepicker-trigger {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 1.1em;
}

.ui-datepicker-title {
    display: flex;
    gap: 0.5em;
    margin-bottom: 0.5em;
    width: 100%;
}
.ui-datepicker-title select {
    padding: 0.5em;
}

.ui-datepicker-header {
    display: flex;
    justify-content: space-between;
    row-gap: 0.5em;
    margin-bottom: 0.5em;
    flex-wrap: wrap;
    padding: 0.5em;
}
.ui-datepicker-header > a {
    cursor: pointer;
    font-weight: 700;
}
@media (hover: hover) {
    .ui-datepicker-header > a:is(:hover, :focus, :active) {
        text-decoration: underline;
    }
}

.ui-datepicker {
    background: var(--wp--preset--color--primary-light);
    border: 1px solid var(--wp--preset--color--primary);
}

.ui-datepicker-calendar {
    width: 100%;
}
.ui-datepicker-calendar th:first-child,
.ui-datepicker-calendar tbody tr td:first-child {
    text-align: center;
    white-space: wrap;
}

.icon-circle-exclamation-light-full {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/circle-exclamation-light-full.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/circle-exclamation-light-full.svg");
}

:root {
    --fancybox-backdrop-bg: var(--wp--preset--color--primary);
}

.f-carousel__toolbar {
    padding-inline: var(--wp--custom--layout--device-spacing) !important;
}

.f-counter {
    padding: 0 !important;
}

.fancybox__dialog::backdrop {
    opacity: 0.8 !important;
    background: var(--wp--preset--color--primary);
}

.fancybox__backdrop {
    opacity: 0 !important;
}

.f-panzoom__wrapper img {
    border-radius: var(--wp--custom--layout--border-radius);
    overflow: hidden;
}

.fancybox__carousel {
    padding-block: 1.25em;
}
.fancybox__carousel .f-button {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white) !important;
    transition: 0.3s ease;
    border-radius: 50%;
}
@media (hover: hover) {
    .fancybox__carousel .f-button:is(:hover, :focus, :active) {
        background-color: var(--wp--preset--color--primary-light) !important;
        color: var(--wp--preset--color--primary) !important;
    }
}
.fancybox__carousel .f-button.is-arrow {
    --f-arrow-pos: var(--wp--custom--layout--device-spacing);
    width: 2.94em;
    height: 2.94em;
}
.fancybox__carousel .f-button.is-arrow svg {
    display: none;
}
.fancybox__carousel .f-button.is-arrow:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-short.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/arrow-short.svg");
    font-size: 1.6em;
}
@media (hover: hover) {
    .fancybox__carousel .f-button.is-arrow:is(:hover, :focus, :active):after {
        color: var(--wp--preset--color--primary);
    }
}
.fancybox__carousel .f-button.is-arrow.is-prev {
    transform: scaleX(-1) translateY(-50%) !important;
}

.hentry.type-partner {
    display: block;
}
.hentry.type-partner img {
    aspect-ratio: 1.68;
    padding: 1em 1.25em;
    -o-object-fit: contain;
    object-fit: contain;
    border: 1px solid var(--wp--preset--color--primary-light);
    border-radius: var(--wp--custom--layout--border-radius);
    margin-bottom: 1.1em;
    height: auto;
    width: 100%;
    flex-shrink: 0;
}
.hentry.type-partner .wp-block-button, .hentry.type-partner input[type=submit], .hentry.type-partner .fancybox__carousel .f-button, .fancybox__carousel .hentry.type-partner .f-button {
    margin-top: 0.55em;
}

.hentry.type-employee img {
    aspect-ratio: 1;
    -o-object-fit: cover;
    object-fit: cover;
    height: auto;
    border-radius: var(--wp--custom--layout--border-radius);
}
.hentry.type-employee .teaser-title {
    margin-top: 0.73em;
    margin-bottom: 0.58em;
}
.hentry.type-employee .teaser-role {
    font-weight: 700;
    margin-bottom: 0.25em;
    margin-top: 0;
}
.hentry.type-employee p {
    margin-top: 0.78em;
    color: var(--wp--preset--color--primary);
}
.hentry.type-employee a {
    color: var(--wp--preset--color--accent);
    display: flex;
    align-items: center;
    margin-bottom: 0.6em;
}
.hentry.type-employee a:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/envelope-thin.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/envelope-thin.svg");
    margin-right: 0.44em;
}
.hentry.type-employee a:is(:hover, :focus, :active) {
    text-decoration: underline;
}

.page-footer {
    padding: 3.48em var(--wp--custom--layout--wide-offset) 2.89em;
    background-color: var(--wp--preset--color--light);
    border-radius: var(--wp--custom--layout--border-radius) var(--wp--custom--layout--border-radius) 0 0;
    margin-top: 3.05em;
}
@media (max-width: 990px) {
    .page-footer {
        border-radius: 0;
        padding-block: 3.75rem;
    }
}
.page-footer > .page-footer__top {
    display: flex;
    flex-wrap: wrap;
    gap: 2.25em 1.61em;
}
.page-footer > .page-footer__top > .wp-block-group:first-child p, .page-footer > .page-footer__top > .wp-block-group:first-child a:not(.wp-block-social-link-anchor) {
    line-height: 1.55;
}
.page-footer > .page-footer__top > .wp-block-group:first-child p:not(:has(a)) {
    margin-bottom: 0.8em;
}
@media (min-width: 1008px) {
    .page-footer > .page-footer__top:has(.wp-block-nez-rouge-luzern-low-season) > *:not(.wp-block-nez-rouge-luzern-low-season) {
        flex-basis: 14.9em;
    }
}
@media (min-width: 589px) and (max-width: 1007px) {
    .page-footer > .page-footer__top:has(.wp-block-nez-rouge-luzern-low-season) > *:not(.wp-block-nez-rouge-luzern-low-season) {
        flex-basis: calc(50% - 1.61em);
    }
}
@media (min-width: 1055px) {
    .page-footer > .page-footer__top:has(.wp-block-nez-rouge-luzern-high-season) > *:not(.wp-block-nez-rouge-luzern-high-season) {
        flex-basis: 14.9em;
    }
}
@media (min-width: 589px) and (max-width: 1054px) {
    .page-footer > .page-footer__top:has(.wp-block-nez-rouge-luzern-high-season) > *:not(.wp-block-nez-rouge-luzern-high-season) {
        flex-basis: calc(50% - 1.61em);
    }
}
@media (max-width: 1007px) {
    .page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season {
        margin-left: 0;
        width: 100%;
    }
}
@media (max-width: 1170px) {
    .page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season .wp-block-image {
        display: none;
    }
}
@media (max-width: 1054px) {
    .page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season {
        margin-left: 0;
        width: 100%;
    }
}
@media (max-width: 1220px) {
    .page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season .wp-block-image {
        display: none;
    }
}
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season,
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season {
    margin-left: auto;
}
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season > .wp-block-group,
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season > .wp-block-group {
    height: -moz-fit-content;
    height: fit-content;
    border-radius: var(--wp--custom--layout--border-radius);
    padding-inline: 1.72em;
    margin-left: 0;
    margin-right: 0;
}
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season p.has-cursive-font-family,
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season p.has-cursive-font-family {
    margin-bottom: 0.3em !important;
    font-size: 2.625rem !important;
}
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season .wp-block-buttons,
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season .wp-block-buttons {
    margin-top: 0 !important;
}
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season .is-content-justification-space-between,
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season .is-content-justification-space-between {
    align-items: center;
    -moz-column-gap: clamp(1em, 2vw, 2.9em);
    column-gap: clamp(1em, 2vw, 2.9em);
}
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season .is-content-justification-space-between > .wp-block-group,
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season .is-content-justification-space-between > .wp-block-group {
    padding-block: 1.72em 2.3em;
}
@media (max-width: 990px) {
    .page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season .is-content-justification-space-between > .wp-block-group,
    .page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season .is-content-justification-space-between > .wp-block-group {
        padding-block: 2.05em;
    }
}
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-low-season img,
.page-footer > .page-footer__top > .wp-block-nez-rouge-luzern-high-season img {
    width: 6.1em;
}
.page-footer > .page-footer__top .wp-block-group.has-background {
    padding-block: 0 !important;
}
.page-footer > .page-footer__top .menu {
    flex-direction: column;
}
.page-footer > .page-footer__top .menu li {
    --_btn-hover-color: var(--wp--preset--color--white);
}
.page-footer > .wp-block-group:last-child {
    margin-top: 2.5em;
    padding-top: 2.33em;
    border-top: 1px solid var(--wp--preset--color--primary-light);
}
@media (max-width: 990px) {
    .page-footer > .wp-block-group:last-child {
        padding-top: 3.75rem;
        margin-top: 3.75rem;
        row-gap: 2.5rem;
    }
}
.page-footer > .wp-block-group:last-child a {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
}
@media (hover: hover) {
    .page-footer > .wp-block-group:last-child a:is(:hover, :focus, :active) {
        text-decoration: underline;
    }
}
.page-footer > .wp-block-group:last-child .wp-block-group {
    display: flex;
    align-items: center;
    gap: 0;
    margin-block: 0 !important;
    padding: 0;
}
@media (max-width: 617px) {
    .page-footer > .wp-block-group:last-child .wp-block-group {
        align-items: flex-start;
        flex-direction: column;
    }
    .page-footer > .wp-block-group:last-child .wp-block-group .menu > :first-child:before {
        display: none;
    }
}
.page-footer > .wp-block-group:last-child .wp-block-group .menu {
    flex-direction: row;
    gap: 0;
}
.page-footer > .wp-block-group:last-child .wp-block-group .menu > *:before {
    display: inline;
    content: "|";
    padding-left: 0.35rem;
    padding-right: 0.22rem;
}
.page-footer > .wp-block-group:last-child .wp-block-hayloft-copyright {
    color: var(--wp--preset--color--primary);
}

.page-header {
    display: flex;
    justify-content: space-between;
    padding: 0 var(--wp--custom--layout--wide-offset) 1em;
    position: absolute;
    inset-inline: var(--wp--custom--layout--body-padding);
    z-index: 10;
    top: 0;
    align-items: stretch;
}
@media (max-width: 990px) {
    .page-header {
        inset-inline: 0;
        margin-top: 2.78em;
    }
}
.page-header .is-script {
    color: var(--wp--preset--color--primary-light);
}
.page-header .navigation-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-top: 0.85em;
}
@media (max-width: 990px) {
    .page-header .navigation-wrapper {
        display: none;
    }
}
.page-header .navigation-wrapper .wp-block-nez-rouge-luzern-high-season > .wp-block-group,
.page-header .navigation-wrapper .wp-block-nez-rouge-luzern-low-season > .wp-block-group {
    -moz-column-gap: 1.44em;
    column-gap: 1.44em;
    align-items: center;
}
@media (min-width: 991px) and (max-width: 1019px) {
    .page-header .navigation-wrapper .wp-block-nez-rouge-luzern-high-season > .wp-block-group,
    .page-header .navigation-wrapper .wp-block-nez-rouge-luzern-low-season > .wp-block-group {
        -moz-column-gap: 0.5em;
        column-gap: 0.5em;
    }
}
.page-header .navigation-wrapper ul:not(.sub-menu) {
    gap: 2em;
    justify-content: flex-end;
}
.page-header .navigation-wrapper ul:not(.sub-menu) > li:last-child:has(.sub-menu) .sub-menu {
    left: revert;
    right: 0;
}
.page-header .navigation-wrapper ul:not(.sub-menu) > li.menu-item-has-children:is(:hover, :focus, :active) a:after {
    transform: scale(-1, -1);
}
.page-header .navigation-wrapper ul:not(.sub-menu) > li.menu-item-has-children:is(:hover, :focus, :active) .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.page-header .navigation-wrapper ul:not(.sub-menu) > li > a {
    font-size: var(--wp--preset--font-size--medium);
    color: var(--wp--preset--color--white);
    font-weight: 700;
    padding-bottom: 0.65em;
    display: inline-block;
    border-bottom: 2px solid transparent;
}
.page-header .navigation-wrapper ul:not(.sub-menu) > li:not(.menu-item-has-children) > a:is(:hover, :focus, :active) {
    border-bottom-color: var(--wp--preset--color--white);
}
.page-header .navigation-wrapper ul:not(.sub-menu) > li[class*=current-] > a {
    color: var(--wp--preset--color--primary-light);
}
.page-header .navigation-wrapper ul:not(.sub-menu) > li[class*=current-] > a:is(:hover, :focus, :active) {
    border-color: transparent;
}
.page-header .navigation-wrapper .wp-block-buttons {
    margin-top: 0;
}
@media (min-width: 991px) and (max-width: 1019px) {
    .page-header .navigation-wrapper .wp-block-buttons {
        -moz-column-gap: 0.2em;
        column-gap: 0.2em;
    }
}
.page-header .menu-item-has-children {
    position: relative;
}
.page-header .menu-item-has-children > a:after,
.page-header .menu-item-has-children summary:after {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/chevron-down-sharp-thin.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/chevron-down-sharp-thin.svg");
    transition: 0.3s ease;
    font-size: 0.75em;
    margin-left: 0.3em;
}

.page-header-warning:not(:has(.wp-block-nez-rouge-luzern-high-season)) {
    display: none;
}
.page-header-warning:not(:has(.wp-block-nez-rouge-luzern-high-season)) + .page-header {
    margin-top: 0;
}
.page-header-warning p.call a {
    color: var(--wp--preset--color--white);
    font-size: var(--wp--preset--font-size--medium);
    text-decoration: none;
    font-weight: 700;
    display: flex;
    justify-content: center;
    background: var(--wp--preset--color--accent);
    padding-block: 0.5em;
    align-items: center;
}
.page-header-warning p.call a:before {
    -webkit-mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/phone-thin.svg");
    mask-image: url("/wp-content/themes/nez-rouge-luzern/assets/img/icons/phone-thin.svg");
    font-size: 1.25em;
    margin-right: 0.6em;
}
@media (min-width: 991px) {
    .page-header-warning {
        display: none;
    }
}

.error404 section {
    text-align: center;
}
.error404 section h1 {
    margin-top: 0;
}
.error404 section .icon-circle-exclamation-light-full {
    color: var(--wp--preset--color--primary);
    font-size: clamp(8em, 9vw, 10em);
}
