@font-face {
    font-family: "Inter";
    src:
        url("/wp-content/uploads/fonts/Inter-Light.woff2") format("woff2"),
        url("/wp-content/uploads/fonts/Inter-Light.woff") format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Inter";
    src:
        url("/wp-content/uploads/fonts/Inter-Regular.woff2") format("woff2"),
        url("/wp-content/uploads/fonts/Inter-Regular.woff") format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Inter";
    src:
        url("/wp-content/uploads/fonts/Inter-Medium.woff2") format("woff2"),
        url("/wp-content/uploads/fonts/Inter-Medium.woff") format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "SpaceMono";
    src:
        url("/wp-content/uploads/fonts/SpaceMono-Regular.woff2") format("woff2"),
        url("/wp-content/uploads/fonts/SpaceMono-Regular.woff") format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

:root {
    --cl-primary: #f25050;
    --cl-secondary: #f2d8d5;
    --cl-gelb: #f2b022;
    --cl-antrazit: #4c5059;
    --cl-schwarz: #212226;
    --cl-weiss: #fff;
    --primary-font: "Inter", sansserif;
    --mono-font: "SpaceMono", sansserif;
    --margin-outline: 1.5rem;
}

@media (min-width: 1381px) {
    .l-subheader {
        --padding-inline: calc(var(--margin-outline) * 3);
    }
}

/* Firefox */
* {
    scrollbar-width: thin;
    scrollbar-color: var(--cl-secondary) var(--cl-weiss);
}

/* Chrome, Edge, and Safari */
*::-webkit-scrollbar {
    width: 6px;
}

*::-webkit-scrollbar-track {
    background: var(--cl-weiss);
}

*::-webkit-scrollbar-thumb {
    background-color: var(--cl-secondary);
    border-radius: 20px;
    border: 0px solid transparent;
}


body,
#page-header {
    max-width: 2560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

sr7-module {
    max-width: 2560px !important;
    margin: 0 auto !important;
    overflow: hidden;
}

sr7-content {
    left: 0 !important;
    width: 100% !important;
    max-width: 2560px !important;
}

sr7-mask,
sr7-bg,
sr7-bg canvas {
    width: 100% !important;
    left: 0 !important;
}



body {
    font-family: var(--primary-font);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-wrap: balance;
    text-transform: uppercase;
}

h1,
.h1 {
    font-family: var(--primary-font) !important;
    font-size: clamp(40px, 2.6vw, 80px) !important;
    font-style: normal !important;
    font-weight: 500 !important;
    line-height: 0.9 !important;
    text-transform: uppercase !important;
    margin-left: -1px !important;
}

#home-header h1,
#home-header .h1 {
    color: var(--cl-primary) !important;
}

h2,
.h2 {
    color: var(--cl-primary);
    font-size: 44px;
    font-style: normal;
    font-weight: 500;
    line-height: 0.9;
}

.subline,
.subline h2 {
    font-family: var(--mono-font) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: 1.6px !important;
    color: var(--cl-primary) !important;
    text-transform: uppercase !important;
}

.color_alternate .subline,
.color_alternate .subline h2 {
    color: var(--cl-secondary) !important;
}

h3,
.h3 {
    font-size: clamp(26px, 2vw, 44px) !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    margin-left: -3px !important;
}

p,
li {
    text-wrap: pretty;
    font-weight: 300;
}

#home-header h1 {
    transform: translateY(-50px);
}

#home-header .subline {
    font-size: 24px !important;
    letter-spacing: 2.4px !important;
    transform: translateY(3vh) !important;
}

.txt-highlight {
    color: var(--cl-primary);
}

.w-btn.us-btn-style_1,
.w-btn.us-btn-style_2 {
    font-family: var(--mono-font) !important;
    color: var(--cl-primary) !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: 0.772px !important;
    text-transform: uppercase !important;
    position: relative;
    padding-left: 40px !important;
}

