@import '../fonts/now-alt/stylesheet.css';
@import '../fonts/monthoers/stylesheet.css';

@import 'boldrcms-calculated.css';
@import 'bundles/section-templates.css';

:root {
    /* Low-contrast screens show it as white; */
    --color-lightblue: #ECF2FF;
    --color-unfocussed: #CFD7EA;
}

input, textarea, select {
    -webkit-appearance: none;
}

body {
    background: #F6F6F6 url('../images/background.webp');
}

body.overlay-visible {
    overflow-y: hidden;
}

.hb-return-link {
    display: block;
    margin-bottom: 20px;
}

html, body {
    margin: 0;
    color: var(--boldr-text-color);
    font-size: var(--boldr-text-font-size);
    font-family: var(--boldr-text-font-family);
    font-weight: var(--boldr-text-font-weight);
    font-style: var(--boldr-text-font-style);
    line-height: var(--boldr-text-line-height);
}

input, textarea, select {
    font-family: var(--boldr-text-font-family);
    font-weight: var(--boldr-text-font-weight);
    font-style: var(--boldr-text-font-style);
}

a {
    color: var(--boldr-primary-color);
    text-decoration: none;
}

/* Headings */
.boldr-section-heading:not(:last-child) {
    margin-bottom: var(--boldr-spacing-small);
}

.boldr-section-heading-text {
    display: block;
    font-family: var(--boldr-heading-font-family);
    font-weight: var(--boldr-heading-font-weight);
    font-style: var(--boldr-heading-font-style);
}

.boldr-section-subheading-text {
    display: block;
    font-family: var(--boldr-subheading-font-family);
    font-weight: var(--boldr-subheading-font-weight);
    font-style: var(--boldr-subheading-font-style);
}

/* Content block */
.boldr-content-alignment-full {
    --boldr-content-section-width: var(--boldr-columns-7);
}

/* Buttons */
.boldr-button,
.boldr-button-highlight,
.boldr-button-filled,
.boldr-button-outline-light,
.boldr-button-outline-dark {
    text-align: center;
    display: inline-block;
    border: none;

    font-family: var(--boldr-button-font-family);
    font-weight: var(--boldr-button-font-weight);
    font-style: var(--boldr-button-font-style);

    font-size: var(--boldr-button-font-size);
    padding: var(--boldr-button-padding);
}
.boldr-button-small {
    font-size: var(--boldr-button-small-font-size);
    padding: var(--boldr-button-small-padding);
}

/* Button styles */
.boldr-button-filled {
    background: var(--boldr-highlight-color);
    color: var(--boldr-button-light-color);
}
.boldr-button-outline-light {
    box-shadow: inset 0 0 0 2px var(--boldr-highlight-color);
    color: var(--boldr-highlight-color);
}
.boldr-button-outline-dark {
    box-shadow: inset 0 0 0 2px var(--boldr-highlight-color);
    color: var(--boldr-button-light-color);
}

/* Language selector */
.header-language-selector {
    margin-right: var(--boldr-spacing-medium);
}

.header-language-selector a {
    display: flex;
    align-items: center;
    gap: 10px;
}

.header-content-left {
    display: flex;
    align-items: center;
}

.language-selector-flag {
    border-radius: 50%;
    object-fit: cover;
    width: 25px;
    height: 25px;
    display: block;
}

/* Header */
.header-wrapper {
    position: fixed;
    right: 0;
    left: 0;
    top: 0;
    z-index: 9999;
    background: #ffffff;
    box-shadow: 0 2px 40px 0 rgba(0, 0, 0, 0.1);
}

.header-content {
    max-width: var(--boldr-columns-12);
    margin: 0 auto;
}
.header-content-right,
.header-content {
    display: flex;
    align-items: center;
    justify-content: space-between;;
}

.header-content-right a + a {
    margin-left: 50px;
}

.boldr-button-medium,
.header-content-right .boldr-button {
    font-size: 16px;
}

.header-login-wrapper {
    position: relative;
}
.header-content .order-window-cart-next-states {
    margin: 0;
}

.header-content .order-window-cart-next-states,
.header-content-right > * + * {
    margin-left: var(--boldr-spacing-medium);
}
.header-content .order-window-cart-next-states > a:first-of-type,
#header-order-button {
    /* margin-left: var(--boldr-spacing-medium); */
    margin-bottom: 0;
}

.header-login-form {
    display: none;
    position: absolute;
    box-shadow: 0 2px 30px 0 rgba(0,0,0,0.1);
    background: #fff;
    top: 50px;
    left: 50%;
    transform: translateX(-50%);
    padding: 20px;
    width: 390px;
    z-index: 2;
}

.header-login-remember-me {
    font-size: 14px;
}

.header-login-form::before {
    position: absolute;
    top: 0;
    left: 50%;
    transform: rotate(45deg) translateX(-50%);
    background: #fff;
    width: 20px;
    height: 20px;
    content: '';
}

.header-login-form.visible {
    display: block;
}

.header-login-form-header {
    font-size: 16px;
    font-weight: 500;
    display: block;
    text-align: center;
}

#change-state-step-login-form {
    padding-bottom: 5px;
}

.change-state-step-login-form-error,
.header-login-form-error {
    padding: 15px;
    background: #FEE8EF;
    margin-top: 10px;
    font-size: 14px;
    color: #A01837;
    display: none;
    border: 1px solid currentColor;
}

.change-state-step-login-form-error.visible,
.header-login-form-error.visible {
    display: block;
}

.header-login-form input {
    display: block;
    width: 100%;
    border: 1px solid var(--boldr-primary-color);
    padding: 10px 15px;
    font-weight: 300;
    font-size: 14px;
    color: var(--boldr-primary-color);
    margin-top: 10px;
}

.header-login-form-forgot {
    display: block;
    font-size: 12px;
    margin-top: 5px;
}

.header-login-form-submit {
    display: block;
    width: 100%;
    margin-top: 25px;
}

.header-login-form-register {
    display: block;
    text-align: center;
    padding: 15px;
    background: var(--color-lightblue);
    border: 1px solid var(--boldr-primary-color);
    margin-top: 20px;
    font-size: 12px;
}

.header-logo {
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-logo-image {
    display: block;
    width: 92px;
    height: 92px;
    margin: 15px;
    transition: all 0.5s ease;
}

.header-wrapper.header-wrapper-past .header-logo-image,
.mobile-menu-opened .header-logo-image {
    width: 64px;
    height: 64px;
    margin: 8px;
}

.mobile-menu-opened .subheader-filter-search {
    transform: translateX(calc(-100% - ((100vw - var(--boldr-columns-12)) / 2)));
}
.mobile-menu-opened .subheader-categories {
    transform: translateX(-100%);
}

.header-menu {
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
}

.header-menu li {
    padding: 0;
    margin: 0;
}

.header-menu .menu-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.menu-item-notification {
    background: #ba1414;
    color: #fff;
    border-radius: 50%;
    font-size: 12px;
    display: inline-block;
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
}

.header-menu li + li {
    margin-left: var(--boldr-spacing-medium);
}

#header-order-button-count {
    display: none;
}
.has-items #header-order-button-count {
    display: block;
}
.has-items #header-order-button-continue {
    display: block;
}
.has-items #header-order-button-order,
#header-order-button-continue {
    display: none;
}
.boldr-shop-order-page .has-items #header-order-button-order {
    display: block;
}
.boldr-shop-order-page .has-items #header-order-button-continue {
    display: none;
}

.subheader-filter-search,
.subheader-categories {
    margin: 0 auto;
    max-width: var(--boldr-columns-12);
}

.subheader-filter-search {
    padding-top: 40px;
    height: 85px;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    transition: padding 0.5s ease, height 0.5s ease, transform 0.5s ease-in-out;
    flex-wrap: wrap;
}

.subheader-filter-search-controls {
    flex: 1 1 auto;
    display: flex;
    margin-right: 15px;
}

