﻿/*list*/
/*--admins--*/
/*--navbar--*/
/*--SoMe--*/
/*--status--*/
/*--button-type1--*/
/*--button-type2--*/
/*--button-type3--*/
/*--progress--*/
/*--timeline--*/
/*--image-modal--*/
/*--modal--*/
/*--cart small--*/
/*--cart --*/
/*--payment-button-vipps--*/
/*--payment-button-dark--*/
/*--loading--*/
/*--shop-categories--*/
/*--shop-item-card--*/
/*--shop-item-description--*/
:root {
    --default-white: white;
    --white: white;
    --default-white: white;
    --default-darkwhite: #f3f3f3;
    --default-black: #383838;
    --default-grey: grey;
    --grey: grey;
    --lightgrey: lightgrey;
    --lightgrey1: #efefef;
    --lightgrey2: #e6e6e6;
    --lightgrey3: #696969;
    --lightergrey: #f7f7f7;
    --darkgrey: #585858;
    --whitesmoke: whitesmoke;
    --black: #383838;
    --lightblack: #0d2240;
    --white: white;
    --darkwhite: #f3f3f3;
    --blue: #014B87;
    --main-blue-color: #014B87;
    --dark-blue-color-2: #014B87;
    --red: red;
    --transparent: transparent;
    --lightergrey: #f7f7f7;
    --light-darkgrey: #d8d8d8;
    --grey1: #bbbbbb;
    --grey-green: #effff1;
    --grey2: #ebebeb;
    --sw-info-color: #3490dc;
    --theme-color: whitesmoke;
    --theme-contrast-color: #383838;
}

.container--fluid {
    width: 100%;
}

.container--xs {
    width: 100%;
    max-width: 576px;
    margin: auto;
    /*overflow-x: auto;*/
    overflow: visible;
    padding: 0 15px 0 15px;
}

@media only screen and (max-width: 768px) {
    .container--xs {
        padding: 0 15px 0 15px;
    }
}

.container--sm {
    width: 100%;
    max-width: 576px;
    margin: auto;
    /*overflow-x: auto;*/
    overflow: visible;
    padding: 0 15px 0 15px;
}

@media only screen and (max-width: 768px) {
    .container--sm {
        padding: 0 15px 0 15px;
    }
}

.container--md {
    width: 100%;
    max-width: 768px;
    margin: auto;
    /*overflow-x: auto;*/
    overflow: visible;
    padding: 0 15px 0 15px;
}

@media only screen and (max-width: 768px) {
    .container--md {
        padding: 0 15px 0 15px;
    }
}

.container--lg {
    width: 100%;
    max-width: 1024px;
    margin: auto;
    /*overflow-x: auto;*/
    overflow: visible;
    padding: 0 15px 0 15px;
}

@media only screen and (max-width: 768px) {
    .container--lg {
        padding: 0 15px 0 15px;
    }
}

.container--xl {
    width: 100%;
    max-width: 1280px;
    margin: auto;
    /*overflow-x: auto;*/
    overflow: visible;
    padding: 0 15px 0 15px;
}

@media only screen and (max-width: 768px) {
    .container--xl {
        padding: 0 15px 0 15px;
    }
}

.container--padding {
    padding: 10px;
}

.container--prl-0 {
    padding-right: 0;
    padding-left: 0;
}

.container--mtb0 {
    margin-top: 0;
    margin-bottom: 0;
}

.margin--15 {
    margin: 15px;
}

.margin__top--15 {
    margin-top: 15px;
}

.margin__top--30 {
    margin-top: 30px;
}

.margin__bottom--15 {
    margin-top: 15px;
}

.margin__bottom--30 {
    margin-top: 30px;
}

.margin__topbottom--15 {
    margin-top: 15px;
    margin-bottom: 15px;
}

.margin__topbottom--30 {
    margin-top: 30px;
    margin-bottom: 30px;
}