.w-btn.us-btn-style_1::before,
.w-btn.us-btn-style_2::before {
    position: absolute;
    content: "";
    background: URL("/wp-content/uploads/2026/02/formscale-icon-button.svg");
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 21px;
    width: 21px;
    background-size: cover;
    transform-origin: center;
    transition: transform 1s ease;
}

.w-btn.us-btn-style_2 {
    color: var(--cl-secondary) !important;
}

.cl-secondary .w-btn.us-btn-style_1::before,
.w-btn.us-btn-style_2::before {
    background: URL("/wp-content/uploads/2026/03/formscale-icon-button-secondary.svg");
}

.w-nav.type_mobile.m_layout_fullscreen .w-nav-list.level_1 .w-nav-close {
    display: none !important;
}

.w-nav-control .w-nav-icon.style_hamburger_5 {
    transform: scaleX(-1);
    position: relative;
}

.w-nav-control .w-nav-icon.style_hamburger_5::before {
    content: "Menü";
    position: absolute;
    left: 50px;
    top: 0;
    transform: translate(-50%, 50%) scaleX(-1);
    font-size: 16px;
    line-height: 1;
    color: var(--cl-weiss);
    font-family: var(--mono-font);
    opacity: 0;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    transition:
        transform 0.2s ease,
        opacity 0.4s ease;
}

.w-nav-control .w-nav-icon.style_hamburger_5:hover::before {
    transform: translate(0%, 50%) scaleX(-1);
    opacity: 1;
    transition:
        transform 0.4s ease,
        opacity 0.2s ease;
}

.w-nav-control.active .w-nav-icon.style_hamburger_5>div {
    color: var(--cl-primary) !important;
}

.w-nav-control.active .w-nav-icon.style_hamburger_5,
.l-subheader-cell.at_right {
    z-index: 10;
}

.w-nav.type_mobile.m_layout_fullscreen .w-nav-control.active+.w-nav-list.level_1,
.w-nav.type_mobile.m_layout_fullscreen .w-nav-list.level_1 {
    background-color: var(--cl-primary);
    padding: var(--margin-outline);
}


.w-nav.type_mobile.m_layout_fullscreen .w-nav-control+.w-nav-list.level_1>li {
    background-color: var(--cl-weiss);
    height: 100%;
    border-radius: 25px;
    /* padding: calc(var(--margin-outline) * 2); */
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.w-nav.type_mobile.m_layout_fullscreen .w-nav-control+.w-nav-list.level_1>li a {
    font-family: var(--primary-font);
    font-size: clamp(30px, 5vw, 80px);
    font-style: normal;
    font-weight: 500;
    line-height: 0.9;
    text-transform: uppercase;
    z-index: 10;
    position: relative;
}

.menu-contact-info p,
.menu-contact-info a {
    font-family: "SpaceMono" !important;
    font-size: clamp(14px, 1vw, 18px) !important;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0.772px !important;
    text-transform: uppercase;
}

#home-leistung,
#branchen,
.teaser-projekt,
#projekt-starten {
    overflow: hidden;
}

.txt-col-menu {
    padding: calc(var(--margin-outline) * 2);
}

#menu-main-menu-links {
    transition:
        transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
        opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1),
        visibility 0.3s;
    margin-bottom: 25vh;
}

#menu-main-menu-links li {
    position: relative;
    padding-bottom: var(--margin-outline);
    padding-left: 12.5%;
    margin-bottom: var(--margin-outline) !important;
}

#menu-main-menu-links li::before {
    content: '01';
    position: absolute;
    top: 7px;
    left: 0;
    font-family: "SpaceMono";
    font-size: clamp(14px, 2vw, 24px);
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 2.4px;
    text-transform: uppercase;
}

#menu-main-menu-links :nth-child(2):before {
    content: '02';
}

#menu-main-menu-links :nth-child(3):before {
    content: '03';
}

#menu-main-menu-links li::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--cl-primary);
    height: 1px;
    width: 100%;
}

.leistung-raster article:hover .w-btn.us-btn-style_1 {
    color: var(--cl-antrazit) !important;
}

