/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/
.digicube-referenz-gallery__main {
    position: relative;
    background: #dce0e3;
}

.digicube-referenz-gallery__slide {
    aspect-ratio: 4 / 3;
}

.digicube-referenz-gallery__slide[hidden] {
    display: none;
}

.digicube-referenz-gallery__slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.digicube-referenz-gallery__counter {
    display: none;
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 12px 20px;
    background: #2b83cd;
    color: #fff;
    font-family: 'Fira Bold', sans-serif;
}

.digicube-referenz-gallery.is-ready .digicube-referenz-gallery__counter {
    display: block;
}

.digicube-referenz-gallery__thumbnails {
    display: none;
    grid-auto-columns: calc((100% - 60px) / 6);
    grid-auto-flow: column;
    gap: 12px;
    overflow-x: auto;
    padding-top: 16px;
    scrollbar-width: thin;
}

.digicube-referenz-gallery.is-ready .digicube-referenz-gallery__thumbnails {
    display: grid;
}

.digicube-referenz-gallery__thumbnail {
    position: relative;
    aspect-ratio: 1;
    min-width: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: #dce0e3;
    cursor: pointer;
}

.digicube-referenz-gallery__thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.digicube-referenz-gallery__thumbnail[aria-pressed='true']::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 4px;
    background: #2b83cd;
    content: '';
}

.digicube-referenz-gallery__thumbnail:focus-visible {
    outline: 3px solid #155a96;
    outline-offset: -3px;
}
.refrenze-full ul {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
p.news-more a {
    text-transform: none !important;
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;
}
.news-all a {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
}
p.news-more a::after,
.news-all a::after {
    content: '';
    display: inline-block;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' stroke-linejoin='round' stroke-linecap='round' stroke-width='1.4' stroke='%230082cd' fill='none' viewBox='0 0 28 28'%3E%3Ccircle r='12.5' cy='14' cx='14'/%3E%3Cpath d='M12 9l5 5-5 5'/%3E%3C/svg%3E");
}
#select-wrapper {
    display: grid;
    grid-template-columns: 2.8fr 1fr;
    column-gap: 40px;
    row-gap: 16px;
    margin-bottom: 40px;
    border-bottom: 1px solid #E1E4E8;
}
.reset-wrap {
    display: flex;
    align-items: center;
    column-gap: 24px;
    row-gap: 16px;
    justify-content: end;
}
.reset-wrap p {
    margin-bottom: 0;
    font-size: 17px;
    line-height: 1.2;
    letter-spacing: 0.06em;
    color: #2A2E33;
}
.reset-wrap .wp-block-search-filter-control-reset button {
    font-size: 16px; 
    letter-spacing: 0.06em; 
    background: none; 
    border: none !important; 
    color: var(--accent); 
    cursor: pointer; 
    min-height: 44px; 
    padding: 0 10px;
    position: relative;
}
.reset-wrap .wp-block-search-filter-control-reset button:focus,
.reset-wrap .wp-block-search-filter-control-reset button:active,
.reset-wrap .wp-block-search-filter-control-reset button:focus-visible {
    outline: none !important; 
    border: none !important; 
    box-shadow: none !important; 
}
.reset-wrap .wp-block-search-filter-control-reset button::after {
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    width: 0;
    transition: width 0.3s ease-in-out;
}
.reset-wrap .wp-block-search-filter-control-reset button:hover::after {
    width: 100%;
    background: var(--accent);
}
.reset-wrap .wp-block-search-filter-control-reset button:focus-visible,
.reset-wrap .wp-block-search-filter-control-reset button:hover {
    color: var(--accent) !important; 
}
#select-wrapper .select-buttons-wrap {  
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 40px;
    row-gap: 16px;
}
#select-wrapper .select-buttons-wrap .wp-block-search-filter-choice-select .search-filter-label {
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #2A2E33;
    margin-right: 10px;
    position: relative;
}
#select-wrapper .select-buttons-wrap .wp-block-search-filter-choice-select .search-filter-component-combobox.search-filter-field__input {
    font-size: 18px; 
    min-height: 44px; 
    padding: 0 4px; 
    border: none; 
    border: none; 
    border-bottom: 1px solid #2A2E33; 
    background: #FFFFFF; 
    color: #2A2E33;
    border-radius: 0;
    display: flex;
    align-items: end;
    width: 100%;
    justify-content: space-between;
}
#select-wrapper .select-buttons-wrap .wp-block-search-filter-choice-select .search-filter-component-combobox.search-filter-field__input .search-filter-component-combobox__selection {
    padding: 0 !important;
    font-size: 18px; 
    color: #2A2E33;
}
#select-wrapper .search-filter-component-combobox__header {
    align-items: flex-end !important;
    width: 100%;
}
#select-wrapper .search-filter-component-combobox__listbox-toggle {
    justify-content: flex-end !important;
}
#select-wrapper .search-filter-component-combobox__listbox-toggle::before {
    display: none !important;
}
#select-wrapper .search-filter-component-combobox__listbox-toggle .search-filter-icon {
    padding: 0 !important;
}
#select-wrapper .search-filter-component-combobox__listbox-toggle .search-filter-icon  svg {
    fill: #2A2E33 !important;
    color: #2A2E33 !important;
}
/* Hover over a dropdown */
#select-wrapper .select-buttons-wrap .search-filter-component-combobox__header:hover {
    color: var(--accent) !important;
}
/* Active / selected filter */
#select-wrapper .select-buttons-wrap .search-filter-component-combobox__selection:not(.search-filter-component-combobox__selection-placeholder) {
    color: var(--accent) !important;
}
/* Active dropdown */
#select-wrapper .select-buttons-wrap .search-filter-component-combobox-base--focused .search-filter-component-combobox__header {
    color: var(--accent) !important;
}
@media (max-width: 600px) {
    .digicube-referenz-gallery__thumbnails {
        grid-auto-columns: calc((100% - 36px) / 4);
    }
}

:root{
      --gf-local-bg-color: var(--accent)!important;
}
@font-face {
    font-family: 'Fira Light';
    src: url("assets/fonts/FiraSans-Light.woff2") format("woff2"),
        url("assets/fonts/FiraSans-Light.woff2") format("woff2");
    font-weight: 300;
    font-display: swap;
    font-style: normal;
}

@font-face {
    font-family: 'Fira Regular';
    src: url("assets/fonts/FiraSans-Regular.woff2") format("woff2"),
        url("assets/fonts/FiraSans-Regular.woff2") format("woff2");
    font-weight: 400;
    font-display: swap;
    font-style: normal;
}

@font-face {
    font-family: 'Fira Bold';
    src: url("assets/fonts/FiraSans-Bold.woff2") format("woff2"),
        url("assets/fonts/FiraSans-Bold.woff2") format("woff2");
    font-weight: 700;
    font-display: swap;
    font-style: normal;
}

b,
strong {
    font-family: 'Fira Bold';
    font-weight: 700;
}

body .gform_button.button {
    padding: 11px 20px 11px 40px!important;
    border-radius: 40px!important;
    border: 1px solid var(--contrast-2)!important;
    background-color: unset!important;
    color: var(--contrast-2)!important;
}
body .gform_button.button:hover {
    border: 1px solid var(--accent)!important;
    background-color: var(--accent)!important;
    color: var(--base-3)!important;
}

svg.bi.bi-send path {
    display: block!important;
    all: revert-layer!important;
}
body .gform_button.button:hover + svg.bi.bi-send path {
    fill: var(--base-3)!important;
}
.gform-footer.gform_footer.top_label {
    position: relative;
}
svg.bi.bi-send {
    position: absolute;
    top: 11px;
    left: 11px;
}
h2,
h3 {
    hyphens: auto;
}