.subheader-filter-dropdown,
.subheader-shop-switcher-dropdown {
    position: absolute;
    max-height: 0px;
    background: #fff;
    border: 1px solid var(--boldr-primary-color);
    padding: 0 14px;
    margin-top: 6px;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition:
        all 200ms ease-in-out 400ms,
        padding 400ms ease-in-out 0ms,
        max-height 400ms ease-in-out 0ms
    ;
    z-index: 2;
}

.header-wrapper:not(.header-wrapper-past) .subheader-filter-dropdown.visible,
.header-wrapper:not(.header-wrapper-past) .subheader-shop-switcher-dropdown.visible {
    max-height: 100vh;
    padding: 14px;
    opacity: 1;
    visibility: visible;
    transition:
        all 200ms ease-in-out 0ms,
        padding 400ms ease-in-out 0ms,
        max-height 400ms ease-in-out 0ms
    ;
}

.subheader-filter-button-count:not(.visible) { display: none; }

.subheader-filter-dropdown label {
    display: flex;
}

.subheader-filter .boldr-button,
.subheader-shop-switcher .boldr-button {
    background-color: #fff;
}

.subheader-filter,
.subheader-shop-switcher {
    white-space: nowrap;
}

.subheader-shop-switcher-dropdown {
    display: flex;
    flex-direction: column;
}

.subheader-shop-switcher-dropdown a {
    font-size: var(--boldr-button-font-size);
    padding: 5px 10px;
    cursor: pointer;
}

.header-wrapper-past .subheader-filter-search {
    height: 0;
    padding-top: 0;
}

.subheader-filter-button,
.subheader-shop-switcher-button {
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.subheader-filter-button .boldr-button-text,
.subheader-shop-switcher-button .boldr-button-text {
    flex-grow: 1;
    text-align: left;
}
.subheader-filter-button .boldr-button-text {
    margin-left: 15px;
    margin-right: 15px;
}
.subheader-shop-switcher-button .boldr-button-text {
    margin-right: 15px;
}

.subheader-search-input {
    padding: 10px 20px;
    color: var(--boldr-primary-color);
    border: 1px solid var(--boldr-primary-color);
    width: 380px;
    border-radius: 0;
    background: #fff;
    font-family: var(--boldr-text-font-family);
    font-size: 14px;
    line-height: 20px;
    outline: none;
}

.subheader-categories {
    padding-top: 20px;
    padding-bottom: 40px;
    display: flex;
    transition: padding 0.5s ease, transform 0.5s ease-in-out;
    flex-wrap: wrap;
}

.header-wrapper-past .subheader-categories {
    padding-top: 15px;
    padding-bottom: 15px;
}

.subheader-categories a {
    font-size: 14px;
    line-height: 20px;
    padding: 10px 25px;
    background: #ECF2FF;
    text-decoration: none;
    display: inline-block;
    margin-right: 15px;
    transition: all 250ms ease-in-out;
    margin-bottom: 15px;
}

.subheader-categories a.active {
    color: #fff;
    background: var(--boldr-primary-color);
}

/* Buttons */
.boldr-button {
    position: relative;
    border: none;
    border-radius: 0;
}

.subheader-filter-button-count,
.boldr-button .boldr-button-notification-count {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    z-index: 10;
    border-radius: 50%;
    background: #A5E183;
    color: var(--boldr-primary-color);
    width: 21px;
    height: 21px;
    text-align: center;
    line-height: 21px;
    font-size: 12px;
}

.boldr-button-highlight .boldr-button-notification-count {
    background: var(--boldr-primary-color);
    color: #fff;
}

.boldr-button-large {
    font-size: 20px;
    padding: var(--boldr-button-large-padding);
}

.boldr-button-filled {
    background: var(--boldr-primary-color);
    color: #fff;
    position: relative;
}

.boldr-button-filled-large {
    background: var(--boldr-primary-color);
    color: #fff;
    position: relative;
    font-size: 20px;
    padding: var(--boldr-button-large-padding);
}

:not(.header-content-right) > .boldr-button-filled,
:not(.header-content-right) > .boldr-button-filled-large {
    margin-right: 5px;
    margin-bottom: 5px;
}

.boldr-button-highlight {
    --boldr-highlight-color: #A5E183;
    color: var(--boldr-primary-color);
    background: var(--boldr-highlight-color);
    box-shadow: 0 0 0 1px var(--boldr-primary-color), 5px 5px 0 0 var(--boldr-highlight-color), inset 5px 5px 0 0 #fff;
    position: relative;
}

.boldr-button-filled::after,
.boldr-button-filled-large::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translate(5px, 5px);
    box-shadow: inset 0 0 0 1px var(--boldr-primary-color);
}

.boldr-button-outline-light {
    color: var(--boldr-primary-color);
    box-shadow: inset 0 0 0 1px var(--boldr-primary-color);
}

@media (hover: hover) {
    .boldr-button-filled::after,
    .boldr-button-filled-large::after {
        transition: 0.4s ease transform;
    }

    .boldr-button-filled:hover::after,
    .boldr-button-filled-large:hover::after {
        transform: translate(0, 0);
    }

    .boldr-button-highlight {
        transition: 0.5s ease box-shadow;
    }

    .boldr-button-highlight:hover {
        box-shadow: 0 0 0 1px var(--boldr-primary-color), 0 0 0 0 var(--boldr-highlight-color), inset 0 0 0 0 #fff;
    }
}

/* Page content header */
.hb-header {
    position: relative;
    mask: linear-gradient(white, white), url('../images/masks/wave-bottom.svg') bottom repeat-x;
    -webkit-mask: linear-gradient(white, white), url('../images/masks/wave-bottom.svg') bottom repeat-x;
    mask-composite: subtract;
    -webkit-mask-composite: xor;
}

.hb-header-background,
.hb-header-background-mobile {
    width: 100%;
    min-height: 400px;
    height: 50vh;
    object-fit: cover;
    object-position: bottom center;
}

.hb-header-large .hb-header-background {
    display: block;
    height: 55vh;
}

.hb-header-background-mobile {
    display: none;
}

.hb-header-badge {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    transform: rotate(-10deg);
    padding: 40px;
    margin-left: calc(50vw - calc(var(--boldr-columns-12) / 2));
}

.boldr-section + .boldr-section {
    margin-top: var(--boldr-spacing-large);
}

.boldr-section-heading-style-default .boldr-section-heading-text {
    font-size: calc(var(--boldr-heading-font-size) * 0.4);
}

.boldr-section-heading-style-large .boldr-section-heading-text {
    font-size: calc(var(--boldr-heading-font-size) * 0.5);
    font-weight: bold;
    font-family: var(--boldr-heading-font-family);
    line-height: calc(var(--boldr-heading-font-size) * 0.63);
}

body:not(.boldr-shop-order-page) .main {
    padding-bottom: var(--boldr-spacing-large)
}

/* Footer */
.footer-wrapper {
    background: var(--boldr-primary-color);
    color: #fff;
    mask: linear-gradient(white, white), url('../images/masks/wave-top.svg') top repeat-x;
    -webkit-mask: linear-gradient(white, white), url('../images/masks/wave-top.svg') top repeat-x;
    mask-composite: subtract;
    -webkit-mask-composite: xor;
}

.footer-content {
    max-width: var(--boldr-columns-12);
    margin: 0 auto;
    padding: var(--boldr-spacing-large) 0 var(--boldr-spacing-small) 0;
}

.footer-content a {
    color: inherit;
}

.footer-social-media a {
    font-size: 18px;
    display: inline-block;
    margin-right: 10px;
}

.footer-top {
    display: flex;
}

.footer-opening-hours,
.footer-contact {
    flex: 1 1 0;
}
.footer-bereidingstijd {
    font-size: 12px;
    margin-top: 20px;
}
.footer-contact {
    margin-left: var(--boldr-spacers-1);
}
.footer-contact-lines {
    display: flex;
    flex-wrap: wrap;
}
.footer-contact-lines .footer-contact-line-group {
    flex: 1 1 50%;
    line-height: 25px;
}

.footer-bottom {
    margin-top: 100px;
    display: flex;
    justify-content: space-between;
    font-size: 14px;
}

/* Footer menu */
.footer-menu {
    margin: 0;
    padding: 0;
    display: flex;
    list-style: none;
}