.leistung-raster article:hover .w-btn.us-btn-style_1::before,
.w-btn.us-btn-style_1:hover::before,
.w-btn.us-btn-style_2:hover::before {
    background: URL("/wp-content/uploads/2026/02/formscale-icon-button-anthrazit.svg");
    transform: translateY(-50%) rotate(180deg) scale(0.75);
    background-size: cover;
}

.w-btn.us-btn-style_2:hover::before {
    background: URL("/wp-content/uploads/2026/02/formscale-icon-button.svg");
}

/* .w-btn.us-btn-style_1::before {
  position: absolute;
  content: "";
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 2px;
  width: 20px;
  background-color: var(--cl-primary);
  transform-origin: center;
}

.w-btn.us-btn-style_1::after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  height: 20px;
  width: 2px;
  left: 9px;
  background-color: var(--cl-primary);
  transform-origin: center;
}

.w-btn.us-btn-style_1:hover::before {
  animation: spinButtonBefore 10s infinite;
}

@keyframes spinButtonBefore {
  0% {
    width: 20px;
    transform: translateY(-50%) rotate(0deg);
    left: 0px;
  }
  12.5% {
    width: 14px;
    transform: translateY(-50%) rotate(45deg);
    left: 3px;
  }
  25% {
    width: 20px;
    transform: translateY(-50%) rotate(90deg);
    left: 0px;
  }
  37.5% {
    width: 14px;
    transform: translateY(-50%) rotate(135deg);
    left: 3px;
  }
  50% {
    width: 20px;
    transform: translateY(-50%) rotate(180deg);
    left: 0px;
  }
  62.5% {
    width: 14px;
    transform: translateY(-50%) rotate(225deg);
    left: 3px;
  }
  75% {
    width: 20px;
    transform: translateY(-50%) rotate(270deg);
    left: 0px;
  }
  87.5% {
    width: 14px;
    transform: translateY(-50%) rotate(315deg);
    left: 3px;
  }
  100% {
    width: 20px;
    transform: translateY(-50%) rotate(360deg);
    left: 0px;
  }
}

.w-btn.us-btn-style_1:hover::after {
  animation: spinButtonAfter 10s infinite;
}

@keyframes spinButtonAfter {
  0% {
    height: 20px;
    transform: translateY(-50%) rotate(0deg);
  }
  12.5% {
    height: 14px;
    transform: translateY(-50%) rotate(45deg);
  }
  25% {
    height: 20px;
    transform: translateY(-50%) rotate(90deg);
  }
  37.5% {
    height: 14px;
    transform: translateY(-50%) rotate(135deg);
  }
  50% {
    height: 20px;
    transform: translateY(-50%) rotate(180deg);
  }
  62.5% {
    height: 14px;
    transform: translateY(-50%) rotate(225deg);
  }
  75% {
    height: 20px;
    transform: translateY(-50%) rotate(270deg);
  }
  87.5% {
    height: 14px;
    transform: translateY(-50%) rotate(315deg);
  }
  100% {
    height: 20px;
    transform: translateY(-50%) rotate(360deg);
  }
} */

/* 

.w-btn.us-btn-style_1::before {
  transition: all 0.4s ease;
  width: 20px;
  transform: translateY(-50%) rotate(0deg);
  left: 0px;
}

.w-btn.us-btn-style_1::after {
  transition: all 0.4s ease;
  width: 2px;
  height: 20px;
  transform: translateY(-50%) rotate(0deg);
  left: 9px;
}

.w-btn.us-btn-style_1:hover::before {
  width: 14px;
  transform: translateY(-50%) rotate(180deg);
  left: 0px;
}

.w-btn.us-btn-style_1:hover::after {
  height: 14px;
  transform: translateY(-50%) rotate(180deg);
  left: 6px;
} */
/* 
.w-nav-icon.style_hamburger_5 > div::before {
  width: 100%;
}

.w-nav-control.active .w-nav-icon.style_hamburger_5 > div::before {
  width: 50%;
} */

