:root {
    /* === Farben === */
    /* Brand */
    --color-orange:        #E97406;
    --color-orange-dark:   #C96507;

    /* Blau-Grau Palette */
    --color-dark:          #4C5862;
    --color-dark-hover:    #5E6972;
    --color-mid:           #5F7688;
    --color-mid-light:     #6C8195;
    --color-grey-blue:     #97A6B7;
    --color-blue-deep:     #3A536F;
    --color-blue-navy:     #012347;

    /* Neutrale Grautöne */
    --color-text:          #333;
    --color-black:         #000;
    --color-white:         #fff;
    --color-grey-text:     #5F5E5E;
    --color-grey-mid:      #B3B3B3;
    --color-border:        #E7E7E7;

    /* Hintergründe */
    --color-bg-light:      #F3F3F3;

    /* === Typografie === */
    --font-base:           "Open Sans", sans-serif;

    --font-size-xs:        12px;
    --font-size-sm:        14px;
    --font-size-base:      16px;
    --font-size-md:        18px;
    --font-size-lg:        21px;
    --font-size-xl:        24px;
    --font-size-2xl:       30px;
    --font-size-3xl:       32px;

    --font-weight-light:   300;
    --font-weight-normal:  400;
    --font-weight-semi:    600;
    --font-weight-bold:    700;

    /* === Abstände / Border-Radius === */
    --radius-sm:           4px;
    --radius-md:           12px;
    --radius-pill:         999px;
    --radius-circle:       50%;

    /* === Transitions === */
    --transition-bg:       background-color 0.2s ease-in-out;
    --transition-fast:     all 0.2s;
    --transition-base:     all 0.3s ease;
}

@charset "UTF-8";
.gmnoprint a,
.gmnoprint span,
.gm-style-cc {
    position: absolute;
    right: -500px
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline;
    font-variation-settings: "opsz" 10;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
    overflow-x: hidden;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

body {
    font-size: 100% !important;
}

body,
html {
    -webkit-text-size-adjust: 100%;
}

body,
html,
* {
    text-align: left;
}

body {
    background: white;
}

.no-margin {
    margin:0 !important;
}

.column {
    height: auto;
    border: none;
}

.float-right {
    float: right !important;
}

.absatz {
    margin-top: 15px;
}

.nobr {
    white-space: nowrap;
}

.bold {
    font-family: var(--font-base); font-weight: var(--font-weight-bold);
}

sub {
    vertical-align: sub;
    font-size: smaller;
}
sup, sub {
    position: relative;
    vertical-align: baseline;
    top: -0.4em;
}
sub { top: 0.4em; }

body,
html {
    font-family: sans-serif;
}

p,
form {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: 400;
    line-height: 27px; /* 168.75% */
    letter-spacing: 0;
}

.content-slider-navigation,
.job-slider-navigation,
.gallery-slider-navigation {
    display: block;
    height: 63px;
    background: url('../img/slider-bg.png') 32px 27px no-repeat;
}

.stoerer-de,
.stoerer-en {
    width: 117px;
    height: 118px;
    position: absolute;
    background: url('../img/stoerer-de.png') no-repeat;
    z-index: 999;
    left: 35%;
}

.stoerer-schweiz {
    position: absolute;
    left: -19px;
    bottom: -31px;
    border-radius: 18.142px;
    background: #EBEBEB;
    color: var(--color-text);
    padding: 4px 18px;
    max-width: 239px;
    display: flex;
    align-content: center;
    align-items: center;
    gap:20px;
}

.stoerer-schweiz span {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-bold);
    line-height: 26px; /* 162.5% */
    display:inline-block;
}

.stoerer-en {
    background: url('../img/stoerer-en.png') no-repeat;
}

.gallery-slider-navigation {
    height: auto;
    float: right;
}

.job-slider-navigation,
.gallery-slider-navigation {
    background: none;
}

.content-slider-navigation.nav-roi {
    background: none !important;
    height: 38px;
}

.column.main-column a {
    font-size: var(--font-size-sm);
}

.content-slider-navigation div,
.job-slider-navigation div,
.gallery-slider-navigation div {
    float: right;
}

.content-slider-next,
.job-slider-next,
.content-slider-prev,
.job-slider-prev,
.gallery-slider-prev,
.gallery-slider-next {
    width: 39px;
    height: 38px;
    display: block;
    background: url('../img/sprite-slider-nav.png') 16px 14px no-repeat var(--color-dark);
    background-size: 125%;
    color: white;
    float: left;
    cursor: pointer;
    transition: var(--transition-bg);
}

.gallery-slider-next-1 {
    width: 39px;
    height: 38px;
    display: block;
    background: url('../img/sprite-slider-nav.png') 16px 14px no-repeat var(--color-grey-blue);
    background-size: 125%;
    color: white;
    float: left;
    cursor: pointer;
    transition: var(--transition-bg);
    border-style: solid;
    border-width: 1px;
    border-color: var(--color-white);
}

.gallery-slider-prev-1 {
    width: 39px;
    height: 38px;
    display: block;
    background: url('../img/sprite-slider-nav.png') 16px 14px no-repeat var(--color-grey-blue);
    background-size: 125%;
    color: white;
    float: left;
    cursor: pointer;
    transition: var(--transition-bg);
    border-top: solid 1px;
    border-bottom: solid 1px;
    border-right: solid 1px;
    border-color: var(--color-white);
    margin-left: 0px !important;
}

a:focus,
a:active,
button,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
select::-moz-focus-inner,
input[type="file"]>input[type="button"]::-moz-focus-inner {
    outline: none !important;
}

.content-slider-next:hover,
.content-slider-prev:hover,
.job-slider-prev:hover,
.job-slider-next:hover,
.gallery-slider-prev:hover,
.gallery-slider-next:hover {
    background-color: var(--color-dark-hover);
}

.gallery-slider-prev-1:hover {
    display: block;
    background-color: var(--color-white);
    color: var(--color-mid);
    background: url('../img/sprite-slider-nav-blau.png') -26px 14px no-repeat var(--color-white);
;
    background-size: 125%;
    cursor: pointer;
    transition: var(--transition-bg)
}

.gallery-slider-next-1:hover {
    display: block;
    background-color: var(--color-white);
    color: var(--color-mid);
    background: url('../img/sprite-slider-nav-blau.png') 16px 14px no-repeat var(--color-white);
    background-size: 125%;
    cursor: pointer;
    transition: var(--transition-bg);
}

.slider {
    padding: 0px 32px 48px 32px !Important
}

.jobs .slider,
.gallery-wrapper .slider {
    padding: 0 !important;
}

.gallery-wrapper .slider {
    width: 85%;
}

.gallery-container {
    width: 100%;
    #background: url('../img/galerie/gallery-bg.png') repeat-x var(--color-bg-light);
    background-color: var(--color-grey-blue);
    padding: 0 0 60px 0;
}

#gallery-slider-2 {
    background: url(../img/galerie/gallery-bg.png) repeat-x 0px -60px var(--color-bg-light);
}

.gallery-slider p.label {
    position: absolute;
    bottom: 0;
    margin-left: 72%;
}

.jobs h2 {
    font-size: 2.0em;
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    float: left;
    padding-left: 52px;
}

.job-container .job-offer {
    width: 100%;
}

.slider.roi-slider {
    padding: 0 80px !Important;
    min-height: 154px;
    box-sizing: border-box;
}

.slider.roi-slider .content-slider {
    min-height: 100px;
}

.slider.roi-slider span {
    font-size: var(--font-size-base);
    color: var(--color-text);
}

.slider.roi-slider h3 {
    color: var(--color-black);
    font-size: var(--font-size-lg);
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-top: 5px;
}

.home .slider {
    padding: 0px 32px 23px 32px !Important;
}

.col-9_5 .content-slider {
    min-height: 200px;
}

.content-slider-prev,
.job-slider-prev,
.gallery-slider-prev {
    margin-left: 1px;
    background-position: -25px 14px;
}

.gallery-slider img {
    width: 70% !important;
    float: left;
}

.video-container.gif-ani {
    position: relative;
}

.video-container.gif-ani .gif {
    position: absolute;
    top: 19px;
}

.tel-info,
.tel-info strong {
    color: crimson;
}

.tel-info strong {
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
}

.news-slider-navigation {
    display: block;
}

a.mail:hover {
    text-decoration: underline !important;
}

.news-slider-navigation div {
    float: right;
}

.news-slider small {
    font-size: 0.875em;
}

.news-slider .item .left {
    float: left;
    max-width: 31.81818181818182%;
    margin-right: 5.208333333333333%;
}

.news-slider h3,
.news-slider h3 a {
    font-size: var(--font-size-3xl);
    margin: 5px 0 25px 0px;
    line-height: 1.225em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    color: var(--color-text);
}

.news-slider h3 a:hover {
    text-decoration: none;
}

.news-slider .item .right {
    float: left;
    max-width: 62.5%;
}

.news.slider {
    padding: 0 !important;
    max-width: 91.66666666666667%;
    margin-top: 50px;
}

figcaption {
    margin-top: 7px;
}

.news-slider-next,
.news-slider-prev {
    width: 39px;
    height: 38px;
    display: block;
    background: url('../img/sprite-slider-nav.png') 16px 14px no-repeat var(--color-dark);
    background-size: 125%;
    color: white;
    float: left;
    cursor: pointer;
    transition: var(--transition-bg);
}

.news-slider-next:hover,
.news-slider-prev:hover {
    background-color: var(--color-dark-hover);
}

.news-slide figcaption {
    font-size: 0.688em;
}

.news-slider-prev {
    margin-left: 1px;
    background-position: -25px 14px;
}

.news-slider .right p a {
    text-decoration: none;
    display: inline-block;
    padding-right: 15px;
    background: url(../img/pfeil-orange.png) right no-repeat;
    font-size: var(--font-size-sm);
}

.news-slider .right p a:hover {
    text-decoration: underline;
}

.newsimg {
    width: 280px !important;
}

.tabs {
    width: 100%;
    display: inline-block;
}

#mobile-id-2 .tab-links a {
    float: left;
}

.tabs-mobile {
    display: none;
}

.send-icon {
    display: inline-block;
    background: url('../img/letter.png') no-repeat;
    width: 46px;
    height: 12px;
}

.tab1.absatz,
tab2.absatz {
    font-size: var(--font-size-md);
    line-height: 24px;
}

.referenzen .img-teaser .content {
    margin-bottom: 40px;
}

.landingpage #column-4 {
    min-height: 466px;
}

.tab-links:after {
    display: block;
    clear: both;
    content: '';
}

.tab-links li {
    float: left;
    list-style: none !important;
    background: none !important;
    background-color: var(--color-orange-dark) !important;
    padding: 4.4% 5.3%;
    box-sizing: border-box;
    width: 50%;
    text-align: center;
    height: 57px;
}

.landingpage .tab-links li {
    padding: 6.4% 5.3%;
}

.unterseite.training .tab-content {
    padding: 2px 21px 21px 21px;
}

.tab-links li.litab2 {
    padding-top: 20px;
}

.tab-links a {
    line-height: 1.5em;
    padding: 5%;
    font-size: 0.55em;
    font-size: var(--font-size-xs) !Important;
    transition: all linear 0.15s;
    color: var(--color-white);
    width: 40%;
    text-decoration: none;
    text-transform: uppercase;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    text-align: center;
    display: table-cell;
    vertical-align: middle;
}

.tab-links a:hover {
    text-decoration: underline;
}

.tab-links a.active {
    background: var(--color-orange) !important;
    color: var(--color-white);
}

.standort-tab .tab-links a {
    background: var(--color-mid-light);
}

.standort-tab .tab-links a.active {
    background: var(--color-mid) !important;
    color: var(--color-white);
}

.fa-globe:before {
    color: var(--color-grey-text);
}

.utility-nav ul li:hover .fa-globe:before {
    color: var(--color-black);
}

.fa {
    margin: 3px 0px 0 -19px;
    position: absolute;
    font-size: 13px !important;
    color: var(--color-grey-text);
}

.fa:hover {
    color: var(--color-grey-text);
}

.standorte-container {
    margin: 63px 0 0 0;
}

.standorte-container h2 {
    font-size: var(--font-size-lg);
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    line-height: 26px;
    margin-bottom: 30px;
}

.trainingsprodukte-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(355px, 1fr));
    gap: 42px;
}

.trainingsprodukte-wrapper a:hover {
    text-decoration: none;
}

/* Tabs */

.wrapper.fs .teaser-text {
    margin:0;
}

.wrapper.fs {
    margin-top:96px;
}

.fs-tabs {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    justify-content: center;
    margin: 50px 0 24px;
}

.fs-tabs button:hover,
.fs-tab.is-active {
    background: var(--color-dark);
    color: var(--color-white);
}

.fs-tab {
    border-radius: 21.767px;
    border: 1px solid #D9DBDD;
    background: var(--color-bg-light);
    color: var(--color-text);
    text-align: center;
    font-family: var(--font-base);
    font-weight: var(--font-weight-semi);
    font-size: var(--font-size-sm);
    line-height: 24px;
    height: 28px;
    padding: 0 13px;
    justify-content: center;
    align-items: center;
}

/* Slider Shell */
.fs-slider {
    position: relative;
    max-width: 1250px;
    margin: 0 auto 96px;
}

.fs-viewport {
    display: flex;
    height: 350px;
    padding: 0 100px;
    align-items: center;
    border-radius: var(--radius-md);
    background: var(--color-bg-light);
    overflow: hidden;
    position: relative;
}

/* Slide Layout */
.fs-slide {
    display: grid;
    grid-template-columns: 1fr 1fr; /* links Text, rechts Bild */
    align-items: center;
    gap: 24px;
    opacity: 0;
    transform: translatex(8px);
    pointer-events: none;
    transition: opacity 0.35s ease, transform 0.35s ease;
    position: absolute;
}

.fs-slide.is-active {
    opacity: 1;
    transform: translatex(0);
    pointer-events: auto;
    position: absolute; /* übereinander stapeln */
}

.fs-col.fs-text {
    padding-right: 8px;
}

.fs-headline {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semi);
    margin: 0 0 24px 0;
}

.fs-copy {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal);
    line-height: 27px;
}

.fs-col.fs-media {
    display: flex;
    justify-content: center;
    align-items: center;
}

.fs-col.fs-media img {
    height: auto;
    display: block;
    max-width: 60%;
}

.fs-col.fs-media video {
    max-width: 89%;
    height: auto;
    display: block;
}

/* Responsive */
@media (max-width: 860px) {
    .fs-slide {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .fs-col.fs-media video {
        max-width: 310px;
    }

    .fs-col.fs-media img {
        max-width: 200px;
    }

    .fs-viewport {
        padding: 20px;
    }

    .fs-slide {
        inset: 20px;
    }
}

/* Optional: Fokus-Stile für A11y */
.fs-tab:focus-visible,
.fs-nav:focus-visible {
    outline: 2px solid #2563eb;
    outline-offset: 2px;
}

.tp-filter {
    margin: 0px auto 50px auto;
}

.tp-filter .tp-filter-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
}

.tp-filter-item.no-margin {
    margin-right: 0 !important;
}

.tp-filter .tp-filter-list a div {
    color: var(--color-dark);
    font-size: var(--font-size-sm);
    background: var(--color-white);
    display: block;
    padding: 12px 31px 12px 31px;
    border-radius: 20px;
    transition: var(--transition-fast);
    margin: 0 10px 10px 0;
    border: 1px solid var(--color-white);
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
}

.tp-filter .tp-filter-list a:hover {
    text-decoration: none;
}

.tp-filter .tp-filter-list a:hover div {
    background: linear-gradient(0deg, rgba(215, 215, 215, 0.2), rgba(215, 215, 215, 0.2)), linear-gradient(0deg, var(--color-white), var(--color-white));
    border: 1px solid #D7D7D7;
}

.tp-filter .tp-filter-list a.active div {
    color: var(--color-white);
    background: var(--color-dark);
    border-color: var(--color-dark)
}

.tp-link {
    min-height: 380px;
}

.tp-item {
    transition: var(--transition-fast);
    position: relative;
    border-radius: var(--radius-md);
    border: 1px solid var(--color-white);
    background: var(--color-white);
    height: 100%; /* füllt die ganze Zellenhöhe */
    display: flex;
    flex-direction: column;
}

.tp-item .tp-neu {
    border-radius: 16px;
    border: 1px solid #D9DBDD;
    background: linear-gradient(86deg, #37B6B8 -13.38%, #1A98D8 85.96%);
    padding: 3px 13px;
    position: absolute;
    left: 30px;
    top: 20px;
    color: var(--color-white);
    text-align: center;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
    line-height: 24px;
}

.tp-coming-soon {
    border-radius: 16px;
    background: var(--color-black);
    padding: 3px 13px;
    position: absolute;
    left: 30px;
    top: 20px;
    color: var(--color-white);
    text-align: center;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
    line-height: 24px;
}

.tp-item:hover {
    border: 1px solid#D7D7D7;
    text-decoration: none;
}

.tp-item .tp-tag-container {
    margin:15px 0 0 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
}

.tp-item .tp-tag {
    padding: 3px 10px;
    justify-content: center;
    align-items: center;
    border-radius: 16px;
    border: 1px solid #D9DBDD;
    background: var(--color-bg-light);
    color: #595959;
    text-align: center;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 24px; /* 171.429% */
}

.tp-item .text-container {
    padding:0 30px 30px 30px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.tp-item .tp-headline {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-style: normal;
    font-weight: var(--font-weight-bold);
}

.tp-item .sub-tag {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-style: normal;
    font-weight: var(--font-weight-normal);
}

.tp-item .img-container {
    border-radius: var(--radius-md) 12px 0 0;
    background: #E6E6E6;
    margin:0 0 30px 0;
}

.tp-item .tp-thumb {
    width: 100%;
    margin: 0 0 -2px 0;
}

.tp-item:hover button {
    background-color: var(--color-orange-dark);
}

.special-teaser:hover button {
    background-color: var(--color-orange);
    background-position: 91% -15px;
    color: var(--color-white);
}

.special-teaser {
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column-reverse;
    align-content: center;
    justify-content: center;
}

.special-bg {
    background:url('/img/trainingsprodukte-thumbnails/trainingsprodukt_bg.webp') no-repeat center center var(--color-bg-light);
    background-size: cover;
    padding:0 5%;
    position: relative;
}

.back-to-overview {
    width: 40%;
    padding:160px 0;
    margin: 0 0 40px 0;
}

.overview-img {
    display:none;
}

@media only screen and (max-width: 850px) {
    .back-to-overview {
        width:100%;
        padding:45px 0;
        margin-bottom: -20px;
    }

    .fs-tabs {
        margin: 38px 0 44px;
    }

    .fs-headline {
        margin-top:10px;
    }

    .overview-img {
        display:block;
        background:var(--color-bg-light);
        width:100%;
    }

    .special-bg {
        background:none;
        background-color:var(--color-bg-light);
    }
}

.back-to-overview h2 {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    margin:0 0 24px 0
}

.back-to-overview p {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal);
    line-height: 27px;
    margin:0 0 20px 0;
}

.stoerer-datenschutz {
    position: relative;
}

.stoerer-datenschutz img {
    position: absolute;
    right: 30px;
    top: -30px;
    z-index: 9999;
    width: 18%;
}

@media only screen and (max-width: 1000px) {
    .stoerer-datenschutz img {
        width: 26%;
        right: -10px;
        top: -50px;
    }
    .sprachen-stoerer.en {
        padding: 16px 0px 16px 0px !important;
    }
}

.trainingsprodukte .sprachen-stoerer {
    margin:30px 0 -15px 0;
}

@media only screen and (max-width: 650px) {
    .stoerer-datenschutz img {
        width: 36%;
        right: -22px;
        top: -60px;
    }

    .trainingsprodukte .sprachen-stoerer,
    .trainingsprodukte .sprachen-stoerer.en {
        margin: 30px 0 15px 0 !important;
    }
}

.sprachen-stoerer {
    background: url("../img/icon_sprache.svg") no-repeat 23px center var(--color-dark);
    padding: 14px 0px 15px 0px;
    box-sizing: border-box;
    width: 349px;
    float: right;
    margin: -100px 0 0 0;
}

.sprachen-stoerer.en {
    padding: 20px 0px 20px 0px;
}

.experten-stoerer {
    background: url("../img/icon_expertencheck.svg") no-repeat 25px center var(--color-dark);
    padding: 14px 0px 15px 0px;
    box-sizing: border-box;
    width: 349px;
    float: right;
    margin: -30px 0 0 0;
}

.experten-stoerer.unterseite {
    margin: 28px 0 50px 0;
    width: 100%;
}

.experten-stoerer.landingpage {
    margin: 0;
    width: 320px;
    position: absolute;
    right: 0;
    top: -30px;
}

.experten-stoerer.landingpage p {
    font-size: 0.857em;
    line-height: 16px;
    padding: 0 20px 0 80px;
}

@media only screen and (max-width: 1400px) {
    .experten-stoerer,
    .sprachen-stoerer {
        width: 320px;
    }
    .sprachen-stoerer.en {
        margin-top: -115px;
    }

    .trainingsprodukte .sprachen-stoerer.en {
        margin: 30px 0 -15px 0;
    }

    .sprachen-stoerer {
        background-position: 23px center;
    }
    .experten-stoerer.landingpage {
        margin: 10px 0 20px 0;
        width: 100%;
        position: relative;
        right: 0;
        top: 0px;
        padding: 20px;
    }
}

@media only screen and (max-width: 1000px) {
    .sprachen-stoerer.en {
        margin-top: 0px;
    }

    .trainingsprodukte .sprachen-stoerer.en {
        margin: 30px 0 -15px 0;
    }
    .tp-filter {
        margin-bottom: 50px;
        max-width: 100%;
    }
    .stoerer-container {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        height: 70px;
        position: absolute;
        margin-top: -27px;
        margin-left: auto;
        margin-right: auto;
        left: 0;
        right: 0;
    }
    .stoerer-container.web-based {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        height: 90px;
        position: absolute;
        margin-top: -47px;
        margin-left: auto;
        margin-right: auto;
        left: 0;
        right: 0;
    }
    .experten-stoerer,
    .sprachen-stoerer {
        float: none;
        display: flex;
        align-items: center;
        width: 100%;
        margin: 0;
    }
    .sprachen-stoerer {
        margin-right: 20px;
    }
}

@media only screen and (max-width: 700px) {
    .experten-stoerer.unterseite {
        margin: 0;
        width: 100%;
        padding: 20px;
    }
    .experten-stoerer.landingpage {
        margin: 50px 0 40px 0;
        padding: 20px;
    }
}

.experten-stoerer p,
.sprachen-stoerer p {
    color: var(--color-white);
    font-size: 0.857em;
    line-height: 16px;
    padding: 0 20px 0 80px;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
}

.experten-stoerer p span,
.sprachen-stoerer p span {
    color: var(--color-white);
    font-family: var(--font-base); font-weight: var(--font-weight-bold);
}

@media only screen and (max-width: 600px) {
    .tp-filter {
        margin-bottom: 50px;
    }
    .stoerer-container,
    .stoerer-container.web-based {
        display: flex;
        flex-wrap: nowrap;
        flex-direction: column;
        height: auto;
        position: relative;
        margin-top: 0px;
        padding-top: 30px;
        margin-left: auto;
        margin-right: auto;
        left: 0;
        right: 0;
    }
    .sprachen-stoerer {
        margin-bottom: 20px;
    }
    .experten-stoerer,
    .sprachen-stoerer {
        width: 100%;
        padding: 24px 0px 25px 0px;
    }
    .experten-stoerer {
        background: url("../img/icon_expertencheck.svg") no-repeat 39px center var(--color-dark);
        padding: 14px 0px 15px 0px;
    }
    .sprachen-stoerer {
        background-position: 37px center;
        padding: 14px 0px 15px 0px;
    }
    .experten-stoerer p {
        padding: 0 20px 0 98px;
    }
    .experten-stoerer p,
    .sprachen-stoerer p {
        padding: 8px 30px 6px 98px;
    }
}

.tab {
    display: none;
}

.tab.active {
    display: block;
}

.tab-content {
    font-size: 1.125em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    line-height: 1.500em;
    padding: 21px;
    box-sizing: border-box;
}

.tab-content a {
    font-size: var(--font-size-sm);
    display: block;
    text-decoration: none;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    background: url(../img/pfeil-weiss.png) right no-repeat;
    background-size: 33px 11px;
    width: auto;
    background-size: 38px;
}

.standort-tab .tab-content a {
    background: none;
    color: var(--color-white);
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    display: inline;
    font-size: var(--font-size-base);
}

.tab-content a.arrow-left {
    background-position: 112px 8px;
}

.tab-content a:hover {
    text-decoration: underline;
}

a.tablink1 {
    width: 190px;
    background-position: 172px 8px;
}

a.tablink2 {
    width: 205px;
    background-position: 172px 8px;
}

.unterseite .landingpage a.tablink2 {
    width: 205px;
    background-position: 154px 8px;
}

.logo-carousel-big,
.logo-carousel-big2 {
    margin: 10px 0px 40px !important;
}

.logo-carousel,
.logo-carousel-big2 {
    height: 30px;
    margin: 20px 0;
}

.siegel-slider-wrapper p {
    color: var(--color-text);
    text-align: center;
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 30px; /* 166.667% */
    margin-top: 96px;
}

.siegel-carousel {
    margin-top: 96px;
}

.software .siegel-carousel {
    margin-top: 95px;
    margin-bottom: 55px;
}

@media only screen and (max-width: 960px) {
    .software .siegel-carousel {
        margin-top: 15px;
        margin-bottom: 55px;
    }

}

.siegel-carousel .item img {
    height:80px;
}

.logo-container {
    background-color: var(--color-white);
    background-image: url(../img/kundenreferenzen-link-gradient.png);
    background-repeat: repeat-x;
    background-position: -50px -100px;
    padding: 30px 2px 30px 2px;
    transition: background-color 0.5s ease;
    display: flex;
    flex-wrap: wrap;
}

.referenzen .logo-container {
    background: white !important;
}

.logo-container a {
    display: block;
}

.content {
    height: auto;
    padding: 32px 48px 32px 32px;
    position: relative;
}

.content.suche {
    min-height: 840px;
}

#site-id-25 .boilerplate {
    margin-top: 100px;
}

.trainingsprodukte #column-1 .content {
    margin-top: 1.86em;
}

.trainingsprodukte #column-1 .img-logo-teaser .content {
    margin-top: 0;
}

#site-id-25 .testimonial-teaser .content {
    height: auto;
    padding: 32px;
}

#site-id-10 #column-2 {
    margin-bottom: 110px;
}

.stellenanzeige .content {
    padding: 32px 190px 12px 50px;
}

.benifit-wrapper.stellenanzeige {
    max-width: 960px;
    margin: 0 auto;
}

.benifit-wrapper.stellenanzeige .benifit-container {
    text-align: center;
    background: var(--color-bg-light);
    box-sizing: border-box;
    padding: 32px 2px 18px 0px;
    margin-bottom: 20px;
}

.stellenanzeige .benifit-container div {
    display: inline-block;
    width: 10%;
    height: 70px;
    margin: 0 auto;
}

.stellenanzeige .benifit-container div.last {
    margin-right: 0;
}

.stellenanzeige .benifit-container img {
    width: 60px;
    display: block;
    margin: 0 auto;
}

.teaser-2-text h2 {
    font-size: 2.0em;
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin: 20px 0 42px 0;
}

.teaser-2-text .left {
    float: left;
    max-width: 48%;
}

.teaser-2-text .right {
    float: right;
    max-width: 48%;
}

.wrapper.main-wrapper {
    margin-top: -225px;
    position: relative;
}

.lp .wrapper.main-wrapper {
    margin-bottom: 200px;
}

.trainingsprodukte.lp .wrapper.main-wrapper {
    margin-bottom: 100px;
}

.marketing.lp .wrapper.main-wrapper {
    margin-bottom: 100px;
}

.content h1 {
    font-size: 2.0em;
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-bottom: 25px;
}

.content h1.subline,
.content h2.subline,
.content h3.subline,
.content h4.subline,
.content h5.subline {
    color: var(--color-text);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: 0.875em;
    line-height: 26px;
}

.special-headline {
    color: var(--color-text);
    font-size: 26px;
    font-family: var(--font-base);
    margin-top: 70px;
    margin-bottom: 10px;
    line-height: 1.5em;
}

.content p {
    line-height: 26px;
}

.text-teaser {
    padding: 18px 18px;
    cursor: pointer;
}

.text-teaser .mehr {
    background: url(../img/pfeil-weiss.png) no-repeat 190px 4px;
    padding-right: 40px;
    background-size: 40px;
}

.text-teaser a {
    color: inherit;
}

.text-teaser a:hover {
    text-decoration: none;
}

.text-teaser p {
    font-size: 1.125em;
    line-height: 1.400em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
}

.tisax-teaser {
    padding: 28px 25px 28px 32px;
}

.tisax-teaser img {
    float: left;
    max-width: 122px;
    margin: -6px 24px 0 0;
}

.tisax-teaser p {
    color: var(--color-text);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: 0.875em;
    line-height: 20px;
}

.tisax-teaser span.read-more {
    display: inline-block;
    padding-right: 15px;
    margin-top: 5px;
    color: var(--color-text);
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    background: url(../img/pfeil-grau-link.png) right no-repeat !important;
}

.tisax-teaser:hover span.read-more {
    text-decoration: underline;
}

.text-teaser.cbg_orange:hover {
    background-color: var(--color-orange-dark);
}

.text-teaser.cbg_lynch:hover {
    background-color: var(--color-mid-light);
}

#mobile-id-6 .text-teaser.cbg_lynch:hover,
#mobile-id-7 .text-teaser.cbg_lynch:hover {
    background-color: var(--color-mid);
}

.text-teaser.cbg_riverbed:hover {
    background-color: var(--color-dark-hover);
}

.text-teaser.cbg_nevada:hover {
    background-color: #747a80;
}

.text-teaser.cbg_gullgray:hover {
    background-color: #a2afbe;
}

.text-teaser.cbg_pickledbluewood:hover {
    background-color: #4e657e;
}

.text-teaser.cbg_orange .tablink1 {
    font-size: var(--font-size-sm);
    display: block;
    text-decoration: none;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    background: url(../img/pfeil-weiss.png) 175px 12px no-repeat;
    background-size: 33px 11px;
    width: auto;
    background-size: 38px;
}

.training .text-teaser {}

.text-teaser .wrapper .column {
    padding: 0px 150px;
    margin: 50px 0 150px 0;
}

.text-teaser .wrapper .column h2 {
    font-size: var(--font-size-3xl);
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin: 0 0 40px 0;
}

.text-teaser .wrapper .column p {
    font-size: var(--font-size-sm);
    line-height: 22px;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
}

.training #teaser-2.img-teaser .content:after {
    display: none;
}

.search-icon {
    background: url(../img/search.png) no-repeat;
    width: 17px;
    height: 17px;
    display: block;
    cursor: pointer;
}

#mobile-menu .search-bar {
    float: none;
    width: 85%;
    margin: 0;
    position: relative;
    margin: 0 20px 0 20px;
}

.search-bar .search-icon {
    position: absolute;
    right: -10px;
    top: 9px;
}

#search-bar:hover .search-icon {
    background: url(../img/search-hover.png) no-repeat;
}

.search-close {
    background: url('../img/close-burger-mobile.png') no-repeat;
    width: 14px;
    height: 14px;
    display: none;
    position: absolute;
    z-index: 99999;
    right: 8px;
    top: 4px;
    cursor: pointer;
}

.suche #output,
.suche p {
    line-height: 26px;
    font-size: var(--font-size-sm);
}

.suche #output em {
    font-style: normal;
    font-family: var(--font-base); font-weight: var(--font-weight-bold);
}

.suche #output ol li {
    margin: 30px 0;
    line-height: 27px;
    font-size: var(--font-size-sm);
}

.suche #output ol li a {
    color: #000101;
    font-size: var(--font-size-md);
    margin-bottom: 10px;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
}

.suche #output ol li .mod a {
    font-size: var(--font-size-sm);
    color: var(--color-orange);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
}

.suche #output p.weiter {
    border-top: 1px solid #cecece;
    padding-top: 13px;
    margin-top: 70px;
}

body.unterseite.suche #submenu {
    display: none !important;
}

@keyframes dash {
    from {
        stroke-dashoffset: 1000;
    }
    to {
        stroke-dashoffset: 0;
    }
}

.two-cols-content .col-right {
    float: right;
    width: 48%;
}

.two-cols-content.DuC {
    padding: 56px 52px 56px 34px;
}

.column.DuC {
    margin-left: -52px;
}

.DuC .subline {
    margin-bottom: 60px;
    line-height: 26px;
    padding-right: 5%;
}

.col-right.DuC {
    width: auto;
}

.two-cols-content .col-left {
    float: left;
    width: 48%;
}

.two-cols-content {
    padding: 56px 45px 56px 31px;
}

.two-cols-content ul.sorted-list li {
    margin: 0 0 12px 20px;
}

#site-id-4 .two-cols-content ul.sorted-list li {
    margin: 0 0 12px 10px;
}

.mobile-visible {
    display: none !important;
}

.img-text-teaser img {
    float: left;
    width: 31%;
    margin-right: 34px;
    margin-top: -30px;
}

body.datenschutz .img-text-teaser img {
    margin-top: 30px;
}

#site-id-14 .img-text-teaser img {
    width: 30%;
}

.img-text-teaser.unternehmen-img img {
    margin: 0 82px 80px 32px;
}

.teaser-marketing {
    width: 25%;
}

.contact-teaser p {
    font-size: var(--font-size-sm);
    margin-bottom: 5px;
    display: inline-block;
}

.teaser-contact h2 {
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    font-size: var(--font-size-3xl);
}

.teaser-contact .teaser-left p {
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    font-size: var(--font-size-md);
}

.teaser-contact .wrapper .column {
    padding: 45px 90px;
}

.teaser-contact .teaser-left {
    float: left;
    width: 74%;
}

.referenzen .teaser-contact .teaser-left {
    float: left;
    width: 70%;
}

.teaser-contact .teaser-right {
    float: left;
}

.teaser-contact .teaser-right a.button {
    margin-top: 7px;
    display: block;
}

.kontakt_spaltenwrapper {
    position: relative;
}

.kontakt_spaltenwrapper.hidden {
    padding: 20px;
    background: var(--color-border);
    display: none;
    margin-top: 25px;
}

.kontakt_spaltenwrapper .close-btn {
    background: url(../img/close-burger-mobile.png) center center no-repeat transparent;
    width: 10px;
    height: 10px;
    background-size: 10px;
    position: absolute;
    right: 12px;
    top: 12px;
    cursor: pointer;
}

.tooltip {
    display: none;
    position: absolute;
    border: none;
    background-color: var(--color-bg-light);
    border-radius: 3px;
    padding: 8px 25px;
    color: var(--color-text);
    font-size: var(--font-size-xs);
    -webkit-box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.15);
    max-width: 200px;
    line-height: 18px;
}

.tooltip-benefit {
    display: none;
    position: absolute;
    border: none;
    background-color: #39526E;
    border-radius: 3px;
    padding: 8px 25px;
    color: var(--color-white);
    font-size: var(--font-size-xs);
    -webkit-box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.15);
    max-width: 200px;
    line-height: 18px;
}

input.error {
    border: 1px solid red !important;
}

.form-errors {
    font-size: var(--font-size-sm);
    color: red;
    margin: -30px 0 30px 0;
}

.img-teaser,
.img-logo-teaser,
.stellen-teaser {
    cursor: pointer;
    overflow: hidden;
}

.img-logo-teaser .content {
    padding: 15px 15px;
}

.img-teaser a:hover,
.img-logo-teaser a:hover,
.stellen-teaser a:hover {
    text-decoration: none;
}

.img-teaser .content p,
.stellen-teaser .content p,
.img-logo-teaser .content p {
    font-size: 1.125em;
    font-size: var(--font-size-md);
    line-height: 1.400em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
}

.img-teaser .content,
.stellen-teaser .content .img-logo-teaser .content {
    position: relative;
    padding: 15px 15px;
}

.referenzen .img-teaser .content {
    padding: 45px 30px;
}

.img-teaser .content:after,
.img-logo-teaser .content:after {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(100, 107, 114, 0);
    border-top-color: #092B50;
    border-width: 10px;
    margin-left: -10px;
    z-index: 500;
}

.img-teaser .cbg_bluewood.content:after,
.img-logo-teaser .cbg_bluewood.content:after {
    border-color: rgba(100, 107, 114, 0);
    border-top-color: var(--color-blue-deep);
}

.img-teaser .cbg_lynch.content:after,
.img-logo-teaser .cbg_lynch.content:after {
    border-color: rgba(100, 107, 114, 0);
    border-top-color: var(--color-mid);
}

.img-teaser .cbg_gullgray.content:after,
.img-logo-teaser .cbg_gullgray.content:after {
    border-color: rgba(100, 107, 114, 0);
    border-top-color: var(--color-grey-blue);
}

.unternehmen .content-slider-navigation {
    background: url('../img/slider-bg.png') 31px 47px no-repeat;
}

.unternehmen .content-slider,
.unternehmen .job-slider {
    margin-top: 20px;
    padding-right: 20px;
}

.img-overlay {
    background: rgba(0, 0, 0, 0.85);
}

.stellen-teaser .content {
    display: flex;
    flex-direction: row;
}

.stellen-teaser span.read-more:hover {
    text-decoration: underline;
}

.stellen-teaser:hover .content {
    background-color: var(--color-orange-dark) !important;
}

.stellen-teaser span.read-more {
    color: var(--color-white);
    background: url(../img/pfeil-weiss@2x.png) 92px 2px no-repeat;
    background-size: 36%;
    margin-top: 10px;
}

.stellen-teaser .content .flex-1 {
    flex: 1;
    text-align: center;
}

.stellen-teaser .content .flex-2 {
    flex: 2;
    margin: 8px 0 0 20px;
}

.stellen-teaser .content p {
    font-size: var(--font-size-base);
}

.benefit-wrapper {
    width: 100%;
    background: var(--color-bg-light);
    margin: 10px 0 0 0;
}

.benefit-wrapper.desktop-view {
    display: block;
}

.benefit-wrapper.mobile-view {
    display: none;
}

.benefit-nav ul {
    display: flex;
    flex-direction: row;
}

.benefit-nav ul li,
.benefit-mobile {
    float: left;
    background: var(--color-white);
    color: var(--color-orange);
    font-size: var(--font-size-sm);
    text-align: center;
    width: 100%;
    height: 105px;
    margin-right: 5px;
    cursor: pointer;
    padding-top: 75px;
    box-sizing: border-box;
    position: relative;
}

.benefit-nav ul li {
    background-size: 76px !important;
}

.benefit-nav ul li:hover,
.benefit-nav ul li.active,
.benefit-mobile:hover,
.benefit-mobile.active {
    color: var(--color-white);
}

.no-cursor {
    cursor: auto !important;
}

#benefit-1,
#benefit-1-m {
    background: url('../img/svg/icon-arbeitsplatz-aktiv.svg') center 8px var(--color-white) no-repeat;
}

#benefit-1:hover,
#benefit-1.active,
#benefit-1-m:hover,
#benefit-1-m.active {
    background: url('../img/svg/icon-arbeitsplatz.svg') center 8px var(--color-orange) no-repeat;
}

#benefit-2,
#benefit-2-m {
    background: url('../img/svg/icon-mobil.svg') center 8px var(--color-white) no-repeat;
}

#benefit-2:hover,
#benefit-2.active,
#benefit-2-m:hover,
#benefit-2-m.active {
    background: url('../img/svg/icon-mobil-aktiv.svg') center 8px var(--color-orange) no-repeat;
}

#benefit-3,
#benefit-3-m {
    background: url('../img/svg/icon-buch.svg') center 8px var(--color-white) no-repeat;
}

#benefit-3:hover,
#benefit-3.active,
#benefit-3-m:hover,
#benefit-3-m.active {
    background: url('../img/svg/icon-buch-aktiv.svg') center 8px var(--color-orange) no-repeat;
}

#benefit-4,
#benefit-4-m {
    background: url('../img/svg/icon-obst.svg') center 8px var(--color-white) no-repeat;
}

#benefit-4:hover,
#benefit-4.active,
#benefit-4-m:hover,
#benefit-4-m.active {
    background: url('../img/svg/icon-obst-aktiv.svg') center 8px var(--color-orange) no-repeat;
}

#benefit-5,
#benefit-5-m {
    background: url('../img/svg/icon-sonder.svg') center 8px var(--color-white) no-repeat;
}

#benefit-5:hover,
#benefit-5.active,
#benefit-5-m:hover,
#benefit-5-m.active {
    background: url('../img/svg/icon-sonder-aktiv.svg') center 8px var(--color-orange) no-repeat;
}

#benefit-6,
#benefit-6-m {
    margin-right: 0px;
    background: url('../img/svg/icon-event.svg') center 8px var(--color-white) no-repeat;
}

#benefit-6:hover,
#benefit-6.active,
#benefit-6-m:hover,
#benefit-6-m.active {
    background: url('../img/svg/icon-event-aktiv.svg') center 8px var(--color-orange) no-repeat;
}

.benefit-nav ul li:after,
.benefit-mobile:after {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(100, 107, 114, 0);
    border-top-color: var(--color-white);
    border-width: 10px;
    margin-left: -10px;
    z-index: 500;
}

.benefit-nav ul li:hover:after,
.benefit-nav ul li.active:after,
.benefit-mobile:hover:after,
.benefit-mobile.active:after {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(100, 107, 114, 0);
    border-top-color: var(--color-orange);
    border-width: 10px;
    margin-left: -10px;
    z-index: 500;
}

.benefit-content h2 {
    color: var(--color-text);
    font-size: 2.0em;
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
}

.benefit-content .left,
.benefit-content .right {
    float: none;
    width: 100%;
}

.benefit-content .right {
    margin-top: 40px;
}

.benefit-content .column {
    display: none;
    margin: 100px 0 140px 0;
    padding: 0 10%;
}

.benefit-content ul.sorted-list li {
    margin-left: 10px;
    margin-top: 10px;
}

.benefit-content .column.benefit-1 {
    display: block;
}

.benefit-container {
    padding: 62px 0 0 0;
}

.job-counter {
    font-size: 85px;
}

.jobs .job-counter {
    font-size: 1.0em;
}

.offer-counter {
    float: left;
    margin: 45px 0px 0px -302px;
    width: 251px;
}

.offer-counter .job-counter {
    font-size: var(--font-size-base);
}

.offers-3 {
    display: inline;
}

.offers-2,
.offers-1 {
    display: none;
}

.ki-teaser {
    display: flex;
    flex-direction: row;
    margin-top: 80px;
}

.ki-teaser video {
    width: 101%
}

.ki-teaser p.absatz {
    margin-bottom: 8px;
}

.ki-teaser .left-container {
    padding: 60px 50px 50px 70px;
    width: 240%;
}

.ki-teaser .mood-img {
    background: url(../img/mood-images/contr-header-erfolgskontrolle.webp) no-repeat center;
}

.utility-nav ul li a.ki-submenu {
    text-transform: uppercase;
    color: var(--color-orange);
}

.utility-nav ul li a.ki-submenu:hover {
    text-transform: uppercase;
    color: var(--color-orange-dark);
}

.ki-unterseite .container-01 .text-content {
    margin: 0 50px;
}

.ki-unterseite .container-02 .text-content {
    margin: 0 50px 0 0;
}

.container-02 .flex {
    flex-direction: row-reverse;
}

@media only screen and (max-width: 1000px) {
    .ki-unterseite .container-02 .text-content {
        margin: 0 50px;
    }
}

@media only screen and (max-width: 1400px) {
    .ki-teaser .left-container {
        padding: 60px 50px 50px 70px;
        width: 220%;
    }
    .ki-teaser video {
        width: 115%;
        height: 100%
    }
}

@media only screen and (max-width: 850px) {
    .container-02 .flex,
    .container-01 .flex {
        display: block;
    }
    .container-02 img,
    .container-01 img {
        width: 100%;
        margin-bottom: 20px;
    }
    .ki-unterseite .text-content {
        padding: 5%;
        margin: 0 !important;
    }
}

@media only screen and (max-width: 750px) {
    .ki-teaser {
        display: block;
    }
    .ki-teaser .left-container {
        box-sizing: border-box;
        width: 100%;
        padding: 5%
    }
    .ki-teaser .video-container {
        display: none;
    }
}

body.unterseite.ki-unterseite #submenu {
    display: none !important;
}

.img-teaser img {
    width: 100%;
    display: block;
    opacity: 1;
    transition: opacity 400ms ease-out;
}

.img-logo-teaser img {
    width: 100%;
    display: block;
}

.logo-carousel-landingpage div.item {
    padding: 0%;
}

a.read-more {
    text-decoration: none;
    display: inline-block;
    padding-right: 20px;
    background: url(../img/pfeil-orange.png) right no-repeat;
    font-size: var(--font-size-sm);
}

#site-id-21 .text-teaser a.read-more {
    background: url("../img/button-arrow.png") no-repeat 132px 3px;
    font-family: var(--font-base);
}

.interview-box {
    margin: 0 3% 3% 0;
    padding: 50px;
    box-sizing: border-box;
    min-height: 360px;
}

.interview-box.last {
    margin: 0 0 3% 0;
}

.interview-box h2 {
    font-size: var(--font-size-md);
    line-height: 24px;
    margin: 0 0 30px 0;
}

.interview-box .left {
    float: left;
}

.interview-box .left img {
    width: 105px;
}

.interview-box .content-box .left p {
    font-size: 11px;
    line-height: 19px;
}

.interview-box .content-box .left .bold {
    font-size: 11px;
    line-height: 19px;
}

.interview-box .left.margin {
    margin: 0 0 0 24px;
    max-width: 150px;
}


@media (max-width: 600px) {
    .interview-box {
        margin: 0 0 3% 0 !important;
    }
}

@media (max-width: 960px) {
    .col-6.interview-container {
        max-width: 50%;
    }
}

@media (max-width: 810px) {
    .col-6.interview-container {
        width: 100% !important;
        max-width: 100%;
    }
    .interview-box {
        margin: 0 0 3% 0;
    }
    .interview-box .left.margin {
        margin: 0 0 0 24px;
        max-width: 60%;
    }
}

.customer-info .left {
    float: left;
}

.customer-info .left img {
    max-width: 105px;
}

.customer-info .right {
    float: right;
}

.customer-info p {
    font-size: 11px;
    line-height: 19px;
    color: #535353;
}

.customer-info .bold {
    font-size: 11px;
    line-height: 19px;
    color: #535353;
    margin-bottom: 6px;
    display: inline-block;
}

.customer-info .left.margin {
    margin: 0 0 0 24px;
    max-width: 180px;
}

@media (max-width: 400px) {
    .customer-info .left.margin {
        margin: 0 0 0 24px;
        max-width: 127px;
    }
}

@media (max-width: 450px) {
    .interview-box .left {
        float: none;
    }
    .interview-box .left.margin {
        margin: 20px 0 0 0px;
        max-width: 100%;
    }
}

.unternehmen-wrapper {
    margin-top: 100px;
    margin-bottom: 50px;
    padding: 52px 32px 32px 52px;
    box-sizing: border-box;
}

.text-center {
    text-align: center;
}

.unternehmen-wrapper h5 {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    margin-bottom: 20px;
}

@media (max-width: 960px) {
    .customer-info {
        width: 100% !important;
        padding: 32px 48px 32px 32px;
        margin: -20px 0 -60px 0 !important;
    }
    .unternehmen-wrapper {
        margin-top: 50px;
    }
}

@media (max-width: 600px) {
    .customer-info {
        padding: 32px 5% 5% 5%;
    }
    .unternehmen-wrapper {
        padding: 32px 5% 5% 5%;
        margin-top: 20px;
    }
}

.flex {
    display: flex;
}

.justify-content-center {
    justify-content: center;
}

.testimonial-wrapper a {
    color: inherit;
    font-weight: inherit;
    font-size: inherit;
    font-family: var(--font-base);
}

.testimonial-wrapper img {
    max-width: 105px;
}

.testimonial-wrapper a:hover {
    text-decoration: none;
}

.testimonial-wrapper .customer-info .bold {
    font-family: var(--font-base);
    font-weight: bold;
    margin: 20px 0 0 0;
}

.testimonial-wrapper .customer-info h2 {
    font-size: var(--font-size-3xl);
    font-family: var(--font-base);
    margin: 0 0 80px 0;
}

.unternehmen-wrapper .customer-info {
    padding: 0;
}

@media (max-width: 600px) {
    .unternehmen-wrapper.margin-bottom {
        margin-bottom: 130px;
    }
}

.managment-teaser-wrapper .left {
    float: left;
    max-width: 59.375%;
    margin: 0 0 0 33px;
}

.managment-teaser-wrapper .right {
    float: right;
    max-width: 40.625%;
    text-align: right;
    padding-right: 2.564102564102564%;
}

.managment-teaser-wrapper .right img {
    width: 100%;
}

.managment-teaser-wrapper h1,
.managment-teaser-wrapper h2,
.managment-teaser-wrapper h3,
.managment-teaser-wrapper h4,
.managment-teaser-wrapper h5 {
    font-size: 2.0em;
    margin: 10px 0 25px 0px;
    line-height: 1.225em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
}

.managment-teaser-wrapper h2 a {
    font-size: var(--font-size-3xl);
    line-height: 38px;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    color: var(--color-text);
    background: none;
}

h2 a {
    color: var(--color-text);
    font-weight: normal;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    font-size: var(--font-size-3xl);
}

.boilerplate h4 a,
.boilerplate h4.ab-headline {
    color: var(--color-text);
    text-align: center;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: var(--font-size-2xl);
    line-height: 40px; /* 137.5% */
}

.managment-teaser-wrapper h2 a:hover,
h2 a:hover,
.boilerplate h4 a:hover {
    text-decoration: none;
}

.managment-teaser-wrapper a {
    text-decoration: none;
    display: inline-block;
    padding-right: 15px;
    background: url(../img/pfeil-orange.png) right no-repeat;
    font-size: var(--font-size-sm);
}

.managment-teaser-wrapper .img-overlay a {
    display: block;
    padding-right: 0;
    background-image: none;
}

.wrapper.managment-teaser-wrapper {
    margin-bottom: 90px;
}

ul.sorted-list {
    list-style-type: none;
}

#site-id-12 ul.sorted-list {
    padding: 15px 30px 40px 30px;
    margin: -60px 0 130px 0;
}

ul.sorted-list li:before {
    color: var(--color-text);
    font-size: 39px;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    content: "\22c5" " ";
    position: absolute;
    height: 2em;
    width: 2em;
    line-height: 52px;
    text-align: center;
    left: -1em;
    margin-top: -0.4em;
}

ul.sorted-list li {
    line-height: 24px;
    font-size: var(--font-size-sm);
    list-style-position: outside;
    position: relative;
    display: block;
    text-decoration: none;
    padding: 0px 0px 0px 20px;
    margin-left: 20px;
}

.trainingsprodukt-vorteile ul.sorted-list li {
    margin-left: 0;
}

.themen-formate-wrapper {
    background: url('../img/deco-themen-formate.jpg') no-repeat center 0%;
    height: 737px;
    margin-top: 50px;
    margin-bottom: 130px;
}

.themen-formate-wrapper .wrapper {
    position: relative;
}

.themen-formate-wrapper ul.sorted-list li:before,
.benefit-content ul.sorted-list li:before {
    color: var(--color-text);
    font-size: 39px;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    content: url(../img/vorteile-check.png);
    position: absolute;
    height: 2em;
    width: 2em;
    line-height: 45px;
    text-align: center;
    left: -1em;
    margin-top: -0.4em;
}

.benefit-content ul.sorted-list li {
    color: var(--color-blue-deep);
}

.themen-formate-wrapper ul.sorted-list li {
    color: var(--color-text);
    margin: 10px 0px 10px 10px;
}

.themen-box,
.formate-box {
    position: absolute;
    background: var(--color-bg-light);
}

.themen-box {
    left: 68px;
    top: 48px;
}

.formate-box {
    left: 484px;
    top: 370px;
}

.themen-box h3,
.formate-box h3 {
    color: var(--color-text);
    font-size: var(--font-size-base);
    margin-bottom: 25px;
}

section.mood-img {
    width: 100%;
    height: 285px;
    overflow: hidden;
    text-align: center;
}

section.mood-img img {
    width: 100%;
    margin-top: -310px;
}

#site-id-6 section.mood-img img {
    width: 100%;
    margin-top: -30px;
}

section.mood-img.software-service-img img {
    margin: 0;
    width: auto;
}

#site-id-5 section.mood-img img {
    margin-top: -120px;
}

#site-id-2 section.mood-img img {
    margin-top: -220px;
}

section.map {
    width: 100%;
    height: 685px;
    overflow: hidden;
}

.logo {
    display: flex;
    width: 136px;
    height: 34px;
    padding: 0.764px 0 0.765px 0;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

.logo img {
    width: 100%;
}

header.menu {
    height: 95px;
    transition: var(--transition-base);
    display:flex;
    position: relative;
    max-width: 1251px;
    align-items: center;
    justify-content: space-between;
    margin:0 auto;
    padding:0 2%;
}

#mobile-menu {
    display: none;
    width: 100%;
}

#mobile-menu nav ul li {
    background-color: var(--color-bg-light) !important;
}

#mobile-menu nav ul li ul {
    display: none;
}

#mobile-menu nav ul li a {
    color: var(--color-grey-text);
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    background: url(../img/mobile-arrow.png) no-repeat right 20px;
    background-size: 9px;
    font-size: var(--font-size-sm);
    padding: 15px 0px 15px 0px;
    margin: 0 20px 0 20px;
    display: block;
    border-bottom: 1px solid #ccc;
    transition: var(--transition-base);
}

#mobile-menu nav ul li.mobile-id-6 a {
    background: none;
}

#mobile-menu nav ul li a.borderTop {
    border-top: 1px solid #ccc;
}

#mobile-menu nav ul li a.active {
    color: var(--color-black);
}

#mobile-menu nav .language-menu ul li a {
    display: inline;
    border: none;
    margin: 0 8px 0 20px;
    color: #727272;
}

#mobile-menu nav .language-menu ul li a:hover {
    color: var(--color-black);
}

#mobile-menu nav .language-menu ul li a.active {
    color: var(--color-black);
}

#mobile-menu nav .language-menu .trenner {
    font-size: var(--font-size-sm);
    color: var(--color-black);
}

.testimonial p {
    text-align: left !important;
}

#mobile-menu nav .mobile-id-3 .submenu li,
#mobile-menu nav .mobile-id-4 .submenu li {
    padding:0 24px;
}

#mobile-menu nav .mobile-id-3 .submenu li a,
#mobile-menu nav .mobile-id-4 .submenu li a {
    border:none;
    color: var(--color-text);
    font-family: var(--font-base); font-weight: 500;
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: 20px; /* 125% */
    margin:0;
    padding:22px 0 0px 0;
}

#mobile-menu nav .mobile-id-3 .submenu li .link-text,
#mobile-menu nav .mobile-id-4 .submenu li .link-text {
    display:block;
    margin-bottom: 12px;
}

#mobile-menu nav .mobile-id-4 .submenu li:last-child p {
    padding-bottom:20px
}

#mobile-menu nav .mobile-id-3 .submenu li p,
#mobile-menu nav .mobile-id-4 .submenu li p {
    color: #595959;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 20px; /* 142.857% */
}

.utility-nav .trenner {
    font-size: var(--font-size-sm);
    color: var(--color-black);
    margin: 0 6px 0 6px;
    font-size: 10px;
}

.utility-nav .active {
    color: var(--color-black);
}

#mobile-menu nav .language-menu ul li a.margin {
    margin: 0 8px 0 8px;
}

#mobile-menu nav .language-menu ul li {
    padding: 15px 0px 15px 0px;
}

link_bordertp {
    border-top: 1px solid #ccc;
    background: var(--color-black);
}

.desktopnavi_backgroundzipfel {
    background: url(../img/menu-hover.png) no-repeat center bottom;
}

.mobilenav-bgchange {
    background: url(../img/mobile-arrow2.png) no-repeat right 20px / 9px auto !important;
}

#mobile-menu nav ul.submenu li a,
#mobile-menu nav ul li.last-menu a {
    background-image: none !important;
}

.kein-dropdown a,
.kein-dropdown {
    background-image: none !important;
}

#mobile-menu nav ul .first-link.active {
    background: url(../img/mobile-arrow2.png) no-repeat right 20px;
    background-size: 9px;
}

#mobile-menu nav ul li a:hover {
    color: var(--color-black);
    transition: var(--transition-base);
}

#mobile-menu nav ul.submenu li a {
    margin: 0 20px 0 40px;
}

#mobile-menu nav ul.submenu li:last-child a {
    border: none;
}

#mobile-menu nav ul li a:hover {
    text-decoration: none;
}

nav#desktop-menu {
    display:flex;
}

nav#desktop-menu ul {
    display:flex;
    gap: 30px;
}

.utility-nav li {
    float: left;
    list-style: none;
    padding: 0;
    margin-left: 20px;
    transition: var(--transition-fast);
}

nav#desktop-menu ul li.first-level {
    height: 95px;
    display:flex;
    align-items: center;
}

#desktop-menu ul li a:hover {
    color: var(--color-black);
}

.utility-nav nav ul li a:hover {
    color: var(--color-black);
}

ul.submenu li {
    float: none;
}

nav#desktop-menu ul li a.first-link {
    color: var(--color-grey-text);
    transition: var(--transition-fast);
}

nav#desktop-menu ul li a.first-link.active {
    color: var(--color-black);
    background: url(../img/menu-hover.png) no-repeat center bottom;
}

nav#desktop-menu ul li:hover {
    background: url(../img/menu-hover.png) no-repeat center bottom;
}

nav#desktop-menu ul li a {
    color: var(--color-grey-text);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: 0.875em;
    text-decoration: none;
}

nav .pipe {
    display:flex;
    width: 1px;
    align-items: center;
    height: 95px;
    padding:0 15px;
}

nav .pipe span {
    height: 48px;
    width: 1px;
    background: #E4E1E1;
}

nav#desktop-menu ul li span.read-more {
    text-decoration: none;
    display: inline-block;
    padding-right: 20px;
    background: url(../img/pfeil-orange.png) right no-repeat;
    font-size: var(--font-size-sm);
    color:var(--color-orange);
    height:auto;
    font-family: var(--font-base); font-weight: var(--font-weight-bold);
    margin-top: 10px;
}

#mobile-menu .read-more {
    text-decoration: none;
    padding-right: 20px;
    background: url(../img/pfeil-orange.png) right no-repeat;
    font-size: var(--font-size-sm);
    color:var(--color-orange);
    height:auto;
    font-family: var(--font-base); font-weight: var(--font-weight-bold);
}

nav#desktop-menu ul li:hover a.first-link {
    color: var(--color-black);
    background: url(../img/menu-hover.png) no-repeat center bottom;
}

nav#desktop-menu ul li .submenu a:hover {
    color: var(--color-black);
}

nav#desktop-menu ul li .submenu a.active {
    color: var(--color-black);
}

nav#desktop-menu ul li:hover .submenu a,
nav#desktop-menu ul li .submenu {
    background: var(--color-bg-light);
}

nav#desktop-menu ul li .submenu {
    min-width: 602px;
    z-index: 2;
    transition: visibility 0s, opacity 0.5s linear;
}

nav#desktop-menu .submenu {
    display: none;
    position: absolute;
    width: auto;
    z-index: 1;
    left: 320px;
}

nav#desktop-menu ul li .submenu.active {
    display: block;
}

nav#desktop-menu .active+.submenu {
    display: block;
}

nav#desktop-menu .submenu li {
    float: left;
}

.desktop-hidden {
    display: none !important;
}

nav#desktop-menu .submenu li a {
    transition: var(--transition-fast);
    color: var(--color-grey-text);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: 13px;
    text-decoration: none;
    float: left;
    margin-top: 15px;
    margin-right: 0px;
    height: 29px;
}

nav#desktop-menu .submenu li a:hover {
    color: var(--color-black);
}

body.unterseite #submenu {
    display: block !important;
}

.request-box {
    height: 30px;
    width: 187px;
    position: absolute;
    top: -5px;
    right: -81%;
    transition: all ease 0.5s;
}

.request-box .letter {
    background: url('../img/letter.png') no-repeat;
    display: block;
    width: 33px;
    height: 13px;
    position: absolute;
    margin: 3px 5px;
    left: -40px;
    opacity: 0;
    transition: all ease-in 0.5s;
}

.letter.animation {
    left: 0px;
    opacity: 1;
}

.letter.animation1 {
    opacity: 1;
}

.letter.animation2 {
    opacity: 0.5;
}

.request-box .box-btn {}

.request-box .box-content {
    padding: 0 17px;
    height: 0px;
    width: 153px;
    overflow: hidden;
    transition: all ease 0.5s;
    font-size: var(--font-size-xs);
    line-height: 16px;
}

.utility-nav .request-box a {
    font-size: var(--font-size-xs);
    display: inline-block;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    background: url(../img/sprite-links.png) right -24px no-repeat;
    color: var(--color-white);
    text-transform: none;
    padding-right: 20px;
    margin: 8px 0px;
}

.utility-nav .request-box a.anfrage-btn {
    font-size: var(--font-size-base);
    display: inline-block;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    background: none;
    color: var(--color-white);
    text-transform: none;
    padding-right: 20px;
    margin: 6px 0px;
}

.utility-nav .request-box a.anfrage-btn:hover {
    text-decoration: none;
}

.utility-nav .request-box ul li {
    margin: 0;
}

.request-box .box-content p {
    padding: 10px 0 11px 0;
    font-size: var(--font-size-xs);
}

.request-box div.request-open {
    height: 135px;
}

.request-box span {
    font-size: 0.688em;
    text-transform: uppercase;
    padding: 3px 0 0 51px;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    background: url(../img/request-bg.png) -3px -5px no-repeat;
    display: block;
    width: 100%;
    box-sizing: border-box;
    height: 25px;
    cursor: pointer;
    transition: padding 0.2s ease-in-out;
    background-size: 190px;
}

.request-open-bgchange {
    background: url(../img/request-bg-open.png) -3px -5px no-repeat !important;
    background-size: 190px;
}

.close-btn.request-open-bgchange {
    padding: 3px 0 0 18px;
    background: url(../img/btn-close.png) 164px 4px no-repeat !important;
    background-size: 12px !important;
}

.request-box .tablet span,
.request-box .mobile span {
    display: none;
}

.utility-nav nav {
    float: right;
    margin: 5px 205px 0 0;
    position: relative;
}

.utility-nav ul li a {
    color: #727272;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: 0.688em;
    text-decoration: none;
    text-transform: uppercase;
    color: var(--color-grey-text);
}

#submenu {
    width: 100%;
    height: 44px;
    position: absolute;
    background: var(--color-bg-light);
    display: none;
    z-index: 1;
}

#submenu.active {
    display: block;
}

#submenu.show,
#submenu.show.active {
    visibility: visible;
    opacity: 1;
    display: block;
}

.hamburger {
    width: 40px;
    height: 40px;
    border: none;
    outline: none;
    background: none;
    float: right;
    display: none;
    padding: 0 5%;
    margin-top: 20px;
    cursor: pointer;
}

.hamburger span {
    background: var(--color-grey-text);
    display: block;
    width: 19px;
    height: 2px;
    position: absolute;
}

.hamburger span.span-1 {
    top: 35px;
}

.hamburger span.span-3 {
    top: 45px;
}

li .first-level span {
    float: left;
}

nav.sidebar-menu {
    padding: 15px 5% 0 5%;
}

nav.sidebar-menu ul li a {
    color: var(--color-grey-text);
    font-size: var(--font-size-xs);
    padding: 17px 0 15px 0;
    border-bottom: 1px solid #d7d7d7;
    display: block;
}

nav.sidebar-menu ul li.last a {
    border-top: 1px solid #d7d7d7;
}

nav.sidebar-menu ul li a:hover {
    text-decoration: none;
    color: var(--color-black);
}

nav.sidebar-menu ul li ul.sidebar-menu-submenu li.has-submenu ul li a {
    padding-left: 30px;
}

.has-submenu.open {
    border-bottom: 1px solid #d7d7d7;
}

nav.sidebar-menu ul li ul li a {
    border: none;
    padding: 10px 0;
}

nav.sidebar-menu ul li ul li a.active,
nav.sidebar-menu ul li a.active {
    color: var(--color-black);
}

nav.sidebar-menu .submenu {
    margin: 10px 0 10px 0;
    display: none;
}

nav.sidebar-menu .has-submenu.open .submenu {
    display: block;
}

nav.sidebar-menu ul li.has-submenu a {
    background: url(../img/mobile-arrow.png) no-repeat 95% 20px;
    background-size: 9px;
}

nav.sidebar-menu.tablet ul li.has-submenu a {
    background: none;
}

nav.sidebar-menu ul li.has-submenu ul .submenu li a {
    background: none;
    padding-left: 20px;
}

nav.sidebar-menu.tablet {
    display: none;
}

.drilldown {
    overflow: hidden;
}

.benifit-container {
    box-sizing: border-box;
    padding: 40px 0%;
}

.benifit-container h2 {
    font-size: 20px;
    margin-bottom: 20px;
}

.benifit-container.left-right .right {
    float: right;
    width: 70%;
}

.benifit-container.left-right .left {
    float: left;
    width: 25%;
}

.benifit-container.right-left .right {
    float: right;
    width: 25%;
}

.benifit-container.right-left .left {
    float: left;
    width: 70%;
}

.learning-container {
    width: 100%;
    margin-top: 30px;
}

.learning-container p {
    line-height: 20px;
}

.learning-container table tr {
    border-top: 1px solid #cdd3da;
}

.learning-container table td img {
    width: 40px;
}

.learning-container table td {
    height: 50px;
    padding: 10px 0;
    vertical-align: middle;
}

.learning-container table td:first-child {
    padding-left: 20px;
}

.learning-container table td:last-child {
    padding-left: 40px;
}

.modul h2 {
    font-size: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-bottom: 16px;
}

.modul {
    border-top: 1px solid #d7d7d7;
    width: 100%;
    box-sizing: border-box;
    padding: 5% 4%;
}

.modul.first {
    margin: 40px 0 0 0;
}

.modul .left {
    float: left;
    width: 14%;
    padding-top: 12px;
}

.modul .right {
    width: 70%;
    float: right;
}

.responsive-teaser.wrapper {
    margin-top: 50px;
    margin-bottom: 150px;
}

.responsive-teaser .column {
    padding: 5%;
}

.responsive-teaser .left {
    float: left;
    width: 25%;
}

.responsive-teaser .right {
    float: right;
    width: 65%;
}

.testimonials-titel {
    font-size: 13px;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    color: var(--color-dark);
    margin-top: -11px;
    margin-bottom: -11px;
    margin-left: 30px;
}

.big-slider .testimonials-titel {
    margin-top: -11px;
    margin-bottom: -11px;
}

.testimonials-titel.home {
    margin-top: -31px;
    margin-bottom: 10px;
}

.academymaker .content-slider {
    min-height: 280px;
}

.academymaker-logo {
    width: 19%;
    position: absolute;
    top: 25px;
    left: 32px;
}

.academymaker-logo img {
    margin: 0 !important;
}

#site-id-19 #column-7 {
    margin-top: -109px;
}

#site-id-19 .content h1 {
    margin-bottom: 35px;
}

#site-id-19 #column-9 {
    margin-top: -110px;
}

.academymaker h2 {
    font-size: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-bottom: 16px;
    line-height: 1.5em;
}

.academymaker hr {
    margin-top: -47px;
}

.academymaker .lms img {
    max-width: 100%;
    margin: 30px 0 20px 0;
    image-rendering: -webkit-optimize-contrast;
    width: 100%;
}

.academymaker .tab-reiter ul {
    margin: 0;
    width: 450px;
}

.academymaker-teaser img {
    width: 100%;
}

.tab-slider .tech-table table tbody tr th,
.tab-slider .tech-table table tbody tr td {
    padding: 10px 15px;
}

.academymaker .tab-slider .tab-inhalt p {
    padding: 0;
}

.academymaker .tab-inhalt div,
.academymaker #tab-2.tab-inhalt div {
    margin: 0;
    display: block;
    width: 100%;
    height: auto;
    float: none;
}

.tab-slider .tech-table table {
    border-spacing: 5px 0px;
    border-collapse: separate;
    background: var(--color-bg-light);
}

.tab-slider .tech-table table td,
.tab-slider .tech-table table th {
    border-bottom: 1px solid #d7d7d7;
    background: var(--color-white);
}

.academymaker .tab-slider {
    padding: 4%;
}

.border-top {
    border-top: 1px solid #d7d7d7;
}

.border-top-none {
    border-top: none !important;
}

.academymaker .tab-slider .cbg_tableblue {
    background-color: #e4ebf2 !important;
}

.tab-slider #table-2.tech-table table tbody tr:nth-child(odd) {
    background-color: var(--color-white);
}

.tab-reiter {
    margin: 0 auto;
}

.tab-reiter ul {
    margin: 0 14.27083333333333%;
}

.tab-reiter ul li {
    float: left;
    cursor: pointer;
    width: 32.916667%;
}

.tabs.beratung .tab-reiter ul li {
    width: 33%;
}

.tabs.beratung .tab-reiter ul {
    margin: 0 5%;
}

.tab-reiter ul li a {
    text-align: center;
    color: var(--color-orange);
    padding: 17px 0 15px 0;
    text-decoration: none;
    display: block;
    font-size: var(--font-size-base);
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
}

.tab-reiter ul li:hover {
    background: var(--color-bg-light);
}

.tab-reiter ul li.active {
    background: var(--color-bg-light) !important;
}

.tab-reiter ul li.active a {
    color: var(--color-text);
}

.tab-active {
    background-color: var(--color-bg-light);
    color: var(--color-text);
}

.tab-slider {
    padding-top: 90px;
    padding-bottom: 90px;
}

.tab-inhalt div {
    margin-right: 0.4%;
    background-color: var(--color-white);
    width: 25.58333333333333%;
    margin-top: 10px;
    display: inline-table;
    height: 361px;
}

.academymaker .text {
    max-width: 70%;
}

.academymaker .infobox .text {
    max-width:none;
}

.academymaker .text h3 {
    font-family: var(--font-base);
    font-weight: 550;
    margin: 0 0 18px;
    font-size: var(--font-size-xl);
    line-height: 32px;
    color: var(--color-text);
}

.academymaker .text p {
    font-size: var(--font-size-base);
    margin: 0 0 50px 0;
    color: var(--color-text);
    line-height: 27px;
}

p.no-margin {
    margin:0;
}

.academymaker .infobox {
    border-radius: var(--radius-md);
    border: 1.5px solid #EDEDED;
    background: var(--color-white);
    padding:30px;
    display:flex;
    gap: 96px;
    margin: 96px 0;
    align-items: center;
}

.academymaker .infobox .text.flex {
    gap:30px;
    align-items: center;
}

.academymaker .infobox .text svg {
    width:100px;
}

.vorstand-tab div {
    height: 337px;
}

#tab-2.tab-inhalt div,
#tab-3.tab-inhalt div {
    margin-right: 0.4%;
    background-color: var(--color-white);
    width: 24.58333333333333%;
    margin-top: 10px;
    display: block;
    float: left;
}

.tab-inhalt p {
    padding: 31px 16px 0 16px;
}

.tab-inhalt p.vorstand-name {
    padding: 21px 16px 0 16px;
}

.tab-inhalt .xinglink {
    padding: 18px 16px 20px 16px;
}

.tab-inhalt div .vorstand-bild {
    width: 100%;
}

.tab-inhalt div.last {
    margin: 0;
    margin-top: 10px;
}

.tab-inhalt {
    display: none;
    text-align: center;
}

.tab-inhalt.active {
    display: block;
}

.tab-inhalt-beratung {
    display: none;
}

.tab-inhalt-beratung img,
.tab-inhalt-beratung svg {
    width: 30%;
    float: left;
}

.tab-inhalt-beratung svg.svg-beratung {
    width: 19%;
    margin-left: 64px;
    margin-top: 18px;
}

.tab-inhalt-beratung#tab-2 img {
    width: 30%;
}

.tab-inhalt-beratung .text-content {
    width: 60%;
    margin-left: 10%;
    float: right;
}

.tab-inhalt-beratung.active {
    display: block;
}

.tabs.beratung,
.accordion.beratung {
    margin-bottom: 80px;
    margin-top: 40px;
}

.tab-inhalt-beratung .text-content h2 {
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    font-size: 2.0em;
    line-height: 1.2em;
    margin: 0 0 36px 0;
}

.semibold,
strong {
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
}

.mood-img.index {
    background: url(../img/mood-images/index-header.webp) no-repeat center;
}

.mood-img video,
.mood-img {
    background-color: var(--color-dark-hover);
}

@media only screen and (max-width: 1250px) {
    .unternehmen .mood-img {
        background: url(../img/mood-images/unter-index.webp) no-repeat center 10%;
    }
}

.suche .mood-img {
    background: url(../img/mood-images/index-header.webp) no-repeat center;
}

#site-id-1 .mood-img {
    background: url(../img/mood-images/unter-header-mission.webp) no-repeat center;
}

.lp-glossar .mood-img {
    background: url(../img/mood-images/glossar-index.webp) no-repeat center;
}

#site-id-2 .mood-img {
    background: url(../img/mood-images/unter-header-management.webp) no-repeat center;
}

#site-id-3 .mood-img {
    background: url(../img/mood-images/unter-header-kunden.webp) no-repeat center;
}

#site-id-4 .mood-img {
    background: url(../img/mood-images/unter-header-factsheet.webp) no-repeat center;
}

#site-id-5 .mood-img {
    background: url(../img/mood-images/unter-header-verantwortung.webp) no-repeat center;
}

#site-id-6 .mood-img {
    background: url(../img/mood-images/unter-header-karriere.webp) no-repeat center;
}

#site-id-6 .mood-img.stellenanzeige {
    background: url(../img/mood-images/unter-header-stellenangebot.webp) no-repeat center;
}

#site-id-6 .mood-img.stellenanzeige_bb {
    background: url(../img/mood-images/unter-header-stellenangebot-bb.webp) no-repeat center;
}

@media only screen and (max-width: 1250px) {
    .software-service-img {
        background: url(../img/mood-images/sose-index.webp) no-repeat center;
    }
}

#site-id-14 .mood-img {
    background: url(../img/mood-images/sose-header-individuel.webp) no-repeat center;
}

#site-id-15 .mood-img,
.lp.software .mood-img {
    background: url(../img/mood-images/sose-header-open-source.webp) no-repeat center;
}

#site-id-16 .mood-img {
    background: url(../img/mood-images/sose-header-drittsysteme.webp) no-repeat center;
}

#site-id-17 .mood-img {
    background: url(../img/mood-images/sose-header-hosting.webp) no-repeat center;
}

#site-id-17-5 .mood-img {
    background: url(../img/mood-images/sose-header-hosting-satellit.webp) no-repeat center;
}

#site-id-18 .mood-img {
    background: url(../img/mood-images/sose-header-support.webp) no-repeat center;
}

#site-id-19 .mood-img {
    background: url(../img/mood-images/sose-header-academymaker.webp) no-repeat center;
}

.datenschutz .mood-img {
    background: url(../img/mood-images/sose-datenschutz.webp) no-repeat center;
}

@media only screen and (max-width: 1250px) {
    .training .mood-img {
        background: url(../img/mood-images/contr-index.webp) no-repeat center;
    }
}

#site-id-0 .mood-img {
    background: url(../img/mood-images/contr-header-beratung.webp) no-repeat center;
}

#site-id-7 .mood-img {
    background: url(../img/mood-images/contr-header-tech-beratung.webp) no-repeat center;
}

#site-id-8 .mood-img {
    background: url(../img/mood-images/contr-header-str-beratung.webp) no-repeat center;
}

#site-id-9 .mood-img {
    background: url(../img/mood-images/contr-header-learning.webp) no-repeat center;
}

.lp.training .mood-img {
    background: url(../img/mood-images/contr-header-learning.webp) no-repeat center;
}

#site-id-10 .mood-img {
    background: url(../img/mood-images/contr-header-roi.webp) no-repeat center;
}

#site-id-11 .mood-img {
    background: url(../img/mood-images/contr-header-kommunikation.webp) no-repeat center;
}

#site-id-12 .mood-img {
    background: url(../img/mood-images/contr-header-erfolgskontrolle.webp) no-repeat center;
}

#site-id-13 .mood-img {
    background: url(../img/mood-images/contr-header-schulungen.webp) no-repeat center;
}

.img-teaser img.mobile-gif {
    display: none;
}

@media only screen and (max-width: 1250px) {
    .mood-img.design-content-img {
        background: url(../img/mood-images/deco-index.webp) no-repeat center 10%;
    }
}

#site-id-20 .mood-img {
    background: url(../img/mood-images/deco-header-web-design.webp) no-repeat center 0%;
}

#site-id-21 .mood-img {
    background: url(../img/mood-images/deco-header-themen.webp) no-repeat center 0%;
}

#site-id-22 .mood-img {
    background: url(../img/mood-images/deco-header-trainingsprodukte.webp) no-repeat center 0%;
}

#site-id-22 .mood-img.agg {
    background: url(../img/mood-images/deco-header-agg.webp) no-repeat center 0%;
}

#site-id-22 .mood-img.arbeitsschutz {
    background: url(../img/mood-images/deco-header-arbeitsschutz.webp) no-repeat center 0%;
}

#site-id-22 .mood-img.compliance {
    background: url(../img/mood-images/deco-header-compliance.webp) no-repeat center 0%;
}

#site-id-22 .mood-img.datenschutz {
    background: url(../img/mood-images/deco-header-datenschutz.webp) no-repeat center 0%;
}

#site-id-22 .mood-img.fit {
    background: url(../img/mood-images/deco-header-fit.webp) no-repeat center 0%;
}

#site-id-22 .mood-img.haccp {
    background: url(../img/mood-images/deco-header-haccp.webp) no-repeat center 0%;
}

.trainingsprodukte.lp .mood-img {
    background: url(../img/mood-images/deco-header-trainingsprodukte.webp) no-repeat center 0%;
}

#site-id-23 .mood-img {
    background: url(../img/mood-images/deco-header-content.webp) no-repeat center 0%;
}

#site-id-26 .mood-img,
.marketing .mood-img {
    background: url(../img/mood-images/deco-header-marketing.webp) no-repeat center 0%;
}

.html-5-trainings {
    padding: 20px 0 70px 0;
}

.html-5-trainings .flex-item {
    flex: 1 1 0px;
    flex-wrap: wrap;
}

.html-5-trainings.trainingsprodukt-vorteile .flex-item {
    flex: 1 1 0px;
}

.html-5-trainings .flex-item.padding-25 {
    padding: 33px;
}

.html-5-trainings .margin-right {
    margin-right: 5px;
}

.html-5-trainings .margin-left {
    margin-left: 5px;
}

.html-5-trainings .flex-item .img-box {
    width: 8%;
    margin: 0 auto;
    padding: 0 0 20px 0;
}

.html-5-trainings .flex-item h2 {
    font-family: var(--font-base);
    font-size: var(--font-size-lg);
    margin-bottom: 10px;
    text-align: center;
}

.html-5-trainings .flex-item p {
    text-align: center;
}

.flex-grow-1 {
    flex: 1 1 0px !important;
}

.flex-grow-2 {
    flex: 2 1 0px !important;
}

.trainings-wrapper .wrapper {
    padding: 90px 5%;
    margin-bottom: 20px;
}

.trainings-wrapper.laptop .wrapper {
    padding: 0px 5% 90px 5%;
    margin-bottom: 0;
}

.html-5-trainings-slider-container {
    margin: 20px;
}

.html-5-trainings-slider-container .owl-next {
    width: 39px;
    height: 38px;
    display: block;
    background: url(../img/sprite-slider-nav.png) -25px 14px no-repeat var(--color-dark);
    background-size: 125%;
    color: white;
    float: left;
    cursor: pointer;
    transition: var(--transition-bg);
    text-indent: -9999px;
    position: absolute;
    top: 44%;
    right: -20px;
}

.html-5-trainings-slider-container .owl-prev {
    width: 39px;
    height: 38px;
    display: block;
    background: url('../img/sprite-slider-nav.png') 16px 14px no-repeat var(--color-dark);
    background-size: 125%;
    color: white;
    float: left;
    cursor: pointer;
    background-color 0.2s ease-in-out;
    text-indent: -9999px;
    position: absolute;
    top: 44%;
    left: -20px;
}

.html-5-trainings-slider-container .flex {
    padding: 8%;
    max-height: 230px;
    min-height: 230px;
    align-items: center;
    justify-content: center;
}

.html-5-trainings-slider-container .flex-item {
    flex: 1 1 0px;
    margin: 0 20px;
}

.html-5-trainings-slider-container .flex-item img {
    margin: 0 auto;
}

.html-5-trainings-slider-container .flex-item h2 {
    text-align: left;
    font-size: var(--font-size-lg);
    margin: 0 0 30px 0;
}

.html-5-trainings-slider-container video {
    width: 100%;
    margin: 0 auto;
}

.html-5-trainings-slider-container .owl-next:hover,
.html-5-trainings-slider-container .owl-prev:hover {
    background-color: var(--color-dark-hover);
}

.trainings-wrapper h2 {
    font-size: var(--font-size-3xl);
    font-family: var(--font-base);
    font-weight: var(--font-weight-normal);
    text-align: center;
    margin: 0 0 50px 0;
}

.html-5-trainings-slider-container .owl-controls .owl-dots {
    text-align: center;
    background: transparent;
    margin: 21px 0 0 0;
}

.html-5-trainings-slider-container .owl-controls .owl-dots .owl-dot {
    display: inline-block;
}

.html-5-trainings-slider-container .owl-controls .owl-dots .owl-dot span {
    background: var(--color-dark);
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 10px;
    margin: 10px;
}

.html-5-trainings-slider-container .owl-controls .owl-dots .owl-dot.active span {
    background: transparent;
    border: 2px solid var(--color-dark);
    width: 8px;
    height: 8px;
    border-radius: 20px;
}

.html-5-trainings-slider-laptop img {
    z-index: 99999;
}

.html-5-trainings-slider-laptop .item {
    text-align: center;
    background: var(--color-white);
}

.html-5-trainings-slider-laptop video {
    width: 69%;
    position: absolute;
    top: 11%;
    left: 15%;
    z-index: 0;
}

.referenzen .mood-img {
    background: url(../img/mood-images/ref-index.webp) no-repeat center 10%;
}

#site-id-24 .mood-img {
    background: url(../img/mood-images/ref-header-projekte.webp) no-repeat center 0%;
}

#site-id-25 .mood-img {
    background: url(../img/mood-images/ref-header-testimonials.webp) no-repeat center -15%;
}

.mood-img.presseimg {
    background: url(../img/mood-images/utility-header-presse.webp) no-repeat center;
}

.mood-img.impressum {
    background: url(../img/mood-images/utility-header-impressum.webp) no-repeat center;
}

@media only screen and (min-width: 2000px) {
    .mood-img {
        background-position: center center !important;
        -webkit-background-size: 100% !important;
        -moz-background-size: 100% !important;
        -o-background-size: 100% !important;
        background-size: 100% !important;
    }
}

.why-learn.mood-img {
    background: url(../img/mood-images/utility-header-warum-elearning.webp) no-repeat center 10%;
}

table tbody tr td,
table tbody tr th {
    font-family: var(--font-base);
    font-size: 0.875em;
    line-height: 1.857142857142857em;
}

.text-content strong {
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
}

.text-content h2 {
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    font-size: var(--font-size-md);
    margin: 60px 0 24px 0;
}

#site-id-17-5 .text-content h2 {
    margin: 0;
}

.img-komplettloesung {
    width: 106%;
    margin-top: -22px;
}

.img-skalierbar {
    width: 83%;
    margin-top: 25px;
}

.img-fair {
    margin-top: -10px;
    width: 92%;
}

.img-einsatzbereit {
    width: 87%;
    margin-top: 30px;
}

.trainingsprodukte #column-2 {
    margin-top: 59px !important;
}

.trainingsprodukte.lp #column-2 {
    margin-top: 0 !important;
}

#trainings-wrapper {
    background: var(--color-bg-light);
    width: 100%;
    padding: 0 0 70px 0;
    margin: 0px 0 90px 0;
    box-sizing: border-box;
}

.quotes-container {
    padding:0 5%;
    max-width: 1000px;
    margin: 0px auto 65px auto;
    position: relative;
}

@media (max-width: 650px) {
    .quotes-container {
        margin-top: -30px;
    }
}

.quote {
    display: none;            /* nur ein Zitat ist sichtbar */
    text-align: center;
}

/* Typografie */
.quote p {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 30px;
    margin-bottom: 20px;
    text-align: center;
}

.quote .author {
    display: block;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-normal);
    text-align: center;
    line-height: 20px;
}

.quote .author strong {
    font-weight: var(--font-weight-bold);
    text-align: center;
}

.quote-btn, .stage-content .stage-slider-btn, .fs-nav, .blog-hero-slider-arrow {
    width: 36px;
    height: 36px;
    border-radius: var(--radius-pill);
    border: 2px solid var(--color-bg-light);
    background: var(--color-white);
    display: block;
    float: left;
    cursor: pointer;
    transition: var(--transition-fast) ease-in-out;
    margin: 0;
    position: absolute;
    font-family: var(--font-base);
    font-weight: var(--font-weight-semi);
    font-size: var(--font-size-sm);
    color:var(--color-dark);
    --lp-icon-color: var(--color-dark);
    top: 42%;
    z-index: 99;
}

.quote-btn {
    height: 44px;
}

.quote-btn.prev::before, .quote-btn.next::before, .fs-nav.fs-next::before, .fs-nav.fs-prev::before,
.stage-slider-btn.prev::before, .stage-slider-btn.next::before, .blog-hero-slider-arrow.blog-hero-slider-arrow-prev::before,
.blog-hero-slider-arrow.blog-hero-slider-arrow-next::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 9px;
    height: 22px;
    background-color: var(--lp-icon-color);
    mask-image: var(--lp-arrow-mask);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-image: var(--lp-arrow-mask);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
}

.quote-btn.next::before,
.stage-slider-btn.next::before,
.fs-nav.fs-next::before,
.blog-hero-slider-arrow.blog-hero-slider-arrow-next::before {
    transform: rotate(180deg);
}

.fs-nav.fs-next {
    right:-20px;
}

.fs-nav.fs-prev {
    left:-20px;
}

.quote-btn.prev {
    left: 0;
}

.stage-slider-btn.prev {
    left:20px;
}

.stage-slider-btn.next {
    right: 20px;
}

.quote-btn.next {
    right: 0;
}

.quote-btn:hover,
.stage-slider-btn:hover,
.fs-nav:hover,
.blog-hero-slider-arrow:hover {
    background-color: var(--color-dark-hover);
    --lp-icon-color: var(--color-white);
}

@media (max-width: 1025px) {
    .fs-slider {
        padding:0 5%;
    }

    .fs-nav {
        display:none;
    }

}

#trainings-wrapper.html-5-trainings {
    padding: 0;
    margin: 0px 0 70px 0;
}

#trainings-wrapper h2 {
    color: var(--color-text);
    font-weight: normal;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    padding: 50px 0px 80px 0;
    font-size: 1.75em;
    line-height: 1.3em;
}

#trainings-wrapper .filter-headline {
    text-align: center;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: var(--font-size-2xl);
    padding:96px 0 36px 0;
}

#trainings-wrapper h3,
#trainings-wrapper h3 a,
#trainings-wrapper h3 a:hover {
    color: var(--color-text);
    font-weight: normal;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    font-size: var(--font-size-lg);
    text-decoration: none;
}

#trainings-wrapper h4 {
    margin: 110px 0 60px 0;
    line-height: 30px;
}

#trainings-wrapper h4 a {
    font-family: var(--font-base);
}

#trainings-wrapper .product {
    margin: 0 0 67px 0;
    box-sizing: border-box;
}

#trainings-wrapper .product .right {
    float: right;
    width: 65%;
    padding: 0 0 0 5%;
}

#trainings-wrapper .product .left {
    float: left;
    width: 30%;
}

#trainings-wrapper .product .left img {
    width: 100%;
}

#trainings-wrapper .product {
    position: relative;
}

#trainings-wrapper .product .icon {
    width: 44px;
    height: 59px;
    position: absolute;
    left: 34px;
}

.trainingsprodukte .icon {
    width: 44px;
    height: 59px;
    position: absolute;
    left: 34px;
    top: -30px;
}

.trainingsprodukte #column-1 h1 {}

.trainingsprodukt-slider {
    position: relative;
}

.trainingsprodukt-slider .column {
    margin: 20px 0 120px 0;
}

.trainingsprodukte-teaser-box {
    background: var(--color-mid);
    margin-bottom: 100px;
}

.lp .trainingsprodukte-teaser-box {
    margin-bottom: 0px;
}

.trainingsprodukte-teaser-box button.gh_btn_blau {
    background-position: 91% -19px;
    margin-top: 11px;
}

.trainingsprodukte-teaser-box button.gh_btn_blau {
    margin-top: 28px;
}

.trainingsprodukte-teaser-box button.gh_btn_blau:hover {
    background-position: 91% 13px;
}

.trainingsprodukte-teaser-box .wrapper .column {
    padding: 30px 70px 50px 70px;
    box-sizing: border-box;
    margin: 0px 0 35px 0;
}

.trainingsprodukte-teaser-box .wrapper .column p {
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    font-size: var(--font-size-md);
    line-height: 30px;
}

.overview {
    padding: 50px 70px 0 70px;
}

.overview a {
    color:var(--color-white);
}

.overview a button {
    text-align: left;
    border: none;
    background-image: url("../img/svg/icon-trainingsprodukte-overview.svg");
    background-size: 23px 10px;
    background-color: var(--color-mid);
    background-repeat: no-repeat;
    background-origin: border-box;
    background-position: 0px 18px;
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: 0.875em;
    padding: 13px 31px 13px 43px;
    outline: none;
    cursor: pointer;
    transition: var(--transition-bg);
}

.overview a button:hover {
    text-decoration: underline;
}

.trainingsprodukte-teaser-box .left {
    float: left;
    width: 65%;
}

.trainingsprodukte-teaser-box .right {
    float: right;
    width: 30%;
    text-align: right;
}

.trainingsprodukt-slider .right .slider-wrapper {
    width: 102%;
    margin-left: -20px;
}

.trainingsprodukt-slider .items {
    position: absolute;
    width: 35%;
    top: 18px;
}

.trainingsprodukt-slider .items img {
    width: 470px;
}

.boilerplate-orange button.gh_btn_orange {
    float: right;
    margin-top: -49px;
}

.boilerplate-orange.trainingsprodukte button.gh_btn_orange {
    float: none;
    margin-top: 15px;
}

.boilerplate-orange.trainingsprodukte {
    padding: 0px 80px 18px 80px;
}

.boilerplate-orange.trainingsprodukte a {
    display: block;
    text-align: center;
}

.boilerplate-orange.trainingsprodukte h4 {
    text-align: center;
}

.trainingsprodukt-slider .item-2,
.trainingsprodukt-slider .item-3,
.trainingsprodukt-slider .item-4,
.trainingsprodukt-slider .item-5 {
    display: none;
}

.trainingsprodukt-vorteile .column {
    padding: 0 65px;
}

.html-5-trainings.trainingsprodukt-vorteile .flex-item.flex-grow-1 {
    margin: 0 25px 0 0;
}

.html-5-trainings.trainingsprodukt-vorteile .flex-item.flex-grow-2 {
    margin: 0 0 0 25px;
}

.trainingsprodukt-vorteile .left {
    float: left;
    width: 50%;
}

.trainingsprodukt-slider .left {
    float: left;
    width: 40%;
}

.trainingsprodukt-slider .right,
.trainingsprodukt-vorteile .right {
    float: right;
    width: 47%;
}

.volle-breite {
    width: 100% !important;
}

.trainingsprodukt-vorteile .left,
.trainingsprodukt-vorteile .right {
    width: 45%
}

.trainingsprodukt-slider ul.sorted-list li {
    margin-left: 0px;
}

.trainingsprodukt-vorteile .left {
    margin-right: 5%;
}

.trainings-image {
    display: none;
}

.trainingsprodukt-vorteile {
    padding: 80px 0;
}

.trainingsprodukt-vorteile h3 {
    font-size: 26px;
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-bottom: 45px;
}

.trainingsprodukt-vorteile ul li {
    color: var(--color-blue-deep);
    font-size: var(--font-size-sm);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    padding: 10px 0 0 20px;
    line-height: 26px;
}

.trainingsprodukt-vorteile ul.sorted-list li:before {
    color: var(--color-text);
    font-size: 39px;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    content: url(../img/vorteile-check.png);
    position: absolute;
    height: 2em;
    width: 2em;
    line-height: 45px;
    text-align: center;
    left: -1em;
    margin-top: -0.4em;
}

.hostingsat-letztersatz {
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    margin: 80px 0 -120px 0;
}

.hostingsat.boilerplate-orange {
    margin-top: 40px;
}

.trainingsprodukt-vorteile.hostingsat .column {
    padding: 0;
}

.hostmargin {
    padding-top: 60px;
    padding-bottom: 40px;
    padding-right: 5%;
    padding-left: 5%;
}

.hostingsat img {
    float: left;
    width: 345px;
}

.trainingsprodukt-vorteile.hostingsat .right {
    width: 60%;
}

.trainingsprodukt-vorteile.hostingsat .left {
    width: 30%;
}

.hostingsat .text-content {
    width: 60%;
    float: right;
}

.hostingsat h2 {
    font-size: var(--font-size-lg);
    line-height: 1.5em;
    font-family: var(--font-base);
}

.forkids .left {
    max-width: 35% !important;
}

#site-id-5 .column.col-12.cbg_white.forkids {
    padding: 80px 0 80px 0;
}

.jingjang {
    width: 32%;
    margin-right: 34px;
    margin-top: -30px;
}

.jingjang-text p {
    width: 90%;
}

.jingjang-text {
    margin-top: 43px;
}

@media (max-width: 1400px) {
    .jingjang {
        width: 23.7%;
    }
    .jingjang-text {
        margin-top: 15px;
    }
    .offers-2 {
        display: inline;
    }
    .offers-3,
    .offers-1 {
        display: none;
    }
}

@media (max-width: 920px) {
    .jingjang-text p {
        width: 80%;
    }
    .img-text-teaser img {
        margin-bottom: 200px;
    }
}

@media (max-width: 900px) {
    .boilerplate-orange.hostingsat button.gh_btn_orange {
        float: none;
        margin: 30px 0;
    }
    .boilerplate.stellenanzeigen .left {
        float: none !important;
        width: 100% !important;
    }
    .boilerplate.stellenanzeigen .right {
        float: none !important;
        width: 100% !important;
    }
    .boilerplate.stellenanzeigen .wrapper {
        height: auto !important;
        min-height: inherit !important;
    }
    .boilerplate.stellenanzeigen h4.ab-headline {
        text-align: center !important;
    }
    .boilerplate.stellenanzeigen .wrapper {
        padding: 66px 20px 60px 20px !important;
    }
    section.scrollp1.mobile-hidden {
        display: none;
    }
    section.scrollp1.mobile-visible {
        display: block !important;
        padding: 0;
        height: auto;
    }
    .scrollp1.mobile-visible .content h2 {
        font-size: var(--font-size-3xl);
        font-family: var(--font-base);
        margin-bottom: 30px;
        line-height: 1.3em;
    }
    .scrollp1.mobile-visible .img-container {
        text-align: center;
    }
    .scrollp1.mobile-visible .img-container img {
        width: 70%;
    }
    .boilerplate-orange.hostingsat .wrapper .column,
    .boilerplate-orange.hostingsat .wrapper .column h4,
    .boilerplate-orange.hostingsat .wrapper .column p {
        text-align: center;
    }
    .trainingsprodukt-vorteile.hostingsat .right {
        width: 50%;
    }
    .hostingsat img {
        width: 40%;
        padding-top: 50px;
    }
}

@media (max-width: 1100px) {
    .hostingsat img {
        margin-left: -5%;
    }
}

@media (max-width: 1000px) {
    .trainingsprodukt-vorteile.hostingsat .left {
        margin-bottom: 30px;
    }
    .trainingsprodukt-vorteile.hostingsat .right {
        margin-bottom: -130px;
    }
    .hostingsat-letztersatz {
        margin: 200px 0 -250px 0;
    }
    .hostingsat.boilerplate-orange {
        margin-top: 0;
    }
    .trainingsprodukte .tab-links a {
        float: left;
    }
    .stellenanzeige .benifit-container div {
        float: left;
        width: 20%;
        margin-right: 5%;
        height: 100px;
    }
    .benifit-wrapper.stellenanzeige .benifit-container {
        margin: 0 auto;
        background: var(--color-bg-light);
        box-sizing: border-box;
        padding: 52px 52px 0px 52px;
    }
    .stoerer-de,
    .stoerer-en {
        left: 30%;
        top: -30px;
    }
}

@media (max-width: 875px) {
    .jingjang-text {
        margin-top: -45px;
    }
    .trainingsprodukte .tab-links a {
        float: none;
    }
    .img-text-teaser.unternehmen-img img {
        margin: 0 auto;
        margin-top: -80px;
    }
    .themen-formate-wrapper {
        height: auto;
        background: var(--color-bg-light);
    }
    .themen-box,
    .formate-box {
        position: relative;
        top: 0 !important;
        left: 0 !important;
        float: left;
        width: 40%;
        padding: 5%;
    }
}

@media (max-width: 800px) {
    #site-id-5 .mission .column .left {
        max-width: 100%;
    }
    #site-id-5 .mission .column .left h2 {
        font-size: var(--font-size-3xl);
        font-family: var(--font-base); font-weight: var(--font-weight-light);
        line-height: 36px;
        margin-bottom: 20px;
        text-align: left;
    }
    .stoerer-de,
    .stoerer-en {
        left: 69%;
        top: 10px;
    }
    .trainingsprodukt-slider .column {
        margin: -10px 0 80px 0;
    }
    .tab-inhalt-beratung img {
        display: none;
    }
    .tab-inhalt-beratung .text-content {
        width: 100% !Important;
    }
    .hostingsat .text-content {
        width: 100%;
        float: none;
    }
    .hostingsat img {
        float: none;
        padding-top: 30px;
        width: 50%;
    }
    .hostingsat .column {
        text-align: center;
    }
    .hostmargin {
        padding-top: 30px;
        padding-bottom: 60px;
    }
    #site-id-17-5 .text-content h2 {
        margin-top: 50px;
    }
}

@media (max-width: 700px) {
    .trainingsprodukt-vorteile.hostingsat .right,
    .trainingsprodukt-vorteile.hostingsat .left {
        width: 100%;
        float: none;
    }
    .stage-content .stage-slider-dots {
        margin:20px 0;
    }
    .quote-btn, .stage-content .stage-slider-btn {
        display:none;
    }
    .html-5-trainings-slider-container .owl-controls .owl-nav {
        display: none;
    }
    .trainings-wrapper .wrapper {
        padding: 10% 5%;
    }
    .trainings-wrapper h2 {
        font-size: 28px;
        line-height: 38px;
    }
    .gallery-container {
        width: 100%;
        background: url(../img/galerie/gallery-bg.png) repeat-x 0px -80px var(--color-grey-blue);
        padding: 0 0 60px 0;
    }
    #gallery-slider-2 {
        #background: url(../img/galerie/gallery-bg.png) repeat-x 0px -100px var(--color-grey-blue);
    }
    .bewertungen-mitarbeiter #column-12 {
        margin-bottom: 30px !important;
    }
    .stellenanzeige .benifit-container div {
        float: left;
        width: 25%;
        box-sizing: border-box;
        margin-right: 0%;
        padding-right: 5%;
        height: 100px;
    }
    .benifit-wrapper.stellenanzeige .benifit-container {
        margin: 0 auto;
        background: var(--color-bg-light);
        box-sizing: border-box;
        padding: 52px 52px 0px 52px;
    }
}

.mission .column.col-12 {
    margin: 0px 0 20px 0;
    padding: 60px 0 40px 0;
}

.mission .column .left,
.content-nach-mass .column .left {
    float: left;
    padding: 0 0 0 32px;
    max-width: 47.375%;
    box-sizing: border-box;
}

.mission .column .left h2,
.content-nach-mass .column .left h2 {
    font-size: var(--font-size-3xl);
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    line-height: 36px;
}

#site-id-5 .mission .column .left {
    float: left;
    max-width: 34.375%;
    box-sizing: border-box;
}

#site-id-5 .mission .column .left h2 {
    font-size: var(--font-size-3xl);
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    line-height: 36px;
}

.mission .column .right,
.content-nach-mass .column .right {
    float: right;
    padding: 0 120px 0 60px;
    max-width: 65%;
    box-sizing: border-box;
}

.mis.mission .column .right {
    max-width: 60%;
}

#site-id-5 .mission .column .right {
    padding: 0 60px 0 60px;
}

.content-nach-mass .column .right {
    max-width: 75%;
    padding: 0 60px 0 30px;
}

#site-id-5 .column.col-12.cbg_white {
    padding: 60px 0 50px 0;
}

.img-left-teaser h2,
.img-right-teaser h2 {
    font-size: var(--font-size-3xl);
    line-height: 38px;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
}

.img-left-teaser .col-left {
    float: left;
    margin: 0 60px 0 0;
}

#site-id-24 .img-left-teaser .col-left {
    margin: 0 38px 0 0;
}

#site-id-24 .img-right-teaser .col-left {
    margin: 0 38px 0 0;
}

.img-text-teaser .text-content {
    display: table-cell;
}

#site-id-17 .img-text-teaser img {
    margin-right: 80px;
}

#site-id-24 .img-left-teaser .col-left img,
#site-id-24 .img-right-teaser .col-right img {
    width: 100%;
}

.img-left-teaser .col-right {
    float: right;
    margin: 0;
    max-width: 60%;
    padding: 0 32px 0 0;
}

#site-id-6 .img-right-teaser {}

.img-right-teaser .col-right {
    float: right;
    margin: 0;
}

.img-right-teaser .col-left {
    float: left;
    margin: 0 60px 0 0;
    max-width: 60%;
    padding: 0 0 0 32px;
}

.teaser-50-50 {
    padding: 75px 0;
    margin: 108px 0 0 0;
    min-height: 385px;
    box-sizing: border-box;
}

.teaser-50-50 .teaser-left,
.teaser-50-50 .teaser-right {
    max-width: 45%;
}

.teaser-50-50 h2 {
    font-size: var(--font-size-lg);
    font-family: var(--font-base); font-weight: var(--font-weight-light);
}

.teaser-50-50 .teaser-left {
    float: left;
    padding: 0 1% 0 32px;
}

.teaser-50-50 .teaser-right {
    float: right;
    padding: 0 32px 0 1%;
}

.filter {
    background-color: var(--color-bg-light);
    margin-top: 40px;
}

.wrapper.filter {
    background-color: var(--color-white);
}

.filter .wrapper {
    padding: 35px 0;
}

section.filter .column {
    padding: 0 80px;
}

section.filter .column span {
    display: inline-block;
    float: left;
    padding-top: 10px;
}

.filter h1,
.filter h2,
.filter h3,
.filter h4,
.filter h5 {
    font-size: var(--font-size-3xl);
    color: var(--color-black);
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-bottom: 55px;
    margin-top: 80px;
    padding: 0px 32px 0px 32px;
}

.select-style {
    padding: 5px 4px 3px 5px;
    margin: 0;
    border: none;
    width: auto;
    overflow: hidden;
    background-color: var(--color-white);
    background: url(../img/pfeil-grau.png) no-repeat right var(--color-white);
    border-radius: var(--radius-sm);
    float: none;
    background-size: 26px;
}

.select-style select {
    font-size: 15px;
    color: var(--color-text);
    padding: 5px 8px;
    width: 100%;
    border: none;
    box-shadow: none;
    background-color: transparent;
    background-image: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.select-style select:focus {
    outline: none;
}

@media (max-width: 1400px) {
    .cookie-banner div {
        max-width: 960px !important;
    }
}

@media (max-width: 1100px) {
    .cookie-banner div {
        padding-right: 32px;
        padding-left: 32px;
    }
}

@media (max-width: 802px) {
    .cookie-banner div p {
        width: 100%;
        float: none !important;
    }
}

.marketing-wrap img,
.marketing-wrap p {
    float: left;
}

.marketing-wrap img {
    width: 30%;
}

.marketing-wrap p {
    width: 60%;
    margin-top: 30px;
}

.marketing-wrap:first-child p {
    margin-left: 10%;
}

.marketing-wrap:first-child {
    margin-top: 30px;
    margin-bottom: 60px;
}

.marketing-wrap:last-child p {
    margin-right: 10%;
}

.indicontentbox .img-box {
    width: 30%;
    margin: 0 auto;
}

.scrollp1,
.scrollp2 {
    padding: 60px 5% 0px 0;
}

.mobile-ipad {
    float: right;
    position: relative !Important;
    margin-top: 0px;
    opacity: 1 !important;
}

.scrollp1.mobile-visible,
.scrollp2.mobile-visible {
    display: none;
}

.scrollContainer {
    overflow-y: scroll;
    overflow-x: hidden;
    width: 100%;
}

.scrollp1 {
    background-image: url('../../img/deco-design-pfeil-weiss.png');
    background-repeat: no-repeat;
    background-size: 62px;
    background-position: 70% 0;
    height: 2000px;
}

.scrollp1.mobile-ipad {
    height: auto !important;
    float: none;
}

.txt1,
.txt2,
.txt3 {
    width: 50%;
    height: 100%;
    padding-left: 50%;
    position: absolute;
}

.txt1 h2,
.txt2 h2,
.txt3 h2 {
    font-size: var(--font-size-3xl);
    font-family: var(--font-base);
    margin-bottom: 30px;
    line-height: 1.3em;
}

.txt1 {
    position: absolute;
    opacity: 0;
}

.txt2 {
    margin-top: 50px;
    opacity: 0;
    position: absolute;
}

.img1,
.img2,
.img3,
.img4,
.img5 {
    width: 460px;
    height: 490px;
    top: 0;
    position: absolute;
    top: 85px;
}

#imgwrapper-p1 .img2 {
    top: 0px;
}

#imgwrapper-p1 .img3 {
    top: 50px;
}

#imgwrapper-p1 .img4 {
    top: 120px;
}

#imgwrapper-p2 .img1,
#imgwrapper-p2 .img2,
#imgwrapper-p2 .img3,
#imgwrapper-p2 .img4,
#imgwrapper-p2 .img5 {
    top: 35px;
}

.img1 {
    z-index: 5;
    background-image: url('../../img/svg/deco-design-layer-4.svg');
    background-repeat: no-repeat;
    background-size: 100%;
}

.img2 {
    z-index: 4;
    background-image: url('../../img/svg/deco-design-layer-1.svg');
    background-repeat: no-repeat;
    background-size: 100%;
}

.img3 {
    z-index: 3;
    background-image: url('../../img/svg/deco-design-layer-2.svg');
    background-repeat: no-repeat;
    background-size: 100%;
}

.img4 {
    z-index: 2;
    background-image: url('../../img/svg/deco-design-layer-3.svg');
    background-repeat: no-repeat;
    background-size: 100%;
}

.img5 {
    z-index: 1;
    background-image: url('../../img/svg/deco-design-layer-5.svg');
    background-repeat: no-repeat;
    background-size: 100%;
}

.img2,
.img1 {
    background-position: 0 0;
}

#imgwrapper-p1 .img4,
.img5 {
    background-position: 0 220px;
}

#imgwrapper-p2 .img4,
#imgwrapper-p2 .img2,
.img3 {
    background-position: 0 110px;
}

@media (max-width: 1400px) {
    .leistungimgwrap {
        padding-right: 5%;
    }

    .indicontentbox:first-child {
        margin-left: 32px;
    }
    .img1,
    .img2,
    .img3,
    .img4,
    .img5 {
        width: 400px;
        top: 60px;
    }
    .img2,
    .img1 {
        background-position: 0 0;
    }
    #imgwrapper-p1 .img4,
    .img5 {
        background-position: 0 160px;
    }
    #imgwrapper-p2 .img4,
    #imgwrapper-p2 .img2,
    .img3 {
        background-position: 0 80px;
    }
}

@media (max-width: 1000px) {
    .formate-box {
        left: 50%;
        top: 370px;
    }
    .doppel-text-teaser {
        padding: 0 5%;
    }
    .themen-box {
        left: 7%;
        top: 48px;
    }
    .marketing-wrap:first-child p {
        margin-right: 5%;
        width: 50%;
        margin-top: 0;
    }
    .marketing-wrap:last-child p {
        margin-left: 5%;
        width: 50%;
        margin-top: 0;
    }
    .marketing-wrap:first-child img {
        margin-left: 5%;
    }
    .marketing-wrap:last-child img {
        margin-right: 5%;
    }

    .indicontentbox:first-child {
        padding-top: 80px;
    }

    .img1,
    .img2,
    .img3,
    .img4,
    .img5 {
        width: 340px;
        top: 80px;
    }
    .DundContentabsatz {
        padding: 0 5%;
    }
}

@media (max-width: 939px) {
    .themen-box {
        left: 40px;
        top: 48px;
    }
}

@media (max-width: 800px) {
    #site-id-17 .img-text-teaser img {
        margin-right: 0px;
    }
    .leistungsspektrum {
        display: none;
    }

    #site-id-21 #column-2 {
        width: 100% !important;
        text-align: center;
        margin-top: 20px !important;
        padding: 5%;
    }
    .img1,
    .img2,
    .img3,
    .img4,
    .img5 {
        width: 60%;
        margin-left: 20%;
        top: 0;
    }
    .scrollp1 {
        background-position: 50% 0;
    }
    .scrollp2 {
        background-position: 50% 0;
    }
    .txt1,
    .txt2,
    .txt3 {
        width: 90%;
        padding-left: 5%;
    }
    .txt1 {
        margin-top: 380px;
    }
    .txt3 {
        margin-top: 450px;
    }
    .boilerplate-orange {
        margin-top: 0 !important;
    }
}

@media (max-width: 600px) {
    .marketing-wrap img,
    .marketing-wrap p {
        float: none;
        width: 90% !important;
        margin-left: 5% !important;
        margin-right: 5%;
    }
    .stoerer-de,
    .stoerer-en {
        left: 42px;
        top: 10px;
    }
    .teaser-2-text .left,
    .teaser-2-text .right {
        float: none;
        max-width: 100%;
    }
    .teaser-2-text .right {
        margin: 10px 0 50px 0;
    }
    .content.suche {
        min-height: 240px;
    }
    .gallery-slider img {
        width: 100% !important;
    }
    .gallery-slider p.label {
        position: absolute;
        bottom: 8px;
        margin-left: 10px;
        color: var(--color-white);
    }
    .gallery-slider-navigation {
        float: none;
        width: 100%;
    }
    .gallery-wrapper .slider {
        width: 100%;
    }
    .gallery-container {
        background: none;
    }
    .special-headline {
        color: var(--color-text);
        font-family: var(--font-base); font-weight: var(--font-weight-semi);
        font-size: 0.875em;
        line-height: 26px;
        margin-top: 0;
        margin-bottom: 0;
    }
    .stellenanzeige .benifit-container div {
        float: none;
        width: 30%;
        box-sizing: border-box;
        margin-right: 0%;
        padding-right: 0%;
        height: 100px;
        text-align: center;
    }
    .cookie-banner div p {
        font-size: 11px !important;
        line-height: 16px;
    }
    a.close-cookie-banner {
        float: right !important;
        color: rgb(95, 94, 94);
        padding: 6px !important;
        text-decoration: none;
        background-color: rgb(255, 255, 255);
        text-indent: -10000px;
        float: right !important;
        position: absolute;
        right: 10px;
        top: 15px;
        margin-top: 0 !important;
        width: 15px;
    }
    .cookie-banner div {
        padding-right: 60px;
        padding-left: 32px;
    }
    a.close-cookie-banner img {
        margin: 0 !important;
        float: none !important;
    }
    .stellenanzeige .benifit-container p {
        text-align: center;
    }
    .stellenanzeige .benifit-container div img {
        width: 65px;
    }
    .benifit-wrapper.stellenanzeige .benifit-container {
        margin: 0 auto;
        background: var(--color-bg-light);
        box-sizing: border-box;
        padding: 52px 52px 0px 52px;
    }

    #site-id-25 .boilerplate {
        margin-top: 20px;
    }
    .trainingsprodukte .tab-links a {
        float: left;
    }
    .trainingsprodukt-slider .items {
        left: 0px;
        top: -20px;
    }
    .marketing-wrap:first-child p {
        margin-top: 30px;
    }
    .marketing-wrap:last-child p {
        margin-bottom: 30px;
    }
    .leistungimgwrap {
        padding-left: 5%;
    }

    .indicontentbox:first-child {
        padding-top: 40px;
    }

    .txt1,
    .txt2,
    .txt3 {
        width: 90%;
        padding-left: 5%;
    }
    .txt1 {
        margin-top: 330px;
    }
    .txt3 {
        margin-top: 400px;
    }
    .boilerplate-orange {
        margin-top: 0 !important;
    }
}

@media (max-width: 700px) {
    #site-id-5 .mission .column .left {
        width: 100%;
        max-width: 100%;
    }
    #site-id-26 .boilerplate-orange {
        margin-top: 40px !important;
        margin-bottom: -40px !important;
    }
    .mission .forkids.column .left {
        width: 100%;
        max-width: 80% !important;
        margin: 0 auto;
        float: none !important;
        margin-bottom: 30px;
    }
}

@media (max-width: 500px) {
    #imgwrapper-p1 .img4,
    .img5 {
        background-position: 0 100px;
    }
    #imgwrapper-p2 .img4,
    #imgwrapper-p2 .img2,
    .img3 {
        background-position: 0 50px;
    }
    .txt1 {
        margin-top: 260px;
    }
    .txt3 {
        margin-top: 300px;
    }
    .trainingsprodukt-slider .items {
        left: 20px;
        top: -20px;
    }
}

.boilerplate {
    background-color: var(--color-bg-light);
    margin-top: 30px;
    padding: 96px 0 106px 0;
}

.boilerplate.stellenanzeigen {
    margin: 110px 0 0 0;
}

.boilerplate.support-teaser {
    background: none;
    margin-top: 48px;
    margin-bottom: 80px;
}

.boilerplate.stellenanzeigen h4.ab-headline {
    text-align: left;
}

.boilerplate.stellenanzeigen .wrapper {
    padding: 86px 20px 10px 20px;
    height: 161px;
}

.boilerplate.stellenanzeigen .left {
    float: left;
    width: 40%;
}

.boilerplate.stellenanzeigen .right {
    float: right;
    width: 50%;
}

.boilerplate.support-teaser .col-7 {
    padding: 20px 0px;
    opacity: 1;
    width: 55%;
}

.landingpage .boilerplate.ununu-teaser,
.landingpage .boilerplate {
    margin-top: 0;
}

.boilerplate.ununu-teaser p a {
    color: var(--color-white);
    text-decoration: none;
}

.boilerplate.ununu-teaser p a:hover {
    color: var(--color-white);
    text-decoration: underline;
}

.boilerplate.ununu-teaser img {
    float: right;
}

.boilerplate-orange {
    background:url('/img/boilerplate_bg.webp') no-repeat center center;
    background-size:cover;
    margin-top: 150px;
}

.boilerplate-orange.marketinginstrument {
    margin-top: 40px;
}

.boilerplate-orange .wrapper {
    padding: 96px 5%;
}

.boilerplate.ununu-teaser .wrapper {
    padding: 70px 0 65px 0;
    height: auto;
}

.boilerplate.support-teaser .wrapper {
    padding: 70px 52px 65px 52px;
    height: auto;
    box-sizing: border-box;
}

.boilerplate-orange .wrapper {
    padding: 96px 5%;
    min-height: 160px;
    box-sizing: border-box;
}

.boilerplate form a {
    border: none;
    color: var(--color-orange);
    border:1px solid var(--color-orange);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    outline: none;
    cursor: pointer;
    width: auto;
    font-size: var(--font-size-base);
    padding:13px 20px 13px 20px;
    transition: var(--transition-bg);
    border-radius: var(--radius-md);
    line-height: 18px;
    background: url(/img/svg/arrow_right_orange.svg) no-repeat 95% center;
    padding: 13px 51px 13px 20px;
    margin: 0px 18px 0 0;
    display:inline-block;
}

.boilerplate form a.submit {
    color: var(--color-white);
    background: url(/img/svg/arrow_right.svg) no-repeat 95% center var(--color-orange);
    padding: 13px 51px 13px 20px;
    margin:0 18px 0 0;
}

.boilerplate form a.submit:hover {
    background-color:var(--color-orange-dark);
    background: url(/img/svg/arrow_right.svg) no-repeat 95% center var(--color-orange-dark);
}

.boilerplate form a:hover {
    color: var(--color-white);
    border:1px solid var(--color-orange);
    background: url(/img/svg/arrow_right.svg) no-repeat 95% center var(--color-orange);
    text-decoration: none;
}

.boilerplate .col-8 {
    padding-left: 3.958333333333333%;
}

section.boilerplate input {
    border-radius: 8px;
    border: 1px solid #D5D7DA;
    background: var(--color-white);
    padding: 10px 20px;
    font-size: var(--font-size-base);
    box-sizing: border-box;
    margin:0 0 16px 0;
    flex:1;
}

.boilerplate.kununu-teaser .wrapper h1,
.boilerplate.kununu-teaser .wrapper h2,
.boilerplate.kununu-teaser .wrapper h3,
.boilerplate.kununu-teaser .wrapper h4,
.boilerplate.kununu-teaser .wrapper h5 {
    font-size: var(--font-size-3xl);
    color: var(--color-white);
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-bottom: 20px;
    text-align: left;
}

.ab-headline {
    text-align: center;
    margin-bottom:20px;
}

.abbinder {
    display:flex;
    flex-direction: column;
}

.boilerplate .wrapper h1,
.boilerplate .wrapper h2,
.boilerplate .wrapper h3,
.boilerplate .wrapper h5 {
    font-size: 2.0em;
    color: #464646;
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-bottom: 55px;
    text-align: center;
}

.boilerplate-orange .wrapper h1,
.boilerplate-orange .wrapper h2,
.boilerplate-orange .wrapper h3,
.boilerplate-orange .wrapper h5 {
    font-size: 2.0em;
    line-height: 1.3em;
    font-family: var(--font-base); font-weight: var(--font-weight-light);
}

.boilerplate-orange .wrapper h4 {
    color: var(--color-white);
    text-align: center;
    font-family: var(--font-base); font-weight: 500;
    font-size: var(--font-size-2xl);
    margin-bottom: 30px;
    line-height: 38px; /* 133.333% */
}

.boilerplate-orange p {
    color:var(--color-white);
    text-align: center;
    font-size: var(--font-size-base);
    line-height: 28px; /* 166.667% */
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
}

.boilerplate-orange a.read-more {
    color:var(--color-white);
    position: relative;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: var(--font-size-base);
    margin-top: 24px;
    background: none;
}

.boilerplate-orange a.read-more svg {
    width: 24px;
    height: 24px;
    position: absolute;
    top: -3px;
    right: -9%;
}

#short_contact {
    flex-direction: row;
    margin-top: 50px;
    justify-content: space-between;
    gap: 40px;
}

section.stellenanzeigen #short_contact {
    margin-top:0;
}

section.stellenanzeigen #short_contact p {
    text-align: left;
}

#contact_form_recall {
    flex:2;
}

#contact_form_recall .flex {
    gap:16px;
}

.telefon-box {
    flex:1;
    border-radius: 20px;
    background: #e4e4e4;
    display: flex;
    padding:20px;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 24px;
    box-sizing: border-box;
    height:166px;
}

.telefon-box strong {
    margin-top: 10px;
    font-size:20px;
    display: inline-block;
    font-weight: var(--font-weight-bold);
}

.telefon-box a {
    color:var(--color-text);
}

.telefon-box svg {
    width: 69px;
}

.submit-area {
    margin:24px 0 0 0;
}

.submit-area input {
    margin-right:20px !important;
}

.boilerplate p {
    color: var(--color-text);
    text-align: center;
    font-size: var(--font-size-base);
    font-style: normal;
}

.boilerplate.kununu-teaser p {
    font-size: 0.875em;
    color:var(--color-white);
    line-height: 1.8em;
    text-align: left;
}

.telefon-box p {
    text-align: left;
}

.boilerplate .wrapper .col-4 {
    width: 42.04545454545455%;
}

.boilerplate .wrapper .col-8 {
    width: 57.95454545454545%;
}

footer {
    height: auto;
}

footer .wrapper ul li {
    float: left;
    padding-top: 15px;
    padding: 15px 28px 0 0;
}

footer .wrapper ul li a {
    color: var(--color-white);
    text-decoration: none;
    font-size: 0.813em;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
}

footer .wrapper ul li a:hover {
    color: #d7d9db;
}

footer .wrapper span {
    font-size: 0.813em;
    float: right;
    padding-top: 17px;
}

footer ul li a.xing {
    background: url(../img/logo-xing.png) no-repeat;
    padding-left: 24px;
}

footer .column.col-12.cf_white {
    padding-bottom: 1.5%;
}

.kununu-logo {
    height: 17px;
    width: 49px;
}

.tech-table {
    margin: 0 0 50px 0;
}

.tech-table table tbody tr td,
.tech-table table tbody tr td p {
    font-size: var(--font-size-sm);
    line-height: 1.725em;
    line-height: 26px;
}

.tech-table table tbody tr th {
    padding: 20px 20px 10px 20px;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
}

#table-1.tech-table table tbody tr th,
#table-1.tech-table table tbody tr td {
    padding: 20px 0 10px 0;
}

#table-1.tech-table table tbody tr th {
    padding-right: 10px;
    min-width: 155px;
}

.tech-table table tbody tr td {
    padding: 20px;
}

#table-2.tech-table table tbody tr:nth-child(even) {
    background: var(--color-white)
}

#table-2.tech-table table tbody tr:nth-child(odd) {
    background: var(--color-bg-light)
}

.tech-table h2 {
    margin: 40px 0 40px 0;
}

#table-1.tech-table tr td,
#table-1.tech-table tr th {
    border-top: 1px solid #d7d7d7;
}

#table-2.tech-table table tbody tr:nth-child(odd) td,
#table-2.tech-table table tbody tr:nth-child(odd) th {
    border-top: 1px solid #d7d7d7;
    border-bottom: 1px solid #d7d7d7;
}

#table-1.tech-table tr .last-row {
    border-bottom: 1px solid #d7d7d7;
}

.tech-table table {
    border-spacing: 6px 0px;
    border-collapse: separate;
}

.licenceuser {
    margin-bottom: -15px;
}

section.sitemap {
    display: none;
    background-color: var(--color-dark-hover);
}

section.sitemap a {
    font-size: 0.875em;
    text-decoration: none;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    color: #d7d9db;
}

section.sitemap a:hover {
    color: var(--color-white);
}

section.sitemap .col-4 {
    width: 30%;
    height: 360px;
    margin-left: 5%;
    margin-top: 50px;
}

section.sitemap .col-4 ul li {
    line-height: 2.500em;
}

section.sitemap .col-4.no-margin {
    width: 30%;
    margin-left: 0;
    margin-top: 50px !important;
}

section.sitemap p a {
    font-size: 1.000em;
    text-decoration: none;
    font-family: var(--font-base);
    font-weight:var(--font-weight-semi);
    color: var(--color-white);
}

section.sitemap p a:hover {
    color: #d7d9db;
}

section.sitemap p {
    border-bottom: 1px solid #9ea5aa;
    padding: 10px 0;
}

section.sitemap ul {
    padding: 10px 0;
}

.x-icon {
    display: none;
}

#burger-x-icon {
    margin-left: -10px;
    margin-top: -13px;
    height: 38px;
    width: 38px;
}

.tablet-menu {
    background-color: var(--color-bg-light);
}

section.tablet-menu {
    display: none;
    position: absolute;
    width: 100%;
    z-index: 9999999;
}

section.tablet-menu a {
    font-size: 0.875em;
    text-decoration: none;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    color: var(--color-grey-text);
}

section.tablet-menu a.active {
    color: var(--color-black);
}

section.tablet-menu a:hover {
    color: var(--color-black);
}

section.tablet-menu .col-4 {
    width: 30%;
    height: 420px;
    margin-left: 5%;
}

section.tablet-menu .col-4 ul li {
    line-height: 2.500em;
}

section.tablet-menu .col-4.no-margin {
    width: 30%;
    margin-left: 0;
}

section.tablet-menu p a {
    font-size: 1.000em;
    text-decoration: none;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    color: var(--color-grey-text);
}

section.tablet-menu p {
    border-bottom: 1px solid #9c9c9c;
    padding: 10px 0;
}

section.tablet-menu ul {
    padding: 10px 0;
}

section.tablet-menu .header {
    height: 100px;
    padding: 20px 0 0 0;
    width: 100%;
}

section.tablet-menu .close-button img {
    cursor: pointer;
}

section.mood-img.kundenorientierung img {
    margin-top: -200px;
}

@media only screen and (min-width: 1700px) {
    section.mood-img.consulting-training-img img {
        width: 100%;
        margin-top: -420px;
    }
    section.mood-img img {
        width: 100%;
        margin-top: 0px;
    }
    section.mood-img .software-service-img img {
        margin-top: 0;
    }
    #site-id-6 section.mood-img img {
        width: 100%;
        margin-top: -420px;
    }
}

@media only screen and (min-width: 1500px) and (max-width: 1700px) {
    section.mood-img.consulting-training-img img {
        width: 100%;
        margin-top: -410px;
    }
    section.mood-img img {
        width: 100%;
        margin-top: -420px;
    }
}

@media only screen and (min-width: 1300px) and (max-width: 1500px) {
    section.mood-img.consulting-training-img img {
        width: 100%;
        margin-top: -300px;
    }
    #site-id-2 section.mood-img img {
        margin-top: -140px;
    }
}

@media only screen and (min-width: 1000px) and (max-width: 1300px) {
    section.mood-img.consulting-training-img img {
        width: 100%;
        margin-top: -260px;
    }
    #site-id-2 section.mood-img img {
        margin-top: -90px;
    }
}

.animation-container {
    padding: 70px 53px 70px 53px;
    box-sizing: border-box;
}

.animation-container .textblock {
    float: right;
    width: 50%;
}

.animation-container .right {
    height: 248px;
}

.animation-container .left {
    width: 50%;
    float: left;
}

.boilerplate .wrapper input[type="submit"],
input[type="submit"] {
    border: none;
    color: var(--color-orange);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    outline: none;
    cursor: pointer;
    width: auto;
    font-size: var(--font-size-base);
    padding:13px 20px 13px 20px;
    transition: var(--transition-bg);
    border-radius: var(--radius-md);
    line-height: 18px;
    color: var(--color-white);
    background: url(/img/svg/arrow_right.svg) no-repeat 95% center var(--color-orange);
    padding: 13px 51px 13px 20px;
    margin: 0 18px 0 0;
}

.kontakt_rechtespalte input[type="submit"] {
    background: url(/img/svg/arrow_right.svg) no-repeat 272px center var(--color-orange);
    margin-top:10px;
}

.contact input[type="submit"] {
    margin: 10px 20px 0 0;
}

.boilerplate-orange button.btn_white {
    background-position: 150px 14px;
    float: right;
    margin-top: -49px;
}

button.gh_btn_orange {
    height: 38px;
    border: none;
    background-image: url("../img/gh-btn-orange.png");
    background-repeat: no-repeat;
    background-origin: border-box;
    background-position: 150px -19px;
    background-size: 9px;
    background-color: transparent;
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: 0.875em;
    padding: 9px 45px 10px 31px;
    outline: none;
    cursor: pointer;
    margin-top: 9px;
    border: 1px solid var(--color-white);
    transition: var(--transition-bg);
    line-height: 17px;
    font-weight: normal;
}

button.gh_btn_blau {
    height: 38px;
    border: none;
    background-image: url("../img/gh-btn-blau.png");
    background-repeat: no-repeat;
    background-origin: border-box;
    background-position: 208px -19px;
    background-size: 9px;
    background-color: transparent;
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: 0.875em;
    padding: 9px 45px 10px 31px;
    outline: none;
    cursor: pointer;
    margin-top: 20px;
    border: 1px solid var(--color-white);
    transition: var(--transition-bg);
    line-height: 18px;
    font-weight: normal;
}

button.gh_btn_blau:hover {
    background-position: 208px 13px;
    background-color: var(--color-white);
    color: var(--color-mid);
    text-decoration: none;
}

.trainingsprodukte-teaser-box .right a {
    text-decoration: none !important;
}

button.gh_btn_orange:hover {
    background-position: 150px 13px;
    background-color: var(--color-white);
    color: var(--color-orange);
}

button.btn_orange:hover,
.boilerplate .wrapper input[type="submit"]:hover {
    background-color: var(--color-orange-dark);
    transition: var(--transition-bg);
}

nav.sidebar-menu.tablet li {
    position: relative;
}

a.button {
    border: none;
    background-image: url("../img/pfeil-weiss.png");
    background-size: 33px 11px;
    background-color: var(--color-orange);
    background-repeat: no-repeat;
    background-origin: border-box;
    background-position: 109% 50%;
    background-size: 8px;
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: 0.875em;
    padding: 13px 40px 13px 31px;
    outline: none;
    cursor: pointer;
}

a.button:hover {
    background-color: var(--color-orange-dark);
    transition: var(--transition-bg);
    text-decoration: none;
}

a.button.btn_weiss:hover {
    background-color: var(--color-bg-light);
    transition: var(--transition-bg);
    text-decoration: none;
}

ul li.list {
    line-height: 1.857142857142857em;
    color: var(--color-text);
    list-style-image: url(bullet.png);
    padding-left: 12px;
    background-image: url("bullet.png");
    background-repeat: no-repeat;
    background-position: 0% 50%;
}

nav#desktop-menu .submenu {
    left: 308px;
}

nav#desktop-menu .submenu.site-4 {
    left: 0;
    margin-left: 249px;
}

nav#desktop-menu .submenu.site-2 {
    left: 0;
    width: 670px;
    margin-left: 268px;
}

nav#desktop-menu .submenu.site-3 {
    left: 0px;
    width: 712px;
    margin-left: 204px;
}

nav#desktop-menu .submenu.site-1 {
    left: 0px;
    width: 616px;
    margin-left: 360px;
}

nav#desktop-menu .submenu.site-3 li,
nav#desktop-menu .site-5 .submenu li {
    float: right;
}

nav#desktop-menu .site-5 .submenu {
    left: 0;
    width: 712px;
    margin-left: 204px;
}

nav#desktop-menu .submenu li {
    margin: 0;
    margin-left: 20px;
}

nav#desktop-menu ul li:first-child {}

@media only screen and (max-width: 1400px) {
    .img-komplettloesung {
        width: 106%;
        margin-top: 10px;
    }
    .img-skalierbar {
        width: 83%;
        margin-top: 25px;
    }
    .img-fair {
        margin-top: -10px;
        width: 92%;
    }
    .img-einsatzbereit {
        width: 87%;
        margin-top: 30px;
    }
    nav#desktop-menu .submenu {
        left: 320px;
    }
    .boilerplate .wrapper .col-4 {
        width: 42.04545454545455%;
    }
    .boilerplate .wrapper .col-8 {
        width: 57.95454545454545%;
    }
    section.boilerplate input.phone {
        margin-left: 0;
        width: 100%;
    }
    section.boilerplate input.company {
        margin-left: 0;
        width: 40%;
    }
    section.boilerplate input.mail {
        width: 58.8%;
    }
    .academymaker .content-slider.owl-carousel.owl-theme.owl-loaded {
        min-height: 225px;
    }
    .roi-slider .content-slider.owl-carousel.owl-theme.owl-loaded {
        min-height: inherit;
    }
    .col-9_5 .content-slider.owl-carousel.owl-theme.owl-loaded,
    .col-9_5 .job-slider.owl-carousel.owl-theme.owl-loaded,
    .col-7 .content-slider.owl-carousel.owl-theme.owl-loaded,
    .col-7 .job-slider.owl-carousel.owl-theme.owl-loaded {
        min-height: 200px;
    }
    .DuC .subline {
        margin-left: 32px;
    }
    .mis.mission .column .right {
        max-width: 55%;
        padding: 0 60px 0 30px;
    }
    .mission .column .left h2 {
        font-size: var(--font-size-2xl);
        font-family: var(--font-base); font-weight: var(--font-weight-light);
        line-height: 36px;
    }
    .morespaceupdown {
        margin: 30px 0;
    }
}

@media only screen and (max-width: 1225px) {
    .unterseite.software .mood-img.software-service-img video {
        margin-top: 20px;
    }
}

@media only screen and (max-width: 1200px) {
    .mood-img video {
        width: auto !important;
    }
}

@media only screen and (max-width: 1400px) {
    .content-nach-mass .column.col-12,
    .mission .column.col-12 {
        width: 100%;
        padding: 40px 0 30px 0;
    }
    .column.DuC {
        margin-left: 0;
    }
    .DuCabsatz {
        margin-left: 32px;
    }
    .content-nach-mass .column .right {
        max-width: 60%;
        padding: 0 60px 0 30px;
    }
    .teaser-marketing {
        width: 29.1%;
    }
}

@media only screen and (max-width: 1112px) {
    nav#desktop-menu .submenu {
        left: 319px;
    }
}

@media only screen and (max-width: 1000px) {
    .tab-inhalt-beratung img {
        width: 20%;
    }
    .tab-inhalt-beratung#tab-2 img {
        width: 25%;
    }
    .tab-inhalt-beratung .text-content {
        width: 70%;
        margin-left: 5%;
    }
    .DuC .subline {
        margin-top: -40px;
        margin-bottom: 30px;
    }
    #site-id-24 section.mood-img img {
        width: 100%;
        margin-top: -170px;
    }
    .trainingsprodukt-vorteile .column {
        padding: 0 50px;
    }
    .trainingsprodukt-slider .column {
        padding: 0 32px;
    }
    .trainingsprodukt-slider .left .slider-wrapper {
        width: 107%;
    }
    .trainingsprodukt-slider .items img {
        width: 100%;
    }
    .trainingsprodukt-slider .right .slider-wrapper {
        width: 86%;
        margin-left: 0px;
        margin: 0 auto;
    }
    .trainingsprodukt-slider .right,
    .trainingsprodukt-vorteile .right {
        float: right;
        width: 50%;
    }
    .trainingsprodukt-vorteile .left,
    .trainingsprodukt-vorteile .right {
        width: 50%
    }
    .trainingsprodukt-vorteile .left {
        margin-right: 0%;
    }
    #site-id-17-5 .trainingsprodukt-vorteile .left {
        margin-right: 10%;
    }
    .trainingsprodukt-vorteile {
        padding: 50px 32px;
    }
    .mood-img video {
        margin: 0 !important;
    }
    .ki-unterseite .mood-img video {
        margin: -49% !important;
    }
    #trainings-wrapper {
        background: var(--color-bg-light);
        width: 100%;
        padding: 0 5% 70px 5%;
        margin: 100px 0 90px 0;
    }
    #trainings-wrapper.html-5-trainings {
        background: var(--color-bg-light);
        width: 100%;
        padding: 0 5% 70px 5%;
        margin: 50px 0 0px 0;
    }
    #trainings-wrapper .product .right {
        float: right;
        width: 55%;
        padding: 0 0 0 0%;
    }
    #trainings-wrapper .product .left {
        float: left;
        width: 40%;
    }
    .boilerplate-orange .wrapper {
        padding: 80px 5%;
    }
    #site-id-2 section.mood-img img {
        margin-top: -70px;
    }
    .home .slider {
        padding: 0px 32px 72px 32px !Important;
    }    .col-9_5 .content-slider.owl-carousel.owl-theme.owl-loaded,
         .col-9_5 .job-slider.owl-carousel.owl-theme.owl-loaded,
         .col-7 .content-slider.owl-carousel.owl-theme.owl-loaded,
         .col-7 .job-slider.owl-carousel.owl-theme.owl-loaded {
             min-height: 200px;
         }
    section.boilerplate .column {
        width: 100%;
    }
    section.boilerplate.ununu-teaser .column.col-7 {
        width: 50.333333%;
    }
    section.boilerplate.ununu-teaser .column.col-5 {
        width: 49.666667%;
    }
    .boilerplate .wrapper {
        padding: 0 5%;
    }
    .boilerplate .wrapper .col-4 {
        width: 42.04545454545455%;
    }
    .boilerplate .wrapper .col-8 {
        width: 57.95454545454545%;
    }
    section.boilerplate input.phone {
        margin-left: 0;
        width: 99.7%;
    }
    section.boilerplate input.name {
        width: 48%;
    }
    section.boilerplate input.company {
        margin-left: 0;
        width: 39.4%;
    }
    section.boilerplate input.mail {
        width: 58.8%;
    }
    .branchen-container {
        width: 30% !important;
        height: 160px !Important;
    }
}

@media only screen and (max-width: 1000px) {
    .wrapper.navigation {
        padding:0 5%;
    }
}

header.menu .contact a.mobile-contact {
    display:none;
}

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

    header.menu .contact a.mobile-contact {
        display:block;
        margin: 0 10px 0 0;
    }

    header.menu {
        justify-content: flex-end;
        border-bottom:2px solid #e9e9e9;
    }

    .logo {
        flex:1;
        justify-content: flex-start;
    }

    body.unterseite section#submenu {
        display: none !important;
    }
    header.column {
        height: 72px;
    }
    #desktop-menu,
    .utility-nav nav {
        display: none !important;
    }
    #hamburger {
        display: block;
        z-index: 9999999;
    }
    .tablet-menu .col-10,
    .tablet-menu .col-10_5,
    .tablet-menu .col-11,
    .tablet-menu .col-11_5,
    .tablet-menu .col-12,
    .tablet-menu .col-12_5 {
        width: 100%;
    }
    .tablet-menu .col-4 {
        width: 40%;
    }
    .tablet-menu .wrapper {
        padding: 0 32px;
        height: 3000px;
    }
    .logo img {
        width: 120px;
        margin: -5px 0px 0px 4px;
    }
    .request-box.cbg_orange {
        top: 23px;
        right: 30px;
        background-color: var(--color-white);
    }
    .request-box .home span,
    .request-box .mobile span {
        display: none;
    }
    .request-box .tablet span {
        display: block;
        background: url(../img/request-bg-tablet.png) 1px 3px no-repeat;
    }
    .box-content {
        display: none;
    }
    .request-box .tablet span a {
        color: var(--color-orange);
        font-size: var(--font-size-sm);
        text-transform: none;
        margin: 0;
    }
    .tab-links li {
        padding: 21px;
    }
    .tab-links li a {
        font-size: var(--font-size-xs) !important;
    }

    .img-left-teaser .col-left {
        float: left;
        margin: 0 60px 0 0;
    }
    .img-left-teaser .col-right {
        float: right;
        margin: 0;
        max-width: 55%;
        padding: 0 32px 0 0;
    }
    .img-right-teaser .col-right {
        float: right;
        margin: 0;
    }
    .img-right-teaser .col-left {
        float: left;
        margin: 0 60px 0 0;
        max-width: 55%;
        padding: 0 0 0 32px;
    }
    #site-id-6 .img-right-teaser .col-left {
        margin: 0;
        max-width: 60%;
    }
    .teaser-contact .wrapper .column {
        padding: 45px 32px;
    }
}

@media only screen and (max-width: 960px) {
    #site-id-23 .col-9_5 {
        width: 70.83333333333333% !important;
    }
    .jobs .slider {
        padding: 0 32px !important;
    }
    .column.logo-carousel,
    .column.logo-carousel-big {
        padding: 0 5%;
    }
    .academymaker-logo {
        left: 5%;
        right: 0;
        top: 47px;
        width: 140px;
    }
    .academymaker .content {
        padding: 58px 5% 28px 5%;
    }
    .academymaker .img-teaser .content,
    .academymaker .img-logo-teaser .content {
        padding: 15px 15px;
    }
    .responsive-teaser.wrapper {
        margin-top: 50px;
        margin-bottom: 130px;
    }
    .trainingsprodukt-vorteile .left,
    .trainingsprodukt-vorteile .right {
        width: 100%;
        float: none;
    }
    #site-id-17-5 .trainingsprodukt-vorteile .left,
    #site-id-17-5 .trainingsprodukt-vorteile .right {
        float: left;
    }
    .boilerplate.support-teaser {
        padding: 0 !important;
    }
    .landingpage #column-2,
    .landingpage #column-3 {
        width: 50%;
    }
    .landingpage #column-3 {
        float: right;
    }
    .slider.news .item .left {
        display: none;
    }
    .slider.news .item .right {
        max-width: 100%;
        padding: 0 5%;
    }
    section.boilerplate .column.col-8 {
        padding: 0;
        margin-top: 3%;
    }
    .boilerplate .wrapper .col-4,
    .boilerplate .wrapper .col-8 {
        width: 100%;
    }
    .boilerplate .wrapper .col-4 {
        margin: 0px 0px 11px;
    }
    section.boilerplate input {
        width: 100%;
        margin: 0 0 10px 6px;
        float: left;
        box-sizing: border-box;
    }
    section.boilerplate input.name {
        width: 49.5%;
        margin: 0 0 10px 0;
        float: left;
        box-sizing: border-box;
    }
    section.boilerplate input.secondname {
        width: 49%;
        margin: 0 0 10px 6px;
        float: left;
        box-sizing: border-box;
    }
    section.boilerplate input.company {
        width: 39.4%;
        margin: 0 0 10px 0;
        float: left;
        box-sizing: border-box;
    }
    section.boilerplate input.phone {
        width: 99.3%;
    }
    .managment-teaser-wrapper .left {
        max-width: 55%;
    }
    .managment-teaser-wrapper .right {
        max-width: 33%;
    }
    .landingpage #column-6 {
        width: 60.001%;
    }
    nav.sidebar-menu {
        display: none;
    }
    nav.sidebar-menu.tablet {
        display: block;
    }
    nav.sidebar-menu.tablet ul li a {
        border-left: 1px solid #d7d7d7;
        border-right: 1px solid #d7d7d7;
        border-bottom: 1px solid #d7d7d7;
        padding: 15px;
    }
    nav.sidebar-menu.tablet ul li a.first-link {
        border-top: 1px solid #d7d7d7;
        background: url(../img/mobile-arrow.png) no-repeat 95% 20px;
        background-size: 9px;
    }
    nav.sidebar-menu.tablet ul li a.first-link.active {
        background: url(../img/mobile-arrow2.png) no-repeat 95% 20px;
        background-size: 9px;
    }
    nav.sidebar-menu.tablet ul li ul.sidebar-menu-submenu {
        position: absolute;
        z-index: 9999;
        background: var(--color-white);
        width: 100%;
        margin-left: 0;
        display: none;
    }
    #site-id-19 .academymaker-teaser {
        display: none;
    }
    nav.sidebar-menu.tablet {
        max-width: 816px;
        margin: 0 auto;
    }
    .benifit-container h2 {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .benifit-container .right {
        float: right;
        width: 65%;
    }
    .benifit-container img {
        width: 70%;
    }
    .benifit-container .left {
        float: left;
        width: 30%;
        text-align: center;
    }
    .benifit-container.left-right .right {
        float: right;
        width: 65%;
    }
    .benifit-container.left-right .left {
        float: left;
        width: 30%;
        padding-top: 30px;
        text-align: center;
    }
    .benifit-container.left-right.content-container .left {
        width: 28%;
    }
    .benifit-container.right-left .right {
        float: right;
        width: 30%;
        padding-top: 30px;
        text-align: center;
    }
    .benifit-container.right-left .left {
        float: left;
        width: 65%;
    }
}

@media only screen and (max-width: 899px) {
    .tab-links li {
        padding: 20px;
    }
    .img-left-teaser .col-right {
        float: right;
        margin: 0;
        max-width: 50%;
        padding: 0 32px 0 0;
    }
    .img-left-teaser .col-left {
        margin: 0 45px 0 0;
    }
    .img-right-teaser .col-left {
        float: left;
        margin: 0 45px 0 0;
        max-width: 50%;
        padding: 0 0 0 32px;
    }
    .img-text-teaser .img-wrapper {
        width: 100%;
        height: 100%;
        padding: 10% 5% 20% 5%;
        float: none;
        box-sizing: border-box;
        margin: 0 auto !important;
    }
    .img-text-teaser .img-wrapper img {
        margin: 0 !Important;
        width: 100% !important;
    }
}

@media only screen and (max-width: 1000px) {
    #site-id-13 .img-text-teaser .text-content {
        padding: 0 5% 0 0;
    }
    #site-id-1 .mission .column .left {
        max-width: 50%;
    }
    #site-id-1 .mission .column .right {
        max-width: 50%;
    }
    .teaser-marketing {
        width: 60.1%;
        margin-bottom: 80px;
        margin-top: 0 !important;
        margin-left: 32px;
    }
    .job-offer {
        padding: 60px 47px;
        margin: 1%;
        width: 47.8%;
        box-sizing: border-box;
    }
    .job-offer.column {
        height: 322px;
    }
    .boilerplate.ununu-teaser {
        padding: 0 5%;
    }
    section.mood-img.consulting-training-img img {
        width: 100%;
        margin-top: -200px;
    }
    #site-id-6 .img-right-teaser .col-right img {
        padding: 60px 10px 20px 0 !important;
    }

}

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

    section.boilerplate input.name {
        width: 48%;
    }
    section.boilerplate input.company {
        width: 39.4%
    }
    section.boilerplate input.phone {
        width: 99%;
    }
    .boilerplate.ununu-teaser .wrapper {
        min-height: inherit;
        height: auto;
    }
    #site-id-22 section.mood-img img {
        width: 100%;
        margin-top: -180px;
    }
    #short_contact {
        flex-direction: column;
    }
}

@media only screen and (max-width: 850px) {
    .two-cols-content.DuC {
        padding: 56px 32px 56px 18px;
    }
    .col-right.DuC,
    .col-left.DuC {
        width: 100%;
    }
    .testimonial-teaser-box .item {
        width: 48%;
        padding: 3%;
        margin: 1%;
    }
    .benefit-wrapper.desktop-view {
        display: none;
    }
    .benefit-wrapper.mobile-view {
        display: block;
        margin-top: 10px;
    }
    .benefit-nav ul {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .benefit-nav ul li {
        float: left;
        background: var(--color-white);
        color: var(--color-orange);
        font-size: var(--font-size-sm);
        text-align: center;
        width: 32.22%;
        height: 105px;
        margin: 3px;
        cursor: pointer;
        padding-top: 75px;
        box-sizing: border-box;
        position: relative;
    }
    .benefit-nav ul li {
        background-position: center center !important;
    }
    .benefit-mobile:hover:after,
    .benefit-mobile.active:after,
    .benefit-nav ul li:after,
    .benefit-mobile:after {
        display: none;
    }
    .benefit-nav ul li span {
        display: none;
    }
    .benefit-content .column {
        margin: 70px 0 70px 0;
        padding: 0 5%;
    }
}

@media only screen and (max-width: 466px) {
    .benefit-nav ul li {
        width: 31.5%;
    }
}

@media only screen and (max-width: 800px) {
    #site-id-13 .img-text-teaser .text-content {
        padding: 0 5%;
    }
    #site-id-13 .img-text-teaser img {
        margin-top: -40px;
        margin-bottom: 30px;
    }
    .html-5-trainings .flex-item .img-box {
        width: 15%;
    }
    .webinarimg {
        width: 100%;
        margin: 50px 0;
    }
    .trainingsprodukte-teaser-box button.gh_btn_blau {
        margin-top: 44px;
    }
    #site-id-6 .img-right-teaser .col-left {
        margin: 0;
        max-width: 50%;
    }
    .trainingsprodukt-slider .items {}
    ul.sorted-list li {
        margin-left: 11px;
    }
    .trainingsprodukt-slider .column {
        padding: 0;
    }
    .trainingsprodukt-slider .left .slider-wrapper {
        width: 100%;
    }
    .trainingsprodukt-slider .left {
        float: none;
        width: 100%;
        padding: 0 5%;
        box-sizing: border-box;
    }
    .trainingsprodukt-slider .left {
        float: none;
        width: 100%;
    }
    .trainingsprodukt-slider .slider-wrapper {
        background: none;
        height: 460px;
        margin: 0 auto;
        width: 80%;
    }
    .trainingsprodukt-slider .items {
        position: absolute;
        width: 80%;
        padding: 5%;
        box-sizing: border-box;
    }
    .trainingsprodukt-slider .right {
        width: 100%;
        float: none;
        padding: 20px 5%;
        box-sizing: border-box;
    }
    .img-text-teaser img {
        width: 50%;
        margin: 0 auto;
        padding: 5%;
        text-align: center;
        float: none;
    }
    #site-id-9 .img-text-teaser img {
        margin-top: -55px;
        margin-bottom: 55px;
    }
    .jingjang-text p {
        width: 100%;
    }
    .img-text-teaser .text-content {
        display: inline-table;
    }
    .landingpage #column-4 {
        min-height: inherit;
    }
    .branchen-container {
        width: 48% !important;
        height: 140px !Important;
    }
    .landingpage #column-1 {
        width: 100%;
    }
    .landingpage #column-6 {
        width: 100%;
        margin: 0 0 27px 0 !Important;
    }
    .landingpage #column-2,
    .landingpage #column-3 {
        width: 50%;
    }
    .landingpage.wrapper.main-wrapper {
        margin-bottom: 0 !important;
    }
    .landingpage #column-4 {
        width: 50%;
        margin: 55px 0 115px 0 !Important;
    }
    .landingpage #column-5 {
        width: 50%;
        margin-top: 0px !important;
    }
}

@media only screen and (max-width: 875px) {
    #site-id-1 .mission .column .left {
        max-width: 100%;
        float: none;
    }
    .mission .forkids.column .left img {
        width: 100% !important;
    }
    #site-id-1 .mission .column .right {
        max-width: 100%;
        float: none;
    }
    .img-text-teaser .column .cf_mineshaft {
        text-align: center;
    }
    .img-text-teaser .text-content {
        padding: 5%;
    }
    .img-text-teaser img,
    {
        width: 50% !important;
        padding: 0% 5% 5% 5%;
        text-align: center;
        margin: 0 auto !important;
        float: none;
    }

    .wrapper.mission {
        margin-top: 5px;
    }
    .teaser-50-50 .teaser-left,
    .teaser-50-50 .teaser-right {
        max-width: 100%;
        width: 100%;
        margin: 0;
        padding: 10px 32px;
        box-sizing: border-box;
    }
    .mission .column.col-12 {
        margin: 0;
        padding: 50px 0 60px 0;
    }
    .mission .column .left {
        float: left;
        padding: 0 32px;
        max-width: 100%;
        width: 100%;
        box-sizing: border-box;
    }
    #site-id-5 .column.col-12.cbg_white {
        padding: 50px 0 40px 0;
    }
    .mission .column .left h2 {
        margin-bottom: 30px;
    }
    #site-id-5 .mission .column .left h2 {
        font-size: var(--font-size-3xl);
        font-family: var(--font-base); font-weight: var(--font-weight-light);
        line-height: 36px;
        margin-bottom: 20px;
        text-align: left;
    }
    .tab-links li {
        padding: 21px;
    }
    .tab-links li.litab1 {
        padding: 13px;
    }
    .landingpage .tab-links li.litab1 {
        padding: 21px;
    }
    .tab-links a {
        font-size: var(--font-size-xs);
    }
    .fact-table .factsheet div h2 {
        font-size: 19px;
    }
    .select-style {
        padding: 5px 4px 3px 5px;
        margin: 0;
        border: none;
        width: auto;
        overflow: hidden;
        background-color: var(--color-white);
        background: url(../img/pfeil-grau.png) no-repeat right var(--color-white);
        border-radius: var(--radius-sm);
        float: none;
        background-size: 26px;
    }
    section.mood-img.consulting-training-img img {
        width: 100%;
        margin-top: -120px;
    }
}

@media only screen and (max-width: 850px) {
    #site-id-26 .boilerplate-orange .wrapper h4 {
        font-size: 1.7em;
        text-align: center;
    }
    .english .boilerplate-orange .wrapper .column {
        text-align: center;
    }
    .english .boilerplate-orange .wrapper h4 {
        font-size: 1.7em;
        text-align: center;
    }
    .english .boilerplate-orange button.gh_btn_orange {
        float: none;
        margin: 30px 0;
    }
    .english .boilerplate-orange p {
        text-align: center;
    }
    #site-id-26 .boilerplate-orange p {
        text-align: center;
    }
    #site-id-26 .boilerplate-orange .wrapper .column {
        text-align: center;
    }
    #site-id-26 .boilerplate-orange button.gh_btn_orange {
        float: none;
        margin: 30px 0;
    }
}

@media only screen and (max-width: 780px) {
    .job-container .job-offer.column {
        height: auto;
    }
    .offers-1 {
        display: inline;
    }
    .offers-3,
    .offers-2 {
        display: none;
    }
}

@media only screen and (max-width: 800px) {
    .stellen-teaser .content {
        flex-direction: column;
    }
    .stellen-teaser .content .span,
    .stellen-teaser .content p {
        text-align: center;
    }
    .job-counter {
        font-size: 85px;
        text-align: center;
        display: block;
    }
    .offer-counter .job-counter {
        text-align: left;
        display: inline;
    }
    .stellen-teaser span.read-more {
        display: inline-block;
        text-align: center;
    }
    .stellen-teaser .content .flex-2 {
        text-align: center;
    }
}

@media only screen and (max-width: 750px) {
    .trainingsprodukte-teaser-box button.gh_btn_blau {
        margin-top: 20px;
    }
    .tab-links a {
        float: left;
    }
    .standort-tab .tab-links a {
        min-height: 54px;
    }
    .academymaker .tab-links a {
        float: none;
    }
    .logo-container {
        background-color: var(--color-white);
        background-image: url(../img/kundenreferenzen-link-gradient.png);
        background-repeat: repeat-x;
        background-position: -50px -20px;
        padding: 50px 2px 50px 2px;
        transition: background-color 0.5s ease;
    }
    .text-teaser .wrapper .column {
        padding: 0px 50px;
        margin: 40px 0 90px 0;
    }
    .trainingsprodukte-teaser-box .wrapper .column {
        padding: 30px 5% 70px 5%;
        margin: 0px 0;
    }
    .trainingsprodukte-teaser-box .left p {
        text-align: left;
        font-size: var(--font-size-base);
        line-height: 28px;
    }
    .trainingsprodukte-teaser-box .right,
    .trainingsprodukte-teaser-box .left {
        float: none;
        width: 100%;
        text-align: left;
    }
    .overview {
        padding: 50px 5% 0 5%;
    }
    .trainingsprodukt-slider .slider-wrapper {
        height: 400px;
    }
    .trainingsprodukt-slider .column {
        margin: 30px 0;
    }
    .landingpage .tab-links li {
        padding: 21px
    }
    .boilerplate-orange .wrapper h4 {
        font-size: 1.7em;
        text-align: center;
    }
    .boilerplate-orange p {
        text-align: center;
    }
    .boilerplate-orange .wrapper .column {
        text-align: center;
    }
    .boilerplate-orange button.gh_btn_orange {
        float: none;
        margin: 30px 0;
    }
    .landingpage #column-4,
    .landingpage #column-5 {
        width: 100%;
        margin: 0 0 27px 0 !Important;
    }
    .lp .landingpage #column-4 {
        width: 100%;
        margin: 0 0 27px 0 !Important;
    }
    .landingpage #column-1 {
        width: 100%;
    }
    #site-id-6 .img-right-teaser .col-left {
        margin: 0;
        max-width: 100%;
    }
    #site-id-6 .img-right-teaser .col-right {
        text-align: center;
    }
    #site-id-6 .img-right-teaser .col-right img {
        width: 50%;
        padding: 0 !important;
    }
    #site-id-6 .img-right-teaser .col-12 {
        margin: 20px 0 100px 0 !important;
    }
    .job-offer {
        padding: 60px 47px;
        margin: 10px 0;
        width: 100%;
        box-sizing: border-box;
    }
    section.boilerplate.ununu-teaser .column.col-7 {
        width: 45.333333%;
    }
    section.boilerplate.ununu-teaser .column.col-5 {
        margin-top: 80px;
    }
    section.boilerplate .column {
        width: 100%;
    }
    .boilerplate .wrapper {
        padding: 5% 5% 40px 5%;
    }
    section.boilerplate .column.col-8 {
        padding: 0;
        margin-top: 5%;
    }
    .boilerplate .wrapper {
        height: auto;
    }
    section.boilerplate input,
    section.boilerplate .no-margin,
    section.boilerplate .company,
    section.boilerplate .mail {
        width: 100%;
        margin: 10px 0 0 0;
    }
    section.boilerplate input {
        width: 100% !important;
        margin: 0 0 10px 0 !important;
    }
    .boilerplate .wrapper {
        min-height: 560px !important;
    }
    .boilerplate.ununu-teaser .wrapper {
        height: auto !important;
        min-height: inherit !important;
        padding: 30px 0 60px 0;
    }
    .boilerplate.ununu-teaser.support-teaser .wrapper {
        padding: 30px 5% 60px 5%;
    }
    .copyright {
        text-align: center;
        width: 100%;
    }
    .select-style {
        padding: 5px 4px 3px 5px;
        margin: 0;
        border: none;
        width: auto;
        overflow: hidden;
        background-color: var(--color-white);
        background: url(../img/pfeil-grau.png) no-repeat right var(--color-white);
        border-radius: var(--radius-sm);
        float: none;
        background-size: 26px;
    }
    .img-left-teaser {
        margin-bottom: 0px !important;
    }
    .img-left-teaser .col-left,
    .img-right-teaser .col-left,
    .img-right-teaser .col-right {
        margin: 0;
        width: 100%;
        max-width: 100%;
    }
    .img-left-teaser .col-right,
    .img-right-teaser .col-left {
        width: 100%;
        max-width: 100%;
        padding: 5%;
    }
    .img-left-teaser .col-left img,
    .img-right-teaser .col-right img {
        width: 100%;
    }
    .img-text-teaser {
        margin-bottom: 0px !important;
    }
    .copyright {
        margin-bottom: 20px;
    }
}

@media only screen and (max-width: 710px) {
    .DuC .subline {
        margin-top: 20px;
    }
}

@media only screen and (max-width: 760px) {
    .contact.flex {
        flex-direction: column;
    }

    .contact input[type="submit"] {
        margin: 10px 0px 0 0;
    }
}

@media only screen and (max-width: 700px) {
    .column.logo-carousel,
    .column.logo-carousel-big {
        height: 30px;
        margin: 20px 0;
        padding: 0 5%;
    }
    .benifit-container {
        padding: 20px 0;
    }
    .benifit-container.cbg_wildsand {
        background-color: var(--color-white);
    }
    .benifit-container.left-right .left,
    .benifit-container.right-left .right {
        display: none;
    }
    .benifit-container.left-right .right,
    .benifit-container.right-left .left {
        width: 100% !important;
    }
    section.boilerplate.ununu-teaser .column.col-7 {
        width: 100%;
    }
    section.boilerplate.ununu-teaser .column.col-5 {
        width: 100%;
        text-align: center;
        margin-top: 20px;
    }
    .boilerplate.ununu-teaser img {
        float: none;
        width: 100% !important;
    }
    .boilerplate.ununu-teaser {
        margin: 8px 0 48px 0;
    }
    .mission .column .left {
        float: left;
        padding: 0 5%;
        max-width: 100%;
        box-sizing: border-box;
    }
    .mission .column .left h2 {
        font-size: 28px;
        font-family: var(--font-base); font-weight: var(--font-weight-light);
        line-height: 32px;
        margin-bottom: 30px;
    }
    .mission .column .right {
        float: left;
        padding: 0 5% !important;
        max-width: 100%;
        box-sizing: border-box;
    }
    #site-id-25 .testimonial-teaser.col-5 {
        max-width: 100% !important;
        width: 100% !important;
        margin: 0px !important;
    }
    #site-id-25 .testimonial-teaser.col-4 {
        max-width: 100% !important;
        width: 100% !important;
        margin: 0px !important;
    }
    #site-id-25 .testimonial-teaser.col-6 {
        max-width: 100% !important;
        width: 100% !important;
        margin: 0px;
    }
    #site-id-25 .testimonial-teaser.col-7 {
        max-width: 100% !important;
        width: 100% !important;
        margin: 0px !important;
    }
    #site-id-25 .testimonial-teaser.col-8 {
        max-width: 100% !important;
        width: 100% !important;
        margin: 0px !important;
    }
    .testimonial-teaser-slider,
    .testimonial-teaser {
        margin: 0px !important;
    }
    #site-id-25 .column.col-12.cbg_white.cf_mineshaft1 {
        margin: 0 !important;
    }
    .content-nach-mass .column .left,
    .content-nach-mass .column .right {
        float: none;
        padding: 0 5% 0 5%;
    }
    .content-nach-mass .column .right {
        max-width: 100%;
    }
    .content-nach-mass .column .left h2 {
        margin-bottom: 30px;
    }
    .wrapper.DuC.main-wrapper.clearfix {
        margin-top: 0px !important;
    }
}

@media only screen and (min-width: 1000px) {
    #mobile-menu {
        display: none !Important;
    }
}

@media only screen and (max-width: 600px) {
    #site-id-23 .col-9_5 {
        width: 100% !important;
    }
    .trainingsprodukt-vorteile {
        padding: 50px 32px;
        margin-top: -50px;
    }
    body,
    html {
        overflow-x: hidden;
    }
    .testimonial-teaser-box .item {
        width: 100%;
        padding: 5%;
        margin: 0;
        box-sizing: border-box;
        margin-top: 20px;
    }
    .testimonial-teaser-box.interview-frage .item {
        width: 100%;
        padding: 5%;
        margin: 0;
        box-sizing: border-box;
        margin-top: 20px;
    }
    .academymaker-logo {
        top: 50px;
    }
    .themen-formate-wrapper {
        height: 737px;
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .themen-box,
    .formate-box {
        position: relative;
        top: 0 !important;
        left: 0 !important;
        float: none;
        width: 100%;
        padding: 5%;
    }
    .logo-container {
        background-image: url('../img/kundenreferenzen-link-gradient_mobile.png');
        background-position: bottom;
        padding: 20px 0 30px 0;
    }
    .img-teaser .desktop-hidden img,
    .img-logo-teaser .desktop-hidden img {
        width: 40%;
        float: left;
        padding: 5%;
    }
    .DuC .subline {
        margin-top: 60px;
        margin-bottom: 30px;
        margin-left: 5%;
    }
    .teaser-marketing {
        width: 100%;
    }
    .img-left-teaser .col-left,
    .img-right-teaser .col-right {
        display: none;
    }
    .testimonials-titel {
        margin-left: 45px;
    }
    #site-id-19 .img-right-teaser .col-left {
        margin-top: 40px;
    }
    #site-id-19 .wrapper.img-right-teaser.clearfix {
        margin-bottom: 50px !important;
    }
    .modul .right h2 {
        text-align: center;
        line-height: 26px;
    }
    .modul .right p {
        text-align: center;
    }
    .tech-table table tbody tr {
        width: 100%;
        float: left;
    }
    .img-text-teaser img {
        width: 70% !important;
        padding: 5%;
        text-align: center;
        float: none;
    }
    #site-id-9 .img-text-teaser img {
        margin-bottom: 55px !important;
    }
    #site-id-19 #column-7 {
        margin-top: 0 !important;
    }
    .trainingsprodukt-vorteile ul.sorted-list li {
        margin-left: 11px;
    }
    .trainingsprodukt-vorteile .column {
        padding: 0 0px;
    }
    .trainingsprodukte-teaser-box button.gh_btn_blau {
        margin-top: 20px;
    }
    .trainings-image {
        display: block;
    }
    .trainings-image img {
        width: 100%;
    }
    #trainings-wrapper {
        padding: 0 5% 30px 5%;
        margin: 20px 0 90px 0;
    }
    #trainings-wrapper h3,
    #trainings-wrapper h3 a,
    #trainings-wrapper h3 a:hover {
        color: var(--color-text);
        font-weight: normal;
        font-family: var(--font-base); font-weight: var(--font-weight-light);
        font-size: var(--font-size-xl);
        text-decoration: none;
        line-height: 26px;
    }
    .trainingsprodukte .icon {
        width: 44px;
        height: 59px;
        position: absolute;
        top: 62px;
    }
    .trainingsprodukt-slider .right .slider-wrapper {
        width: 100%;
    }
    .trainingsprodukt-vorteile .left,
    .trainingsprodukt-vorteile .right {
        width: 100%;
        float: none;
    }
    .trainingsprodukt-slider .slider-wrapper,
    .trainingsprodukt-slider .items {
        width: 90%;
    }
    .trainingsprodukt-slider .slider-wrapper {
        height: 330px;
    }
    .trainingsprodukt-vorteile {
        padding: 60px 5%;
    }
    .logo-carousel-landingpage {
        height: auto;
    }
    .teaser-contact h2 {
        margin-bottom: 10px;
    }
    .content-slider-navigation,
    .job-slider-navigation {
        display: block;
        height: 63px;
        background: url('../img/slider-bg.png') 33px 27px no-repeat;
    }
    .job-slider-navigation {
        background: none;
        float: none;
        margin: 30px 0 0 0;
        position: absolute;
        z-index: 99999999;
        top: 82px;
        right: 0;
    }
    .job-offer.column {
        height: auto;
        padding: 100px 40px 60px 40px;
        margin-top: 30px;
        width: 100vw;
    }
    .unternehmen .job-slider {
        margin-top: 0px;
        padding-right: 0px;
    }
    .jobs h2 {
        padding-left: 5%;
    }
    .jobs .slider {
        padding: 0 !important;
        float: left;
    }
    #site-id-25 #column-1 .content {
        padding: 32px 5% 5% 5%;
    }
    #site-id-25 .testimonial-teaser .content {
        padding: 37px 0;
    }
    #trainings-wrapper .product .right {
        float: none;
        width: 100%;
        padding: 0 0 0 0%;
        margin-top: 25px;
    }
    #trainings-wrapper .product .left {
        float: none;
        width: 100%;
        text-align: center;
    }
    #trainings-wrapper h2 {
        color: var(--color-text);
        font-weight: normal;
        font-family: var(--font-base); font-weight: var(--font-weight-light);
        font-size: var(--font-size-3xl);
        padding: 50px 0px;
        line-height: 40px;
        text-align: center;
        line-height: 41px;
    }
    .landingpage #column-2,
    .landingpage #column-3 {
        width: 100%;
    }
    .unternehmen #column-2 {
        margin: 0 0 27px 0 !Important
    }
    .unternehmen #column-2.freiestellen-teaser {
        margin: 45px 0 -63px 0 !Important
    }
    .slider {
        padding: 0px 5% 48px 5% !Important
    }
    .news-slider-wrapper .column.cbg_white {
        background-color: var(--color-bg-light) !important;
        padding-bottom: 60px;
    }
    .text-teaser.col-3.cbg_orange {
        margin-bottom: 26px;
    }
    #site-id-10 #column-2 .content {
        padding: 32px 5%;
    }
    .two-cols-content .col-left,
    .two-cols-content .col-right {
        float: none;
        width: 100%
    }
    .two-cols-content ul.sorted-list li {
        margin-left: 0px;
    }
    .img-left-teaser,
    .img-right-teaser {
        margin-top: 0 !important;
    }
    .training .img-left-teaser {
        margin-top: 0px !Important;
    }
    .stellenanzeige .job-navi {
        top: 48px;
    }
    .wrapper.mission {
        margin-top: 0;
    }
    .mobile-visible {
        display: block !important;
    }
    .mobile-visible.text-teaser {
        width: 93% !important;
        margin: 3% 3% 5% 3% !important;
        margin-top: 26px !important;
        margin-bottom: 26px !important;
    }
    #site-id-5 .mobile-visible {
        margin-top: 27px !important;
        margin-bottom: 27px !important;
    }
    .mobile-visible.text-teaser p {
        text-align: center;
    }
    .mobile-hidden {
        display: none !important;
    }
    .desktop-hidden {
        display: block !important;
    }
    .img-text-teaser {
        margin-top: 0 !important;
    }
    .testimonial-teaser-slider {
        padding: 80px 5%;
    }
    .testimonial-teaser {
        padding: 0 5%;
        float: none;
        width: 100%;
    }
    .slider.roi-slider {
        padding: 0 5% !Important;
    }
    #column-2 #teaser-2.img-teaser {
        display: none;
    }
    .referenzen #column-2 #teaser-2.img-teaser {
        display: block;
    }
    .referenzen .img-teaser .content {
        padding: 25px 30px 40px 30px;
    }
    #site-id-22 #column-2 #teaser-2.img-teaser {
        display: block;
    }
    .boilerplate .wrapper {
        min-height: 700px !important;
    }
    .content h1 {
        font-size: 1.8em;
    }
    .boilerplate {
        margin-top: 40px;
        padding:0;
    }
    .stellenanzeige .job-flag {
        margin: 86px 0px -10px 5%;
    }
    .wrapper.center-headline h2 {
        margin: 0px 0px -45px;
    }
    .teaser-contact .wrapper .column {
        padding: 46px 5%;
    }

    .teaser-contact {
        margin: 0 0 20px 0;
    }
    .teaser-contact .wrapper .column .teaser-left {
        width: 100%;
        float: none;
    }
    .teaser-contact .wrapper h2,
    .teaser-contact .wrapper p,
    .teaser-contact .wrapper a {
        text-align: center;
    }
    .teaser-contact .wrapper a.button {
        background-image: none;
    }
    .teaser-contact .wrapper .column .teaser-right {
        margin-top: 20px;
        width: 100%;
        text-align: center;
    }
    .column.logo-carousel,
    .column.logo-carousel-landingpage,
    .column.logo-carousel-big {
        height: 30px;
        margin: 20px 0;
        padding: 0 5%;
    }
    .text-teaser .wrapper .column {
        padding: 0;
        margin: 20px 0;
    }
    .wrapper.center-headline {
        padding: 0 5%;
        margin-bottom: 81px;
    }
    .mission .column.col-12 {
        margin: 33px 0 33px 0 !Important;
    }
    .mission .column.col-12.cbg_white {
        margin: -33px 0 !Important;
    }
    .mission .column.col-12.cbg_wildsand {
        margin: 13px 0 33px 0px !Important;
    }
    .text-teaser {
        padding: 5%;
    }
    .boilerplate .wrapper h4 {
        margin-top: 30px;
    }
    .text-teaser-facts .wrapper .column {
        padding: 50px 5% 50px 5%;
    }
    section.mood-img.consulting-training-img img {
        width: 100%;
        margin-top: -200px;
    }
    #site-id-13 .img-text-teaser {
        margin-bottom: 0px !Important;
    }
    .teaser-50-50 .teaser-left,
    .teaser-50-50 .teaser-right {
        max-width: 100%;
        width: 100%;
        margin: 0;
        padding: 10px 5%;
        box-sizing: border-box;
    }
    .select-style {
        padding: 5px 4px 3px 5px;
        margin: 20px 0 0 0;
        border: none;
        width: auto;
        overflow: hidden;
        background-color: var(--color-white);
        background: url(../img/pfeil-grau.png) no-repeat right var(--color-white);
        border-radius: var(--radius-sm);
        float: none;
        background-size: 26px;
    }
    .filter .wrapper {
        padding: 0;
    }
    .filter h1,
    .filter h2,
    .filter h3,
    .filter h4,
    .filter h5 {
        margin-bottom: 45px;
        margin-top: 45px;
        padding: 0 5%;
        text-align: center;
    }
    section.filter .column {
        padding: 5% 5% 9% 5%;
    }
    .costumer-list {
        padding: 0 5%;
    }

    .content,
    .stellenanzeige .content {
        padding: 0px 5%;
    }
    .mood-img {
        display: none;
    }
    .hamburger {
        display: block;
    }
    section.tablet-menu .col-4 {
        width: 100%;
        margin: 0;
        height: auto;
    }
    section.tablet-menu .col-4.no-margin {
        width: 100%;
    }
    .request-box.cbg_orange,
    .request-box.cbg_orange.box-open {
        top: 72px;
        right: 0;
        height: 44px;
        width: 100%;
        z-index: 99999;
    }
    .request-box .mobile span {
        font-size: 0.688em;
        text-transform: uppercase;
        padding: 23px 0 0 73px;
        font-family: var(--font-base); font-weight: var(--font-weight-semi);
        background: url(../img/request-white.png) 27px 23px no-repeat;
        display: block;
        width: 100%;
        box-sizing: border-box;
        height: 52px;
        cursor: pointer;
        color: var(--color-white);
        font-size: var(--font-size-sm);
    }
    .sitemap_left {
        max-width: 77%;
        float: left;
    }
    .sitemap_right {
        float: right;
        width: 50px;
        margin-left: 10%;
    }
    .mobileanfrage {
        width: 100%;
        margin-top: -11px !important;
        padding-top: 0px;
        padding-right: 0px !important;
        height: 28px;
    }
    .mobileanfrage span {
        text-transform: capitalize ! important;
    }
    .request-box .box-content {
        display: none;
    }
    .request-box .home span,
    .request-box .tablet span {
        display: none;
    }
    .request-box.cbg_orange.cf_white {
        background-color: var(--color-orange);
    }
    .utility-nav .request-box a {
        background-image: none;
        margin: 0;
        font-size: var(--font-size-sm);
    }
    .utility-nav .request-box a:hover {
        text-decoration: underline ! important;
    }
    section.sitemap .col-4 {
        width: 100%;
        margin: 0;
        height: auto;
    }
    section.sitemap .col-4.no-margin {
        width: 100%;
    }
    footer .wrapper ul li {}
    .sitemap .wrapper {
        margin-top: 0;
    }
    .wrapper.main-wrapper {
        margin-top: 0px !important;
    }
    .wrapper.jobs.main-wrapper {
        margin-top: 20px !important;
    }
    .wrapper.main-wrapper.academymaker {
        margin-top: 45px !important;
    }
    .column.main-column {
        margin-top: 50px;
    }
    #site-id-19 .column.main-column {
        margin-top: 0;
    }
    #contact-site {
        margin-top: 0px;
    }
    .text-teaser-facts {
        width: auto;
    }
    .text-teaser-facts .wrapper .column p {
        text-align: left;
    }
    .text-teaser-facts .wrapper .column {
        padding: 70px 20px 70px 20px;
    }
    .tab-links li.litab1 {
        padding: 21px;
    }
    .wrapper.managment-teaser-wrapper .right {
        display: none;
    }
    .managment-teaser-wrapper .left {
        max-width: 100%;
        padding: 0px 5%;
        margin: 0;
    }
    .wrapper.news-slider-wrapper.clearfix .column.col-12 {
        margin-bottom: 0px !important;
    }
    .boilerplate-orange button.gh_btn_orange {
        float: none;
        margin: 30px 0;
    }
    .branchen-container {
        width: 100% !important;
        height: auto !Important;
        float: none;
    }
    .responsive-teaser .left,
    .responsive-teaser .right {
        width: 100%;
        float: none;
    }
    .responsive-teaser .left {
        width: 50%;
        margin: 0 auto;
        margin-bottom: 30px;
        margin-top: 30px;
    }
    .responsive-teaser.wrapper {
        margin-top: 10px;
        margin-bottom: 20px;
    }
    .col-right.DuC,
    .col-left.DuC {
        padding-left: 4%;
    }
    .html-5-trainings-slider-container .flex {
        padding: 8%;
        flex-direction: column;
        max-height: 230px;
        min-height: 500px;
    }

    .DuCabsatz {
        margin-top: 20px;
        margin-bottom: -20px;
    }
}

@media only screen and (max-width: 555px) {
    .benefit-nav ul li {
        width: 32%;
    }
    .html-5-trainings.flex.trainingsprodukt-vorteile {
        flex-direction: column;
    }
    .html-5-trainings .flex-item .img-box {
        width: 20%;
    }
    .trainingsprodukt-vorteile h3 {
        margin-bottom: 15px;
    }
    .html-5-trainings-slider-container {
        margin: 0;
    }
    .html-5-trainings-slider-container .flex {
        padding: 8%;
        flex-direction: column;
        max-height: 230px;
        min-height: 500px;
    }
    .html-5-trainings-slider-container .flex h2 {
        margin: 20px 0 10px 0;
    }
}

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

    .trainingsprodukt-slider .slider-wrapper {
        height: 240px;
    }
}

@media only screen and (max-width: 450px) {
    .modul .left {
        float: none;
        width: 35%;
        padding-top: 12px;
        margin: 0 auto;
        margin-bottom: 30px;
    }
    .modul .right {
        width: 100%;
        float: none;
        margin-bottom: 10px;
    }
    .benefit-wrapper {
        margin: 30px 0 0 0;
    }
    .html-5-trainings.flex {
        flex-direction: column;
        padding: 10px 0 70px 0;
    }
    .html-5-trainings.flex.trainingsprodukt-vorteile {
        padding: 30% 5%;
    }
    .html-5-trainings.flex .flex-item {
        margin: 10px 0 0 0;
    }
}

@media only screen and (max-width: 332px) {
    .standort-tab .litab1 {
        min-height: 54px;
    }
}

#back-to-top {
    width: 60px;
    height: 60px;
    background: url(../img/back-to-top.png) center center no-repeat #f9f9f9;
    background-size: 12px;
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 40px;
    margin: 20px;
    cursor: pointer;
    opacity: 0;
    transition: all 0.6s ease-in-out;
}

#back-to-top:hover {
    background-color: #eaeaea;
}

#back-to-top.show {
    opacity: 1;
}

.hamburglar {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    margin: 4px 0px 0px 0px;
    position: relative;
    display: none;
    cursor: pointer;
    width: 68px;
    height: 68px;
    background: var(--color-white);
    z-index: 9999;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: background-color 0.6s ease-in-out;
}

.path-burger {
    position: absolute;
    top: 0;
    left: 0;
    height: 38px;
    width: 38px;
    -webkit-mask: url(#mask);
    mask: url(#mask);
    -webkit-mask-box-image: url(https://raygun.io/upload/mask.svg);
}

.animate-path {
    position: absolute;
    top: 0;
    left: 0;
    width: 38px;
    height: 38px;
}

.path-rotation {
    height: 34px;
    width: 34px;
    margin: 34px 34px 0 0;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    transform-origin: 100% 0;
}

.path-rotation:before {
    content: '';
    display: block;
    width: 30px;
    height: 34px;
    margin: 0 4px 0 0;
}

@keyframes rotate-out {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    40% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes rotate-in {
    0% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
    40% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

.path {
    stroke-dasharray: 240;
    stroke-dashoffset: 240;
    stroke-linejoin: round;
}

@keyframes dash-in {
    0% {
        stroke-dashoffset: 240;
    }
    40% {
        stroke-dashoffset: 240;
    }
    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes dash-out {
    0% {
        stroke-dashoffset: 0;
    }
    40% {
        stroke-dashoffset: 240;
    }
    100% {
        stroke-dashoffset: 240;
    }
}

.burger-icon {
    position: absolute;
    padding: 24px 0 0 16px;
    height: 38px;
    width: 38px;
}

.burger-container {
    position: relative;
    height: 12px;
    width: 19px;
}

.burger-bun-top,
.burger-bun-bot,
.burger-filling {
    position: absolute;
    display: block;
    height: 2px;
    width: 19px;
    border-radius: 2px;
    background: var(--color-grey-text);
}

.is-open-tab .burger-bun-top,
.is-open-tab .burger-bun-bot,
.is-open-tab .burger-filling {
    position: absolute;
    display: block;
    height: 2px;
    width: 19px;
    border-radius: 2px;
    background: var(--color-grey-text);
}

.is-open-mob .burger-bun-top,
.is-open-mob .burger-bun-bot,
.is-open-mob .burger-filling {
    position: absolute;
    display: block;
    height: 2px;
    width: 19px;
    border-radius: 2px;
    background: var(--color-grey-text);
}

.is-closed .burger-bun-top,
.is-closed .burger-bun-bot,
.is-closed .burger-filling {
    position: absolute;
    display: block;
    height: 2px;
    width: 19px;
    border-radius: 2px;
    background: var(--color-grey-text);
}

.is-open-tab.hamburglar {
    background: var(--color-bg-light);
}

.is-open-mob.hamburglar {
    background: var(--color-white);
}

.is-closed.hamburglar {
    background: var(--color-white);
}

.burger-bun-top {
    top: 0;
    -webkit-transform-origin: 20px 3px;
    -ms-transform-origin: 20px 3px;
    transform-origin: 20px 3px;
}

.burger-bun-bot {
    bottom: 5px;
    -webkit-transform-origin: 11px 3px;
    -ms-transform-origin: 11px 3px;
    transform-origin: 11px 3px;
}

.burger-filling {
    top: 5px;
}

.burger-bun-bot {
    top: 10px;
}

.burger-ring {
    position: absolute;
    top: 0;
    left: 0;
    width: 38px;
    height: 38px;
}

.svg-ring {
    width: 38px;
    height: 38px;
}

@keyframes bun-top-out {
    0% {
        left: 0;
        top: 0;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    20% {
        left: 0;
        top: 0;
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    80% {
        left: -5px;
        top: 0;
        -webkit-transform: rotate(-60deg);
        transform: rotate(-60deg);
    }
    100% {
        left: -5px;
        top: 1px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

@keyframes bun-bot-out {
    0% {
        left: 0;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    20% {
        left: 0;
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg);
    }
    80% {
        left: -5px;
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
    }
    100% {
        left: -5px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
}

@keyframes bun-top-in {
    0% {
        left: -5px;
        bot: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    20% {
        left: -5px;
        bot: 0;
        -webkit-transform: rotate(-60deg);
        transform: rotate(-60deg);
    }
    80% {
        left: 0;
        bot: 0;
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    100% {
        left: 0;
        bot: 1px;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@keyframes bun-bot-in {
    0% {
        left: -5px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    20% {
        left: -5px;
        bot: 0;
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
    }
    80% {
        left: 0;
        bot: 0;
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg);
    }
    100% {
        left: 0;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@keyframes burger-fill-in {
    0% {
        width: 0;
        left: 36px;
    }
    40% {
        width: 0;
        left: 40px;
    }
    80% {
        width: 19px;
        left: -6px;
    }
    100% {
        width: 19px;
        left: 0px;
    }
}

@keyframes burger-fill-out {
    0% {
        width: 19px;
        left: 0px;
    }
    20% {
        width: 23px;
        left: -6px;
    }
    40% {
        width: 0;
        left: 40px;
    }
    100% {
        width: 0;
        left: 36px;
    }
}

#x-cell-map {
    height: 285px;
    width: 100%;
}

.gm-style-iw * {
    display: block;
}

.gm-style-iw h4,
.gm-style-iw a {
    font-size: var(--font-size-sm);
    font-family: var(--font-base);
}

.gm-style-iw .trenner {
    margin: 0 10px 0 10px;
    color: var(--color-text);
    font-family: var(--font-base);
}

.gm-style-iw h4 {
    margin: 0 0 15px 0 !important;
}

.gm-style-iw h4,
.gm-style-iw p {
    margin: 0;
    padding: 0;
    color: var(--color-text);
}

.gm-style-iw ul li {
    float: left;
}

.gm-style-iw a {
    color: var(--color-orange);
}

.responsive-table {
    width: 101%;
    margin-bottom: 1.5em;
}

.responsive-table thead {
    position: absolute;
    clip: rect(1px 1px 1px 1px);
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0;
    border: 0;
    height: 1px;
    width: 1px;
    overflow: hidden;
}

@media (min-width: 48em) {
    .responsive-table thead {
        position: relative;
        clip: auto;
        height: auto;
        width: auto;
        overflow: auto;
    }
}

.responsive-table thead th {
    border: none;
    font-weight: normal;
    text-align: left;
    border-top: 1px solid #d7d7d7;
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: 0.875em;
}

.responsive-table thead th:first-of-type {
    text-align: left;
}

.responsive-table tbody,
.responsive-table tr,
.responsive-table th,
.responsive-table td {
    display: block;
    padding: 0;
    text-align: left;
    white-space: normal;
}

.tech-table table tbody tr th p {
    font-size: var(--font-size-sm);
}

@media (min-width: 48em) {
    .responsive-table tr {
        display: table-row;
    }
}

@media (min-width: 30em) {
    .responsive-table th,
    .responsive-table td {
        padding: .75em .5em;
    }
}

@media (min-width: 48em) {
    .responsive-table th,
    .responsive-table td {
        display: table-cell;
        padding: .5em;
    }
}

@media (min-width: 62em) {
    .responsive-table th,
    .responsive-table td {
        padding: .75em .5em;
    }
}

@media (min-width: 75em) {
    .responsive-table th,
    .responsive-table td {
        padding: .75em;
    }
}

.responsive-table caption {
    margin-bottom: 1em;
    font-size: 1em;
    font-weight: bold;
    text-align: center;
}

@media (min-width: 48em) {
    .responsive-table caption {
        font-size: 1.5em;
    }
}

.responsive-table tfoot {
    font-size: .8em;
    font-style: italic;
}

@media (min-width: 62em) {
    .responsive-table tfoot {
        font-size: .9em;
    }
}

@media (min-width: 48em) {
    .responsive-table tbody {
        display: table-row-group;
    }
}

.responsive-table tbody tr {
    margin-bottom: 1em;
    border: none;
}

@media (min-width: 48em) {
    .responsive-table tbody tr {
        display: table-row;
        border-width: 1px;
    }
}

.responsive-table tbody tr:last-of-type {
    margin-bottom: 0;
}

.responsive-table tbody td[data-title]:before {
    content: attr(data-title);
    padding-right: 20px;
    font-weight: bold;
    display: inherit;
}

.tech-table .responsive-table tbody td[data-title]:before {
    padding-right: 100%;
}

@media (max-width: 48em) {
    .responsive-table tbody td[data-title]:before {
        display: inline-block;
    }
    #site-id-19 .tab-reiter ul li {
        width: 49.75%;
    }
    #site-id-19 .tab-reiter ul li:last-child {
        margin-left: 0.5% !important;
    }
    #site-id-19 .academymaker .tab-reiter ul {
        width: 100%;
    }
    .tech-table table tbody tr:nth-child(odd) {
        background: var(--color-white);
    }
    .tech-table table tbody tr th {
        background: var(--color-bg-light);
        vertical-align: middle;
        padding: 10px 20px;
    }
    .tech-table table tbody tr th p {
        border-bottom: 1px solid #d7d7d7;
        padding-bottom: 10px !important;
        margin-bottom: -10px;
    }
    .tech-table table tbody tr td {
        padding: 20px 0;
    }
    #table-1.tech-table table tbody tr th,
    #table-2.tech-table table tbody tr th {
        padding-left: 10px;
    }
    #table-1.tech-table table,
    #table-2.tech-table table {
        border-spacing: 0px;
    }
    #table-1.tech-table tr .last-row {
        border-bottom: 0px;
    }
    #table-1.tech-table table tbody tr th {
        padding: 10px;
    }
    #table-2.tech-table table tbody tr:nth-child(odd) td {
        background: var(--color-white);
        border: none;
    }
    #table-2.tech-table table tbody tr th {
        background: var(--color-bg-light);
        border-top: 1px solid #d7d7d7;
        border-bottom: 1px solid #d7d7d7;
    }
    .tab-slider .tech-table table td,
    .tab-slider .tech-table table th {
        border: none;
    }
    .tab-slider .tech-table .responsive-table tbody td[data-title]:before {
        padding-right: 20px;
    }
}

@media (min-width: 48em) {
    .responsive-table tbody td[data-title]:before {
        content: none;
    }
}

@media (min-width:1400px) {
    .kundenrefmargin {
        margin-top: -115px !important;
    }
}

@media (min-width:690px && max-width:1399px) {
.kundenrefmargin {
    margin-top: -55px !important;
}
}

.animation-svg-techberatung {
    width: 28%;
    margin: 0 52px 0 0;
    float: left;
}

.techberatung-circle {
    stroke-dashoffset: 200;
    animation: techberatung-circle 10.5s linear forwards;
}

@keyframes techberatung-circle {
    to {
        stroke-dashoffset: 0;
    }
}

.techberatung-stroke {
    stroke-dasharray: 3000;
    stroke-dashoffset: 3000;
    animation: techberatung-stroke 7s linear forwards;
}

.techberatung-stroke {
    animation-delay: 1s
}

@keyframes techberatung-stroke {
    to {
        stroke-dashoffset: 0;
    }
}

.techberatung-pfeilstroke {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: techberatung-pfeilstroke 10s linear forwards;
}

@keyframes techberatung-pfeilstroke {
    0% {
        stroke-dashoffset: 1000;
    }
    10% {
        stroke-dashoffset: 0;
    }
    35% {
        stroke: var(--color-grey-mid);
    }
    40% {
        stroke: var(--color-white);
        stroke-width: 5;
    }
    45% {
        stroke: var(--color-white);
        stroke-width: 0;
    }
    100% {
        stroke: var(--color-white);
    }
}

.techberatung-pfeilstroke {
    animation-delay: 6.7s
}

.techberatung-pfeilspitze {
    fill: var(--color-white);
    animation: techberatung-pfeilspitze 10s linear forwards;
}

@keyframes techberatung-pfeilspitze {
    0% {
        fill: var(--color-bg-light);
    }
    5% {
        fill: var(--color-grey-mid);
    }
    30% {
        fill: var(--color-grey-mid);
    }
    35% {
        fill: var(--color-white);
    }
}

.techberatung-pfeilspitze {
    animation-delay: 7.2s
}

.techberatung-strokecomplete {
    stroke: var(--color-white);
    animation: techberatung-strokecomplete 0.5s linear forwards;
}

@keyframes techberatung-strokecomplete {
    to {
        stroke: var(--color-grey-mid);
    }
}

.techberatung-strokecomplete {
    animation-delay: 10.2s
}

html[data-useragent*='MSIE 11.0'] .academymaker-logo {
    top: -20px;
}

html[data-useragent*='MSIE 10.0'] .share_btns .showSocialButtons {
    margin-left: 2px;
}

html[data-useragent*='MSIE 11.0'] .academymaker-logo {
    margin-left: 2px;
}

.st0 {
    display: none;
}

.st1 {
    display: inline;
    fill: none;
    stroke: #B2B2B2;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-miterlimit: 10;
}

.st2 {
    display: inline;
}

.st3 {
    fill: none;
    stroke: var(--color-orange);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.st4 {
    fill: var(--color-orange);
}

.st5 {
    fill: none;
    stroke: #B2B2B2;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-miterlimit: 10;
}

.st6 {
    fill: none;
    stroke: var(--color-orange);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#wall {
    opacity: 0;
    animation: wall-ani 1s linear forwards;
}

#arrow {
    opacity: 0;
    animation: arrow-ani 1s linear forwards;
    animation-delay: 2s;
}

#dashed {
    stroke-dasharray: 8.5;
}

#path {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: dash 5s linear forwards;
}

@keyframes dash {
    from {
        stroke-dashoffset: 1000;
    }
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes wall-ani {
    100% {
        opacity: 1;
    }
}

@keyframes arrow-ani {
    100% {
        opacity: 1;
    }
}

.st0-beratung {
    fill: none;
    stroke: var(--color-grey-mid);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-miterlimit: 10;
}

.st1-beratung {
    fill: none;
    stroke: #FF931E;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-miterlimit: 10;
    stroke-dasharray: 10.0477, 10.0477;
}

.st2-beratung {
    fill: var(--color-bg-light);
    stroke: var(--color-grey-mid);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-miterlimit: 10;
}

.st3-beratung {
    fill: var(--color-grey-mid);
}

#kreis-dash {
    stroke-dasharray: 8.5;
    stroke: var(--color-bg-light);
}

#kreis-path {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: dash 18s linear forwards;
}

#Kreis1 {
    opacity: 0;
    animation: kreis 1s linear forwards;
    animation-delay: 0s;
    fill: var(--color-bg-light);
}

#Kreis2 {
    opacity: 0;
    animation: kreis 1s linear forwards;
    animation-delay: 1s;
    fill: var(--color-bg-light);
}

#Kreis3 {
    opacity: 0;
    animation: kreis 1s linear forwards;
    animation-delay: 2s;
    fill: var(--color-bg-light);
}

#Kreis4 {
    opacity: 0;
    animation: kreis 1s linear forwards;
    animation-delay: 4s;
    fill: var(--color-bg-light);
}

#Kreis5 {
    opacity: 0;
    animation: kreis 1s linear forwards;
    animation-delay: 6s;
    fill: var(--color-bg-light);
}

#Kreis6 {
    opacity: 0;
    animation: kreis 1s linear forwards;
    animation-delay: 7s;
    fill: var(--color-bg-light);
}

#Kreis7 {
    opacity: 0;
    animation: kreis 1s linear forwards;
    animation-delay: 9s;
    fill: var(--color-bg-light);
}

#Kreis8 {
    opacity: 0;
    animation: kreis 1s linear forwards;
    animation-delay: 10s;
    fill: var(--color-bg-light);
}

#Pfeil_7_ {
    stroke-dasharray: 5;
    animation: pfeil 5s linear reserve;
}

@keyframes dash {
    from {
        stroke-dashoffset: 1000;
    }
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes kreis {
    to {
        opacity: 1;
    }
}

@keyframes pfeil {
    to {
        stroke-dashoffset: 10;
    }
}

#tracking-codes img,
#tracking-codes iframe {
    display: none !important;
}

.dropbtn {
    color: white;
    padding: 0;
    border: none;
    background: white;
}

.dropdown {
    transition: var(--transition-fast);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 0 10px 0 0;
}

.dropdown a:hover {
    text-decoration: none;
}

.dropdown-content {
    display:none;
    transition: var(--transition-fast);
    opacity: 0;
    padding: 16px;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    background-color:var(--color-white);
    border-radius: var(--radius-md);
    border: 1px solid var(--color-border);
    box-shadow: 0 12px 16px -4px rgba(10, 13, 18, 0.08), 0 4px 6px -2px rgba(10, 13, 18, 0.03);
    position: absolute;
    top: 70px;
    left: 15px;
    z-index: 9999999;
}

.dropdown-content a {
    color: var(--color-grey-text);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-semi);
    line-height: 24px;
}

.dropdown a.active {
    color: var(--color-grey-text);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-semi);
    line-height: 24px;
}

.dropdown-links {
    padding:0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.dropdown-links a.active {
    color:var(--color-orange);
}

.dropdown-content a:hover {
    color:var(--color-orange);
    text-decoration: none;
}

.dropdown:hover .dropdown-content {
    opacity: 1;
    display: block;
}

nav .contact {
    display: flex;
    height: 95px;
    align-items: center;
}

nav .contact a, header.menu .contact a {
    transition: var(--transition-fast);
    padding:10px 15px;
    border-radius: var(--radius-md);
    border: 2px solid var(--color-orange);
    color: var(--color-orange);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: var(--font-weight-bold);
}

nav .contact a:hover, header.menu .contact a:hover {
    background:var(--color-orange);
    color:var(--color-white);
    text-decoration: none;
}

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

}

.eocjs-newsticker {
    padding: 6px;
    background-color: var(--color-orange);
    margin: -32px 0 40px 0;
    width: 80%;
}

@media only screen and (min-width: 1400px) {
    .eocjs-newsticker {
        margin: -52px 0 40px 0;
        width: 60%;
    }
}

@media only screen and (max-width: 600px) {
    .eocjs-newsticker {
        margin: -10px 0 30px 0;
        width: 80%;
    }
}

.eocjs-newsticker .eocjs-newsticker-container {
    position: relative;
    height: 20px;
    overflow: hidden;
}

.eocjs-newsticker .eocjs-newsticker-one,
.eocjs-newsticker .eocjs-newsticker-two {
    position: absolute;
    left: 0;
    top: 0;
    height: 20px;
    line-height: 20px;
    white-space: nowrap;
    color: var(--color-white);
    font-size: 13px;
}

.eocjs-newsticker-loader {
    position: absolute;
    left: calc(50% - 10px);
    width: 16px;
    height: 16px;
    display: block;
    border: 2px solid #555555;
    border-top: 2px solid transparent;
    border-radius: var(--radius-circle);
    animation: eocjs-newsticker-spin 1s linear infinite;
}

@keyframes eocjs-newsticker-spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.accordion {
    width: 100%;
}

.panel-header.active {
    background: url('../img/accordion_minus.png') no-repeat 90% center var(--color-mid);
    border-bottom: 1px solid var(--color-mid);
}

/* Mega Menu */

.first-link.software-main {
    position: relative;
}

.mega-menu-inner {
    display: flex;
    align-items: stretch; /* Alle Spalten (und der Divider) erhalten dieselbe Höhe */
}

.menu-content {
    position: absolute;
    top: 100%;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%) translateY(12px);
    background: var(--color-bg-light);
    overflow: hidden; /* notwendig für den Flush-Effekt */
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease,
    transform .35s cubic-bezier(.2, .9, .2, 1),
    visibility 0s linear .25s;
    z-index: 999;
}

/* Open state */
.first-level.is-open > .menu-content {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);

    transition:
            opacity .25s ease,
            transform .35s cubic-bezier(.2,.9,.2,1),
            visibility 0s;
}

/* Overlay – Animation Setup */
.overlay {
    position: fixed;
    top: 113px;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition: opacity .25s ease, visibility 0s linear .25s;
    z-index: 500;
}

/* Overlay open */
.first-level.is-open > .overlay {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity .25s ease, visibility 0s;
}

/* Optional: “fancy” inner stagger effect */
.first-level .mega-menu-inner > .column {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .25s ease, transform .35s cubic-bezier(.2,.9,.2,1);
}

.first-level.is-open .mega-menu-inner > .column {
    opacity: 1;
    transform: translateY(0);
}

/* Optional: kleines Stagger (wenn du willst) */
.first-level.is-open .mega-menu-inner > .column:nth-child(1) { transition-delay: .05s; }
.first-level.is-open .mega-menu-inner > .column:nth-child(2) { transition-delay: .10s; }
.first-level.is-open .mega-menu-inner > .vertical-divider { transition-delay: .12s; }
.first-level.is-open .mega-menu-inner > .column:nth-child(4) { transition-delay: .15s; }

/* ── Pressemitteilungen im Megamenü ── */

.menu-content h4 {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-style: var(--font-weight-normal);
    font-weight: var(--font-weight-bold);
    line-height: 20px;
}

.press-column {
    min-width: 280px;
    background: #E1E1E1;
    margin-right: -9999px !important;
    padding-right: 9999px;
    padding-left: 40px;
    padding-top: 24px;
    padding-bottom: 24px;
}

.press-menu-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.press-all-link {
    font-size: 13px;
    color: #e87722; /* X-Cell Orange – passe die Hex an deine Variable an */
    text-decoration: none;
    white-space: nowrap;
}

.press-all-link:hover {
    text-decoration: underline;
}

.press-menu-container {
    display:flex;
    gap: 20px;
    border:1px solid var(--color-bg-light);
    border-radius: 8px;
    transition: all 0.2s;
    min-height: 80px;
}

.press-menu-item {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 8px 0;
    text-decoration: none;
    color: inherit;

}

.press-menu-item:last-child {
    border-bottom: none;
}

.press-menu-item:hover .press-menu-container {
    background:#fff;
}

.press-menu-thumb {
    flex-shrink: 0;
    width: 120px;
    height: auto;
    border-radius: 8px 0 0 8px;
    overflow: hidden;
    background: #f0f0f0;
}

.press-menu-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.press-menu-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding:13px 15px 13px 0;
    justify-content: center;
}

.press-menu-date {
    color: #595959;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: 400;
    line-height: 20px; /* 142.857% */
}

/* ── Customer Stories Kachel: Logo zentriert, kein object-fit cover ── */
.customer-story-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff; /* weißer Hintergrund damit Logos sauber wirken */
    padding: 8px;
}

.customer-story-thumb img {
    width: 60% !important;
    height: 100%;
    object-fit: contain; /* Logo nicht zuschneiden, sondern einpassen */
}

/* ── Referenzen-Megamenü: Gap-Kontrolle (analog zu --unternehmen) ── */
.menu-content--referenzen .row {
    gap: 0;
}

.menu-content--referenzen .column:nth-child(1) {
    padding-right: 65px;
}

.menu-content--referenzen .column:nth-child(2) {
    padding-right: 0;
}

.menu-content .column p.press-menu-title {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
    line-height: 20px; /* 142.857% */
}

/* Close Button */
.mega-close {
    position: absolute;
    top: 30px;
    right: 40px;
    width: 28px;
    height: 28px;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 1001;
    padding: 0;
}

.mega-close span {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--color-text);
    transition: all .3s ease;
}

.mega-close span:first-child {
    transform: rotate(45deg);
}

.mega-close span:last-child {
    transform: rotate(-45deg);
}

/* Hover Effekt */
.mega-close:hover span {
    background: var(--color-orange);
    transform: rotate(45deg);
}

.mega-close:hover span:last-child {
    transform: rotate(-45deg);
}

.first-level .mega-close {
    opacity: 0;
    transform: translateY(-5px);
    transition: all .25s ease;
}

.first-level.is-open .mega-close {
    opacity: 1;
    transform: translateY(0);
}

/* Vertikaler Trennstrich */
.vertical-divider {
    width: 1px; /* Dicke des Trennstrichs */
    background-color: #DEDEDE; /* Farbe des Trennstrichs – anpassen nach Bedarf */
}

/* Beispiel-Layout für die Spalten */
.menu-content .row {
    max-width: 1251px; /* optional, falls du eine maximale Breite möchtest */
    margin: 0 auto;
    display: flex;
    gap: 65px; /* Abstand zwischen Spalten */
}

.menu-content .column {
    padding-top:60px;
    padding-bottom:60px;
}

nav#desktop-menu ul li .mega-menu-inner a {
    height:auto;
}

@media (max-width: 1180px) {
    .menu-content .row {
        max-width: 1120px; /* optional, falls du eine maximale Breite möchtest */
    }

    .mega-close {
        display:none;
    }

    .menu-content .column {
        padding-top:30px;
        padding-bottom:30px;
    }
}

@media (min-width: 976px) {
    .tablet-view    {
        display: none;
    }
}

/* Optional: Flexbox-Reset, falls du bereits einen gap-Wert verwendest, der den Abstand stören könnte */
.mega-menu-inner > *:not(.vertical-divider) {
    margin-right: 0;
}

.menu-content .column {
    flex: 1;
}

.menu-content .column img {
    width:100%;
}

.menu-content .column h3 {
    margin: 20px 0 12px 0;
    font-size: var(--font-size-base);
    font-weight: bold;
    font-family: var(--font-base); font-weight: var(--font-weight-bold);
    color: var(--color-text);
}

.menu-content .column p {
    color:#595959;
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    font-size:var(--font-size-sm);
    line-height:20px;
}

.menu-content .column p span {
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
}

.menu-content .column p span.nobr {
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
}

.menu-content .column a {
    display: block;
    margin-bottom: 5px;
    color: #0077cc;
    text-decoration: none;
}

.menu-content .column a:hover {
    text-decoration: underline;
}

/* Unternehmen-Megamenü: unterschiedliche Gaps zwischen den Spalten */
.menu-content--unternehmen .row, .menu-content--referenzen .row {
    gap: 0; /* Gap deaktivieren, wir steuern Abstände manuell */
}

/* Spalte 1 (Bild) und Spalte 2 (Icon-Links): gleicher Abstand wie bisher */
.menu-content--unternehmen .column:nth-child(1), .menu-content--referenzen .column:nth-child(1) {
    padding-right: 65px; /* entspricht dem alten gap */
}

.menu-content--unternehmen .column:nth-child(2), .menu-content--referenzen .column:nth-child(2) {
    padding-right: 32px; /* kein Abstand – press-column bringt ihren eigenen padding-left mit */
}

/* Flex-Container für den gesamten Link */
nav#desktop-menu ul li .link-box a {
    height: auto;
    padding:7px;
    border-radius: 10px;
    transition: all 0.2s ease-in-out;
}


nav#desktop-menu .link-box a:hover {
    background-color:#EBEBEB;
}

nav#desktop-menu ul li .link-box {
    margin-bottom: 20px;
}



/* Basis-Styles für das Icon, das als Hintergrundbild dient */
.link-box .icon {
    position: relative;
    float:left;
    display: inline-block;
    width: 24px;   /* Breite des Icons, anpassen je nach Bedarf */
    height: 24px;  /* Höhe des Icons */
    margin-right: 15px;  /* Abstand zwischen Icon und Text */
    background-repeat: no-repeat;
    background-size: contain; /* Passt das Bild an den Container an */
    top: unset;
    left: unset;
}


/* Individuelle Icons: Ersetze die URL durch den Pfad zu deinem PNG */
.icon-systemintegration {
    background-image: url('/img/svg/systemintegration.svg');
}

.icon-customization {
    background-image: url('/img/svg/customization.svg');
}

.icon-license {
    background-image: url('/img/svg/license.svg');
}

.icon-support {
    background-image: url('/img/svg/support.svg');
}

/* Container für den Text (Titel und Beschreibung) */
.link-info {
    display: flex;
    flex-direction: column;
}

/* Titel */
.link-info h4 {
    margin: 0 0 6px 0;
    font-size: var(--font-size-base);
    font-weight: bold;
    color: var(--color-text);
}

/* Beschreibung */
.link-info p {
    margin: 5px 0 0;
    font-size: var(--font-size-sm);
    color: var(--color-grey-text);
}

.overlay {
    position: fixed;
    top: 113px;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); /* dunkelt den Hintergrund ab */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    z-index: 500; /* Stelle sicher, dass dieser Wert unter dem Menü liegt, das einen höheren z-index hat */
}

.submenu {
    height: 44px;
}

@media only screen and (max-width: 1000px) {
    .submenu {
        display:none;
        height:auto;
    }
    .academymaker .text {
        max-width: 100%;
    }
}

.submenu ul {
    display:flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    gap: 16px;
}

.submenu ul li a {
    color: var(--color-grey-text);
    font-family: var(--font-base);
    font-weight: var(--font-weight-semi);
    font-size: var(--font-size-xs);
    text-decoration: none;
    float: left;
    margin-top: 15px;
    margin-right: 0px;
    height: 29px;
}

.submenu ul li a.active {
    color:var(--color-black);
}

.submenu ul li a:hover {
    color:var(--color-black);
}

.stage-small {
    min-height:282px;
    background:url('/img/software/background_stage.webp') no-repeat center center;
    background-size: cover;
}

.stage-small.contact {
    background:url('/img/contact/features_section.webp') no-repeat center center;
    background-size: cover;
}

.stage-small.contact h1,
.stage-small.contact p {
    color:var(--color-white);
}

.stage-small .text-center {
    padding:70px 10%;
}

.stage-small .text-center h1,
.stage-small .text-center p {
    text-align: center;
}

.stage-small h1 {
    font-family: var(--font-base);
    font-size: 51px;
    font-weight: var(--font-weight-light);
    margin-bottom: 20px;
    line-height: 68px; /* 133.333% */
}

.stage-small p {
    color:var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: 500;
    line-height: 27px; /* 168.75% */
}

.stage {
    position: relative;
    padding:2% 0 5% 0;
    background-color: #FCFCFC;
    /* Drei Hintergrundbilder (Kreise) – Pfade bitte anpassen */
    background-image: url('/img/schmuck_stage_01.png'), url('/img/schmuck_stage_02.png'), url('/img/schmuck_stage_03.png'), url('/img/schmuck_stage_04.png');
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    /* Ausgangspositionen der Kreise */
    background-position: -10% 110%, 105% -4%, 108% 120%, 10% -1%;
    /* Optionale Transition für sanftere Bewegung */
    transition: background-position 0.3s ease;
    display: flex;
    box-sizing: border-box;
    max-height: 700px;
}

.stage.homepage {
    background:url('/img/home/stage_bg.png') no-repeat center center;
    background-size: cover;
}

.stage.content {
    background: url('/img/content/content_stage_bg.webp') no-repeat left;
    background-size:cover;
    padding: 110px 0;
}

.stage.dark {
    background:url('/img/software/dark.png') center center no-repeat;
    background-size: cover;
}
.stage-content {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    gap: 0px;
    align-items: center;
    padding: 0 3%;
}

.stage-content.stage-video {
    width:1315px;
}

.stage-content a:hover {
    text-decoration: none;
}

/* Linke Spalte */
.left-column {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.left-column .logo {
    max-width: 229px;
    margin-bottom: 20px;
    padding:0;
}

.left-column h1{
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    margin-bottom: 20px;
    font-size:51px;
    line-height: 68px;
    color:var(--color-text);
    transition: var(--transition-fast);
    line-height: 64px;
}

.left-column h2 {
    color:var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-bold);
}

.stage-content .stage-video {
    width: 110%;
}

.stage-content .img-slider {
    position: relative;
    width: 100%;
}

/* Viewport + Track */
.stage-content .stage-slider-viewport {
    position: relative;
    overflow: hidden;
}

.stage-content .stage-slider-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
    will-change: transform;
}

/* Slide */
.stage-content .stage-slide {
    flex: 0 0 100%;
    box-sizing: border-box;
}

.stage-content .stage-slide img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: var(--radius-md);
}

/* Dots */
.stage-content .stage-slider-dots,
.blog-hero-slider-dots {
    display: flex;
    gap: 20px;
    justify-content: center;
}

.stage-content .stage-slider-dot,
.blog-hero-slider-dot {
    width: 10px;
    height: 10px;
    background: var(--color-dark);
    border:1px solid var(--color-dark);
    border-radius: var(--radius-circle);
    cursor: pointer;
    transition: transform .2s ease, background-color .2s ease;
}

.stage-content .stage-slider-dot.active,
.blog-hero-slider-dot.is-active {
    background: var(--color-white);
    border:1px solid var(--color-dark);
}

/* 1) Neuer Grid‐Wrapper für Bild & Video */
.content-wrapper .media-overlay {
    display: grid;
}

/* 2) Beide Elemente in die gleiche Grid-Zelle legen */
.media-overlay video,
.media-overlay img {
    grid-area: 1 / 1;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* 3) Stapelreihenfolge festlegen */
.media-overlay video {
    z-index: 0;
}
.media-overlay img {
    z-index: 1;
    pointer-events: none; /* Damit Klicks durchs Bild auf das Video kommen, falls nötig */
}
.left-column p {
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    font-size:var(--font-size-md);
    line-height: 30px;
    margin-bottom: 32px;
    color:var(--color-text);
    transition: var(--transition-fast);
    max-width: 85%;
}

@media (max-width: 1100px) {
    .left-column p {
        max-width: 100%;
    }
}

.dark .left-column h1,
.dark .left-column p {
    color:var(--color-white);
}

button {
    border: none;
    background:var(--color-orange);
    color: var(--color-white);
    font-size:var(--font-size-base);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    outline: none;
    cursor: pointer;
    width: auto;
    font-size: var(--font-size-sm);
    padding: 0px 20px;
    margin: 10px 0 0 0;
    transition: var(--transition-fast);
    border-radius: var(--radius-md);
    height: 44px;
    display: flex;
    align-items: center;
}

button svg {
    margin:0 10px 0 15px;
}

button:hover {
    background-color:var(--color-orange-dark);
}

/* Rechte Spalte */
.right-column {
    flex: 1;
}

.image-container {
    position: relative;
}

.image-container .large-image {
    display: block;
    width: 120%;
}

.logo-slider {
    overflow: hidden;
    width: 100%;
    position: relative;
    padding: 20px;
    box-sizing: border-box;
}

.logo-slider .slider-wrapper {
    display: flex;
    transition: transform 0.5s ease;
    margin: 0;
    padding: 0;
    list-style: none;
}

.logo-slider .slider-wrapper li {
    flex: 0 0 150px; /* feste Breite für jedes Logo */
    padding: 10px;
}

.logo-slider .slider-wrapper li img {
    width: 150px;  /* feste Breite für die Bilder */
    height: auto;
    display: block;
}

.teaser-text {
    margin:56px 0 36px 0;
    color: var(--color-text);
}

.teaser-text.padding {
    padding:0 10%;
}

.teaser-text p {
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    font-size: var(--font-size-base);
    color:var(--color-text);
    line-height: 27px;
}

.teaser-text.special-teaser p {
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    font-size: var(--font-size-md);
    line-height: 28px;
}

.academymaker-funktionen.wrapper {
    margin-top:33px;
}

.teaser-text h2 {
    font-family: var(--font-base); font-weight: 550;
    font-size: var(--font-size-2xl);
    line-height: 40px; /* 137.5% */
    margin-bottom: 18px;
}

.academymaker-funktionen hr {
    height:1px;
    width: 100%;
    background:var(--color-border);
    margin-bottom: 8%;
}

.academymaker-funktionen .label {
    border-radius: 16px;
    background: #ECF7FB;
    color: var(--color-text);
    text-align: center;
    font-family: var(--font-base); font-weight: 550;
    font-size: var(--font-size-sm);
    line-height: 20px; /* 142.857% */
    display:inline-block;
    padding:8px 14px;
    margin-bottom:16px;
}

.dark .teaser-text h2,
.dark .teaser-text p {
    color:var(--color-white);
}

/* Container für das gesamte Content-Element */
.content-element {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
}

/* Feature-Container: Zwei Spalten, vertikal zentriert, mit 230px Abstand */
.feature-container {
    display: flex;
    align-items: center; /* Vertikale Ausrichtung */
    justify-content: space-between;
    margin-bottom: 10%;
    gap: 96px;

    /* Ausgangszustand: unsichtbar und leicht nach unten verschoben */
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.content-projects .feature-container {
    margin-bottom:150px;
}

.project-flow-section {
    padding: 96px 5%;
    box-sizing: border-box;
}

/* Basis-Container */
.project-flow-section .container {
    max-width: 1252px;
    margin: 0 auto;
    box-sizing: border-box;
}

/* Überschrift & Intro-Text */
.project-flow-section h2 {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    color: var(--color-text);
    margin: 0;
    text-align: center;
}
.project-flow-section p {
    margin-top: 16px;
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    line-height: 24px;
    color: var(--color-grey-text);
    text-align: center;
}

/* Intro-Bild */
.flow-intro-image {
    display: block;
    width: 100%;
    height: auto;
    margin: 64px 0 96px;
}

/* Wrapper für Steps + Timeline */
.steps-wrapper {
    position: relative;
    max-width: 812px;
    margin:0 auto;
}

/* Alternierende Anordnung: bei geradem Index icon rechts */
.step:nth-child(even) {
    flex-direction: row-reverse;
}

/* Icon-Container */
.step-icon {
    flex-shrink: 0;
}

/* Basis-Container */
.project-flow-section .wrapper {
    max-width: 1150px;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: center;
}

/* Überschrift & Intro-Text */
.project-flow-section h2 {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    color: var(--color-text);
    margin: 0;
}

/* Intro-Bild */
.flow-intro-image {
    display: block;
    width: 100%;
    height: auto;
    margin: 64px 0 96px;
}

/* Graue Basis-Linie (einmalig) */
.vertical-line {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 100%;
    background: #E0E0E0;
    z-index: 1;
}

/* Orange Füll-Linie (startet mit Höhe 0) */
.filled-line {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 0;
    background: var(--color-orange);
    z-index: 2;
    transition: height 0.3s ease-out;
}

/* Schritte-Container */
.steps {
    display: flex;
    flex-direction: column;
    gap: 96px;
    position: relative;
    z-index: 3; /* über den Linien */
}

/* Ein einzelner Step */
.step {
    display: flex;
    align-items: flex-start;
    gap: 51px;
}

/* Alternative Reihenfolge für gerade Steps */
.step:nth-child(even) {
    flex-direction: row-reverse;
}

.step-icon, .step-content {
    flex:1;
}

/* Icon-Styling */

.step-icon img {
    display: inline-block;
    width: 85px;
    height: 85px;
    filter: grayscale(100%);
    transition: filter 0.3s;
    opacity: 0.2;
}

.step-icon.left,
.step-content.left,
.step-content.left p,
.step-content.left h3 {
    text-align: right;
}

.step-icon.right,
.step-content.right,
.step-content.right p,
.step-content.right h3 {
    text-align: left;
}

/* Nummer im Kreis */
.step-number {
    width: 37px;
    height: 37px;
    border-radius: var(--radius-circle);
    font-family: var(--font-base);
    font-size: 22px;
    font-weight: var(--font-weight-semi);
    color: var(--color-white);
    background:var(--color-orange);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}

/* Content-Überschrift und Text */
.step-content h3 {
    margin: 0;
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semi);
    line-height: 32px;
    color: var(--color-text);
}
.step-content p {
    margin: 8px 0 0;
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    line-height: 24px;
    color: var(--color-text);
    text-align: left;
}

.step-content p.right,
.step-content h3.right {
    text-align: right;
}

/* Aktive States: Icon und Nummer orange */
.step.active .step-icon img {
    filter: none;
    opacity: 1.0;
}

/* Sobald der Container in den Viewport kommt, wird diese Klasse hinzugefügt */
.feature-container.in-view {
    opacity: 1;
    transform: translateY(0);
}

.feature-container.unterseite {
    padding:96px 0;
    margin-bottom: 0;
}

.feature-container-h2 {
    font-family: var(--font-base);
    font-weight: 550;
    font-size: var(--font-size-2xl);
    line-height: 40px;
    margin: 96px 0 64px 0;
}

.feature-container.no-flex {
    display:block !important;
}

/* Linke Anordnung: Text links, Bild rechts */
.feature-container.feature-left {
    flex-direction: row;
}

/* Rechte Anordnung: Bild links, Text rechts */
.feature-container.feature-right {
    flex-direction: row;
}

/* Textbereich */
.feature-container .text {
    flex: 1;
}

/* Bildbereich */
.feature-container .image {
    flex: 1;
}

.feature-container.no-flex h3 {
    margin-bottom:64px;
}

.feature-container.no-flex .flex {
    gap:70px;
}

.feature-container.no-flex .flex .text {
    flex:auto;
    width:30%;
}

.feature-container.no-flex .flex .image {
    flex:auto;
    width:60%;
}

.feature-container .image.image-shadow {
    box-shadow: none;
    position: relative;
}

.feature-container .image img, .feature-container .image video {
    width:100%;
}

.feature-container .image img.special-icon {
    position: absolute;
    bottom: -40px;
    right: -50px;
    width: 38%;
}

/* Überschrift und Absatz */
.feature-container h3 {
    font-family: var(--font-base); font-weight: 550;
    margin: 0 0 24px;
    font-size: var(--font-size-xl);
    line-height: 32px;
    color: var(--color-text);
}

.align-center {
    align-items:center !Important;
}

.casestudy h3 {
    font-family: var(--font-base); font-weight: 550;
    margin: 0 0 18px;
    font-size: var(--font-size-xl);
    line-height: 32px;
    color: var(--color-text);
}

.feature-container p {
    font-size: var(--font-size-base);
    margin: 0 0 24px 0;
    color: var(--color-text);
    line-height: 27px;
}

.feature-container ul {
    list-style:none;
}

.feature-container ul li {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal);
    line-height: 27px;
    background:url('/img/svg/check_icon.svg') no-repeat center left;
    padding: 5px 0 5px 40px;
}

.extra-feature-ki {
    margin-top:30px;
    padding:0 5%;
}

.extra-feature-ki .feature-container {
    margin-bottom:0px;
}

.extra-feature-ki .feature-container h3 {
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    font-size: var(--font-size-md);
    margin: 30px 0 20px 0;
    color: var(--color-white);
    line-height: 28px;
}

.extra-feature-ki .feature-container ul li {
    color:var(--color-white);
}

/* Zentrierter "Alle Features anzeigen" Link */
.show-more-features {
    text-align: center;
    margin:10% 0;
}

.show-more-features a {
    color: #0D0D0D;
    font-size: var(--font-size-base);
    font-family: var(--font-base); font-weight: 500;
    line-height: 24px;
    background:url('/img/svg/arrow_down.svg') no-repeat center right;
    padding: 0 30px 0 0;
    transition: var(--transition-fast);
}

.show-more-features a.active {
    background: url('/img/svg/arrow_up.svg') no-repeat center left;
}

a.showMore {
    color: var(--color-white);
    font-family: var(--font-base);
    font-weight: var(--font-weight-normal);
    font-size: var(--font-size-base);
    line-height: 25px;
    background:url('/img/svg/arrow_down_white.svg') no-repeat center right;
    padding: 0 30px 0 0;
    transition: var(--transition-fast);
    margin:30px 0 0 0;
    display:inline-block;
}

a.showMore.active {
    background:url('/img/svg/arrow_up_white.svg') no-repeat center right;
}

.special-teaser-ki {
    background:url('/img/software/blue_background_ki.svg') center center no-repeat;
    background-size: cover;
    padding: 96px 0;
}

.special-teaser-ki .ki-logo {
    margin:0 auto;
    margin-bottom:32px;
    display:block;
}

.special-teaser-ki .teaser-text {
    margin: 0;
}

.special-teaser-ki .teaser-text.padding {
    padding:0 15%;
}

.special-teaser-ki .teaser-text h2,
.special-teaser-ki .teaser-text p {
    color:var(--color-white);
}

/* Full-width Section */
.principles-section {
    width: 100%;
    padding: 96px 5%;
    box-sizing: border-box;
}

/* H2 Headline */
.principles-section h2 {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-style: normal;
    font-weight: var(--font-weight-semi);
    line-height: 44px; /* 146.667% */
    color: var(--color-text);
    margin: 0 0 64px 0;
}

/* Grid für die vier Prinzipien */
.principles-flex {
    display: flex;
    gap: 30px;
    margin-top: 50px;
    align-items: stretch; /* sorgt dafür, dass alle Items gleich hoch sind */
}

/* Einzelnes Prinzip-Item */
.principle-item {
    flex: 1;                /* jede Spalte gleich breit */
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Icon über der Überschrift */
.principle-item .icon {
    margin-bottom: 20px;
}
.principle-item .icon img {
    display: block;
    max-width: 60px; /* beliebig anpassbar */
    height: auto;
}

/* H3 Headline der Prinzipien */
.principle-item h3 {
    color:var(--color-text);
    text-align: center;
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: 30px; /* 166.667% */
}

/* Box mit Vorteils-Liste */
.benefits-box {
    border-radius: var(--radius-md);
    background: var(--color-bg-light);
    width: 100%;
    margin-top: 30px;
    padding: 30px;
    box-sizing: border-box;
    flex: 1;               /* füllt verbleibenden vertikalen Raum */
    display: flex;
    flex-direction: column;
}

.benefits-box ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.benefits-box ul li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 12px;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    line-height: 24px;
    font-weight: var(--font-weight-normal);
    color: var(--color-text);
}

/* Check-Mark vor jedem Listenpunkt */
.benefits-box ul li::before {
    content: "";
    position: absolute;
    left: -11px;
    top: -2px;
    width: 28px;
    height: 28px;
    background-image: url(/img/check_icon.webp);
    background-size: contain;
    background-repeat: no-repeat;
}

/* Container für den gesamten Abschnitt */
.advantages {
    padding: 40px 20px 90px 20px;
    box-sizing: border-box;
}

.advantages.unterseite {
    padding: 96px 5%;
    box-sizing: border-box;
}

.dark {
    background:url(/img/software/dark.png) no-repeat center center;
    background-size: cover;
}

/* Flex-Container für die Vorteil-Boxen */
.advantages-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(35ch, 1fr));
    gap: 42px;
}

/* Jede Vorteil-Box – 3 pro Reihe */
.advantage-box {
    background-color: var(--color-bg-light);
    border-radius: var(--radius-md);
    padding: 30px;
    box-sizing: border-box;
}

.grey .advantage-box {
    background-color:var(--color-white);
}

.dark .advantage-box {
    background:none;
    border:1px solid var(--color-white);
}

.unterseite .advantage-box {
    background:var(--color-white);
    flex:0 0 calc(26.333% - 42px);
}

/* Icon */
.advantage-icon {
    width: 32px;  /* feste Breite für das Icon */
    height: auto;
    margin-bottom: 15px;
}

.design .advantage-icon {
    margin-bottom:30px;
}

/* Headline */
.advantage-headline {
    color:  var(--color-text);
    font-family: var(--font-base); font-weight: 500;
    font-size: var(--font-size-md);
    line-height: 24px; /* 133.333% */
    margin: 0 0 8px 0;
}

.design .advantage-headline {
    color: var(--color-text);
    font-family: var(--font-base); font-weight: var(--font-weight-bold);
    font-size: var(--font-size-md);
    margin:0;
}

/* Fließtext */
.advantage-text {
    font-size: 0.875em;
    color: var(--color-grey-text);
    flex-grow: 1;
}

.design .advantage-text  {
    color: var(--color-text);
    font-family: var(--font-base); font-weight: var(--font-weight-normal);
    font-size: var(--font-size-md);
    line-height: 30px;
}

.dark .advantage-headline,
.dark .advantage-text {
    color:var(--color-white);
}

/* Damit der vertikale Abstand zwischen den Reihen 230px beträgt,
   fügen wir unten jedem Box-Element einen margin-bottom hinzu (außer der letzten Reihe) */

.unterseite .advantage-box {
    margin-bottom:0;
}

.wrapper.grey {
    background-color:var(--color-bg-light);
}

.customer-projects {
    padding: 42px 20px 96px 20px;
    box-sizing: border-box;
}

.customer-projects .margin {
    margin-top:30px;
}

.projects-container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.project-box {
    flex: 0 0 calc(33.333% - 20px);
    box-sizing: border-box;
    padding: 30px;
    background-color: var(--color-white);
    border-radius: var(--radius-md);
    height: fit-content;
}

.casestudy .project-box {
    height:auto;
}

.project-box .project-logo {
    height: auto;
    margin-bottom: 24px;
    display:block;
    max-width: 140px;
    max-height: 30px;
}

.project-box .project-preview {
    max-width: 100%;
    height: auto;
    margin-bottom: 24px;
}

.project-box .project-subheadline {
    font-size: var(--font-size-sm);
    font-family: var(--font-base); font-weight: var(--font-weight-semi);
    line-height: 24px;
    margin-bottom: 10px;
    color:var(--color-black);
}

.project-box a:hover {
    text-decoration: none;
}

.project-box .project-text {
    font-size: var(--font-size-sm);
    color: var(--color-text);
}

.project-box p {
    color:var(--color-black);
    font-weight: var(--font-weight-normal);
}

/* Gesamt-Slider */
.customer-testimonials {
    position: relative;
    width: 100%;
    overflow: hidden;
    box-sizing: border-box;
}

/* Slider-Container – volle Breite, overflow hidden, damit die an den Rändern teilweise sichtbaren Testimonials abgeschnitten werden */
.slider-container {
    position: relative;
    width: 100%;
    overflow: hidden;
}

/* Der Track, in dem die Testimonials horizontal angeordnet sind */
.slider-track {
    display: flex;
    transition: transform 1s ease;
}

/* Jede Testimonial-Box */
.testimonial {
    background-color: var(--color-bg-light);
    border-radius: var(--radius-md);
    padding:3%;
    box-sizing: border-box;
    margin: 0 3%;  /* kleiner horizontaler Abstand zwischen den Boxen */
    flex: 0 0 40%;   /* Jede Box nimmt 60% der Containerbreite ein – so ist die mittlere Box voll sichtbar und die angrenzenden teilweise */
    opacity: 0.5;
    transition: transform 0.5s ease, opacity 0.5s ease;
    position: relative;
    transform: scale(0.9);
}

.testimonial:hover .slider-nav button {
    opacity: 1;
    visibility: visible;
}

.testimonial p {
    margin:0 0 24px 0;
}

/* Das aktive (mittlere) Testimonial */
.testimonial.active {
    opacity: 1;
    transform: scale(1.0);
}

/* Dot Navigation */
.slider-dots {
    text-align: center;
    margin-top: 45px;
    margin-bottom: 96px;
}

.slider-dots .dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    background-color: var(--color-dark);
    border:2px solid var(--color-dark);
    border-radius: var(--radius-circle);
    margin: 0 8px;
    cursor: pointer;
    transition: transform .2s ease, background-color .2s ease;
}

.slider-dots .dot.active {
    background-color: var(--color-white); /* Aktiver Zustand – passe die Farbe nach Bedarf an */
    opacity: 1;
}

/* Linke Seite: Erstes, zweites und drittes Dot */
.slider-dots .dot:nth-child(1) {
    opacity: 0.2;
}
.slider-dots .dot:nth-child(2) {
    opacity: 0.4;
}
.slider-dots .dot:nth-child(3) {
    opacity: 0.6;
}
.slider-dots .dot:nth-child(4) {
    opacity: 0.8;
}

/* Rechte Seite: Letztes, vorletztes und drittletztes Dot */
.slider-dots .dot:nth-last-child(1) {
    opacity: 0.2;
}
.slider-dots .dot:nth-last-child(2) {
    opacity: 0.4;
}
.slider-dots .dot:nth-last-child(3) {
    opacity: 0.6;
}
.slider-dots .dot:nth-last-child(4) {
    opacity: 0.8;
}

.logo-software-container {
    padding:90px 0;
}

.logo-software-container .flex {
    gap: 80px;
    justify-content: center;
    flex-wrap: wrap;
}

.academymanager-teaser {
    background:var(--color-bg-light)
}

.academymanager-teaser .wrapper {
    display:flex;
    flex-direction: row;
    gap:96px;
    padding:4% 0;
    align-items: center;
}

.academymanager-teaser .image img {
    width:100%;
}

.academymanager-teaser button {
    margin-top:20px;
}

/* Case Studies */

.stage-casestudy {
    width: 100%;
    height: auto; /* Höhe nach Bedarf anpassen */
    display: flex;
    flex-direction: column;
    position: relative;
    /* Hintergrund: Oben wird das Bild angezeigt, unten wird es von einem weißen Gradient überzogen */
    background:
            linear-gradient(to bottom, transparent 50%, white 50%),
            url('/img/casestudy/casestudy_background.png') no-repeat top center / cover;
}

.stage-casestudy .content-container {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding:0 5%;
}

.stage-casestudy .content-wrapper {
    max-width: 835px;
    width: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 47px; /* Abstand zwischen Headline und Bild */
}

.stage-casestudy .content-wrapper h1 {
    font-family: var(--font-base); font-weight: var(--font-weight-light);
    line-height: 68px; /* 133.333% */
    font-size:51px;
    color:var(--color-text);
    text-align: center;
    margin-top:70px;
}

.stage-casestudy .content-wrapper img {
    max-width: 100%;
    height: auto;
}

.stage-casestudy .separator {
    width: 1252px;
    height: 1px;
    background-color: var(--color-border);
    margin: 0 auto; /* Zentriert die Linie */
    margin-bottom: 126px;
}

/* 1) Neuer Grid‐Wrapper für Bild & Video */
.stage-casestudy .content-wrapper .media-overlay {
    display: grid;
}

/* 2) Beide Elemente in die gleiche Grid-Zelle legen */
.stage-casestudy .media-overlay video,
.stage-casestudy .media-overlay img {
    grid-area: 1 / 1;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* 3) Stapelreihenfolge festlegen */
.stage-casestudy .media-overlay video {
    z-index: 0;
    width: 74%;
    margin: 6% 0px 0px 13%;
}
.stage-casestudy .media-overlay img {
    z-index: 1;
    pointer-events: none; /* Damit Klicks durchs Bild auf das Video kommen, falls nötig */
}

/* Gesamtbereich der Feature Section */
.feature-section {
    max-width: 1252px;
    margin: 0 auto;
    margin-top:96px;
    padding: 0 5%; /* Optional: Innenabstand */
}

.grey .feature-section {
    margin-top:0;
    padding-top:96px;
    padding-bottom:10px;
}

.grey .feedback-box {
    background:var(--color-white);
}

.feature-section .flex img {
    width: calc((100% - 2 * 0px) / 3);
}

/* Flex-Container für die beiden Spalten */
.casestudy .feature-container {
    display: flex;
    gap: 96px;
    align-items: center;
}

.casestudy .feature-container .text-block p {
    margin:0;
}

/* Linke Spalte: Bild und Overlay-Box */
.casestudy .feature-image {
    flex: 1;
    position: relative;
}

.casestudy .feature-image img {
    width: 100%;
    height: auto;
    display: block;
}

/* Graue Box, die teilweise aus dem Bild heraustritt */
.image-overlay-box {
    padding:30px;
    border-radius: var(--radius-md);
    background-color: var(--color-bg-light); /* Grauer Hintergrund – anpassen falls nötig */
    position: absolute;
    top: -20px; /* Anpassbar: So ragt die Box etwas aus dem Bild heraus */
    left: -20px;  /* Anpassbar: Positionierung der Box */
    box-sizing: border-box;
    width:237px;
    height:auto;
}

.image-overlay-box.bottom {
    top: 64%;
}

.image-overlay-box .icon {
    display:block;
    margin-bottom:30px;
    float:none;
}

.image-overlay-box p {
    margin:0;
}

.image-overlay-box h3 {
    margin-bottom: 10px;
}

.image-shadow {
    box-shadow: 0 0 23.656px 0 rgba(0, 0, 0, 0.11);
}

.training-themes .feature-container .image.image-shadow {
    box-shadow: 0 0 23.656px 0 rgba(0, 0, 0, 0.11);
}

.target-group  {
    padding:30px;
    border-radius: var(--radius-md);
    background-color: var(--color-bg-light); /* Grauer Hintergrund – anpassen falls nötig */
    box-sizing: border-box;
    width:100%;
    height:auto;
}

/* Rechte Spalte: Textblöcke */
.feature-text {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.feature-text img {
    width:100px;
    margin-bottom: 24px;
}

/* Gemeinsame Formatierung der Textblöcke */
.casestudy .feature-section .text-block {
    display: flex;
    flex-direction: column;
}

/* Headline in den Textblöcken */
.casestudy .feature-section .text-block .h3 {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semi);
    line-height: 38px;
    margin: 0;
}

/* Trennlinie zwischen den Textblöcken */
.separator {
    background: var(--color-border);
    height: 1px;
    width: 100%;
    margin: 47px 0;
}

.casestudy .image {
    width:100%;
}

.project-container {
    max-width:1252px;
    margin:0 auto;
}

.project-section .feature-container {
    margin:0;
    padding:96px 0;
}

.casestudy .project-section .feature-container div {
    flex:200%;
}

.feedback-box {
    border-radius: var(--radius-md);
    background: var(--color-bg-light);
    max-width: 1252px;
    padding: 80px 100px;
    position: relative;
}

.feedback .teaser-text {
    margin-top:0;
    margin-bottom:64px;
}

.feedback-box p {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 24px; /* 171.429% */
}

.feedback-box .zitat-icon {
    position: absolute;
    right: -33px;
    top: -37px;
    width: 145px;
}

.feedback-person {
    display:flex;
    gap: 24px;
}

.feedback-person .img {
    width:70px;
    height:70px;
}

.feedback-person h4 {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: 24px; /* 171.429% */
}

.feedback-person p {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: 11px;
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 18px; /* 171.429% */
    margin:0;
}

.feedback-person span {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: 11px;
    font-style: normal;
    font-weight: var(--font-weight-semi);
    line-height: 18px;
}

.qoute {
    padding:117px 5%;
}

.shadow {
    box-shadow: 0px 0px 38.045px 0px rgba(0, 0, 0, 0.11);
}

.feedback-person img {
    width:70px;
}

.qoute.audi {
    background: url('/img/casestudy/casestudy_bg_audi.svg') no-repeat center center;
    background-size: cover;
}

.qoute.bahlsen {
    background: url('/img/casestudy/bahlsen_bg.webp') no-repeat center center;
    background-size: cover;
}

.qoute.efw {
    background: url('/img/casestudy/efw_bg.webp') no-repeat center center;
    background-size: cover;
}

.qoute.kaaw {
    background: url('/img/casestudy/kaaw_bg.webp') no-repeat center center;
    background-size: cover;
}

.qoute.hochtief {
    background: url('/img/casestudy/casestudy_hochtief_bg.webp') no-repeat center center;
    background-size: cover;
}

.qoute.siematic {
    background: url('/img/casestudy/siematic_bg.webp') no-repeat center center;
    background-size: cover;
}

.qoute.villingen {
    background: url('/img/casestudy/villingen_bg.webp') no-repeat center center;
    background-size: cover;
}

.qoute.strabag {
    background: url('/img/casestudy/casestudy_strabag_bg.webp') no-repeat center center;
    background-size: cover;
}

.qoute.kws {
    background: url('/img/casestudy/casestudy_kws_bg.webp') no-repeat center center;
    background-size: cover;
}

.qoute.fiege {
    background: url('/img/casestudy/casestudy_bg_fiege.svg') no-repeat center center;
    background-size: cover;
}

.qoute.labio {
    background: url('/img/casestudy/casestudy_bg_labio.svg') no-repeat center center;
    background-size: cover;
}

.qoute h2 {
    color: var(--color-white);
    text-align: center;
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-style: normal;
    font-weight: var(--font-weight-semi);
    line-height: 44px; /* 146.667% */
}

.casestudy .customer-projects .projects-container {
    gap: 42px;
}

.casestudy .customer-projects .project-box {
    background: var(--color-bg-light);
    flex:50;
}

.flex-1 {
    flex:1 !important;
}

.flex-2 {
    flex:2 !important;
}

/* Section und Wrapper */
.locations-section {
    width: 100%;
    padding: 96px 5%; /* nach Bedarf anpassen */
    box-sizing: border-box;
}

.locations-section a.tel,
a.tel {
    text-decoration: none !important;
    color:var(--color-text);
    font-weight: var(--font-weight-normal);
}

.locations-wrapper {
    max-width: 1252px;
    margin: 0 auto;
}

/* Flex-Container aller Locations */
.locations-flex {
    display: flex;
    gap: 42px;
}

/* Gemeinsames Styling aller Boxen */
.location-item {
    background: var(--color-white);
    border-radius: var(--radius-md);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    flex: 1;               /* Standard-Flex für Box 1 & 3 */
}

/* Box 2 doppelt so breit */
.location-item.location--large {
    flex: 2;
}

.location-item.location--large .flex div {
    flex: 1;
}

/* Bild oben, randlos */
.location-item img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 2px 2px 0 0;
}

.location-item h3 {
    color:var(--color-text);
    /* Copy 18 (bold) */
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: 30px; /* 166.667% */
    background:url('/img/contact/icon_standort.svg') no-repeat left center;
    padding:0 0 0 40px;
    margin: 0 0 30px 0;
}

.location-item p {
    color: var(--color-text);
    /* Copy (16) */
    font-family: var(--font-base), "Comic Sans MS";
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 27px; /* 168.75% */
    transition: all 0.5s;
}

/* Location Image */
.background-location {
    height:164px;
    width:100%;
}

.duesseldorf .background-location {
    background:url('/img/contact/standort_duesseldorf.webp');
    background-size: cover;
}

.berlin .background-location {
    background:url('/img/contact/standort_berlin.webp') 100% center;
    background-size: 130%;
}

@media (max-width: 1100px) {
    .berlin .background-location {
        background:url('/img/contact/standort_berlin.webp') 99% center;
        background-size: 161%;
    }
}

@media (max-width: 900px) {
    .berlin .background-location {
        background:url('/img/contact/standort_berlin.webp') center center no-repeat;
        background-size: cover;
    }
}

.oessterreich .background-location {
    background:url('/img/contact/standort_oesterreich.webp');
    background-size: cover;
}

.berlin-2 .background-location {
    background:url('/img/contact/standort_berlin-2.webp');
    background-size: cover;
}

/* Infobereich mit Padding */
.location-info {
    padding: 30px;
    font-family: var(--font-base);
    color: var(--color-text);
}

/* Responsive: untereinander bei kleiner Auflösung */

@media (max-width: 1100px) {
    .location-item p {
        font-size: 13px;
        line-height: 22px;
    }

}

@media (max-width: 900px) {

    .location-item p {
        font-size: var(--font-size-base);
        line-height: 27px;
    }

    .locations-flex {
        flex-wrap: wrap;
    }

    /* Alle Items gleich flexibel, basis 0 */
    .location-item {
        flex: auto;
        width: 40%;
    }

    /* Box 3 (Österreich) direkt nach Box 1 in die erste Zeile */
    .locations-flex .location-item:nth-child(3) {
        order: 1;
    }

    /* Box 2 (Berlin-Brandenburg) komplett unter Box 1 & 3 */
    .location-item.location--large {
        order: 2;
        flex: 1 1 100%; /* nimmt volle Zeilenbreite */
    }

    .projects-container .project-box {
        margin-bottom:25px;
    }
}

@media (max-width: 650px) {

    .feature-container .image img.special-icon {
        right: -10px;
    }
    .labio .feature-container {
        padding-top:20px !Important;
    }

    .locations-flex {
        flex-direction: column;
        align-items: stretch; /* damit jede Box 100% Breite annimmt */
    }
    .location-item {
        flex: none;    /* verhindert ungewolltes Wachsen/Shrinken */
        width: 100%;   /* jede Box füllt die ganze Breite */
    }

    .location-item.location--large .flex {
        display:block;
    }

    .special-brandenburg {
        margin-top:20px;
    }
}

@media (min-width: 2000px) {
    .testimonial {
        padding:3%;
        flex: 0 0 40%;   /* Jede Box nimmt 60% der Containerbreite ein – so ist die mittlere Box voll sichtbar und die angrenzenden teilweise */

    }
}

@media (max-width: 1650px) {
    .image-container .large-image {
        max-width: 110%;
        display: block;
    }

}

@media (max-width: 1400px) {
    .stage-content {
        max-width: 960px;
        gap: 20px;
        align-items: center;
    }

    .principles-flex {
        flex-wrap: wrap;
    }

    .principle-item {
        /* Zwei Spalten: je die Hälfte abzüglich der Lücke */
        flex: 0 0 calc((100% - 30px) / 2);
    }

    .academymaker .infobox {
        gap:0;
    }

    .unterseite .advantage-box {
        flex: 0 0 calc(53.333% - 42px);
        margin-bottom: 22px;
    }

    .testimonial {
        background-color: var(--color-bg-light);
        border-radius: var(--radius-md);
        padding:4%;
        box-sizing: border-box;
        margin: 0 4%;  /* kleiner horizontaler Abstand zwischen den Boxen */
        flex: 0 0 50%;   /* Jede Box nimmt 60% der Containerbreite ein – so ist die mittlere Box voll sichtbar und die angrenzenden teilweise */
        opacity: 0.5;
        transition: transform 0.5s ease, opacity 0.5s ease;
        position: relative;
        transform: scale(0.9);
    }
    .left-column h1, .stage-casestudy .content-wrapper h1{
        font-size:45px;
        line-height: 55px;
    }
}

@media (min-width: 975px) {
    .tablet {
        display: none;
    }

}

@media (max-width: 930px) {

    .academymaker .infobox {
        gap:30px;
        flex-direction: column;
    }

    .academymaker .infobox .text {
        width:100%;
    }

}

@media (max-width: 1000px) {

    .feature-container.no-flex .flex {
        gap:70px;
        flex-direction: column-reverse;
    }

    .feature-container.no-flex .flex .text {
        flex:auto;
        width:100%;
    }

    .feature-container.no-flex .flex .image {
        flex:auto;
        width:100%;
    }

    .casestudy .feature-container {
        flex-direction: column;
        gap:47px;
    }

    .academymaker-funktionen,.academymanager-teaser .wrapper {
        padding:0 5%;
    }

    .advantages {
        padding:10px 5% 42px 5%;
    }

    .stage-casestudy .content-wrapper h1 {
        line-height: 58px; /* 133.333% */
        font-size:41px;
    }

    .trainingsprodukte .advantages {
        padding:42px 5% 96px 5%;
    }

    .customer-projects {
        padding-left:5%;
        padding-right:5%;
    }

    .dark.advantages  {
        padding:5%;
    }

    .project-box {
        flex: 0 0 calc(50% - 20px);
    }

    .advantage-box {
        flex: 0 0 calc(50% - 20px);
    }

    .stage {
        height:auto;
        max-height: 1000px;
        padding:40px 5%;
    }

    .left-column .logo {
        width:50%;
    }
    .image-container .large-image {
        max-width: 100%;
        display: block;
    }

    .feature-container {
        gap: 70px;
    }

    .teaser-text button {
        width: 160px;
    }

    .academymanager-teaser .teaser-text button {
        width: 100%;
    }
}

.training-themes {
    padding: 0 5%;
    margin-bottom: 96px;
}

@media (max-width: 768px) {
    .slider-nav {
        display:none;
    }

    .training-themes {
        margin-bottom: 36px;
    }

    .wrapper.fs {
        margin-top: 66px;
    }

    .stage-content .stage-video {
        width: 100%;
    }

    .image-overlay-box.bottom,
    .image-overlay-box {
        position: relative;
        top: 0;
        width: 100% !important;
        left: 0;
        margin: 20px 0 0 0;
    }

    .feature-section.casestudy {
        margin-top:0 !important;
    }

    .qoute {
        padding: 57px 5%;
    }

    .principle-item {
        /* Zwei Spalten: je die Hälfte abzüglich der Lücke */
        flex: 0 0 100%;
    }

    .unterseite .advantage-box {
        flex: 100%;
        margin-bottom: 42px;
    }

    .feedback-box {
        padding:60px;
    }

    .feedback-box .zitat-icon {
        width:100px;
    }

    .casestudy .feature-section {
        /*  margin-top:0; */
    }

    .academymaker-funktionen hr {
        margin-bottom:17%;
    }

    .stage-content {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .slider-dots .dot {
        display:none;
    }

    .testimonial {
        padding:8% 5% 6% 5%;
        flex:0 0 80%;
        margin:0;
    }

    .project-box, .casestudy .customer-projects .project-box {
        flex: 100%;
    }

    button {
        width: 100%;
        justify-content: center;
    }

    button.projekte-filter-btn {
        width:auto;
    }

    .fs-tabs button {
        width:auto;
    }

    .feature-container-h2 {
        margin: 56px 0 44px 0;
    }

    .fs-tabs {
        padding:0 5%;
    }

    .advantages-container {
        gap: 22px;
    }

    .teaser-text {
        display:block !important;
    }

    .content-projects .teaser-text,
    .academymaker-funktionen.wrapper {
        margin-top:0;
    }

    .advantage-box {
        flex: 0 0 100%;
    }

    .feature-container p {
        /* margin-bottom: 0; */
    }

    .feature-container.feature-left {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 30px;
        border-bottom: 1px solid var(--color-bg-light);
        padding-bottom: 30px;
    }

    .feature-container.feature-right {
        flex-direction: column-reverse;
        align-items: flex-start;
        margin-bottom: 30px;
        padding-bottom: 30px;
    }

    .grey .feature-container.feature-left,
    .grey .feature-container.feature-right {
        border-bottom: 1px solid var(--color-white);
    }

    .feature-container.feature-right:last-child,
    .feature-container.feature-left:last-child {
        border:none;
    }

    .academymanager-teaser .wrapper {
        flex-direction: column;
        padding: 0% 5% 92px 5%;
        gap:10px;
    }

    .left-column,
    .right-column {
        width: 100%;
    }

    .left-column {
        margin-bottom: 30px;
        margin-top: 30px;
    }

    .image-container {
        width: 100%;
    }

    /* Optional: Positionierung der kleinen Bilder im responsiven Layout anpassen */
    .image-container .small-image {
        width: 60px; /* evtl. kleinere Icons */
    }

    .feature-container.feature-left
}

@media (max-width: 990px) {
    .submit-area {
        display:flex;
        flex-direction: column;
    }
    .boilerplate form a.submit {
        margin:0px 0px 10px 0;
        text-align: center;
        background-position-x: 95%;
    }

    .boilerplate form a {
        margin:0;
        padding:13px;
        text-align: center;
        background-position-x: 95%;
    }

    .boilerplate .wrapper input[type="submit"], input[type="submit"] {
        padding: 14px 13px;
        text-align: center;
        background-position-x: 95%;
        margin-right:0 !important;
        margin-bottom:18px !Important;
    }

}

@media (max-width: 650px) {

    #contact_form_recall .flex {
        gap:0;
        flex-direction: column;
    }
}

@media (max-width: 600px) {
    .feature-container {
        gap: 50px;
    }
    .feedback-box .zitat-icon {
        width:70px;
        right: -15px;
        top: -45px;
    }

    .feedback-box {
        padding:8%;
    }

    .filled-line, .vertical-line {
        left:0;
    }
    .steps {
        gap:30px;
    }
    .step:nth-child(even), .step {
        flex-direction: column;
        gap:0;
        padding-left: 36px;
        position: relative;
        margin: 0 0 40px 0;
    }
    .step-icon.left, .step-content.left, .step-content.left p, .step-content.left h3 {
        text-align:left;
    }

    .step-icon.left, .step-icon.right {
        position: absolute;
        left:90px;
        top: -20px;
    }

    .step-number {
        position: absolute;
    }

    .step-content.left h3,
    .step-content.right h3 {
        margin-top: 80px;
    }

}

@media (max-width: 470px) {
    .boilerplate form .submit-area a {
        display:block;
    }

    .boilerplate form .submit-area a.submit {
        display:block;
        margin: 0 0 10px 0;
        background-position: 95%;
    }
}

p, h1, h2, h3, h4, h5 {
    text-rendering: auto;
    text-rendering: optimizeSpeed;
    text-rendering: optimizeLegibility;
    text-rendering: geometricPrecision;
}

/* Neue Landingpages */

.stage .logo {
    margin-top:0;
}

.landingpage .left-column h1 {
    font-size:48px;
}

.landingpage .stage {
    padding:1% 0 2% 0;
}

@media (max-width: 1000px) {
    .landingpage .stage {
        padding:5% 0 5% 0;
    }
}

.landingpage .stage-content .stage-video {
    width:100%;
}

.lp-siegel {
    max-width: 100%;
    background-color: #2C333A;
    padding: 15px 10px;
}

.lp-siegel.blue {
    background-color:var(--color-blue-navy);
}

.lp-siegel-container {
    display: flex;
    gap: 46px;
    flex-wrap: wrap;
    justify-content: center; /* zentriert die letzte Reihe */
    align-items: center;
}

.lp-siegel-item {
    position: relative;
    flex: 0 1 clamp(70px, 0vw, 80px); /* responsive Breite, aber fixierte Kachelgröße */
    aspect-ratio: 1 / 1;
    padding: 8px;
    cursor: pointer;
    transition: transform 0.25s ease;

}

/* Beide Bilder liegen deckungsgleich übereinander */
.lp-siegel-item img {
    position: absolute;
    inset: 8px;                      /* respektiert das Padding */
    object-fit: contain;             /* proportional einpassen */
    transition: opacity 0.25s ease;
    pointer-events: none;            /* verhindert Hover-Flackern */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.lp-siegel-item .siegel-color { opacity: 0; }

.lp-siegel-item:hover { transform: scale(1.3); }
.lp-siegel-item:hover .siegel-bw { opacity: 0; }
.lp-siegel-item:hover .siegel-color { opacity: 1; }

.stage-buttons {
    display:flex;
    gap:20px;
}

.stage-button.ghost button {
    background:transparent;
    border:2px solid var(--color-orange);
    color:var(--color-orange);
}

.stage-button.ghost.white button {
    background:transparent;
    border:2px solid var(--color-white);
    color:var(--color-white);
}

.stage-button.ghost:hover button {
    background:var(--color-orange);
    color:var(--color-white);
}

.stage-button.ghost.white:hover button {
    background:var(--color-white);
    color:var(--color-blue-navy);
}

.stage-button.ghost:hover button svg path {
    stroke: white;
}

.stage-button.ghost.white:hover button svg path {
    stroke: var(--color-blue-navy);
}

.landingpage .wrapper.academymaker {
    padding:0;
}

@media (max-width: 1400px) {
    .landingpage .stage-content {
        max-width: 1110px;
        gap: 20px;
        align-items: center;
    }

    .landingpage .stage-buttons {
        margin-top:-10px;
    }

    .landingpage .left-column h1 {
        font-size: 40px;
        line-height: 50px;
    }

    .lp-siegel-container {
        gap:2%;
    }

    .landingpage .teaser-text.special-teaser {
        margin: 35px 0 35px 0;
    }

    .landingpage .logo-carousel-big {
        margin: -10px 0px 30px !important;
    }

    .lp-siegel {
        padding:1px 10px;
    }
}

@media (max-width: 960px) {
    .lp-siegel-container {
        flex-wrap: wrap;
    }

    .lp-siegel-item {
        width: 120px;
        flex: 1 1 auto;
        height: 80px;
    }
}

@media (max-width: 1020px) {
    .stage-buttons {
        gap: 8px;
        flex-direction: column;
    }
}

.training-details {
    padding:0 5%;
}

@media (max-width: 774px) {
    .stage-buttons {
        width:100%;
    }

    .lp-siegel-item {
        flex: 0 1 clamp(81px, 0vw, 80px)
    }

    .stage .logo {
        margin-top:30px;
    }

    .landingpage .stage-content {
        padding-top: 40px;
    }

    .stage-content {
        padding-left:5%;
        padding-right:5%;
    }
}

@media (max-width: 840px) {
    .landingpage .wrapper.academymaker {
        padding:0 5%;
    }
}

/* Neuer Testi Slider für LP */
/* ============================================================
   LP TESTIMONIAL SLIDER  (v2)
   ============================================================ */

.lp-slider-container {
    padding: 0 0 60px 0;
    background: #f3f4f5;
}

/* ── Pfeil-Icon als CSS-Variable ── */
:root {
    --lp-arrow-mask: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 15'>\
  <path d='M7.5013 13.3333L1.66797 7.49999L7.5013 1.66666' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/>\
</svg>");
    --lp-icon-color: var(--color-dark);
}

/* ── Äußerer Wrapper ── */
.lp-slider {
    position: relative;
    width: 100%;
    overflow: hidden;     /* Nachbar-Slides clippen */
}

/* ── Viewport ── */
.lp-slider-viewport {
    position: relative;
    width: 100%;
    overflow: hidden;
    touch-action: pan-y;  /* vertikales Scrollen erlauben, horizontales übernimmt JS */
}

/* ── Track: alle Slides nebeneinander ── */
.lp-slider-track {
    display: flex;
    gap: 0;               /* Abstände über margin der Slides */
    will-change: transform;
    /* transition wird per JS gesetzt */
}

/* ── Einzelner Slide ── */
.lp-testimonial {
    flex: 0 0 auto;
    width: min(918px, 74vw);   /* max 918 px, auf kleinen Screens responsiv */
    margin: 0 16px;            /* seitlicher Abstand → Nachbar bleibt sichtbar */
    box-sizing: border-box;
    border-radius: var(--radius-md);
    background: var(--color-white);
    padding: 30px 30px 30px 40px;
    position: relative;
    opacity: 0.35;
    transform: scale(0.93);
    transition: transform 0.4s ease, opacity 0.4s ease, box-shadow 0.4s ease;
}

.lp-testimonial.lp-active {
    opacity: 1;
    transform: scale(1);
}

/* ── Innen-Layout: Bild | Text | Trennlinie | Logo ── */
.lp-t-grid {
    display: grid;
    grid-template-columns: auto 1fr 1px auto;
    gap: 30px;
    align-items: center;
    height: 100%;
}

.lp-t-img {
    width: 120px;
    height: 120px;
    border-radius: var(--radius-md);
    object-fit: cover;
    flex-shrink: 0;
}

.lp-t-text {
    padding: 0;
}

.lp-t-text p {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 24px;
    margin: 0 0 16px 0;
}

.lp-t-author {
    font-weight: var(--font-weight-bold);
}

/* ── Trennlinie ── */
.trenner {
    width: 1px;
    min-height: 80px;
    align-self: stretch;
    background-color: var(--color-border); /* sichtbare Linie! */
    border-radius: 1px;
}

/* ── Logo-Bereich ── */
.lp-t-logo {
    min-width: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lp-t-logo img {
    width: 110px;
    height: auto;
    max-height: 60px;
    object-fit: contain;
}

/* ── Navigations-Buttons (prev/next innerhalb jedes Slide-Artikels) ── */
.lp-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: var(--radius-pill);
    border: 2px solid var(--color-bg-light);
    background: var(--color-white);
    cursor: pointer;
    z-index: 4;
    padding: 0;
    margin: 0;
    --lp-icon-color: var(--color-dark);
    opacity: 0;
    transition: background-color 0.2s ease, border-color 0.2s ease,
    opacity 0.2s ease;
}

/* Auf dem aktiven Slide einblenden */
.lp-testimonial.lp-active .lp-nav {
    opacity: 1;
}

.lp-prev { left:  -21px; }
.lp-next { right: -21px; }

/* Pfeil-Icon via Mask */
.lp-nav::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 9px;
    height: 22px;
    background-color: var(--lp-icon-color);
    mask-image: var(--lp-arrow-mask);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-image: var(--lp-arrow-mask);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
}

.lp-next::before { transform: rotate(180deg); }

.lp-nav:hover,
.lp-nav:focus-visible {
    background-color: var(--color-dark);
    border-color: var(--color-dark);
    --lp-icon-color: var(--color-white);
    outline: none;
}

.lp-nav:focus-visible {
    box-shadow: 0 0 0 3px rgba(78,88,98,.25);
}

.lp-nav:disabled,
.lp-nav[aria-disabled="true"] {
    opacity: 0.3;
    cursor: default;
    pointer-events: none;
}

/* ── Casestudies-Arrow (unverändert) ── */
.slider-nav,
.casestudies-arrow {
    position: relative;
    z-index: 10;
    top: 42%;
    --lp-icon-color: var(--color-dark);
}

.slider-nav button {
    width: 42px;
    height: 42px;
    border-radius: var(--radius-pill);
    border: 2px solid var(--color-bg-light);
    background: var(--color-white);
    display: block;
    float: left;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transition: var(--transition-fast) ease-in-out;
    margin: 0;
    position: absolute;
}

.slider-nav button.prev { left: -12%; }
.slider-nav button.next { right: -12%; }

@media (max-width: 1400px) {
    .slider-nav button.prev { left: -13%; }
    .slider-nav button.next { right: -13%; }
}
@media (max-width: 1200px) {
    .slider-nav button.prev { left: -14%; }
    .slider-nav button.next { right: -14%; }
}
@media (max-width: 720px) {
    .slider-nav button.prev { left: -17%; }
    .slider-nav button.next { right: -17%; }
}

.slider-nav button.prev::before,
.slider-nav button.next::before,
.casestudies-arrow--prev::before,
.casestudies-arrow--next::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 9px;
    height: 22px;
    background-color: var(--lp-icon-color);
    mask-image: var(--lp-arrow-mask);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-image: var(--lp-arrow-mask);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
}

.slider-nav button.next::before,
.casestudies-arrow--next::before { transform: rotate(180deg); }

.slider-nav button:hover,
.casestudies-arrow:hover {
    background-color: var(--color-dark-hover);
    --lp-icon-color: var(--color-white);
}

/* ── Responsive ── */
@media (max-width: 900px) {
    .lp-t-grid { gap: 20px; }
}

@media (max-width: 720px) {
    .lp-testimonial {
        width: min(918px, 86vw);
        padding: 20px;
    }

    /* Auf Mobile: Bild oben, darunter Text + Logo nebeneinander */
    .lp-t-grid {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-areas:
            "img  logo"
            "text text";
        gap: 16px;
    }

    .trenner          { display: none; }
    .lp-t-img         { grid-area: img; width: 80px; height: 80px; }
    .lp-t-text        { grid-area: text; padding: 0; }
    .lp-t-logo        { grid-area: logo; }

    .lp-nav           { display: none !important; }

    .lp-slider-container { padding: 50px 0 60px 0; }
}

/* ── Reduzierte Bewegung ── */

/* Footer */
.footer {
    background: #2C333A;
    color: var(--color-white);
    font-family: var(--font-base);
}

.footer a {
    color: inherit;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 11px;
}

.footer a:hover {
    text-decoration: underline;
}

.footer-container {
    max-width: 1280px;
    margin-inline: auto;
    padding: 96px 5% 64px;
}

.footer-bottom-container {
    background:#272D33;
}

/* ===== Newsletter ===== */
.footer-newsletter {
    display:flex;
    align-items: center;
    gap: 32px;
}

.footer-newsletter h3 {
    font-size: 1.75rem;
    line-height: 1.2;
    margin: 0 0 16px;
}
.footer-newsletter p {
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 27px; /* 168.75% */
}
.newsletter-form {
    display: flex;
    gap: 18px;
    align-items: stretch;
}
.newsletter-form input[type="email"] {
    border-radius: 8px;
    border: 1px solid #D5D7DA;
    background:var(--color-white);
    padding: 12px 16px;
    height: 48px;
    box-sizing: border-box;
    flex: 1 1 0;
}
.newsletter-form button {
    border: none;
    color: var(--color-orange);
    font-family: var(--font-base);
    font-weight: var(--font-weight-semi);
    outline: none;
    cursor: pointer;
    width: auto;
    font-size: var(--font-size-base);
    padding: 13px 20px;
    transition: background-color 0.2s  ease-in-out;
    border-radius: var(--radius-md);
    line-height: 18px;
    color: var(--color-white);
    margin:0;
    height:48px;
}
.newsletter-form button:hover {
    background: #d97610;
}

.footer-divider {
    height: 1px;
    border: 0;
    background: #384148;
    margin: 48px 0 68px;
    box-shadow: none;
}

/* ===== Hauptspalten ===== */
.footer-main {
    display: grid;
    gap: 32px;
    grid-template-columns: 1.2fr repeat(5, 1fr);
    align-items: flex-start;
    margin-bottom: 48px;
}

.footer-contact p {
    margin: 0 0 13px;
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 24px; /* 171.429% */
}
.footer-contact .btn-contact {
    display: inline-block;
    box-sizing: border-box;
    padding: 14px 20px;
    justify-content: center;
    align-items: center;
    color:var(--color-orange);
    border-radius: var(--radius-md);
    border: 2px solid var(--color-orange);
    transition: var(--transition-fast);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    margin: 21px 0 0 0;
}
.footer-contact .btn-contact:hover {
    background: var(--color-orange);
    color:var(--color-white);
    text-decoration: none;
}

.footer-column h4 {
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 24px; /* 171.429% */
    margin-bottom:16px;
}
.footer-column ul {
    list-style: none;
    margin: 0;
    padding: 0;
    color: var(--color-white);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
    line-height: 24px; /* 171.429% */
}
.footer-column li + li {
    margin-top: 12px;
}
.footer-column a {
    color: var(--color-white);
}
.footer-column a:hover {
    color: #e7eef3;
}

/* ===== Slider Platzhalter ===== */
.footer-slider {
    margin: 48px 0;
    width: 100%;
    overflow: hidden;
}

/* ===== Unterer Bereich ===== */
.footer-bottom {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 20px;
    align-items: center;
    max-width: 1280px;
    margin-inline: auto;
    padding: 30px 5%;
}
.footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.footer-links a {
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-style: normal;
    font-weight: var(--font-weight-bold);
}
.footer-links a:hover {
    color: #e7eef3;
}
.footer-bottom p {
    margin: 0;
    color: var(--color-white);
    text-align: center;
}

.footer-bottom nav span {
    line-height: 10px;
}

.footer-bottom nav p {
    line-height: 14px;
    font-weight: var(--font-weight-normal);
    color:var(--color-white);
}

.footer-social span {
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
}
.footer-social img {
    width: 24px;
    height: 24px;
    display: block;
}

.footer-siegel-slider-wrapper {
    overflow: hidden;
}

.footer-siegel-carousel {
    margin-top: 48px;
    display: flex;
    padding: 0;
    will-change: transform; /* bessere Performance */
}

.footer-siegel-carousel .item {
    flex: 0 0 calc(100% / 6);
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 6px;
}

.footer-siegel-carousel .item img {
    display: block;
    height: 80px;
    width: auto;
    max-width: 90%;
    object-fit: contain;
    filter: grayscale(1);
}

/* ===== Responsive ===== */
@media (max-width: 1200px) {
    .footer-main {
        grid-template-columns: 1.2fr repeat(4, 1fr);
    }
}

@media (max-width: 992px) {

    .footer-newsletter {
        flex-direction: column;
    }

    .footer-newsletter div {
        width:100%;
    }

    .newsletter-form {
        flex-direction: column;
    }
    .newsletter-form button {
        width: 100%;
    }
    .footer-main {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .footer-bottom {
        grid-template-columns: 1fr;
        text-align: center;
    }
    .footer-social {
        justify-content: center;
    }
}

@media (max-width: 730px) {

    .footer-siegel-carousel {
        margin-top:0;
    }
}

@media (max-width: 440px) {

    .footer-newsletter h3 {
        font-size: 1.4rem;
    }
    .footer-main {
        grid-template-columns: 1fr;
    }
    .footer-links {
        justify-content: center;
    }
}

/* Neuer Logo Slider */
.logo-slider {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 8px 0;
}

.logo-slider .logo-track {
    display: flex;
    will-change: transform;
    transition: transform 400ms ease;
}

.logo-slider .logo-slide {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    box-sizing: border-box;
}

.logo-slider .logo-slide img {
    display: block;
    width: 100%;
    height: 64px;          /* an Dein Design anpassen */
    object-fit: contain;
}

/* subtiler Rand-Effekt */
.logo-slider::before,
.logo-slider::after {
    content: "";
    position: absolute;
    left: 0; right: 0;
    height: 12px;
    pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
    .logo-slider .logo-track,
    .logo-slider .logo-slide img {
        transition: none !important;
    }
}

.logo-slider {
    overflow: hidden;
    width: 100%;
    position: relative;
}

.logo-slider__track {
    display: flex;
    transition: transform 400ms ease;
    will-change: transform;
}

.logo-slider__item {
    /* Alle gleich breit, Anzahl wird per CSS-Variable gesetzt */
    flex: 0 0 calc(100% / var(--items-per-view, 5));
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px; /* etwas Luft zwischen Logos */
    box-sizing: border-box;
}

.logo-slider__item img {
    width: 100%;
    height: auto;
    max-height: 60px; /* anpassen je nach Design */
    object-fit: contain;
    display: block;
}

/* E-Didaktik */
.elearn-steps {
    padding: 96px 5%;
}

.elearn-steps h2 {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-style: normal;
    font-weight: var(--font-weight-semi);
    line-height: 44px; /* 146.667% */
}

.elearn-steps-inner {
    display: grid;
    grid-template-columns: 1.2fr 1fr min-content;
    gap: 65px;
    align-items: center;
    margin-top: 96px;
}

.elearn-steps .steps-list {
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
}

.elearn-steps .steps-list::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: #f0a23a;
}

.elearn-steps .step {
    position: relative;
    padding-left: 45px;
    margin-bottom: 30px;
}

#step-5 {
    margin-bottom: -6px;
}

/* STEP ICON SVG */
.elearn-steps .step-icon {
    position: absolute;
    left: -4px;
    top: 0px;
    width: 32px;
    height: 32px;
}

.elearn-steps .step-icon svg {
    display: block;
    width: 32px;
    height: 32px;
}

.elearn-steps .step-icon-active {
    display: none;
}

.elearn-steps .step-icon-inactive {
    display: block;
}

.elearn-steps .step.is-active .step-icon-active {
    display: block;
}

.elearn-steps .step.is-active .step-icon-inactive {
    display: none;
}

.elearn-steps .step-heading {
    color:  var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-style: normal;
    font-weight: var(--font-weight-bold);
    line-height: 38px; /* 158.333% */
    cursor: pointer;
}

.elearn-steps .step-text {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, opacity 0.3s ease;
    color:var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 27px; /* 168.75% */
}

.elearn-steps .step.is-active .step-text {
    max-height: 200px;
    opacity: 1;
    margin-top: 12px;
}

/* IMAGE */

.elearn-steps .steps-image {
    background: var(--color-white);
    border-radius: 16px;
}

.steps-image .step-img {
    max-width: 100%;
    display: none;
}

.steps-image .step-img.is-active {
    display: block !important;
}

/* DOTS */
.elearn-steps .steps-dots {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-left: -44px;
}

.elearn-steps .dot {
    border-radius: var(--radius-pill);
    width: 12px;
    height: 12px;
    background: var(--color-dark);
    cursor: pointer;
}

.elearn-steps .dot.is-active {
    background: var(--color-white);
    border:1px solid var(--color-dark);
}

/* Mobile Layout */
@media (max-width: 900px) {

    .elearn-steps {
        padding: 64px 5%;
    }

    .elearn-steps-inner {
        grid-template-columns: 1fr;   /* untereinander */
        row-gap: 32px;
        column-gap: 0;
        margin-top: 48px;
    }

    /* Reihenfolge: Steps zuerst, Bild darunter */
    .elearn-steps .steps {
        order: 1;
    }

    .elearn-steps .steps-image {
        order: 2;
    }

    /* Dots ausblenden */
    .elearn-steps .steps-dots {
        display: none !important;
        margin-left: 0; /* falls du vorher -55px gesetzt hast */
        width: auto;
    }

    /* Bildkarte etwas kompakter */
    .elearn-steps .steps-image-card {
        padding: 20px;
    }

    /* Optional: Step-Abstände enger */
    .elearn-steps .step {
        margin-bottom: 24px;
    }

    /* Optional: damit Icon nicht zu viel Platz frisst */
    .elearn-steps .step {
        padding-left: 56px; /* 44px Icon + etwas Luft */
    }

    .elearn-steps .step-icon {
        top: 2px;
    }
}

.contact-siegel, .support-siegel  {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 30px;
    gap: 30px
}

.support-siegel {
    gap:50px;
}

@media (max-width: 700px) {
    .contact-siegel {
        flex-direction: column;
    }
}

/* Neue Index Seite */

/* Stage overflow, damit Fly-in von rechts sauber ist */
.stage {
    position: relative;
    overflow: hidden;
    background: url(/img/home/stage_bg.png) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.stage-home .stage-content {
    max-width: 1251px;
    padding:50px 3%;
}

/* ===== Stage: Rechte Spalte / Visual ===== */
.right-column {
    position: relative;
    flex: 1;
    min-height: 420px;
}

.stage-visual {
    position: relative;
    width: 100%;
    height: 100%;
}

/* Alle Float-Elemente: absolut positioniert, initial unsichtbar */
.stage-float {
    position: absolute;
    opacity: 0;
    will-change: transform, opacity;
    transition: transform 0.1s ease-out; /* für Parallax-Smooth */
}

/* Positionen */
.stage-float-1 {
    top: -30px;
    right: 21px;
    width: 80%;
    z-index: 99;
}
.stage-float-2 {
    top: -45px;
    right: -355px;
    width: 100%;
    z-index: 20;
}
.stage-float-3 {
    top: 30px;
    right: -20px;
    width: 122%;
    z-index: 50;
}
.stage-float-4 {
    top: 150px;
    right: -180px;
    width: 50%;
    z-index: 51;
}
.stage-float-5 {
    top: 210px;
    right: -39px;
    width: 64%;
    z-index: 51;
}

.stage-float-6 {
    top: 0px;
    right: -409px;
    width: 40%;
    z-index: 81;
}

.stage-float-7 {
    top: 180px;
    right: -483px;
    width: 119%;
    z-index: 41;
}

/* Mobile Fallback-Bild (nur auf kleinen Screens) */
.stage-mobile-image {
    display: none;
    width: 100%;
}

@media (max-width: 1950px) {
    .stage-float-6 {
        display: none;
    }
}

@media (max-width: 1770px) {
    .stage-float-7 {
        display: none;
    }
}

@media (max-width: 768px) {
    .stage-float {
        display: none;
    }
    .stage-mobile-image {
        display: block;
    }
}

/* ===== Fly-In Keyframes ===== */
@keyframes flyFromTop {
    from {
        opacity: 0;
        transform: translateY(-60px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes flyFromBottom {
    from {
        opacity: 0;
        transform: translateY(60px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Aktive Klassen, die per JS gesetzt werden */
.stage-float.fly-in-top {
    animation: flyFromTop 0.75s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.stage-float.fly-in-bottom {
    animation: flyFromBottom 0.75s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

/* ============================================================
   PRODUCTS SECTION
   ============================================================ */
.products-section {
    position: relative;
    padding: 120px 0 200px 0;
}

.products-inner {
    width: min(1252px, calc(100% - 90px));
    margin: 0 auto;
}

/* Intro-Text über den Produkten */
.products-intro {
    color: var(--color-text);
    text-align: center;
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-style: normal;
    font-weight: var(--font-weight-light);
    line-height: 44px;
    margin: 0 0 120px 0;
}

/* Vertikale Liste der Produkt-Rows */
.products-list {
    display: flex;
    flex-direction: column;
    gap: 290px;
}

/* ---- Produkt-Row: Grid-Layout ---- */

.product-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 120px;
    opacity: 1; /* Row selbst nicht ausblenden */
    will-change: transform;
}

.product-text,
.product-media {
    opacity: 0;
    will-change: transform, opacity;
    transition:
            transform 750ms cubic-bezier(.16, 1, .3, 1),
            opacity   650ms ease;
}

/* Text links → kommt von links */
.product-row--left  .product-text  { transform: translate3d(-80px, 0, 0); }
/* Bild rechts → kommt von rechts */
.product-row--left  .product-media { transform: translate3d( 80px, 0, 0); }

/* Text rechts → kommt von rechts */
.product-row--right .product-text  { transform: translate3d( 80px, 0, 0); }
/* Bild links → kommt von links */
.product-row--right .product-media { transform: translate3d(-80px, 0, 0); }

/* ---- Eingeblendet ---- */
.product-row.is-visible .product-text,
.product-row.is-visible .product-media {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

/* Bild leicht verzögert → staffelt den Effekt */
.product-row.is-visible .product-media {
    transition-delay: 120ms;
}

/* ─── SVG Stack ─────────────────────────────────────────── */

/* Stack-Container: overflow visible damit Layer 2 rausragen kann */
.svg-stack {
    box-shadow: none;
    overflow: visible;
}

/* Layer 1: Basisebene, volle Breite, normaler Flow */
.svg-layer--1 {
    display: block;
    opacity: 0;
    transform: translateY(40px);
    transition:
            opacity  700ms cubic-bezier(.16, 1, .3, 1),
            transform 700ms cubic-bezier(.16, 1, .3, 1);
    will-change: transform, opacity;
}

/* Layer 2: kleiner, oben rechts versetzt über Layer 1 */
.svg-layer--2 {
    position: absolute;
    width: 45%;           /* kleiner als Layer 1 */
    top: -12%;            /* etwas nach oben rausragen */
    right: -8%;           /* nach rechts versetzt */
    opacity: 0;
    transform: translateY(60px);
    transition:
            opacity  700ms cubic-bezier(.16, 1, .3, 1),
            transform 700ms cubic-bezier(.16, 1, .3, 1);
    transition-delay: 280ms;
    will-change: transform, opacity;
}

/* Eingeblendet – JS setzt is-visible */
.svg-layer--1.is-visible,
.svg-layer--2.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Parallax aktiv – JS übernimmt Transform, Transition nur noch für opacity */
.svg-layer--1.parallax-ready,
.svg-layer--2.parallax-ready {
    transition-property: opacity;
}

/* Mobile: Layer 2 nicht absolut stapeln */
@media (max-width: 768px) {
    .svg-layer--2 {
        position: static;
        width: 100%;
        top: auto;
        right: auto;
        transform: translateY(40px);
    }
}

/* ---- Badge (Icon + Logo/Titel) ---- */
.product-badge {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 10px;
}

.product-icon {
    width: 48px;
    height: 48px;
    display: block;
    border-radius: 99px;
    box-shadow: 0 18px 38px 0 rgba(26, 112, 166, 0.25);
}

.product-icon--am {
    background: url(/img/home/academymaker_icon.svg) no-repeat center center #00609C;
}

.product-icon--elearning {
    background: url(/img/home/icon-e-learning.svg) no-repeat center center #01A8F0;
    box-shadow: 0 18.142px 37.796px rgba(47, 192, 208, 0.25);
}

.product-icon--content {
    background: url(/img/home/icon_content.svg) no-repeat center center #01A8F0;
    box-shadow: 0 18.142px 37.796px rgba(47, 192, 208, 0.25);
}

/* Produkt-Titel (für Content-Rows ohne eigenes Logo) */
.product-title {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semi);
    line-height: 38px;
}

/* Produkt-Headline (für Software-Rows) */
.product-headline {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semi);
    line-height: 38px;
    margin-bottom: 16px;
}

/* Beschreibungstext */
.product-copy {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-normal);
    line-height: 30px;
    margin: 0 0 16px 0;
    max-width: 520px;
}

/* CTA-Button */
.product-cta {
    border-radius: var(--radius-md);
    background: var(--color-orange);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semi);
    color: var(--color-white);
    text-decoration: none;
    transition: background 0.2s;
}

.product-cta:hover {
    background: var(--color-orange-dark);
    text-decoration: none !important;
}

/* ---- Bild-Spalte ---- */
.product-media {
    position: relative;
    overflow: visible;
    border-radius: var(--radius-md);
   /* box-shadow: 0 20px 74px 0 rgba(0, 0, 0, 0.15); */
}

.blob::before {
    content: '';
    position: absolute;
    z-index: -1;
    opacity: 0.75;
    width: 110%;
    height: 110%;
    top:  55%;
    left: 25%;
    border-radius: 841px;
    background: radial-gradient(50% 50% at 50% 50%, rgba(251, 206, 154, 0.17) 0%, rgba(251, 206, 154, 0.00) 100%);
}

.blob-2::before {
    content: '';
    position: absolute;
    z-index: -1;
    opacity: 0.75;
    width: 110%;
    height: 110%;
    top: -55%;
    left: -39%;
    background: url(/img/home/kreise.png) no-repeat center center;
}

.blob-2::after {
    content: '';
    position: absolute;
    z-index: -1;
    opacity: 1;
    width: 110%;
    height: 110%;
    top: 19%;
    left: 20%;
    border-radius: 1211px;
    background: radial-gradient(50% 50% at 50% 50%, rgba(1, 168, 240, 0.20) 0%, rgba(1, 168, 240, 0.00) 100%);
}

.blob-3::before {
    content: '';
    position: absolute;
    z-index: -1;
    opacity: 1;
    width: 110%;
    height: 110%;
    top: -51%;
    left: -40%;
    border-radius: 1211px;
    background: radial-gradient(50% 50% at 50% 50%, rgba(1, 168, 240, 0.20) 0%, rgba(1, 168, 240, 0.00) 100%);
}

.blob-3::after {
    content: '';
    position: absolute;
    z-index: -1;
    opacity: 1;
    width: 110%;
    height: 110%;
    top: 19%;
    left: 20%;
    border-radius: 1211px;
    background: radial-gradient(50% 50% at 50% 50%, rgba(1, 168, 240, 0.20) 0%, rgba(1, 168, 240, 0.00) 100%);
}

.product-row--left .product-media {
    margin-right: calc(-1 * (50vw - 590px)); /* 590px = halbe max-width (1180px) */
    padding-right: 0;
}

/* Bei --right: Bild steht links → ragt nach links raus */
.product-row--right .product-media {
    margin-left: calc(-1 * (50vw - 590px));
    padding-left: 0;
}


.product-image {
    width: 100%;
    height: auto;
    display: block;
    will-change: transform;
    transform: translate3d(0, 0, 0);
    max-width: none;
    border-radius: var(--radius-md);
    box-shadow: 0 20px 74px 0 rgba(0, 0, 0, 0.15);
}

/* Ab 2000px: Bilder bleiben im Grid, kein Rausbrechen mehr */
@media (min-width: 2000px) {
    .product-row--left .product-media {
        margin-right: calc(-1 * (40vw - 590px));
    }
    .product-row--right .product-media {
        margin-left: calc(-1 * (40vw - 590px));
    }

    .product-row {
        gap:96px;
    }
}

@media (min-width: 2800px) {
    .product-row--left .product-media {
        margin-right: calc(-1 * (30vw - 590px));
    }
    .product-row--right .product-media {
        margin-left: calc(-1 * (30vw - 590px));
    }

    .product-row {
        gap:96px;
    }
}

/* ---- Schwebende Mini-Bilder über product-media ---- */
.product-media-float {
    position: absolute;
    pointer-events: none;
    will-change: transform;
    transition: transform 0.15s ease-out;
    z-index: 2;
    filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.18));
}

/* Positionierung je Float – leicht über dem Hauptbild, versetzt */
.product-media-float--1 {
    width: 40%;
    top: 52%;
    right: 66%;
}

.product-media-float--2 {
    width: 17%;
    top: 32%;
    left: 45%;
}

.product-media-float--3 {
    width: 30%;
    bottom: -8%;
    right: 74%;
}


/* Auf Mobile ausblenden */
@media (max-width: 1100px) {
    .product-media-float {
        display: none;
    }
}

.products-section {
    overflow: hidden; /* verhindert horizontalen Scrollbalken, Bild bleibt sichtbar */
}

/* Mobile Override */
.product-row--left,
.product-row--right {
    transform: translate3d(0, 24px, 0) !important;
}

/* ============================================================
   VIDEO BANNER
   ============================================================ */

.video-banner {
    position: relative;
    width: 100%;
    overflow: hidden;
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    background:url('/img/home/kundenorientierung.webp') no-repeat center center;
    background-size:cover;
}

.job-offer-banner {
    position: relative;
    width: 100%;
    overflow: hidden;
    min-height: 580px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    background:url('/img/home/home_joboffer.webp') no-repeat;
    background-size: cover;
}

.job-offer-banner .vacancies {
    padding: 30px;
    border-radius: var(--radius-md) 12px 0 0;
    background: var(--color-white);
    position: absolute;
    bottom: 0;
    left: 70%;
}

.job-offer-banner .vacancies svg {
    margin-bottom: 30px;
}

.job-offer-banner .vacancies h3, .job-offer-banner .vacancies span {
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-style: normal;
    font-weight: var(--font-weight-semi);
    line-height: 38px;
    margin-bottom: 10px;
}

/* ---- Das Video ---- */
.video-banner-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

/* ---- Die halbtransparente Fläche ---- */
.video-banner-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.50) 100%);
}

/* ---- Der Content-Bereich ---- */
.video-banner-content, .job-offer-banner-content {
    width: 1251px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    padding: 0 5%;
}

.video-banner-inner, .job-offer-inner {
    max-width: 452px;
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}

/* ---- Headline ---- */
.video-banner-content h2, .job-offer-banner-content h2 {
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-style: normal;
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    margin: 0;
}

/* ---- Copy ---- */
.video-banner-content p, .job-offer-banner-content p {
    color: var(--color-bg-light);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: var(--font-weight-normal);
    line-height: 27px;
    margin: 0;
    max-width: 600px;
}

/* ---- CTA Button – identisch zu .product-cta ---- */
.video-banner-cta {
    border-radius: var(--radius-md);
    background: var(--color-orange);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semi);
    color: var(--color-white);
    text-decoration: none;
    transition: background 0.2s;
    margin-top: 8px;
}

.video-banner-cta:hover {
    background: var(--color-orange-dark);
    text-decoration: none !important;
}

/* ============================================================
   CASESTUDIES SLIDER
   ============================================================ */

.casestudies-section {
    padding: 90px 5%;
    background: #F5F5F5; /* Heller Hintergrund wie im Screenshot */
    overflow: hidden;
}

.casestudies-inner {
    max-width: 1251px;
    margin: 0 auto;
}

/* ---- Header-Zeile: Headline links, Button rechts ---- */
.casestudies-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 48px;
    gap: 24px;
}

.casestudies-headline {
    font-family: var(--font-base);
    font-weight: 550;
    margin: 0 0 24px;
    font-size: var(--font-size-xl);
    line-height: 32px;
    color: var(--color-text);
}

/* ---- Slider-Wrapper: der sichtbare Ausschnitt ---- */
.casestudies-slider-wrapper {
    position: relative;
}

/* ---- Track: enthält alle Slides nebeneinander ---- */
.casestudies-track {
    display: flex;
    gap: 30px;
    transition: transform 500ms cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform;
    flex-wrap: nowrap;
}

.casestudies-slide {
    flex: 0 0 auto;
    box-sizing: border-box;
    transition:transform 500ms cubic-bezier(0.25, 1, 0.5, 1), opacity   400ms ease;
    opacity: 0;
}
.casestudies-box {
    height: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.casestudies-box .project-text {
    flex: 1;
}

/* ---- CaseStudy-Link (orangener Text-Link) ---- */
.casestudies-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--color-orange);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semi);
    text-decoration: none;
    margin-top: 20px;
    transition: gap 0.2s ease;
}

/* ---- Navigations-Pfeile ---- */
.casestudies-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 42px;
    height: 42px;
    border-radius: var(--radius-circle);
    border: 1px solid var(--color-bg-light);
    background: var(--color-white);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition-fast);
}

.casestudies-arrow:hover {
    background:var(--color-dark);
}

.casestudies-arrow--prev { left:  -52px; }
.casestudies-arrow--next { right: -52px; }

.casestudies-arrow.is-disabled {
    opacity: 0.3;
    pointer-events: none;
}

.casestudies-slide.is-visible-slide {
    opacity: 1;
}

.casestudies-slide.is-active {
    opacity: 1;
}

/* ============================================================
   MOBILE
   ============================================================ */
@media (max-width: 768px) {
    .casestudies-section {
        padding: 60px 5%;
    }

    .casestudies-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .casestudies-arrow {
        display: none; /* Auf Mobile: Pfeile weg, Navigation per Swipe */
    }
}

/* ============================================================
   MOBILE
   ============================================================ */
@media (max-width: 1100px) {

    .products-inner {
        width:90%;
        padding-left: 5%;
        padding-right: 5%;
    }

    .blob::before, .blob-2::after, .blob-2::before , .blob-3::after, .blob-3::before {
        display:none;
    }

    .products-section {
        padding: 60px 0;
    }

    .products-intro {
        font-size: 22px;
        line-height: 34px;
        margin-bottom: 40px;
    }

    .product-text,
    .product-media {
        transform: translate3d(0, 30px, 0);
    }

    .product-media img {
        box-shadow: none !important;
    }

    .products-list {
        gap: 60px;
    }

    .product-row {
        grid-template-columns: 1fr;
        gap: 60px;
        /* Mobilgeräte: Fly-in nur von unten, kein horizontal */
        transform: translate3d(0, 24px, 0) !important;
    }

    /* is-visible greift jetzt auch auf Mobile */
    .product-row.is-visible .product-text,
    .product-row.is-visible .product-media {
        opacity: 1;
        transform: translate3d(0, 0, 0);
        transition-delay: 0ms;
    }

    /* Auf Mobile immer Text oben, Bild unten */
    .product-row--left  .product-text,
    .product-row--right .product-text  {
        order: 1;
    }

    .product-row--left  .product-media,
    .product-row--right .product-media {
        order: 2;
        margin-right: 0;
        margin-left: 0;
    }

    .video-banner {
        min-height: 490px;
    }

    .video-banner-content, .job-offer-banner-content {
        position: relative;
        z-index: 2;
        width: 100%;
        padding: 0 5%;
        text-align: left;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }

    .job-offer-banner {
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        padding:0 5%;
        box-sizing: border-box;
    }

    .job-offer-banner-content {
        padding:0;
    }

    .job-counter {
        text-align: left !important;
        display: inline !important;
    }

    .job-offer-banner .vacancies svg {
        margin: 0;
    }

    .job-offer-banner .vacancies {
        padding: 30px;
        border-radius: var(--radius-md);
        background: var(--color-white);
        position: initial;
        margin:30px 0 0 0;
    }
}

/* ── Info-Teaser (wie feature-container, aber immer sichtbar) ── */
.info-teaser {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 96px;
    padding: 96px 0;
    flex-direction: row;
}

.info-teaser .text {
    flex: 1;
}

.info-teaser h2 {
    margin-bottom: 24px;
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semi);
    line-height: 32px;
    color: var(--color-text);
}

.info-teaser p {
    margin-bottom: 24px;
    color:var(--color-text);
}

.info-teaser .image {
    flex: 1;
    position: relative;
    border-radius: var(--radius-md);
    overflow: hidden;
}

/* Crossfade-Bilder im info-teaser */
.info-teaser .image .crossfade-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1s ease;
}

/* Erstes Bild braucht eine definierte Höhe auf dem Container */
.info-teaser .image img:first-child {
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    visibility: hidden; /* hält die Höhe, ist aber unsichtbar */
}

.info-teaser .image .crossfade-img.is-active {
    opacity: 1;
}

@media (max-width: 960px) {
    .info-teaser {
        flex-direction: column;
        gap: 40px;
        padding: 60px 0;
    }
}

/* ── Facts Section ── */
.facts-section {
    padding: 96px 5%;
    background: #fff);
}

.facts-inner {
    max-width: 1252px;
    margin: 0 auto;
}

.facts-inner h2 {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    color: var(--color-text);
    margin: 0 0 16px 0;
}

.facts-intro {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal);
    line-height: 27px;
    color: var(--color-text);
    margin: 0 0 64px 0;
    max-width: 760px;
}

.facts-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 42px;
}

.fact-card:nth-child(5),
.fact-card:nth-child(6),
.fact-card:nth-child(7) {
    grid-column: span 1; /* zurücksetzen */
}


.facts-row-2 {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 42px;
}

.fact-card {
    background: var(--color-bg-light);
    border-radius: var(--radius-md);
    padding: 30px;
    box-sizing: border-box;

    /* Ausgangszustand für Animation */
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

/* Ausgangszustände je nach Richtung */
.fact-card[data-from="bottom"] { transform: translateY( 80px); opacity: 0; }
.fact-card[data-from="top"]    { transform: translateY(-80px); opacity: 0; }

/* Eingeblendet */
.fact-card.is-visible {
    opacity: 1;
    transform: translate(0, 0);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

/* Pulse-Keyframe */
@keyframes fact-pulse {
    0% {
        transform: scale(1);
    }

    70% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1);
    }
}

/* Wird nach dem Einblenden gesetzt */
.fact-card.do-pulse {
    animation: fact-pulse 0.6s ease-out forwards;
}

.fact-icon {
    color: var(--color-orange);
    margin-bottom: 20px;
}

.fact-icon svg {
    display: block;
}

.fact-number {
    display: block;
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    color: var(--color-orange);
    line-height: 1.2;
    margin-bottom: 8px;
}

.fact-label {
    display: block;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semi);
    color: var(--color-text);
    line-height: 24px;
}

@media (max-width: 900px) {
    .facts-grid, .facts-row-2 {
        grid-template-columns: repeat(1, 1fr);
    }
    .facts-grid .fact-card:nth-child(5) {
        grid-column: auto;
    }
}

@media (max-width: 500px) {
    .facts-grid {
        grid-template-columns: 1fr;
    }
}

/* ── Siegel-Bereich ── */
.seals-section {
    padding: 90px 5%;
    background: var(--color-white);
}

.seals-inner {
    max-width: 1252px;
    margin: 0 auto;
    text-align: center;
}

.seals-section p {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal);
    line-height: 27px;
    color: var(--color-text);
    margin: 0 auto;
    margin-bottom: 70px;
    text-align: center;
}

.seals-grid {
    display: flex;
    flex-wrap: wrap;           /* Umbrechen wenn kein Platz */
    justify-content: center;
    align-items: center;
    gap: 40px 80px;            /* vertikal 40px, horizontal 56px */
}

.seals-grid img {
    height: 60px;              /* feste Höhe, Breite passt sich an */
    width: auto;
    object-fit: contain;
    display: block;
}

@media (max-width: 600px) {
    .seals-grid {
        gap: 28px 36px;
    }

    .seals-grid img {
        height: 44px;
    }
}

/* ── Pressemitteilungs-Slider ── */
.press-slider-section {
    padding: 96px 0;
    background: var(--color-white);
    overflow: hidden;
}

.press-slider-inner {
    max-width: 1252px;
    margin: 0 auto;
    padding: 0 5%;
    margin-bottom: 56px;
}

/* Header */
.press-slider-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 56px;
}

.press-slider-header-text {
    max-width: 80%;
}

@media (max-width: 1200px) {
    .press-slider-header-text {
        max-width: 75%;
    }

}

@media (max-width: 1000px) {
    .press-slider-header-text {
        max-width: 65%;
    }

}

.press-slider-header h2 {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    color: var(--color-text);
    margin: 0 0 16px 0;
}

.press-slider-header p {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal);
    line-height: 27px;
    color: var(--color-text);
    margin: 0;
}

/* Wrapper: positioniert die Buttons relativ */
.press-slider-wrapper {
    position: relative;
    width: 100%;
}

/* Viewport: clippt die Nachbar-Slides */
.press-slider-viewport {
    overflow: hidden;
    width: 100%;
}

/* Track */
.press-slider-track {
    display: flex;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform;
}

/* Slide */
.press-slide {
    flex: 0 0 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0 calc((100vw - 1252px) / 2); /* zentriert den Inhalt */
    opacity: 0.4;
    transform: scale(0.97);
    transition: opacity 0.4s ease, transform 0.4s ease;
}

.press-slide.is-active {
    opacity: 1;
    transform: scale(1);
}

/* Slide-Inhalt */
.press-slide-inner {
    display: flex;
    gap: 48px;
    align-items: center;
    background: #ffff;
    border:2px solid var(--color-bg-light);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.press-slide-image {
    flex-shrink: 0;
    width: 389px;
    height: 263px;
    aspect-ratio: 71/48;
    overflow: hidden;
}

.press-slide-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.press-slide-content {
    padding: 40px 40px 40px 0;
    flex: 1;
}

.press-slide-date {
    display: block;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    color: var(--color-text);
    margin-bottom: 16px;
}

.press-slide-title {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-bold);
    line-height: 32px;
    color: var(--color-text);
    margin: 0 0 5px 0;
}

.press-slide-text p {
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-normal);
    line-height: 24px;
    color: var(--color-text);
    margin: 0 0 24px 0;
}

.press-slide-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--color-orange);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semi);
    text-decoration: none;
    transition: gap 0.2s ease;
}

.press-slide-link:hover {
    gap: 12px;
    text-decoration: none;
}

/* Buttons – identisch zu .quote-btn aus main.css */
.press-slider-btn {
    width: 36px;
    height: 36px;
    border-radius: var(--radius-pill);
    border: 2px solid var(--color-bg-light);
    background: var(--color-white);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-dark);
    transition: var(--transition-fast);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;

    /* Initial unsichtbar – erscheinen bei Hover über Slide */
    opacity: 0;
    pointer-events: none;
}

.press-slider-wrapper:hover .press-slider-btn {
    opacity: 1;
    pointer-events: auto;
}

.press-slider-btn:hover {
    background: var(--color-dark-hover);
    color: var(--color-white);
}

.press-slider-btn--prev { left: -18px; }
.press-slider-btn--next { right: -18px; }

.press-slider-btn.is-disabled {
    opacity: 0.3 !important;
    pointer-events: none;
}

/* Dots */
.press-slider-dots {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 40px;
}

.press-slider-dot {
    width: 12px;
    height: 12px;
    border-radius: var(--radius-circle);
    background: var(--color-dark);
    border: 1px solid var(--color-dark);
    cursor: pointer;
    transition: background 0.2s ease;
}

.press-slider-dot.is-active {
    background: var(--color-white);
}

/* Dots – Blog-Slider & Casestudies-Slider */
.blog-slider-wrapper .slider-dots,
.casestudies-slider-wrapper .slider-dots {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin-top: 24px;
    margin-bottom: 0;
    position: relative;
    z-index: 1;
}

.slider-dot {
    padding: 0;
    cursor: pointer;
    width: 12px;
    height: 12px;
    background: var(--color-dark);
    border: 1px solid var(--color-dark);
    border-radius: var(--radius-circle);
    cursor: pointer;
    transition: transform .2s ease, background-color .2s ease;
}

.slider-dot.is-active {
    background: #fff;
}

/* Responsive */
@media (max-width: 900px) {

    .press-slider-header-text {
        max-width: 650px;
    }

    .press-slider-header {
        flex-direction: column;
        gap: 24px;
        align-items: flex-start;
    }

    .press-slide {
        flex: 0 0 90%;
        max-width: 90%;
    }

    .press-slide-inner {
        flex-direction: column;
        gap: 0;
    }

    .press-slide-image {
        width: 100%;
        height: 200px;
    }

    .press-slide-content {
        padding: 24px;
    }
}

@media (max-width: 600px) {
    .press-slide {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .press-slider-btn {
        display: none;
    }
}

@media (max-width: 1340px) {
    .press-slide {
        padding: 0 5%;
    }
    .press-slide:not(.is-active) {
        padding: 0 2%;
    }
}

/* ── Blog-Slider ── */
.blog-slider-section {
    background: var(--color-bg-light); /* grauer Hintergrund wie bisherige Blog-Sektion */
}

.blog-author-meta {
    display: flex;
    flex-direction: column;
}


.blog-slide-box {
    height: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.blog-slider-box {
    padding:0;
}

.blog-slide-link {
    display: flex;
    flex-direction: column;
    flex: 1;
    text-decoration: none;
    color: inherit;
    padding-bottom: 24px;
}

.blog-slide-link:hover {
    text-decoration: none;
}

.blog-slide-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    flex-shrink: 0;
    border-radius: 12px 12px 0 0;
}

.blog-slide-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.blog-slide-link:hover .blog-slide-image img {
    transform: scale(1.03);
}

.blog-slide-title {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-bold);
    line-height: 27px;
    color: var(--color-text);
    margin-bottom:16px;
    padding:0 30px;
}

.blog-slide-text {
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    color: var(--color-text);retro rewind
    line-height: 22px;
    margin-bottom:24px;
    flex: 1;
    padding:0 30px;

    /* Auf 3 Zeilen begrenzen */
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-slider-box .blog-tag {
    margin:30px 30px 16px 30px;
}

.blog-slider-box .casestudies-link {
    padding:0 30px 30px 30px;
    margin:0;
}

.jobs-section {
    padding: 96px 5%;
    background:url('/img/unternehmen/job_bg.webp') repeat;
    background-size: 70%;
    background-color: #78787833;
}

.jobs-inner {
    max-width: 1252px;
    margin: 0 auto;
}

.jobs-headline, .job-counter {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    color: var(--color-text);
    line-height: 44px;
    margin: 0 0 48px 0;
}

/* 3-spaltiges Grid */
.jobs-grid {
    display: flex;
    gap: 42px;
    flex-wrap: wrap;
}

/* ---- Card ---- */
.job-card {
    flex: 0 0 calc(33.333% - 28px);
    background: var(--color-white);
    border-radius: var(--radius-md);
    padding: 30px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: var(--color-text);
    border: 1px solid #fff;

    /* Reveal-Ausgangszustand */
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.5s ease, transform 0.5s ease, box-shadow 0.2s ease;
}

.job-card.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.job-card.is-hidden {
    display: none;
}

.job-card:hover {
    transform: translateY(-3px);
    text-decoration: none;
    color: var(--color-text);
    border: 1px solid #D6D6D6;
}


/* Badge (Kategorie) */
.job-badge {
    display: inline-block;
    align-self: flex-start;
    padding: 8px 14px;
    border-radius: 16px;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semi);
    background: var(--color-bg-light);
    color: var(--color-text);
    margin-bottom: 32px;
}

.job-exp-senior {
    color:#004A94;
    background: rgba(0, 74, 148, 0.07);
}

.job-exp-beginner {
    color: #3192f4;
    background: rgba(0, 74, 148, 0.07);
}

.job-exp-study {
    background: rgba(150, 15, 0, 0.07);
    color: #960F00;
}

/* Stellentitel */
.job-card-title {
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-semi);
    line-height: 28px;
    color: var(--color-text);
    margin-top:auto;
    transition: color 0.2s ease;
}

/* Kurzbeschreibung – 3 Zeilen, dann Ellipsis */
.job-card-desc {
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    line-height: 24px;
    color: var(--color-grey-text);
    margin: 0;
    flex: 1; /* schiebt Tags nach unten */
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Tag-Leiste (Standort, Arbeitszeit, …) */
.job-card-tags {
    display: flex;
    flex-wrap: wrap;
    margin-top: 32px;
}

.job-card-tag {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 16px;
    background:#F3F3F3;
    border: 1px solid var(--color-border, #E0E0E0);
    font-family: var(--font-base);
    font-weight: var(--font-weight-normal);
    font-size: var(--font-size-sm);
    color: #595959;
    display: flex;
}

/* ---- "Zeige mehr"-Button ---- */
.jobs-footer {
    display: flex;
    justify-content: center;
    margin-top: 48px;
}

.jobs-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 6px 12px 24px;
    border-radius: var(--radius-md);
    background: var(--color-white);
    border: 1px solid var(--color-border, #E0E0E0);
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semi);
    color: var(--color-text);
    cursor: pointer;
    transition: background 0.2s ease, box-shadow 0.2s ease;
    width: auto; /* globales mobile button{width:100%} überschreiben */
}

.jobs-more-btn:hover {
    background: var(--color-bg-light);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* ---- Responsive ---- */
@media (max-width: 960px) {
    .job-card {
        flex: 0 0 calc(50% - 12px);
        flex-grow: 1;
    }
}

@media (max-width: 600px) {
    .jobs-section {
        padding: 60px 5%;
    }

    .job-card {
        flex: 0 0 100%;
    }
    .jobs-more-btn {
        width: 100%;
        justify-content: center;
    }
}

.benefits-section {
    padding: 96px 5%;
}

.benefits-inner {
    max-width: 1252px;
    margin: 0 auto;
}

/* ---- 1. Zwei-Spalten-Intro ---- */
.benefits-intro {
    display: flex;
    gap: 32px;
    margin-bottom: 64px;
    align-items: flex-start;
    flex-direction: column;
    max-width: 880px;
}

.benefits-intro-left {
    flex: 1;
}

.benefits-intro-right {
    flex: 1;
}

.benefits-intro-headline {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-normal);
    line-height: 44px;
    color: var(--color-text);
    margin: 0;
}

.benefits-intro-headline strong {
    font-weight: var(--font-weight-bold);
}

.benefits-intro-right p {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    line-height: 26px;
    color: var(--color-text);
    margin: 0;
}

/* ---- 2. Accordion + Crossfade nebeneinander ---- */
.benefits-body {
    display: flex;
    gap: 68px;
    align-items: flex-start;
    margin-bottom: 64px;
}

/* ---- Accordion ---- */
.benefits-accordion {
    flex: 1;
    width: 100%;
}

.accordion-item {
    border-radius: 10px;
    border: 1px solid #D6D6D6;
    margin-bottom: 20px;
}

.accordion-item:first-child {
    border-top: 1px solid var(--color-border, #E0E0E0);
}

.accordion-header {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    cursor: pointer;
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-bold);
    color: var(--color-text);
    box-sizing: border-box;
}

.accordion-label {
    flex: 1;
    line-height: 30px; /* 166.667% */
}

.accordion-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.accordion-icon img,
.accordion-icon svg {
    width: 100%;
    height: 100%;
}

.accordion-arrow {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    transition: transform 0.3s ease;
}

.accordion-item.is-open .accordion-arrow {
    transform: rotate(180deg);
}

.accordion-panel {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.5s ease, padding 0.5s ease;
    padding: 0;
}

.is-open .accordion-panel {
    border-top: 1px solid #D6D6D6;
}

.accordion-item.is-open .accordion-panel {
    max-height: 800px; /* großzügig, wird nie wirklich erreicht */
    padding-bottom: 18px;
}

.accordion-panel ul {
    margin: 0;
    padding-left: 45px;
    padding-top:20px;
    padding-right:45px;
}

.accordion-panel ul li {
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    line-height: 24px;
    color: var(--color-text);
    margin-bottom: 4px;
    list-style: initial;
}

.accordion-panel p {
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    line-height: 26px;
    color: var(--color-text);
    margin: 0;
    padding:30px;
}

/* ---- Crossfade-Bilder ---- */
.benefits-crossfade {
    flex: 0 0 420px;
    position: relative;
    border-radius: var(--radius-md);
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: #F3F3F3;
}

.faq-content {
    flex: 0 0 360px;
    position: relative;
    border-radius: var(--radius-md);
    border:1px solid #D6D6D6;
    background: var(--color-bg-light);
    padding:48px;
    box-sizing: border-box;
    text-align: center;
}

.faq-content button {
    margin: 0 auto;
}

.faq-content img {
    max-width: 200px;
}

.faq-content h3 {
    color: var(--color-text);
    font-size: var(--font-size-xl);
    font-style: normal;
    font-weight: 600;
    line-height: 38px;
    margin-bottom: 16px;
    text-align: center;
}

.faq-content p {
    color: var(--color-text);
    text-align: center;
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: 400;
    line-height: 27px;
    margin-bottom: 16px;
}

.crossfade-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1s ease;
}

.crossfade-img.is-active {
    opacity: 1;
}

/* ---- 3. Textblock ---- */
.benefits-text {
    max-width: 850px;
}

.benefits-text-headline {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    color: var(--color-text);
    margin: 0 0 20px 0;
}

.benefits-text p {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    line-height: 26px;
    color: var(--color-text);
    margin: 0;
}

.photo-band-section {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 0 0 0 0;
}

.photo-band-row {
    overflow: hidden;
}

.photo-band-track {
    display: flex;
    gap: 12px;
    width: max-content; /* nimmt die natürliche Breite aller Bilder */
}

.photo-band-track img {
    height: 200px;
    width: auto;
    object-fit: cover;
    border-radius: var(--radius-md);
    flex-shrink: 0;
    display: block;
}

/* Reihe 1: nach links */
.photo-band-track--left {
    animation: band-left 60s linear infinite;
}

/* Reihe 2: nach rechts */
.photo-band-track--right {
    animation: band-right 60s linear infinite;
}

@keyframes band-left {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); } /* 50% = genau ein Satz Bilder */
}

@keyframes band-right {
    0%   { transform: translateX(-50%); }
    100% { transform: translateX(0); }
}

/* Pause bei Hover */
.photo-band-row:hover .photo-band-track {
    animation-play-state: paused;
}

/* ---- Responsive ---- */
@media (max-width: 960px) {
    .benefits-body {
        flex-direction: column;
    }

    .benefits-crossfade {
        flex: none;
        width: 100%;
    }

    .benefits-intro {
        flex-direction: column;
        gap: 32px;
    }
}

@media (max-width: 600px) {
    .benefits-section {
        padding: 60px 5%;
    }

    .photo-band-track img {
        height: 140px;
    }
}

.contact-section {
    padding: 96px 5%;
}

.contact-inner {
    max-width: 1252px;
    margin: 0 auto;
    display: flex;
    gap: 42px;
    align-items: flex-start;
    justify-content: space-between;
}

/* ---- Spalte 1: Text ---- */
.contact-text {
    flex: 1;
    max-width: 630px;
}

.contact-headline {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    color: var(--color-text);
    margin: 0 0 20px 0;
}

.contact-text p {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    line-height: 27px;
    color: var(--color-text);
    margin: 0 0 16px 0;
}

.contact-links a {
    color: var(--color-orange);
    font-weight: var(--font-weight-semi);
    text-decoration: none;
}

.contact-links a:hover {
    text-decoration: underline;
}

/* ---- Spalten 2 & 3: Cards ---- */
.contact-card {
    flex: 1;
    background: var(--color-white);
    border-radius: var(--radius-md);
    padding: 28px;
    box-sizing: border-box;
    position: relative;
    /* Platz für das herausragende Avatar-Bild oben */
    margin-top: 40px;
    padding-top: 48px;
    max-width: 450px;
}

.contact-card-avatar {
    position: absolute;
    top: -50px;
    left: 82%;
    transform: translateX(-50%);
    width: 100px;
    height: 100px;
    border-radius: var(--radius-circle);
    overflow: hidden;
    border: 1px solid var(--color-white);
}

.contact-card-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.contact-card-name {
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-bold);
    color: var(--color-text);
    margin: 0 0 10px 0;
}

.contact-card-role {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    color: var(--color-text);
    margin: 0 0 30px 0;
    line-height: 27px;
}

.contact-card-address {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    line-height: 27px;
    color: var(--color-text);
    font-style: normal;
}

/* ---- Responsive ---- */
@media (max-width: 768px) {
    .contact-inner {
        flex-direction: column;
    }

    .contact-card {
        width: 100%;
    }
}

/* ── Branchen-Laufband (Referenzen) ── */
.branchen-band-section {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 0 0 60px 0;
}

.branchen-band-row {
    overflow: hidden;
}

.branchen-band-track {
    display: flex;
    gap: 20px;
    width: max-content;
}

.branchen-tag {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 20px;
    border-radius: 50px;
    border: 1px solid #FFF;
    background: #FFF;
    flex-shrink: 0;
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-bold);
    color: var(--color-text);
}

.branchen-tag img {
    width: 28px;
    height: 28px;
    object-fit: contain;
    flex-shrink: 0;
}

/* Reihe 1: nach links */
.branchen-band-track--left {
    animation: branchen-band-left 30s linear infinite;
}

/* Reihe 2: nach rechts */
.branchen-band-track--right {
    animation: branchen-band-right 30s linear infinite;
}

@keyframes branchen-band-left {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-25%); }
}

@keyframes branchen-band-right {
    0%   { transform: translateX(-25%); }
    100% { transform: translateX(0); }
}

@media (max-width: 600px) {
    .branchen-tag {
        font-size: 15px;
        padding: 12px 16px;
    }
}

/* ── Kunden-Intro mit Hintergrundbild-Crossfade ── */
.kunden-intro-section {
    position: relative;
    min-height: 590px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

/* Container für die gestapelten Bilder – füllt die gesamte Sektion */
.kunden-intro-crossfade {
    position: absolute;
    inset: 0;
}

/* Jedes Bild liegt übereinander – exakt wie .crossfade-img auf Karriere */
.kunden-intro-crossfade .crossfade-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1s ease;
}

.kunden-intro-crossfade .crossfade-img.is-active {
    opacity: 1;
}

/* Dunkles Overlay für Lesbarkeit des Textes */
.kunden-intro-section::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 1;
}

/* Text liegt über dem Overlay */
.kunden-intro-content {
    position: relative;
    z-index: 2;
    padding: 80px 5%;
    max-width: 1252px;
    color: var(--color-white);
    display: flex;
    margin: 0 auto;
}

.kunden-intro-content div {
    max-width: 50%;
}

@media (max-width: 900px) {
    .kunden-intro-content div {
        max-width: 80%;
    }
}

@media (max-width: 600px) {
    .kunden-intro-content div {
        max-width: 100%;
    }
}



.kunden-intro-content h2 {
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semi);
    line-height: 35px;
    color: var(--color-white);
    margin: 0 0 20px 0;
}

.kunden-intro-content p {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal);
    line-height: 27px;
    color: rgba(255, 255, 255, 0.85);
    margin: 0;
}

.kunden-intro-content a {
    color: var(--color-orange);
    text-decoration: none;
}

.kunden-intro-content a:hover {
    text-decoration: underline;
}

/* ── Kunden-Filter Sektion ── */
.kunden-filter-section {
    padding: 96px 5%;
    background: var(--color-white);
}

.kunden-filter-inner {
    max-width: 1252px;
    margin: 0 auto;
}

/* Dropdown etwas breiter als Contact-Standard */
.kunden-filter-inner .custom-select {
    max-width: 280px;
    margin-bottom: 0;
}

.kunden-filter-inner .options-container label:first-child {
    border-bottom:none;
}

.kunden-filter-inner .options-container {
    bottom: auto;
    top: 100%;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 8px 16px -4px rgba(10, 13, 18, 0.08);
}

.kunden-filter-inner .custom-select.open .select-trigger {
    border-radius: 8px 8px 0 0;
}

/* Tags etwas mehr Abstand zum Grid */
.kunden-filter-inner .selected-elearns {
    margin-top: 42px;
    margin-bottom: 62px;
    min-height: 28px;
}

/* "Filter zurücksetzen" Link-Style */
.kunden-filter-reset {
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--color-orange);
    text-decoration: none;
    cursor: pointer;
    padding: 2px 8px;
}
.kunden-filter-reset:hover {
    text-decoration: underline;
}

/* ── Logo-Grid ── */
.kunden-logo-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 99px;
    justify-content: center;
    align-content: stretch;
}

.kunden-logo-item {
    display: flex;
    align-items: center;
    justify-content: center;
}

.kunden-logo-item img {
    width: 170px !important;
    max-height: 180px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

.kunden-logo-item.is-hidden {
    display: none;
}

/* ── Projekte Sektion ── */
.projekte-section {
    padding: 96px 5%;
    background: var(--color-white);
}

.projekte-inner {
    max-width: 1252px;
    margin: 0 auto;
}

/* Interviews */

.interview-chat {
    max-width: 1000px;
    margin: 0 auto 60px;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    gap: 62px;
}

.chat-row {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.chat-row.chat-answer {
    justify-content: flex-end;
}

.chat-avatar-label {
    flex-shrink: 0;
    width: 72px;
    height: 72px;
    background: url(/img/referenzen/logo_x_cell_chat.png);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.chat-bubble {
    max-width: 380px;
    padding: 30px
}

.chat-answer .chat-bubble {
    max-width: 500px;
}

.chat-bubble-question {
    background: var(--color-orange, #f07d00);
    color: #FFF;
    font-family: var(--font-base);
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
    border-top-left-radius: 0px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
}

.chat-bubble-answer {
    color: #333;
    background:#F2F2F2;
    font-family: var(--font-base);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px; /* 166.667% */
    border-top-left-radius: 12px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
    font-size: 15px;
}

.chat-avatar-img {
    flex-shrink: 0;
    width: 72px;
    height: 72px;
    border-radius: 12px;
    overflow: hidden;
}

.chat-avatar-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 600px) {
    .chat-bubble {
        max-width: calc(100% - 66px);
    }
}

/* Scroll-Reveal */
.chat-row {
    opacity: 0;
    transition: opacity 0.45s ease, transform 0.45s ease;
}
.chat-row.chat-question {
    transform: translateX(-28px);
}
.chat-row.chat-answer {
    transform: translateX(28px);
}
.chat-row.chat-visible {
    opacity: 1;
    transform: translateX(0);
}

.interview {
    display: flex;
    padding: 30px;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    max-width: 430px;
    width: 90%;
    margin: -70px auto 70px;
    border-radius: 12px;
    border: 2px solid var(--color-bg-light);
    background: #FFF;
}

.interview-meta {
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.interview-meta-person {
    display: flex;
    align-items: center;
    gap: 20px;
    border-right: 1px solid var(--color-bg-light);
    padding-right: 9%;
}

.interview-logo {
    flex-shrink: 0;
    max-width: 90px;
}

.interview-logo img {
    max-width: 100%;
    max-height: 60px;
    object-fit: contain;
}

.interview-img img {
    width:72px;
    border-radius: 12px;
}

.interview-data p {
    font-size: var(--font-size-xs);
    line-height: 20px;
    margin-top: 8px;
}

.projekte-headline {
    font-family: var(--font-base); font-weight: 550;
    margin: 0 0 24px;
    font-size: var(--font-size-xl);
    line-height: 32px;
    color: var(--color-text);
}

.projekte-intro {
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-normal);
    line-height: 30px;
    color: var(--color-text);
    max-width: 860px;
    margin: 0 0 36px 0;
}

.interview-company-box {
    background: #F3F3F3;
    padding: 80px 5%;
    margin-top: 86px;
}

.interview-company-inner {
    display: flex;
    align-items: center;
    gap: 60px;
    max-width: 1000px;
    margin: 0 auto;
}

.interview-company-text {
    flex: 1;
    padding-right: 60px;
    border-right: 1px solid #D9D9D9;
}

.interview-company-text h5 {
    margin-bottom: 20px;
    color: #333;
    font-family: var(--font-base);
    font-size: 20px;
    font-weight: 600;
    line-height: 32px;
}

.interview-company-text p {
    color: #333;
    font-family: var(--font-base);
    font-size: 15px;
    font-weight: 400;
    line-height: 26px;
}

.interview-company-logo {
    flex-shrink: 0;
    width: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.interview-company-logo img {
    max-width: 100%;
    max-height: 120px;
    object-fit: contain;
}

@media (max-width: 700px) {
    .interview-company-inner {
        flex-direction: column;
        gap: 30px;
    }
    .interview-company-text {
        padding-right: 0;
        border-right: none;
        border-bottom: 1px solid #D9D9D9;
        padding-bottom: 30px;
    }
    .interview-company-logo {
        width: 120px;
    }
}

.interview-mixer h2 {
    color: #333;
    font-family: var(--font-base);
    font-size: 30px;
    font-style: normal;
    font-weight: 600;
    line-height: 44px; /* 146.667% */
    margin-bottom:44px;
}

.interview-mixer {
    max-width: 1252px;
    margin: 0 auto;
    margin-top:96px;
    margin-bottom:96px;
}

.interview-mixer .flex {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 42px;
    align-items: start;
}

.interview-mixer .story-card {
    opacity: 1;
    border-radius: 12px;
    border: 2px solid var(--grau-1-background, #F3F3F3);
    background: #FFF;
    flex: 1 1 0px;
}

@media (max-width: 1100px) {
    .interview-mixer .flex {
        flex-direction: column;
        gap:0;
    }

    .interview-mixer {
        padding-left:5%;
        padding-right: 5%;
    }
}


/* ── Pill-Filter ── */
.projekte-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 100px;
}

.projekte-filter-btn {
    padding: 12px 31px;
    border-radius: 20px;
    background: #F2F2F2;
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semi);
    color: var(--color-text);
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s, color 0.2s;
    height: 38px;
}

.projekte-filter-btn:hover {
    background: #4C5862;
    color: var(--color-white);
}

.projekte-filter-btn.is-active {
    background: #4C5862;
    color: var(--color-white);
}

/* ── Projekt-Liste ── */
.projekte-list {
    display: flex;
    flex-direction: column;
    gap: 200px;
}

.project-row {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    align-items: center;
    gap: 96px;
    opacity: 0; /* JS blendet ein */
    transform: translateY(20px);
}

.project-row.project-row--right {
    grid-template-columns: 1fr 1.5fr;
}

.projekte-list .project-row.is-hidden,
.testimonials-grid .project-row.is-hidden {
    display: none;
}

/* Rechts-ausgerichtete Row: Bild links, Text rechts → Reihenfolge tauschen */
.project-row--right .project-row-text  { order: 2; }
.project-row--right .project-row-media { order: 1; }

.project-row-headline {
    font-family: var(--font-base);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semi);
    line-height: 38px;
    color: var(--color-text);
    margin: 0 0 20px 0;
}

.project-row-body {
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal);
    line-height: 27px;
    color: var(--color-text);
    margin: 0;
}

/* ── Browser-Mockup ── */

.browser-mockup-screen img {
    display: block;
    width: 100%;
    height: auto;
}

/* ── Responsive ── */
@media (max-width: 960px) {
    .project-row, .project-row.project-row--right {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .project-row--right .project-row-text  { order: 1; }
    .project-row--right .project-row-media { order: 2; }
    .projekte-list { gap: 80px; }
    .interview {
        display:flex;
        flex-direction: column;

    }

    .kunden-logo-grid {
        gap: 55px;
    }
}

@media (max-width: 600px) {
    .projekte-filter-btn { font-size: 13px; padding: 8px 16px; }
    .projekte-list { gap: 60px; }
}

/* ── Stories Sektion ── */
.stories-section {
    padding: 96px 5%;
    background: var(--color-bg-light);
}

.stories-section .projekte-filter-btn {
    background:#fff;
}

.stories-section .projekte-filter-btn.is-active,
.stories-section .projekte-filter-btn:hover {
    background:#4C5862;
}

.stories-inner {
    max-width: 1252px;
    margin: 0 auto;
}

.stories-headline {
    font-family: var(--font-base);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    line-height: 44px;
    color: var(--color-text);
    margin: 0 0 32px 0;
}

/* ── Masonry-Grid (Isotope) ── */
.stories-grid {
    margin-top: 48px;
}

.stories-grid .story-card {
    width: calc((100% - 84px) / 3);
    margin-bottom: 42px;
    opacity: 1;
    transform: none;
}

.stories-grid .project-box p {
    font-size:var(--font-size-sm);
    line-height: 24px;
    color:var(--color-text);
    margin:0 0 20px 0;
}

.stories-grid a.read-more:hover {
    text-decoration: underline;
}

.stories-grid .project-box .project-subheadline {
    font-weight:var(--font-weight-bold);
}

.story-card {
    break-inside: avoid;
    display: inline-block;
    width: 100%;
    margin-bottom: 42px;
    opacity: 0;
    transform: translateY(20px);
}

.story-card.is-hidden {
    display: none;
}

.testimonials-grid {
    column-count: 3;
    column-gap: 42px;
}

.testimonials-grid .project-row {
    break-inside: avoid;
    display: inline-block;
    width: 100%;
    margin-bottom: 42px;
    opacity: 0;
    transform: translateY(20px);
}

.testimonial-box {
    background: var(--color-bg-light);
    border-radius: var(--radius-md);
    padding: 30px;
}

.testimonial-logo {
    margin-bottom: 16px;
}

.testimonial-logo img {
    max-height: 40px;
    max-width: 120px;
    object-fit: contain;
}

.testimonial-text, .testimonial-box p {
    font-size: var(--font-size-sm);
    line-height: 24px;
    color: var(--color-text);
    margin: 0 0 20px 0;
}

.testimonial-author {
    display: flex;
    flex-direction: column;
    line-height: 20px;
}

.testimonial-author strong {
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
    color: var(--color-text);
}

.testimonial-author span {
    font-size: 13px;
    color: var(--color-grey-text);
}

@media (max-width: 960px) {
    .testimonials-grid { column-count: 2; }
}

@media (max-width: 600px) {
    .testimonials-grid { column-count: 1; }
}

/* ── Case Study Box – nutzt bestehende .project-box Styles ── */
.story-card--casestudy .project-box {
    background: var(--color-white);
    border-radius: var(--radius-md);
    padding: 30px;
    height: auto;
}

.story-card--casestudy .project-box a:not(.read-more) {
    display: contents; /* wrapper-Link ohne Layout-Einfluss */
}

/* ── Interview Box ── */
.interview-box {
    position: relative;
    background: var(--color-white);
    border-radius: var(--radius-md);
    padding: 30px;
    overflow: hidden;
    margin:0;
}

.interview-box .project-logo {
    height: auto;
    max-width: 140px;
    max-height: 30px;
    display: block;
    margin-bottom: 20px;
}

.interview-quote {
    background: #F2F2F2;
    border-radius: var(--radius-md);
    padding: 16px 20px;
    font-family: var(--font-base);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-normal);
    line-height: 30px;
    color: rgba(100, 107, 114, 0.96);
    margin: 0 0 24px 0;
    border: none;
}

.interview-person {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 20px;
}

.interview-avatar {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    object-fit: cover;
    flex-shrink: 0;
}

.interview-person-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.interview-person-info strong {
    font-family: var(--font-base);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
    color: var(--color-text);
    line-height: 22px;
}

.interview-person-info span {
    font-family: var(--font-base);
    font-size: 13px;
    font-weight: var(--font-weight-normal);
    color: var(--color-grey-text);
    line-height: 20px;
}

/* Dekoratives Anführungszeichen im Hintergrund */
.interview-deco {
    position: absolute;
    bottom: 7px;
    right: 20px;
    opacity: 0.5;
}

/* ── Responsive ── */
@media (max-width: 960px) {
    .stories-grid .story-card { width: calc((100% - 42px) / 2); }
}

@media (max-width: 600px) {
    .stories-grid .story-card { width: 100%; }
}

/* ══════════════════════════════════════════════
   AZUBI SECTION
   ══════════════════════════════════════════════ */
.azubi-section {
    position: relative;
    overflow: hidden;
    background:url(/img/unternehmen/background_azubi.png) center center no-repeat;
    background-size:cover;
    padding: 0 5%;
}

/* Dekorative Formen im Hintergrund */

.azubi-inner {
    position: relative;
    z-index: 1;
    max-width: 1252px;
    margin: 0 auto;
    padding:60px 0;
}

/* Kopfbereich (immer sichtbar) */
.azubi-header {
    text-align: center;
    color: #fff;
}

.azubi-icon {
    display: block;
}

.azubi-header h2 {
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semi);
    color: #fff;
    text-align:center;
    margin: 32px 0 30px 0;
    line-height: 44px; /* 146.667% */
}

/* Toggle-Button */
.azubi-toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: none;
    border: none;
    color: var(--color-white);
    font-family: var(--font-base);
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: 700;
    line-height: 24px; /* 150% */
    cursor: pointer;
    padding: 0;
    transition: opacity 0.2s;
}
.azubi-toggle:hover { opacity: 0.75; }

.azubi-toggle-arrow {
    transition: transform 0.35s ease;
    flex-shrink: 0;
}
.azubi-section.is-open .azubi-toggle-arrow {
    transform: rotate(180deg);
}

/* Ausklappbarer Bereich */
.azubi-body {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.55s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.4s ease,
                padding 0.55s ease;
    opacity: 0;
    padding: 0;
}
.azubi-section.is-open .azubi-body {
    max-height: 900px;
    opacity: 1;
    padding-bottom: 60px;
}

.azubi-subtitle {
    color: #fff;
    text-align: center;
    max-width: 720px;
    margin: 0 auto 48px;
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: 400;
    line-height: 27px; /* 168.75% */
}

/* Zwei-Spalten-Layout */
.azubi-columns {
    display: flex;
    gap: 60px;
    color: #fff;
}
.azubi-col {
    flex: 1;
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: 400;
    line-height: 27px; /* 168.75% */
}
.azubi-col h3 {
    font-size: var(--font-size-base);
    font-style: normal;
    font-weight: 700;
    line-height: 27px; /* 168.75% */
    margin: 0 0 16px;
}
.azubi-col ul {
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
}
.azubi-col ul li {
    padding: 4px 0 0 16px;
    position: relative;
}
.azubi-col ul li::before {
    content: '•';
    position: absolute;
    left: 0;
    color: #fff;
}

/* "Weniger"-Button im Body */
.azubi-close {
    display: flex;
    justify-content: center;
    margin-top: 40px;
}
.azubi-close-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: none;
    border: none;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    padding: 0;
    transition: opacity 0.2s;
}
.azubi-close-btn:hover { opacity: 0.75; }

/* Responsive */
@media (max-width: 768px) {
    .azubi-columns { flex-direction: column; gap: 32px; }
    .azubi-header h2 { font-size: 22px; }
}