.footer-menu li a {
    font-weight: 500;
}

.footer-menu li + li {
    margin-left: var(--boldr-spacing-medium);
}

/* Vacatures */
.boldr-job-offer {
    margin: 0 auto;
    max-width: var(--boldr-colums-6);
}

/* Order window */
.order-window {
    display: flex;
}

.order-window::before {
    content: '';
    flex: 0 3 0;
    margin-right: 0;
}

.order-window::before,
.order-window-cart-wrapper {
    transition: 0.5s ease all;
}

.order-window-cart-wrapper {
    flex: 0 0 0;
    overflow-x: hidden;
    margin-left: 0;
    display: flex;
    background: linear-gradient(to right, transparent 30px, white 30px);
    position: relative;
}

.order-window-cart-wrapper.no-transition {
    transition: none;
}

.order-window-cart-visible .order-window-cart-wrapper {
    flex-basis: 430px;
}

.order-window-cart-visible::before {
    flex-basis: 430px;
}

.order-window-cart {
    margin-left: 30px;
    background: #fff;
    padding: 30px 30px var(--boldr-spacing-medium) 30px;
    font-size: 16px;
    flex: 1;
    align-self: flex-start;
    position: fixed;
    max-height: calc(var(--vh) - 300px);
    height: 100%;
    overflow: auto
}

.order-window-cart-title {
    text-align: center;
    display: block;
    padding-bottom: 13px;
    border-bottom: 1px solid var(--boldr-primary-color);
    font-weight: 500;
    margin-bottom: 13px;
}

.order-window-cart-title-close {
    display: none;
}

.order-window-cart-mobile-empty {
    display: none;
}

.order-window-cart-product {
    display: flex;
    padding-bottom: 13px;
    margin-bottom: 13px;
    border-bottom: 1px solid currentColor;
}

.order-window-cart-product-quantity {
    width: 30px;
    margin-right: 10px;
    flex: 0 0 auto;
}

.order-window-cart-product-info {
    flex: 1 1 auto;
}

.order-window-cart-product-name-price {
    display: flex;
}

.order-window-cart-product-price {
    font-weight: 700;
    flex: 0 0 auto;
    margin-left: 10px;
}

.order-window-cart-product-name {
    flex: 1 1 auto;
}

.order-window-cart-product-modifier {
    display: flex;
    font-weight: 300;
    font-size: 14px;
}
.order-window-cart-product-modifier-name {
    flex: 1 1 auto;
}

.order-window-cart-product-option-values {
    font-size: 14px;
    font-weight: 300;
    margin-top: 6px;
}

.order-window-cart-product-quantity-buttons {
    display: flex;
    margin-top: 18px;
}

.order-window-cart-product-quantity-buttons a {
    background: url('../images/circular-button-outline.svg') center center / cover no-repeat;
    width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    display: inline-block;
    font-size: 19px;
}

.order-window-cart-product-quantity-buttons a + a {
    margin-left: 7px;
}

.order-window-cart-product-details {
    font-size: 12px;
    font-weight: 300;
    display: block;
}

.order-window-cart-subtotal {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 14px;
}

.order-window-cart-next-states {
    margin-top: 40px;
}
.order-window-cart-next-state {
    margin-bottom: 20px;
}

.order-window-cart-subtotal-amount {
    font-weight: 700;
}


.product-list-wrapper {
    margin: 0 auto;
    max-width: var(--boldr-columns-12);
    padding-bottom: var(--boldr-spacing-large);
}

.order-window .product-list-wrapper {
    flex: 0 1 var(--boldr-columns-12);
}

.order-window-cart-next-state {
    display: block;
    width: 100%;
}

.product-list {
    margin-top: 40px;
}

.product-list-refine-search {
    padding: 45px 0;
    text-align: center;
    display: none;
}
.product-list-refine-search.visible {
    display: block;
}
.product-list-refine-search span {
    display: block;
    margin-bottom: 20px;
}

/* Categories */
.product-list-category-header {
    margin-bottom: 30px;
    background: var(--boldr-primary-color);
    color: #fff;
    padding: 10px 20px;
    font-size: 20px;
    font-weight: normal;
}

/* Products */
.product-list-category-products {
    display: flex;
    flex-wrap: wrap;
}

.product-list-product {
    cursor: pointer;
    flex: 1 0 calc(260px - var(--boldr-spacing-small));
    margin-right: var(--boldr-spacing-small);
    margin-bottom: var(--boldr-spacing-small);
    box-shadow: 0 10px 20px 0 rgba(0,0,0,0.1);
    background: #fff;
    position: relative;
}

.product-list-product-spacer {
    flex: 1 0 calc(260px - var(--boldr-spacing-small));
    margin-right: var(--boldr-spacing-small);
}

.product-list-product-info {
    padding: 15px;
    min-height: 90px;
}

.product-list-product-name {
    font-weight: 500;
    display: block;
    font-size: 14px;
    line-height: 20px;
}

.product-list-product-details {
    margin-top: 1px;
    font-size: 12px;
    line-height: 18px;
    margin-right: 40px;
    display: block;
}

.product-list-product-price {
    font-weight: 500;
    margin-top: 12px;
    font-size: 12px;
    line-height: 18px;
    display: block;
}

.product-list-product-add {
    position: absolute;
    bottom: 12px;
    right: 12px;
    font-size: 14px;
    color: #fff;
    background: url('../images/circular-button-filled.svg') center center / contain no-repeat;
    width: 38px;
    height: 38px;
    line-height: 38px;
    text-align: center;
}

.product-list-product-header {
    position: relative;
    display: flex;
}

.product-list-product-image {
    height: 200px;
    width: 100%;
    object-fit: cover;
}

.product-list-product-variants {
    position: absolute;
    bottom: 4px;
    right: 4px;
    display: flex;
}

.product-list-product-variants i {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    border-radius: 25px;
    font-size: 14px;
    padding: 7px;
}

.product-list-product-variants i:not(:last-child) {
    margin-right: 5px;
}

.badge-new {
    position: absolute;
    top: 10px;
    left: 10px;
    font-weight: 500;
    background: #E56C0D;
    color: #fff;
    border-radius: 14px;
    line-height: 28px;
    padding: 0 15px;
    font-size: 14px;
}

/* Overlays */
#overlay-container {
    z-index: 10000;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(41,64,114,0.58);
    align-items: center;
    justify-content: center;
    display: none;
}

body.overlay-visible #overlay-container {
    display: flex;
}

#overlay-container .overlay {
    position: relative;
    width: 960px;
}

#overlay-container > * {
    display: none;
}

#overlay-container > .visible {
    display: block;
}

#overlay-add-product {
    background: #F6F6F6 url('../images/background.webp');
}

.boldr-shop-account-page-heading-menu-button-mobile,
.overlay-add-product-info-header-close-mobile {
    display: none;
}

#overlay-container .overlay .overlay-close {
    position: absolute;
    top: 13px;
    right: 13px;
}

#overlay-container .overlay .overlay-close .icon-plus::before {
    transform: rotate(45deg);
    display: inline-block;
}

#overlay-container .overlay .overlay-content {

}

/* Add product overlay */
.overlay-add-product {
    display: flex;
    flex-direction: column;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
}

.overlay-add-product-content {
    display: flex;
    flex: 1 1 auto;
    max-height: calc(var(--vh) - 86px);
}

.overlay-add-product-add {
    flex: 0 0 auto;
    background: #fff;
    padding: 20px 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 2px 40px 0 rgba(0,0,0,0.1);
}

.overlay-add-product-add-price {
    color: var(--boldr-primary-color);
    font-size: 20px;
    font-weight: bold;
}

.overlay-add-product-add-additional-price {
    margin-left: 30px;
}

.overlay-add-product-info {
    flex: 0 0 50%;
    overflow-y: auto;
    border-right: 1px solid var(--boldr-primary-color);
}

.no-cross-sell .overlay-add-product-info {
    flex: 1 1 auto;
    border-right: 0;
}
.no-cross-sell .overlay-add-product-extra {
    display: none;
}

#overlay-add-product.no-cross-sell {
    width: 480px;
}