.sr7-bullet {
    width: 20px !important;
    height: 4px !important;
    background-color: transparent !important;
    border: 1px solid var(--cl-primary);
    border-radius: 25px;
    transition: background-color 0.5s ease;
    top: -10vh !important;
}

.sr7-bullet:not(.selected):hover {
    background-color: var(--cl-secondary) !important;
}

.sr7-bullet.selected {
    background-color: var(--cl-primary) !important;
}

.sr7-bullet::after {
    content: '';
    position: absolute;
    background-color: transparent;
    height: 30px;
    width: 50px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

}

sr7-row {
    padding: 5vh calc(var(--margin-outline) * 3) !important;
}

.header-col-wrapper {
    margin-bottom: 5vh !important;
}

.header-col-wrapper,
sr7-row-con,
sr7-col,
sr7-col-con {
    height: 25vh !important;
}

.round-corners {
    border-radius: 25px;
    overflow: hidden;
}

.margin-outline {
    margin: var(--margin-outline);
}

.content-at-end {
    display: flex;
    flex-direction: column;
    justify-content: end;
}

.space-between .vc_column-inner .wpb_wrapper {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    height: 100%;
}

.w-toplink {
    margin: 1.5rem;
}

.cl-primary,
.cl-primary * {
    color: var(--cl-primary);
}

.cl-secondary,
.cl-secondary *,
.cl-secondary .w-btn.us-btn-style_1 {
    color: var(--cl-secondary) !important;
}

.cl-secondary .w-btn.us-btn-style_1:hover {
    color: var(--cl-antrazit) !important;
}

.pagination p {
    font-size: clamp(50px, 5vw, 145px);
    font-style: normal;
    font-weight: 400;
    line-height: 1.1;
    margin-left: -6px;
}

#home-header {
    overflow: hidden;
    height: calc(100vh - (var(--margin-outline) * 2));
}

#home-parallax,
.full-height,
.teaser-projekt {
    height: calc(100vh - (var(--margin-outline) * 2));
}

#home-parallax .w-separator.width_30 {
    width: 13vw;
}

#teaser-projekt-05 {
    margin-bottom: 25vh;
    /* position: relative; */
}

#teaser-projekt-05::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: 25vh;
    background-color: #fff;
    z-index: -1;
}

@media (min-width: 600px) {
    .header_hor .l-header.pos_fixed:not(.down)~.l-main .l-section.type_sticky:not(:first-of-type) {
        top: var(--margin-outline);
    }

}

/* 
#home-header sr7-slide sr7-mask sr7-bg canvas {
    background-size: 50%;
    border-radius: 25px;
    margin: var(--margin-outline);
}
 */

.claim {
    color: var(--cl-weiss);
    font-size: clamp(25px, 2.75vw, 80px);
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    width: 26ch;
    margin: 0 auto;
    max-width: 85vw;
}

.prozess-info {
    padding-left: 3rem;
    padding-left: calc(var(--margin-outline) * 2);
    padding-right: 6rem;
}

.prozess-info>.vc_column-inner>.wpb_wrapper {
    border-top: 1px solid var(--cl-primary);
    border-bottom: 1px solid var(--cl-primary);
    padding: 2rem 0 1rem 0;
}

/* .color_alternate .prozess-info>.vc_column-inner>.wpb_wrapper {
    border-top: 1px solid var(--cl-secondary);
    border-bottom: 1px solid var(--cl-secondary);
} */

.leistung-raster article {
    border-radius: 25px;
    overflow: hidden;
}

.leistung-raster img {
    transition: transform 0.5s ease;
}

.leistung-content {
    /* min-height: 200px; */
    min-height: 140px;
    padding: 1.5rem 2rem;
    display: flex;
    justify-content: space-between;
}

.leistung-raster .leistung-content h3 {
    font-size: clamp(16px, 1.1vw, 30px) !important;
    font-style: normal;
    font-weight: 500;
    line-height: 0.95;
    text-transform: uppercase;
    margin-top: 5px;
}

