@font-face {
    font-family: 'LatoRegular';
    src: url('../fonts/Lato-Regular/LatoRegular.eot');
    src: url('../fonts/Lato-Regular/LatoRegular.eot') format('embedded-opentype'),
         url('../fonts/Lato-Regular/LatoRegular.woff2') format('woff2'),
         url('../fonts/Lato-Regular/LatoRegular.woff') format('woff'),
         url('../fonts/Lato-Regular/LatoRegular.ttf') format('truetype'),
         url('../fonts/Lato-Regular/LatoRegular.svg#LatoRegular') format('svg');
}

@font-face {
    font-family: 'LatoBold';
    src: url('../fonts/Lato-Bold/LatoBold.eot');
    src: url('../fonts/Lato-Bold/LatoBold.eot') format('embedded-opentype'),
         url('../fonts/Lato-Bold/LatoBold.woff2') format('woff2'),
         url('../fonts/Lato-Bold/LatoBold.woff') format('woff'),
         url('../fonts/Lato-Bold/LatoBold.ttf') format('truetype'),
         url('../fonts/Lato-Bold/LatoBold.svg#LatoBold') format('svg');
}

@font-face {
    font-family: 'LatoBoldItalic';
    src: url('../fonts/Lato-BoldItalic/LatoBoldItalic.eot');
    src: url('../fonts/Lato-BoldItalic/LatoBoldItalic.eot') format('embedded-opentype'),
         url('../fonts/Lato-BoldItalic/LatoBoldItalic.woff2') format('woff2'),
         url('../fonts/Lato-BoldItalic/LatoBoldItalic.woff') format('woff'),
         url('../fonts/Lato-BoldItalic/LatoBoldItalic.ttf') format('truetype'),
         url('../fonts/Lato-BoldItalic/LatoBoldItalic.svg#LatoBoldItalic') format('svg');
}

@font-face {
    font-family: 'LatoLight';
    src: url('../fonts/Lato-Light/LatoLight.eot');
    src: url('../fonts/Lato-Light/LatoLight.eot') format('embedded-opentype'),
         url('../fonts/Lato-Light/LatoLight.woff2') format('woff2'),
         url('../fonts/Lato-Light/LatoLight.woff') format('woff'),
         url('../fonts/Lato-Light/LatoLight.ttf') format('truetype'),
         url('../fonts/Lato-Light/LatoLight.svg#LatoLight') format('svg');
}

@font-face {
    font-family: 'LatoItalic';
    src: url('../fonts/Lato-Italic/LatoItalic.eot');
    src: url('../fonts/Lato-Italic/LatoItalic.eot') format('embedded-opentype'),
         url('../fonts/Lato-Italic/LatoItalic.woff2') format('woff2'),
         url('../fonts/Lato-Italic/LatoItalic.woff') format('woff'),
         url('../fonts/Lato-Italic/LatoItalic.ttf') format('truetype'),
         url('../fonts/Lato-Italic/LatoItalic.svg#LatoItalic') format('svg');
}

.container {
    --bs-gutter-x: 40px;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x)* .5);
    padding-left: calc(var(--bs-gutter-x)* .5);
    margin-right: auto;
    margin-left: auto;
}