a {
    text-decoration: none;
    transition: 0.3s ease-in-out;
}

body {
    overflow-x: hidden;
}

ol,
ul {
    margin: 0 0 20px 16px;
}

.wp-block-list li {
    margin-bottom: 16px;
    line-height: 20px;
    color: var(--accent);
}

.wp-block-list li:last-child {
    margin-bottom: 0;
}

.footer-bottom-nav ul li a,
.main-nav>ul>li a {
    position: relative;
}

.site-logo {
    z-index: 9;
}

.main-nav>ul>li a:before,
.footer-bottom-nav ul li a:before {
    content: "";
    width: 0;
    position: absolute;
    transition: width .3s ease-in;
    left: 0px;
    height: 1px;
    bottom: 0px;
}

.main-nav>ul>li a:before {
    background-color: var(--accent);
}

.footer-bottom-nav ul li a:before {
    background-color: var(--base);
}

.main-nav>ul>li a:hover:before,
.footer-bottom-nav ul li a:hover:before,
.footer-bottom-nav ul li.current-menu-item a:before {
    width: 100%;
}

a.wp-block-button__link.wp-element-button {
    background-color: transparent;
    padding: 0;
    position: relative;
}

.wp-block-button__link:hover,
.wp-block-button__link:focus {
    background-color: transparent !important;
    font-family: 'Fira Bold';
    font-weight: 700;
}

.wp-block-button__link.wp-element-button:after {
    content: '';
    display: inline-block;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg id='Group_31' data-name='Group 31' transform='translate(-325 -655)'%3E%3Cg id='Ellipse_1' data-name='Ellipse 1' transform='translate(325 655)' fill='none' stroke='%23323943' stroke-width='1'%3E%3Ccircle cx='12' cy='12' r='12' stroke='none'/%3E%3Ccircle cx='12' cy='12' r='11.5' fill='none'/%3E%3C/g%3E%3Cpath id='Path_119' data-name='Path 119' d='M5232.89-2557.264v-8h-8' transform='translate(-5173.985 -1219.297) rotate(45)' fill='none' stroke='%23323943' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 10px;
    height: 24px;
    width: 24px;
    transition: 0.3s ease-in-out;
    top: 8px;
    position: relative;
    color: var(--contrast-2);
}

.blue-btn .wp-block-button__link:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg id='Group_1357' data-name='Group 1357' transform='translate(-325 -655)'%3E%3Cg id='Group_31' data-name='Group 31'%3E%3Cg id='Ellipse_1' data-name='Ellipse 1' transform='translate(325 655)' fill='none' stroke='%230082cd' stroke-width='1'%3E%3Ccircle cx='12' cy='12' r='12' stroke='none'/%3E%3Ccircle cx='12' cy='12' r='11.5' fill='none'/%3E%3C/g%3E%3Cpath id='Path_119' data-name='Path 119' d='M5232.89-2557.264v-8h-8' transform='translate(-5173.985 -1219.297) rotate(45)' fill='none' stroke='%230082cd' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
}

.white-btn .wp-block-button__link:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg id='Group_1357' data-name='Group 1357' transform='translate(-325 -655)'%3E%3Cg id='Group_31' data-name='Group 31'%3E%3Cg id='Ellipse_1' data-name='Ellipse 1' transform='translate(325 655)' fill='none' stroke='%23fff' stroke-width='1'%3E%3Ccircle cx='12' cy='12' r='12' stroke='none'/%3E%3Ccircle cx='12' cy='12' r='11.5' fill='none'/%3E%3C/g%3E%3Cpath id='Path_119' data-name='Path 119' d='M5232.89-2557.264v-8h-8' transform='translate(-5173.985 -1219.297) rotate(45)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
}

.wp-block-button__link {
    color: var(--contrast-2) !important;
    transition: none;
}

.blue-btn .wp-block-button__link {
    color: var(--accent) !important;
}

.white-btn .wp-block-button__link {
    color: var(--base-3) !important;
}

.gb-container p:last-child {
    margin-bottom: 0;
}

.hide__me__container {
    display: none;
}

.gb-query-loop-wrapper:empty+.hide__me__container {
    display: block;
}

.hide__me__subcontainer {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
}

/*Footer/Header*/
#sticky-navigation .inside-navigation {
    margin: 0 auto !important;
    max-width: 1364px;
    padding: 30px 0;
    justify-content: space-between;
}

#sticky-navigation {
    margin-left: 0 !important;
    background-color: var(--base-3) !important;
}

#sticky-navigation .navigation-branding {
    margin-right: 0;
}

#sticky-navigation .sticky-navigation-logo img {
    padding: 0;
}

.footer-bottom-nav ul {
    gap: 40px;
}

.footer-top-grid {
    margin-top: 75px;
}

.footer-main-desc a {
    color: var(--contrast-2);
}

.footer-main-desc a:hover {
    color: var(--accent);
}

#primary-menu,
.menu-bar-items {
    margin-left: auto !important;
}

.main-navigation {
    /* margin-left: 165px !important; */
    width: 100%;
}

.main-navigation .menu-bar-item a svg {
    width: 24px;
    height: 24px;
    fill: var(--accent);
}

.main-navigation .main-nav ul {
    gap: 80px;
}

.main-nav>ul>li.current-menu-item a {
    font-family: 'Fira Bold';
    font-weight: 700;
    color: var(--contrast-2) !important;
}

.main-navigation .main-nav ul li a,
.main-navigation .menu-bar-item a {
    padding: 0;
}

#generate-slideout-menu {
    margin-left: 0px !important;
}

.slideout-navigation.main-navigation {
    background: linear-gradient(to bottom, #2B83CD calc(100% - 160px), #559BD7 160px) !important;
}

#generate-slideout-menu .inside-navigation {
    padding: 135px 0 0px 0;
    max-width: 1360px;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 200px;
    height: 100%;
    align-items: baseline;
    position: relative;
}

#generate-slideout-menu .main-nav {
    margin-bottom: 0 !important;
    order: 1;
    min-width: auto;
    width: 60%;
}

#generate-slideout-menu .off-canvas-menu {
    order: 2;
    width: 40%;
    padding-left: 50px;
}

#generate-slideout-menu .slideout-info {
    position: absolute;
    bottom: 42px;
    display: flex;
    width: 100%;
    gap: 130px;
    align-items: center;
}

#generate-slideout-menu .off-canvas-menu ul {
    display: flex;
    flex-wrap: wrap;
}

#generate-slideout-menu .main-nav ul {
    gap: 24px;
}

#generate-slideout-menu .off-canvas-menu ul {
    gap: 38px;
}

#generate-slideout-menu .off-canvas-menu ul li {
    width: 100%;
}

#generate-slideout-menu .main-nav ul li,
#generate-slideout-menu .off-canvas-menu ul li {
    margin-bottom: 0;
    text-align: left !important;
}

#generate-slideout-menu .main-nav ul li a,
#generate-slideout-menu .off-canvas-menu ul li a {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: none;
}

#generate-slideout-menu .main-nav ul li a:after,
#generate-slideout-menu .off-canvas-menu ul li a:after {
    content: '';
    display: inline-block;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cg id='Group_1541' data-name='Group 1541' transform='translate(-325 -655)'%3E%3Cg id='Ellipse_1' data-name='Ellipse 1' transform='translate(325 655)' fill='none' stroke='%23fff' stroke-width='1'%3E%3Ccircle cx='24' cy='24' r='24' stroke='none'/%3E%3Ccircle cx='24' cy='24' r='23.5' fill='none'/%3E%3C/g%3E%3Cpath id='Path_119' data-name='Path 119' d='M16,16V0H0' transform='translate(345.313 667.686) rotate(45)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 10px;
}