.leistung-raster article:hover img {
    transform: scale(1.04);
}

.leistung-raster article .leistung-content>.w-vwrapper {
    transition: transform 0.5s ease;
}

.leistung-raster article:hover .leistung-content>.w-vwrapper {
    transform: translateY(10px);
}

.projekt-claim {
    font-size: clamp(18px, 1.1vw, 26px);
    line-height: 1.4;
}

#branchen {
    --wrapper-height: 450px;
}

#branchen .w-hwrapper .w-vwrapper {
    background-color: var(--cl-primary);
    border-radius: 25px;
    color: var(--cl-secondary);
    width: calc(25% + (var(--margin-outline) / 4) - var(--margin-outline));
    margin-bottom: var(--margin-outline);
    padding: calc(var(--margin-outline) * 3);
    /* transition: background-color 0.3s ease, height 0.3s ease, margin-top 0s ease, margin-bottom 0s ease; */
    transition: background-color 0.3s ease;
    height: var(--wrapper-height);
    /* display: flex;
    justify-content: space-between; */
}


#branchen.open-wrapper .w-hwrapper.expand-up:not(.no-negativ-margin) {
    margin-top: calc((var(--margin-outline) + var(--wrapper-height)) * -1);
}

#branchen.open-wrapper .w-hwrapper.expand-down:not(.no-negativ-margin) {
    margin-bottom: calc((var(--margin-outline) + var(--wrapper-height)) * -1);
}

#branchen .w-hwrapper.expand-down .w-vwrapper {
    align-self: flex-start;
}

#branchen .w-hwrapper.expand-up .w-vwrapper {
    align-self: flex-end;
}

#branchen .w-hwrapper .w-vwrapper.open {
    height: calc(var(--wrapper-height) * 2 + var(--margin-outline));
    background-color: var(--cl-antrazit);
    z-index: 100;
}

#branchen .w-hwrapper .w-vwrapper.last-item {
    color: var(--cl-primary);
    background-color: transparent;
    border-top: 1px solid var(--cl-primary);
    border-bottom: 1px solid var(--cl-primary);
    border-radius: 0;
    padding-left: 0;
    text-align: left;
    margin-right: calc(var(--margin-outline) * 2);
    width: calc(25% + (var(--margin-outline) / 4) - (var(--margin-outline) * 3));
}

#branchen .w-hwrapper .w-vwrapper:not(.last-item):hover {
    background-color: var(--cl-antrazit);
    z-index: 100;
}

#branchen .w-hwrapper .w-vwrapper:not(.last-item) .w-btn.us-btn-style_2.btn-close:hover::before {
    transform: translateY(-50%) rotate(135deg) scale(0.75);
}

#branchen .w-hwrapper .w-vwrapper img {
    margin-bottom: 1.5rem;
    width: 100px;
    height: 100px;
}

#branchen .w-hwrapper .w-vwrapper h3 {
    font-size: clamp(26px, 3.5vw, 44px);
    font-weight: 500;
    line-height: 0.9;
    text-transform: uppercase;
}

#branchen .w-hwrapper .w-vwrapper h4 {
    color: var(--cl-secondary);
    font-size: clamp(20px, 1.25vw, 27px);
    font-style: normal;
    font-weight: 500;
    line-height: 0.95;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

#branchen .w-hwrapper .w-vwrapper p {
    font-family: var(--mono-font);
    text-transform: uppercase;
    margin-bottom: 2rem;
    text-wrap: balance;
    width: 40ch;
}

#branchen .w-hwrapper .w-vwrapper .txt-branchen-info p {
    font-family: var(--primary-font);
    font-size: 15px;
    font-style: normal;
    font-weight: 300;
    line-height: 1.7;
    text-transform: none;
    margin-top: 5vh;
    margin-bottom: 5vh;

}

#branchen .w-hwrapper .w-vwrapper .txt-branchen-info,
#branchen .w-hwrapper .w-vwrapper .btn-branchen-info {
    visibility: hidden;
    opacity: 0;
    transition: visibilty 0.3s ease, opacity 0.3s ease;
}