.overlay-add-product-info-header-image {
    height: 242px;
    width: 100%;
    object-fit: cover;
    display: block;

    mask: linear-gradient(white, white), url('../images/masks/wave-bottom.svg') bottom repeat-x;
    -webkit-mask: linear-gradient(white, white), url('../images/masks/wave-bottom.svg') bottom repeat-x;
    mask-composite: subtract;
    -webkit-mask-composite: xor;
}

.overlay-add-product-info-header-allergens {
    padding: 20px 20px 0 20px;
    display: flex;
    align-items: center;
}

.overlay-add-product-info-header-allergens-title {
    font-weight: bold;
    font-size: 12px;
}

.overlay-add-product-info-header-allergen {
    width: 40px;
    height: 40px;
}

.overlay-add-product-info-header-allergens-list {
    display: flex;
    flex-wrap: wrap;
    margin-left: 10px;
}

.overlay-add-product-info-content {
    padding: 20px;
}


.overlay-add-product-extra {
    flex: 0 0 50%;
    overflow-y: auto;
    padding: 30px;
}

.overlay-add-product-extra-heading {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 15px;
    display: block;
}

.overlay-add-product-info-content {
    padding: 20px 30px;
}

.overlay-add-product-info-name {
    font-weight: bold;
    font-size: 20px;
    display: block;
    margin-bottom: 3px;
}

.overlay-add-product-info-details {
    font-size: 12px;
    font-weight: 300;
    display: block;
}

.overlay-add-product-extra-category {
    background: #fff;
    position: relative;
}

.overlay-add-product-extra-category .overlay-add-product-extra-category-selection-count {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    border-radius: 50%;
    background: #A5E183;
    color: var(--boldr-primary-color);
    text-align: center;
    line-height: 21px;
    width: 21px;
    height: 21px;
    font-size: 12px;
}

.overlay-add-product-extra-category.selected .overlay-add-product-extra-category-selection-count {
    display: block;
}

.overlay-add-product-extra-category + .overlay-add-product-extra-category {
    margin-top: 15px;
}

.overlay-add-product-extra-category-heading {
    padding: 10px 20px;
    display: flex;
    cursor: pointer;
    align-items: center;
    justify-content: space-between;
}

.overlay-add-product-extra-category-name {
    font-weight: 500;
    font-size: 14px;
}

.overlay-add-product-extra-category-toggle {
    font-size: 18px;
}

.overlay-add-product-extra-category-products-wrapper {
    overflow: hidden;
    max-height: 0;
    margin-right: -10px;
    transition: 0.5s ease max-height;
}

.overlay-add-product-extra-category.open .overlay-add-product-extra-category-products-wrapper {
    max-height: 1000px;
}

.overlay-add-product-extra-category.open .overlay-add-product-extra-category-toggle .icon-plus {
    display: none;
}

.overlay-add-product-extra-category:not(.open) .overlay-add-product-extra-category-toggle .icon-minus {
    display: none;
}

.overlay-add-product-extra-category-products {
    padding: 0 20px 10px 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: space-between;
}

.overlay-add-product-extra-product {
    flex: 1 0 150px;
    border: 1px solid var(--color-unfocussed);
    margin-bottom: 8px;
    margin-right: 10px;
    display: flex;
    align-items: stretch;
    flex-direction: column;
}
.overlay-add-product-extra-product-spacer {
    margin-right: 10px;
    flex: 1 0 150px;
}

.overlay-add-product-extra-product-image {
    flex-basis: 50px;
    width: 50px;
    max-width: 50px;
}

.overlay-add-product-extra-product.selected {
    border: 1px solid var(--boldr-primary-color);
}

.overlay-add-product-extra-product-info {
    padding: 5px 10px;
    flex: 1 auto;
}

.overlay-add-product-extra-product-name {
    font-size: 12px;
    font-weight: 500;
    display: block;
    line-height: 18px;
}

.overlay-add-product-extra-product-price {
    font-size: 12px;
    display: block;
}

.overlay-add-product-extra-product-image-and-controls {
    display: flex;
    border-top: 1px solid var(--color-unfocussed);
}

.overlay-add-product-extra-product.selected .overlay-add-product-extra-product-image-and-controls {
    border-top: 1px solid var(--boldr-primary-color);
}

.overlay-add-product-extra-product-image {
    flex: 0 0 60px;
    width: 100%;
    height: 50px;
    object-fit: cover;
    border-right: 1px solid var(--color-unfocussed);
}

.overlay-add-product-extra-product.selected .overlay-add-product-extra-product-image {
border-right: 1px solid var(--boldr-primary-color);
}

.overlay-add-product-extra-product-controls {
    flex: 1 1 auto;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
}

.overlay-add-product-extra-product-controls a {
    background: url('../images/circular-button-filled.svg') center center / contain;
    width: 29px;
    height: 29px;
    text-align: center;
    line-height: 29px;
    color: #fff;
    display: inline-block;
}

.overlay-add-product-extra-product:not(.selected) .overlay-add-product-extra-product-minus {
    background-image: url('../images/circular-button-filled-light.svg');
}

.overlay-add-product-extra-product-quantity {
    flex: 1 1 100%;
    font-size: 12px;
    flex: 1 1 auto;
    text-align: center;
    font-weight: 500;
}

.overlay-add-product-info-option {
    margin-top: 25px;
}

.overlay-add-product-info-option-name {
    display: block;
    font-weight: 500;
    font-size: 14px;
    margin-bottom: 10px;
}

#pickup-delivery-datetime-help {
    color: #E32626;
}

.pickup-delivery-which {
    width: 100%;
}
.pickup-delivery-which,
.pickup-delivery-which-choice,
.overlay-add-product-info-option-select {
    display: flex;
}

.overlay-add-product-info-option-select {
    flex-wrap: wrap;
}


.pickup-delivery-which-choice {
    flex: 1 1 auto;
}

.pickup-delivery-which-choice input {
    display: none;
}

#pickup-delivery-address .boldr-button {
    margin-bottom: 20px;
}

.pickup-delivery-which-choice label,
.overlay-add-product-info-option-select-choice {
    flex: 1 1 auto;
    background: #fff;
    text-align: center;
    line-height: 20px;
    color: var(--boldr-primary-color);
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    font-size: 14px;
    padding: 10px 20px;
    cursor: pointer;
}

.pickup-delivery-which-choice > :disabled + label {
    color: var(--color-unfocussed);
    cursor: auto;
    box-shadow: inset 0 0 0 1px var(--color-unfocussed);
}

.pickup-delivery-which-choice label {
    box-shadow: inset 0 0 0 1px var(--boldr-primary-color);
}

.pickup-delivery-which-choice :checked + label,
.overlay-add-product-info-option-select-choice.selected {
    background: var(--boldr-primary-color);
    color: #fff;
}

.overlay-add-product-info-option-ingredients-ingredient {
    display: flex;
}

.overlay-add-product-info-option-ingredients-ingredient + .overlay-add-product-info-option-ingredients-ingredient {
    margin-top: 12px;
}

.overlay-add-product-info-option-ingredients-ingredient input {
    display: none;
}

.overlay-add-product-info-option-ingredients-ingredient span {
    font-size: 12px;
    display: flex;
    align-items: center;
}

.form-errors {
    background: #FEE8EF;
    color: #A01837;
    border: 1px solid #A01837;
    padding: 15px 30px;
}

.form-success {
    background: var(--boldr-highlight-color);
    padding: 15px;
    margin: 1em 0;
}

.form-label-control > [type="checkbox"],
.form-label-control [type="radio"] {
    width: 0;
    height: 0;
    margin: 0;
    display: block;
    opacity: 0;
}

.form-label-control > [type="checkbox"] + label,
.form-label-control [type="radio"] + label {
    display: flex;
    align-items: center;
    /* font-size: 12px; */
}

.form-label-control > [type="checkbox"]:disabled + label,
.form-label-control [type="radio"]:disabled + label {
    opacity: 0.5;
}

.form-label-control > [type="checkbox"] + label i,
.form-label-control [type="radio"] + label i{
    font-size: 16px;
}