#generate-slideout-menu .off-canvas-menu ul li a:after {
    width: 24px;
    height: 24px;
}

#generate-slideout-menu .main-nav ul li a:after {
    width: 48px;
    height: 48px;
}

#generate-slideout-menu .main-nav ul li a:hover:after,
#generate-slideout-menu .off-canvas-menu ul li a:hover:after,
#generate-slideout-menu .off-canvas-menu ul li.current_page_item a:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cg id='Group_1541' data-name='Group 1541' transform='translate(-325 -655)'%3E%3Cg id='Ellipse_1' data-name='Ellipse 1' transform='translate(325 655)' fill='none' stroke='%23323943' stroke-width='1'%3E%3Ccircle cx='24' cy='24' r='24' stroke='none'/%3E%3Ccircle cx='24' cy='24' r='23.5' fill='none'/%3E%3C/g%3E%3Cpath id='Path_119' data-name='Path 119' d='M16,16V0H0' transform='translate(345.313 667.686) rotate(45)' fill='none' stroke='%23323943' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E%0A");
}

#generate-slideout-menu .main-nav ul li a:hover,
#generate-slideout-menu .off-canvas-menu ul li a:hover,
#generate-slideout-menu .off-canvas-menu ul li.current_page_item a {
    color: var(--contrast-2);
}

#generate-slideout-menu .off-canvas-menu ul li a {
    font-size: 32px;
    line-height: 48px;
    letter-spacing: 2.56px;
    font-family: 'Fira Light';
    font-weight: 300;
}

#generate-slideout-menu .slideout-exit.has-svg-icon {
    padding-top: 45px;
    padding-right: 0;
    position: absolute;
    right: 0;
}

#generate-slideout-menu .slideout-exit.has-svg-icon svg {
    width: 24px;
    height: 24px;
    fill: var(--base-3);
}

.servicehotline {
    display: flex;
    border: 1px solid transparent;
    border-radius: 40px;
    align-items: center;
    background-color: #7FB4E1;
}

.shimg {
    padding: 16px 20px 16px 24px;
    background-color: var(--base-3);
    border-top-left-radius: 40px;
    border-bottom-left-radius: 40px;
}

.sht {
    padding: 0px 24px 0px 32px;
    font-size: 24px;
    line-height: 32px;
    font-family: 'Fira Light';
    font-weight: 300;
    letter-spacing: 1.92px;
    text-align: left;
}

.shtel {
    padding: 0px 35px 0px 0;
}

.shtel a {
    border: 1px solid var(--base-3);
    border-radius: 40px;
    padding: 4px 22px 4px 14px;
}

.shtel a:hover {
    background-color: #559BD7;
}

.shtel a svg {
    position: relative;
    top: 2px;
}

.shtel a span {
    letter-spacing: 0;
    padding-left: 10px;
}

.searchform .search-form {
    position: relative;
}

.searchform input.search-field {
    border-radius: 40px;
    min-width: 440px;
    position: relative;
    border: 1px solid transparent;
    background-color: #7FB4E1;
    min-height: 72px;
    padding: 0px 64px 0 24px;
    font-size: 24px;
    line-height: 48px;
    color: var(--base-3);
    font-family: 'Fira Light';
    font-weight: 300;
}

.searchform input.search-field::placeholder {
    color: var(--base-3);
    font-size: 24px;
    font-family: 'Fira Light';
    font-weight: 300;
}

button.search-submit {
    background-color: transparent;
    padding: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 24px;
}

.searchform button.search-submit svg {
    height: 28px;
    width: 28px;
    fill: var(--base-3);
}

.searchform input.search-field:focus,
.searchform input.search-field:active,
.searchform input.search-field:hover {
    outline: none;
}

.social-item {
    display: inline-flex !important;
    width: fit-content !important;
}

.social-item a {
    position: relative;
    color: transparent !important;
}

.social-item a:before {
    content: "";
    display: flex;
    height: 30px;
    width: 30px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 10px;
}

.social-item.fb-item a:before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' role='img' height='1em' width='1em' viewBox='0 0 320 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23ffffff' d='M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z'%3E%3C/path%3E%3C/svg%3E");
}

.social-item.insta-item a:before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' role='img' height='1em' width='1em' viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23ffffff' d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'%3E%3C/path%3E%3C/svg%3E");
}

.social-item.link-item a:before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' role='img' height='1em' width='1em' viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23ffffff' d='M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z'%3E%3C/path%3E%3C/svg%3E");
}

.social-item.fb-item a:hover:before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' role='img' height='1em' width='1em' viewBox='0 0 320 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z'%3E%3C/path%3E%3C/svg%3E");
}

.social-item.insta-item a:hover:before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' role='img' height='1em' width='1em' viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'%3E%3C/path%3E%3C/svg%3E");
}

.social-item.link-item a:hover:before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' role='img' height='1em' width='1em' viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z'%3E%3C/path%3E%3C/svg%3E");
}

.social-item a:after {
    display: none !important;
}

/*Patterns*/
.aktuelles {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 24px 40px 40px 24px;
    z-index: 6;
    width: 100%;
}

.aktuelles:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: transparent linear-gradient(180deg, #32394300 0%, #323943 100%) 0% 0% no-repeat padding-box;
    top: 0;
    left: 0;
    z-index: -1;
}

.aktuelles .wp-block-button__link {
    color: var(--base-3) !important;
}

.aktuelles h2 {
    line-height: 40px;
    font-family: 'Fira Bold';
    font-weight: 700;
    letter-spacing: 0.64px;
    color: var(--base-3);
}

.aktuelles h2 a {
    color: var(--base-3);
}

.cat-shadow a.gb-container-link:hover,
.searchReasultItem a:hover {
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.5);
}

.cat-shadow img {
    height: 640px;
    object-fit: cover;
    object-position: top;
    width: 100%;
}

.key-item p {
    letter-spacing: 0.64px;
}

.key-item figure {
    position: absolute;
    top: -40px;
}

.special-btn {
    position: relative;
}

.special-btn .gb-headline-text a {
    padding: 11px 20px 11px 40px;
    border-radius: 40px;
    border: 1px solid var(--contrast-2);
}

.special-cta-btn.special-btn .gb-headline-text a,
.special-cta-btn.special-btn .gb-headline-text a:hover {
    border: 1px solid var(--base-3);
}

.special-cta-btn.special-btn .gb-headline-text a:hover {
    background-color: var(--base-3);
    color: var(--accent);
}

.special-btn .gb-icon {
    position: absolute;
    left: 16px;
}

.special-btn .gb-headline-text a:hover {
    border: 1px solid var(--accent);
}

.special-btn .gb-icon svg path {
    transition: 0.3s ease-in-out;
}

.special-btn:hover .gb-icon svg path,
.special-cta-btn.special-btn:hover .gb-icon svg path {
    fill: var(--accent) !important;
}

.special-cta-btn.special-btn .gb-icon svg path {
    fill: var(--base-3) !important;
}

.standort-item img {
    height: 320px;
    width: 100%;
    object-fit: cover;
}

.cta-blue {
    isolation: isolate;
    position: relative;
    overflow: visible !important;
}

.blue-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 65%;
    height: 100%;
    mix-blend-mode: multiply;
    z-index: 1;
    background: var(--accent);
}

.cta-left-shadow:before,
.cta-left-shadow:after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 60px;
    background: var(--accent);
}

.cta-left-shadow:before {
    top: -60px;
}

.cta-left-shadow:after {
    bottom: -60px;
}

.image-column {
    height: 520px;
    object-fit: cover;
}

.image-column-two {
    height: 640px;
    object-fit: cover;
}

.cta-image-blue {
    width: 48% !important;
    background-color: transparent !important;
}

.cta-dark {
    background-color: transparent !important;
}