#branchen .w-hwrapper .w-vwrapper.open .txt-branchen-info,
#branchen .w-hwrapper .w-vwrapper.open .btn-branchen-info {
    visibility: visible;
    opacity: 1;
}

#projekt-starten {
    padding: 10vh 0;
    background-color: var(--cl-secondary);
    margin-bottom: 0;
}

#projekt-starten p {
    font-size: clamp(20px, 2vw, 26px);
    font-style: normal;
    font-weight: 300;
    line-height: 1.4;
}

#projekt-starten .w-btn.us-btn-style_1 {
    font-size: clamp(18px, 2vw, 50px) !important;
    letter-spacing: 2.315px !important;
    padding-left: 70px !important;
}

#projekt-starten .w-btn-wrapper.align_left {
    text-align: center;
}

#projekt-starten .w-btn.us-btn-style_1::before {
    height: 50px;
    width: 50px;
}

.projekt-content {
    width: 33.3333%;
}

.projekt-imgcontent {
    width: 66.6666%;
}

#projekt-info .content-info {
    padding-left: 3rem;
    padding-left: calc(var(--margin-outline) * 2);
    padding-right: 6rem;
}

#projekt-info .content-info>.vc_column-inner>.wpb_wrapper {

    border-bottom: 1px solid var(--cl-primary);
    padding: 2rem 0 1rem 0;
}

#projekt-info .col-txt-info {
    font-family: "SpaceMono";
    line-height: 1.4;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

#projekt-info .w-vwrapper-projekt-header {
    border-bottom: 1px solid var(--cl-primary);
    margin-bottom: 0.75rem;
}

footer {
    font-family: var(--mono-font) !important;
    text-transform: uppercase !important;
}

footer .l-section.full_height {
    height: calc(100vh - (var(--margin-outline) * 2));
    min-height: calc(100vh - (var(--margin-outline) * 2));
    padding: 0 calc(var(--margin-outline) * 2);
    position: relative;
}

footer .l-section.full_height * {
    position: unset !important;
}

footer #footer-top {
    padding-bottom: 15vh;
}

footer #footer-top img {
    position: absolute !important;
    top: -1px;
    left: calc(var(--margin-outline) * 2);
    height: auto;
    /* width: 40vw; */
    width: calc(41.6666% - var(--margin-outline));
}

/* footer #footer-top .w-hwrapper .wpb_text_column:first-child,
footer #footer-middle .w-hwrapper .w-vwrapper:first-child {
    min-width: 12vw;
} */

footer #footer-middle {
    padding-bottom: 18vh;
}

footer #footer-bottom {
    padding: 0.75rem 0 2rem 0;
    border-top: 1px solid var(--cl-secondary);
}

footer #footer-bottom p,
footer #footer-bottom a {
    font-size: 11px;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 1.8px;
}

footer .l-section.full_height a {
    position: relative !important;
}

footer a {
    transition: color 0.5s ease;
    z-index: 10;
}

.w-nav.type_mobile.m_layout_fullscreen .w-nav-control.active+.w-nav-list.level_1>li a::before,
footer a::before {
    content: "";
    position: absolute;
    top: 0;
    left: -5px;
    height: 100%;
    width: 0;
    background-color: var(--cl-secondary);
    transition: all 0.5s ease;
    z-index: -1;
}

.w-nav.type_mobile.m_layout_fullscreen .w-nav-control.active+.w-nav-list.level_1>li a::before {
    background-color: var(--cl-primary);
}

.w-nav.type_mobile.m_layout_fullscreen .w-nav-control.active+.w-nav-list.level_1>li a:hover {
    color: var(--cl-weiss) !important;
}

footer a:hover {
    color: var(--cl-primary) !important;
}

.w-nav.type_mobile.m_layout_fullscreen .w-nav-control.active+.w-nav-list.level_1>li a:hover::before,
footer a:hover::before {
    width: calc(100% + 10px);
    transition: all 0.5s ease;
}