.form-label-control > [type="checkbox"] + label::before,
.form-label-control [type="radio"] + label::before,
.overlay-add-product-info-option-ingredients-ingredient span::before {
    content: '';
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    display: inline-block;
    border-radius: 2px;
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--color-unfocussed);
    margin-right: 10px;
    text-align: center;
    font-size: 17px;
    line-height: 19px;
}
.form-label-control [type="radio"] + label::before {
    border-radius: 50%;
}

.attempted-submit .form-label-control > [type="checkbox"]:invalid + label::before,
.attempted-submit .form-label-control [type="radio"]:invalid + label::before,
.attempted-submit .overlay-add-product-info-option-ingredients-ingredient:invalid span::before {
    box-shadow: inset 0 0 0 1px #E84242;
}

.form-label-control > [type="checkbox"]:checked + label::before,
.overlay-add-product-info-option-ingredients-ingredient input:checked + span::before {
    box-shadow: inset 0 0 0 1px var(--boldr-primary-color);
    font-family: 'icomoon';
    content: "\e915";
}
.form-label-control [type="radio"]:checked + label::before {
    background: var(--boldr-primary-color);
    box-shadow: inset 0 0 0 1px var(--boldr-primary-color), inset 0 0 0 5px #fff;
}

.form-label-control a {
    text-decoration: underline;
}

.boldr-shop-account-page {
    width: var(--boldr-columns-12);
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

.boldr-shop-account-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.boldr-shop-account-pagination a {
    margin: 10px 5px;
    border: 1px solid var(--color-lightblue);
    color: var(--boldr-primary-color);
    padding: 10px 15px;
    font-size: 12px;
}

.boldr-shop-account-pagination a.current {
    color: #fff;
    background: var(--boldr-primary-color);
    border-color: var(--boldr-primary-color);
}

.boldr-shop-account-orders {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}
.boldr-shop-account-orders th {
    font-weight: 500;
    padding: 10px 15px;
    text-align: left;
}
.boldr-shop-account-order-summary {
    border: 1px solid var(--color-lightblue);
}
.boldr-shop-account-order-summary td {
    padding: 7px 15px;
}
.boldr-shop-account-order-spacer td {
    padding: 5px;
}
.boldr-shop-account-order-details {
    border-left: 1px solid var(--color-lightblue);
    border-right: 1px solid var(--color-lightblue);
}
.boldr-shop-account-order-details td {
    padding: 0;
    border-top: none;
}
.boldr-shop-account-order-details-content {
    display: none;
    padding: 0 15px;
}
.boldr-shop-account-order-details-content.visible {
    padding: 10px 15px;
    border-bottom: 1px solid var(--color-lightblue);
}
.boldr-shop-account-order-item {
    display: flex;
    border-bottom: 1px solid var(--color-lightblue);
    margin-bottom: 7px;
    padding-bottom: 7px;
}
.boldr-shop-account-order-item-quantity {
    flex: 0 0 25px;
    margin-right: 15px;
}
.boldr-shop-account-order-item-info {
    flex: 1 1 auto;
}
.boldr-shop-account-order-item-name {
    font-weight: 500;
    display: block;
}
.boldr-shop-account-order-item-description {
    display: block;
}
.boldr-shop-account-order-item-price {
    flex: 0 0 auto;
    font-weight: bold;
}
.boldr-shop-account-order-total {
    display: flex;
    padding: 8px 0 0 40px;
}
.boldr-shop-account-order-total-name {
    flex: 1 1 auto;
}
.boldr-shop-account-order-total-price {
    font-weight: bold;
}

.boldr-shop-confirmation-heading,
.boldr-shop-change-state-heading,
.boldr-shop-account-page-menu-heading,
.boldr-shop-account-page-heading {
    font-size: calc(var(--boldr-heading-font-size) * 0.3);
    line-height: 50px;
    flex: 0 100%;
    font-weight: 500;
    display: block;
    text-align: center;
    margin: 30px 0;
}

.boldr-shop-account-page-menu-heading {
    display: none;
}

.boldr-shop-account-page-content {
    flex: 1 1 var(--boldr-columns-8);
}
.boldr-shop-account-section {
    margin-bottom: var(--boldr-spacers-1);
}
.boldr-shop-account-section,
.boldr-shop-account-menu {
    background: #fff;
    padding: 20px 25px;
}
.boldr-shop-account-section-heading {
    display: block;
    font-size: 16px;
    line-height: 23px;
    color: var(--boldr-primary-color);
    font-weight: 500;
    margin-bottom: 20px;
}

.boldr-shop-account-menu {
    margin-right: var(--boldr-spacers-1);
    flex: 0 0 var(--boldr-columns-4);
}

.boldr-shop-account-menu-link {
    display: block;
    padding: 20px 0;
}

.boldr-shop-account-menu-link:first-child {
    padding-top: 0;
}
.boldr-shop-account-menu-link:last-child {
    padding-bottom: 0;
}

.boldr-shop-account-menu-link + .boldr-shop-account-menu-link {
    border-top: 1px solid var(--boldr-primary-color);
}

.boldr-shop-account-menu-link.current {
    font-weight: 500;
}

.boldr-shop-account-menu a i {
    margin-right: 15px;
}

#overlay-register {
    background: #fff;
}

.overlay-register-title {
    font-size: 16px;
    font-weight: 500;
    display: block;
    margin-bottom: 20px;
}

.boldr-shop-account-address {
    background: #ECF2FF;
    padding: 20px;
    display: flex;
    margin-top: 20px;
    align-items: center;
    justify-content: space-between;
}
.boldr-shop-account-address-content {
    display: block;
    flex: 1 1 auto;
}

.boldr-shop-account-address-radio {
    display: none;
}
.boldr-shop-account-address-radio + .boldr-shop-account-address::before {
    content: '';
    width: 20px;
    height: 20px;
    display: inline-block;
    border: 1px solid var(--boldr-primary-color);
    border-radius: 50%;
    flex: 0 0 20px;
    margin-right: 20px;
}
.boldr-shop-account-address-radio:checked + .boldr-shop-account-address::before {
    background: var(--boldr-primary-color);
    box-shadow: inset 0 0 0 3px var(--color-lightblue);
}
.boldr-shop-account-addresses + .boldr-button {
    margin-top: 20px;
}

.boldr-shop-account-address-actions a {
    display: block;
}
.boldr-shop-account-address-actions a + a {
    margin-top: 20px;
}

/* Header + section */
.hb-header + .boldr-section:not(.boldr-contact-map),
.hb-header + .boldr-contact-map .boldr-contact-map-details {
    background: var(--boldr-highlight-color);
    padding: var(--boldr-spacing-medium) var(--boldr-spacing-small);
    --boldr-content-text-align: center;
}

.hb-header + .boldr-section:not(.boldr-contact-map),
.hb-header + .boldr-contact-map .boldr-contact-map-details {
    margin: 0 auto;
    max-width: var(--boldr-columns-8);
    /*
    transform: translateY(-180px);
    margin-bottom: calc(-180px + var(--boldr-spacing-medium));
    */
    margin-bottom: var(--boldr-spacing-large);
}

.hb-header + .boldr-contact-map .boldr-contact-map-details {
    font-size: 14px;
    flex: 0 0 425px;
    z-index: 999;
    padding: var(--boldr-spacing-medium) var(--boldr-columns-1);
}

.boldr-contact-map-map {
    flex: 0 1 var(--boldr-columns-9);
    height: 440px;
    margin-top: 60px;
}

.boldr-contact-map {
    align-items: flex-start;
    position: relative;
}

.boldr-contact-map-line {
    display: flex;
    align-items: flex-start;
    margin-bottom: 25px;
}
.boldr-contact-map-line > i {
    flex: 0 0 18px;
    margin-top: 3px;
    font-size: 18px;
    margin-right: 9px;
}
.boldr-contact-map-marker-image {
    width: 60px;
    height: 60px;
}

.error-404 {
    margin: var(--boldr-spacing-large) auto;
    text-align: center;
}

.error-404-code {
    display: flex;
    align-items: center;
    justify-content: center;
}