.cta-image-dark {
    width: 42%;
    background-color: transparent !important;
}

.cta-image-dark.cta-dark-hero {
    width: 60%;
}

.home .cta-image-blue-left.cta-dark-hero {
    bottom: -100px;
}

.content-layer h2:last-child {
    margin-bottom: 0;
}

.gb-tabs__buttons button {
    position: relative;
}

.gb-tabs__buttons button .gb-button-text {
    line-height: 32px;
}

.gb-tabs__buttons button:after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--contrast-3);
    position: absolute;
    bottom: -12px;
}

.gb-tabs__buttons button.gb-block-is-current:after {
    background-color: var(--accent);
}

.gb-tabs__buttons button {
    flex-direction: column;
    gap: 8px;
    hyphens: auto;
}

.gb-tabs__buttons button.gb-block-is-current .gb-icon path,
.gb-tabs__buttons button.gb-block-is-current .gb-icon g,
.gb-tabs__buttons button:hover .gb-icon path,
.gb-tabs__buttons button:hover .gb-icon g {
    stroke: var(--base-3)
}

.breadcrumb a {
    color: var(--contrast-3);
}

.breadcrumb a:hover {
    color: var(--accent);
}

.breadcrumb li:after {
    padding: 0 5px;
}

.single-blog-info .breadcrumb a {
    color: #ADAFB3;
}

.inner-single-hero:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background-color: var(--base);
}

.single-post-date p {
    margin-bottom: 0;
}

.single-post-date {
    display: inline-flex;
    font-size: 24px;
    line-height: 32px;
}

.single-post-author {
    text-transform: capitalize;
    padding-left: 7px;
}

.single .site-content,
.search .site-content {
    padding: 80px 0px 240px 0px;
}

.search .search-h1 {
    margin-bottom: 60px;
}

.search-wrap {
    display: flex;
    flex-wrap: wrap;
    row-gap: 16px;
    margin-left: -16px;
}

.search .searchResult {
    width: 33.33%;
    padding-left: 16px;
}

.searchReasultItem {
    position: relative;
    padding: 0;
}

.searchReasultItem a {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 99;
}

body.category,
body.page-id-275 {
    background: linear-gradient(to bottom, #EAEBEC 0 680px, #FFFFFF 680px 100%);
}

.single>.site>.site-content>.content-area>.site-main>p {
    font-size: 24px;
    line-height: 40px;
    font-weight: 300;
    font-family: 'Fira Light';
    max-width: 1134px;
    margin: 0 auto 30px auto;
}

.single>.site>.site-content>.content-area>.site-main>p:last-child {
    margin-bottom: 0;
}

.custom-table table td {
    border-right: 3px solid white;
    background-color: var(--base);
    border-bottom: 16px solid white;
    border-top: 0;
    padding: 15px;
    border-left: 0;
    font-size: 24px;
    line-height: 32px;
}

.custom-table table {
    margin-bottom: 0 !important;
    border: 0 !important;
}

.box-icon img {
    position: absolute;
    top: -100px;
    left: 0;
    right: 0;
    margin: 0 auto !important;
}

.box-icon p:last-child {
    margin-top: 20px;
}

.job-query a {
    padding: 0 24px 24px 24px;
}

.job-query a:hover {
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.5);
}

.single-job_listing .site-content {
    padding: 0px 0px 240px 0px;
}

.inner-job-hero {
    display: flex;
    min-height: 580px;
    overflow-x: hidden;
    position: relative;
}

.inner-job-hero:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background-color: var(--base);
}

.hero-job-background {
    flex: 1;
    display: flex;
    justify-content: flex-start;
    position: relative;
    z-index: 1;
}

.hero-job-background::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 49%;
    height: 100%;
    background-image: var(--hero-background-image);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: cover;
    z-index: -1;
    background-color: var(--base);
}

.hero-job-wrapper {
    max-width: 1364px;
    margin: 0 auto;
    width: 100%;
}

.hero-job-wrap {
    display: flex;
    flex-wrap: wrap;
}

.hero-job-wrap {
    width: 50%;
}

.hero-information {
    height: 100%;
    position: relative;
    padding-top: 40px;
    padding-right: 80px;
    padding-bottom: 40px;
}

.hero-information h1 {
    font-family: "Fira Bold";
    font-weight: 700;
    margin-top: 40px;
    margin-bottom: 16px;
    word-break: auto-phrase;
    hyphens: auto;
    font-size: 50px;
}

.hero-desc-meta {
    display: flex;
    align-items: center;
    gap: 33px;
    margin-bottom: 40px;
}

.hero-desc-meta h2,
.hero-desc-meta ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
}

.hero-desc-meta h2 svg,
.hero-desc-meta ul svg {
    margin-right: 16px;
}

.hero-desc-meta h2,
.hero-desc-meta ul li,
.hero-desc {
    font-family: "Fira Light";
    font-weight: 300;
}

.hero-desc-meta ul li {
    font-size: 32px;
    line-height: 48px;
}

.hero-desc {
    line-height: 32px;
    letter-spacing: 0.64px;
    color: var(--contrast-2)
}

.job-wrapper {
    padding-top: 80px;
}

.job-content {
    display: flex;
    position: relative;
}

.job-main-content,
.job-team-member {
    width: 50%;
}

.job-team-member {
    padding-left: 50px;
    display: grid;
    justify-content: end;
    align-items: start;
}

.job-sticky-sidebar {
    position: sticky;
    top: 80px;
    max-width: 440px;
}

.job-team-member .team-member {
    width: 100%;
}

.job-tm {
    margin-bottom: 40px;
    line-height: 32px;
    letter-spacing: 0.64px;
}

.job-main-content h2:first-child {
    margin-top: 0;
}

.job-main-content h2 {
    margin-top: 80px;
    margin-bottom: 16px;
}

.job-main-content p {
    line-height: 32px;
}

.job-main-content ul {
    margin-top: 40px
}

.dienstleistungen-parent header,
.single-referenz header {
    position: absolute;
    width: 100%;
    background-color: transparent;
    background: transparent linear-gradient(180deg, #0f0f10fa 0%, #32394300 100%) 0% 0% no-repeat padding-box;
}

.dienstleistungen-parent .main-navigation,
.single-referenz .main-navigation {
    background-color: transparent !important;
}

.dienstleistungen-parent .header-image.is-logo-image,
.single-referenz .header-image.is-logo-image {
    filter: brightness(0) invert(1);
}

.dienstleistungen-parent .main-navigation .main-nav ul li a,
.single-referenz .main-navigation .main-nav ul li a {
    color: var(--base-3);
}

.dienstleistungen-parent .main-navigation .menu-bar-item a svg,
.single-referenz .main-navigation .menu-bar-item a svg {
    fill: var(--base-3);
}

.dienstleistungen-parent #sticky-navigation .main-nav ul li a,
.single-referenz #sticky-navigation .main-nav ul li a {
    color: var(--contrast-2) !important;
}

