.header {
    height: 140px;
    background-color: aliceblue;
    position: relative;
}

.header-wrapper {
    max-width: 1080px;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    position: relative;
    align-items: flex-start;
    margin-top: 2em;
}

.menu * ul {
    list-style: none;
    padding: 0;
}

.menu-icon {
    cursor: pointer;
}

.phone {
    width: 124px;
    height: 42px;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
        font-size: 15px;
        font-weight: 500;
}

.phone img {
    width: 22px;
    height: 22px;
    margin-right: 1em;
}

.close {
    display: none;
    margin-left: 2em;
    margin-bottom: 2em;
    color: #194b7e;
    align-items: center;
  
}

.close div {
    color: black;
    font-weight: 600;
}

.close svg {
    padding-right: 8px;
    width: 22px;
    height: 22px;
}

.close:has(:hover) div {
    color: #194b7e;
}

.close:has(:hover) svg {
    fill: #194b7e;
}


.cta-consulting {
    background: linear-gradient(270deg, #d5e5f6 0%, #eaf2fb 100%);
    height: 42px;
    display: flex;
    align-items: center;
    padding: 12px;
    cursor: pointer;
    justify-content: center;
    width: 336px;
}

a.cta-consulting span:last-of-type {
    padding-left: 0.35em;
    color: #1a4b7e;
}

.menu {
    display: none;
    position: absolute;
    top: 3.45em;
    margin-left: auto;
    margin-right: auto; /* Hintergrundfarbe des Menüs */
    z-index: 1000;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    background: white;
}

.col1,
.col2 {
    padding-top: 50px;
    padding-bottom: 50px;
}

.m-second {
    padding-left: 2em;
}

.menu * a {
    text-decoration: none;
    color: black;
}
.menu * a:hover {
    color: #1a4b7e;
}

.m-first li a:hover,
.m-first li a.hovered {
    color: #1a4b7e;
}

/* Hover-Effekt für das Menü-Icon */
/* .menu-icon:hover + .menu {
    display: block;
} */

.m-first a {
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 40px; /* 222.222% */
    text-decoration: none;
}
.m-second a {
    font-size: 16px;
    font-style: normal;
    line-height: 40px; /* 222.222% */
    text-decoration: none;
}

ul.m-first, ul.m-second {
    padding: 0;
}

.header:has(> .header-wrapper > .menu-icon:hover)::after,
.line {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    border-bottom: 2px solid #194b7e;
    z-index: 2;
}

/* Optional: Stellen Sie sicher, dass die ul-Elemente keinen internen Abstand oder Rand haben */
.menu-section > ul {
    list-style-type: none; /* Entfernt Bulletpoints von der Liste */
    padding: 0;
    margin: 0;
}

.main-container {
    display: flex;
    justify-content: center;
    max-width: 1080px;
    margin: 0 auto;
    position: relative; /* damit das pseudo-element relativ zu diesem container positioniert wird */
}

.col1,
.col2 {
    flex: none; /* Verwenden Sie 'none', um explizite Breiten festzulegen */
}

.col1 {
    width: 33.33%;
    position: relative;
    z-index: 1; /* Stellt sicher, dass der Inhalt über dem Pseudo-Element liegt */
}

.col1::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100vw;
    right: 0;
    bottom: 0;
    background: linear-gradient(270deg, #d5e5f6 0%, #eaf2fb 100%);
    z-index: -1; /* Stellt sicher, dass das Pseudo-Element hinter dem Inhalt liegt */
}

.col1-inner {
    position: relative; /* Damit der Inhalt von col1 über dem Pseudo-Element liegt */
    z-index: 2; /* Höher als das Pseudo-Element */
}

.col2 {
    width: 66.66%;
    max-height: 50vw;
    overflow-y: auto;
}

.col2 ul {
    display: none;
}

/* .m-second ul:before {
    content: attr(data-content);
    color: #1a4b7e;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 0.5em;
    display: block;
} */

.header__top {
    display: flex;
    justify-content: flex-end;
    margin-right: 2em;
}

.mobile {
    display: none;
    justify-content: space-between;
    align-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 1em;
}

a.back {
    background: #194b7e;
    color: white;
    padding: 0.5em 1em;
    border-radius: 1000px;
    display: none;
}
a.back:hover {
    border: 2px solid #194b7e;
    color: #194b7e;
    background: none;
}

.mobile:after {
    content: "";
    display: block;
}

@media only screen and (max-width: 1080px) {
    .header-wrapper {
        padding: 0 2em;
    }
    .m-first, ul.m-first {
        padding-left: 2em;
    }
}

@media only screen and (max-width: 768px) {
    .header__top {
        margin-right: 0;
    }
    .cta-consulting::before {
        display:none;
    }
    .header-wrapper {
        margin-top: 0.5em;
    }
    .mobile {
        display: flex;
    }
    .cta-consulting {
        width: 100%;
        justify-content: center;
        position: relative;
        z-index: 1;
    }
    .cta-consulting span,
    .cta-consulting img {
        z-index: 1;
    }
    .cta-consulting::before {
        background: linear-gradient(270deg, #d5e5f6 0%, #eaf2fb 100%);
        content: "";
        position: absolute;
        top: 0;
        left: 50%; /* Zentriert das Pseudo-Element horizontal */
        transform: translateX(
            -50%
        ); /* Verschiebt das Pseudo-Element zurück, um eine exakte Zentrierung zu erreichen */
        width: 100vw;
        height: 42px;
        z-index: 0; /* Stellt sicher, dass das Pseudo-Element hinter dem Inhalt liegt */
    }
    .header-wrapper {
        flex-direction: column;
    }
    img.menu-icon {
        display: none;
    }
    /* Überschreibe den Standardfall für .mobile */
    .mobile img.menu-icon {
        display: block; /* oder das gewünschte display-Attribut */
    }
    .header-wrapper > a:not(.cta-consulting) {
        display: none;
    }
    .header-wrapper:before {
        display: block;
        margin-top: 1em;
        content: "";
    }

    .menu {
        top: 145%;
    }

    .col1,
    .col2 {
        width: unset;
    }
    .col2 {
        display: none;
    }
    .main-container {
        flex-direction: column;
    }
    .menu li:after {
        content: "";
        display: block;
        background: url("/wp-content/themes/divi-child/components/menu/chevron.svg") no-repeat;
        background-size: contain;
   
        width: 20px;
        height: 20px;
    }
    .menu li {
        display: flex;
        justify-content: space-between;
        padding-right: 2em;
        align-items: center;
    }
    .m-second ul:before {
        margin-top: 2em;
    }
    a.back {
        display: unset;
    }
}

.c-mobile {
    display:none;
}

@media only screen and (max-width: 600px) {
    .col2,
    .col1 {
        max-height: calc(100vh - 140px);
        height: calc(100vh - 140px);
    }
    .col1::before {
        max-height: calc(100vh - 140px);
        height: calc(100vh - 140px);
    }

    .c-mobile {
        display:block;
    }

    .c-main  {
        display:none;
    }

    a.cta-consulting span:last-of-type {
        padding-left: 0;
    }

    a.cta-consulting.c-mobile {
        width: 100%;
        height: 42px;
        /* background: white; */
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 15px;
        font-weight: 500;
    }

    .cta-consulting {
        max-width: 350px;
    }

    .phone, .cta-consulting {
        width: 100%;
    }
}

/* WP ANPASSUNGEN */

.cta-consulting img {
    height: 18px;
    margin-right: 1em;
}

.cta-consulting span {
   font-size: 15px;
   font-weight: 500;
}

.cta-consulting span:last-child {
    font-weight: 800;
}