.error-404-4 {
    font-weight: 100;
    font-size: calc(var(--boldr-heading-font-size) * 1.08);
    line-height: 157px;
}

.error-404-0 {
    font-size: 0;
    color: transparent;
    width: 100px;
    height: 100px;
    background: url('../images/404.png') center center / contain no-repeat;
    display: inline-block;
}

.error-404-sorry {
    font-size: calc(var(--boldr-heading-font-size) * 0.3);
    line-height: 50px;
    font-weight: 500;
}

.error-404-explain {
    margin: 5px 0;
}

.error-404-button {
    margin-top: 40px;
    font-size: 16px;
}

.form-label-control {
    position: relative;
    margin: 10px 0;
}

.form-label-control > [class^="icon-"] {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
}

.form-label-control > label > i {
    margin-right: 10px;
}

.form-label-control > input:not([type="radio"]):not([type="checkbox"]) + label,
.form-label-control > select + label,
.form-label-control > textarea + label {
    position: absolute;
    top: 11px;
    left: 15px;
    font-weight: 300;
    transition: all 0.2s ease;
    font-size: 14px;
    line-height: 20px;
}

.form-label-control input:not([type="checkbox"]):not([type="radio"]),
.form-label-control select,
.form-label-control textarea {
    border: 1px solid var(--boldr-primary-color);
    background: #fff;
    border-radius: 0;
    width: 100%;
    font-weight: 300;
    padding: 14px 15px 6px 15px;
    font-size: 14px;
    line-height: 20px;
    color: #fff;
}


.form-label-control input:not([type="checkbox"]):not([type="radio"]):focus,
.form-label-control select:focus,
.form-label-control textarea:focus {
    outline: none;
}

.form-help {
    font-size: 12px;
}

.form-group-row {
    display: flex;
}

.form-group-row .form-row {
    flex: 1 1 auto;
}
.form-group-row .form-row + .form-row {
    margin-left: 10px;
}

.form-group-row .form-label-control {
    margin: 0;
}
.form-group-row {
    margin: 10px 0;
}

.form-row.field-has-value > .form-label-control > input,
.form-row.field-has-value > .form-label-control > textarea,
.form-row.field-has-value > .form-label-control > select,
.form-label-control :focus {
    color: var(--boldr-primary-color) !important;
}
.form-row.field-has-value > .form-label-control > input:not([type="radio"]):not([type="checkbox"]) + label,
.form-row.field-has-value > .form-label-control > select + label,
.form-row.field-has-value > .form-label-control > textarea + label,
.form-label-control > :not([type="radio"]):not([type="checkbox"]):focus + label {
    font-size: 9px !important;
    top: 0px !important;
}

input::-webkit-date-and-time-value {
    text-align: left;
}

.form-label-control input:not([type="checkbox"]):not([type="radio"])[type="date"]{
    background-image: url('../images/svgicons/date.svg');
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: calc(100% - 15px) center;
}
.form-label-control input:not([type="checkbox"]):not([type="radio"])[type="time"]{
    background-image: url('../images/svgicons/time.svg');
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: calc(100% - 15px) center;
}

.form-row ::-webkit-calendar-picker-indicator {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 40px;
    height: auto;
    opacity: 0;
}

.boldr-shop-change-state {
    display: flex;
    flex-wrap: wrap;
    max-width: var(--boldr-columns-12);
    margin: 0 auto;
    align-items: flex-start;
}
.boldr-shop-change-state-steps {
    flex: 1 0 var(--boldr-columns-8);
    margin-right: var(--boldr-spacers-1);
    margin-bottom: 20px;
}

.add-discount-mobile,
.boldr-shop-change-state-step {
    background: #fff;
    padding: 24px;
    margin-bottom: var(--boldr-spacing-small);
}
.boldr-shop-change-state-step-name {
    display: block;
    font-weight: 500;
}
.boldr-shop-change-state-step-name:empty {
    margin-bottom: 0;
}

.boldr-shop-change-state-order {
    background: #fff;
    padding: 24px;
    flex: 1 0 var(--boldr-columns-4);
}
.boldr-shop-change-state-order-heading {
    font-size: 16px;
    font-weight: 500;
    display: block;
    text-align: center;
    padding: 0 0 15px 0;
    border-bottom: 1px solid var(--boldr-primary-color);
    margin-bottom: 15px;
}

.boldr-shop-change-state-step-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.boldr-shop-change-state-step-content > p:first-child,
.boldr-shop-change-state-step-content > .form-group-row:first-child,
.boldr-shop-change-state-step-content > .form-row:first-child .form-label-control {
    margin-top: 0;
}
.boldr-shop-change-state-step-content > p:last-child,
.boldr-shop-change-state-step-content > .form-group-row:last-child,
.boldr-shop-change-state-step-content > .form-row .form-label-control,
.boldr-shop-change-state-step-content > .form-row:last-child .form-label-control {
    margin-bottom: 0;
}

.collapsible + .boldr-shop-change-state-step-content {
    max-height: 250px;
}

.boldr-shop-change-state-step-heading.collapsible {
    cursor: pointer;
}

.boldr-shop-change-state-step-heading.collapsible + .boldr-shop-change-state-step-content {
    transition: max-height 0.3s ease-in, padding 0.3s ease;
    overflow-y: hidden;
    overflow-x: visible;
    padding-top: 20px;
}
.boldr-shop-change-state-step-heading:not(.collapsible) + .boldr-shop-change-state-step-content {
    padding-top: 20px;
}

.boldr-shop-change-state-step-collapse {
    font-size: 20px;
    transition: transform 0.3s ease;
}
.collapsed .boldr-shop-change-state-step-collapse {
    transform: rotate(-180deg);
}
.collapsed .boldr-shop-change-state-step-content {
    max-height: 0;
    padding-top: 0;
}

.boldr-shop-change-state-order-back {
    margin-top: 40px;
}

.boldr-shop-payment-option + .boldr-shop-payment-option {
    margin-top: 10px;
}

.boldr-shop-payment-option .form-label-control {
    margin: 0;
}

.boldr-shop-payment-option-name-with-image img {
    margin-right: 10px;
}

.boldr-shop-payment-option-options {
    padding-left: 30px;
    display: none;
}
.boldr-shop-payment-option-options.visible {
    display: block;
    margin-top: 10px;
}

.boldr-shop-change-state-finish {
    font-size: 20px;
    display: block;
    width: 100%;
    padding: 18px;
}

.boldr-shop-order-confirmation {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin: 160px 0;
}

.boldr-shop-order-confirmation p {
    padding: 0 25px;
}

.order-confirmation-notice {
    color: #BA1414;
}

.boldr-shop-order-confirmation-heading {
    font-weight: 500;
    font-size: calc(var(--boldr-heading-font-size) * 0.3);
    line-height: 50px;
    margin: 25px 0 10px 0;
}

.boldr-shop-order-confirmation::before {
    content: '';
    width: 84px;
    height: 84px;
    background: url('../images/thank-you.svg') center center / contain no-repeat;
}

#pickup_delivery_time,
#pickup_delivery_date {
    appearance: none;
    -webkit-appearance: textfield;
    padding-right: 35px;
}

#pickup_delivery_date::-webkit-calendar-picker-indicator,
#pickup_delivery_time::-webkit-calendar-picker-indicator {
    display: none;
}

/* opening-hours */


.boldr-opening-hours {
    display: flex;
    flex-direction: column;
    line-height: 30px;
}

.boldr-opening-hour {
    display: flex;
}
.boldr-opening-hour + .boldr-opening-hour {
    margin-top: 10px;
}
.boldr-opening-hour-days {
    width: var(--boldr-columns-2);
    margin-right: var(--boldr-spacers-1);
    font-weight: 500;
    text-transform: lowercase;
}


/* responsive & mobile */
.header-mobile-language {
    transition: all 500ms ease-in-out;
}
.mobile-menu-opened .header-mobile-language {
    transform: translateX(-100vw);
}
.header-mobile-language ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.header-mobile-language li {
    display: block;
}
.header-mobile-language img {
    display: block;
    width: 70px;
    height: 70px;
    padding: 15px;
}