.dienstleistungen-parent #sticky-navigation .menu-bar-item a svg,
.single-referenz #sticky-navigation .menu-bar-item a svg {
    fill: var(--accent) !important;
}
.single-referenz .site-content {
    padding-top: 0px;
}
.single-referenz .hero-services.alignfull,
.facts-wrapper.alignfull {
    margin-left: calc(-100vw / 2 + 100% / 2);
    margin-right: calc(-100vw / 2 + 100% / 2);
    max-width: 100vw;
    width: auto;
}
.service-box {
    position: absolute;
    bottom: -100px;
    right: 0;
}
.categories-years {
    display: flex;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
    color: var(--base-3);
    margin-bottom: 16px;
}
.categories-years p {
    margin-bottom: 0;
}
.categories-years p:not(:last-child)::after {
    content: "·";
    margin-left: 8px;
}
.single-referenz .service-box {
    bottom: -60px;
}
.text-reference h2:first-child,
.text-reference h3:first-child,
.text-reference h4:first-child,
.text-reference ul:first-child {
    margin-top: 0;
}
.text-reference h2:last-child,
.text-reference h3:last-child,
.text-reference h4:last-child,
.text-reference ul:last-child,
.text-reference ul li:last-child {
    margin-bottom: 0;
}
.text-reference h2,
.text-reference h3,
.text-reference h4 {
    margin-bottom: 16px;
    margin-top: 32px;
}
.text-reference ul {
    margin-bottom: 16px;
    margin-top: 16px;
    list-style: none;
    margin-left: 0;
    margin-right: 0;    
    padding-left: 0;
}
.text-reference ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
}
.text-reference ul li::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    background: var(--accent);
}


.home-tel a.wp-block-button__link {
    color: var(--accent) !important;
    border: 1px solid #2B82CD;
    border-radius: 40px;
    padding: 10px 16px 10px 40px;
    position: relative;
    transition: 0.3s ease-in-out;
}

.home-tel a.wp-block-button__link:after {
    display: none;
}

.home-tel a.wp-block-button__link:hover {
    font-family: 'Fira Regular';
    font-weight: 400 !important;
    background-color: var(--accent) !important;
    color: var(--base-3) !important;
}

.home-tel a.wp-block-button__link:focus,
.home-tel a.wp-block-button__link:active {
    font-family: 'Fira Regular' !important;
    font-weight: 400 !important;
}

.home-tel .wp-block-buttons,
.home-tel .wp-block-button__link.wp-element-button {
    position: relative;
}

.home-tel .wp-block-buttons::after,
.home-tel .wp-block-buttons::before {
    content: "";
    display: flex;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg id='Group_1316' data-name='Group 1316' xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg id='Ellipse_1' data-name='Ellipse 1' fill='none' stroke='%232b82cd' stroke-width='1'%3E%3Ccircle cx='12' cy='12' r='12' stroke='none'/%3E%3Ccircle cx='12' cy='12' r='11.5' fill='none'/%3E%3C/g%3E%3Cpath id='Path_119' data-name='Path 119' d='M8,0V8H0' transform='translate(20.172 12) rotate(135)' fill='none' stroke='%232b82cd' stroke-width='1'/%3E%3C/svg%3E");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 10px;
}

.home-tel .wp-block-buttons::after {
    right: -40px;
}

.home-tel .wp-block-buttons::before {
    right: inherit;
    left: -40px;
    transform: rotate(180deg);
}

.home-tel .wp-block-button__link.wp-element-button:after {
    content: "";
    display: flex;
    width: 13px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.771' height='16.858' viewBox='0 0 13.771 16.858'%3E%3Cpath id='Path_120' data-name='Path 120' d='M5.557,4.275,5.2.8C5.1-.2,3.026-.11,2.25.257-1.024,1.807-.092,6.21,1.1,8.868q3.4,6.564,7.532,7.667c2.158.769,4.951.242,5.13-2.436a1.936,1.936,0,0,0-.11-.889Q13.4,12.7,10.027,11.29q-.654-.234-1.528.532a2.14,2.14,0,0,1-.262.2.756.756,0,0,1-1.061,0c-1.2-.925-3.019-4.187-3.4-5.165a.76.76,0,0,1,.511-.909A1.813,1.813,0,0,0,5.557,4.275' transform='translate(0.001 0)' fill='%232b82cd' fill-rule='evenodd'/%3E%3C/svg%3E%0A");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 13px;
    left: 16px;
    margin: 0;
}

.home-tel a.wp-block-button__link:hover:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.771' height='16.858' viewBox='0 0 13.771 16.858'%3E%3Cpath id='Path_120' data-name='Path 120' d='M5.557,4.275,5.2.8C5.1-.2,3.026-.11,2.25.257-1.024,1.807-.092,6.21,1.1,8.868q3.4,6.564,7.532,7.667c2.158.769,4.951.242,5.13-2.436a1.936,1.936,0,0,0-.11-.889Q13.4,12.7,10.027,11.29q-.654-.234-1.528.532a2.14,2.14,0,0,1-.262.2.756.756,0,0,1-1.061,0c-1.2-.925-3.019-4.187-3.4-5.165a.76.76,0,0,1,.511-.909A1.813,1.813,0,0,0,5.557,4.275' transform='translate(0.001 0)' fill='%23ffffff' fill-rule='evenodd'/%3E%3C/svg%3E%0A");
}

.more-jobs a {
    padding: 0;
}

.more-jobs a:hover {
    box-shadow: none;
}

.knt-btn a.wp-block-button__link {
    font-size: 20px;
}

.legal-pages h2:first-child {
    margin-top: 0;
}

.legal-pages h2 {
    margin-top: 60px;
}

.error404 .inside-article {
    padding-top: 160px;
}

.error404 .entry-header {
    margin-bottom: 40px;
}

.error404 .entry-header h1 {
    font-size: 100px;
    line-height: 100px;
    font-family: "Fira Bold";
    font-weight: 700;
    margin-bottom: 16px;
}

.error404 .entry-header h2 {
    font-size: 64px;
    line-height: 68px;
}

.error404 .wp-block-buttons {
    display: flex;
    gap: 24px;
    justify-content: center;
}

.error404 .wp-block-button__link {
    color: var(--accent) !important;
    border: 1px solid #2B82CD;
    border-radius: 40px !important;
    padding: 10px 30px;
    transition: 0.3s ease-in-out;
}

.error404 .wp-block-button__link:hover {
    background-color: var(--accent) !important;
    color: var(--base-3) !important;
    font-family: "Fira Regular";
    font-weight: 400 !important;
}

.cta-dark-hero h2 {
    hyphens: none;
}

#icon-boxes>.gb-grid-wrapper>.gb-grid-column {
    display: flex;
}

.box-icon {
    width: 100%;
}

.job-query h3 {
    word-break: break-word;
    hyphens: auto;
}

.job-item {
    aspect-ratio: 1 / 1;
    width: 100%;
}

.gform-body .gfield_label {
    color: var(--contrast-2) !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}

.gform-theme--foundation .gform_fields{
    row-gap: 25px !important;
}

#gfield_upload_rules_2_17{
    font-size: 12px;
    font-weight: 300 !important;
}
.team-search-wrap .team-member-email a:hover,
.team-search-wrap .team-member-phone a:hover {
    border: 1px solid var(--accent);
    color: var(--accent) !important;
}

#hero-left > div,
#hero-right-blue > div,
#hero-left-blue > div,
#hero-home > div {
    position: relative;
}
#hero-left > div::after,
#hero-right-blue > div::after,
#hero-left-blue > div::after,
#hero-home > div::after {
    content: "";
    position: absolute;
    top: 0;    
    width: 125px;
    height: 185px;
    background: url('/wp-content/uploads/2026/06/80-Jahre.jpg') no-repeat right center;
    background-size: contain;
    pointer-events: none;
}
#hero-left > div::after,
#hero-left-blue > div::after  {
    right: 120px;
}
#hero-right-blue > div::after,
#hero-home > div::after {
    left: 100px;
}
.digicube-referenz-facts__item {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    align-items: center;
    width: 100%;
    border-top: 1px solid #C9CED4;
    padding: 18px 0;
}
.digicube-referenz-facts__item:last-child {
    border-bottom: 1px solid #C9CED4;
}
.digicube-referenz-facts__item p {
    margin-bottom: 0;
}
.digicube-referenz-facts__item p:first-child {
    color: #6B7178;
}