@media screen and (max-width: 1920px) {

    .header-col-wrapper,
    sr7-row-con,
    sr7-col,
    sr7-col-con {
        height: 30vh !important;
    }

    /* #home-header .subline {
        transform: translateY(1.5vh) !important;
    } */
}

@media (max-width: 1440px) {
    :root {
        --margin-outline: 1rem;
    }

    /* #home-parallax,
  #teaser-projekt-01,
  #teaser-projekt-02,
  #teaser-projekt-03 {
    height: auto;
  } */

    #branchen .w-hwrapper .w-vwrapper {
        width: calc(50% + (var(--margin-outline) / 4) - var(--margin-outline))
    }

    #branchen .w-hwrapper .w-vwrapper.last-item {
        width: calc(50% + (var(--margin-outline) / 4) - (var(--margin-outline) * 3));
    }

    .prozess-info {
        padding-right: 1rem;
    }

    .leistung-content {
        padding: 1rem;
    }
}

@media (max-width: 1380px) {
    #projekt-starten .w-btn.us-btn-style_1::before {
        height: 30px;
        width: 30px;
    }

    footer #footer-top {
        height: 30vw;
    }

    footer #footer-top img {
        width: 25vw;
    }

    footer .l-section.full_height {
        height: auto;
        min-height: auto;
        padding: 0 calc(var(--margin-outline) * 2);
    }
}

@media (max-width: 1024px) {

    .teaser-projekt,
    .prozess-info {
        background-color: var(--cl-weiss);
    }

    footer #footer-top {
        padding-top: 9vh;
        padding-bottom: 6vh;
    }
}

@media (max-width: 600px) {
    :root {
        --font-size: 14px;
        --margin-outline: 0.75rem;
    }

    /* sr7-row {
        padding: 10vh calc(var(--margin-outline) * 3) !important;
    } */

    .sr7-bullet {
        top: 0 !important;
    }

    h3,
    .h3 {
        margin-left: -1px !important;
    }

    .w-nav-control .w-nav-icon.style_hamburger_5::before {
        top: -4px;
    }

    .img-col-menu {
        height: 25vh;
    }

    #menu-main-menu-links {
        margin-bottom: 15vh;
    }

    #menu-main-menu-links li::before {
        top: 0px;
    }

    .l-subheader {
        --padding-inline: calc(var(--margin-outline) * 3) !important;
    }

    sr7-bullets {
        transform: translate(-73px, -70px) !important;
    }

    .header-col-wrapper {
        margin-bottom: 10vh !important;
    }

    .leistung-content {
        padding: calc(var(--margin-outline) * 2);
        /* min-height: 180px; */
    }

    #home-leistung .vc_col-sm-4 h3 {
        margin-bottom: 3rem;
    }

    #branchen .w-hwrapper .w-vwrapper {
        padding: calc(var(--margin-outline) * 5);
        ;
    }

    #branchen .w-hwrapper .w-vwrapper.last-item {
        width: calc(100% + (var(--margin-outline) / 4) - (var(--margin-outline) * 3));
        margin-left: calc(var(--margin-outline) * 2);
        margin-top: calc(var(--margin-outline) * 4);
        border-bottom: none;
    }

    #branchen .w-hwrapper .w-vwrapper.last-item .w-btn-wrapper {
        margin-top: calc(var(--margin-outline) * 3);
    }

    .leistung-raster .leistung-content h3 {
        font-size: clamp(24px, 1.1vw, 30px) !important;
    }

    #teaser-projekt-01,
    #teaser-projekt-02,
    #teaser-projekt-03,
    #teaser-projekt-04 {
        margin-bottom: 0;
    }

    .prozess-info {
        margin-bottom: 3.5rem !important;
    }

    .w-btn.us-btn-style_1 {
        font-size: 16px !important;
        padding-left: 35px !important;
    }

    .pagination p {
        margin-bottom: 2rem !important;
    }

    #branchen .w-hwrapper .w-vwrapper {
        width: 100%;
    }

    #projekt-starten {
        padding: 7vh calc(var(--margin-outline) * 2);
        text-align: center;

    }

    #projekt-starten .w-btn.us-btn-style_1 {
        margin-top: 3vh;
        padding-left: 35px !important;
    }

    #projekt-starten .w-btn.us-btn-style_1::before,
    .w-btn.us-btn-style_1::before {
        height: 25px;
        width: 25px;
    }

    .prozess-info>.vc_column-inner>.wpb_wrapper {
        border-bottom: none;
        padding: 2rem 0 0 0;
    }

    #teaser-projekt-05 {
        margin-bottom: calc(var(--margin-outline) * -2);
    }

    #projekt-info .content-info {
        padding-right: calc(var(--margin-outline) * 2);
    }

    body.projekt-detail .w-hwrapper .w-image.round-corners {
        margin-bottom: var(--margin-outline);
    }

    body.projekt-detail .w-hwrapper .w-image.round-corners:last-child {
        margin-bottom: 0;
    }

    footer #footer-top img {
        width: calc(33.33vw - (var(--margin-outline) * 3));
    }

    footer #footer-top {
        height: auto;
        padding-top: 2vh;
        margin-bottom: 0;
    }

    footer #footer-top ul {
        margin-top: 4rem;
    }

    footer #footer-top .w-hwrapper {
        --hwrapper-gap: 1rem !important;
    }

    footer #footer-bottom,
    footer #footer-bottom * {
        text-align: center !important;
    }

    footer #footer-middle .menu>li {
        margin: 0 0 0.25rem !important;
    }

    footer #footer-middle {
        padding-bottom: 5vh;
    }

    footer #footer-bottom li {
        display: block;
        text-align: center;
        width: 100%;
    }

    body.privacy #page-content .l-section,
    body.imprint #page-content .l-section {
        padding-left: 2.5rem;
        padding-right: 2.5rem;
    }
}