.header-mobile-button {
    position: absolute;
    top: 10px;
    right: 15px;
    background: url('../images/circular-button-white.svg') center center / contain no-repeat;
    width: 44px;
    height: 44px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    transition: all 200ms linear;
    filter: drop-shadow(0 0 5px rgba(0,0,0,0.1));
}

.header-mobile-button span {
    width: 17px;
    height: 1px;
    background-color: var(--boldr-primary-color);
    animation-duration: 400ms;
    animation-fill-mode: forwards;
    position: absolute;
}

.header-mobile-button span:nth-of-type(1){
    transform: translate(-13px, -6px);
    animation-name: header-mobile-button-1-close;
}
.header-mobile-button span:nth-of-type(2){
    width: 10px;
    transform: translate(-13px, 0);
    transition: all 200ms linear;
}
.header-mobile-button span:nth-of-type(3){
    transform: translate(-13px, 6px);
    animation-name: header-mobile-button-3-close;
}

.mobile-menu-opened .header-mobile-button span:nth-of-type(1){
    animation-name: header-mobile-button-1-open;
}
.mobile-menu-opened .header-mobile-button span:nth-of-type(2){
    width: 0;
    transform: translate(-18px, 0);
}
.mobile-menu-opened .header-mobile-button span:nth-of-type(3){
    animation-name: header-mobile-button-3-open;
}

.mobile-menu-opened .header-mobile-button {
    transform: rotate(90deg);
}

.header-mobile-menu {
    background-color: var(--boldr-primary-color);
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    transition: all 500ms ease-in-out;
}

body:not(.mobile-menu-opened) .header-mobile-menu  {
    transform: translate(100%, 0);
}

.header-mobile-menu a {
    color: #fff
}

.header-mobile-menu ul {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

.header-mobile-menu .header-menu li {
    margin: 0;
    display: flex;
}
.header-mobile-menu .header-menu .menu-item-notification {
    margin-top: 10px;
}

.header-mobile-menu ul li a {
    display: block;
    padding: 20px 10px;
}
.header-mobile-menu ul li a.available-locale {
    display: flex;
    gap: 10px;
    align-items: center;
}
.header-mobile-menu ul li a.available-locale img {
    border: 1px solid #fff;
}

.header-mobile-menu ul li a#header-order-button {
    margin-left: 0;
}

.header-mobile-menu-inner {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    padding-top: 100px;
}

.mobile-begin-order-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: #fff;
    padding: 15px;
    box-shadow: 0 0 10px 0 rgba(0,0,0,0.4);
}

.mobile-begin-order-bar .boldr-button {
    text-align: center;
    width: 100%;
    font-size: 16px;
    display: block;
}

body:not(.init) input:-webkit-autofill,
body:not(.init) textarea:-webkit-autofill,
body:not(.init) select:-webkit-autofill {
    -webkit-text-fill-color: transparent;
    color: transparent;
}

@keyframes header-mobile-button-1-open {
    0% { transform: translate(-13px, -6px); }
    50% { transform: translate(-13px, 0); }
    100% { transform: translate(-13px, 0) rotate(45deg); }
}
@keyframes header-mobile-button-3-open {
    0% { transform: translate(-13px, 6px); }
    50% { transform: translate(-13px, 0); }
    100% { transform: translate(-13px, 0) rotate(-45deg); }
}

@keyframes header-mobile-button-1-close {
    0% { transform: translate(-13px, 0) rotate(45deg); }
    50% { transform: translate(-13px, 0); }
    100% { transform: translate(-13px, -6px); }
}
@keyframes header-mobile-button-3-close {
    0% { transform: translate(-13px, 0) rotate(-45deg); }
    50% { transform: translate(-13px, 0); }
    100% { transform: translate(-13px, 6px); }
}


@media only screen and (max-width: 1000px) {
    .footer-contact-lines {
        flex-wrap: nowrap;
        flex-direction: column;
    }
    .footer-bottom {
        margin-top: 60px;
    }
}

@media only screen and (min-width: 701px) {
    .text-mobile,
    .mobile-begin-order-bar,
    .header-mobile {
        display: none;
    }

    .boldr-contact-map-map {
        margin-left: calc(-1 * var(--boldr-columns-2));
    }

    .header-content {
        position: relative;
        transition: min-height 0.5s ease;
        min-height: 122px;
    }
    .header-logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }
    .header-wrapper.header-wrapper-past .header-content {
        min-height: 80px;
    }
}

@media only screen and (max-width: 880px) {
    .subheader-filter-search {
        display: block;
    }
    .subheader-shop-switcher {
        margin-top: 15px;
    }
}

@media only screen and (max-width: 800px) {

    body.mobile-show-cart {
        overflow-y: hidden;
    }

    .product-list-product-image {
        height: 170px;
    }

    .overlay-add-product-content {
        display: block;
        overflow: auto;
    }

    .overlay-add-product-extra-category-products {
        margin-right: -8px;
    }

    .overlay-add-product-extra-product,
    .overlay-add-product-extra-product-spacer {
        flex: 1 0 150px;
        margin-right: 8px;
    }

    .boldr-shop-change-state-heading,
    .boldr-shop-account-page-heading {
        display: flex;
        align-items: center;
    }

    .boldr-shop-change-state-heading span,
    .boldr-shop-account-page-heading span {
        flex: 1 1 auto;
        margin-right: 44px;
    }

    .boldr-shop-change-state-order-back {
        display: none;
    }

    .overlay-close {
        display: none;
    }

    .boldr-shop-account-page-heading-menu-button-mobile,
    .overlay-add-product-info-header-close-mobile {
        display: block;
        color: var(--boldr-primary-color);
        z-index: 9999;
        background: url('../images/circular-button-white.svg') center / 100%;
        width: 44px;
        height: 44px;
        text-align: center;
        line-height: 44px;
    }

    .overlay-add-product-info-header-close-mobile {
        position: absolute;
        top: 9px;
        left: 15px;
    }

    .boldr-shop-account-page.in-mobile-menu .boldr-shop-account-page-heading,
    .boldr-shop-account-page.in-mobile-menu .boldr-shop-account-page-content,
    .boldr-shop-account-menu {
        display: none;
    }

    .boldr-shop-account-page.in-mobile-menu .boldr-shop-account-menu,
    .boldr-shop-account-page.in-mobile-menu .boldr-shop-account-page-menu-heading {
        display: block;
    }

    .boldr-shop-account-menu {
        flex: 1 1 auto;
    }
}