.digicube-referenz-team {
    display: grid;
    gap: 24px;
}
.digicube-referenz-team__member {
    background: #fff;
    color: #292e34;
}
.digicube-referenz-team__member.has-image {
    display: flex;
}
.digicube-referenz-team__image {
    position: relative;
    flex: 0 0 180px;
    min-height: 200px;
    background: #101418;
}
.digicube-referenz-team__image img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}
.digicube-referenz-team__info {
    flex: 1;
    min-width: 0;
    padding: 26px 28px;
}
.digicube-referenz-team__label,
.digicube-referenz-team__title,
.digicube-referenz-team__position {
    margin: 0;
}
.digicube-referenz-team__label {
    font-size: 14px; 
    line-height: 1.2;
    letter-spacing: 0.12em; 
    text-transform: uppercase; 
    color: #6B7178;
    margin-bottom: 6px;
}
.digicube-referenz-team__title {
    font-weight: 600;
    font-size: 22px;
    line-height: 1.2;
    margin-bottom: 6px;
}
.digicube-referenz-team__position {
    font-size: 17px; 
    letter-spacing: 0.03em;
    line-height: 1.2;
    margin-bottom: 0px;
}
.digicube-referenz-team__contacts {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}
.digicube-referenz-team__contacts a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 18px;
    border: 1.5px solid var(--accent);
    border-radius: 999px;
    color: var(--accent);
    font-size: 15px;
    letter-spacing: 0.06em;
    text-decoration: none;
}
.digicube-referenz-team__contacts a:hover,
.digicube-referenz-team__contacts a:focus-visible {
    background: #2164af;
    color: #fff;
}
.digicube-referenz-team__contacts a:focus-visible {
    outline: 3px solid #292e34;
    outline-offset: 3px;
}
.ref-wrap span.gb-icon {
    color: #2164af;
}
.ref-wrap span.gb-icon svg {
    fill: transparent !important;
}
.related-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
}
.related-grid > div {
    width: 100% !important;
}
.news-image {
    aspect-ratio: 460 / 260;
    overflow: hidden;
    position: relative;
}
.news-image img {
    width: 100%;
    height: 100%;
    aspect-ratio: 460 / 260;
    object-fit: cover;
    display: block;
}
.news-content-box > div,
.ref-info {
    display: inline-flex;
    align-items: center;
    margin-bottom: 6px;
}
.news-content-box > div p,
.ref-info p {
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #6B7178;
    margin-right: 10px;
    position: relative;
}
.ref-info p {
    text-transform: capitalize !important;
}
.news-content-box > div p:after,
.ref-info p:after {
    content:  '·';
    position: absolute;
    right: -8px;
    top: 50%;
    transform: translateY(-50%);
}
.news-content-box > div p:last-child,
.ref-info p:last-child {
    margin-right: 0;
}
.news-content-box > div p:last-child:after,
.ref-info p:last-child:after {
    display: none;
}
.news-image .term-news {
    position: absolute;
    bottom: 0px;
    left: 0px;
}

@media (max-width: 1500px) and (min-width: 1024px) {
    .img-txt-l {
        padding-left: 40px !important;
    }

    .img-txt-r {
        padding-right: 40px !important;
    }
}

@media (max-width: 1400px) and (min-width: 1024px) {
    #generate-slideout-menu .inside-navigation {
        padding: 100px 24px 0px 24px;
        max-width: 1024px;
        gap: 40px;
    }

    #generate-slideout-menu .slideout-info {
        gap: 20px;
    }

    .searchform input.search-field,
    .searchform input.search-field::placeholder {
        font-size: 20px;
    }

    .sht {
        padding: 0px 24px 0px 24px;
        font-size: 20px;
        line-height: 26px;
        letter-spacing: 0;
    }

    .shtel {
        padding: 0px 24px 0px 0;
    }

    .slideout-navigation.main-navigation .main-nav ul li a {
        font-size: 42px !important;
        letter-spacing: 2.56px !important;
        line-height: 60px !important;
    }

    #generate-slideout-menu .off-canvas-menu ul li a {
        font-size: 26px !important;
        line-height: 38px !important;
        letter-spacing: 1.28px !important;
    }

    #generate-slideout-menu .off-canvas-menu ul {
        gap: 30px;
    }

    .job-query {
        row-gap: 24px !important;
        margin-left: -24px !important;
    }

    .job_listing {
        padding-left: 24px !important;
    }

    .cta-image-dark.cta-dark-hero {
        padding-right: 40px !important;
    }

    .home-tel {
        right: 70px !important;
    }

    .hero-breadcrumbs {
        left: 24px;
    }

    .hero-information {
        padding-right: 24px;
        padding-left: 24px;
        width: 98%;
    }

    .hero-information h1 {
        font-size: 40px;
        line-height: 48px;
    }
}

@media (max-width: 1550px) and (min-width: 1400px) {
    .team-member-info {
        padding: 30px !important;
    }

    .team-member-email a,
    .team-member-phone a {
        font-size: 14px;
    }
}

@media (max-width: 1400px) and (min-width: 1200px) {
    .team-member-info {
        padding: 20px !important;
    }

    .team-member-email a,
    .team-member-phone a {
        font-size: 13px;
    }
}

@media (max-width: 1200px) and (min-width: 768px) {
    .team-all-search {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .team-member {
        width: calc(50% - 16px);
    }

    .team-member-thumbnail img,
    .team-search-thumbnail img {
        object-position: top !important;
    }

    .team-member-email a,
    .team-member-phone a {
        font-size: 13px;
    }
}

@media (max-width: 769px) and (min-width: 768px) {
    header .inside-header {
        justify-content: space-between;
    }

    header .inside-header #mobile-menu-control-wrapper {
        margin-left: 0 !important;
        width: 32px !important;
        justify-content: unset;
    }

    header .mobile-menu-control-wrapper .menu-toggle {
        background-color: transparent;
        padding: 0;
    }

    header .mobile-menu-control-wrapper .menu-toggle svg {
        width: 32px;
        height: 24px;
        fill: var(--accent);
    }
}

@media (max-width: 1400px) {

    header .inside-header,
    #sticky-navigation .inside-navigation {
        padding-left: 24px;
        padding-right: 24px;
    }

    .main-navigation .main-nav ul {
        gap: 30px;
    }

    .site-main .inside-article {
        padding-left: 24px;
        padding-right: 24px;
    }

    body.category .breadcrumb,
    body.page-id-275 .breadcrumb,
    body.category h1,
    body.page-id-275 h1 {
        padding-left: 24px;
        padding-right: 24px;
    }

    body.page-id-275 .inside-article {
        background: transparent;
    }

    .single .site-content,
    .search .site-content {
        padding-left: 24px;
        padding-right: 24px;
    }
}

@media (max-width: 1200px) {
    .main-navigation {
        margin-left: 60px !important;
    }
    #hero-left > div::after, 
    #hero-right-blue > div::after, 
    #hero-left-blue > div::after, 
    #hero-home > div::after {
        width: 90px;
        height: 130px;
    }
    #hero-left > div::after,
    #hero-left-blue > div::after  {
        right: 50px;
    }
    #hero-right-blue > div::after,
    #hero-home > div::after {
        left: 50px;
    }
}