body {
    font-size: 1rem;
    line-height: 1.5;
    font-family: 'LatoRegular';
    color: #000;
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

.display-1, h1.awesome, .awesome.h1, .h1.awesome {
    font-size: calc(1.425rem + 2.1vw);
    font-weight: 300;
    line-height: 1.2;
}

h1, .h1 {
    font-size: calc(1.325rem + 0.9vw);
}

h2, .h2 {
    font-size: 1.8em;
}

h3, .h3 {
    font-size: calc(1.275rem + 0.3vw);
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    /* margin-top: 0;
    margin-bottom: 0.5rem; */
    font-weight: 300;
    /* line-height: 1.2; */
}

.fs-4 {
    font-size: 1.25rem !important;
}

.navbar-mainnavigation.transparent {
    background-color: rgba(255, 255, 255, 0.5) !important;
}

.navbar-mainnavigation.navbar-fixed-top {
    position: sticky;
    top: 0;
    z-index: 1020;
    max-height: 100vh;
    left: 0;
    right: 0;
    /* overflow-y: auto; */
}

header {
    transition: background-color 0.3s ease;
    padding: 30.4px 0 !important;
    background-color: #fff;
    box-shadow: 0 1px 0 0 rgba(0,0,0,0.15);
    height: 70px;
}

.navbar-mainnavigation .navbar-brand-image img {
    position: relative;
    top: 50%;
    /* transform: translate(0, -50%); */
    width: auto;
    max-height: calc(70px - 30px);
}

.navbar-mainnavigation .navbar-brand-image>.navbar-brand-logo-normal {
    display: block;
}

/* main {
    padding-top: 70px;
} */

.header-contact {
    position: absolute;
    top: 0;
    width: 100%;
    /* padding-bottom: 11.4px; */
}

.header-contact .icon {
    margin-left: 44px;
    margin-right: 10px;
    height: 18px;
    width: 18px;
}

.container-mainnavigation {
    display: flex;

}

header > .container-mainnavigation {
    position: relative !important;
}

header .mega-menu-wrap,
header #mega-menu-header-menu,
header .mega-menu-items {
    position: initial !important;
    display: flex !important;
    gap: 12px;
}

header .mega-menu-item > .mega-sub-menu {
    margin-left: 12px !important;
    margin-right: 12px !important;
    margin-top: 8px !important;
}

header .mega-menu-item > .mega-sub-menu .mega-menu-item > .mega-sub-menu {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

header li a {
    font-family: 'LatoRegular' !important;
    line-height: 23.2px !important;
}

header li.mega-current-menu-item > a,
header li.mega-current_page_ancestor > a,
header ul > li:hover > a  {
    color: rgb(0 0 0) !important;
}

header ul > li > ul li:hover > a {
    color: #698ac3 !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu[data-effect="fade"] li.mega-menu-item.mega-menu-flyout > ul.mega-sub-menu {
    background: white !important;
    border: 1px solid rgba(0, 0, 0, 0.175) !important;
    padding: 16px 16px 16px 16px !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
    padding: 0 0 1px 0 !important;
    background-color: transparent !important;
    font-size: 16px !important;
    line-height: 23.2px !important;
    font-family: 'LatoRegular' !important;
    padding: 3.2px 8px !important;
}

#mega-menu-wrap-header-menu .mega-menu-toggle,
#mega-menu-wrap-header-menu {
    background-color: transparent !important;
}

header #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator:after {
    content: "" !important;
    display: block;
    border-top: 1px solid currentColor;
    border-left: 1px solid currentColor;
    padding-top: 0.35em;
    padding-left: 0.35em;
    transform: rotate(-135deg);
    transition: transform 0.3s ease;
}

header #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item-has-children.mega-toggle-on > a.mega-menu-link > span.mega-indicator:after {
    transform: rotate(45deg);
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link {
    height: auto;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px;
    font-size: 16px;
    background-color: transparent !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item-has-children.mega-toggle-on > a.mega-menu-link > span.mega-indicator {
    margin-bottom: -5px;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link{
    color: rgb(0 0 0) !important;
    background-color: transparent;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item > a.mega-menu-link:before {
    content: "";
    border: none;
    transform: unset;
    top: auto;
    background: #2151a8;
    left: .5em;
    right: .5em;
    bottom: calc(.5rem / 2);
    height: 2px;
    width: auto;
    max-width: 0;
    transition: max-width 0.5s ease;
    display: block;
    position: absolute;
    margin: 0;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.mega-menu-item-has-children > a.mega-menu-link:before {
    right: 1.5em;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.mega-menu-item-has-children > a.mega-menu-link:hover:before {
    right: 1.9em;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.mega-current_page_item > a.mega-menu-link:before,
#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item > a.mega-menu-link:hover:before,
#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link:before {
    opacity: 0.75;
    max-width: 100%;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item ul li > a.mega-menu-link:before {
    content: none;
}

#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner, 
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner::before, 
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner::after {
    width: 28px !important;
    height: 2px !important;
}

#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-slider .mega-toggle-animated-inner {
    top: 2px;
}

#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-slider .mega-toggle-animated-inner::before {
    top: 8px;
}

#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-slider .mega-toggle-animated-inner::after {
    top: 16px;
}

#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 {
    margin: 0 !important;
}

#mega-menu-wrap-header-menu .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-animated-slider .mega-toggle-animated-inner::after {
    top: 20px;
}

#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-box {
    width: 29px !important;
    height: 19px !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link:hover {
    background-color: transparent !important;
}

.panel-grid-cell .so-panel:after {
    content: none !important;
}

footer .footer-outer {
    padding-top: 2.625rem;
    padding-bottom: 2.625rem;
    color: #2151A8;
}

.footer-contact>*:last-child {
    margin-bottom: 0;
}

.footer-contact>*:first-child {
    margin-top: 0;
}

.address-2 .info-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 5px;    
}