@media only screen and (max-width: 700px) {

    :root {
        --boldr-columns-width: calc(100vw / 18.2608);
        --boldr-spacers-width: calc(100vw / 42);
        --boldr-spacing-flow: calc(700px / 63);
        --boldr-spacing-small: calc(700px / 42);
        --boldr-spacing-medium: calc(700px / 25.2);
        --boldr-spacing-large: 80px;
        --boldr-heading-font-size: 60px;
    }

    .footer-bereidingstijd {
        width: 252px;
        margin-left: auto;
        margin-right: auto;
    }

    .boldr-shop-confirmation-heading,
    .boldr-shop-change-state-heading,
    .boldr-shop-account-page-menu-heading,
    .boldr-shop-account-page-heading {
        margin-top: 110px;
    }

    .boldr-shop-account-order-expand-text,
    .boldr-shop-account-order-count,
    .boldr-shop-account-order-state,
    .header-content-left,
    .header-content-right,
    .order-window-cart-visible .order-window-cart-mobile-empty,
    .hb-header-badge,
    .text-desktop {
        display: none;
    }

    .boldr-shop-account-menu {
        flex: 1 1 auto;
        margin-bottom: 40px;
        margin-right: 0;
    }

    .hb-header-large .hb-header-background {
        display: none;
    }

    .hb-header-large .hb-header-background-mobile {
        display: block;
        height: 50vh;
    }

    .form-group-row {
        flex-direction: column;
    }

    .form-group-row .form-row + .form-row {
        margin-top: 10px;
        margin-left: 0;
    }

    .order-window-cart-mobile-empty {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 300px;
        flex-direction: column;
        text-align: center;
    }
    .order-window-cart-mobile-empty-text {
        margin: 30px 0;
    }

    .boldr-shop-account-address {
        display: block;
    }
    .boldr-shop-account-address-actions {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-left: -20px;
        margin-top: 10px;
    }
    .boldr-shop-account-address-actions a {
        margin-top: 10px;
        margin-left: 20px;
        flex: 1 1 auto;
    }
    .boldr-shop-account-address-actions a + a {
        margin-top: 10px;
    }

    .hb-header + .boldr-section:not(.boldr-contact-map),
    .hb-header + .boldr-contact-map .boldr-contact-map-details {
        max-width: var(--boldr-columns-5);
    }
    .boldr-content-alignment-full {
        --boldr-content-section-width: var(--boldr-columns-6);
    }

    .header-logo-image {
        margin: 10px;
    }
    body:not(.boldr-shop-order-page) .header-wrapper {
        background: transparent;
        box-shadow: none;
    }

    .header-content {
        justify-content: center;
        height: 0;
        align-items: flex-start;
    }

    body {
        margin-top: 0!important;
    }

    .hb-header-badge {
        padding: 100px 0 0 0;
    }

    .subheader-filter-search {
        margin-top: 70px;
    }

    .product-list {
        margin-top: 300px;
    }

    .subheader-categories {
        flex-wrap: nowrap;
        overflow: auto;
        white-space: nowrap;
        padding: 0;
        margin-left: 0;
        margin-top: 15px;
        max-width: 100%;
    }

    .subheader-categories a:first-of-type {
        margin-left: calc((100vw - var(--boldr-columns-12)) / 2);
    }

    .subheader-categories a:last-of-type {
        margin-right: calc((100vw - var(--boldr-columns-12)) / 2);
    }

    .subheader-filter-search-controls {
        margin-right: 0;
        display: block;
    }

    .subheader-filter-search {
        height: 144px;
        max-width: 100%;
        padding-left: calc((100vw - var(--boldr-columns-12)) / 2);
        padding-right: calc((100vw - var(--boldr-columns-12)) / 2);
    }

    .subheader-filter {
        margin-bottom: 15px;
    }

    .header-wrapper.header-wrapper-past .header-logo-image,
    .mobile-menu-opened .header-logo-image {
        width: 52px;
        height: 52px;
        margin: 8px;
    }

    .header-wrapper-past .subheader-categories {
        padding-top: 0;
        margin-top: 0;
    }

    .subheader-filter-button,
    .subheader-search-input,
    .subheader-shop-switcher-button {
        width: 100%;
    }

    .product-list-product {
        flex: 0 0 calc(50% - var(--boldr-spacing-small));
    }

    .order-window-cart-wrapper {
        position: fixed;
        bottom: 0;
        right: 0;
        left: 0;
        box-shadow: none;
        height: 72px;
        z-index: 10000;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        box-shadow: 0 0 10px 0 rgba(0,0,0,0.4)
    }

    .mobile-show-cart .order-window-cart-wrapper {
        height: var(--vh);
    }

    .order-window-cart {
        margin-left: 0;
        position: static!important;
        overflow: hidden;
        top: 0!important;
        width: 100%!important;
        max-height: 100%!important;
        padding: 0;
    }

    .order-window-cart-title {
        display: flex;
        align-items: baseline;
        justify-content: center;
    }

    .order-window-cart-span {
        flex: 1 1 auto;
        margin-left: 20px;
    }

    .order-window-cart-title-close {
        display: block;
        width: 20px;
    }

    .order-window-cart-body {
        height: calc(var(--vh) - 72px);
        overflow: auto;
        padding: 30px;
    }

    .order-window-cart-subtotal {
        margin-top: 0;
    }

    .order-window-cart-footer::before {
        position: absolute;
        bottom: 60px;
        left: calc(50% - 10px);
        right: calc(50% - 10px);
        background: var(--boldr-primary-color);
        border-radius: 5px;
        content: '';
        height: 5px;
    }

    .order-window-cart-footer {
        display: flex;
        align-items: center;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 73px;
        background-color: #fff;
        padding: 15px 30px;
        border-top: 1px solid #ccc;
    }

    .order-window-cart-visible::before {
        display: none;
    }

    .order-window-cart-subtotal {
        flex-grow: 1;
        justify-content: flex-start;
    }

    .order-window-cart-subtotal-text {
        margin-right: 15px;
    }

    .order-window-cart .order-window-cart-next-states {
        margin-top: 0;
    }

    .order-window-cart .order-window-cart-next-states .order-window-cart-next-state{
        margin-bottom: 0;
    }

    #overlay-container {
        z-index: 10001;
    }

    .footer-content {
        text-align: center;
        font-size: 14px;
        padding-bottom: 150px;
    }

    .footer-content h3 {
        font-size: 20px;
        margin: 0 0 20px 0;
    }

    .footer-content-left {
        line-height: 20px;
    }

    .footer-content .boldr-contact-map-line {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        line-height: 25px;
    }

    .footer-contact {
        margin-top: 35px;
    }

    .footer-developer,
    .footer-menu,
    .footer-content .boldr-opening-hour-time {
        display: block;
    }

    .footer-menu .menu-item + .menu-item {
        margin-top: 20px;
        margin-left: 0;
    }

    .boldr-shop-account-order-expand::before {
        content: "\e913";
        font-family: 'icomoon';
    }
}

@media only screen and (max-width: 500px) {
    .hb-header + .boldr-section:not(.boldr-contact-map),
    .hb-header + .boldr-contact-map .boldr-contact-map-details {
        max-width: var(--boldr-columns-5);
    }
    .footer-contact-lines {
        flex-wrap: nowrap;
        flex-direction: column;
    }
    .footer-top,
    .footer-bottom {
        flex-direction: column;
    }
    .footer-bottom {
        margin-top: 40px;
    }
    .footer-contact {
        margin-left: 0;
    }
    .footer-content-left {
        display: block;
        margin-top: var(--boldr-spacers-1);
        order: 2;
    }
    .boldr-opening-hour-days {
        width: var(--boldr-columns-3);
    }
}

@media only screen and (min-width: 376px) {
    .product-list-category-products {
        margin-right: calc(var(--boldr-spacing-small) * -1);
    }
}

@media only screen and (max-width: 375px) {
    .product-list-product {
        flex: 0 0 100%;
    }
}

form.boldr-shop-change-state-order-add-discount-code {
    margin-top: 40px;
}
div.boldr-shop-change-state-order-add-discount-code .boldr-button {
    margin-top: 10px;
}


@media screen and (max-width: 700px) {
    .add-discount-desktop { display: none; }
}

@media screen and (min-width: 701px) {
    .add-discount-mobile { display: none; }
}

.order-window-cart-discounts {
    margin: 0;
}

.order-window-cart-discount {
    display: flex;
}

.order-window-cart-discount:last-child {
    margin-bottom: 30px;
}

.order-window-cart-discount-name {
    flex: 1 1 auto;
}

.boldr-content {
    position: relative;
}
/* Slider */


.slides-nav {
    display: flex;
    justify-content: center;
}

.slides-nav .next,
.slides-nav .prev {
    border-radius: 100%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    cursor: pointer;
    margin: 20px 10px;
    transition: opacity 300ms ease-in-out;

    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slides-nav .prev:before {
    content: "\e905";
}
.slides-nav .next:before {
    content: "\e906";
}

.slides-nav .next.disabled,
.slides-nav .prev.disabled {
    opacity: 0.5;
}

.boldr-gallery-item {
    height: calc(var(--vh) - 300px);
}

.bestellijst-button {
    font-size: 14px;
    line-height: 20px;
    padding: 10px 25px;
    background: #ECF2FF;
    text-decoration: none;
    display: inline-block;
    margin-top: 30px;
    color: var(--boldr-primary-color) !important;
    transition: all 250ms ease-in-out;
}

.order-window-cart-product-allergens {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 10px 0;
}
.order-window-cart-product-allergens-label {
    margin-right: 10px;
    font-size: 14px;
}
.order-window-cart-product-allergen {
    width: 40px;
    height: auto;
}

.hb-accept-text a {
    text-decoration: underline;
}