@media (max-width: 1024px) {

    .team-member-thumbnail img,
    .team-search-thumbnail img {
        object-position: top !important;
    }

    .hero-information h1 {
        font-size: 36px;
        line-height: 42px;
    }

    .footer-bottom-nav ul {
        gap: 20px;
    }

    .footer-top-grid {
        margin-top: 40px;
    }

    .footer-main-title-last {
        hyphens: auto;
    }

    .main-navigation {
        margin-left: 80px !important;
    }

    .main-navigation .main-nav ul {
        gap: 24px;
    }

    #generate-slideout-menu .inside-navigation {
        padding: 130px 40px 0px 40px;
        max-width: 100%;
        flex-direction: column;
        gap: 16px;
        height: 100%;
        align-items: center;
        justify-content: flex-start;
    }

    #generate-slideout-menu .main-nav {
        width: 100%;
    }

    #generate-slideout-menu .main-nav ul,
    #generate-slideout-menu .off-canvas-menu ul {
        gap: 16px;
    }

    #generate-slideout-menu .off-canvas-menu {
        width: 100%;
        padding-left: 0;
    }

    #generate-slideout-menu .off-canvas-menu ul li a {
        font-size: 24px;
        line-height: 30px;
        letter-spacing: 1.26px;
    }

    #generate-slideout-menu .main-nav ul li a:after,
    #generate-slideout-menu .off-canvas-menu ul li a:after {
        width: 30px;
        height: 30px;
    }

    #generate-slideout-menu .slideout-exit.has-svg-icon {
        padding-top: 44px;
        padding-right: 24px;
    }

    .slideout-navigation.main-navigation {
        background: linear-gradient(to bottom, #2B83CD calc(100% - 180px), #559BD7 180px) !important;
    }

    #generate-slideout-menu .slideout-info {
        bottom: 15px;
        width: 100%;
        gap: 15px;
        flex-direction: column;
    }

    .sht {
        padding: 0px 16px 0px 16px;
        font-size: 20px;
        line-height: 28px;
    }

    .searchform input.search-field {
        min-width: auto;
        padding: 0px 64px 0 24px;
        font-size: 20px;
        line-height: 36px;
        min-height: 55px;
    }

    .searchform input.search-field::placeholder {
        font-size: 20px;
        line-height: 36px;
    }

    .shimg {
        padding: 10px 20px 10px 24px;
    }

    #sticky-navigation .inside-navigation {
        padding: 20px 24px;
    }

    .aktuelles {
        padding: 24px 24px 24px 24px;
    }

    .aktuelles h2 {
        line-height: 1.2em;
    }

    .cta-left-shadow:before,
    .cta-left-shadow:after {
        height: 40px;
    }

    .cta-left-shadow:before {
        top: -39px;
    }

    .cta-left-shadow:after {
        bottom: -39px;
    }

    .blue-background {
        width: 80%;
    }

    .image-column,
    .image-column-two {
        height: auto;
        object-fit: cover;
    }

    .cta-image-blue {
        bottom: -25px;
        width: 60% !important;
    }

    .cta-image-dark.cta-dark-hero {
        width: 70% !important;
    }

    .custom-table table td {
        border-bottom: 10px solid white;
        padding: 10px;
        font-size: 20px;
        line-height: 1.2em;
    }

    .box-icon img {
        top: -30px;
    }

    .box-icon p:last-child {
        margin-top: 0px;
    }

    .gb-tabs__buttons button:after {
        display: none;
    }

    .gb-tabs__buttons button .gb-button-text {
        line-height: 1.2em !important;
    }

    .cat-shadow img {
        height: 400px;
    }

    .team-member {
        width: calc(50% - 16px);
    }

    .team-member-info {
        padding: 30px 20px;
    }

    .team-member-email a,
    .team-member-phone a {
        padding: 10px 12px;
    }

    .social-item {
        margin-right: 15px;
    }

    .cta-image-dark.cta-dark-hero.cta-image-blue-left {
        width: 60% !important;
    }

    .home-tel .wp-block-buttons::before {
        left: -30px;
    }

    .home-tel .wp-block-buttons::after {
        right: -30px;
    }
    .single-referenz .site-content {
        padding: 0px 24px 160px 24px !important;
    }

    .single .site-content {
        padding: 80px 24px 160px 24px;
    }

    .cta-dark-hero h2 {
        line-height: 1.2em;
    }

    .single-post-date {
        font-size: 16px;
    }

    .inner-single-hero {
        background-size: cover !important;
    }

    .hero-information {
        padding-top: 40px;
        padding-right: 24px;
        padding-left: 24px;
        padding-bottom: 40px;
    }

    .hero-desc-meta {
        gap: 16px;
        margin-bottom: 20px;
    }

    .single.single-job_listing .site-content {
        padding-top: 0;
    }

    .service-box {
        bottom: -50px;
    }

    .search .site-content {
        padding: 50px 24px 240px 24px;
    }
    .digicube-referenz-team__info {
        padding: 20px;
    }
    .refrenze-full {
        gap: 20px;
    }
    #select-wrapper {
        grid-template-columns: 1fr;
    }
    #select-wrapper .select-buttons-wrap {
        column-gap: 16px;
    }
    #select-wrapper .select-buttons-wrap .wp-block-search-filter-choice-select .search-filter-component-combobox.search-filter-field__input .search-filter-component-combobox__selection {
        font-size: 15px;
    }
    #select-wrapper .select-buttons-wrap .wp-block-search-filter-choice-select .search-filter-component-combobox.search-filter-field__input {
        font-size: 15px;
        min-height: 35px;
    }
    #select-wrapper .select-buttons-wrap .wp-block-search-filter-choice-select .search-filter-label {
        font-size: 12px;
    }
    .reset-wrap {
        column-gap: 16px;
        row-gap: 16px;
    }
    .reset-wrap p,
    .reset-wrap .wp-block-search-filter-control-reset button {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .reset-wrap {
        justify-content: start;
    }
    #select-wrapper .select-buttons-wrap {
        grid-template-columns: 1fr;
    }
    .reference-full-wrapper .wp-block-search-filter-choice {
        margin-bottom: 0px !important;
    }
  
    .reference-full-wrapper .search-filter-input-button-group {
        display: flex;
        flex-direction: column;
        align-items: baseline;
        flex-wrap: wrap;
        justify-content: flex-start;
        row-gap: 8px !important;
        margin-bottom: 30px !important;
    }

    .refrenze-full ul {
        grid-template-columns: 1fr;
    }
    .digicube-referenz-team__member.has-image {
        flex-direction: column;
    }
    .related-grid {
        grid-template-columns: 1fr !important;
    }
    #hero-left > div::after,
    #hero-left-blue > div::after,
    #hero-right-blue > div::after,
    #hero-home > div::after {
        left: 20px;
        right: unset;
    }
    .team-all-search {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    }

    .team-member-email a,
    .team-member-phone a {
        font-size: 13px;
    }

    .hero-information h1 {
        font-size: 32px;
        line-height: 40px;
    }

    .job-item {
        max-width: 100%;
    }

    .footer-main-title.active:after {
        transform: rotate(180deg);
        /* Arrow pointing up */
    }

    .search .searchResult {
        width: 100%;
    }

    .search .site-content {
        padding: 24px 24px 60px 24px;
    }

    .search .search-h1 {
        margin-bottom: 30px;
    }

    .error404 .inside-article {
        padding-top: 80px;
    }

    .error404 .wp-block-buttons {
        flex-direction: column;
        gap: 10px;
    }

    .error404 .entry-header h2 {
        font-size: 32px;
        line-height: 36px;
    }

    .error404 .entry-header h1 {
        font-size: 70px;
        line-height: 70px;
    }

    .service-box {
        bottom: -40px;
    }

    .single.single-job_listing .site-content {
        padding-bottom: 60px;
    }

    .hero-desc-meta ul li {
        font-size: 24px;
        line-height: 1.2em;
    }

    .job-content {
        display: flex;
        position: relative;
        flex-direction: column;
        row-gap: 50px;
    }

    .job-main-content h2 {
        margin-top: 30px;
    }

    .job-sticky-sidebar {
        position: relative;
        top: 0;
        max-width: 100%;
    }

    .job-team-member {
        padding-left: 0;
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }

    .job-main-content,
    .job-team-member {
        width: 100%;
    }

    .job-wrapper {
        padding-top: 60px;
    }

    .inner-job-hero {
        min-height: auto;
    }

    .hero-job-wrap {
        width: 100%;
    }

    .hero-job-background::before {
        background-image: none;
        width: 50%;
    }

    .cta-image-dark.cta-dark-hero.cta-image-blue-left {
        width: 90% !important;
    }

    .team-search-wrap .wp-block-search-filter-choice .search-filter-input-button-group {
        gap: 30px;
        row-gap: 10px;
    }

    .job-grid {
        text-align: center;
    }

    .job-grid p {
        color: var(--accent);
    }

    .footer-bottom-grid>.gb-grid-column:last-child {
        order: 1;
    }

    .footer-bottom-grid>.gb-grid-column:first-child {
        order: 2;
    }

    .footer-bottom-nav ul {
        justify-content: space-around;
    }

    .footer-bottom-copyright {
        text-align: center;
        background-color: var(--base-3);
    }

    .site-footer .wp-block-site-logo {
        text-align: center;
    }

    .footer-main-title {
        width: 250px;
        margin: 0 auto;
        text-align: left;
        padding: 3px 24px;
        border: 1px solid;
        border-radius: 20px;
        position: relative;
    }

    .footer-main-title:after {
        content: '';
        display: inline-block;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.721' height='17.721' viewBox='0 0 17.721 17.721'%3E%3Cpath id='Path_1754' data-name='Path 1754' d='M11.65,12.042l.357-12L.006.4' transform='translate(17.38 8.531) rotate(135)' fill='none' stroke='%23323943' stroke-width='1'/%3E%3C/svg%3E%0A");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        height: 12px;
        width: 12px;
        top: 10px;
        right: 24px;
        position: absolute;
    }

    .footer-main-desc {
        position: relative;
        width: 250px;
        margin: 0 auto;
        text-align: left;
        padding: 24px 24px 36px 24px;
        border: 1px solid;
        border-top: 0;
        border-bottom-left-radius: 20px;
        border-bottom-right-radius: 20px;
        display: none;
    }

    .footer-main-desc:before,
    .footer-main-desc:after {
        content: "";
        position: absolute;
        top: -16px;
        height: 16px;
        width: 1px;
        background-color: var(--contrast-2);
    }

    .footer-main-desc:before {
        left: -1px;
    }

    .footer-main-desc:after {
        right: -1px;
    }

    .footer-top-grid {
        text-align: center;
    }

    #generate-slideout-menu .off-canvas-menu ul li a {
        font-size: 20px;
        line-height: 30px;
    }

    #generate-slideout-menu .inside-navigation {
        padding: 115px 24px 0px 24px;
    }

    .shimg svg {
        height: 18px;
    }

    .shimg {
        padding: 10px 0px 10px 0px;
    }

    .sht {
        padding: 0px 5px 0px 10px;
        font-size: 15px;
        line-height: 18px;
    }

    .slideout-info {
        padding-left: 24px;
        padding-right: 24px;
    }

    .shtel {
        padding: 0px 10px 0px 0;
        width: 100%;
    }

    .shtel a span {
        letter-spacing: 0;
        padding-left: 0;
        font-size: 14px;
        line-height: 18px;
    }

    .shtel a svg {
        top: 4px;
    }

    .shtel a {
        padding: 4px 6px 4px 6px;
    }

    .site-header .header-image {
        width: 200px;
    }

    header .inside-header {
        justify-content: space-between;
    }

    header .inside-header #mobile-menu-control-wrapper {
        margin-left: 0 !important;
        width: 32px !important;
        justify-content: unset;
    }

    header .mobile-menu-control-wrapper .menu-toggle,
    #sticky-navigation .menu-toggle {
        background-color: transparent;
        padding: 0;
    }

    header .mobile-menu-control-wrapper .menu-toggle svg,
    #sticky-navigation .menu-toggle svg {
        width: 32px;
        height: 24px;
        fill: var(--accent);
    }

    #sticky-navigation .navigation-branding {
        margin-right: 0;
        margin-left: 0;
    }

    .blue-background {
        width: 100%;
    }

    .cta-blue:before {
        background-size: cover !important;
        background-position: center center !important;
    }

    .cta-left-shadow:before,
    .cta-left-shadow:after {
        height: 0px;
    }

    .cta-left-shadow:before {
        top: 0px;
    }

    .cta-left-shadow:after {
        bottom: 0px;
    }

    .image-text-right .gb-grid-column:first-child {
        order: 2;
    }

    .cta-image-blue {
        bottom: -40px;
        width: 80% !important;
    }

    .cta-dark,
    .cta-image-dark {
        width: 80% !important;
    }

    .cta-image-dark {
        left: 0;
        right: 0;
        margin: auto;
    }

    .cta-image-dark.cta-dark-hero {
        left: inherit;
        margin: inherit;
        width: 90% !important;
    }

    .gb-tabs__buttons button .gb-button-text {
        line-height: 20px !important;
    }

    .custom-table table td {
        font-size: 18px;
    }

    .cat-shadow img {
        height: 320px;
    }

    .aktuelles {
        padding: 24px;
    }

    #cta {
        margin-left: 0;
        margin-right: 0;
    }

    .team-member {
        flex: 100%;
    }

    .home-tel .wp-block-buttons::before,
    .home-tel .wp-block-buttons::after {
        display: none;
    }

    .home-tel a.wp-block-button__link {
        border-bottom-left-radius: 24px;
        border-bottom-right-radius: 0px;
        border-top-left-radius: 24px;
        border-top-right-radius: 0px;
        width: 64px;
        height: 64px;
        color: transparent !important;
        overflow: hidden;
        border: 0 !important;
    }

    .home-tel .wp-block-button__link.wp-element-button:after {
        width: 20px;
        height: 26px;
        top: 21px;
        left: 24px;
    }

    .cta-image-blue-left {
        left: 0px !important;
    }

    .social-item {
        margin-right: 5px;
    }

    .social-item a:before {
        height: 20px;
        width: 20px;
    }

    .team-member-info {
        padding: 24px 16px;
    }

    .legal-pages h2 {
        margin-top: 40px;
    }

    .inner-single-hero:before {
        width: 0;
    }

    .inner-single-hero {
        background-image: none;
    }

    .inner-single-hero:before {
        width: 100%;
    }

    .single-post-date {
        font-size: 12px;
        line-height: 20px;
    }

    .sg-popup-builder-content {
        padding: 30px 10px 0px 10px !important;
    }
    .sgpb-main-html-content-wrapper p {
        margin-bottom: 0px !important;
    }

    .sgpb-popup-builder-content-2010 .wp-block-button__link.wp-element-button{
        display: block !important;
        width: 100% !important;
        color: #2b82cd !important;
        border: 1px solid #2b82cd !important;
        border-radius: 20px !important;
    }

    #sgpb-popup-dialog-main-div .wp-block-button__link.wp-element-button:after {
        top: 18px !important;
        left: 14px !important;
    }
    #sgpb-popup-dialog-main-div {
        height: 300px !important;
    }
    .sgpb-popup-builder-content-html .home-tel {
        margin-top: -130px !important;
    }
}

.sgpb-theme-1-overlay {
    background: black !important;
}

#sgpb-popup-dialog-main-div {
    box-shadow: none !important;
    max-width: 575px !important;
	width:100%!important;
}

.sgpb-popup-builder-content-html .home-tel {
    position: relative;
    bottom: 0 !important;
    right: 0 !important;
}

.sg-popup-builder-content {
    padding: 30px 30px 0px 30px;
}

.sgpb-main-html-content-wrapper p {
    margin-bottom: 40px !important;
}