.button {
    padding: 10px;
    border: 1px solid lightgrey;
    border-color: var(--button-border-color, lightgrey);
    border-radius: 3px;
    color: #383838;
    color: var(--button-font-color, #383838);
    background-color: whitesmoke;
    background-color: var(--button-background-color, whitesmoke);
    transition: 0.3s;
}

    .button:hover {
        transition: 0.3s;
        cursor: pointer;
        background-color: lightgrey;
        background-color: var(--button-hover-background-color, lightgrey);
        color: #383838;
        color: var(--button-hover-font-color, #383838);
        border: 1px solid whitesmoke;
        border-color: var(--button-hover-border-color, whitesmoke);
    }

.button--green {
    color: #fff;
    background-color: #28a745;
    background-color: var(--button-green-background-color, #28a745);
    border-color: #28a745;
    border-color: var(--button-green-border-color, #28a745);
}

    .button--green:hover {
        color: #fff;
        background-color: #218838;
        background-color: var(--button-green-hover-background-color, #218838);
        border-color: #1e7e34;
        border-color: var(--button-green-hover-border-color, #1e7e34);
    }

    .button--green:disabled {
        cursor: context-menu;
        background-color: #81c791;
        background-color: var(--button-green-disabled-background-color, #81c791);
        border-color: #93c59e;
        border-color: var(--button-green-disabled-border-color, #93c59e);
    }

.button--blue {
    color: white;
    color: var(--button-blue-color, white);
    background-color: #1E5078;
    background-color: var(--button-blue-background-color, #1E5078);
}

.button--grey {
    color: white;
    color: var(--button-grey-color, white);
    background-color: #6c757d;
    background-color: var(--button-grey-background-color, #6c757d);
}

.button--lightgrey {
    color: white;
    color: var(--button-lightgrey-color, white);
    background-color: #1E5078;
    background-color: var(--button-lightgrey-background-color, #1E5078);
}

.button--small {
    padding: 5px 10px;
    font-size: 1.4rem;
}

.button--lightgreen {
    color: #155724;
    color: var(--button-lightgreen-color, #155724);
    background-color: #d4edda;
    background-color: var(--button-lightgreen-background-color, #d4edda);
    border-color: #c3e6cb;
    border-color: var(--button-lightgreen-border-color, #c3e6cb);
}

.button--lightergrey {
    color: white;
    color: var(--button-lightgrey-color, white);
    background-color: #1E5078;
    background-color: var(--button-lightgrey-background-color, #1E5078);
    border-color: #d6d8db;
    border-color: var(--button-lightgrey-border-color, #d6d8db);
}

.button--lightred {
    color: #721c24;
    color: var(--button-lightred-color, #721c24);
    background-color: #f8d7da;
    background-color: var(--button-lightred-background-color, #f8d7da);
    border-color: #f5c6cb;
    border-color: var(--button-lightred-border-color, #f5c6cb);
}

.button--lightyellow {
    color: #856404;
    color: var(--button-lightyellow-color, #856404);
    background-color: #fff3cd;
    background-color: var(--button-lightyellow-background-color, #fff3cd);
    border-color: #ffeeba;
    border-color: var(--button-lightyellow-border-color, #ffeeba);
}

.button--weak-grey {
    background-color: transparent;
    background-color: var(--button-weakgrey-background-color, transparent);
    border: 1px solid #c7c7c7;
    border-color: var(--button-weakgrey-border-color, #c7c7c7);
    color: grey;
    color: var(--button-weakgrey-color, grey);
}

.button--dark {
    color: white;
    color: var(--button-dark-color, white);
    background-color: #343a40;
    background-color: var(--button-dark-background-color, #343a40);
    border-color: #343a40;
    border-color: var(--button-dark-border-color, #343a40);
}

    .button--dark:hover {
        color: #343a40;
        color: var(--button-dark-hover-color, #343a40);
        background-color: white;
        background-color: var(--button-dark-hover-background-color, white);
        border-color: #1d2124;
        border-color: var(--button-dark-hover-border-color, #1d2124);
    }

    .button--dark:disabled {
        cursor: not-allowed;
        color: #e6e6e6;
        color: var(--button-dark-disabled-color, #e6e6e6);
        background-color: #747575;
        background-color: var(--button-dark-disabled-background-color, #747575);
        border-color: #7d7d7d;
        border-color: var(--button-dark-disabled-border-color, #7d7d7d);
    }

        .button--dark:disabled:hover {
            cursor: default;
            color: #e6e6e6;
            color: var(--button-dark-disabled-hover-color, #e6e6e6);
            background-color: #747575;
            background-color: var(--button-dark-disabled-hover-background-color, #747575);
            border-color: #7d7d7d;
            border-color: var(--button-dark-disabled-hover-border-color, #7d7d7d);
        }

.button--large {
    width: 100%;
    margin-right: 15px;
    font-weight: 400;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 10px;
    font-size: 1.6rem;
    line-height: 1.5;
    border-radius: 0.25rem;
}

    .button--large:last-child {
        margin-right: 0;
    }

.navbar {
    --sw-nav-bc--default: $navbar-background-color;
    --sw-nav-list-divider-color--default: #00000016;
    --sw-nav--hover-bc--default: #00000008;
    --sw-nav--active-bc--default: #00000010;
    --sw-nav--active-border--default: var(--navbar-background-color, var(--theme-color, $theme-color));
    --sw-nav-lighter-bc--default: #ffffff;
    --sw-nav-lighter--hover-bc--default: #00000010;
    --sw-nav-lighter--active-bc--default: #00000015;
    color: #696969;
    color: var(--navbar-font-color, #696969);
    position: relative;
    width: 100%;
    background-color: #f3f3f3;
    background-color: var(--navbar-background-color, #f3f3f3);
    position: relative;
    display: flex;
    justify-content: center;
    min-height: 50px;
    min-height: var(--navbar-height, 50px);
    border-bottom: var(--navbar-border-bottom-width, 2px) solid var(--navbar-border-bottom-color, none);
    z-index: 10;
    font-weight: var(--navbar-nav-font-weight, 400);
}

@supports (color: color-mix(in lch, plum, pink)) {
    .navbar {
        --sw-nav--hover-bc--default: color-mix(in srgb, var(--navbar-font-color, #696969), transparent 87%);
        --sw-nav--active-bc--default: color-mix(in srgb, var(--navbar-font-color, #696969), transparent 85%);
        --sw-nav-lighter-bc--default: color-mix(in srgb, var(--navbar-background-color, #f3f3f3), #fff 91%);
        --sw-nav-lighter--hover-bc--default: color-mix(in srgb, var(--navbar-collapsed-font-color, #000), transparent 88%);
        --sw-nav-lighter--active-bc--default: color-mix(in srgb, var(--navbar-collapsed-font-color, #000), transparent 90%);
    }
}

@media only screen and (max-width: 768px) {
    .navbar {
        background-color: var(--navbar-background-color--mobile, var(--navbar-background-color, #f3f3f3));
    }
}

.navbar ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.navbar--sticky {
    position: sticky;
    top: 0;
    z-index: 10;
    box-shadow: 0px 0px 30px #00000014;
}

.navbar .dropdown__toggle {
    display: flex;
    align-items: center;
}

.navbar .dropdown__chevron {
    margin-left: 10px;
    display: inline-block;
    transition: 0.3s;
}

@media only screen and (max-width: 768px) {
    .navbar .dropdown__chevron {
        margin-left: auto;
    }
}

.navbar .dropdown__chevron--active {
    transform: rotate(180deg);
    transition: 0.3s;
}

.navbar .dropdown__menu {
    transition: all 0.5s ease-out;
    color: #404040;
    color: var(--navbar-nav-dropdown-font-color, #404040);
    font-weight: var(--navbar-dropdown-menu-font-weight, 400);
    background-color: white;
    background-color: var(--navbar-dropdown-menu-background-color, var(--sw-nav-lighter-bc--default));
    position: absolute;
    top: 100%;
    border-radius: 0 0 5px 5px;
    min-width: 150px;
    height: 0;
    max-height: 0;
    overflow: hidden;
}

    .navbar .dropdown__menu a:hover {
        background-color: var(--navbar-dropdown-hover-background-color, var(--sw-nav-lighter--hover-bc--default));
        color: var(--navbar-nav--hover-font-color);
    }

    .navbar .dropdown__menu .navbar__nav--active {
        background-color: var(--navbar-dropdown-active-background-color, var(--sw-nav-lighter--active-bc--default));
        color: var(--navbar-nav-dropdown-active-font-color);
        border-radius: 5px;
    }

    .navbar .dropdown__menu li {
        border-bottom: 1px solid var(--navbar-dropdown-li-border-bottom-color, var(--sw-nav-list-divider-color--default));
    }

        .navbar .dropdown__menu li:last-child {
            padding-bottom: 0;
            border-bottom: 0;
        }

.navbar .dropdown__menu--show {
    height: auto;
    max-height: 1000px;
    transition: max-height 0.4s ease-in;
    border: 1px solid var(--dropdown-menu-border-color, #00000010);
}

.navbar__collapse-dynamic {
    position: absolute;
    top: 100%;
    right: 0;
    bottom: 0;
    left: 100%;
    transition: 0.4s;
    overflow: auto;
}

    .navbar__collapse-dynamic .dropdown__chevron {
        margin-left: auto;
    }

    .navbar__collapse-dynamic .dropdown__menu a {
        padding-left: 30px;
    }

.navbar__collapse {
    display: flex;
}

@media only screen and (max-width: 768px) {
    .navbar__collapse {
        position: absolute;
        top: 100%;
        right: 0;
        bottom: 0;
        left: 100%;
        transition: 0.4s;
        overflow: auto;
    }

        .navbar__collapse .dropdown__chevron {
            margin-left: auto;
        }

        .navbar__collapse .dropdown__menu a {
            padding-left: 30px;
        }
}

.navbar__collapse--show {
    color: #404040;
    color: var(--navbar-collapsed-font-color, #404040);
    background-color: white;
    background-color: var(--navbar-collapse-background-color, var(--sw-nav-lighter-bc--default));
    box-shadow: -5px 2px 5px 0px var(--navbar-collapse-show-shadow-color, rgba(0, 0, 0, 0.17));
    top: 100%;
    right: 0;
    bottom: 0;
    position: absolute;
    display: block;
    left: calc(100vw - 375px);
    height: calc(100vh - 70px);
    height: calc(100svh - 70px);
    transition: 0.2s;
    font-weight: var(--navbar-mobile-menu-font-weight, 400);
}

@media only screen and (max-width: 768px) {
    .navbar__collapse--show {
        left: 0;
    }
}

.navbar__collapse--show .navbar__nav {
    display: block;
    width: 100%;
}

    .navbar__collapse--show .navbar__nav li {
        border-bottom: 1px solid var(--navbar-collapsed-li-border-bottom-color, var(--sw-nav-list-divider-color--default));
    }

        .navbar__collapse--show .navbar__nav li:last-child {
            padding-bottom: 0;
            border-bottom: 0;
        }

        .navbar__collapse--show .navbar__nav li:has(a.active) a.dropdown__toggle {
            background-color: var(--navbar-collapsed-active-background-color, var(--sw-nav-lighter--active-bc--default));
            color: var(--navbar-collapsed-active-font-color);
        }

    .navbar__collapse--show .navbar__nav a:hover {
        background-color: var(--navbar-collapsed-hover-background-color, var(--sw-nav-lighter--hover-bc--default));
        color: var(--navbar-collapsed-hover-font-color);
    }

.navbar__collapse--show .navbar__nav--active {
    background-color: var(--navbar-collapsed-active-background-color, var(--sw-nav-lighter--active-bc--default));
    color: var(--navbar-collapsed-active-font-color);
    border-radius: 5px;
}

.navbar__collapse--show .dropdown__menu {
    top: 0;
    position: relative;
}

.navbar__collapse--show .dropdown__menu--show {
    border: 0;
    border-top: 1px solid var(--navbar-collapsed-li-border-bottom-color, var(--sw-nav-list-divider-color--default));
}

.navbar__text-container {
    margin-right: 15px;
}

.navbar__branding {
    display: flex;
    align-items: center;
}

.navbar__text {
    display: block;
    font-size: 1.2rem;
    letter-spacing: 1px;
    font-weight: var(--navbar-text-font-weight, 500);
    color: var(--navbar-text-font-color);
    padding-left: 15px;
    padding-right: 15px;
    word-break: normal;
}

.navbar__body {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 16px;
    padding: var(--navbar-padding, 0 16px);
}

@media only screen and (max-width: 768px) {
    .navbar__body {
        justify-content: space-between;
        overflow: initial;
        flex: 1 0 100%;
    }
}

.navbar__body-dynamic {
    justify-content: space-between;
    flex: 1 0 100%;
}

.navbar__body:has(.navbar__collapse--show) {
    justify-content: space-between;
}

.navbar__link {
    display: flex;
    align-items: center;
}

.navbar__firmname {
    font-size: 1.6rem;
    font-weight: var(--navbar-firmname-font-weight, 500);
    letter-spacing: 1px;
    color: var(--navbar-firmname-font-color);
    display: block;
    padding-left: 15px;
    padding-right: 15px;
    word-break: normal;
}

.navbar__logo {
    width: auto;
    max-height: var(--navbar-logo-max-height, 40px);
    margin: var(--navbar-logo-margin, 5px 5px 5px 0);
}

.navbar__nav {
    display: flex;
    list-style: none;
    margin: 0;
}

    .navbar__nav::-webkit-scrollbar {
        background-color: #f5f5f5;
        background-color: var(--navbar-nav-scrollbar-background-color, #f5f5f5);
        height: 5px;
        border-radius: 5px;
    }

    .navbar__nav::-webkit-scrollbar-thumb {
        background-color: #d3d3d3;
        background-color: var(--navbar-nav-scrollbar-thumb-background-color, #d3d3d3);
        border-radius: 10px;
    }

.navbar__nav--active {
    border-bottom: 2px solid whitesmoke;
    border-bottom-color: var(--navbar-nav-active-border-bottom-color, var(--sw-nav--active-border--default));
    background-color: var(--navbar-nav-active-background-color, var(--sw-nav--active-bc--default));
    color: var(--navbar-nav-active-font-color);
    border-radius: 5px;
}

.navbar__nav li {
    transition: 0.2s;
    white-space: nowrap;
}

.component-content-blocker {
    background: rgba(0,0,0,0.5);
    color: white;
    backdrop-filter: blur(3px);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
}

.component-content-blocker-text {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 22px;
    font-family: sans-serif;
}

.component-content-blocker-button {
    background: none;
    border: 1px solid white;
    border-radius: 5px;
    color: white;
    font-family: sans-serif;
    padding: 10px 30px;
    cursor: pointer;
    transition: all 0.3s ease;
}

    .component-content-blocker-button:hover {
        background: #1e5988;
        border-color: #1e5988;
        box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
    }

.content-blocker-overlay {
    background: rgba(140,140,140,0.5);
    backdrop-filter: blur(2px);
    flex-direction: column;
    justify-content: center;
}

.content-blocker-modal-wrapper {
    width: 100%;
    overflow: auto;
}

.content-blocker-modal {
    background: white;
    position: relative;
    border-radius: 5px;
    box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.5);
    width: 500px;
    height: auto;
    margin: 50px auto 15% auto;
    padding: 30px;
    display: grid;
    gap: 30px;
    font-family: sans-serif;
    font-size: 16px;
}

.content-blocker-modal-close-button {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 10px;
    width: fit-content;
    justify-self: end;
    cursor: pointer;
    transition: all 0.3s ease;
    align-items: center;
    font-size: 18px;
    color: #1e5988;
}

    .content-blocker-modal-close-button:hover {
        color: #3490dc;
    }

.content-blocker-modal-heading {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    height: 70px;
}

.content-blocker-modal-heading-text {
    height: 100%;
    display: flex;
    align-items: flex-end;
    font-size: 24px;
}

.content-blocker-modal-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 80%;
    margin: auto;
    text-align: center;
}

.content-blocker-modal-content-buttons {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.content-blocker-modal-member-button {
    border: 2px solid #1e5988;
    padding: 7px 30px;
    color: white;
    border-radius: 5px;
    background-color: #1e5988;
    cursor: pointer;
    transition: all 0.3s ease;
}

    .content-blocker-modal-member-button:hover {
        background-color: #3490dc;
        border: 2px solid #3490dc;
    }

.content-blocker-modal-login-button {
    padding: 7px 30px;
    border-radius: 5px;
    background-color: white;
    color: #1e5988;
    border: 2px solid #d5d5d5;
    cursor: pointer;
    transition: all 0.3s ease;
}

    .content-blocker-modal-login-button:hover {
        background-color: #d5d5d5;
        border-color: #d5d5d5;
    }

.content-blocker-modal-link {
    color: #1e5988;
    display: flex;
    gap: 10px;
    align-items: center;
    transition: all 0.3s ease;
}

    .content-blocker-modal-link:hover {
        color: #3490dc;
    }

@media only screen and (max-width: 767px) {
    .content-blocker-modal {
        width: 400px;
    }
}

@media only screen and (max-width: 500px) {
    .content-blocker-modal {
        width: 100%;
    }
}

.noscroll {
    overflow: hidden !important;
}

.auth-actions {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
}

.auth-actions-collapsed {
    margin-bottom: 23px;
}

.auth-actions-loggedin {
    right: 0 !important;
    justify-content: unset !important;
}

.auth-actions a {
    justify-content: center;
    align-items: center;
}

.user-profile-image {
    border-radius: 50%;
    max-height: 100%;
    aspect-ratio: 1;
}

.user-profile-button {
    height: 100%;
    padding: 13% 8px !important;
    cursor: pointer;
}

    .user-profile-button.collapse {
        height: 100%;
        padding: 15px !important;
        cursor: pointer;
        justify-content: center;
    }

        .user-profile-button.collapse .user-profile-image {
            max-height: 50px;
        }

.user-profile-button-loggedin {
    height: 100%;
    padding: 10% 8px !important
}

    .user-profile-button-loggedin.collapse {
        height: 100%;
        align-items: center;
        padding: 15px !important;
        gap: 15px;
        text-transform: uppercase;
    }

        .user-profile-button-loggedin.collapse span {
            text-overflow: ellipsis;
            overflow: hidden;
            display: block !important;
        }

        .user-profile-button-loggedin.collapse .user-profile-image {
            max-height: 50px;
        }

.navbar__nav li user {
    transition: 0.2s;
    white-space: nowrap;
}

@media only screen and (max-width: 768px) {
    .auth-actions {
        position: relative;
    }

    .user-profile-image {
        height: 50px;
    }

    .user-profile-button {
        padding: 15px !important;
    }

    .user-profile-button-loggedin {
        padding: 15px !important;
    }
}

.navbar__nav li a {
    transition: 0.2s;
    transition: var(--navbar-nav-li-transition, 0.2s);
    letter-spacing: 1.2px;
    text-transform: uppercase;
    padding: 15px;
    padding-bottom: 14px;
    display: block;
    display: flex;
    border-radius: 5px;
}

    .navbar__nav li a:hover {
        background-color: var(--navbar-hover-background-color, var(--sw-nav--hover-bc--default));
        color: var(--navbar-nav-li-hover-font-color);
    }

.navbar__nav li:has(a.active) a.dropdown__toggle {
    background-color: var(--navbar-nav-active-background-color, var(--sw-nav--active-bc--default));
    color: var(--navbar-nav-active-font-color);
}

.navbar__bars {
    cursor: pointer;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 50px;
}

@media only screen and (max-width: 768px) {
    .navbar__bars {
        display: flex;
    }
}

.navbar__body-dynamic .navbar__bars {
    display: flex;
}

.navbar__collapse--show + .navbar__bars {
    display: flex;
}

.navbar__bar {
    display: block;
    margin-bottom: 10px;
    width: 35px;
    height: 5px;
    background-color: currentcolor;
    background-color: var(--navbar-bars-color, currentcolor);
    transition: 0.2s;
    border-radius: 5px;
}

    .navbar__bar:last-child {
        margin-bottom: 0;
    }

.navbar__bar--close-1 {
    transition: 0.2s;
    transform: rotate(-45deg);
    margin: 0;
}

.navbar__bar--close-2 {
    transition: 0.2s;
    transform: rotate(45deg);
    margin: -4px;
}

.body-container {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 23px;
    left: 0;
    overflow: auto;
}

.grid {
    display: flex;
    display: grid;
    grid-gap: 10px;
}

.grid__sm--1 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__sm--1 > * {
        width: 100%;
    }

@supports (display: grid) {
    .grid__sm--1 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr;
    }

        .grid__sm--1 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 576px) {
    .grid__sm--1 {
        grid-template-columns: 1fr;
    }
}

.grid__sm--2 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__sm--2 > * {
        width: 40%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .grid__sm--2 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__sm--2 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

        .grid__sm--2 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 576px) {
    .grid__sm--2 {
        grid-template-columns: 1fr;
    }
}

.grid__sm--3 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__sm--3 > * {
        width: 29%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .grid__sm--3 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__sm--3 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr;
    }

        .grid__sm--3 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .grid__sm--3 {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 576px) {
    .grid__sm--3 {
        grid-template-columns: 1fr;
    }
}

.grid__sm--4 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__sm--4 > * {
        width: 15%;
    }

@media (max-width: 768px) {
    .grid__sm--4 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__sm--4 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

        .grid__sm--4 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1024px) {
    .grid__sm--4 {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

@media only screen and (max-width: 768px) {
    .grid__sm--4 {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 576px) {
    .grid__sm--4 {
        grid-template-columns: 1fr;
    }
}

.grid__sm--5 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__sm--5 > * {
        width: 10%;
    }

@media (max-width: 768px) {
    .grid__sm--5 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__sm--5 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }

        .grid__sm--5 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1024px) {
    .grid__sm--5 {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
}

@media only screen and (max-width: 768px) {
    .grid__sm--5 {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

@media only screen and (max-width: 576px) {
    .grid__sm--5 {
        grid-template-columns: 1fr;
    }
}

.grid__sm--c1span2 :nth-child(1) {
    grid-column-end: span 2;
    grid-row-end: span 1;
}

@media only screen and (max-width: 576px) {
    .grid__sm--c1span2 :nth-child(1) {
        grid-column-end: span 1;
        grid-row-end: span 1;
    }
}

@media only screen and (max-width: 768px) {
    .grid__sm--c1span2 {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 576px) {
    .grid__sm--c1span2 {
        grid-template-columns: 1fr;
    }
}

@media only screen and (max-width: 576px) {
    .grid__sm--min-2fr {
        grid-template-columns: 1fr 1fr;
        grid-gap: 15px;
    }
}

.grid__md--1 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__md--1 > * {
        width: 100%;
    }

@supports (display: grid) {
    .grid__md--1 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr;
    }

        .grid__md--1 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .grid__md--1 {
        grid-template-columns: 1fr;
    }
}

.grid__md--2 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__md--2 > * {
        width: 40%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .grid__md--2 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__md--2 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

        .grid__md--2 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .grid__md--2 {
        grid-template-columns: 1fr;
    }
}

.grid__md--3 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__md--3 > * {
        width: 29%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .grid__md--3 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__md--3 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr;
    }

        .grid__md--3 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .grid__md--3 {
        grid-template-columns: 1fr;
    }
}

.grid__md--4 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__md--4 > * {
        width: 15%;
    }

@media (max-width: 768px) {
    .grid__md--4 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__md--4 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

        .grid__md--4 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .grid__md--4 {
        grid-template-columns: 1fr;
    }
}

.grid__md--c1span2 :nth-child(1) {
    grid-column-end: span 2;
    grid-row-end: span 1;
}

@media only screen and (max-width: 768px) {
    .grid__md--c1span2 :nth-child(1) {
        grid-column-end: span 1;
        grid-row-end: span 1;
    }
}

@media only screen and (max-width: 1024px) {
    .grid__md--c1span2 {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 768px) {
    .grid__md--c1span2 {
        grid-template-columns: 1fr;
    }
}

.grid__lg--1 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__lg--1 > * {
        width: 100%;
    }

@supports (display: grid) {
    .grid__lg--1 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr;
    }

        .grid__lg--1 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1024px) {
    .grid__lg--1 {
        grid-template-columns: 1fr;
    }
}

.grid__lg--2 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__lg--2 > * {
        width: 40%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .grid__lg--2 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__lg--2 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

        .grid__lg--2 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1024px) {
    .grid__lg--2 {
        grid-template-columns: 1fr;
    }
}

.grid__lg--3 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__lg--3 > * {
        width: 29%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .grid__lg--3 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__lg--3 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr;
    }

        .grid__lg--3 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1024px) {
    .grid__lg--3 {
        grid-template-columns: 1fr;
    }
}

.grid__lg--4 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__lg--4 > * {
        width: 15%;
    }

@media (max-width: 768px) {
    .grid__lg--4 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__lg--4 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

        .grid__lg--4 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1024px) {
    .grid__lg--4 {
        grid-template-columns: 1fr;
    }
}

.grid__lg--c1span2 :nth-child(1) {
    grid-column-end: span 2;
    grid-row-end: span 1;
}

@media only screen and (max-width: 768px) {
    .grid__lg--c1span2 :nth-child(1) {
        grid-column-end: span 1;
        grid-row-end: span 1;
    }
}

@media only screen and (max-width: 1024px) {
    .grid__lg--c1span2 {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 768px) {
    .grid__lg--c1span2 {
        grid-template-columns: 1fr;
    }
}

.grid__xl--1 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__xl--1 > * {
        width: 100%;
    }

@supports (display: grid) {
    .grid__xl--1 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr;
    }

        .grid__xl--1 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1280px) {
    .grid__xl--1 {
        grid-template-columns: 1fr;
    }
}

.grid__xl--2 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__xl--2 > * {
        width: 40%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .grid__xl--2 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__xl--2 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

        .grid__xl--2 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1280px) {
    .grid__xl--2 {
        grid-template-columns: 1fr;
    }
}

.grid__xl--3 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__xl--3 > * {
        width: 29%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .grid__xl--3 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__xl--3 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr;
    }

        .grid__xl--3 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1280px) {
    .grid__xl--3 {
        grid-template-columns: 1fr;
    }
}

.grid__xl--4 {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .grid__xl--4 > * {
        width: 15%;
    }

@media (max-width: 768px) {
    .grid__xl--4 > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .grid__xl--4 {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

        .grid__xl--4 > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 1280px) {
    .grid__xl--4 {
        grid-template-columns: 1fr;
    }
}

.grid__table--3-col {
    display: grid;
    grid-template-columns: auto 1fr auto;
    margin-top: 15px;
    margin-bottom: 15px;
}

@media only screen and (max-width: 1280px) {
    .grid__table--3-col {
        grid-template-columns: 1fr;
    }
}

.grid--grid-gap-30 {
    grid-gap: 30px !important;
}

@media only screen and (max-width: 576px) {
    .grid--grid-gap-15-sm {
        grid-gap: 15px;
    }
}

.grid--grid-gap-0 {
    grid-gap: 0;
}

@media only screen and (max-width: 576px) {
    .grid--reverse-sm {
        display: flex;
        flex-direction: column-reverse;
    }
}

.cta-events {
    position: relative;
    background-color: whitesmoke;
    background-color: var(--cta-events-background-color, whitesmoke);
    color: #585858;
    color: var(--cta-events-color, #585858);
    margin: 15px 0 15px 0;
}

@supports (display: grid) {
    .cta-events {
        padding: 40px;
    }
}

.cta-events__grid {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .cta-events__grid > *:first-child {
        width: 33%;
    }

    .cta-events__grid > *:last-child {
        width: 66%;
    }

@supports (display: grid) {
    .cta-events__grid {
        display: grid;
        grid-template-columns: 3fr 9fr;
        grid-gap: 40px;
    }

        .cta-events__grid > * {
            width: 100%;
            margin: 0;
        }

            .cta-events__grid > *:first-child {
                width: 100%;
            }

            .cta-events__grid > *:last-child {
                width: 100%;
            }
}

@media only screen and (max-width: 768px) {
    .cta-events__grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 576px) {
    .cta-events__grid {
        grid-template-columns: 1fr;
    }
}

.cta-events__grid--grid-gap-30 {
    grid-gap: 30px;
}

.cta-events__event {
    display: flex;
    flex-direction: row;
}

.cta-events__event-description-heading {
    font-size: 1.8rem;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 0;
}

.cta-events__event-description {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.cta-events__date {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding-right: 10px;
    margin-right: 10px;
    border-right: 2px solid whitesmoke;
    border-right-color: var(--cta-events-date-border-color, whitesmoke);
    border-right-width: var(--cta-events-date-border-width, 2px);
}

.cta-events__number {
    font-size: 30px;
    font-weight: bold;
    word-break: normal;
}

.cta-events__location {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: column;
}

.cta-events__location-heading {
    font-weight: bold;
    margin-top: 0;
    margin-bottom: 0;
}

.cta-events__button {
    padding: 10px;
    border: 2px solid lightgrey;
    border-color: var(--cta-events-button-border-color, lightgrey);
    border-radius: 5px;
    color: #545454;
    color: var(--cta-events-button-color, #545454);
    min-width: 100px;
    display: inline-block;
    transition: 0.2s;
}

    .cta-events__button:hover {
        transition: 0.2s;
        background-color: lightgrey;
        background-color: var(--cta-events-button-hover-background-color, lightgrey);
    }

.article-card {
    display: flex;
    flex-direction: column;
    border: 1px solid whitesmoke;
    border-color: var(--article-card-border-color, whitesmoke);
    border-radius: 5px;
    font-size: 1.45rem;
}

@media only screen and (max-width: 576px) {
    .article-card {
        border-right: 0;
        border-left: 0;
        border-radius: 0;
        font-size: 1.6rem;
    }
}

.article-card__content {
    display: flex;
    flex-direction: column;
    height: 100%;
    background-color: whitesmoke;
    background-color: var(--article-card-content-background-color, whitesmoke);
    color: #585858;
    color: var(--article-card-content-color, #585858);
}

.article-card__image {
    max-width: 100%;
    height: auto;
    border-radius: 4px 4px 0 0;
    max-height: 450px;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.article-card__text {
    font-size: 1.45rem;
}

@media only screen and (max-width: 576px) {
    .article-card__text {
        font-size: 1.6rem;
    }
}

.article-card__heading {
    font-size: 1.65rem;
    font-weight: 600 !important;
    padding-bottom: 0;
    font-weight: bold;
    color: #383838;
    color: var(--article-card-heading-font-color, #383838);
    margin-top: 0;
    margin-bottom: 5px;
}

.article-card__read-more {
    margin-top: auto;
    padding: 10px 10px 0 10px;
    color: #585858 !important;
    color: var(--article-card-read-more-font-color, #585858) !important;
    display: block;
    text-align: right;
    padding: 10px;
}

.article-card__body-text {
    padding: 10px;
}

.article-card__small-text {
    font-size: 1.2rem;
    color: grey;
    color: var(--article-card-small-text-font-color, grey);
    margin-bottom: 10px;
}

.article-card a {
    color: inherit;
}

    .article-card a:hover {
        text-decoration: none !important;
    }

.article {
    margin-top: 15px;
    margin-bottom: 15px;
}

.article__share-icons {
    display: flex;
    flex-direction: row;
    font-size: 20px;
    margin: 10px 0 5px 0;
}

    .article__share-icons a {
        text-decoration: none;
    }

        .article__share-icons a:hover {
            text-decoration: none !important;
        }

@media only screen and (max-width: 576px) {
    .article__share-icons {
        font-size: 25px;
    }
}

.article__share-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    height: 40px;
    width: 40px;
    background-color: whitesmoke !important;
    background-color: var(--article-share-background-color, whitesmoke) !important;
    color: #6c6c6c !important;
    color: var(--article-share-color, #6c6c6c) !important;
    font-size: 25px;
}

    .article__share-icon:hover {
        cursor: pointer;
    }

.article__share-icon--hidden-sm {
    display: none;
}

@media only screen and (max-width: 576px) {
    .article__share-icon--hidden-sm {
        display: inline-block;
    }
}

.article__main-image {
    max-width: 100%;
    height: auto;
    max-height: 683px;
    display: block;
}

.article__content {
    font-size: 1.6rem;
    color: #424242;
    color: var(--article-content-color, #424242);
}

    .article__content img {
        max-width: 100% !important;
        height: auto !important;
    }

.article__header {
    margin-bottom: 10px;
    padding: 16px 24px;
    border-bottom: 1px solid whitesmoke;
    border-bottom-color: var(--article-header-border-bottom-color, whitesmoke);
}

.article__heading {
    font-size: 2rem;
    margin-top: 0;
    margin-bottom: 0;
}

.article__list-summary {
    margin-top: auto;
    border-top: 2px solid whitesmoke;
    border-top-color: var(--article-list-summary-border-color, whitesmoke);
    margin-top: 40px;
    margin-bottom: 10px;
    padding-top: 15px;
}

.article__list-summary-image {
    height: 70px;
    width: 70px;
    object-fit: cover;
}

.article__list-summary-text {
    font-weight: 600;
    color: #414141;
    color: var(--article-list-summary-text-color, #414141);
}

.article__info-container {
    display: flex;
}

.article__text {
    margin: 0;
}

.article__text-small {
    color: grey;
    color: var(--article-text-small-font-color, grey);
}

.article a {
    color: #1a80b6;
    color: var(--article-a-color, #1a80b6);
    text-decoration: none;
}

    .article a:hover {
        text-decoration: underline;
    }

.textlarge_20 {
    font-size: 1.2em;
}

.textlarge_40 {
    font-size: 1.4em;
}

.textlarge_60 {
    font-size: 1.6em;
}

.textlarge_80 {
    font-size: 1.8em;
}

.textlarge_100 {
    font-size: 2em;
}

.textlarge_200 {
    font-size: 3em;
}

.textlarge_300 {
    font-size: 4em;
}

.textlarge_400 {
    font-size: 5em;
}

img.center {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

img.border_black_4 {
    border: solid 4px #000000bf;
    border-radius: 8px;
}

.contact {
    background-color: whitesmoke;
    background-color: var(--contact-item-background-color, whitesmoke);
    border-radius: 5px;
}

.contact__recipient {
    background-color: whitesmoke;
    background-color: var(--contact-recipient-background-color, whitesmoke);
    padding: 10px;
    padding-top: 3px;
    padding-bottom: 7px;
    margin-bottom: 15px;
    margin-top: 15px;
    border: 1px solid lightgrey;
    border-color: var(--contact-recipient-border-color, lightgrey);
    border-radius: 10px;
}

.contact__recipient--text {
    font-size: 1.2rem;
    color: grey;
    color: var(--contact-recipient-text-color, grey);
    display: inline-block;
    width: 100%;
}

.contact__recipient--small-width {
    max-width: 512px;
}

.contact__item {
    font-size: 1.6rem;
    font-weight: 500;
    width: 100%;
    border-radius: 5px;
}

.contact__item-heading {
    color: grey;
    color: var(--contact-item-name-font-color, grey);
    font-size: 1.6rem;
    user-select: none;
    padding: 10px;
    background-color: #e2e2e2;
    background-color: var(--contact-item-heading-background-color, #e2e2e2);
    border-radius: 5px 5px 0 0;
    margin-top: 0;
    margin-bottom: 0;
}

.contact__item-description {
    color: #565656;
    color: var(--contact-item-description-color, #565656);
    font-weight: 400;
}

.contact__item-description--small {
    font-size: 1.2rem;
    color: grey;
    color: var(--contact-item-description-small-color, grey);
}

.contact__item-description--link {
    display: block;
}

.contact__item-content {
    padding: 10px;
    padding-bottom: 0;
}

    .contact__item-content:last-child {
        padding-bottom: 10px;
    }

.contact__form-container {
    padding: 10px;
    background-color: rgba(245, 245, 245, 0.5);
    background-color: var(--contact-formcontainer-background-color, rgba(245, 245, 245, 0.5));
    border-radius: 5px;
}

.contact__form {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.contact__form--validationerror {
    color: red;
    color: var(--contact-form-validationerror-color, red);
}

.contact__form--validationerror {
    color: red;
    color: var(--contact-form-validationerror-color, red);
}

.contact__form--validationsuccess {
    font-size: 1.8rem;
    font-weight: 500;
}

.contact__form-button {
    margin-top: 15px;
    background-color: #d8d8d8;
    background-color: var(--contact-form-button-background-color, #d8d8d8);
    border: 1px solid lightgrey;
    border-color: var(--contact-form-button-border-color, lightgrey);
    color: #4e4e4e;
    color: var(--contact-form-button-color, #4e4e4e);
    width: 150px;
    padding: 15px;
    font-weight: 500;
}

    .contact__form-button:hover {
        background-color: #e5e5e5;
        background-color: var(--contact-form-button-hover-background-color, #e5e5e5);
        border: 1px solid grey;
        border-color: var(--contact-form-button-hover-border-color, grey);
    }

.page-title {
    font-size: 1.8rem;
    background-color: white;
    background-color: var(--page-title-background-color, white);
    color: #585858;
    color: var(--page-title-heading-color, #585858);
    border-bottom: 2px solid whitesmoke;
    border-bottom-color: var(--page-title-border-color, whitesmoke);
    margin: 0;
    padding-bottom: 10px;
    padding-top: 10px;
}

.background {
    max-height: 600px;
    position: relative;
}

.background__image {
    width: 100%;
    object-fit: cover;
    max-height: 600px;
}

.background__text {
    position: absolute;
    bottom: 20%;
    left: 30%;
}

@media only screen and (max-width: 1024px) {
    .background__text {
        left: 20%;
    }
}

@media only screen and (max-width: 768px) {
    .background__text {
        bottom: 20px;
    }
}

@media only screen and (max-width: 576px) {
    .background__text {
        font-size: 20px;
    }
}

.background__heading {
    color: white;
    color: var(--background-header-color, white);
    text-align: center;
    margin: 0;
    font-size: 80px;
    font-weight: 800;
}

@media only screen and (max-width: 1024px) {
    .background__heading {
        font-size: 40px;
    }
}

@media only screen and (max-width: 768px) {
    .background__heading {
        font-size: 28px;
    }
}

@media only screen and (max-width: 576px) {
    .background__heading {
        font-size: 20px;
    }
}

.background__sub-heading {
    color: white;
    color: var(--background-header-color, white);
    text-align: center;
    padding-bottom: 10px;
    font-size: 26px;
}

@media only screen and (max-width: 576px) {
    .background__sub-heading {
        font-size: 20px;
    }
}

.user-input {
    position: relative;
    width: 100%;
    margin-bottom: 15px;
    transition: 0.2s;
}

.user-input--required {
    color: red;
    color: var(--user-input-required-font-color, red);
}

.user-input--mb0-desktop {
    margin-bottom: 0;
}

.user-input__required {
    color: red;
    color: var(--user-input-required-font-color, red);
}

.user-input__label {
    position: absolute;
    top: 15px;
    left: 10px;
    color: grey;
    color: var(--user-input-label-color, grey);
    -webkit-user-select: none;
    user-select: none;
    transition: 0.2s;
    line-height: 1.4;
}

.user-input__label--small {
    transition: 0.2s;
    top: 2px;
    font-size: 1.2rem;
}

.user-input__label:hover {
    cursor: auto;
}

.user-input__input {
    border: 1px solid lightgrey;
    border-color: var(--user-input-input-border-color, lightgrey);
    border-radius: 10px;
    padding: 10px;
    width: 100%;
    min-height: 50px;
    transition: 0.2s;
    font-weight: 500;
}

    .user-input__input:disabled {
        color: #888888;
        color: var(--user-input-input-disabled-font-color, #888888);
    }

.user-input__input--small {
    line-height: 1;
    padding-bottom: 0px;
    transition: 0.2s;
}

.user-input__input--small-width {
    max-width: 512px;
}

.user-input__input--simple {
    background-color: whitesmoke;
    background-color: var(--user-input-input-simple-background-color, whitesmoke);
    border: 0;
    border-bottom: 2px solid lightgrey;
    border-bottom: 2px solid var(--user-input-input-simple-border-bottom-color, lightgrey);
    border-radius: 0;
    outline: none;
    transition: 0.2s;
}

    .user-input__input--simple:focus {
        transition: 0.2s;
        border-bottom: 2px solid grey;
        border-bottom: 2px solid var(--user-input-input-simple-focus-border-bottom-color, grey);
    }

        .user-input__input--simple:focus + .donate-simple__currency {
            transition: 0.2s;
            border-bottom: 2px solid grey;
            border-bottom: 2px solid var(--user-input-input-simple-focus-donatesimplecurrency-border-bottom-color, grey);
        }

.user-input__input--large-font {
    font-size: 1.6rem;
    font-weight: 500;
}

.user-input__select {
    border: 1px solid lightgrey;
    border-color: var(--user-input-input-border-color, lightgrey);
    border-radius: 5px;
    padding: 10px;
    width: 100%;
    min-height: 50px;
    transition: 0.2s;
    -webkit-appearance: none;
    background-color: white;
    background-color: var(--user-input-select-background-color, white);
    font-weight: 500;
}

.user-input__select--small {
    line-height: 1;
    padding-bottom: 0px;
    transition: 0.2s;
}

.user-input__textarea {
    border: 1px solid lightgrey;
    border-color: var(--user-input-input-border-color, lightgrey);
    border-radius: 10px;
    padding: 10px;
    width: 100%;
    min-height: 200px;
    resize: none;
    transition: 0.2s;
    font-weight: 500;
}

.user-input__textarea--small {
    transition: 0.2s;
    padding-top: 20px;
}

.user-input__textarea--simple {
    background-color: whitesmoke;
    background-color: var(--user-input-input-simple-background-color, whitesmoke);
    border: 0;
    border-bottom: 2px solid lightgrey;
    border-bottom: 2px solid var(--user-input-input-simple-border-bottom-color, lightgrey);
    border-radius: 0;
    outline: none;
    transition: 0.2s;
}

    .user-input__textarea--simple:focus {
        transition: 0.2s;
        border-bottom: 2px solid grey;
        border-bottom: 2px solid var(--user-input-input-simple-focus-border-bottom-color, grey);
    }

        .user-input__textarea--simple:focus + .donate-simple__currency {
            transition: 0.2s;
            border-bottom: 2px solid grey;
            border-bottom: 2px solid var(--user-input-input-simple-focus-donatesimplecurrency-border-bottom-color, grey);
        }

.attachment {
    display: flex;
    background-color: whitesmoke;
    background-color: var(--attachment-background-color, whitesmoke);
    align-items: center;
    border-radius: 5px;
    overflow: hidden;
    color: #383838 !important;
    color: var(--black, #383838) !important;
    transition: 0.2s;
}

    .attachment:hover {
        transition: 0.2s;
        box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
        cursor: pointer;
        text-decoration: none !important;
        color: inherit;
    }

.attachment__link {
    margin-right: 15px;
    color: #585858;
    color: var(--attachment-link-color, #585858);
    text-decoration: none;
}

    .attachment__link :hover {
        text-decoration: none;
    }

.attachment__icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: lightgrey;
    background-color: var(--attachment-icon-container-background-color, lightgrey);
    padding: 10px;
}

.attachment__icon {
    color: grey;
    color: var(--attachment-icon-font-color, grey);
    font-size: 22px;
}

.attachment__body {
    font-weight: 500;
    font-size: 1.4rem;
    color: inherit;
    padding: 10px;
}

.board-member {
    height: auto;
    display: flex;
    flex-direction: column;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    border-radius: 5px;
}

    .board-member img {
        min-height: auto;
        width: 150px;
        height: 150px;
        border-radius: 75px;
        margin: auto;
        display: block;
        object-fit: cover;
    }

.board-member__top {
    padding: 15px;
    background-image: linear-gradient(135deg, white 0%, #dadada 100%);
    border-radius: 5px 5px 0 0;
    height: 275px;
}

.board-member__tile {
    padding: 10px;
    border: 2px solid #f1f1f1;
    border-color: var(--boardmember-tile-border-color, #f1f1f1);
    margin: 0;
    margin-bottom: 0 !important;
    flex-direction: column !important;
}

.board-member__role {
    color: grey;
    margin-top: 0 !important;
    font-size: 1.5rem;
    margin: 0;
    display: block;
    text-align: center;
}

    .board-member__role:last-child {
        margin-bottom: 10px !important;
    }

.board-member__name {
    font-size: 1.8rem;
    font-weight: 600;
    margin: 10px 0 0 0;
    text-align: center;
}

.board-member__contact-info {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.board-member__contact-item {
    display: block;
    display: flex;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid whitesmoke;
    border-color: var(--boardmember-contact-border-color, whitesmoke);
}

.board-member__contact-item--email {
    margin-top: auto;
}

.board-member__contact-item:last-child {
    border-bottom: 0;
}

.board-member__icon {
    color: grey;
    color: var(--boardmember-icon-color, grey);
    font-size: 20px;
    margin-right: 10px;
}

.calendar-list {
    display: flex;
    background-color: whitesmoke;
    background-color: var(--calendar-list-background-color, whitesmoke);
    transition: 0.2s;
    margin-bottom: 15px;
    border-radius: 5px;
    overflow: hidden;
}

    .calendar-list:hover {
        transition: 0.2s;
        cursor: pointer;
        box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
        margin-right: 5px;
        margin-left: 5px;
    }

.calendar-list__date {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 80px;
    width: 130px;
    overflow: hidden;
    background-color: #f7f7f7;
    color: #383838;
    color: var(--calendar-list-date-font-color, #383838);
    margin-right: 15px;
    padding: 10px;
    text-align: center;
}

.calendar-list__text {
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0;
}

.calendar-list__text--small {
    font-size: 1.4rem;
    color: #585858;
    color: var(--calendar-list-text-small-font-color, #585858);
    margin: 0;
}

.calendar-list__event {
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 10px 10px 10px 0;
    width: calc( 100% - 130px);
}

.month-calendar {
    /*&__description-short{
      @media only screen and ( max-width: 500px ){
          display: none;
  }
  }*/
}

.month-calendar__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px;
    margin-bottom: 10px;
    background-color: whitesmoke;
    background-color: var(--month-calendar-header-background-color, whitesmoke);
}

.month-calendar__heading {
    font-weight: 500;
    color: #383838;
    color: var(--month-calendar-heading-font-color, #383838);
}

.month-calendar__table-container {
    position: relative;
}

    .month-calendar__table-container::-webkit-scrollbar {
        background-color: whitesmoke;
        background-color: var(--month-calendar-scrollbar-background-color, whitesmoke);
        height: 5px;
        width: 10px;
        border-radius: 5px;
    }

    .month-calendar__table-container::-webkit-scrollbar-thumb {
        background-color: lightgrey;
        background-color: var(--month-calendar-scrollbarthumb-background-color, lightgrey);
        border-radius: 5px;
    }

.month-calendar__table {
    margin: auto;
    width: 100%;
    border-spacing: 0;
}

.month-calendar__table-row {
    position: relative;
    background-color: #ebebeb;
    background-color: var(--month-calendar-table-row-background-color, #ebebeb);
    display: none;
}

@media only screen and (min-width: 769px) {
    .month-calendar__table-row {
        display: table-row;
    }
}

.month-calendar__table-row--tablet {
    display: none;
}

@media only screen and (min-width: 500px) and (max-width: 768px) {
    .month-calendar__table-row--tablet {
        display: table-row;
    }
}

.month-calendar__table-row--mobile {
    display: none;
}

@media only screen and (min-width: 0px) and (max-width: 499px) {
    .month-calendar__table-row--mobile {
        display: table-row;
    }
}

.month-calendar__event {
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 10px;
    margin-top: 5px;
    background-color: #d7eaff;
    background-color: var(--month-calendar-event-background-color, #d7eaff);
    padding: 2px 4px;
    border-radius: 5px;
    font-size: 1.2rem;
    display: block;
    color: #5f5f5f;
    color: var(--month-calendar-event-color, #5f5f5f);
}

    .month-calendar__event:hover {
        cursor: pointer;
    }

        .month-calendar__event:hover > .tooltip {
            visibility: visible;
            transition-delay: 0.5s;
            width: 250px;
            padding: 5px 10px;
            margin-top: 0px;
        }

    .month-calendar__event:last-child {
        margin-bottom: 0;
        border-bottom: 0;
    }

@media only screen and (min-width: 501px) {
    .month-calendar__event {
        display: block !important;
    }
}

@media only screen and (max-width: 500px) {
    .month-calendar__event {
        display: none;
    }
}

.month-calendar__event-time {
    font-weight: 600;
    display: inline-block;
    width: 100%;
    white-space: nowrap;
}

.month-calendar__dot {
    display: none;
    color: grey;
}

@media only screen and (min-width: 501px) {
    .month-calendar__dot {
        display: none !important;
    }
}

@media only screen and (max-width: 500px) {
    .month-calendar__dot {
        display: block;
        text-align: center;
        margin-top: 5px;
    }
}

.month-calendar__table-heading {
    background-color: #ebebeb;
    background-color: var(--month-calendar-table-row-background-color, #ebebeb);
    border: 1px solid lightgrey;
    border-color: var(--month-calendar-table-heading-border-color, lightgrey);
    border-right: 0;
    z-index: 5;
    position: sticky;
    top: 0;
}

.month-calendar__table-heading--weekend {
    background-color: #d3f4d3 !important;
    background-color: var(--month-calendar-weekend-background-color, #d3f4d3) !important;
}

.month-calendar__table-heading:last-child {
    border-right: 1px solid lightgrey;
    border-right-color: var(--month-calendar-table-heading-border-color, lightgrey);
}

.month-calendar__table-heading--time {
    background-color: whitesmoke !important;
    background-color: var(--month-calendar-heading-time-background-color, whitesmoke) !important;
    color: grey !important;
    color: var(--month-calendar-heading-time-font-color, grey) !important;
    text-align: center;
    width: 15px !important;
    padding: 15px 5px 15px 5px !important;
    border: 1px solid lightgrey;
    border-color: var(--month-calendar-table-heading-time-border-color, lightgrey);
    border-right: 0;
    position: sticky;
    top: 0;
}

.month-calendar__day--last-month {
    color: #bbbbbb;
    color: var(--month-calendar-day-last-month-font-color, #bbbbbb);
    background-color: #f7f7f7;
    background-color: var(--month-calendar-day-last-month-background-color, #f7f7f7);
}

.month-calendar__day--next-month {
    color: #bbbbbb;
    color: var(--month-calendar-day-next-month-font-color, #bbbbbb);
    background-color: #f7f7f7;
    background-color: var(--month-calendar-day-next-month-background-color, #f7f7f7);
}

.month-calendar__button {
    color: #383838;
    color: var(--month-calendar-button-background-color, #383838);
}

.calendar-detail {
    display: flex;
    display: grid;
    grid-template-columns: 8fr 350px;
    grid-gap: 15px;
    margin-top: 15px;
}

@media only screen and (max-width: 576px) {
    .calendar-detail {
        grid-template-columns: 1fr;
    }
}

.calendar-detail__description-heading {
    font-size: 1.8rem;
    font-weight: 600;
    background-color: transparent;
    background-color: var(--calendar-detail-description-heading-background-color, transparent);
    color: #383838;
    color: var(--calendar-detail-description-heading-font-color, #383838);
}

.calendar-detail__button {
    padding: 10px 15px 10px 15px;
    background-color: whitesmoke;
    background-color: var(--calendar-detail-button-background-color, whitesmoke);
    border: 1px solid lightgrey;
    border-color: var(--calendar-detail-button-border-color, lightgrey);
    border-radius: 5px;
    color: #808080;
    color: var(--calendar-detail-button-color, #808080);
    text-decoration: none;
    display: inline-block;
    transition: 0.3s;
    margin-bottom: 10px;
    margin-top: 5px;
    font-weight: 500;
    display: inline-block;
    width: 100%;
    text-align: center;
}

    .calendar-detail__button:hover {
        color: #404040;
        color: var(--calendar-detail-button-hover-color, #404040);
        cursor: pointer;
        background-color: lightgrey;
        background-color: var(--calendar-detail-button-hover-background-color, lightgrey);
        transition: 0.3s;
    }

.calendar-detail__description {
    background-color: white;
    background-color: var(--calendar-detail-description-background-color, white);
}

.calendar-detail__event-detail {
    padding: 15px;
    background-color: whitesmoke;
    background-color: var(--calendar-detail-event-datail-background-color, whitesmoke);
}

@media only screen and (max-width: 576px) {
    .calendar-detail__event-detail {
        margin-left: -15px;
        margin-right: -15px;
    }
}

.calendar-detail__event-detail-heading {
    background-color: grey;
    background-color: var(--calendar-detail-event-detail-heading-background-color, grey);
    color: white;
    color: var(--calendar-detail-event-detail-heading-font-color, white);
    padding: 10px;
    margin-bottom: 15px;
    user-select: none;
    margin: 0;
    margin-bottom: 10px;
}

.calendar-detail__event-detail-section {
    margin-bottom: 15px;
}

    .calendar-detail__event-detail-section:last-child {
        margin-bottom: 0;
    }

.calendar-detail__event-detail-item {
    margin-bottom: 15px;
}

    .calendar-detail__event-detail-item:last-child {
        margin-bottom: 0;
    }

.calendar-detail__event-detail-item-label {
    display: block;
    font-size: 1.4rem;
    font-weight: 600;
    color: grey;
    color: var(--calendar-detail-event-detail-item-label-font-color, grey);
}

.calendar-month {
    font-size: x-large;
    /*color: #676767;*/
    /*font-weight: bold;*/
}

.calendar-date {
    /*width:80px;*/
    /*font-family:Tahoma;*/
    font-size: 10pt;
    font-weight: bold;
    background-color: #888a85;
    color: #eeeeec;
    padding: 5px 10px 5px 10px;
    white-space: nowrap;
    text-align: center;
}

.calendar-item {
    padding: 3px 0px 0px 0px;
    height: 1.2em;
    margin-left: 100px;
}

.calendar-item-title {
    /*padding: 2px 0px 2px 0px;*/
    /*font-size: medium;*/
    font-weight: bold;
    margin-bottom: 5px;
    float: left;
}

.calendar-item-time {
    /*padding: 2px 0px 2px 0px;
  margin-right: 1em;
  margin-left: 1em;
  float: left;
  width: 9em;*/
}

.calendar-item-description {
    display: none;
    /*margin-left: 100px;
  margin-bottom:5px;*/
}

    .calendar-item-description .description-title {
        font-weight: bold;
    }

    .calendar-item-description .description {
        /*margin-bottom: 8px;*/
    }

.category-red {
    float: left;
    width: 6em;
    height: 1.2em;
    background-color: #f7bebe;
    /*padding: 2px 5px 2px 5px;
  margin-right: 1em; */
    text-align: center;
}

.category-blue {
    float: left;
    width: 6em;
    height: 1.2em;
    background-color: #d7d7fc;
    /*padding: 2px 5px 2px 5px;
  margin-right: 1em;*/
    text-align: center;
}

/*Kalender view*/
#container {
    margin: 3em auto 0 3em;
    padding-bottom: 3em;
    background-color: #fff;
}

#month {
    border-collapse: collapse;
    width: 100%;
    position: relative;
}

    #month th, #month td {
        border: 1px solid #2e3436;
    }

    #month thead {
        font-size: 1.1em;
        background-color: #d3d7cf;
    }

    #month td {
        width: 14.2857143%;
        height: 100px;
        font-size: 9pt;
        font-family: Verdana;
        padding: 4px;
        vertical-align: top;
        overflow: auto;
        background-image: none;
        background-color: #eeeeec;
    }

        #month td .date {
            margin-bottom: 5px;
            font-style: italic;
        }

td .day {
    width: 7em;
    height: 6em;
    overflow: auto;
    margin-top: 0;
}

#month tbody .weekend {
    background-color: rgba(187, 225, 149, 0.5);
}

#month tbody .today {
    /*background-color:#f3fc87;*/
    background-color: rgba(248, 235, 128, 0.5);
}

#month tbody .next, #month tbody .previous {
    background-color: #d3d7cf;
}

.rtop {
    display: block;
    background: #060;
}

    .rtop * {
        display: block;
        height: 1px;
        overflow: hidden;
        background: #fff;
    }

.r1 {
    margin: 0 0 0 5px;
}

.r2 {
    margin: 0 0 0 3px;
}

.r3 {
    margin: 0 0 0 2px;
}

.r4 {
    margin: 0 0 0 1px;
    height: 2px;
}

#container h1 {
    margin: 0 0 0.5em 0.5em;
    font: 2em Arial, Helvetica, sans-serif;
    color: #060;
}

#month th {
    font: 1em bold Arial, Helvetica, sans-serif;
}

p {
    margin-top: 0;
}

/*.calendar {
    border-collapse: collapse;
    width: 640px; 
}
    .calendar td {
        vertical-align: top;
        width: 80px;
        height: 80px;
        border: 1pt solid black;
    }
    .calendar tr {
    }
    .calendar th {
        font-weight: bold;
        font-size: 12pt;
    }
    .calendar ul {
        list-style-type: square;
        padding: 5px;

    }
    .calendar li {
        padding: -3em;
         margin-left: -3em;
    }
    .calendar .date {
        font-size: 8pt;
        color: #989898;
        padding-left: 3px;
    }
    .calendar .entry {
        padding-left: 3px;
        font-size: 8pt;
    }

td.other-month {
    background-color: #c1c1c1;
    /*background-color: white;
    border: 0px;
}
td.weekday {
}

td.weekend {
    background-color: #fbd5d5;
}
    */
.infobox {
    width: 500px;
    height: 400px;
    overflow: auto;
}

    .infobox .title {
        font-weight: bold;
    }

    .infobox h1 {
        font-size: large;
        padding-bottom: 10px;
    }

    .infobox .info {
        padding-bottom: 8px;
    }

.google-map {
    display: none;
}

/* tooltip */
.tooltip-header {
    margin-top: 4px;
}

.info-tooltip {
    font-size: 10pt;
}

.tooltip-title {
    color: #2e3436;
    font-size: 12pt;
    font-weight: bold;
    font-family: "ATF Antique";
}

.more-info {
    font-size: 8pt;
    color: #888a85;
}

.week-calendar__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px;
    margin-bottom: 10px;
    background-color: whitesmoke;
    background-color: var(--month-calendar-header-background-color, whitesmoke);
}

.week-calendar__heading {
    color: #383838;
    color: var(--month-calendar-heading-font-color, #383838);
}

.week-calendar__table-container {
    position: relative;
}

    .week-calendar__table-container::-webkit-scrollbar {
        background-color: whitesmoke;
        background-color: var(--month-calendar-scrollbar-background-color, whitesmoke);
        height: 5px;
        width: 10px;
        border-radius: 5px;
    }

    .week-calendar__table-container::-webkit-scrollbar-thumb {
        background-color: lightgrey;
        background-color: var(--month-calendar-scrollbarthumb-background-color, lightgrey);
        border-radius: 5px;
    }

.week-calendar__table {
    margin: auto;
    width: 100%;
}

.week-calendar__table-row {
    position: relative;
    background-color: #ebebeb;
    background-color: var(--month-calendar-table-row-background-color, #ebebeb);
    display: none;
}

@media only screen and (min-width: 769px) {
    .week-calendar__table-row {
        display: table-row;
    }
}

.week-calendar__table-row--tablet {
    display: none;
}

@media only screen and (min-width: 500px) and (max-width: 768px) {
    .week-calendar__table-row--tablet {
        display: table-row;
    }
}

.week-calendar__table-row--mobile {
    display: none;
}

@media only screen and (min-width: 0px) and (max-width: 499px) {
    .week-calendar__table-row--mobile {
        display: table-row;
    }
}

.week-calendar__table-heading {
    background-color: #ebebeb;
    background-color: var(--month-calendar-table-row-background-color, #ebebeb);
    border: 1px solid lightgrey;
    border: 1px solid var(--month-calendar-table-heading-border-color, lightgrey);
    border-right: 0;
    position: sticky;
    top: 0;
    white-space: nowrap;
    z-index: 5;
}

    .week-calendar__table-heading:last-child {
        border-right: 1px solid lightgrey;
        border-right-color: var(--month-calendar-table-heading-border-color, lightgrey);
    }

.week-calendar__table-heading--time {
    background-color: whitesmoke !important;
    background-color: var(--month-calendar-heading-time-background-color, whitesmoke) !important;
    color: grey !important;
    color: var(--month-calendar-heading-time-font-color, grey) !important;
    text-align: center;
    width: 15px !important;
    padding: 15px 5px 15px 5px !important;
    border: 1px solid lightgrey;
    border-color: var(--month-calendar-table-heading-time-border-color, lightgrey);
    border-right: 0;
    position: sticky;
    top: 0;
}

.week-calendar__day--last-month {
    color: #bbbbbb;
    color: var(--month-calendar-day-last-month-font-color, #bbbbbb);
    background-color: #f7f7f7;
    background-color: var(--month-calendar-day-last-month-background-color, #f7f7f7);
}

.week-calendar__day--next-month {
    color: #bbbbbb;
    color: var(--month-calendar-day-next-month-font-color, #bbbbbb);
    background-color: #f7f7f7;
    background-color: var(--month-calendar-day-next-month-background-color, #f7f7f7);
}

.week-calendar__button {
    color: #383838;
    color: var(--month-calendar-button-background-color, #383838);
}

.week-calendar__event-time {
    font-weight: 600;
    display: inline-block;
    width: 100%;
    white-space: nowrap;
}

.week-calendar__weekend {
    background-color: #d3f4d3;
}

.day-calendar__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px;
    margin-bottom: 10px;
    background-color: whitesmoke;
    background-color: var(--month-calendar-header-background-color, whitesmoke);
}

.day-calendar__heading {
    color: #383838;
    color: var(--month-calendar-heading-font-color, #383838);
}

.day-calendar__table-container {
    position: relative;
}

    .day-calendar__table-container::-webkit-scrollbar {
        background-color: whitesmoke;
        background-color: var(--month-calendar-scrollbar-background-color, whitesmoke);
        height: 5px;
        width: 10px;
        border-radius: 5px;
    }

    .day-calendar__table-container::-webkit-scrollbar-thumb {
        background-color: lightgrey;
        background-color: var(--month-calendar-scrollbarthumb-background-color, lightgrey);
        border-radius: 5px;
    }

.day-calendar__table {
    margin: auto;
    width: 100%;
}

.day-calendar__table-row {
    position: relative;
    background-color: #ebebeb;
    background-color: var(--month-calendar-table-row-background-color, #ebebeb);
    display: none;
}

@media only screen and (min-width: 769px) {
    .day-calendar__table-row {
        display: table-row;
    }
}

.day-calendar__table-row--tablet {
    display: none;
}

@media only screen and (min-width: 500px) and (max-width: 768px) {
    .day-calendar__table-row--tablet {
        display: table-row;
    }
}

.day-calendar__table-row--mobile {
    display: none;
}

@media only screen and (min-width: 0px) and (max-width: 499px) {
    .day-calendar__table-row--mobile {
        display: table-row;
    }
}

.day-calendar__table-heading {
    background-color: #ebebeb;
    background-color: var(--month-calendar-table-row-background-color, #ebebeb);
    border: 1px solid lightgrey;
    border-color: var(--month-calendar-table-heading-border-color, lightgrey);
    border-right: 0;
    position: sticky;
    top: 0;
    z-index: 5;
}

    .day-calendar__table-heading:last-child {
        border-right: 1px solid lightgrey;
        border-right-color: var(--month-calendar-table-heading-border-color, lightgrey);
    }

.day-calendar__table-heading--time {
    background-color: whitesmoke !important;
    background-color: var(--month-calendar-heading-time-background-color, whitesmoke) !important;
    color: grey !important;
    color: var(--month-calendar-heading-time-font-color, grey) !important;
    text-align: center;
    padding: 15px 5px 15px 5px !important;
    border: 1px solid lightgrey;
    border-color: var(--month-calendar-table-heading-time-border-color, lightgrey);
    border-right: 0;
    width: 10%;
    position: sticky;
    top: 0;
}

.day-calendar__day--last-month {
    color: #bbbbbb;
    color: var(--month-calendar-day-last-month-font-color, #bbbbbb);
    background-color: #f7f7f7;
    background-color: var(--month-calendar-day-last-month-background-color, #f7f7f7);
}

.day-calendar__day--next-month {
    color: #bbbbbb;
    color: var(--month-calendar-day-next-month-font-color, #bbbbbb);
    background-color: #f7f7f7;
    background-color: var(--month-calendar-day-next-month-background-color, #f7f7f7);
}

.day-calendar__day--weekend {
    background-color: #effff1;
    background-color: var(--month-calendar-day-weekend-background-color, #effff1);
}

.day-calendar__button {
    color: #383838;
    color: var(--month-calendar-button-background-color, #383838);
}

.day-calendar__event {
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 10px;
    margin-top: 5px;
    background-color: #d7eaff;
    padding: 2px 4px;
    border-radius: 5px;
    font-size: 1.2rem;
    display: block;
    color: #5f5f5f;
}

    .day-calendar__event:hover {
        cursor: pointer;
    }

        .day-calendar__event:hover > .tooltip {
            visibility: visible;
            transition-delay: 0.5s;
            width: 250px;
            padding: 5px 10px;
            margin-top: 0px;
        }

    .day-calendar__event:last-child {
        margin-bottom: 0;
        border-bottom: 0;
    }

.day-calendar__event-time {
    font-weight: 600;
    display: inline-block;
    width: 100%;
    white-space: nowrap;
}

.calendar-selection {
    background-color: white;
    background-color: var(--calendar-selection-background-color, white);
    margin-bottom: 10px;
    padding: 10px;
}

.calendar-selection__item {
    color: #bbbbbb;
    color: var(--calendar-selection-item-font-color, #bbbbbb);
}

.calendar-selection__item--active {
    color: #383838;
    color: var(--calendar-selection-item-active-font-color, #383838);
}

.calendar-selection__item--search {
    color: grey;
    color: var(--calendar-selection-item-search-font-color, grey);
}

.album-list {
    margin: 15px 0 15px 0;
}

.album-list__image {
    width: 100%;
    border-radius: 5px 5px 0 0;
    margin-bottom: -5px;
}

.album-list__description {
    display: flex;
    background-color: whitesmoke;
    background-color: var(--album-list-description-background-color, whitesmoke);
    min-height: 70px;
    max-height: 100%;
    align-items: center;
    padding: 10px 15px 10px 15px;
    border-radius: 0 0 5px 5px;
}

.album-list__text {
    font-weight: 500;
    color: grey;
    color: var(--album-list-text-font-color, grey);
}

.album-list__text--small {
    color: grey;
    color: var(--album-list-text-small-font-color, grey);
    margin-left: auto;
    font-size: 1.2rem;
    font-weight: 500;
    border-radius: 5px;
}

.album-detail {
    display: grid;
    min-height: calc(100vh - 10px);
    grid-template: repeat(5, 1fr)/repeat(5, 1fr);
    grid-gap: 25px;
}

.album-detail__back {
    display: block;
    margin-bottom: 20px;
    margin-top: 15px;
    color: grey;
    color: var(--album-detail-back-font-color, grey);
}

.album-detail__image {
    width: 100%;
    height: auto;
    user-select: none;
}

    .album-detail__image:hover {
        cursor: pointer;
    }

.album-detail__back-icon {
    margin-right: 5px;
}

.album-detail__heading {
    font-size: 1.8rem;
    font-weight: 500;
    margin-top: 0;
    margin-bottom: 0;
}

.album-detail__text {
    font-size: 1.6rem;
    margin-bottom: 15px;
    color: #585858;
    color: var(--album-detail-back-text-font-color, #585858);
}

.album-detail__item {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media only screen and (max-width: 576px) {
    .album-detail {
        grid-template: none;
        grid-template-columns: 1fr;
    }
}

@media only screen and (min-width: 576px) {
    .album-detail > div:nth-child(6n+1) {
        grid-column: span 2;
        grid-row: span 2;
    }

    .album-detail > div:nth-child(2) {
        grid-column: span 3;
        grid-row: span 3;
    }

    .album-detail > div > a {
        opacity: 0;
        position: absolute;
        width: 100%;
        height: 100%;
        transition: all ease 1s;
    }

    .album-detail > div > img {
        height: 100%;
        transition: all ease 1s;
        object-fit: cover;
    }

    .album-detail > div {
        overflow: hidden;
        position: relative;
    }
}

.album-detail-float:after {
    content: "";
    display: table;
    clear: both;
}

.album-detail-float__column {
    float: left;
    width: 33%;
    padding: 10px;
}

@media only screen and (max-width: 576px) {
    .album-detail-float__column {
        padding: 0;
    }
}

.album-detail-float__img {
    margin-top: 15px;
    width: 100%;
}

.after-main {
    margin-top: auto;
}

.article-list-category {
    background-color: whitesmoke;
    background-color: var(--article-list-category-background-color, whitesmoke);
    padding: 0;
    width: 100%;
    display: block;
}

@media only screen and (max-width: 1100px) {
    .article-list-category {
        display: none;
    }
}

.article-list-category ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.article-list-category--top {
    margin-bottom: 20px;
    border-radius: 5px;
}

    .article-list-category--top ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

.article-list-category--mobile {
    display: none;
    margin-bottom: 15px;
    position: relative;
}

@media only screen and (max-width: 1100px) {
    .article-list-category--mobile {
        display: block;
    }
}

.article-list-category__select-label {
    color: grey;
    color: var(--article-list-category-select-label-color, grey);
    position: absolute;
    top: 15px;
    left: 15px;
    font-size: 1.4rem;
    transition: 0.2s;
}

.article-list-category__select-label--active {
    transition: 0.2s;
    top: 4px;
    left: 9px;
    font-size: 1.2rem;
}

.article-list-category__select {
    width: 100%;
    border: 1px solid lightgrey;
    border-collapse: var(--article-list-category-select-border-color, lightgrey);
    border-radius: 5px;
    height: 50px;
    padding-left: 10px;
    -webkit-appearance: none;
    -moz-appearance: none;
    transition: 0.2s;
    background-color: white;
    background-color: var(--article-list-category-select-background-color, white);
    font-size: 1.6rem;
}

.article-list-category__select--active {
    transition: 0.2s;
    padding-top: 14px;
}

.article-list-category__heading {
    color: #585858;
    color: var(--article-list-category-heading-font-color, #585858);
    margin: 0;
    margin-top: 0;
    margin-bottom: 0;
    padding: 10px;
    padding-bottom: 0;
}

.article-list-category__heading--top {
    font-size: 1.4rem;
    margin-bottom: 5px;
}

.article-list-category__items--top {
    max-width: 1024px;
    display: flex;
    overflow-x: auto;
}

    .article-list-category__items--top::-webkit-scrollbar {
        background-color: whitesmoke;
        background-color: var(--article-list-category-scrollbar-background-color, whitesmoke);
        height: 5px;
        border-radius: 5px;
    }

    .article-list-category__items--top::-webkit-scrollbar-thumb {
        background-color: lightgrey;
        background-color: var(--article-list-category-scrollbarthumb-background-color, lightgrey);
        border-radius: 10px;
    }

.article-list-category__item {
    display: block;
    padding: 10px;
    color: #585858 !important;
    color: var(--article-list-category-item-font-color, #585858) !important;
    transition: 0.2s;
}

    .article-list-category__item:hover {
        transition: 0.2s;
        background-color: #e4e4e4;
        background-color: var(--article-list-category-item-hover-background-color, #e4e4e4);
        text-decoration: none !important;
    }

.article-list-category__item--top {
    display: block;
    padding: 5px 10px 5px 10px;
    margin-right: 10px;
    margin-bottom: 10px;
    background-color: #fbfbfb;
    background-color: var(--article-list-category-item-top-background-color, #fbfbfb);
    color: #585858;
    color: var(--article-list-category-item-font-color, #585858);
    white-space: nowrap;
}

.article-card-overlay {
    display: flex;
    flex-direction: column;
    position: relative;
    font-size: 1.6rem;
    transition: 0.3s;
}

@media only screen and (max-width: 576px) {
    .article-card-overlay {
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }
}

.article-card-overlay__content {
    display: flex;
    flex-direction: column;
    height: 100%;
    background-color: whitesmoke;
    background-color: var(--article-card-content-background-color, whitesmoke);
    color: #585858;
    color: var(--article-card-content-color, #585858);
}

.article-card-overlay__image {
    /*max-width: 100%;
  height: auto;
  border-radius: 4px 4px 0 0;
  max-height: 450px;
  margin-left: auto;
  margin-right: auto;
  display: block;*/
    background-color: whitesmoke;
    background-color: var(--article-card-image-background-color, whitesmoke);
    height: 326px;
    width: 100%;
    object-fit: cover;
}

.article-card-overlay__text {
    font-size: 1.6rem;
}

.article-card-overlay__heading-container {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    height: 100%;
    width: 100%;
}

.article-card-overlay__heading {
    font-size: 1.8rem;
    font-weight: 500 !important;
    padding-bottom: 0;
    font-weight: bold;
    color: white;
    color: var(--article-card-overlay-header-color, white);
    margin: 0 15px 30px 15px;
    padding: 5px 10px;
    background-color: rgba(0, 0, 0, 0.7);
    background-color: var(--article-card-overlay-background-color, rgba(0, 0, 0, 0.7));
}

.article-card-overlay__read-more {
    margin-top: auto;
    padding: 10px 10px 0 10px;
    color: #585858;
    color: var(--article-card-read-more-font-color, #585858);
    display: block;
    text-align: right;
    padding: 10px;
}

.article-card-overlay__body-text {
    padding: 10px;
}

.article-card-overlay__small-text {
    font-size: 1.2rem;
    color: grey;
    color: var(--article-card-small-text-font-color, grey);
    margin-bottom: 10px;
}

.article-card-small {
    display: block;
    display: flex;
    background-color: whitesmoke;
    background-color: var(--article-card-small-background-color, whitesmoke);
    border-radius: 5px;
    border: 1px solid whitesmoke;
    border-color: var(--article-card-small-border-color, whitesmoke);
    font-size: 1.45rem;
}

@media only screen and (max-width: 576px) {
    .article-card-small {
        font-size: 1.6rem;
    }
}

.article-card-small--1-col-layout {
    background-color: white;
    background-color: var(--article-card-small-col-layout-background-color, white);
    border: 0;
    border-bottom: 1px solid whitesmoke;
    border-bottom-color: var(--article-card-small-border-color, article-card-small-border-color);
    border-radius: 0px;
    padding-bottom: 5px;
}

@media only screen and (max-width: 576px) {
    .article-card-small {
        flex-direction: column;
    }
}

.article-card-small__heading {
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 1.65rem;
}

.article-card-small__image-container {
    display: flex;
    justify-content: center;
    overflow: hidden;
    border-radius: 5px 0 0 5px;
    height: 100%;
    width: 250px;
}

@media only screen and (max-width: 576px) {
    .article-card-small__image-container {
        width: auto;
        background-color: white;
        background-color: var(--article-card-small-imagecontainer-background-color, white);
    }
}

.article-card-small__image-container--1-col-layout {
    border-radius: 0;
}

.article-card-small__image {
    max-width: 100%;
    height: auto;
    padding: 10px;
}

.article-card-small__image--1-col-layout {
    padding: 0;
}

.article-card-small__content {
    display: flex;
    flex-direction: column;
    border-radius: 0 5px 5px 0;
    width: 100%;
}

.article-card-small__body {
    display: flex;
    flex-direction: column;
    padding: 5px 10px 5px 10px;
}

.article-card-small__body--1-col-layout {
    padding: 0;
    padding-left: 15px;
}

@media only screen and (max-width: 576px) {
    .article-card-small__body--1-col-layout {
        padding: 0;
        padding-top: 10px;
    }
}

.article-card-small__text {
    overflow: auto;
    height: 100%;
}

    .article-card-small__text::-webkit-scrollbar {
        background-color: whitesmoke;
        background-color: var(--article-card-small-scrollbar-background-color, whitesmoke);
        height: 5px;
        width: 5px;
        border-radius: 5px;
    }

    .article-card-small__text::-webkit-scrollbar-thumb {
        background-color: lightgrey;
        background-color: var(--article-card-small-scrollbarthumb-background-color, lightgrey);
        width: 5px;
        border-radius: 10px;
    }

.article-card-small__read-more {
    margin-top: auto;
    padding: 5px;
    color: #585858;
    color: var(--article-card-read-more-font-color, #585858);
    display: block;
    text-align: right;
    padding: 10px;
}

.sidebar-right {
    width: 250px;
    margin-left: 15px;
    padding: 15px;
    overflow-x: auto;
}

@media only screen and (max-width: 1280px) {
    .sidebar-right {
        display: none;
    }
}

.federation-member {
    display: flex;
    align-items: center;
    height: 85px;
    background-color: whitesmoke;
    background-color: var(--federation-member-background-color, whitesmoke);
    transition: 0.2s;
    border-radius: 5px;
}

    .federation-member:hover {
        transition: 0.2s;
        cursor: pointer;
        box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
        box-shadow: 0px 0px 5px 0px var(--federation-member-hover-box-shaddow-color, rgba(0, 0, 0, 0.3));
    }

.federation-member__content-container {
    padding-left: 15px;
}

.federation-member__name {
    font-size: 1.6rem;
    font-weight: 500;
    display: block;
    color: #585858;
    color: var(--federation-member-name-font-color, #585858);
}

.federation-member__name--text-small {
    font-size: 1.2rem;
    color: grey;
    color: var(--federation-member-text-small-font-color, grey);
}

.federation-member__text-small {
    display: block;
    font-size: 1rem;
    color: grey;
    color: var(--federation-member-name-text-small-font-color, grey);
}

.federation-member__icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 85px;
    width: 85px;
    min-width: 85px;
    font-size: 25px;
    background-color: #e6e6e6;
    background-color: var(--federation-member-icon-container-background-color, #e6e6e6);
    color: grey;
    color: var(--federation-member-icon-container-font-color, grey);
    border-radius: 5px 0 0 5px;
}

.federation-member__icon-container--small-text {
    font-size: 10px;
}

.carousel {
    position: relative;
    width: 100%;
    min-height: 180px;
}

.carousel--lg {
    display: flex;
    flex-direction: column;
    height: 683px;
    overflow: hidden;
    background-color: whitesmoke;
    background-color: var(--carousel-background-color, whitesmoke);
    user-select: none;
}

@media only screen and (max-width: 1024px) {
    .carousel--lg {
        height: 512px;
    }
}

@media only screen and (max-width: 576px) {
    .carousel--lg {
        height: 384px;
    }
}

@media only screen and (min-width: 0px) and (max-width: 375px) {
    .carousel--lg {
        height: 250px;
    }
}

.carousel__viewport {
    width: 100%;
}

@keyframes fade {
    from {
        opacity: 0.4;
    }

    to {
        opacity: 1;
    }
}

.carousel__slide {
    animation-name: fade;
    animation-duration: 1.5s;
    display: none;
    width: 100%;
    height: 100%;
}

    .carousel__slide > a {
        display: contents;
    }

        .carousel__slide > a > img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            object-position: left top;
        }

.carousel__slide--active {
    display: block;
}

.carousel__slide-lg {
    position: relative;
    opacity: 0;
    background-color: whitesmoke;
    background-color: var(--carousel-slide-background-color, whitesmoke);
    max-height: 0;
    max-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.carousel__slide-lg--active {
    opacity: 1;
    max-height: 683px;
    max-width: 100%;
}

.carousel__slide-text {
    position: absolute;
    bottom: 35px;
    padding: 10px;
    background-color: rgba(0, 0, 0, 0.65);
    background-color: var(--carousel-slide-text-background-color, rgba(0, 0, 0, 0.65));
    color: white;
    color: var(--carousel-slide-text-color, white);
}

.carousel__img {
    max-width: 100%;
    max-height: 683px;
}

@media only screen and (max-width: 1024px) {
    .carousel__img {
        max-height: 512px;
    }
}

@media only screen and (max-width: 576px) {
    .carousel__img {
        max-height: 384px;
    }
}

@media only screen and (min-width: 0px) and (max-width: 375px) {
    .carousel__img {
        max-height: 250px;
    }
}

.carousel__nav-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    position: absolute;
    right: 70px;
    bottom: 0;
    left: 70px;
}

.carousel__nav-dot {
    margin-right: 10px;
    color: #dadada;
    color: var(--carousel-nav-dot-color, #dadada);
    transition: 0.3s;
}

.carousel__nav-dot--active {
    transition: 0.2s;
    font-size: 25px;
}

.carousel__nav-button {
    position: absolute;
    top: 0;
    font-size: 40px;
    color: #dadada;
    color: var(--carousel-nav-button-color, #dadada);
    padding: 15px;
    height: 683px;
    display: flex;
    align-items: center;
    transition: 0.3s;
}

@media only screen and (max-width: 1024px) {
    .carousel__nav-button {
        max-height: 512px;
    }
}

@media only screen and (max-width: 576px) {
    .carousel__nav-button {
        max-height: 384px;
    }
}

@media only screen and (min-width: 0px) and (max-width: 375px) {
    .carousel__nav-button {
        max-height: 250px;
    }
}

.carousel__nav-button:hover {
    transition: 0.2s;
    background-color: rgba(0, 0, 0, 0.3);
    background-color: var(--carousel-nav-button-hover-background-color, rgba(0, 0, 0, 0.3));
    cursor: pointer;
    color: white;
    color: var(--carousel-nav-button-hover-color, white);
}

.carousel__nav-button--right {
    right: 0;
}

.carousel__nav-button--left {
    left: 0;
}

.carousel__nav-button-circle {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    z-index: 2;
    position: absolute;
    top: 50%;
    height: 60px;
    width: 60px;
    border-radius: 30px;
    background-color: whitesmoke;
    background-color: var(--carousel-nav-button-circle-background-color, whitesmoke);
    color: grey;
    color: var(--carousel-nav-button-circle-color, grey);
}

.carousel__nav-button-circle--right {
    right: 10px;
}

.carousel__nav-button-circle--left {
    left: 10px;
}

.carousel__nav-button-circle:hover {
    cursor: pointer;
}

@keyframes fadeInOpacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.bannerimage__images {
    position: relative;
}

.bannerimage__firm-name {
    position: absolute;
    background-color: rgba(191, 191, 191, 0.5);
    background-color: var(--bannerimage-firm-background-color, rgba(191, 191, 191, 0.5));
    padding: 15px;
    top: 31%;
    left: 20px;
    font-weight: 700;
    font-size: 30px;
}

@media only screen and (max-width: 768px) {
    .bannerimage__firm-name {
        font-size: 20px;
        top: 0;
        left: 0;
        padding-top: 5px;
        padding-bottom: 5px;
    }
}

.layout__row {
    display: block;
    display: grid;
}

.layout__row--fluid {
    width: 100%;
}

.layout__row--xl {
    width: 100%;
    max-width: 1280px;
    margin: auto;
    /*overflow-x: auto;*/
    overflow: visible;
    padding: 0 15px 0 15px;
}

@media only screen and (max-width: 768px) {
    .layout__row--xl {
        padding: 0 15px 0 15px;
    }
}

.layout__row--lg {
    width: 100%;
    max-width: 1024px;
    margin: auto;
    /*overflow-x: auto;*/
    overflow: visible;
    padding: 0 15px 0 15px;
}

@media only screen and (max-width: 768px) {
    .layout__row--lg {
        padding: 0 15px 0 15px;
    }
}

.layout__row--md {
    width: 100%;
    max-width: 768px;
    margin: auto;
    /*overflow-x: auto;*/
    overflow: visible;
    padding: 0 15px 0 15px;
}

@media only screen and (max-width: 768px) {
    .layout__row--md {
        padding: 0 15px 0 15px;
    }
}

.layout__row--one-col {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .layout__row--one-col > * {
        width: 100%;
    }

@supports (display: grid) {
    .layout__row--one-col {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr;
    }

        .layout__row--one-col > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .layout__row--one-col {
        grid-template-columns: 1fr;
    }
}

.layout__row--two-col {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .layout__row--two-col > * {
        width: 40%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .layout__row--two-col > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .layout__row--two-col {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

        .layout__row--two-col > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .layout__row--two-col {
        grid-template-columns: 1fr;
    }
}

.layout__row--three-col {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .layout__row--three-col > * {
        width: 29%;
        margin: 15px;
    }

@media (max-width: 768px) {
    .layout__row--three-col > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .layout__row--three-col {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr;
    }

        .layout__row--three-col > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .layout__row--three-col {
        grid-template-columns: 1fr;
    }
}

.layout__row--four-col {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .layout__row--four-col > * {
        width: 15%;
    }

@media (max-width: 768px) {
    .layout__row--four-col > * {
        width: 100%;
    }
}

@supports (display: grid) {
    .layout__row--four-col {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

        .layout__row--four-col > * {
            margin: 0;
            width: 100%;
        }
}

@media only screen and (max-width: 768px) {
    .layout__row--four-col {
        grid-template-columns: 1fr;
    }
}

.layout__row--sidebar-left {
    display: grid;
    grid-template-columns: 300px 1fr;
    grid-gap: 30px;
}

@media only screen and (max-width: 1280px) {
    .layout__row--sidebar-left {
        grid-template-columns: 1fr;
        grid-gap: 15px;
    }
}

.layout__row--sidebar-right {
    display: block;
    display: flex;
    flex-wrap: wrap;
}

    .layout__row--sidebar-right > *:first-child {
        width: 70%;
    }

    .layout__row--sidebar-right > *:last-child {
        width: 300px;
    }

@supports (display: block) {
    .layout__row--sidebar-right {
        display: grid;
        grid-template-columns: 1fr 300px;
        grid-gap: 30px;
    }

        .layout__row--sidebar-right > *:first-child {
            width: 100%;
        }

        .layout__row--sidebar-right > *:last-child {
            width: 100%;
        }
}

@media only screen and (max-width: 1100px) {
    .layout__row--sidebar-right {
        grid-template-columns: 1fr;
        grid-gap: 15px;
    }
}

.layout__row--sidebar-leftright {
    grid-template-columns: auto 1fr auto;
}

.layout__row--margintop-15 {
    margin-top: 15px;
}

.layout__row--margintop-30 {
    margin-top: 30px;
}

.layout__row--margintop-50 {
    margin-top: 50px;
}

.layout__row--marginbottom-15 {
    margin-bottom: 15px;
}

.layout__row--marginbottom-30 {
    margin-bottom: 30px;
}

.layout__row--marginbottom-50 {
    margin-bottom: 50px;
}

.layout__row--paddingtop-15 {
    padding-top: 15px;
}

.layout__row--paddingtop-30 {
    padding-top: 30px;
}

.layout__row--paddingtop-50 {
    padding-top: 50px;
}

.layout__row--paddingbottom-15 {
    padding-bottom: 15px;
}

.layout__row--paddingbottom-30 {
    padding-bottom: 30px;
}

.layout__row--paddingbottom-50 {
    padding-bottom: 50px;
}

.layout__row--bordertop-light {
    border-top: 2px solid #efefef;
    border-top-color: var(--layout-row-border-color-light, #efefef);
}

.layout__row--borderbottom-light {
    border-bottom: 2px solid #efefef;
    border-bottom-color: var(--layout-row-border-color-light, #efefef);
}

.layout__row--bordertop-dark {
    border-top: 2px solid lightgrey;
    border-top-color: var(--layout-row-border-color-dark, lightgrey);
}

.layout__row--borderbottom-dark {
    border-bottom: 2px solid lightgrey;
    border-bottom-color: var(--layout-row-border-color-dark, lightgrey);
}

.layout__row--shaddowtop-light {
    box-shadow: 0px -5px 5px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px -5px 5px 0px var(--layout-row-shaddow-color-light, rgba(0, 0, 0, 0.1));
    margin-top: 10px;
}

.layout__row--shaddowbottom-light {
    box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 5px 5px 0px var(--layout-row-shaddow-color-light, rgba(0, 0, 0, 0.1));
    margin-bottom: 10px;
}

.layout__row--shaddowtopbottom-light {
    box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1), 0px -5px 5px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 5px 5px 0px var(--layout-row-shaddow-color-light, rgba(0, 0, 0, 0.1)), 0px -5px 5px 0px var(--layout-row-shaddow-color-light, rgba(0, 0, 0, 0.1));
    margin-bottom: 10px;
}

.layout__row--shaddowtop-dark {
    box-shadow: 0px -5px 5px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px -5px 5px 0px var(--layout-row-shaddow-color-dark, rgba(0, 0, 0, 0.2));
    margin-top: 10px;
}

.layout__row--shaddowbottom-dark {
    box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 5px 5px 0px var(--layout-row-shaddow-color-dark, rgba(0, 0, 0, 0.2));
    margin-bottom: 10px;
}

.layout__row--shaddowtopbottom-dark {
    box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2), 0px -5px 5px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 5px 5px 0px var(--layout-row-shaddow-color-dark, rgba(0, 0, 0, 0.2)), 0px -5px 5px 0px var(--layout-row-shaddow-color-dark, rgba(0, 0, 0, 0.2));
    margin-bottom: 10px;
}

.layout__row--background-light {
    background-color: whitesmoke;
    background-color: var(--layout-row-background-color-light, whitesmoke);
}

.layout__column--sidebarright-sidebar .layout__column--sectionwrapper {
    padding: 15px;
    max-width: 300px;
}

@media only screen and (max-width: 350px) {
    .layout__column--sidebarright-sidebar .layout__column--sectionwrapper {
        padding: 0;
    }
}

.department-list__heading {
    color: grey;
    color: var(--department-list-heading-font-color, grey);
    margin-bottom: 10px;
    margin-top: 0;
}

.department-list__card {
    height: auto;
    width: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
    box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.15);
    border-radius: 5px;
}

.department-list__img {
    height: auto;
    max-height: 150px;
    width: 150px;
    max-width: 100%;
    border-radius: 75px;
    margin: auto;
    display: block;
    object-fit: cover;
}

.department-list__top {
    padding: 15px;
    background-image: linear-gradient(135deg, white 0%, #dadada 100%);
    border-radius: 5px 5px 0 0;
    height: 275px;
}

.department-list__tile {
    padding: 10px;
    border: 2px solid #f1f1f1;
    border-color: var(--department-list-tile-border-color, #f1f1f1);
    margin: 0;
    margin-bottom: 0 !important;
    flex-direction: column !important;
}

.department-list__role {
    color: grey;
    color: var(--department-list-role-color, grey);
    margin-top: 0 !important;
    font-size: 1.5rem;
    margin: 0;
    display: block;
    text-align: center;
}

    .department-list__role:last-child {
        margin-bottom: 10px !important;
    }

.department-list__name {
    font-size: 1.8rem;
    font-weight: 600;
    margin: 10px 0 5px 0;
    text-align: center;
    display: inline-block;
    width: 100%;
}

.department-list__contact-info {
    margin-top: auto;
}

.department-list__contact-item {
    display: block;
    display: flex;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid whitesmoke;
    border-color: var(--department-list-contact-item-border-color, whitesmoke);
}

.department-list__contact-item--email {
    margin-top: auto;
}

.department-list__contact-item:last-child {
    border-bottom: 0;
}

.department-list__icon {
    color: grey;
    color: var(--department-list-icon-color, grey);
    font-size: 20px;
    margin-right: 10px;
}

.firmdepartmentnavheader {
    display: block;
    overflow: auto;
    background: #2f2f2f;
    background: var(--firm-department-nav-header-background-color, #2f2f2f);
    color: white;
    color: var(--firm-department-nav-header-font-color, white);
    white-space: nowrap;
    overflow: auto;
    max-width: 100vw;
}

.firmdepartmentnavheader__link {
    padding: 15px;
    display: inline-block;
    background-color: #2f2f2f;
    background-color: var(--firm-department-nav-header-link-background-color, #2f2f2f);
}

.footer-site {
    background-color: whitesmoke;
    background-color: var(--footer-background-color, whitesmoke);
    color: #383838;
    color: var(--footer-font-color, #383838);
    margin-top: 15px;
    margin-top: auto;
    text-align: center;
    position: absolute;
    position: sticky;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 23px;
    -webkit-user-select: none;
    user-select: none;
}

.footer-site__copyright {
    text-align: center;
    color: var(--footer-copyright-font-color);
    margin: 0;
    overflow: auto;
    white-space: nowrap;
}

.footer-site__content {
    margin-bottom: 15px;
}

    .footer-site__content span {
        display: block;
    }

    .footer-site__content:last-child {
        margin-bottom: 0;
    }

.footer-site__content-heading {
    font-weight: 600;
    font-size: 1.6rem;
}

.htmlbox {
    overflow-x: auto;
    font-size: 1.6rem;
    /*padding: 8px 24px;*/
    line-height: 1.7;
}

    .htmlbox p {
        /*max-width: 80ch;*/
        letter-spacing: 0.1px;
    }

    .htmlbox img {
        max-width: 100% !important;
        height: auto !important;
        vertical-align: top;
    }

    .htmlbox .layoutrow {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }

        .htmlbox .layoutrow > div {
            margin: 15px;
        }

    .htmlbox .layoutrow--align-left {
        justify-content: flex-start;
    }

    .htmlbox .layoutrow--col-100 > div {
        width: 100px;
    }

    .htmlbox .layoutrow--col-150 > div {
        width: 150px;
    }

    .htmlbox .layoutrow--col-200 > div {
        width: 200px;
    }

    .htmlbox .layoutrow--col-250 > div {
        width: 250px;
    }

    .htmlbox .layoutrow--col-300 > div {
        width: 300px;
    }

    .htmlbox .layoutrow--col-350 > div {
        width: 350px;
    }

    .htmlbox .layoutrow--col-400 > div {
        width: 400px;
    }

    .htmlbox .layoutrow--col-450 > div {
        width: 450px;
    }

    .htmlbox .layoutrow--col-500 > div {
        width: 500px;
    }

    .htmlbox .layoutrow--col-550 > div {
        width: 550px;
    }

    .htmlbox .layoutrow--col-600 > div {
        width: 600px;
    }

    .htmlbox .border {
        border: 1px solid whitesmoke;
        border: 1px solid var(--htmlbox-border-color, whitesmoke);
        border-radius: 5px;
        overflow: hidden;
    }

    .htmlbox a {
        color: #1a80b6;
        color: var(--htmlbox-link-font-color, #1a80b6);
        text-decoration: none;
    }

        .htmlbox a:hover {
            cursor: pointer;
            text-decoration: underline;
        }

        .htmlbox a[id]:not([href]) {
            color: inherit;
            cursor: initial;
            pointer-events: none;
            scroll-margin-top: 100px;
        }

            .htmlbox a[id]:not([href]):before {
                content: "";
                display: block;
                height: 75px;
                margin-top: -75px;
                visibility: hidden;
            }

@supports (scroll-margin-top: 100px) {
    .htmlbox a[id]:not([href]):before {
        content: unset;
        display: none;
        height: unset;
        margin-top: unset;
    }
}

.htmlbox a.button {
    padding: 10px 15px 10px 15px;
    background-color: whitesmoke;
    background-color: var(--htmlbox-button-background-color, whitesmoke);
    border: 1px solid lightgrey;
    border: 1px solid var(--htmlbox-button-border-color, lightgrey);
    border-radius: 5px;
    color: #545454;
    color: var(--htmlbox-button-font-color, #545454);
    text-decoration: none;
    display: inline-block;
    transition: 0.3s;
    margin-bottom: 15px;
}

    .htmlbox a.button:hover {
        cursor: pointer;
        background-color: lightgrey;
        background-color: var(--htmlbox-button-hover-background-color, lightgrey);
        transition: 0.3s;
    }

.htmlbox iframe {
    border: 0;
}

.htmlbox .panel {
    margin-bottom: 20px;
    background-color: white;
    background-color: var(--htmlbox-panel-background-color, white);
    border: 1px solid whitesmoke;
    border: 1px solid var(--htmlbox-panel-border-color, whitesmoke);
    border-radius: 5px;
}

.htmlbox .panel-info > .panel-heading {
    margin: 0;
    color: #545454;
    color: var(--htmlbox-panel-heading-font-color, #545454);
    background-color: whitesmoke;
    background-color: var(--htmlbox-panel-heading-background-color, whitesmoke);
    border-color: whitesmoke;
    border-color: var(--htmlbox-panel-heading-border-color, whitesmoke);
    padding: 10px 15px;
    border-bottom: 1px solid whitesmoke;
    border-bottom: 1px solid var(--htmlbox-panel-heading-border-bottom-color, whitesmoke);
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
}

.htmlbox .panel-body {
    padding: 15px;
}

.htmlbox .ml-auto {
    margin-left: auto;
}

.htmlbox .mr-auto {
    margin-right: auto;
}

.htmlbox .mrl-auto {
    margin-right: auto;
    margin-left: auto;
}

.htmlbox .margin-15 {
    margin: 15px;
}

.htmlbox .padding-15 {
    padding: 15px;
}

.htmlbox .pt-15 {
    padding-top: 15px;
}

.htmlbox .pr-15 {
    padding-right: 15px;
}

.htmlbox .pb-15 {
    padding-bottom: 15px;
}

.htmlbox .pl-15 {
    padding-left: 15px;
}

.htmlbox p {
    margin-top: 15px;
    margin-bottom: 15px;
}

.htmlbox .article-imagelist-image img {
    width: 100%;
    height: auto;
}

.article-imagelist-image img {
    width: 100%;
    height: auto;
}

.htmlbox-attachment-listheader {
    border-bottom: 2px solid grey;
    border-bottom: 2px solid var(--htmlbox-attachment-listheader-border-bottom-color, grey);
    display: inline-block;
    font-weight: 600;
    padding: 30px 0 10px 0;
    color: #333333;
    color: var(--htmlbox-attachment-listheader-font-color, #333333);
}

.herobanner {
    height: 350px;
}

.herobanner__image {
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}

@media only screen and (max-width: 576px) {
    .herobanner__image {
        height: 250px;
    }
}

.heroimage-parallax {
    height: 700px;
    width: 100vw;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.herobanner-cta {
    background-color: #cccccc;
    background-color: var(--herobanner-cta-background-color, #cccccc);
    height: 700px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.herobanner-cta__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.herobanner-cta__heading {
    font-size: 2.5rem;
}

.heroimage {
    position: relative;
    overflow: hidden;
}

.heroimage__overlay-container {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.heroimage__text {
    padding: 10px;
    margin: 10px;
    text-align: center;
}

.heroimage__text--text-1 {
    padding: 5px 10px;
    font-size: 2.5rem;
    font-weight: 600;
}

@media only screen and (max-width: 768px) {
    .heroimage__text--text-1 {
        font-size: 1.6rem;
        margin-bottom: 5px;
    }
}

.heroimage__text--text-2 {
    padding: 3px 10px;
    font-size: 1.4rem;
    max-width: 600px;
    margin-top: 0;
}

@media only screen and (max-width: 768px) {
    .heroimage__text--text-2 {
        font-size: 1.4rem;
    }
}

.hero-image-fixed {
    overflow: hidden;
    height: 500px;
    position: relative;
    display: flex;
}

@media only screen and (max-width: 1024px) {
    .hero-image-fixed {
        height: 300px;
    }
}

@media only screen and (max-width: 576px) {
    .hero-image-fixed {
        height: 200px;
    }
}

.hero-image-fixed__bg {
    background-position: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    width: 110%;
    filter: blur(15px);
    position: absolute;
    top: -10px;
    right: -10px;
    bottom: -10px;
    left: -10px;
    z-index: -1;
}

.hero-image-fixed__bg-main-container {
    overflow: visible;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
    box-shadow: 0 0 10px 0 var(--heroimage-box-shadow-color, rgba(0, 0, 0, 0.25));
    margin-bottom: 0;
}

@media only screen and (max-width: 1024px) {
    .hero-image-fixed__bg-main-container {
        padding: 0;
    }
}

.hero-image-fixed__bg-main {
    background-position: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 450px;
}

@media only screen and (max-width: 1024px) {
    .hero-image-fixed__bg-main {
        height: 300px;
    }
}

@media only screen and (max-width: 576px) {
    .hero-image-fixed__bg-main {
        height: 200px;
    }
}

.hero-image-fixed__overlay-text-container {
    color: white;
    color: var(--heroimage-overlay-text-container-font-color, white);
    background-color: #1abc9c;
    background-color: var(--heroimage-overlay-text-container-background-color, #1abc9c);
    padding: 15px;
    margin-top: auto;
    width: 100%;
}

.hero-image-fixed__overlay-text {
    margin: 0;
    font-size: 2rem;
    line-height: 2rem;
    color: white;
    color: var(--heroimage-overlay-text-font-color, white);
}

@media only screen and (max-width: 768px) {
    .zigzag-list--reverse-mobile {
        display: flex;
        flex-direction: column-reverse;
        margin-top: 15px;
        margin-bottom: 15px;
    }
}

.zigzag-list__image-container {
    display: flex;
    position: relative;
}

.zigzag-list__image {
    width: 100%;
    height: 450px;
    object-fit: cover;
}

@media only screen and (max-width: 768px) {
    .zigzag-list__image {
        object-fit: cover;
        max-height: 250px;
    }
}

.zigzag-list__image--right {
    object-position: 100% 0;
}

.zigzag-list__image--left {
    object-position: 0 100%;
}

.zigzag-list__image-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    border-bottom: 450px solid white;
    border-bottom-color: var(--datalist-zigzalist-imageoverlay-border-color, white);
    border-left: 100px solid transparent;
}

.zigzag-list__image-overlay--img-right {
    left: 0;
    right: auto;
    border-bottom: 0;
    border-left: 0;
    border-top: 450px solid white;
    border-top-color: var(--datalist-zigzalist-imageright-border-color, white);
    border-right: 100px solid transparent;
}

@media only screen and (max-width: 768px) {
    .zigzag-list__image-overlay {
        display: none;
    }
}

.zigzag-list__content-container {
    background-color: white;
    background-color: var(--datalist-zigzalist-contentcontainer-background-color, white);
    display: flex;
    flex-direction: column;
    height: 450px;
}

@media only screen and (max-width: 768px) {
    .zigzag-list__content-container {
        height: auto;
    }
}

.zigzag-list__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 10px 30px;
    height: 100%;
    overflow: auto;
    font-size: 1.6rem;
    line-height: 28px;
    letter-spacing: 1px;
}

@media only screen and (max-width: 768px) {
    .zigzag-list__content {
        padding: 15px;
    }
}

.zigzag-list__heading {
    margin: 0;
    margin-bottom: 10px;
    font-size: 3.5rem;
    font-weight: 300;
    color: #383838;
    color: var(--datalist-zigzalist-heading-color, #383838);
}

.zigzag-list__button {
    padding: 5px 10px;
    border: 1px solid gainsboro;
    border-color: var(--datalist-zigzalist-button-border-color, gainsboro);
    color: grey;
    color: var(--datalist-zigzalist-button-color, grey);
    transition: 0.2s;
    display: inline-block;
    margin-right: 10px;
}

    .zigzag-list__button:hover {
        transition: 0.2s;
    }

.zigzag-list-angle {
    margin: 15px;
    margin-bottom: 30px;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 768px) {
    .zigzag-list-angle {
        margin: 5px;
    }
}

@media only screen and (max-width: 768px) {
    .zigzag-list-angle--reverse-mobile {
        display: flex;
        flex-direction: column-reverse;
        margin-top: 15px;
        margin-bottom: 15px;
    }
}

.zigzag-list-angle__image-container {
    display: flex;
    position: relative;
}

.zigzag-list-angle__image {
    width: 100%;
    height: 450px;
    object-fit: cover;
}

@media only screen and (max-width: 768px) {
    .zigzag-list-angle__image {
        object-fit: cover;
        max-height: 250px;
    }
}

.zigzag-list-angle__image--right {
    object-position: 100% 0;
}

.zigzag-list-angle__image--left {
    object-position: 0 100%;
}

.zigzag-list-angle__image-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    border-bottom: 450px solid white;
    border-bottom-color: var(--datalist-zigzagangle-imageoverlay-border-color, white);
    border-left: 100px solid transparent;
}

.zigzag-list-angle__image-overlay--img-right {
    left: 0;
    right: auto;
    border-bottom: 0;
    border-left: 0;
    border-top: 450px solid white;
    border-top-color: var(--datalist-zigzagangle-imageright-border-color, white);
    border-right: 100px solid transparent;
}

@media only screen and (max-width: 768px) {
    .zigzag-list-angle__image-overlay {
        display: none;
    }
}

.zigzag-list-angle__content-container {
    background-color: white;
    background-color: var(--datalist-zigzagangle-contentcontainer-background-color, white);
    display: flex;
    flex-direction: column;
    height: 450px;
}

@media only screen and (max-width: 768px) {
    .zigzag-list-angle__content-container {
        height: auto;
    }
}

.zigzag-list-angle__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px 30px;
    height: 100%;
    font-size: 1.6rem;
    line-height: 28px;
    letter-spacing: 1px;
}

@media only screen and (max-width: 768px) {
    .zigzag-list-angle__content {
        padding: 15px;
    }
}

.zigzag-list-angle__content-inner {
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.zigzag-list-angle__body-text {
    height: 100%;
    overflow: auto;
}

    .zigzag-list-angle__body-text::-webkit-scrollbar {
        background-color: whitesmoke;
        height: 5px;
        width: 10px;
        border-radius: 50px;
    }

    .zigzag-list-angle__body-text::-webkit-scrollbar-thumb {
        background-color: lightgrey;
        border-radius: 10px;
    }

.zigzag-list-angle__heading {
    margin: 0;
    margin-bottom: 10px;
    font-size: 3.5rem;
    line-height: 4rem;
    font-weight: 300;
    color: #383838;
    color: var(--datalist-zigzagangle-heading-color, #383838);
}

.zigzag-list-angle__button {
    padding: 5px 10px;
    border: 1px solid gainsboro;
    border-color: var(--datalist-zigzagangle-button-border-color, gainsboro);
    color: grey;
    transition: 0.2s;
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 15px;
}

    .zigzag-list-angle__button:hover {
        transition: 0.2s;
    }

.image-modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    align-items: center;
    justify-content: center;
    max-height: 100vh;
    max-width: 100vw;
    background-color: rgba(0, 0, 0, 0.8);
    background-color: var(--modals-image-modal-background-color, rgba(0, 0, 0, 0.8));
    z-index: 10;
}

.image-modal__inner {
    position: relative;
    height: auto;
    max-width: 86%;
    max-height: 86vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.image-modal--show {
    display: flex;
}

.image-modal__image {
    height: auto;
    max-width: 100%;
    height: auto;
    max-height: 85vh;
    -webkit-user-select: none;
    user-select: none;
}

.image-modal__chevron-left {
    position: absolute;
    top: 45%;
    left: 40px;
    color: white;
    color: var(--modals-image-modal-chevron-left-font-color, white);
    font-size: 60px;
    margin-right: 30px;
    z-index: 10;
}

@media only screen and (max-width: 576px) {
    .image-modal__chevron-left {
        left: 5px;
        top: 47%;
        font-size: 40px;
    }
}

.image-modal__chevron-left:hover {
    cursor: pointer;
}

.image-modal__chevron-right {
    position: absolute;
    top: 45%;
    right: 40px;
    color: white;
    color: var(--modals-image-modal-chevron-right-font-color, white);
    font-size: 60px;
    margin-left: 30px;
    z-index: 10;
}

@media only screen and (max-width: 576px) {
    .image-modal__chevron-right {
        right: 5px;
        top: 47%;
        font-size: 40px;
    }
}

.image-modal__chevron-right:hover {
    cursor: pointer;
}

.image-modal__description {
    margin-top: 15px;
    color: white !important;
    color: var(--modals-image-modal-description-font-color, white) !important;
    margin: 0;
}

    .image-modal__description * {
        color: white !important;
        color: var(--modals-image-modal-description-font-color, white) !important;
    }

.image-modal__close-icon {
    position: absolute;
    top: 15px;
    right: 40px;
    color: white;
    color: var(--modals-image-modal-close-icon-font-color, white);
    font-size: 40px;
    margin-left: 30px;
}

@media only screen and (max-width: 576px) {
    .image-modal__close-icon {
        right: 15px;
        top: 10px;
        font-size: 40px;
    }
}

.image-modal__close-icon:hover {
    cursor: pointer;
}

.cta-box {
    display: inline-block;
    padding: 10px;
    transition: 0.3s;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}

    .cta-box:hover {
        transition: 0.3s;
        box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
    }

.cta-box__content-container {
    position: relative;
    height: 150px;
    max-width: 100%;
    background-color: whitesmoke;
    background-color: var(--datalist-ctabox-contentcontainer-background-color, whitesmoke);
}

@media only screen and (max-width: 576px) {
    .cta-box__content-container {
        height: 100px;
    }
}

.cta-box__heading {
    font-weight: 500;
    font-size: 1.8rem;
    background-color: whitesmoke;
    background-color: var(--datalist-ctabox-heading-background-color, whitesmoke);
    padding: 10px;
    color: #696969;
    color: var(--datalist-ctabox-heading-color, #696969);
    display: block;
    text-align: center;
    margin-top: 0;
    margin-bottom: 0;
}

.cta-box__image {
    background-color: whitesmoke;
    background-color: var(--datalist-ctabox-image-background-color, whitesmoke);
    width: 100%;
    height: 150px;
    object-fit: cover;
}

@media only screen and (max-width: 576px) {
    .cta-box__image {
        height: 100px;
    }
}

.cta-box__content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.cta-box__body {
    background-color: rgba(255, 255, 255, 0.9);
    background-color: var(--datalist-ctabox-body-background-color, rgba(255, 255, 255, 0.9));
    padding: 5px 10px 5px 10px;
    border-radius: 5px;
    font-size: 1.6rem;
    font-weight: 500;
    color: #2b2b2b;
    color: var(--datalist-ctabox-body-color, #2b2b2b);
}

.cta-box__button {
    background-color: rgba(255, 255, 255, 0.9);
    padding: 10px 15px 10px 15px;
    border-radius: 5px;
    display: block;
    font-weight: 500;
    letter-spacing: 1px;
    color: #424242;
    color: var(--datalist-ctabox-button-color, #424242);
    transition: 0.3s;
}

.panel-box {
    margin-bottom: 20px;
    background-color: white;
    background-color: var(--datalist-panelbox-background-color, white);
    border: 1px solid whitesmoke;
    border-color: var(--datalist-panelbox-border-color, whitesmoke);
    border-radius: 5px;
}

.panel-box__header {
    margin: 0;
    color: #545454;
    color: var(--datalist-panelbox-header-color, #545454);
    background-color: whitesmoke;
    background-color: var(--datalist-panelbox-header-background-color, whitesmoke);
    border-color: whitesmoke;
    border-color: var(--datalist-panelbox-header-border-color, whitesmoke);
}

.panel-box__heading {
    margin: 0;
    padding: 10px 15px;
}

.panel-box__image {
    max-width: 100%;
    height: auto;
    max-height: 217px;
    display: block;
    margin: auto;
}

.panel-box__content {
    padding: 10px;
}

.image-list {
    display: flex;
    flex-direction: column;
}

.image-list__container {
    display: grid;
    grid-template-columns: 300px 1fr;
    background-color: white;
    background-color: var(--datalist-imagelist-container-background-color, white);
    margin: 5px;
    margin-bottom: 15px;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}

    .image-list__container:last-child {
        margin-bottom: 5px;
    }

@media only screen and (max-width: 768px) {
    .image-list__container {
        grid-template-columns: 250px 1fr;
    }
}

@media only screen and (max-width: 576px) {
    .image-list__container {
        grid-template-columns: 1fr;
    }
}

.image-list__image {
    width: 300px;
    height: 220px;
    object-fit: cover;
    border-right: 1px solid #ececec;
    border-color: var(--datalist-imagelist-image-border-color, #ececec);
}

@media only screen and (max-width: 768px) {
    .image-list__image {
        width: 250px;
        height: 170px;
    }
}

@media only screen and (max-width: 576px) {
    .image-list__image {
        width: 100%;
        height: auto;
    }
}

.image-list__content-container {
    display: flex;
    flex-direction: column;
}

.image-list__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px 20px;
    height: 100%;
    overflow: auto;
    font-size: 1.6rem;
    line-height: 28px;
    letter-spacing: 1px;
}

@media only screen and (max-width: 768px) {
    .image-list__content {
        padding: 15px;
    }
}

.image-list__heading {
    margin: 0;
    margin-bottom: 10px;
    font-size: 3.5rem;
    font-weight: 300;
    color: #383838;
    color: var(--datalist-imagelist-heading-color, #383838);
}

.image-list__button {
    padding: 5px 10px;
    border: 1px solid gainsboro;
    border-color: var(--datalist-imagelist-button-border-color, gainsboro);
    color: grey;
    color: var(--datalist-imagelist-button-color, grey);
    transition: 0.2s;
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 15px;
}

    .image-list__button:hover {
        transition: 0.2s;
    }

.accordion {
    border-radius: 6px;
}

.accordion__header {
    display: flex;
    align-items: center;
    margin: 0;
    color: #545454;
    color: var(--datalist-accordion-header-color, #545454);
    background-color: whitesmoke;
    background-color: var(--datalist-accordion-header-background-color, whitesmoke);
    border-color: whitesmoke;
    border-color: var(--datalist-accordion-header-border-color, whitesmoke);
    padding: 10px 15px;
}

    .accordion__header:hover {
        cursor: pointer;
    }

.accordion__icon {
    margin-left: auto;
    font-size: 20px;
    transition: 0.2s;
}

.accordion__icon--open {
    transition: 0.2s;
    transform: rotate(45deg);
}

.accordion__icon--open-90 {
    transition: 0.2s;
    transform: rotate(90deg);
}

.accordion__heading {
    margin: 0;
    font-weight: 500;
    color: #636363;
    color: var(--datalist-accordion-heading-color, #636363);
}

.accordion__body {
    max-height: 0;
    transition: 0.4s;
    overflow: hidden;
}

.accordion__body--open {
    transition: 0.8s;
    max-height: 2000px;
}

.accordion__link {
    display: flex;
    justify-content: space-between;
    margin-top: auto;
    padding: 10px 15px;
    color: grey;
    color: var(--datalist-accordion-link-color, grey);
}

.accordion__image {
    max-width: 100%;
    height: auto;
    max-height: 217px;
    display: block;
    margin: auto;
}

.accordion__content {
    padding: 10px;
}

.datalist-card {
    margin-bottom: 20px;
    background-color: white;
    background-color: var(--datalist-card-background-color, white);
    border: 1px solid whitesmoke;
    border-color: var(--datalist-card-border-color, whitesmoke);
    border-radius: 5px;
    display: flex;
    flex-direction: column;
}

.datalist-card__header {
    padding: 15px;
}

.datalist-card__heading {
    margin: 0;
    padding: 10px 15px;
    text-align: center;
    font-size: 2rem;
}

.datalist-card__body {
    text-align: center;
}

.datalist-card__image {
    max-width: 100%;
    height: auto;
    max-height: 217px;
    display: block;
    margin: auto;
}

.datalist-card__content {
    padding: 10px;
}

.datalist-card__button {
    font-weight: 600;
    padding: 15px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: whitesmoke;
    background-color: var(--datalist-card-button-background-color, whitesmoke);
    transition: 0.2s;
}

    .datalist-card__button:last-child {
        border-radius: 0 0 5px 5px;
    }

    .datalist-card__button:hover > span {
        visibility: visible;
        transition: 0.4s;
        opacity: 1;
        max-width: 100%;
        max-height: 1.6rem;
    }

.datalist-card__button-text {
    transition: 0.4s;
    margin-right: 5px;
    font-size: 1.6rem;
    line-height: 1.6rem;
    visibility: hidden;
    opacity: 0;
    max-height: 1.6rem;
    overflow: hidden;
    max-width: 0;
}

@media only screen and (max-width: 768px) {
    .datalist-card__button-text {
        visibility: visible;
        transition: 0.4s;
        opacity: 1;
        max-width: 100%;
        max-height: 1.6rem;
    }
}

.datalist-card__icon {
    font-size: 20px;
}

.datalist-card__footer {
    margin-top: auto;
}

.section-title {
    border-bottom: 1px solid whitesmoke;
    border-bottom: 1px solid var(--section-title-border-bottom-color, whitesmoke);
    padding: 5px;
    padding-left: 0;
    margin-top: 0;
    margin-bottom: 0;
}

.documents-attachment {
    display: flex;
    padding: 10px;
    background-color: whitesmoke;
    background-color: var(--attachment-background-color, whitesmoke);
    align-items: center;
    border-radius: 5px;
}

.documents-attachment__listheader {
    border-bottom: 2px solid gray;
    border-color: var(--attachment-listheader-border-color, gray);
    font-weight: 600;
    padding: 20px 0 10px 0;
    color: #333333;
    color: var(--attachment-listheader-color, #333333);
    margin-bottom: 10px;
    display: inline-block;
}

.documents-attachment__link {
    display: flex;
    align-items: center;
    height: 100%;
    margin-right: 15px;
    color: #585858;
    color: var(--attachment-link-color, #585858);
    text-decoration: none;
}

    .documents-attachment__link :hover {
        text-decoration: none;
    }

.documents-attachment__icon {
    color: grey;
    color: var(--attachment-icon-font-color, grey);
    font-size: 22px;
    margin-right: 15px;
}

.org-footer {
    color: #383838;
    color: var(--footer-font-color, #383838);
    background-color: whitesmoke;
    background-color: var(--footer-background-color, whitesmoke);
    margin-top: 15px;
    margin-top: auto;
    text-align: center;
    padding: 15px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    border-top: 2px solid transparent;
    border-top-color: var(--footer-border-top-color, transparent);
}

@media only screen and (max-width: 576px) {
    .org-footer {
        flex-direction: column;
    }
}

.org-footer__copyright {
    text-align: center;
    color: var(--footer-copyright-font-color);
}

.org-footer__content {
    margin-right: 20px;
    margin-left: 20px;
    text-align: left;
    min-width: 150px;
}

@media only screen and (max-width: 576px) {
    .org-footer__content {
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 576px) {
    .org-footer__content--facebook {
        margin-left: 5px;
        margin-right: 5px;
    }
}

.org-footer__content span {
    display: block;
}

.org-footer__content-heading {
    font-weight: 600;
    font-size: 1.6rem;
    margin-top: 0;
    margin-bottom: 0;
    color: var(--footer-heading-color);
}

.sponsor-list {
    display: flex;
    flex-direction: column;
    margin-top: 15px;
    margin-bottom: 15px;
    background-color: whitesmoke;
    background-color: var(--sponsor-list-background-color, whitesmoke);
    flex-wrap: wrap;
}

.sponsor-list__heading {
    padding-top: 15px;
    text-align: center;
    color: grey;
    color: var(--sponsor-list-heading-font-color, grey);
    margin: 0;
    font-size: 2rem;
    line-height: 2rem;
    font-weight: 300;
}

.sponsor-list__inner-container {
    display: flex;
    align-items: center;
    flex-direction: row;
    padding: 15px;
    overflow: auto;
    max-width: 100vw;
    margin-left: auto;
    margin-right: auto;
}

.sponsor-list__sponsor {
    margin: 0 20px;
}

.sponsor-list__image {
    max-height: 150px;
    width: auto;
    max-width: 100%;
    margin-right: 15px;
    vertical-align: top;
}

.sponsor-list__image--carousel {
    max-width: 100%;
    height: auto;
}

.hidden {
    display: none;
}

@media only screen and (max-width: 576px) {
    .hidden-sm {
        display: none;
    }
}

.visible-sm {
    display: none;
}

@media only screen and (max-width: 576px) {
    .visible-sm {
        display: block;
    }
}

.tooltip {
    position: absolute;
    top: 42px;
    left: 0;
    z-index: 2;
    visibility: hidden;
    transition-delay: 0.5s;
    right: 100%;
    width: 0;
    height: auto;
    margin-top: -8px;
    overflow: hidden;
    color: white;
    color: var(--tooltip-font-color, white);
    background-color: rgba(0, 0, 0, 0.8);
    background-color: var(--tooltip-background-color, rgba(0, 0, 0, 0.8));
    border-radius: 5px;
}

    .tooltip * {
        color: white !important;
        color: var(--tooltip-font-color, white) !important;
        background-color: transparent !important;
    }

    .tooltip img {
        width: 100% !important;
        height: auto !important;
    }

    .tooltip:after {
        content: "";
        position: absolute;
        top: -8px;
        left: 15px;
        margin-left: -8px;
        width: 0;
        height: auto;
        border-bottom: 8px solid rgba(0, 0, 0, 0.8);
        border-bottom: 8px solid var(--tooltip-border-bottom-color, rgba(0, 0, 0, 0.8));
        border-right: 8px solid transparent;
        border-left: 8px solid transparent;
    }

.tooltip__heading {
    color: white;
    color: var(--tooltip-heading-font-color, white);
    margin: 0;
    margin-bottom: 10px;
}

.list-2-col {
    grid-gap: 0;
    grid-column-gap: 20px;
}

.list-2-col__item {
    border-bottom: 2px solid #b1b1b1;
    border-color: var(--datalist-list2col-item-border-color, #b1b1b1);
    padding: 10px;
    font-size: 1.6rem;
    font-weight: 600;
    color: #585858;
    color: var(--datalist-list2col-item-color, #585858);
    transition: 0.2s;
}

    .list-2-col__item:nth-child(-n+2) {
        border-top: 2px solid #b1b1b1;
        border-top-color: var(--datalist-list2col-item-border-color, #b1b1b1);
    }

@media only screen and (max-width: 576px) {
    .list-2-col__item:nth-child(-n+2) {
        border-top: 0;
    }
}

.list-2-col__item:hover {
    transition: 0.2s;
    background-color: #efefef;
    background-color: var(--datalist-list2col-item-hover-background-color, #efefef);
}

@media only screen and (max-width: 576px) {
    .list-2-col__item:first-child {
        border-top: 2px solid #b1b1b1;
        border-top-color: var(--datalist-list2col-item-border-color, #b1b1b1);
    }
}

.org-footer-1-col {
    border-top: 2px solid whitesmoke;
    border-top: 2px solid var(--org-footer-border-top-color, whitesmoke);
    padding: 20px 0;
}

.org-footer-1-col__content {
    max-width: 500px;
    margin: auto;
    text-align: center;
    padding-right: 20px;
    padding-left: 20px;
    text-align: left;
    min-width: 150px;
    text-align: center;
}

@media only screen and (max-width: 576px) {
    .org-footer-1-col__content {
        margin-bottom: 15px;
    }
}

.org-footer-1-col__content--facebook {
    margin-top: 20px;
}

@media only screen and (max-width: 576px) {
    .org-footer-1-col__content--facebook {
        margin-left: 5px;
        margin-right: 5px;
    }
}

.department-list-small__heading {
    color: grey;
    color: var(--department-list-heading-font-color, grey);
    margin-bottom: 10px;
    margin-top: 0;
}

.department-list-small__card {
    height: auto;
    width: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
    border-radius: 5px;
    border: 1px solid whitesmoke;
    border-collapse: var(--department-list-card-border-color, whitesmoke);
}

.department-list-small__img {
    height: auto;
    max-height: 50px;
    width: 50px;
    max-width: 100%;
    border-radius: 30px;
    display: block;
    object-fit: cover;
    margin-right: 10px;
}

.department-list-small__top {
    padding: 10px;
    background-image: linear-gradient(135deg, white 0%, #dadada 100%);
    border-radius: 5px 5px 0 0;
    display: flex;
    align-items: center;
}

.department-list-small__tile {
    padding: 10px;
    border: 2px solid #f1f1f1;
    border-collapse: var(--department-list-tile-border-color, #f1f1f1);
    margin: 0;
    margin-bottom: 0 !important;
    flex-direction: column !important;
}

.department-list-small__role {
    color: grey;
    margin-top: 0 !important;
    font-size: 1.5rem;
    margin: 0;
    display: block;
    text-align: center;
}

    .department-list-small__role:last-child {
        margin-bottom: 10px !important;
    }

.department-list-small__name {
    font-size: 1.6rem;
    font-weight: 600;
    margin: 0px 0 5px 0;
    text-align: center;
    display: inline-block;
    width: 100%;
}

    .department-list-small__name:last-child {
        margin-bottom: 0;
    }

.department-list-small__contact-info {
    margin-top: auto;
}

.department-list-small__contact-item {
    display: block;
    display: flex;
    align-items: center;
    padding: 10px;
    border-bottom: 1px solid whitesmoke;
    border-color: var(--department-list-contact-item-border-color, whitesmoke);
}

.department-list-small__contact-item--email {
    margin-top: auto;
}

.department-list-small__contact-item:last-child {
    border-bottom: 0;
}

.department-list-small__icon {
    color: grey;
    color: var(--department-list-icon-color, grey);
    font-size: 20px;
    margin-right: 10px;
}

.flip-card {
    margin: 0;
    position: relative;
    text-align: left;
    height: 100%;
}

.flip-card__inner {
    height: 100%;
    position: relative;
    top: 0;
    transform-style: preserve-3d;
    transition: transform 500ms;
    transition-delay: 100ms;
    width: 100%;
}

.flip-card__inner--rotate {
    transform: rotateY(180deg);
}

@media only screen and (max-width: 576px) {
    .flip-card__inner--rotate {
        transform: rotateY(0deg);
    }
}

.flip-card__front, .flip-card__back {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.flip-card__front {
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1;
}

.flip-card__back {
    -webkit-transform: rotateY(180deg);
    display: flex;
    flex-direction: column;
    transform: rotateY(180deg);
    z-index: 10;
}

.flip-card__modal {
    display: none;
}

@media only screen and (max-width: 576px) {
    .flip-card__modal {
        display: block;
    }
}

.shop-item-card {
    display: flex;
    flex-direction: column;
    border: 1px solid whitesmoke;
    border: 1px solid var(--shop-item-card-border-color, whitesmoke);
    transition: 0.2s;
    width: 100%;
    height: 100%;
}

    .shop-item-card:hover {
        transition: 0.2s;
        border: 1px solid lightgrey;
        border: 1px solid var(--shop-item-card-hover-border-color, lightgrey);
    }

.shop-item-card--back {
    background-color: white;
    background-color: var(--shop-item-card-back-background-color, white);
    padding: 10px;
}

    .shop-item-card--back:hover {
        border: 1px solid lightgrey;
        border: 1px solid var(--shop-item-card-back-hover-border-color, lightgrey);
    }

@media only screen and (max-width: 576px) {
    .shop-item-card {
        border: 0;
    }

        .shop-item-card:hover {
            border: 0;
        }
}

.shop-item-card__image-container {
    width: 100%;
    margin: 0;
    padding-top: 100%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    position: relative;
}

.shop-item-card__image {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: top;
}

.shop-item-card__heading {
    margin: 0;
    font-weight: 400;
    font-size: 1.8rem;
}

@media only screen and (max-width: 576px) {
    .shop-item-card__heading {
        font-size: 1.6rem;
    }
}

.shop-item-card__content {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 15px;
}

@media only screen and (max-width: 576px) {
    .shop-item-card__content {
        padding: 10px 0 0 0;
    }
}

.shop-item-card__list-price {
    font-size: 1.4rem;
    color: grey;
    color: var(--shop-item-card-list-price-font-color, grey);
    font-weight: 400;
    margin-left: 5px;
}

.shop-item-card__price-container {
    display: flex;
    margin-top: auto;
}

@media only screen and (max-width: 576px) {
    .shop-item-card__price-container {
        display: block;
    }
}

.shop-item-card__price {
    font-size: 1.7rem;
    font-weight: 500;
    margin: 0;
}

.shop-item-card__price--sale {
    color: #cc3939;
    color: var(--shop-item-card-price-sale-font-color, #cc3939);
}

.shop-item-card__price--member {
    color: grey;
    color: var(--shop-item-card-price-member-font-color, grey);
    margin: 0;
}

.shop-item-card__pipe {
    color: grey;
    color: var(--shop-item-card-pipe-font-color, grey);
}

.shop-item-card__button {
    display: inline-block;
    -webkit-user-select: none;
    user-select: none;
    font-size: 1.6rem;
    border: 0;
    margin-left: auto;
    margin-top: auto;
    padding: 10px;
    min-width: 70px;
    border-radius: 2px;
    transition: 0.2s;
    color: #4e4e4e;
    color: var(--shop-item-card-button-font-color, #4e4e4e);
    background-color: white;
    background-color: var(--shop-item-card-button-background-color, white);
    border-color: #eaeaea;
    border-color: var(--shop-item-card-button-border-color, #eaeaea);
}

    .shop-item-card__button:hover {
        transition: 0.2s;
        background-color: #eaeaea;
        background-color: var(--shop-item-card-button-hover-background-color, #eaeaea);
        cursor: pointer;
    }

@media only screen and (max-width: 576px) {
    .shop-item-card__button {
        width: 100%;
        margin-top: 10px;
    }
}

.shop-item-card__description {
    margin-bottom: 10px;
    font-size: 1.6rem;
}

.shop-item-card__link {
    font-size: 1.6rem;
    display: inline-block;
    margin-bottom: 10px;
    margin-left: 10px;
    text-decoration: underline;
}

.shop-item-card__variant {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid lightgrey;
    border: 1px solid var(--shop-item-card-variant-border-color, lightgrey);
    margin-top: 10px;
    background-color: white;
    background-color: var(--shop-item-card-variant-background-color, white);
    -webkit-appearance: none;
}

.shop-item-card__chevron {
    margin-left: auto;
    font-size: 25px;
    color: #9c9c9c;
    color: var(--shop-item-card-chevron-font-color, #9c9c9c);
}

.shop-item-description {
    margin-top: 15px;
    margin-bottom: 15px;
    display: grid;
    grid-template-columns: 6fr 6fr;
    grid-gap: 30px;
}

@media only screen and (max-width: 1024px) {
    .shop-item-description {
        grid-template-columns: 1fr 1fr;
    }
}

@media only screen and (max-width: 576px) {
    .shop-item-description {
        grid-template-columns: 1fr;
    }
}

.shop-item-description__images-container {
    display: grid;
    /*grid-template-columns: 70px 1fr;*/
    grid-template-columns: 1fr;
    grid-gap: 10px;
    /*@media only screen and ( max-width: $bp-lg ) {
      display: flex;
      flex-direction: column;
      flex-flow: column-reverse;
  }*/
}

.shop-item-description__images-container--one-col {
    grid-template-columns: 1fr;
}

.shop-item-description__images {
    width: 70px;
    min-width: 70px;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(100, calc(25% - 20px * 2));
    overflow-x: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: y mandatory;
    /*@media only screen and ( max-width: $bp-lg ) {*/
    /* margin-top: 10px;
      display: grid;
      grid-gap: 10px;
      grid-template-columns: 1fr 1fr 1fr 1fr;
      width: 100%;*/
    /*width: 100%;
      display: grid;
      grid-template-columns: repeat(100, calc(38% - 20px * 2));
      overflow-x: scroll;
      scroll-behavior: smooth;
      scroll-snap-type: y mandatory;
  }*/
}

@media only screen and (max-width: 1024px) {
    .shop-item-description__images {
        overflow: auto;
        grid-template-columns: repeat(100, calc(38% - 20px * 2));
    }
}

.shop-item-description__image-container {
    width: 100%;
    margin: 0;
    padding-top: 100%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    position: relative;
    margin-bottom: 10px;
}

@media only screen and (max-width: 1024px) {
    .shop-item-description__image-container {
        margin-bottom: 0;
        scroll-snap-align: start;
    }
}

.shop-item-description__image {
    border: 4px solid white;
    border: 4px solid var(--shop-item-description-image-border-color, white);
    transition: 0.2s;
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: top;
}

.shop-item-description__image--active {
    transition: 0.2s;
    border: 4px solid #383838;
    border: 4px solid var(--shop-item-description-image-active-border-color, #383838);
}

.shop-item-description__image:hover {
    transition: 0.2s;
    border: 4px solid #383838;
    border: 4px solid var(--shop-item-description-image-hover-border-color, #383838);
    cursor: pointer;
}

.shop-item-description__image-main-container {
    width: 100%;
    margin: 0;
    padding-top: 100%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    position: relative;
}

.shop-item-description__image-main {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: top;
}

.shop-item-description__navigate-icon {
    position: absolute;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    min-width: 50px;
    color: white;
    color: var(--shop-item-description-navigate-icon-font-color, white);
    font-size: 25px;
    transition: 0.2s;
    transition-delay: 0.3s;
    z-index: 1;
    background-color: transparent;
    border: 0;
    border-radius: 0;
}

.shop-item-description__navigate-icon--left {
    left: 0;
}

.shop-item-description__navigate-icon--right {
    right: 0;
}

.shop-item-description__navigate-icon:hover {
    transition: 0.2s;
    cursor: pointer;
    background-color: rgba(0, 0, 0, 0.3);
    background-color: var(--shop-item-description-navigate-icon-hover-background-color, rgba(0, 0, 0, 0.3));
}

.shop-item-description__heading {
    font-size: 3rem;
    font-weight: 300;
    margin: 0;
}

.shop-item-description__label {
    margin: 0;
    font-weight: 400;
    font-size: 1.6rem;
    color: #585858;
    color: var(--shop-item-description-label-font-color, #585858);
}

.shop-item-description__description {
    margin-top: 25px;
    margin-bottom: 10px;
}

.shop-item-description__description-heading {
    margin: 0;
    font-weight: 400;
    line-height: 1.6rem;
}

.shop-item-description__description-text {
    font-size: 1.6rem;
    /*white-space: pre-line;*/
}

    .shop-item-description__description-text a {
        text-decoration: revert;
        color: revert;
    }

.shop-item-description__price {
    margin-bottom: 10px;
}

.shop-item-description__size {
    margin-bottom: 10px;
}

.shop-item-description__select {
    margin-top: 5px;
    padding: 10px;
    border: 1px solid lightgrey;
    border: 1px solid var(--shop-item-description-select-border-color, lightgrey);
    border-radius: 3px;
    width: 100%;
    margin-bottom: 15px;
}

.shop-item-description__add-to-cart {
    width: 100%;
}

.shop-item-description__button {
    display: inline-block;
    font-weight: 400;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 2px solid transparent;
    padding: 10px;
    font-size: 1.6rem;
    line-height: 1.5;
    border-radius: 0.25rem;
    color: white;
    color: var(--shop-item-description-button-font-color, white);
    background-color: #3a3a3a;
    background-color: var(--shop-item-description-button-background-color, #3a3a3a);
    border-color: #3a3a3a;
    border-color: var(--shop-item-description-button-border-color, #3a3a3a);
    transition: 0.2s;
}

.shop-item-description__button--full-width {
    width: 100%;
}

.shop-item-description__button:hover {
    transition: 0.2s;
    cursor: pointer;
    color: #3a3a3a;
    color: var(--shop-item-description-button-hover-font-color, #3a3a3a);
    background-color: white;
    background-color: var(--shop-item-description-button-hover-background-color, white);
    border: 2px solid #3a3a3a;
    border: 2px solid var(--shop-item-description-button-hover-border-color, #3a3a3a);
}

.shop-item-description__button:disabled {
    cursor: context-menu;
    color: #888888;
    color: var(--shop-item-description-button-disabled-font-color, #888888);
    background-color: white;
    background-color: var(--shop-item-description-button-disabled-background-color, white);
    border: 2px solid #e2e2e2;
    border: 2px solid var(--shop-item-description-button-disabled-border-color, #e2e2e2);
}

.shop-cart {
    display: grid;
    grid-template-columns: 8fr 4fr;
    grid-column-gap: 20px;
    background-color: whitesmoke;
    background-color: var(--shop-cart-background-color, whitesmoke);
    padding: 20px;
    margin-top: 15px;
}

@media only screen and (max-width: 768px) {
    .shop-cart {
        grid-template-columns: 1fr;
        margin-top: 0;
        padding: 10px;
    }
}

.shop-cart--one-col {
    grid-template-columns: 1fr;
}

.shop-cart__text-section {
    margin-bottom: 15px;
}

    .shop-cart__text-section > p {
        font-size: 1.4rem;
        font-weight: 400;
        line-height: 1.8rem;
        margin: 0;
    }

        .shop-cart__text-section > p:first-child {
            font-weight: 500;
            font-size: 1.6rem;
            line-height: 2rem;
        }

.shop-cart__main-heading {
    margin: 0;
}

.shop-cart__items {
    background-color: white;
    background-color: var(--shop-cart-items-background-color, white);
}

@media only screen and (max-width: 768px) {
    .shop-cart__items {
        padding: 0;
    }
}

.shop-cart__item {
    position: relative;
    display: grid;
    grid-template-columns: 100px 1fr;
    grid-gap: 20px;
    border-bottom: 1px solid whitesmoke;
    border-bottom: 1px solid var(--shop-cart-item-border-bottom-color, whitesmoke);
    padding-top: 15px;
    padding-bottom: 15px;
}

    .shop-cart__item:first-child {
        margin-top: 0;
        padding-top: 0;
    }

    .shop-cart__item:last-child {
        border-bottom: 0;
        padding-bottom: 0;
    }

@media only screen and (max-width: 576px) {
    .shop-cart__item {
        grid-template-columns: 100px 1fr;
        grid-gap: 10px;
    }
}

.shop-cart__details {
    background-color: white;
    background-color: var(--shop-cart-details-background-color, white);
    padding: 15px;
    margin-bottom: 15px;
}

    .shop-cart__details:last-child {
        margin-bottom: 0;
    }

@media only screen and (max-width: 768px) {
    .shop-cart__details {
        padding: 10px;
    }
}

.shop-cart__details-heading {
    margin: 0;
    margin-bottom: 10px;
    font-weight: 500;
}

.shop-cart__image-container {
    width: 100%;
    margin: 0;
    padding-top: 100%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    position: relative;
}

.shop-cart__image {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: top;
}

.shop-cart__info {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 20px;
}

.shop-cart__info--1-col {
    grid-template-columns: 1fr;
}

@media only screen and (max-width: 576px) {
    .shop-cart__info {
        grid-template-columns: 1fr;
        grid-gap: 0;
        margin-bottom: 5px;
    }
}

.shop-cart__info2 {
    display: grid;
    margin-top: auto;
}

@media only screen and (max-width: 576px) {
    .shop-cart__info2 {
        grid-template-columns: 1fr;
    }
}

.shop-cart__button-white {
    display: block;
    width: 100%;
    border: 0;
    padding: 15px;
    margin-bottom: 15px;
    font-weight: 500;
    color: #585858;
    color: var(--shop-cart-button-white-font-color, #585858);
    background-color: white;
    background-color: var(--shop-cart-button-white-background-color, white);
}

    .shop-cart__button-white:hover {
        cursor: pointer;
    }

.shop-cart__actions {
    display: flex;
    flex-direction: column;
}

.shop-cart__select {
    width: 100%;
    padding: 10px;
    border: 1px solid lightgrey;
    border: 1px solid var(--shop-cart-select-border-color, lightgrey);
    border-radius: 3px;
}

.shop-cart__price {
    display: flex;
    flex-direction: column;
    text-align: right;
    font-size: 1.8rem;
}

@media only screen and (max-width: 576px) {
    .shop-cart__price {
        text-align: left;
    }
}

.shop-cart__variant {
    color: grey;
    color: var(--shop-cart-variant-font-color, grey);
    margin-bottom: 0;
    line-height: 1.6rem;
}

.shop-cart__savings {
    font-size: 1.2rem;
    border: 1px solid lightgrey;
    border: 1px solid var(--shop-cart-savings-border-color, lightgrey);
    padding: 2px 10px;
    /*margin-left: auto;*/
    border-radius: 15px;
    display: inline-block;
    /*margin-top: 5px;*/
    color: grey;
    color: var(--shop-cart-savings-font-color, grey);
    margin-top: 5px;
}

.shop-cart__button {
    min-width: 85px;
    padding: 5px;
}

@media only screen and (max-width: 576px) {
    .shop-cart__button {
        min-width: 40px;
        width: 40px;
        max-width: 40px;
    }
}

.shop-cart__button--remove {
    margin-top: 0;
    color: grey;
    color: var(--shop-cart-button-remove-font-color, grey);
    background-color: white;
    background-color: var(--shop-cart-button-remove-background-color, white);
    border: 1px solid #eaeaea;
    border: 1px solid var(--shop-cart-button-remove-border-color, #eaeaea);
    margin-left: auto;
    min-width: 55px;
    width: 55px;
    max-width: 55px;
}

    .shop-cart__button--remove:hover {
        cursor: pointer;
    }

@media only screen and (max-width: 576px) {
    .shop-cart__button--remove {
        min-width: 40px;
        width: 40px;
        max-width: 40px;
    }
}

.shop-cart__button--margin-right {
    margin-right: 15px;
}

@media only screen and (max-width: 576px) {
    .shop-cart__button--margin-right {
        margin-right: 10px;
    }
}

.shop-cart__button--buy {
    font-size: 1.6rem;
    width: 100%;
    color: white;
    color: var(--shop-cart-button-buy-font-color, white);
    background-color: #3a3a3a;
    background-color: var(--shop-cart-button-buy-background-color, #3a3a3a);
    border: 1px solid #3a3a3a;
    border: 1px solid var(--shop-cart-button-buy-border-color, #3a3a3a);
    transition: 0.2s;
}

    .shop-cart__button--buy:hover {
        transition: 0.2s;
        cursor: pointer;
        background-color: #545454;
        background-color: var(--shop-cart-button-buy-hover-background-color, #545454);
        border: 1px solid #545454;
        border: 1px solid var(--shop-cart-button-buy-hover-border-color, #545454);
    }

.shop-cart__button-text {
    display: inline-block;
    margin-left: 5px;
}

@media only screen and (max-width: 576px) {
    .shop-cart__button-text--hidden-sm {
        display: none;
    }
}

.shop-cart__payment {
    display: flex;
    color: grey;
    color: var(--shop-cart-payment-font-color, grey);
    margin-bottom: 10px;
}

.shop-cart__payment--right {
    display: inline-block;
    margin-left: auto;
}

.shop-cart__payment--total {
    font-size: 1.6rem;
    font-weight: 500;
    color: #545454;
    color: var(--shop-cart-payment-total-font-color, #545454);
    border-bottom: 1px solid whitesmoke;
    border-bottom: 1px solid var(--shop-cart-payment-total-border-bottom-color, whitesmoke);
    padding-bottom: 10px;
}

.shop-cart__payment-button {
    margin-bottom: 15px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 500;
    margin-bottom: 15px;
    min-height: 45px;
    border: 2px solid;
    white-space: nowrap;
}

.shop-cart__payment-button--vipps {
    color: white;
    color: var(--shop-cart-payment-button-vipps-font-color, white);
    background-color: #ff5b24;
    background-color: var(--shop-cart-payment-button-vipps-background-color, #ff5b24);
    border-color: #ff5b24;
    border-color: var(--shop-cart-payment-button-vipps-border-color, #ff5b24);
}

    .shop-cart__payment-button--vipps:disabled {
        background-color: #ff9c7b;
        background-color: var(--shop-cart-payment-button-vipps-disabled-background-color, #ff9c7b);
        border-color: #ff9c7b;
        border-color: var(--shop-cart-payment-button-vipps-disabled-border-color, #ff9c7b);
    }

.shop-cart__payment-button--dark {
    color: white;
    color: var(--shop-cart-payment-button-dark-font-color, white);
    background-color: #3a3a3a;
    background-color: var(--shop-cart-payment-button-dark-background-color, #3a3a3a);
    border-color: #3a3a3a;
    border-color: var(--shop-cart-payment-button-dark-border-color, #3a3a3a);
    transition: 0.2s;
}

    .shop-cart__payment-button--dark:hover {
        transition: 0.2s;
        cursor: pointer;
        color: #3a3a3a;
        color: var(--shop-cart-payment-button-dark-hover-font-color, #3a3a3a);
        background-color: white;
        background-color: var(--shop-cart-payment-button-dark-hover-background-color, white);
        border-color: #3a3a3a;
        border-color: var(--shop-cart-payment-button-dark-hover-border-color, #3a3a3a);
    }

    .shop-cart__payment-button--dark:disabled {
        color: white;
        color: var(--shop-cart-payment-button-dark-disabled-font-color, white);
        background-color: #bbbbbb;
        background-color: var(--shop-cart-payment-button-dark-disabled-background-color, #bbbbbb);
        border-color: #bbbbbb;
        border-color: var(--shop-cart-payment-button-dark-disabled-border-color, #bbbbbb);
    }

.shop-cart__payment-button--small {
    font-size: small;
    width: auto;
}

.shop-cart__payment-button:hover {
    cursor: pointer;
}

.shop-cart__payment-button:disabled {
    cursor: context-menu;
}

.shop-cart__payment-button:last-child {
    margin-bottom: 0;
}

.shop-cart__logo {
    height: 30px;
    width: auto;
    margin-right: 10px;
}

.shop-cart__form {
    display: flex;
}

.shop-cart__form-loading {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    color: dimgrey;
    color: var(--shop-cart-form-loading-font-color, dimgrey);
    background-color: rgba(255, 255, 255, 0.5);
    background-color: var(--shop-cart-form-loading-background-color, rgba(255, 255, 255, 0.5));
    align-items: center;
    justify-content: center;
    font-size: 40px;
}

.shop-cart-small {
    display: flex;
}

.shop-cart-small__icon-container {
    text-align: center;
    -webkit-user-select: none;
    user-select: none;
    position: relative;
    margin-left: 15px;
    padding: 10px;
    color: #909090;
    color: var(--shop-cart-small-icon-container-font-color, #909090);
    transition: 0.2s;
    border-bottom: 1px solid white;
    border-bottom: 1px solid var(--shop-cart-small-icon-container-border-bottom-color, white);
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid transparent;
    border-radius: 0;
    font-size: 1.4rem;
}

    .shop-cart-small__icon-container:hover {
        transition: 0.2s;
        color: #383838;
        color: var(--shop-cart-small-icon-container-hover-font-color, #383838);
        cursor: pointer;
    }

.shop-cart-small__cart-amt {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 5px;
    top: 0px;
    border-radius: 100%;
    padding: 1px 3px;
    font-size: 1.1rem;
    font-weight: 500;
    min-width: 18px;
    width: 18px;
    max-width: 18px;
    min-height: 18px;
    height: 18px;
    max-height: 18px;
    color: white;
    color: var(--shop-cart-small-cart-amt-font-color, white);
    background-color: #007bff;
    background-color: var(--shop-cart-small-cart-amt-background-color, #007bff);
    border-color: #007bff;
    border-color: var(--shop-cart-small-cart-amt-border-color, #007bff);
    line-height: 0;
}

.shop-cart-small__cart {
    position: absolute;
    bottom: 0;
}

.shop-categories {
    width: 200px;
    min-width: 200px;
    margin-right: 15px;
}

@media only screen and (max-width: 1024px) {
    .shop-categories {
        width: 150px;
        min-width: 150px;
    }
}

@media only screen and (max-width: 768px) {
    .shop-categories {
        display: none;
    }
}

.shop-categories__heading {
    margin: 0;
    margin-bottom: 5px;
    font-weight: 400;
}

.shop-categories__list {
    font-weight: 300;
}

.shop-categories__item {
    margin-right: 30px;
    display: inline-block;
    font-size: 1.6rem;
    border-bottom: 1px solid white;
    border-bottom: 1px solid var(--shop-categories-item-border-bottom-color, white);
    font-weight: 400;
    color: #464646;
    color: var(--shop-categories-item-font-color, #464646);
    transition: 0.2s;
    padding-bottom: 5px;
}

    .shop-categories__item:hover {
        transition: 0.2s;
        border-bottom: 1px solid #a5a5a5;
        border-bottom: 1px solid var(--shop-categories-item-hover-border-bottom-color, #a5a5a5);
    }

@media only screen and (max-width: 576px) {
    .shop-categories__item {
        margin-right: 15px;
    }
}

.shop-categories__item-amt {
    margin-left: auto;
}

.shop-amt-picker {
    display: flex;
    margin-bottom: 10px;
    width: 100%;
    margin-bottom: 0;
    /* Firefox */
}

    .shop-amt-picker input::-webkit-outer-spin-button,
    .shop-amt-picker input::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }

    .shop-amt-picker input[type=number] {
        -moz-appearance: textfield;
    }

.shop-amt-picker__itterate {
    width: 20%;
    min-width: 20%;
    height: 100%;
    min-height: 100%;
    color: #444;
    color: var(--shop-amt-picker-itterate-font-color, #444);
    background-color: whitesmoke;
    background-color: var(--shop-amt-picker-itterate-background-color, whitesmoke);
    border: 1px solid lightgrey;
    border: 1px solid var(--, lightgrey);
    border-radius: 0;
}

    .shop-amt-picker__itterate:hover {
        cursor: pointer;
    }

@media only screen and (max-width: 576px) {
    .shop-amt-picker__itterate {
        width: 30%;
        min-width: 30%;
    }
}

.shop-amt-picker__input {
    height: 100%;
    min-height: 100%;
    width: 60%;
    min-width: 60%;
    background-color: white;
    background-color: var(--shop-amt-picker-input-background-color, white);
    font-weight: 500;
    font-size: 2rem;
    border: 0;
    border-top: 1px solid lightgrey;
    border-top: 1px solid var(--shop-amt-picker-input-border-color, lightgrey);
    border-bottom: 1px solid lightgrey;
    border-bottom: 1px solid var(--shop-amt-picker-input-border-color, lightgrey);
    text-align: center;
    -moz-appearance: none;
    -webkit-appearance: none;
}

@media only screen and (max-width: 576px) {
    .shop-amt-picker__input {
        width: 40%;
        min-width: 40%;
    }
}

.shop-nav {
    display: flex;
    width: 100%;
    margin-top: 10px;
    align-items: center;
}

.donate-card {
    display: flex;
    flex-direction: column;
    transition: 0.3s;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0px 0px 40px #00000015;
}

.donate-card:hover {
    transform: translateY(-5px);
    box-shadow: 0px 7px 30px #00000030;
}

.donate-card:hover .donate-card__link {
    transition: 0.2s;
    background-color: #1abc9c;
    background-color: var(--donatecard-link-hover-background-color, #1abc9c);
    color: white;
    color: var(--donatecard-link-hover-color, white);
}

.donate-card__img-container {
    width: 100%;
    margin: 0;
    padding-top: 66%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    position: relative;
}

.donate-card__img {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: top;
}

.donate-card__body {
    display: flex;
    flex-direction: column;
    padding: 10px;
    height: 100%;
    position: relative;
}

.donate-card__heading {
    font-size: 2rem;
    font-weight: 300;
    line-height: 2rem;
    margin-bottom: 15px;
    margin-top: 10px;
    text-align: center;
}

.donate-card__link {
    padding: 10px;
    background-color: white;
    background-color: var(--donatecard-link-background-color, white);
    color: #1abc9c;
    color: var(--donatecard-link-color, #1abc9c);
    border: 1px solid #1abc9c;
    border-color: var(--donatecard-link-border-color, #1abc9c);
    font-weight: 500;
    border-radius: 3px;
    width: 100%;
    display: inline-block;
    text-align: center;
    margin: 0;
    transition: 0.2s;
    user-select: none;
    border-radius: 8px;
}

.donate-card__text {
    margin-top: 10px;
    font-size: 1.6rem;
    line-height: 30px;
}

.donate-card__icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    height: 40px;
    width: 40px;
    border-radius: 20px;
    background-color: white;
    background-color: var(--donatecard-icon-container-background-color, white);
    position: absolute;
    top: -20px;
    left: 40%;
}

.donate-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    width: 30px;
    border-radius: 15px;
    background-color: #cef0fb;
    background-color: var(--donatecard-icon-background-color, #cef0fb);
    color: #4F717C;
    color: var(--donatecard-icon-color, #4F717C);
}

.donation-options-vertical {
    padding: 20px;
    margin-top: 15px;
    margin-left: 5px;
    border: 2px dashed rgba(0, 123, 255, 0.3);
    border-color: var(--donate-options-border-color, rgba(0, 123, 255, 0.3));
}

.donation-options-vertical__label {
    font-size: 1.8rem;
    font-weight: 500;
    margin-right: 5px;
    margin-bottom: 10px;
    display: block;
    text-align: center;
}

.donation-options-vertical__input {
    padding: 10px;
    border: 1px solid lightgrey;
    border-color: var(--donate-options-input-border-color, lightgrey);
    background-color: white;
    background-color: var(--donate-options-input-background-color, white);
    text-align: center;
    font-weight: 500;
    font-size: 1.8rem;
    max-width: 120px;
    width: 120px;
    margin-left: auto;
    background-color: white;
    background-color: var(--donate-options-input-background-color, white);
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.donation-options-vertical__button {
    width: 100%;
    margin-top: 15px;
    font-weight: 500;
    font-size: 1.6rem;
    text-align: center;
    color: #fff;
    background-color: #007bff;
    background-color: var(--donate-options-button-background-color, #007bff);
    border-color: #007bff;
    border-color: var(--donate-options-button-background-color, #007bff);
}

    .donation-options-vertical__button:hover {
        color: white;
        color: var(--donate-options-button-hover-color, white);
        background-color: #0069d9;
        background-color: var(--donate-options-button-hover-background-color, #0069d9);
        border-color: #0062cc;
        border-color: var(--donate-options-button-hover-border-color, #0062cc);
    }

.donation-options-horizontal {
    padding: 20px;
    margin: 15px 0 0 0;
    display: flex;
    border: 2px dashed rgba(0, 123, 255, 0.3);
    border-color: var(--donate-options-border-color, rgba(0, 123, 255, 0.3));
}

@media only screen and (max-width: 576px) {
    .donation-options-horizontal {
        flex-direction: column;
    }
}

.donation-options-horizontal__label {
    font-size: 1.6rem;
    margin-right: 5px;
    display: flex;
    margin-bottom: 15px;
}

.donation-options-horizontal__input {
    padding: 10px;
    border: 1px solid lightgrey;
    border-color: var(--donate-options-input-border-color, lightgrey);
    text-align: center;
    font-weight: 500;
    font-size: 1.8rem;
    max-width: 120px;
    margin-left: auto;
    background-color: white;
    background-color: var(--donate-options-input-background-color, white);
}

.donation-options-horizontal__button-container {
    margin: auto;
    margin-right: 0;
}

@media only screen and (max-width: 576px) {
    .donation-options-horizontal__button-container {
        margin: 0;
        margin-top: 10px;
    }
}

.donation-options-horizontal__button {
    width: 100%;
    min-width: 150px;
    padding: 15px;
    font-weight: 500;
    font-size: 1.6rem;
    align-items: center;
    color: #fff;
    background-color: #007bff;
    background-color: var(--donate-options-button-background-color, #007bff);
    border-color: #007bff;
    border-color: var(--donate-options-button-background-color, #007bff);
}

    .donation-options-horizontal__button:hover {
        color: white;
        color: var(--donate-options-button-hover-color, white);
        background-color: #0069d9;
        background-color: var(--donate-options-button-hover-background-color, #0069d9);
        border-color: #0062cc;
        border-color: var(--donate-options-button-hover-border-color, #0062cc);
    }

@media only screen and (max-width: 576px) {
    .donation-options-horizontal__button {
        flex-direction: column;
    }
}

.donate-project__heading {
    margin-top: 10px;
    font-size: 3rem;
    font-weight: 300;
    line-height: 3rem;
}

.donate-project__text {
    margin-top: 10px;
    font-size: 1.6rem;
    line-height: 30px;
    position: relative;
}

.donate-wizard {
    display: block;
}

.donate-wizard__heading {
    margin-bottom: 10px;
    font-size: 1.8rem;
    line-height: 2rem;
    font-weight: 300;
}

.donate-wizard__heading--large {
    font-size: 4rem;
    line-height: 4.5rem;
    font-weight: 300;
    margin-top: 60px;
    margin-bottom: 15px;
}

.donate-wizard__heading--medium {
    margin: 0;
    font-weight: 300;
    font-size: 2.5rem;
    line-height: 3rem;
}

.donate-wizard__heading--small {
    font-size: 1.6rem;
    line-height: 1.8rem;
    font-weight: 500;
    color: #4f4f4f;
    color: var(--donate-wizard-heading-small-color, #4f4f4f);
    margin: 0;
    margin-top: 5px;
}

.donate-wizard__label {
    display: block;
    margin-top: 30px;
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: 300;
}

.donate-wizard__step-container {
    display: flex;
    align-items: center;
}

.donate-wizard__step {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}

.donate-wizard__step-icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    color: grey;
    border: 1px solid lightgrey;
    border-color: var(--donate-wizard-stepicon-border-color, lightgrey);
    border-radius: 25px;
    font-size: 20px;
}

.donate-wizard__step-icon-container--active {
    border: 2px solid #bee5eb;
    border-color: var(--donate-wizard-stepicon-active-border-color, #bee5eb);
    color: #007bff;
    color: #0c5460;
    color: var(--donate-wizard-stepicon-active-color, #0c5460);
    background-color: #d1ecf1;
    background-color: var(--donate-wizard-stepicon-active-background-color, #d1ecf1);
    border-color: #bee5eb;
    border-color: var(--donate-wizard-stepicon-active-border-color, #bee5eb);
}

.donate-wizard__step-text {
    color: grey;
    color: var(--donate-wizard-steptext-color, grey);
    margin: 0;
    font-size: 1.6rem;
    white-space: nowrap;
    position: absolute;
    bottom: -25px;
    font-weight: 400;
}

.donate-wizard__step-text--active {
    font-weight: 500;
    color: #0c5460;
    color: var(--donate-wizard-steptext-active-color, #0c5460);
}

.donate-wizard__border-line {
    width: 100%;
    height: 1px;
    background-color: lightgrey;
    background-color: var(--donate-wizard-borderline-background-color, lightgrey);
}

.donate-wizard__border-line--active {
    height: 2px;
    background-color: #bee5eb;
    background-color: var(--donate-wizard-borderline-active-background-color, #bee5eb);
}

.donate-wizard__button-container {
    display: flex;
    border: 1px solid #bee5eb;
    border-color: var(--donate-wizard-button-container-border-color, #bee5eb);
    margin-top: 60px;
}

.donate-wizard__button {
    border: 0;
    padding: 10px;
    background-color: white;
    background-color: var(--donate-wizard-button-background-color, white);
    width: 100%;
    color: grey;
    color: var(--donate-wizard-button-color, grey);
    transition: 0.2s;
    user-select: none;
    border-radius: 0;
    text-align: center;
}

.donate-wizard__button--center {
    border-right: 1px solid #bee5eb;
    border-right-color: var(--donate-wizard-button-center-border-color, #bee5eb);
    border-left: 1px solid #bee5eb;
    border-left-color: var(--donate-wizard-button-center-border-color, #bee5eb);
}

.donate-wizard__button--active {
    color: #0c5460;
    color: var(--donate-wizard-button-active-color, #0c5460);
    background-color: #d1ecf1;
    background-color: var(--donate-wizard-button-active-background-color, donate-wizard-button-active-background-color);
    border-color: #bee5eb;
    border-color: var(--donate-wizard-button-active-border-color, #bee5eb);
    font-weight: 500;
}

.donate-wizard__button:hover {
    transition: 0.2s;
    cursor: pointer;
    color: #0c5460;
    color: var(--donate-wizard-button-hover-color, #0c5460);
    background-color: var(--donate-wizard-button-hover-background-color, #d1ecf1);
}

.donate-wizard__button-link {
    padding: 0;
    margin-top: 15px;
    border: 0;
    background-color: transparent;
    background-color: var(--donate-wizard-button-link-background-color, transparent);
    color: #1a80b6;
    color: var(--donate-wizard-button-link-color, #1a80b6);
    transition: 0.2s;
}

    .donate-wizard__button-link:hover {
        transition: 0.2s;
        cursor: pointer;
        text-decoration: underline;
    }

.donate-wizard__input-container {
    display: flex;
}

    .donate-wizard__input-container input {
        font-weight: 500;
        background-color: whitesmoke;
        background-color: var(--donate-wizard-input-background-color, whitesmoke);
    }

.donate-wizard__input {
    margin-right: 15px;
    font-size: 1.4rem;
}

    .donate-wizard__input:last-child {
        margin-right: 0;
    }

.donate-wizard__select {
    border: 1px solid lightgrey;
    border-color: var(--donate-wizard-select-border-color, lightgrey);
    padding: 10px;
    font-weight: 500;
    font-size: 1.6rem;
}

.donate-wizard__button-pay-container {
    display: flex;
}

.donate-wizard__button-pay {
    width: 100%;
    margin-right: 15px;
    padding: 10px;
    border-radius: 50px;
    border: 1px solid #bee5eb;
    border-color: var(--donate-wizard-button-pay-border-color, #bee5eb);
    background-color: white;
    background-color: var(--donate-wizard-button-pay-background-color, white);
    transition: 0.2s;
    color: grey;
    text-align: center;
}

.donate-wizard__button-pay--active {
    color: #0c5460;
    color: var(--donate-wizard-button-pay-active-color, #0c5460);
    background-color: #d1ecf1;
    background-color: var(--donate-wizard-button-pay-active-background-color, #d1ecf1);
    font-weight: 500;
    border: 1px solid #bee5eb;
    border-color: var(--donate-wizard-button-pay-active-border-color, #bee5eb);
}

.donate-wizard__button-pay:last-child {
    margin-right: 0;
}

.donate-wizard__button-pay:hover {
    transition: 0.2s;
    cursor: pointer;
    color: #0c5460;
    color: var(--donate-wizard-button-pay-hover-color, #0c5460);
    background-color: #d1ecf1;
    background-color: var(--donate-wizard-button-pay-hover-background-color, #d1ecf1);
}

.donate-wizard__button-next {
    padding: 10px;
    border: 1px solid #bee5eb;
    border-color: var(--donate-wizard-button-next-border-color, #bee5eb);
    transition: 0.2s;
    margin-left: auto;
    min-width: 100px;
    font-size: 1.6rem;
    font-weight: 400;
    transition: 0.2s;
    color: white;
    color: var(--donate-wizard-button-next-color, white);
    background-color: #d1ecf1;
    background-color: var(--donate-wizard-button-next-background-color, #d1ecf1);
    text-align: center;
    user-select: none;
}

    .donate-wizard__button-next:hover {
        transition: 0.2s;
        cursor: pointer;
        background-color: white;
        background-color: var(--donate-wizard-button-next-hover-color, white);
        border-color: #bee5eb;
        border-color: var(--donate-wizard-button-next-hover-background-color, #bee5eb);
    }

.donate-wizard__button-previous {
    padding: 10px;
    border: 1px solid lightgrey;
    border-color: var(--donate-wizard-button-previous-border-color, lightgrey);
    transition: 0.2s;
    min-width: 100px;
    font-size: 1.6rem;
    font-weight: 400;
    transition: 0.2s;
    color: grey;
    background-color: white;
    background-color: var(--donate-wizard-button-previous-background-color, white);
    text-align: center;
    user-select: none;
}

    .donate-wizard__button-previous:hover {
        transition: 0.2s;
        cursor: pointer;
    }

.donate-wizard__button-light {
    padding: 15px;
    border: 1px solid lightgrey;
    border-color: var(--donate-wizard-button-light-border-color, lightgrey);
    color: grey;
    color: var(--donate-wizard-button-light-color, grey);
    background-color: white;
    background-color: var(--donate-wizard-button-light-background-color, white);
    margin-left: 15px;
}

    .donate-wizard__button-light:hover {
        cursor: pointer;
    }

.donate-wizard__payment-method {
    width: 100%;
    padding: 10px;
    background-color: #e6e6e6;
    background-color: var(--donate-wizard-button-payment-method-border-color, #e6e6e6);
    border: 1px solid #e6e6e6;
    border-color: var(--donate-wizard-button-payment-method-border-color, #e6e6e6);
    display: flex;
    align-items: center;
    user-select: none;
    color: #505050;
    color: var(--donate-wizard-button-payment-method-color, #505050);
    transition: 0.2s;
}

    .donate-wizard__payment-method:hover {
        cursor: pointer;
        transition: 0.2s;
        color: #0c5460;
        color: var(--donate-wizard-button-payment-method-hover-color, #0c5460);
        background-color: #d1ecf1;
        background-color: var(--donate-wizard-button-payment-method-hover-background-color, #d1ecf1);
        border-color: #bee5eb;
        border-color: var(--donate-wizard-button-payment-method-hover-border-color, #bee5eb);
    }

.donate-wizard__payment-method--dark {
    border-color: #a0a0a0;
    border-color: var(--donate-wizard-button-payment-method-dark-border-color, #a0a0a0);
}

    .donate-wizard__payment-method--dark:hover {
        background-color: lightgrey;
        background-color: var(--donate-wizard-button-payment-method-dark-hover-background-color, lightgrey);
        border-color: lightgrey;
        border-color: var(--donate-wizard-button-payment-method-dark-hover-border-color, lightgrey);
        color: #101010;
        color: var(--donate-wizard-button-payment-method-dark-hover-color, #101010);
    }

.donate-wizard__payment-method-image-container {
    display: flex;
    align-items: center;
    height: 40px;
    max-width: 70px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.donate-wizard__payment-method-image {
    max-height: 35px;
    width: auto;
    max-width: 100%;
}

.donate-wizard__payment-method-icon {
    font-size: 25px;
}

.donate-wizard__payment-method-type-text {
    margin-bottom: 0;
    margin-left: 10px;
    font-size: 1.6rem;
    font-weight: 500;
}

.donate-wizard__payment-method-radio-container {
    height: 20px;
    width: 20px;
    background-color: #101010;
    background-color: var(--donate-wizard-button-payment-method-radio-container-background-color, #101010);
}

.donate-wizard__amt-input {
    width: 150px;
    padding: 10px;
    font-size: 2rem;
    font-weight: 500;
    border: 2px solid #bee5eb;
    border-color: var(--donate-wizard-button-payment-method-amt-input-border-color, #bee5eb);
    color: #0c5460;
    color: var(--donate-wizard-button-payment-method-amt-input-color, #0c5460);
    text-align: center;
    border-radius: 0;
}

.donate-wizard__currency {
    display: flex;
    width: 50px;
    align-items: center;
    justify-content: center;
    background-color: #bee5eb;
    background-color: var(--donate-wizard-button-payment-method-currency-background-color, #bee5eb);
    color: #0c5460;
    color: var(--donate-wizard-button-payment-method-currency-color, #0c5460);
    font-weight: 500;
    font-size: 1.6rem;
    user-select: none;
}

    .donate-wizard__currency > * {
        margin: 0;
    }

.donate-wizard__summary {
    padding: 10px;
    background-color: #fffdf9;
    background-color: var(--donate-wizard-button-payment-method-summary-background-color, #fffdf9);
    border: 2px solid var(--donate-wizard-button-payment-method-summary-border-color, #f5f2eb);
    border-radius: 3px;
}

.donate-wizard__summary-item-container {
    margin-bottom: 10px;
}

    .donate-wizard__summary-item-container:last-child {
        margin-bottom: 0;
    }

.donate-wizard__banner {
    background-color: #f9f9f9;
    background-color: var(--donate-wizard-button-payment-method-banner-backgrond-color, #f9f9f9);
    position: relative;
    padding: 15px;
    margin-bottom: 1rem;
    border: 1px solid #eaeaea;
    border-color: var(--donate-wizard-button-payment-method-banner-border-color, #eaeaea);
    border-radius: 0.25rem;
    font-weight: 300;
    font-size: 3rem;
    margin-top: 15px;
    margin-bottom: 30px;
}

.donate-wizard__summary-label {
    margin-bottom: 0;
    font-size: 1.4rem;
    color: #76736C;
    color: var(--donate-wizard-button-payment-method-summary-label-color, #76736C);
}

.donate-wizard__summary-text {
    font-weight: 500;
    font-size: 1.6rem;
    color: #5C5952;
    color: var(--donate-wizard-button-payment-method-summary-text-color, #5C5952);
    margin: 0;
}

.donate-wizard__button-receipt {
    background-color: transparent;
    background-color: var(--donate-wizard-button-payment-method-button-receipt-background-color, transparent);
    color: #5C5952;
    color: var(--donate-wizard-button-payment-method-button-receipt-color, #5C5952);
    border: 1px solid #C2BFB8;
    border-color: var(--donate-wizard-button-payment-method-button-receipt-border-color, #C2BFB8);
}

    .donate-wizard__button-receipt:hover {
        background-color: #E8E5DE;
        background-color: var(--donate-wizard-button-payment-method-button-receipt-hover-background-color, #E8E5DE);
        border: 1px solid 1px solid #C2BFB8;
        border-color: var(--donate-wizard-button-payment-method-button-receipt-hover-border-color, 1px solid #C2BFB8);
        color: #29261F;
        color: var(--donate-wizard-button-payment-method-button-receipt-hover-color, #29261F);
    }

.donate-simple {
    display: block;
    border: 1px solid whitesmoke;
    border-color: var(--donate-simple-border-color, whitesmoke);
    margin-top: 15px;
    margin: 10px;
    box-shadow: 0 0 5px 0 rgba(216, 216, 216, 0.5);
}

.donate-simple__header {
    padding: 15px;
    border-bottom: 1px solid whitesmoke;
    border-color: var(--donate-simple-header-border-color, whitesmoke);
    text-align: center;
    margin-left: 15px;
    margin-right: 15px;
}

.donate-simple__heading {
    font-weight: 300;
    font-size: 2.5rem;
    line-height: 2.5rem;
    margin: 0;
}

.donate-simple__amt-input {
    width: 100%;
    padding: 10px;
    font-size: 2rem;
    font-weight: 500;
    border: 0;
    border-bottom: 2px solid whitesmoke;
    border-color: var(--donate-simple-amtinput-border-bottom-color, whitesmoke);
    color: #383838;
    color: var(--donate-simple-amtinput-color, #383838);
    text-align: center;
    border-radius: 0;
    outline: none;
    transition: 0.2s;
}

    .donate-simple__amt-input:focus {
        transition: 0.2s;
        border-bottom: 2px solid lightgrey;
        border-bottom-color: var(--donate-simple-amtinput-focus-border-color, lightgrey);
    }

        .donate-simple__amt-input:focus + .donate-simple__currency {
            transition: 0.2s;
            border-bottom: 2px solid lightgrey;
            border-bottom-color: var(--donate-simple-amtinput-focus-border-color, lightgrey);
        }

.donate-simple__currency {
    display: flex;
    width: 50px;
    align-items: center;
    justify-content: center;
    background-color: whitesmoke;
    background-color: var(--donate-simple-currenty-background-color, whitesmoke);
    border-bottom: 2px solid lightgrey;
    border-color: var(--donate-simple-currency-border-color, lightgrey);
    color: grey;
    color: var(--donate-simple-currency-color, grey);
    font-weight: 500;
    font-size: 1.6rem;
    user-select: none;
    transition: 0.2s;
}

    .donate-simple__currency > * {
        margin: 0;
    }

.donate-simple__amt-button-container {
    display: flex;
    margin-bottom: 15px;
}

.donate-simple__button {
    padding: 10px;
    width: 100%;
    margin-right: 10px;
    border: 1px solid lightgrey;
    border-color: var(--donate-simple-button-border-color, lightgrey);
    color: grey;
    color: var(--donate-simple-button-color, grey);
    font-size: 1.6rem;
    background-color: white;
    background-color: var(--donate-simple-button-background-color, white);
}

.donate-simple__button--blue {
    color: white;
    color: var(--donate-simple-button-blue-color, white);
    background-color: #0062cc;
    background-color: var(--donate-simple-button-blue-background-color, #0062cc);
    border-color: #0062cc;
    border-color: var(--donate-simple-button-blue-background-color, #0062cc);
}

.donate-simple__button--grey {
    color: white;
    color: var(--donate-simple-button-grey-color, white);
    background-color: grey;
    background-color: var(--donate-simple-button-grey-background-color, grey);
    border-color: grey;
    border-color: var(--donate-simple-button-grey-background-color, grey);
}

.donate-simple__button--vipps {
    padding: 5px;
    color: white;
    color: var(--donate-simple-button-vipps-color, white);
    font-weight: 500;
    background-color: #ff5b24;
    background-color: var(--donate-simple-button-vipps-background-color, #ff5b24);
    border-color: #ff5b24;
    border-color: var(--donate-simple-button-vipps-background-color, #ff5b24);
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 1px;
}

.donate-simple__button:last-child {
    margin-right: 0;
}

.donate-simple__button:hover {
    cursor: pointer;
}

.modal {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    background-color: var(--modals-modal-background-color, rgba(0, 0, 0, 0.5));
    z-index: 10;
}

.modal--hidden {
    display: none;
}

.modal__box {
    position: relative;
    width: 768px;
    background-color: white;
    background-color: var(--modals-modal-box-background-color, white);
    max-height: calc( 100vh - 20% );
    display: flex;
    flex-direction: column;
    margin: 10px;
}

.modal__box--medium {
    width: 600px;
}

@media only screen and (max-width: 375px) {
    .modal__box--medium {
        width: 100%;
    }
}

.modal__box--small {
    width: 375px;
}

@media only screen and (max-width: 375px) {
    .modal__box--small {
        width: 100%;
    }
}

.modal__header {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 15px;
    border-radius: 5px 5px 0 0;
}

.modal__header--less-padding {
    padding: 15px;
}

@media only screen and (max-width: 576px) {
    .modal__header {
        padding: 10px;
    }
}

.modal__heading {
    color: #505050;
    color: var(--modals-modal-heading-font-color, #505050);
    font-size: 2rem;
    margin: 0;
    font-weight: 500;
}

.modal__icon-close {
    margin-left: auto;
    font-size: 25px;
    color: #505050;
    color: var(--modals-modal-icon-close-font-color, #505050);
}

    .modal__icon-close:hover {
        cursor: pointer;
    }

.modal__body {
    background-color: white;
    background-color: var(--modals-modal-body-background-color, white);
    padding: 15px;
    padding-top: 0;
    max-height: 100%;
    overflow: auto;
}

@media only screen and (max-width: 576px) {
    .modal__body {
        padding: 10px;
        padding-top: 0;
    }
}

.modal__body:last-child {
    border-radius: 0 0 5px 5px;
}

.modal__body--less-padding {
    padding: 15px;
    padding-top: 0;
}

.modal__footer {
    /*position: sticky;
  bottom: 0;*/
    padding: 15px;
    padding-top: 0;
}

@media only screen and (max-width: 576px) {
    .modal__footer {
        padding: 10px;
    }
}

.alert {
    position: relative;
    padding: 0.75rem 0.75rem;
    border-radius: 0.25rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    border-top: 4px solid;
    /*
  &--success {
      color: #155724;
      background-color: #d4edda;
      border-color: #c3e6cb;
  }

  &--danger {
      color: #721c24;
      background-color: #f8d7da;
      border-color: #f5c6cb;
  }

  &--secondary {
      color: #383d41;
      background-color: #e2e3e5;
      border-color: #d6d8db;
  }*/
    /* &--info {
      color: #0c5460;
      background-color: #d1ecf1;
      border-color: #bee5eb;
  }*/
}

.alert--info {
    background-color: #ebf8ff;
    background-color: var(--alert-info-background-color, #ebf8ff);
    border-color: #4299e1;
    border-color: var(--alert-info-border-color, #4299e1);
    color: #2b6cb0;
    color: var(--alert-info-color, #2b6cb0);
}

.alert--success {
    background-color: #e6fffa;
    background-color: var(--alert-success-background-color, #e6fffa);
    border-color: #38b2ac;
    border-color: var(--alert-success-border-color, #38b2ac);
    color: #234e52;
    color: var(--alert-success-color, #234e52);
}

.alert--danger {
    background-color: #fff5f5;
    background-color: var(--alert-danger-background-color, #fff5f5);
    border-color: #f56565;
    border-color: var(--alert-danger-border-color, #f56565);
    color: #c53030;
    color: var(--alert-danger-color, #c53030);
}

.alert__infoicons {
    display: flex;
    margin-right: 10px;
    font-size: 18px;
}

.alert__header {
    display: flex;
}

.alert__heading {
    font-size: 1.6rem;
    line-height: 1.8rem;
    font-weight: 500;
    margin: 0;
    color: inherit;
}

.alert__subheading {
    font-size: 1.4rem;
    line-height: 1.6rem;
    font-weight: 500;
    margin: 0;
    color: inherit;
}

.alert__close {
    margin-left: auto;
}

.alert__icon {
    color: inherit !important;
}

.alert__bodytext {
    color: inherit;
    margin: 0;
    margin-top: 5px;
}

    .alert__bodytext * {
        color: inherit;
    }

    .alert__bodytext p:last-child {
        margin-bottom: 0;
    }

    .alert__bodytext a {
        text-decoration: underline;
    }

.funding-navbar {
    background-color: whitesmoke;
    background-color: var(--funding-navbar-background-color, whitesmoke);
    display: flex;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
    box-shadow: 0 0 10px 0 var(--funding-navbar-box-shaddow-color, rgba(0, 0, 0, 0.25));
}

@media only screen and (max-width: 576px) {
    .funding-navbar {
        justify-content: space-between;
    }
}

.funding-navbar__container {
    display: flex;
    width: 1024px;
    margin: auto;
}

@media only screen and (max-width: 1024px) {
    .funding-navbar__container {
        width: 100%;
        margin: 0;
        margin-right: auto;
    }
}

.funding-navbar__back-nav {
    min-height: 100%;
    width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #545454;
    color: var(--funding-navbar-back-nav-font-color, #545454);
}

.funding-navbar__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 15px 20px;
    font-size: 1.6rem;
    color: grey;
    color: var(--funding-navbar-nav-font-color, grey);
}

.funding-navbar__nav--active {
    border-bottom: 2px solid #1abc9c;
    border-bottom: 2px solid var(--funding-navbar-active-border-bottom, #1abc9c);
}

@media only screen and (max-width: 576px) {
    .funding-navbar__nav {
        padding: 10px;
        font-size: 1.4rem;
        font-weight: 400;
    }

    .funding-navbar__nav-buttons {
        display: none !important;
    }

    .funding-navbar__nav-mobile {
        display: flex !important;
    }
}

.funding-navbar__nav-buttons {
    display: flex;
    align-items: center;
    gap: 20px;
}

.funding-navbar__nav-mobile {
    margin-left: auto;
    display: none;
}

.funding-navbar__nav-btn {
    transition: 0.3s;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    display: flex;
    border-radius: 5px;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    min-height: 50px;
    padding: 0 15px;
    position: relative;
}

.funding-navbar__nav-btn:hover {
    background-color: var(--navbar-hover-background-color, var(--sw-nav--hover-bc--default));
    color: var(--navbar-nav-li-hover-font-color);
}

.funding-navbar__notice {
    min-height: 20px;
    height: 20px;
    min-width: 20px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #1abc9c;
    background-color: var(--funding-navbar-notice-background-color, #1abc9c);
    color: white;
    color: var(--funding-navbar-notice-font-color, white);
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.4rem;
    padding: 5px;
    margin-left: 10px;
}

.funding-admins {
    padding: 15px;
    border: 1px solid whitesmoke;
    border: 1px solid var(--funding-admins-border-color, whitesmoke);
    border-radius: 10px;
}

.funding-admins__main-heading {
    font-size: 2rem;
    font-weight: 300;
    line-height: 2rem;
    margin: 0;
    margin-bottom: 15px;
    text-align: center;
    margin: -15px;
    padding: 15px;
    margin-bottom: 15px;
    /* padding-bottom: 30px; */
    border-bottom: 1px solid whitesmoke;
    border-bottom: 1px solid var(--funding-admins-main-heading-border-bottom-color, whitesmoke);
}

.funding-admins__admin {
    display: flex;
    margin-bottom: 15px;
    border-bottom: 1px solid whitesmoke;
    border-bottom: 1px solid var(--funding-admins-admin-border-bottom-color, whitesmoke);
    padding-bottom: 15px;
}

.funding-admins__admin-image {
    width: 50px;
    height: 50px;
    border-radius: 25px;
    object-fit: cover;
}

.funding-admins__heading {
    margin: 0;
    font-weight: 500;
}

.funding-admins__link {
    color: #1a80b6;
    color: var(--funding-admins-link-font-color, #1a80b6);
}

    .funding-admins__link:hover {
        text-decoration: underline;
    }

.funding-admins__text {
    margin: 0;
}

.funding-admins__text-small {
    font-size: 1.2rem;
    color: #9e9e9e;
    color: var(--funding-admins-text-small-font-color, #9e9e9e);
    margin: 0;
}

.funding-admins__text-medium {
    margin: 0;
    margin-bottom: 5px;
    font-size: 1.4rem;
    color: grey;
    color: var(--funding-admins-text-medium-font-color, grey);
}

.funding-admins__text-large {
    margin: 0;
    font-size: 1.6rem;
    line-height: 2rem;
    font-weight: 500;
    color: #676767;
    color: var(--funding-admins-text-large-font-color, #676767);
}

.funding-status {
    margin-bottom: 15px;
}

@media only screen and (max-width: 768px) {
    .funding-status {
        max-width: 420px;
        width: 100%;
        margin: 15px auto;
    }
}

.funding-status--mobile {
    display: none;
    max-width: 420px; 
    width: 100%;
    margin: auto;
}

@media only screen and (max-width: 768px) {
    .funding-status__stats {
        margin: 0 0 15px 0 !important;
        padding: 10px !important;
        border-radius: 10px !important;
    }
}

.funding-status__stats {
    display: flex;
    margin-bottom: 15px;
    background-color: whitesmoke;
    background-color: var(--funding-status-stats-background-color, whitesmoke);
    padding: 15px;
    text-align: center;
    color: grey;
    color: var(--funding-status-stats-font-color, grey);
    font-weight: 500;
    font-size: 1.6rem;
    border-radius: 10px;
}

.funding-status__stats-text {
    margin: 0;
    width: 100%;
}

.funding-status__heading {
    margin: 0;
    margin-bottom: 10px;
    text-align: center;
    font-size: 2.2rem;
    line-height: 2.2rem;
}

.funding-status__small-text {
    color: grey;
    color: var(--funding-status-small-text-font-color, grey);
    font-size: 1.4rem;
    text-align: center;
    margin-top: 5px;
}

.funding-status__button-container {
    display: flex;
    flex-direction: column;
    row-gap: 15px;
    margin-top: 15px;
}

.funding-status__button {
    width: 100%;
    display: block;
    margin-right: 15px;
    padding: 10px;
    border-radius: 8px;
    font-size: 1.6rem;
    letter-spacing: 1px;
    font-weight: 500;
    text-align: center;
    transition: 0.2s;
}

.funding-status__button--type1 {
    background-color: #3498db;
    background-color: var(--funding-status-button-type1-background-color, #3498db);
    color: white;
    color: var(--funding-status-button-type1-font-color, white);
    border: 2px solid #3498db;
    border: 2px solid var(--funding-status-button-type1-border-color, #3498db);
}

    .funding-status__button--type1:hover {
        transition: 0.2s;
        background-color: white;
        background-color: var(--funding-status-button-type1-hover-background-color, white);
        color: #3498db;
        color: var(--funding-status-button-type1-hover-font-color, #3498db);
        cursor: pointer;
    }

    .funding-status__button--type1:disabled {
        background-color: #3498db42;
        background-color: var(--funding-status-button-type1-disabled-background-color, #3498db42);
        color: white;
        color: var(--funding-status-button-type1-disabled-font-color, white);
        border: 2px solid #3498db00;
        border: 2px solid var(--funding-status-button-type1-disabled-border-color, #3498db00);
    }

        .funding-status__button--type1:disabled:hover {
            cursor: not-allowed;
            background-color: #3498db42;
            background-color: var(--funding-status-button-type1-disabled-hover-background-color, #3498db42);
            color: white;
            color: var(--funding-status-button-type1-disabled-hover-font-color, white);
            border: 2px solid #3498db00;
            border: 2px solid var(--funding-status-button-type1-disabled-hover-border-color, #3498db00);
        }

.funding-status__button--type2 {
    background-color: white;
    background-color: var(--funding-status-button-type2-background-color, white);
    color: #3498db;
    color: var(--funding-status-button-type2-font-color, #3498db);
    border: 2px solid #3498db;
    border: 2px solid var(--funding-status-button-type2-border-color, #3498db);
}

    .funding-status__button--type2:hover {
        transition: 0.2s;
        background-color: #3498db;
        background-color: var(--funding-status-button-type2-hover-background-color, #3498db);
        color: white;
        color: var(--funding-status-button-type2-hover-font-color, white);
        cursor: pointer;
    }

    .funding-status__button--type2:disabled {
        color: #3498db42;
        color: var(--funding-status-button-type2-disabled-font-color, #3498db42);
        border: 2px solid #3498db42;
        border: 2px solid var(--funding-status-button-type2-disabled-border-color, #3498db42);
    }

        .funding-status__button--type2:disabled:hover {
            cursor: not-allowed;
            background-color: white;
            background-color: var(--funding-status-button-type2-disabled-hover-background-color, white);
            border: 2px solid #3498db42;
            border: 2px solid var(--funding-status-button-type2-disabled-hover-border-color, #3498db42);
        }

.funding-status__button--type3 {
    background-color: white;
    background-color: var(--funding-status-button-type3-background-color, white);
    color: grey;
    color: var(--funding-status-button-type3-font-color, grey);
    border: 2px solid lightgrey;
    border: 2px solid var(--funding-status-button-type3-border-color, lightgrey);
    font-size: 1.4rem;
    font-weight: 400;
}

    .funding-status__button--type3:hover {
        cursor: pointer;
        background: lightgrey;
        color: black;
    }

.funding-status__button:last-child {
    margin-right: 0;
}

.funding-status__progress-container {
    /*width: 100%;
  border: 2px solid green;
  border-radius: 20px;
  height: 30px;
  display: flex;
  align-items: center;*/
    width: 100%;
    border: 1px solid #1abc9c;
    border: 1px solid var(--funding-status-progress-container-border-color, #1abc9c);
    border-radius: 20px;
    height: 30px;
    display: flex;
    align-items: center;
    box-shadow: inset -2px 2px 2px #e3f3ef, inset -2px -2px 2px #e3f3ef;
    box-shadow: inset -2px 2px 2px var(--funding-status-progress-container-box-shadow, #e3f3ef), inset -2px -2px 2px var(--funding-status-progress-container-box-shadow, #e3f3ef);
    background-color: #e3f3ef;
    background-color: var(--funding-status-progress-container-background-color, #e3f3ef);
}

.funding-status__progress-bar {
    background-color: #1abc9c;
    background-color: var(--funding-status-progress-bar-background-color, #1abc9c);
    height: 20px;
    border-radius: 10px;
    margin-left: 4px;
    margin-right: 4px;
    transition: 0.2s;
}

.funding-timeline {
    margin-top: 15px;
    border: 1px solid whitesmoke;
    border: 1px solid var(--funding-timeline-border-color, whitesmoke);
    border-radius: 10px;
    padding: 15px;
}

.funding-timeline__container {
    display: grid;
    grid-column-gap: 20px;
    grid-template-columns: 15px 1fr;
}

    .funding-timeline__container:last-child .funding-timeline__box {
        margin-bottom: 15px;
    }

    .funding-timeline__container:last-child .funding-timeline__line {
        display: none;
    }

.funding-timeline__main-heading {
    font-size: 2rem;
    font-weight: 300;
    line-height: 2rem;
    margin: 0;
    margin-bottom: 15px;
    text-align: center;
    margin: -15px;
    padding: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid whitesmoke;
    border-bottom: 1px solid var(--funding-timeline-main-heading-border-bottom-color, whitesmoke);
}

.funding-timeline__line {
    display: block;
    width: 2px;
    background-color: #1abc9c;
    background-color: var(--funding-timeline-line-background-color, #1abc9c);
    height: 100%;
}

.funding-timeline__circle {
    height: 15px;
    width: 15px;
    border-radius: 10px;
    background-color: #1abc9c;
    background-color: var(--funding-timeline-circle-background-color, #1abc9c);
}

.funding-timeline__box {
    position: relative;
    background-color: #f9f9f9;
    background-color: var(--funding-timeline-box-background-color, #f9f9f9);
    border-radius: 0 10px 10px 10px;
    padding: 10px;
    margin-bottom: 20px;
    margin-top: 7px;
}

.funding-timeline__arrow-left {
    position: absolute;
    top: 0;
    left: -12px;
    width: 0;
    height: 0;
    border-top: 0px solid #f9f9f9;
    border-top: 0px solid var(--funding-timeline-arrow-left-color, #f9f9f9);
    border-bottom: 15px solid transparent;
    border-right: 15px solid #f9f9f9;
    border-right: 15px solid var(--funding-timeline-arrow-left-color, #f9f9f9);
}

.funding-timeline__header {
    display: flex;
}

.funding-timeline__heading {
    margin: 0;
    font-weight: 500;
}

.funding-timeline__amt {
    font-weight: 400;
    font-size: 1.4rem;
    border: 1px solid #1abc9c;
    border: 1px solid var(--funding-timeline-amt-border-color, #1abc9c);
    display: inline-block;
    padding: 0 5px;
    border-radius: 23px;
    color: #1abc9c;
    color: var(--funding-timeline-amt-font-color, #1abc9c);
    margin-left: auto;
    -webkit-user-select: none;
    user-select: none;
}

.funding-timeline__comment {
    margin: 0;
}

.funding {
    display: grid;
    grid-template-columns: 1fr 350px;
    grid-gap: 30px;
    margin-top: 15px;
    margin-bottom: 15px;
    width: 100%;
    max-width: 1024px;
    align-self: center;
    padding: 15px;
}

@media only screen and (max-width: 1024px) {
    .funding {
        grid-template-columns: 1fr 350px;
    }
}

@media only screen and (max-width: 768px) {
    .funding {
        grid-template-columns: 1fr;
    }
}

.funding-SoMe {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 15px;
}

.funding-SoMe__media {
    background-color: whitesmoke;
    background-color: var(--funding-SoMe-media-background-color, whitesmoke);
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 500;
    color: #757575;
    color: var(--funding-SoMe-media-font-color, #757575);
    -webkit-user-select: none;
    user-select: none;
    transition: 0.2s;
    border: 0;
    border-radius: 8px;
}

.funding-SoMe__media > * {
    margin: 0;
}

.funding-SoMe__media > i {
    margin-left: 10px;
}

.funding-SoMe__media:hover {
    cursor: pointer;
    background-color: #2980b9;
    background-color: var(--funding-SoMe-media-hover-background-color, #2980b9);
    color: white;
    color: var(--funding-SoMe-media-hover-font-color, white);
    transition: 0.2s;
}

.funding-SoMe__media--mobile-only {
    display: none;
}

@media only screen and (max-width: 576px) {
    .funding-SoMe__media--mobile-only {
        display: flex;
    }
}

.article-card-strict {
    transition: 0.2s;
    position: relative;
    box-shadow: 0px 0px 30px #0000001c;
    border-radius: 10px;
    overflow: hidden;
    height: fit-content;
}

.article-card-strict:hover {
    transition: 0.2s;
    cursor: pointer;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
}

.article-card-strict:hover .article-card-strict__button {
    transition: 0.2s;
    color: white;
    background-color: var(--article-card-strict-button-color, #1abc9c);
}

.article-card-strict__image-container {
    width: 100%;
    margin: 0;
    padding-top: 66.66%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    position: relative;
    background-color: whitesmoke;
    background-color: var(--article-card-strict-imagecontainer-background-color, whitesmoke);
}

.article-card-strict__image {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: top;
}

.article-card-strict__body {
    padding: 10px;
    height: 200px;
    overflow: hidden;
    border: 1px solid whitesmoke;
    border-color: var(--article-card-strict-body-border-color, whitesmoke);
    border-top: 0;
}

.article-card-strict__heading {
    font-size: 2rem;
    line-height: 2rem;
    font-weight: 300;
    text-align: center;
}

.article-card-strict__footer {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(to bottom, #ffffff00, 5%, white);
    padding: 10px;
}

.article-card-strict__button {
    padding: 10px;
    background-color: white;
    background-color: var(--article-card-strict-button-background-color, white);
    color: #1abc9c;
    color: var(--article-card-strict-button-color, #1abc9c);
    border: 1px solid #1abc9c;
    border-collapse: var(--article-card-strict-button-border-color, #1abc9c);
    font-weight: 500;
    border-radius: 8px;
    width: 50%;
    display: inline-block;
    text-align: center;
}

    .article-card-strict__button:hover {
        cursor: pointer;
    }

.plus {
    position: absolute;
    left: 10px;
    bottom: 10px;
}

.plus--static {
    position: static;
}

.plus--small {
    left: 5px;
    bottom: 5px;
}

.plus__icon {
    display: block;
    background-color: #262729;
    background-color: var(--plus-icon-background-color, #262729);
    border-radius: 3px;
    height: 25px;
    width: 25px;
}

.plus__icon--small {
    height: 15px;
    width: 15px;
}

.paywall {
    border: 1px solid #eaeaea;
    border: 1px solid var(--plus-paywall-border-color, #eaeaea);
    background-color: whitesmoke;
    background-color: var(--plus-paywall-background-color, whitesmoke);
    padding: 30px 15px;
    margin-top: 30px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 576px) {
    .paywall {
        padding: 15px;
    }
}

.paywall__header {
    display: flex;
    margin-bottom: 5px;
}

@media only screen and (max-width: 576px) {
    .paywall__header {
        justify-content: center;
    }
}

.paywall__heading {
    margin: 0;
    color: #383838;
    color: var(--plus-paywall-heading-font-color, #383838);
}

.paywall__inner {
    max-width: 768px;
    margin: auto;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 15px;
    align-items: center;
}

@media only screen and (max-width: 576px) {
    .paywall__inner {
        grid-template-columns: 1fr;
        justify-content: center;
        text-align: center;
    }
}

.paywall__text {
    margin: 0;
    font-size: 1.6rem;
}

.paywall__btn-container {
    display: flex;
}

@media only screen and (max-width: 576px) {
    .paywall__btn-container {
        justify-content: center;
    }
}

.paywall__btn {
    padding: 10px 15px;
    background-color: white;
    background-color: var(--plus-paywall-button-background-color, white);
    border: 2px solid #38485f;
    border: 2px solid var(--plus-paywall-button-border-color, #38485f);
    border-radius: 3px;
    font-weight: 600;
    white-space: nowrap;
    transition: 0.2s;
    text-align: center;
    color: #113363;
    color: var(--plus-paywall-button-font-color, #113363);
    margin-right: 10px;
    -webkit-user-select: none;
    user-select: none;
}

    .paywall__btn:last-child {
        margin-right: 0;
    }

    .paywall__btn:hover {
        transition: 0.2s;
        cursor: pointer;
        color: white;
        color: var(--plus-paywall-button-hover-font-color, white);
        background-color: #38485f;
        background-color: var(--plus-paywall-button-hover-background-color, #38485f);
    }

.panel-hero-image {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    max-width: 100%;
    user-select: none;
    overflow: hidden;
    position: relative;
    height: 500px;
}

@media only screen and (max-width: 768px) {
    .panel-hero-image {
        height: 300px !important;
    }
}

.panel-hero-image__slide {
    position: absolute;
    max-height: 0;
    overflow: hidden;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition-delay: 1s;
    opacity: 0;
}

    .panel-hero-image__slide > a > img {
        width: 100%;
        height: auto;
        max-height: 100%;
    }

.panel-hero-image__slide--active {
    opacity: 1;
    height: auto;
    max-height: 100%;
    width: 100%;
}

.panel-hero-image__slide--fadein {
    height: auto;
    max-height: 100%;
    opacity: 1;
    -webkit-transition: opacity 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out;
    -o-transition: opacity 1s ease-in-out;
    transition: opacity 1s ease-in-out;
}

.panel-hero-image__slide--fadeout {
    height: auto;
    max-height: 100%;
    opacity: 0;
    -webkit-transition: opacity 1.5s ease-in-out;
    -moz-transition: opacity 1.5s ease-in-out;
    -o-transition: opacity 1.5s ease-in-out;
    transition: opacity 1.5s ease-in-out;
}

.panel-hero-image__slide-text {
    position: absolute;
    bottom: 35px;
    padding: 10px;
    background-color: rgba(0, 0, 0, 0.65);
    background-color: var(--datalist-heroimage-slide-text-background-color, rgba(0, 0, 0, 0.65));
    color: white;
    color: var(--datalist-heroimage-slide-text-color, white);
}

.panel-hero-image__image-btn-container {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 10%;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    flex-wrap: wrap;
}

@media only screen and (max-width: 768px) {
    .panel-hero-image__image-btn-container {
        bottom: 5%;
    }
}

.panel-hero-image__img-cover {
    width: 100%;
}

@media only screen and (max-width: 768px) {
    .panel-hero-image__img-cover {
        height: 300px;
        object-fit: cover;
    }
}

.panel-hero-image__img-button {
    padding: 10px 15px;
    color: white;
    color: var(--datalist-heroimage-imgbutton-color, white);
    transition: 0.2s;
    display: inline-block;
    margin-right: 20px;
    margin-bottom: 20px;
    font-size: 1.8rem;
    border: 2px solid white;
    border-color: var(--datalist-heroimage-imgbutton-border-color, white);
    background-color: rgba(255, 255, 255, 0.2);
    background-color: var(--datalist-heroimage-imgbutton-background-color, rgba(255, 255, 255, 0.2));
    border-radius: 5px;
    transition: all 0.2s ease;
}

    .panel-hero-image__img-button:hover {
        transform: translateY(-5px);
    }

@media only screen and (max-width: 1024px) {
    .panel-hero-image__img-button {
        padding: 10px;
        font-size: 1.6rem;
        margin-bottom: 10px;
        margin-right: 10px;
    }
}

.panel-hero-image__img {
    max-width: 100%;
    max-height: 683px;
}

@media only screen and (max-width: 1024px) {
    .panel-hero-image__img {
        max-height: 512px;
    }
}

@media only screen and (max-width: 576px) {
    .panel-hero-image__img {
        max-height: 384px;
    }
}

@media only screen and (min-width: 0px) and (max-width: 375px) {
    .panel-hero-image__img {
        max-height: 250px;
    }
}

.panel-hero-image__nav-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    position: absolute;
    right: 70px;
    bottom: 0;
    left: 70px;
}

.panel-hero-image__nav-dot {
    margin-right: 10px;
    color: #dadada;
    color: var(--datalist-heroimage-navdot-color, #dadada);
    transition: 0.3s;
}

.panel-hero-image__nav-dot--active {
    transition: 0.2s;
    font-size: 25px;
}

.panel-hero-image__nav-button {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    z-index: 2;
    position: absolute;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 70px;
    border-radius: 30px;
}

.panel-hero-image__nav-button--right {
    right: 0;
    padding-right: 10px;
}

.panel-hero-image__nav-button--left {
    left: 0;
    padding-left: 10px;
}

.panel-hero-image__nav-button:hover {
    cursor: pointer;
}

.panel-hero-image__nav-button-icon {
    background-color: rgba(245, 245, 245, 0.45);
    background-color: var(--datalist-heroimage-navbuttonicon-background-color, rgba(245, 245, 245, 0.45));
    color: grey;
    color: var(--datalist-heroimage-navbuttonicon-color, grey);
    height: 60px;
    width: 60px;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@keyframes fadeInOpacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.radio-list__heading {
    margin: 0;
    font-size: 2rem;
    font-weight: 400;
    margin-bottom: 15px;
}

.radio-list__container {
    display: flex;
    align-items: center;
}

    .radio-list__container:hover {
        cursor: pointer;
    }

.radio-list__container--selected {
    background-color: white;
    background-color: var(--radio-list-container-selected-background-color, white);
    border: 1px solid lightgrey;
    border: 1px solid var(--radio-list-container-selected-border-color, lightgrey);
    border-radius: 5px;
}

.radio-list__input {
    margin: 10px;
    margin-right: 0;
}

    .radio-list__input:hover {
        cursor: inherit;
    }

.radio-list__label {
    margin-left: 5px;
    font-size: 1.6rem;
    width: 100%;
    padding: 10px;
    display: flex;
    flex-direction: column;
}

.radio-list__label--small {
    font-size: 1.4rem;
}

.radio-list__label:hover {
    cursor: inherit;
}

.radio-list__sub-text {
    color: grey;
    color: var(--radio-list-sub-text-font-color, grey);
    display: block;
    margin: -5px 0 0 0;
}

.radio-list__icon {
    font-size: 20px;
    margin-left: auto;
    margin-right: 10px;
    color: #03a678;
    color: var(--radio-list-icon-font-color, #03a678);
}

.iconbutton {
    display: flex;
    background-color: transparent;
    border: 0;
    border-radius: 0;
    font-size: 21px;
    padding: 0;
    color: #383838;
    color: var(--iconbutton-font-color, #383838);
}

    .iconbutton:last-child {
        margin-right: 0;
    }

    .iconbutton:hover {
        cursor: pointer;
    }

.iconbutton--hidden-lg {
    display: none;
}

@media only screen and (max-width: 1024px) {
    .iconbutton--hidden-lg {
        display: inherit;
    }
}

.flex {
    display: flex;
}

.flex__column {
    flex-direction: column;
}

.flex__column--reverse {
    flex-direction: column-reverse;
}

@media only screen and (max-width: 576px) {
    .flex__column--reverse-sm {
        flex-direction: column-reverse;
    }
}

@media only screen and (max-width: 768px) {
    .flex__column--reverse-md {
        flex-direction: column-reverse;
    }
}

@media only screen and (max-width: 1024px) {
    .flex__column--reverse-lg {
        flex-direction: column-reverse;
    }
}

@media only screen and (max-width: 1280px) {
    .flex__column--reverse-xl {
        flex-direction: column-reverse;
    }
}

.flex__center {
    align-items: center;
    justify-content: center;
}

.flex__center--x-only {
    align-items: normal;
}

.flex__center--y-only {
    justify-content: normal;
}

.pill {
    padding: 5px 15px;
    border-radius: 30px;
    text-align: center;
    font-weight: 500;
    font-size: 1.4rem;
    display: inline-block;
}

.pill--info {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.12), 0 2px 4px 0 rgba(0, 0, 0, 0.08);
    background-color: #3490dc;
    background-color: var(--pill-background-color, #3490dc);
    color: white;
    color: var(--pill-font-color, white);
}

.documents-attachment-panel {
    height: 100%;
    transition: 0.2s;
    overflow: hidden;
}

.documents-attachment-panel__button {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: whitesmoke;
    background-color: var(--documentattachment-button-background-color, whitesmoke);
    padding: 15px;
    color: var(--documentattachment-button-color, #0d2240);
    border: 0;
    width: 100%;
    padding: 15px;
    font-size: 15px;
}

    .documents-attachment-panel__button:hover {
        cursor: pointer;
    }

.documents-attachment-panel__grid {
    display: grid;
    grid-gap: 15px;
}

.documents-attachment-panel__grid--6 {
    grid-template-columns: repeat(6, 1fr);
}

@media only screen and (max-width: 1280px) {
    .documents-attachment-panel__grid--6 {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media only screen and (max-width: 768px) {
    .documents-attachment-panel__grid--6 {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media only screen and (max-width: 576px) {
    .documents-attachment-panel__grid--6 {
        grid-template-columns: repeat(2, 1fr);
    }
}

.documents-attachment-panel:hover {
    cursor: pointer;
    transition: 0.2s;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
}

.card-panel {
    height: 100%;
    background-color: #fbfbfb;
    background-color: var(--card-background-color, #fbfbfb);
    width: 100%;
    border: 1px solid #efefef;
    border-color: var(--card-border-color, #efefef);
    margin-bottom: 15px;
}

.card-panel__header {
    display: flex;
    align-items: center;
    background-color: #efefef;
    background-color: var(--card-header-background-color, #efefef);
    color: #4e4e4e;
    color: var(--card-header-color, #4e4e4e);
    padding: 5px;
    min-height: 50px;
}

.card-panel__icon {
    margin-left: 10px;
    margin-right: 10px;
    font-size: 20px;
}

.card-panel__heading {
    font-size: 1.8rem;
    padding: 0 10px;
    margin: 0;
}

.card-panel__placeholder-text {
    text-align: center;
    font-weight: 600;
    color: #656565;
    color: var(--card-placeholder-color, #656565);
    margin: 0;
    padding: 10px;
}

.card-panel__body {
    padding: 10px;
    margin-bottom: 10px;
}

    .card-panel__body:last-child {
        margin-bottom: 0;
    }

.card-panel__item {
    background-color: white;
    background-color: var(--card-item-background-color, white);
}

.img-fixed {
    /*width: 100%;
  margin: 0;
  padding-top: 150%;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  position: relative;
  background-color: white;*/
}

.img-fixed__3-2-container {
    width: 100%;
    margin: 0;
    padding-top: 66%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    position: relative;
    background-color: white;
    background-color: var(--img-fixed-3-2-container-background-color, white);
}

.img-fixed__2-3-container {
    width: 100%;
    margin: 0;
    padding-top: 150%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50%;
    position: relative;
    background-color: white;
    background-color: var(--img-fixed-2-3-container-background-color, white);
}

.img-fixed__image {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    vertical-align: top;
}

.fieldsetElectronicProduct {
    margin-bottom: 48px;
    border: none;
    padding: 0;
}

    .fieldsetElectronicProduct h2 {
        font-size: 2rem;
        font-weight: normal;
        border-bottom: solid 1px whitesmoke;
        border-bottom: solid 1px var(--electronic-product-h2-border-color, whitesmoke);
    }

    .fieldsetElectronicProduct label {
        display: inline-block;
        min-width: 80px;
        padding: 0 12px;
        padding-left: 0;
    }

    .fieldsetElectronicProduct input {
        width: 350px;
        font-size: 1.6rem;
        padding: 8px;
        margin: 8px;
        border: solid 1px #e3e3e3;
        border: solid 1px var(--electronic-product-input-border-color, #e3e3e3);
    }

    .fieldsetElectronicProduct span {
        font-size: 1.6rem;
        padding: 8px;
    }

* {
    word-break: break-word;
    box-sizing: border-box;
}

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

main {
    display: block;
}

h1 {
    font-size: 1.8rem;
    color: #585858;
    color: var(--heading1-font-color, var(--heading-font-color, #585858));
}

h2 {
    font-size: 1.6rem;
    color: #585858;
    color: var(--heading2-font-color, var(--heading-font-color, #585858));
}

h3 {
    font-size: 1.6rem;
    font-weight: 600;
    color: #585858;
    color: var(--heading3-font-color, var(--heading-font-color, #585858));
}

h4 {
    font-size: 1.6rem;
    font-weight: 500;
    color: #585858;
    color: var(--heading-font-color, #585858);
}

h5 {
    font-size: 1.6rem;
    font-weight: 500;
    color: #585858;
    color: var(--heading-font-color, #585858);
}

h6 {
    font-size: 1.6rem;
    font-weight: 500;
    color: #585858;
    color: var(--heading-font-color, #585858);
}

p {
    word-break: break-word;
}

hr {
    box-sizing: content-box;
    height: 1px;
    overflow: visible;
}

pre {
    font-family: monospace, monospace;
    font-size: 1em;
}

a {
    background-color: transparent;
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted;
}

b,
strong {
    font-weight: bolder;
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

img {
    border-style: none;
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button;
}

    button::-moz-focus-inner,
    [type=button]::-moz-focus-inner,
    [type=reset]::-moz-focus-inner,
    [type=submit]::-moz-focus-inner {
        border-style: none;
        padding: 0;
    }

    button:-moz-focusring,
    [type=button]:-moz-focusring,
    [type=reset]:-moz-focusring,
    [type=submit]:-moz-focusring {
        outline: 1px dotted ButtonText;
    }

fieldset {
    padding: 0.35em 0.75em 0.625em;
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}

progress {
    vertical-align: baseline;
}

textarea {
    overflow: auto;
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto;
}

[type=search] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
}

    [type=search]::-webkit-search-decoration {
        -webkit-appearance: none;
    }

::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
}

details {
    display: block;
}

summary {
    display: list-item;
}

template {
    display: none;
}

[hidden] {
    display: none;
}

blockquote, figure, pre {
    margin: 0;
}

ol, ul {
    padding-inline-start: 25px;
}

    ul.cms-ul {
        list-style: none;
        padding-inline-start: 0;
    }

a {
    text-decoration: none;
    color: inherit;
}

html {
    font-size: 62.5%;
    /* Default browser size is 16px this makes our rems to work in base 10px while also browser preference font-size works*/
    box-sizing: border-box;
    /*font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";*/
    line-height: 1.5;
    font-family: Inter var, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
}

img {
    display: inline;
}

/*# sourceMappingURL=fancy.css.map */

.afp-container {
    height: auto;
    width: 100%;
    display: grid;
    grid-template-rows: auto 40px;
    margin: 20px 0px;
}

.afp-container-link {
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
    width: fit-content;
    position: absolute;
    right: 0;
    bottom: 0;
    gap: 10px;
    transition: all 0.2s ease;
}

    .afp-container-link:hover {
        transform: translateX(10px);
    }

    .afp-container-link span {
        text-decoration: underline;
        text-underline-offset: 3px;
    }

.afp-arrangement-list-container {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

.afp-arrangement-container {
    width: 100%;
    min-width: 300px;
    height: 280px;
    display: grid;
    grid-template-rows: 50% 50%;
    background: white;
    border-radius: 8px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.15);
    flex: 1;
    transition: all 0.2s ease;
}

    .afp-arrangement-container:hover {
        transform: translateY(-10px);
        box-shadow: 0px 10px 4px 0px rgba(0, 0, 0, 0.2);
    }

    .afp-arrangement-container.arr-wide {
        grid-template-columns: 30% 1fr;
        grid-template-rows: unset;
        height: 150px;
    }

        .afp-arrangement-container.arr-wide .afp-arrangement-container-img .afp-arrangement-img-org {
            height: 150px;
            max-width: 100%;
            margin: auto;
        }

.afp-arrangement-container-img {
    position: relative;
    text-align: center;
    overflow: hidden;
    border-radius: 8px 8px 0px 0px;
}

.afp-arrangement-container.arr-wide .afp-arrangement-container-img {
    height: 150px;
    border-radius: 8px 0px 0px 8px;
    display: flex;
    align-items: center;
}

.afp-arrangement-container-img .afp-arrangement-img-org {
    height: 140px;
    object-fit: contain;
    position: relative;
    max-width: 100%;
}

.afp-arrangement-container-img .afp-arrangement-img-bg, .al-arrangement-image .al-arrangement-image-bg, .ap-arrangement-img-bg {
    background-size: cover;
    filter: blur(10px);
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.afp-arrangement-container-content {
    width: 100%;
    height: 100%;
    padding: 16px 12px 20px 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
}

.afp-arrangement-title {
    color: #585858;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 125%;
    margin-bottom: 16px;
    overflow: hidden !important;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    min-height: 40px;
}

.afp-arrangement-container.arr-wide .afp-arrangement-title {
    margin-bottom: 26px;
}

.afp-arrangement-info-block {
    display: flex;
    flex-direction: column;
}

.afp-arrangement-info-text {
    font-size: 14px;
    line-height: 24px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.afp-arrangement-date {
    position: absolute;
    top: 10px;
    left: 10px;
    display: flex;
    flex-direction: column;
    backdrop-filter: blur(2px);
    background: rgba(255,255,255,0.6);
    padding: 16px 20px;
    border-radius: 6px;
    line-height: normal;
    color: #585858;
}

.afp-arrangement-date-num {
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.afp-arrangement-container-content-section {
    display: grid;
    position: relative;
    grid-template-columns: 60px 2px auto;
}

.afp-arrangement-container.arr-wide .afp-arrangement-container-content-section {
    height: 150px;
    grid-template-columns: 80px 2px auto;
}

.afp-arrangement-date.arr-alt {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 6px;
    line-height: normal;
    color: #585858;
    justify-self: center;
    padding: 16px 0px;
    top: unset;
    left: unset;
    backdrop-filter: unset;
    background: none;
}

.afp-arrangement-container-content-line {
    width: 2px;
    background: #878787;
    position: relative;
    margin: 10px 0px;
}

.al-list-container {
    display: flex;
    flex-direction: column;
    gap: 15px;
    max-width: 800px;
    margin: 10px 20px;
}

.al-arrangement-container {
    width: 100%;
    height: 250px;
    display: grid;
    grid-template-columns: 40% 60%;
    background: white;
    border-radius: 8px;
    flex: 1;
    transition: all 0.2s ease;
}

@media only screen and (max-width: 576px) {
    .al-arrangement-container {
        grid-template-columns: unset !important;
        height: auto !important;
    }

    .al-arrangement-image {
        height: 150px !important;
    }

    .al-arrangement-image-org {
        height: 150px !important;
    }

    .al-arrangement-content {
        padding: 10px 0 !important;
    }

    .al-list-line-horizontal {
        margin: 0 !important;
    }
}

.al-arrangement-container:hover .al-arrangement-content-btn {
    background: #a2e9b5;
}

.al-arrangement-image {
    height: 250px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    overflow: hidden;
    position: relative;
    box-shadow: 0px 0px 4px rgba(0,0,0,0.2);
}

    .al-arrangement-image .al-arrangement-image-org {
        height: 250px;
        max-width: 100%;
        margin: auto;
        position: relative;
        object-fit: contain;
    }

.al-arrangement-content {
    padding: 10px 0px 0px 30px;
    /*display: flex;*/
    flex-direction: column;
    gap: 20px;
    display: grid;
    grid-template-rows: auto 1fr 37px;
}

.al-arrangement-content-top {
    display: flex;
    flex-direction: row;
    gap: 20px;
    width: 100%;
    align-items: center;
}

.al-arrangement-date {
    display: flex;
    flex-direction: column;
    color: #585858;
    padding: 0px;
}

.al-arrangement-date-num {
    font-size: 24px;
    font-weight: 700;
    line-height: normal;
    width: max-content;
}

.al-arrangement-date span {
    width: max-content;
}

.al-arrangement-content-line {
    min-width: 2px;
    background: #878787;
    height: 100%;
}

.al-arrangement-title {
    color: #585858;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 125%;
    overflow: hidden !important;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.al-arrangement-content-mid {
    display: flex;
    flex-direction: column;
}

.al-arrangement-info-text {
    font-size: 14px;
    line-height: 24px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.al-arrangement-content-bot {
    display: flex;
    flex-direction: column;
    position: relative;
    left: 26px;
}

.al-arrangement-content-bot-info {
    color: #585858;
}

.al-arrangement-content-bot-date {
    font-weight: 600;
}

.al-arrangement-content-btn {
    background: #EFEFEF;
    text-align: center;
    padding: 8px 0px;
    border-radius: 6px;
    transition: all 0.2s ease;
}

.al-list-line-horizontal {
    height: 2px;
    background: #D9D9D9;
    margin: 0px 20px;
}

    .al-list-line-horizontal:last-child {
        display: none;
    }

.ap-main-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 16px;
}

.ap-image-section {
    min-height: 175px;
    max-height: 40vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    position: relative;
    width: 100%;
    border-radius: 8px;
}

.ap-image-section-back-btn {
    position: absolute;
    border: none;
    border-radius: 6px;
    display: flex;
    flex-direction: row;
    gap: 10px;
    padding: 12px 24px;
    top: 20px;
    left: 20px;
    color: #585858;
    cursor: pointer;
    transition: all 0.2s ease;
    line-height: 1;
    backdrop-filter: blur(5px);
    background: rgba(255,255,255,0.6);
}

    .ap-image-section-back-btn:hover {
        color: #3490dc;
    }

.ap-arrangement-img-org {
    margin: auto;
    position: relative;
    object-fit: contain;
    width: 100%;
    max-height: inherit;
}

.ap-content-section {
    display: grid;
    grid-template-columns: 76px auto;
    justify-items: center;
    /*min-height: 170px;*/
}

@media only screen and (max-width: 576px) {
    .ap-content-section {
        grid-template-columns: 36px auto !important;
        justify-items: start !important;
    }

    .ap-arrangement-content-info {
        padding: 12px 0px 6px 14px !important;
    }

    .ap-arrangement-content-text {
        padding: 24px 16px 0px !important;
    }

    .ap-arrangement-content-button {
        margin: 30px 16px !important;
    }

    .ap-arrangement-content-text-share {
        margin-left: 0 !important;
    }

    .ap-image-section-back-btn {
        top: 10px !important;
        left: 10px !important;
    }
}

.ap-arrangement-date {
    display: flex;
    flex-direction: column;
    color: #585858;
    padding: 0px;
}

.ap-arrangement-date-num {
    font-size: 24px;
    font-weight: 700;
    line-height: normal;
    width: max-content;
}

.ap-arrangement-date span {
    width: max-content;
}

.ap-arrangement-content {
}

.ap-arrangement-content-info {
    display: flex;
    flex-direction: column;
    gap: 16px;
    border-left: 2px solid grey;
    padding: 12px 0px 6px 24px;
}

.ap-arrangement-content-info-title {
    color: #585858;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 125%;
}

.ap-arrangement-content-info-mid {
    display: flex;
    flex-direction: column;
}

.ap-arrangement-content-info-mid-text {
    font-size: 14px;
    line-height: 24px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.ap-arrangement-content-info-bot {
    display: flex;
    flex-direction: column;
    position: relative;
    background: #EFEFEF;
    padding: 8px 12px;
    max-width: max-content;
    border-radius: 6px;
}

.ap-arrangement-content-info-bot-text {
    color: #585858;
}

.ap-arrangement-content-info-bot-date {
    font-weight: 600;
}

.ap-arrangement-content-text {
    padding: 24px 26px 0px;
}

.ap-arrangement-content-text-share {
    position: absolute;
    left: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 6px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 20px;
    border: none;
    color: #3490dc;
    background: none;
    margin-left: 20px;
    transition: all 0.2s ease;
}

    .ap-arrangement-content-text-share:hover {
        background: #efefef;
    }

.ap-arrangement-content-button {
    display: flex;
    padding: 8px 12px;
    align-items: center;
    gap: 10px;
    border-radius: 6px;
    background: #EFEFEF;
    margin: 30px 26px;
    cursor: pointer;
    transition: all 0.2s ease;
    max-width: max-content;
}

    .ap-arrangement-content-button:hover {
        background: #a2e9b5;
    }

.checkout_error_backdrop {
    position: fixed;
    width: 100vw;
    height: 100vh;
    z-index: 15;
    background: rgba(0,0,0,0.3);
    backdrop-filter: blur(3px);
    top: 0;
    left: 0;
}

.checkout-error-modal {
    width: 400px;
    max-height: 300px;
    position: absolute;
    background: white;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.3);
    border-radius: 4px;
    padding: 48px 10px 10px;
    flex-direction: column;
    gap: 10px;
    overflow: auto;
}

.checkout-error-content-row {
    padding: 10px;
    border-radius: 4px;
    background: #ffe7e7;
    color: #d50404;
    font-weight: 600;
    font-size: 18px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

.checkout-warning-content-row {
    padding: 10px;
    border-radius: 4px;
    background: #fff5dd;
    color: #ffac2c;
    font-weight: 600;
    font-size: 18px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

.checkout-warning-modal-close {
    background: none;
    border: none;
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 0;
    cursor: pointer;
}

.image-source {
    position: absolute;
    bottom: 0;
    left: 0;
    margin: 5px;
    backdrop-filter: blur(5px);
    border-radius: 5px;
    color: #000000;
    background: #ffffff82;
    padding: 2px 6px;
    font-size: 12px;
}

.is-company-checkbox-input-container {
    display: flex;
    align-items: center;
    gap: 5px;
    padding-bottom: 5px;
    color: var(--heading1-font-color, var(--heading-font-color, #585858));
}



/* Federation member detail css */
.local-department {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4rem 2rem;
    padding-block-start: 4rem;
    max-width: 1024px;
    padding-inline: 1rem;
    margin-inline: auto;
}

.board-member__wrapper {
    display: none;
}

.local-department-card.active .board-member__wrapper {
    display: grid;
    gap: 1rem;
    width: 100%;
}

.local-department-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    border-radius: 0.5rem;
    background: whitesmoke;
    cursor: pointer;
    grid-column: span 2;
    box-shadow: rgba(0, 0, 0, 0.02) 0px 1px 3px 0px, rgba(27, 31, 35, 0.15) 0px 0px 0px 1px;
    padding: 2rem 5rem;
    position: relative;
    max-width: 1024px;
    margin: auto;
}

    .local-department-card:hover {
        /* box-shadow: 0px 0px 5px 0px var(--federation-member-hover-box-shaddow-color, rgba(0, 0, 0, 0.3)); */
        box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    }

    .local-department-card h1 {
        font-size: 2rem;
    }

    .local-department-card h2 {
        font-weight: 500;
        font-size: 1.3rem;
    }

    .local-department-card.active h2 {
        display: block;
        position: absolute;
        top: 68px;
        left: 34px;
    }

    .local-department-card p {
        display: none;
        font-size: 1.2rem;
    }

    .local-department-card.active p {
        display: block;
    }

    .local-department-card.active {
        grid-column: auto / span 4;
        grid-row: auto;
        height: auto;
        align-items: flex-start;
        gap: 2rem;
        box-shadow: 0px 0px 5px 0px var(--federation-member-hover-box-shaddow-color, rgba(0, 0, 0, 0.3));
        cursor: default;
    }

    .local-department-card.is-inactive {
        grid-column: span 2;
        text-align: center;
    }

.small-logo {
    position: absolute;
    top: -30px;
    left: 0px;
    max-width: 50px;
    max-height: 50px;
    filter: drop-shadow(2px 4px 6px lightgray);
    transition: .1s ease-in;
}

.profile-img {
    max-width: 100%;
    border-radius: 50%;
}

.local-department-card .board-member {
    display: none;
}

.local-department-card.local-department-card.active .board-member {
    display: block;
}

.board-member-local-department { /**/
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: auto;
    border-radius: 5px;
    background-image: linear-gradient(135deg, rgb(243, 243, 243) 0%, #ebeaea 100%);
    font-size: 1.3rem;
}

.board-member__top-local-department { /**/
    padding: 15px;
    background-image: linear-gradient(179deg, white 0%, #e7e7e7 100%);
}

.board-member-local-department img { /**/
    min-height: auto;
    width: 80px;
    aspect-ratio: 1;
    border-radius: 50%;
    margin: auto;
    display: block;
    object-fit: cover;
}

.board-member__contact-info-local-department { /**/
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    background-image: linear-gradient(179deg, white 0%, #e7e7e7 100%);
}

.board-member__contact-item-local-department { /**/
    display: flex;
    align-items: center;
    padding: 20px;
    justify-content: space-around;
}

    .board-member__contact-item-local-department:first-of-type { /**/
        border-bottom: 1px solid rgb(228, 227, 227);
    }

.department-details {
    display: grid;
    margin-bottom: 10px;
    color: #6e6e6e;
    background: #ececec;
    padding: 1rem 20px;
    border-radius: .25rem;
}

.local-department-card .expand {
    position: absolute;
    bottom: 9px;
    right: 10px;
    color: #ccc;
    font-size: 16px;
}

.local-department-card.local-department-card.active .expand {
    display: none;
}

.federation-member__text-small-local-department { /**/
    display: block;
    font-size: 1.3rem;
    color: grey;
}

.board-member__icon-local-department { /**/
    display: block;
    color: grey;
    font-size: 20px;
}

.department-details-grid .email {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #e3e3e3;
    padding: 0.3rem 0.4rem;
    border-radius: 4px;
    border: 1px solid lightgray;
    margin: 1rem 0;
    max-width: 100%;
    font-size: 1.3rem;
}


    .department-details-grid .email:hover {
        background: whitesmoke;
    }

.contact-person__name {
    display: none;
}

.local-department-card.active .contact-person__name {
    display: block;
}

.department-details-grid {
    display: grid;
    grid-template-columns: 50% auto;
    gap: 20px;
}

.board-member__name-local-department { /**/
    font-size: 1.5rem;
    font-weight: 600;
    margin: 10px 0 0 0;
    text-align: center;
}

.board-member__role-local-department { /**/
    color: grey;
    margin-top: 0 !important;
    font-size: 1.3rem;
    margin: 0;
    display: block;
    text-align: center;
}

    .board-member__role-local-department:last-child { /**/
        margin-bottom: 10px !important;
    }

.department-details__title {
    display: none;
}

.local-department-card.active .department-details__title {
    display: block;
    margin-bottom: 1rem;
}

.board-members .board-member__name-local-department {
    font-size: 1.3rem;
}

.board-members .board-member__role-local-department {
    font-size: 1.1rem;
}

.department-details__title {
    font-size: 20px;
    margin-bottom: 5px;
}

.board-members {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    font-size: 1.3rem;
}

    .board-members li {
        display: none;
    }

.local-department-card.active .board-members li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 8px 20px;
}

.board-members li span {
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    cursor: pointer;
}

    .board-members li span.role {
        font-weight: 600;
    }

.board-members li:nth-child(even) {
    background: #ececec;
}

.local-department-card.active .small-logo {
    transform: scale(1.350);
    transition: 0.3ms ease-in-out;
    transition: .1s ease-in;
}

.m-1200 {
    max-width: 1200px;
    margin-inline: auto;
}

.board-members__left {
    display: flex;
    align-items: center;
    gap: 10px;
}

    .board-members__left img {
        width: 50px;
        aspect-ratio: 1;
        border-radius: 50%;
        object-fit: cover;
    }

.board-members__right {
    display: flex;
    align-items: center;
    gap: 10px;
}

.board-members__icon {
    max-width: 50px;
    filter: grayscale(1);
    max-width: 50px;
    filter: grayscale(1);
    border-radius: 50%;
    aspect-ratio: 1;
    object-fit: cover;
}

.board-member-local-department a,
.board-members a { /**/
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #e3e3e3;
    padding: 0.3rem 0.4rem;
    border-radius: 4px;
    border: 1px solid lightgray;
    min-width: 110px;
}

    .board-member-local-department a:hover,
    .board-members a:hover { /**/
        background: whitesmoke;
    }

.board-members__right-inner {
    display: grid;
    grid-template-columns: 50% 50%;
    justify-items: flex-start;
    gap: 15px;
}

.department-details-grid__cells {
    display: grid;
    grid-template-columns: 1fr auto;
    font-size: 1.2rem;
    padding: 4px;
}

    .department-details-grid__cells:nth-child(even) {
        background: #e7e7e7;
    }

@media (max-width: 600px) {
    .local-department {
        display: grid;
        grid-template-columns: 1fr;
        gap: 1rem;
        row-gap: 3rem;
    }

    .board-members__right {
        margin-left: 60px;
    }

    .department-details {
        padding: 1rem;
    }

    .local-department-card.active .board-members li {
        flex-direction: column;
    }
}

@media (max-width: 790px) {
    .local-department-card.active .board-members li {
        padding: 1rem;
    }

    .local-department-card.is-inactive {
        grid-column: span 6;
    }

    .department-details-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .department-details-grid__cells {
        grid-template-columns: 1fr auto;
    }

    .local-department-card.active {
        grid-column: auto / span 6;
        padding-inline: 1rem;
    }

    .local-department-card.local-department-card.active .board-member-local-department {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .board-member__contact-item-local-department { /**/
        justify-content: center;
        gap: 1rem;
    }

    .local-department-card h2 {
        font-size: 1.2rem;
    }

    .small-logo {
        left: 5px;
        filter: none;
    }

    .local-department-card.active h2 {
        left: 18px;
    }
}

.local-department-return-link {
    position: absolute;
    top: 0;
    left: -60px;
    background: whitesmoke;
    border-radius: 6px;
    color: #636363;
    box-shadow: 0px 0px 5px 0px var(--federation-member-hover-box-shaddow-color, rgba(0, 0, 0, 0.3));
    cursor: pointer;
    border: none;
    display: flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
}

    .local-department-return-link:hover {
        color: var(--blue);
    }

.firm-department {
    font-size: 3rem !important;
    margin: 0 !important;
}

.firm-department-home-link {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 16px;
    color: #434343;
}

.firm-department-contact-button {
    position: absolute;
    top: 1rem;
    right: 1rem;
    border: 1px solid whitesmoke;
    background: none;
    color: #595959;
    cursor: pointer;
    transition: all 0.2s ease;
    border-radius: 6px;
}

    .firm-department-contact-button:hover {
        border-color: #999999;
    }

.firm-department-attribute {
    display: flex;
    gap: 10px;
}

.local-department-return-link.mobile {
    display: none;
    left: 0 !important;
    top: -87px !important;
    width: auto;
    padding: 0px 10px;
    gap: 10px;
    background: none !important;
    box-shadow: none !important;
}

.local-department-return-link.desktop {
    display: flex;
}

@media only screen and (max-width: 1200px) {
    .local-department-return-link.mobile {
        display: flex;
    }

    .local-department-return-link.desktop {
        display: none;
    }
}

@media only screen and (max-width: 576px) {
    .modal--show2 {
        align-items: flex-start !important;
        padding-top: 20px !important;
    }
}

.modal--show2 {
    display: flex !important;
}

#map {
    height: 60vh;
    font-size: 14px;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    box-shadow: 2px 2px 6px #838383;
    z-index: 0 !important;
}

.map-popup-heading {
    color: black !important;
    font-size: 16px;
    font-weight: 700;
}

.map-popup-link-external {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-top: 20px;
}

    .map-popup-link-external:hover {
        color: #00445f;
    }

.search-input {
    width: 250px;
    height: 35px;
    border-radius: 8px;
    border: none;
    box-shadow: 0px 0px 10px 0px #999999;
    -webkit-box-shadow: 0px 0px 10px 0px #999999 !important;
    padding: 5px 30px 5px 15px !important;
    -webkit-appearance: none;
}

.search-icon::after {
    content: '\f002';
    font-family: 'Font Awesome\ 5 Free';
    font-weight: 600;
    color: #4f4f4f;
}

.leaflet-control-zoom-in {
    border-radius: 6px 6px 0px 0px !important;
}

.leaflet-control-zoom-out {
    border-radius: 0px 0px 6px 6px !important;
}

.leaflet-control-attribution.leaflet-control {
    border-top-left-radius: 6px !important;
}

.search-results {
    border-radius: 8px !important;
}

.search-results-item {
    border-radius: 5px !important;
}

.leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar {
    border: none !important;
    box-shadow: 0px 0px 10px 0px #999999 !important;
    -webkit-box-shadow: 0px 0px 10px 0px #999999 !important;
    -webkit-appearance: none;
}

.firm-department-display-button-container {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
}

.firm-department-display-toggle-button {
    width: 50px;
    height: 30px;
    background: none;
    color: var(--theme-color);
    border-color: var(--theme-color);
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

    .firm-department-display-toggle-button:hover {
        background: #e7e7e7;
    }

#toggle_icon_map {
    display: none;
}