body.privacy h2,
body.imprint h2 {
    font-size: clamp(22px, 3vw, 28px) !important;
}

body.privacy h3,
body.imprint h3 {
    font-size: clamp(18px, 3vw, 22px) !important;
}

body.privacy #page-content p,
body.imprint #page-content p,
body.privacy #page-content li,
body.imprint #page-content li {
    color: var(--cl-antrazit);
}

#test-section {
    position: relative;
    padding: 0;
}

#test-section .top-claim p,
#test-section .sub-claim p {
    font-size: 60px;
    font-weight: 500;
    line-height: 1.3;
    z-index: 10;
    margin: auto calc(var(--margin-outline) * 3);
}

#test-section .top-claim {
    z-index: 10;
    position: absolute;
    width: auto;
    left: calc(var(--margin-outline) * 3);
    margin-top: 50vh !important;
    transform: translateY(-50%);
}

#test-section .sub-claim p {
    font-size: 30px;
    opacity: 0;
}

#test-section .l-section-h.i-cf,
#test-section .vc_column_container,
#test-section .g-cols.via_flex>div>.vc_column-inner {
    position: unset;
}

#test-section .vc_col-sm-11 {
    width: 100%;
    margin-left: -8.3333%;
    /* transform: translateX(-8.3333%); */
}

.header_hor .l-header.pos_fixed:not(.down)~.l-main #test-section .type_sticky>.wpb_wrapper {
    top: 0 !important;
}


/* #test-section {
    position: relative;
    padding-bottom: 1800px;
    height: 100vh;
}

#test-section * {
    position: unset;
} 

*/

#test-img img {
    position: absolute !important;
    top: 0;
    left: 20px;
    height: 100vh;
    width: 100vw;
    transform-origin: center right;
    z-index: 0;
}

#test-section .vc_col-sm-11>.vc_column-inner>.wpb_wrapper {
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


.cmplz-cookiebanner {
    right: var(--margin-outline) !important;
    bottom: var(--margin-outline) !important;
}

.cmplz-cookiebanner .cmplz-close svg {
    width: 22px;
    height: 22px;
}