footer p {
    margin: 0;
}

.address-2 .label {
    min-width: 60px;
}

.footer-outer a {
    text-decoration: none;
    color: #2151a8;
}

footer li {
    font-size: 16px;
    line-height: 24px;
    font-family: 'LatoRegular' !important;
}

footer ul a {
    color: #2151a8;
    text-decoration: none;
}

footer ul li:hover > a {
    color: #698ac3;
}

.footer-menu-section+.footer-info-section {
    margin-top: 40px;
}

.footer-menu-section+.footer-info-section {
    padding-top: 1em;
    margin-top: 1em;
    border-top: 1px solid #2151A8;
}

/* .sociallinks-list {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    margin: 0;
    list-style: none;
    gap: 0.25rem;
}

.sociallinks-item {
    width: 100%;
}

.footer-sociallinks .sociallinks-item {
    width: auto;
}

.footer-sociallinks .sociallinks-link {
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: 2.5rem;
    height: 2.5rem;
    color: inherit;
    opacity: 0.75;
    transition: all ease-in-out 0.3s;
    background-color: rgba(255, 255, 255, 0.05);
}

.footer-sociallinks .sociallinks-link {
    opacity: 1 !important;
}

.footer-sociallinks .sociallinks-link-icon {
    font-size: 3rem;
    width: 3rem;
    height: 3rem;
    color: #2151A8;
    opacity: 1 !important;
}

.footer-sociallinks .sociallinks-link-label {
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.footer-sociallinks .sociallinks-link-label:not(caption) {
    position: absolute !important;
} */

footer .wp-block-social-links {
    margin: 0 !important;
}

footer .wp-social-link {
    background-color: transparent !important;
}

footer li.wp-social-link a {
    /* width: 3rem !important;
    height: 3rem !important; */
    color: #2151A8 !important;
    padding: 0;
}

footer li.wp-social-link a svg {
    width: 3rem !important;
    height: 3rem !important;
}

footer .footer-meta .meta_menu {
    margin: 0 !important;
    list-style: none !important;
    padding-left: 0 !important;
}

.gallery {
    width: 100%;
    max-width: 620px;
    margin: 40px auto;
    overflow: hidden;
}

.gallery-slider {
    width: 100%;
    height: auto;
    margin: 0 0 10px 0;
}

.gallery-slider .swiper-slide {
    width: auto;
    height: 400px;
}

.gallery-slider .swiper-slide img {
    display: block;
    width: auto;
    height: 100%;
    margin: 0 auto;
}

.gallery-thumbs {
    width: 100%;
    padding: 0;
    overflow: hidden;
}

.gallery-thumbs .swiper-slide {
    width: 100px;
    height: 100px;
    text-align: center;
    overflow: hidden;
    opacity: 0.1;
}

.gallery-thumbs .swiper-slide-active {
    opacity: 1;
}

.gallery-thumbs .swiper-slide img,
.f-thumbs__slide__img {
    width: 100%;
    height: auto;
}

.f-thumbs.is-horizontal .f-thumbs__slide {
    height: 107px;
    width: 105px;
    /* display: block; */
}

.fancybox-image {
    cursor: zoom-in;
}

.f-thumbs.is-horizontal .f-thumbs__track {
    transform: inherit !important;
}

.f-thumbs__slide .f-thumbs__slide__button {
    width: 100% !important;
}

.f-thumbs__track::before {
    content: none !important;
}

.f-thumbs__viewport {
    display: flex;
    justify-content: center;
}

.schrift-bold {
    font-weight: bold;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    font-family: 'LatoLight', sans-serif;
    color: #2151A8;
}

h4,.h4 {
    font-size: 1.25rem
}

.accordion-button {
    color: #2151A8 !important;
}

.accordion-button:focus {
    z-index: 3;
    border-color: #90a8d4;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(33,81,168,0.25);
    background-color: transparent;
    border-radius: 0 !important;
}

.accordion-button:not(.collapsed) {
    /* color: var(--bs-accordion-active-color); */
    background-color: #ffffff;
    box-shadow: 0;
}

.accordion-item {
    border-radius: 0 !important;
}
.accordion-body {
    padding: 1.25rem !important;
}

hr {
    margin: 1rem 0;
    color: inherit;
    border: 0;
    border-top: 1px solid;
    opacity: 0.25;
}

.textpic {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}

.textmedia-item, .textpic-item {
    order: 1;
    width: 100%;
}

.gallery-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

figure {
    margin: 0 0 1rem;
}

figure {
    display: block;
    margin-bottom: 1rem;
}

.gallery-item {
    width: 100%;
}

/* .gallery-item-size-1 {
    --gallery-columns: 1;
} */

.gallery-item figure {
    margin-bottom: 0;
}


figure img, figure picture {
    display: block;
    height: auto;
    max-width: 100%;
    margin: 0 auto;
}

.gallery-item img, .gallery-item picture {
    width: 100%;
    height: auto;
}

.frame-header,
.widget-title {
    margin-bottom: 1rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

.textmedia-text>*:last-child, .textpic-text>*:last-child {
    margin-bottom: 0;
}

.textmedia-centered, .textpic-centered {
    align-items: center;
}

.text_with_image {
    padding-top: 42px;
    /* padding-bottom: 42px; */
}

.text_with_image + .accordians_body {
    padding-top: 42px;
    /* padding-bottom: 42px; */
}

a {
    /* color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1)); */
    text-decoration: underline;
}

a {
    color: #2151a8;
    text-decoration: none;
}

.frame a:not([class]) {
    color: #2151A8;
}

.w-100 iframe {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.w-100 .textwidget > p {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}

.card-img-top picture, .card-img-top img {
    width: 100%;
    height: auto;
}

.card-menu {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.stretched-link::after {
    content: none !important;
}

:root {
    --cardmenu-gap: 1rem;
    --cardmenu-columns: 1;
}

.card-menu-item {
    width: 100%;
}

.card {
    color: #000000;
    background: var(--bs-body-bg);
}

.card-menu-item .card {
    height: 100%;
}

.card-img-top {
    overflow: hidden;
}

.grayscale {
    filter: grayscale(100%);
}

.card:hover .grayscale {
    filter: grayscale(0%);
}

.card-menu-item .card-img-top {
    max-width: 150px;
    margin: auto;
}

.card a:not(.btn) {
    color: #2151A8;
}

.card-body>*:first-child {
    margin-top: 0;
}

.card-body>*:last-child {
    margin-bottom: 0;
}

.card-title {
    font-size: 1.35rem;
    margin-bottom: 0.5rem;
}

.card-body {
    padding: 1.5rem;
}

.visually-hidden, .form-label, .visually-hidden-focusable:not(:focus):not(:focus-within) {
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.visually-hidden:not(caption), 
.form-label:not(caption), 
.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
    position: absolute !important;
}

.form-control, 
.form-group input[type="file"], 
.frame-type-felogin_login input[type="text"], 
.frame-type-felogin_login input[type="password"] {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #000;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #959595;
    appearance: none;
    border-radius: 0;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus, 
.form-group input[type="file"]:focus, 
.frame-type-felogin_login input[type="text"]:focus, 
.frame-type-felogin_login input[type="password"]:focus {
    color: #000;
    background-color: #fff;
    border-color: #90a8d4;
    outline: 0;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075), 0 0 0 0.25rem rgba(33, 81, 168, 0.25);
}

.form-check-input:focus-visible, 
.form-select:focus-visible, 
.form-control:focus-visible, 
.form-group input[type="file"]:focus-visible, 
.frame-type-felogin_login input[type="text"]:focus-visible, 
.frame-type-felogin_login input[type="password"]:focus-visible {
    --bs-input-focus-ring-contrast-color: #ffffff;
    --bs-input-focus-ring-color: #000000;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(33, 81, 168, 0.25), 0 0 0 2px #ffffff, 0 0 0 4px #000;
}

.form-select {
    display: block;
    width: 100%;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #000;
    background-color: #ffffff;
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    border: 1px solid #959595;
    border-radius: 0;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    appearance: none;
}

.form-select:focus {
    border-color: #90a8d4;
    outline: 0;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075), 0 0 0 0.25rem rgba(33, 81, 168, 0.25);
}

.form-control, .form-group input[type="file"], 
.frame-type-felogin_login input[type="text"], 
.frame-type-felogin_login input[type="password"], 
.form-select {
    background-color: #f2f2f2;
    border: 1px solid #ababab;
}

.btn-primary, .frame-type-felogin_login input[type="submit"] {
    color: #ffffff;
    background-color: #2151A8;
    border-radius: 0;
}

.btn-primary:hover, .frame-type-felogin_login input[type="submit"]:hover {
    background-color: #698ac3;
    border-color: #193d7e;
}

.breadcrumb-section {
    background-color: #f8f8f8;
}

.breadcrumb-section .breadcrumb {
    background-color: transparent;
    padding-left: 0;
    padding-right: 0;
    border-radius: 0;
    margin-bottom: 0;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.breadcrumb-link-title {
    display: inline-flex;
    align-items: center;
    gap: 0.25em;
    text-decoration: inherit;
}

.breadcrumb_last {
    color: rgba(33, 37, 41, 0.75);
    padding-left: 0.3rem;
}

.breadcrumb-item  > span.breadcrumb-text {
    margin-left: -0.3rem;
}

span.breadcrumb-text span.breadcrumb-text {
    padding-left: 0.3rem;
    padding-right: 0.3rem;
}

.scroll-top {
    overflow: hidden;
    transition: all 0.3s ease-in-out;
    z-index: 1020;
    background-color: #494949;
    color: #ffffff;
    bottom: 20px;
    right: 20px;
    position: fixed;
    opacity: 0;
    width: 3em;
    height: 3em;
    border-radius: 4px;
}

.scroll-top.scroll-top-visible {
    opacity: 1;
}

.scroll-top .scroll-top-icon {
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.scroll-top .scroll-top-icon:before {
    content: "";
    position: absolute;
    height: 30%;
    width: 30%;
    border-top: 1px solid;
    border-left: 1px solid;
    top: 55%;
    left: 55%;
    transform: translate(-50%, -50%);
}

.swiper-pagination {
    position: static !important;
    color: #2151A8 !important;
}

.swiper-pagination-bullet-active {
    background-color: #2151A8 !important;
}

.carousel {
    position: relative;
}

.carousel {
    container-type: inline-size;
    overflow: hidden;
}

.carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.carousel-item-type-header {
    color: #ffffff;
    text-shadow: 3px 3px 5px rgba(0, 0, 0, 0.6);
    font-weight: bold;
    font-family: LatoBold, sans-serif;
}

.carousel .item {
    height: 400px;
}

.carousel .carousel-item {
    padding-left: 20px;
    padding-right: 20px;
}

.carousel-fade .carousel-item {
    perspective: initial !important;
    transform: initial !important;
}

.carousel .carousel-backgroundimage-container {
    overflow: hidden;
}

.carousel .carousel-backgroundimage-container, 
.carousel .carousel-backgroundimage {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-position: center;
    background-size: cover;
}

.carousel .carousel-backgroundimage-parallax {
    background-attachment: fixed;
    background-repeat: no-repeat;
}

.carousel .carousel-content {
    position: relative;
    height: 100%;
}

.carousel .carousel-content-inner {
    display: flex;
    height: 100%;
    align-items: center;
    gap: 1rem;
    margin: 0 auto;
}

.carousel-item-type-header .carousel-content-inner {
    align-items: end;
}

.carousel-item-type-header .carousel-text-inner {
    margin: 0 auto;
}

.carousel-item-type-header .carousel-text-inner {
    width: 100% !important;
}

.carousel .carousel-item h1, 
.carousel .carousel-item .h1, 
.carousel .carousel-item h2, 
.carousel .carousel-item .h2, 
.carousel .carousel-item h3, 
.carousel .carousel-item .h3, 
.carousel .carousel-item h4, 
.carousel .carousel-item .h4, 
.carousel .carousel-item h5, 
.carousel .carousel-item .h5, 
.carousel .carousel-item h6, 
.carousel .carousel-item .h6 {
    color: inherit;
    margin-top: 0;
}

.carousel-item-type-header .carousel-text-inner h1, 
.carousel-item-type-header .carousel-text-inner .h1 {
    margin-bottom: 1em;
    font-family: LatoBold, sans-serif;
    color: #ffffff !important;
}

.carousel .carousel-item h1, 
.carousel .carousel-item .h1, 
.carousel .carousel-item h2, 
.carousel .carousel-item .h2, 
.carousel .carousel-item h3, 
.carousel .carousel-item .h3, 
.carousel .carousel-item h4, 
.carousel .carousel-item .h4, 
.carousel .carousel-item h5, 
.carousel .carousel-item .h5, 
.carousel .carousel-item h6, 
.carousel .carousel-item .h6 {
    color: #2151A8;
    margin-top: 0;
}

.carousel-item-layout-light {
    --carousel-item-color: #000000;
    --carousel-item-background: #F2F2F2;
    --carousel-item-link-color: #2151A8;
    --carousel-item-link-hover-color: #1a4186;
}

.carousel-item.carousel-item-layout-light {
    background-color: #F2F2F2;
    color: #000000;
}

.carousel-item-type-text .carousel-content-inner .carousel-text-inner {
    background: #ffffff;
    width: 100%;
    padding: 2em;
}

.carousel-item-type-text .carousel-text-inner {
    margin: 0 auto;
}

.carousel .carousel-item-type-text .carousel-content-inner {
    width: 100%;
    max-width: 100%;
}

.counter-box {
    display: block;
    background: #ffffff;
    padding: 40px 20px 37px;
    text-align: center;
}

.counter-box img {
    height: 100px;
}

.counter-box .counter {
    display: block;
    font-size: 32px;
    font-family: LatoLight, sans-serif;
    color: #2151A8;
    line-height: 28px;
}

.counter-box p {
    margin: 5px 0 0;
    padding: 0;
    color: #313131;
    font-size: 18px;
    font-weight: 500;
}

.frame-container {
    position: relative;
    --bs-gutter-x: 40px;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x)* .5);
    padding-left: calc(var(--bs-gutter-x)* .5);
    margin-right: auto;
    margin-left: auto;
}

.frame-backgroundimage-container {
    overflow: hidden;
}

.frame-backgroundimage-container, .frame-backgroundimage {
    position: absolute;
    top: 0;
    /* left: 0; */
    height: 100%;
    width: 100%;
    background-position: center;
    background-size: cover;
}

.frame-layout-bg-image-left .frame-backgroundimage {
    width: 50%;
}

.frame-layout-bg-image-right .frame-backgroundimage {
    width: 50%;
    margin-left: 50%;
}

.contentcontainer {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
}

.frame-inner>*:last-child {
    margin-bottom: 0;
}

.contentcontainer .frame-background-none .frame-container-default, 
.contentcontainer .frame-background-none .frame-group-container, 
.contentcontainer .frame-layout-embedded .frame-container-default, 
.contentcontainer .frame-layout-embedded .frame-group-container {
    padding-left: 0;
    padding-right: 0;
}

.text-with-image {
    position: relative;
}

/* spacing */

.frame-spacing-xl {
    padding: 2.625rem;    
}

.frame-spacing-before-after-xl {
    padding-top: 2.625rem;
    padding-bottom: 2.625rem;
}

.frame-spacing-before-xl {
    padding-top: 2.625rem;    
}

.frame-spacing-after-xl {
    padding-bottom: 2.625rem;    
}

.list-group-flush {
    border-radius: 0;
}

.product-in-overview .list-group .list-group-item {
    border: none;
    background: none;
}

.product-in-overview .product-image {
    height: 350px;
}

.product-in-overview .product-image img {
    width: 270px;
    height: auto;
    transition: width 0.3s ease;
}

.product-in-overview:hover .product-image img, 
.product-in-overview:focus .product-image img, 
.product-in-overview:focus-within .product-image img {
    width: 300px;
}

.frame-background-light-white {
    background: #F2F2F2;
}

.frame-background-white-light {
    background: #ffffff;
}

.frame-background-light {
    background: #F2F2F2;
}

.row {
    --bs-gutter-x: 40px;
}

.g-0, .gx-0 {
    --bs-gutter-x: 0;
}

.text-primary {
    color: #2151a8 !important;
}

.carousel.carousel-fullscreen {
    height: calc(100vh - 70px);
}

.carousel.carousel-fullscreen .item {
    height: calc(100vh - 70px);
}

.schrift-blau-bold {
    color: #2151A8;
    font-weight: bold;
}

.nav-link {
    color: #2151A8 !important;
}

.nav-link:hover, .nav-link:focus {
    color: #698ac3 !important;
}

.bg-light {
    background-color: #f2f2f2 !important;
}

.text-dark {
    color: #313131 !important;
}

.contentcontainer .frame-background-none .frame-container-default, 
.contentcontainer .frame-background-none .frame-group-container, 
.contentcontainer .frame-layout-embedded .frame-container-default, 
.contentcontainer .frame-layout-embedded .frame-group-container {
    padding-left: 0;
    padding-right: 0;
}

.accordion-body table {
    border-collapse: separate;
    caption-side: inherit;
    border-spacing: 0 1rem;
}

.accordion-body table tbody {
    vertical-align: baseline;
}