/* WEBFONTS ########################################## */

@font-face {
    font-family: 'Akko Light';
    src: url('fonts/AkkoW01-Light.eot');
    src: url('fonts/AkkoW01-Light.eot?#iefix') format('embedded-opentype'),
        url('fonts/AkkoW01-Light.woff2') format('woff2'),
        url('fonts/AkkoW01-Light.woff') format('woff'),
        url('fonts/AkkoW01-Light.ttf') format('truetype'),
        url('fonts/AkkoW01-Light.svg#AkkoW01-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Akko Medium';
    src: url('fonts/AkkoW01-Medium.eot');
    src: url('fonts/AkkoW01-Medium.eot?#iefix') format('embedded-opentype'),
        url('fonts/AkkoW01-Medium.woff2') format('woff2'),
        url('fonts/AkkoW01-Medium.woff') format('woff'),
        url('fonts/AkkoW01-Medium.ttf') format('truetype'),
        url('fonts/AkkoW01-Medium.svg#AkkoW01-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Akko Bold';
    src: url('fonts/AkkoW01-Bold.eot');
    src: url('fonts/AkkoW01-Bold.eot?#iefix') format('embedded-opentype'),
        url('fonts/AkkoW01-Bold.woff2') format('woff2'),
        url('fonts/AkkoW01-Bold.woff') format('woff'),
        url('fonts/AkkoW01-Bold.ttf') format('truetype'),
        url('fonts/AkkoW01-Bold.svg#AkkoW01-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

/* END WEBFONTS ################################# */

/* Variablen ####################################### */

:root {

/* TYPO */

--textLight: 'Akko Light';
--textMedium: 'Akko Medium';
--textBold: 'Akko Bold';

--h1Headlines: clamp(1.6875rem, 1.5441rem + 0.7647vw, 2.5rem);
--h2Headlines: clamp(1.5625rem, 1.4743rem + 0.4706vw, 2.0625rem);
--h3Headlines: clamp(1.375rem, 1.2978rem + 0.4118vw, 1.8125rem);
--h4Headlines: clamp(1.125rem, 1.0699rem + 0.2941vw, 1.4375rem);
--bilduntertitel: clamp(0.8125rem, 0.7794rem + 0.1765vw, 1rem);

--mengentext: clamp(0.9375rem, 0.8824rem + 0.2941vw, 1.25rem);
--mainNavigantionText: clamp(1rem, 0.9779rem + 0.1176vw, 1.125rem);


/* COLOR */

--hellgrau: #F5F5F5;
--framegrau: #E5E5E5;
--grau: #5B5B5B;
--grau2: #DDDDDD;
--gruen: #2E6432;
--gelb: #FEC917;
--weiss: #ffffff;

/* SCHATTEN */

--schattenNormal: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
--schattenHover: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;

}

/* END Variablen ################################### */

/* KLASSEN ####################################### */

body {
    font-family: var(--textLight);
    font-size: var(--mengentext);

}

* {
    border-radius: 0 !important;
}

#sp-main-body {
    padding-top: 60px!important;
}

.agv__breadcrumbSection {
    background-color: var(--gelb);
}

.breadcrumb {
    margin-bottom: 0;
    background-color: var(--gelb);
}

#sp-breadcrumbs > div > div > div > ol li.float-start {
    margin-right: 10px;
    color: var(--weiss);
}

.breadcrumb-item+.breadcrumb-item::before {
    color: var(--weiss);
}

#sp-breadcrumbs a {
    color: var(--weiss);
}

#sp-breadcrumbs a:hover {
    text-decoration: underline;
}

#sp-breadcrumbs li.breadcrumb-item.active span {
    font-family: var(--textBold);
    color: var(--weiss);
}

.sppb-addon-articles .sppb-addon-article-layout-masonry-content .sppb-article-info-wrap {
    padding: 0;
}

h1.sppb-title-heading {
    font-family: var(--textBold);
    font-size: var(--h1Headlines);
    text-transform: uppercase;
}

h2.sppb-title-heading {
    font-family: var(--textBold);
    font-size: var(--h2Headlines);
    text-transform: uppercase;
}


h3.sppb-title-heading {
    font-family: var(--textBold);
    font-size: var(--h3Headlines);
    text-transform: uppercase;
}

h3.sppb-image-layout-title  {
    font-family: var(--textnormal);
    font-size: 70%;
}

h3.sppb-image-layout-title  strong {
    font-family: var(--textBold);
    font-size: var(--h3Headlines);
}

.sppb-article-info-wrap h3,
h3.sppb-addon-title {
    font-family: var(--textBold);
    font-size: var(--h4Headlines);
    color: var(--grau);

    -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}



#sp-page-builder .sppb-section-title .sppb-title-subheading {
    font-family: var(--textLight);
    font-size: var(--h3Headlines);
}

.sppb-article-meta {
    padding: 0 15px;
}

.sppb-addon-articles .sppb-article-info-wrap h3 a {
    color: var(--grau)!important;
}

.sppb-addon-articles .sppb-addon-article-layout-masonry-content .sppb-article-info-wrap .sppb-article-introtext {
    padding: 15px;
}

.agv__presseFrontpage .sppb-article-info-wrap a.sppb-readmore {
    display: block;
    width: 100%;
    background-color: var(--gruen);
    color: var(--weiss)!important;
    padding: 15px 10px;
}

.sppb-article-info-wrap a.sppb-readmore {
    display: block;
    width: 100%;
    background-color: var(--gruen);
    color: var(--weiss)!important;
    padding: 10px;
}

.sppb-article-info-wrap a.sppb-readmore:hover {
    background-color: var(--gelb);
    color: var(--weiss);
}

.sppb-btn {
    text-align: left;
}

button.sppb-panel-heading span.sppb-panel-title {
    font-size: var(--mengentext);
    font-family: var(--textBold);
}



/* AKTUELLES KATEGORIEBLOG */

/* Basis-Stile für die Container */
.mod-articlesnews {
    display: grid;
    gap: 20px; /* Abstand zwischen den Elementen */
}

/* Stile für größere Bildschirme */
@media (min-width: 768px) {
    .mod-articlesnews {
        grid-template-columns: repeat(3, 1fr); /* Drei Spalten */
    }
}

/* Stile für kleinere Bildschirme */
@media (max-width: 767px) {
    .mod-articlesnews {
        grid-template-columns: 1fr; /* Eine Spalte auf mobilen Geräten */
    }
}

/* Zusätzliche Stile für die Elemente */

.mod-articlesnews__item {
    background-color: var(--weiss);
}

.mod-articlesnews__item h3 {
    padding: 0 15px;
    font-size: var(--h4Headlines);
    font-family: var(--textBold);
}

.mod-articlesnews__item h3 a {
    color: var(--grau)
}

.mod-articlesnews__item .agv__newsText {
    padding: 0 15px;
    margin: 0 0 15px 0;
}

.newsflash-image img {
    width: 100%;
    height: auto;
}

.readmore a {
    text-decoration: none;
    color: var(--weiss);
    background-color: var(--gruen);
    padding: 10px 20px 10px 20px;
    width: 100%;
    display: block;
}

.readmore a:hover {
    background-color: var(--gelb);
}


/* END AKTUELLES KATEGORIEBLOG */

/* POSITIONEN UND STELLUNGNAHME MODULE */

/* Basis-Stile für die Container */
.agvFrame {
    border: 1px solid var(--grau);
}

.agvnews {
    display: grid;
    gap: 20px; /* Abstand zwischen den Elementen */
}

/* Stile für größere Bildschirme */
@media (min-width: 768px) {
    .agvnews {
        grid-template-columns: repeat(2, 1fr); /* Zwei Spalten */
    }
}

/* Stile für kleinere Bildschirme */
@media (max-width: 767px) {
    .agvnews {
        grid-template-columns: 1fr; /* Eine Spalte auf mobilen Geräten */
    }
}

/* Zusätzliche Stile für die Elemente */

.agvnews__item {
    background-color: var(--weiss);
}

.agvnews__item h3 {
    padding: 15px;
    margin-bottom: 0;
    font-size: var(--h4Headlines);
    font-family: var(--textBold);
    border-bottom: 0;
    border-top: 1px solid var(--framegrau);
    border-left: 1px solid var(--framegrau);
    border-right: 1px solid var(--framegrau);
}

.agvnews__item h3 a {
    color: var(--grau);
}

.agvnews__item .agv__newsText {
    padding: 0 15px 15px 15px;
    border-bottom: 0;
    border-top: 0;
    border-left: 1px solid var(--framegrau);
    border-right: 1px solid var(--framegrau);
}

.agvnews__item img {
    width: 100%;
    height: auto;
}

.readmore a {
    text-decoration: none;
    color: var(--weiss);
    background-color: var(--gruen);
    padding: 10px 20px 10px 20px;
    width: 100%;
    display: block;
}

.readmore a:hover {
    background-color: var(--gelb);
}


/* END AKTUELLES KATEGORIEBLOG */

/* END POSITIONEN UND STELLUNGNAHME MODULE */


/* NEWSBEITRAG */

.sppb-addon-article-layout.sppb-addon-article-layout-masonry-wrapper {
    line-break: anywhere;
}


div#agv__newsBereich {
    padding: 30px 50px;
    background: #fff;
    border-radius: 5px;
    margin-top: -200px;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.page-header h1 {
    font-family: var(--textBold);
}

figcaption.caption {
    font-size: var(--bilduntertitel);
    margin: 20px 0;
}

.agv__zusatzInfo {
    display: flex;
    align-items: center;
    font-size: 14px; /* Einheitsgröße für den Text */
}

.agv__zusatzInfo .article-info {
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* Abstand zwischen den Elementen */
}

.agv__zusatzInfo .article-info > * {
    margin: 0;
}

.reading-time p {
    font-size: 80%;
    margin-left: 1px;
    display: inline;
}

.fa-clock:before, .fa-clock-four:before {
    content: "";
    font-size: 70%;
}

.tags>li a {
    background-color: var(--gruen);
    color: var(--weiss);
    border-radius: 0;
}

/* SCHLAGWÖRTER */

.agv__schlagwortSection {
    border-top: 2px solid var(--grau);
    border-bottom: 2px solid var(--grau);
    padding: 30px 0 20px 0;
    margin: 30px 0;
}

/* ÄHNLICHE BEITRÄGE */

.related-articles {
    margin-top: 20px;
}

.related-articles-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

/* 4 Spalten Layout für große Bildschirme */
.related-article {
    background-color: var(--hellgrau);
    padding: 10px;
    box-sizing: border-box;
    flex: 1 1 calc(25% - 20px); /* 4 Spalten Layout mit Abstand */
    max-width: calc(25% - 20px); /* Sicherstellen, dass die Breite nicht den Container überschreitet */
    display: flex;
    flex-direction: column; /* Vertikale Anordnung der Kinder */
    scale: 1;
    transition: .3s;
}

/* Hover-Effekt für den Artikel */
.related-article:hover {
    scale: 1.04;
    transition: .3s;
}

.related-article-image img {
    max-width: 100%;
    height: auto;
    display: block;
}

.related-article-content {
    margin-top: 10px;
    flex: 1; /* Flexibler Inhalt, um den Button nach unten zu drücken */
}

.related-article h4 {
    font-size: var(--mengentext);
    line-height: 120%;
    font-family: var(--textBold);
    margin: 10px 0;
}

.related-article h4 a {
    color: var(--grau);
}

.readmore-btn {
    font-size: 1rem;
    display: inline-block;
    color: var(--gruen);
    text-decoration: none;
    margin-top: auto;
    text-transform: uppercase;
    position: relative; /* Notwendig für die Positionierung des Pseudoelements */
    padding-bottom: 5px; /* Platz für den Balken unter dem Text */
}

.readmore-btn::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    background-color: var(--gruen);
    transition: width 0.3s ease; /* Zeit und Art der Transition */
}

.readmore-btn:hover {
    color: var(--gruen);
}

.readmore-btn:hover::after {
    width: 100%; /* Balken fährt von links nach rechts */
}

.readmore-btn i {
    margin-left: 5px;
    font-size: 80%;
}

/* Responsives Design für mobile Geräte */
@media (max-width: 991px) {
    .related-article {
        box-sizing: border-box;
        flex: 1 1 calc(50% - 20px); /* 2 Spalten Layout mit Abstand */
        max-width: calc(50% - 20px); /* Sicherstellen, dass die Breite nicht den Container überschreitet */
    }
}

@media (max-width: 500px) {
    .related-article {
        box-sizing: border-box;
        flex: 1 1 calc(100% - 20px); /* 1 Spalte Layout mit Abstand */
        max-width: calc(100% - 20px); /* Sicherstellen, dass die Breite nicht den Container überschreitet */
    }
}

/* LESEZEIT */

span.readingTime::before {
    display: inline-block;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    content: "/";
}

/* END NEWSBEITRAG */

/* KARRIERESEITEN ########### */

#agv__newsBereich ul.fields-container {
    padding: 0;
}

#agv__newsBereich ul.fields-container li {
    list-style: none;
}

#agv__newsBereich ul.fields-container  li.field-entry {
    margin-bottom: 30px;
}

#agv__newsBereich ul.fields-container span.field-value {
    padding: 20px;
    display: block;
}

#agv__newsBereich ul.fields-container span.field-value ul {
    padding: 0 0 0 20px;
}

#agv__newsBereich ul.fields-container span.field-value li {
    list-style: disc;
}

#agv__newsBereich ul.fields-container span.field-label {
    display: block;
    font-size: var(--h4Headlines);
    background-color: var(--gruen);
    padding: 10px 20px;
    color: var(--weiss);
}

/* END KARRIERESEITEN ####### */

/* KONTAKT/TEAMBEREICH */

.addon-root-person {
    box-shadow: var(--schattenNormal);
    transition: .6s;
    transition-timing-function: ease-in-out;
    margin: 0 0 30px 0;
    scale:1;
}

.addon-root-person:hover {
    box-shadow: var(--schattenHover);
    transition: .3s;
    transition-timing-function: ease-in-out;
    scale: 1.01;
}
/*
.sppb-addon-wrapper.addon-root-person {
    box-shadow: var(--schattenNormal);
    transition: .6s;
    transition-timing-function: ease-in-out;
}

.sppb-addon-wrapper.addon-root-person:hover {
    box-shadow: var(--schattenHover);
    transition: .3s;
    transition-timing-function: ease-in-out;
}
*/
.sppb-person-name {
    font-size: var(--h4Headlines)!important;
    color: var(--grau)
}

.sppb-person-designation {
    font-size: var(--mengentext)!important;
}

/* END KLASSEN ################################### */

/* CONVERTFORMS ################################## */

#cf_2 input,
#cf_2 select {
    font-size: var(--mengentext);
}

.convertforms .cf-content-wrap, .convertforms .cf-form-wrap {
    padding: 0;
}

.cf-control-group[data-type="heading"] {
    padding: 15px 20px;
    background-color: var(--gruen);
    color: var(--weiss);
    font-family: var(--textBold);
    margin: 30px 0 10px 0;
}

.cf-control-group[data-type="heading"] h2 {
    margin-bottom: 0;
}

label.cf-label {
    font-size: var(--mengentext)!important;
    margin-left: 10px;
}

/* END CONVERTFORMS ############################## */

/* NEWSLETTER #################################### */

.acym_module  {
    padding: 30px;
    background-color: var(--grau2);
}

.acym_form input.cell,
.acym_form input[type="text"] {
    font-size: var(--mengentext);
}

.acym_module_form label {
    min-width: 100%;
}

/* END NEWSLETTER ################################ */

/* SIDEBAR ###################################### */

.sidebar {
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    z-index: 333;
}

.sidebar-btn {
    display: flex;
    align-items: center;
    width: 50px;
    height: 50px;
    margin: 0 0 1px 0;
    background-color: var(--gruen);
    color: #fff;
    position: relative;
    transition: width 0.3s;
    overflow: hidden;
    white-space: nowrap;
    padding-left: 15px;
}

a.sidebar-btn,
.sidebar-btn,
.sidebar-btn i {
    font-size: var(--mengentext);
    color: var(--weiss);
}

.sidebar-btn .title {
    margin-left: 10px;
    opacity: 0;
    transition: opacity 0.3s;
}

.sidebar-btn:hover {
    width: 200px;
    padding-left: 20px;
    background-color: var(--gelb);
}

.sidebar-btn:hover .title {
    opacity: 1;
}

@media screen and (max-width: 768px) {
    .sidebar {
        top: auto;
        bottom: 0;
        right: 50%;
        transform: translateX(50%);
        flex-direction: row;
        width: 100%;
    }

    .sidebar-btn {
        width: 33.3333%;
        height: 40px;
        margin: 0 1px 0 0;
        border-radius: 0px;
        justify-content: center;
        padding: 0;
    }

    .sidebar-btn:last-child {
        margin: 0;
    }

    .sidebar-btn:hover {
        width: 33.3333%;
    }

    .sidebar-btn .title {
        display: none;
    }
}

/* END SIDEBAR ################################## */

/* Header ####################################### */

/* Grundlegende Header-Stile */
#sp-header {
  position: fixed;
  top: 0;
  width: 100%;
  background-color: #ffffff;
  z-index: 1000; /* sicherstellen, dass es Ã¼ber dem Inhalt liegt */
  transition: transform 0.3s ease;
}

.header-hidden {
  transform: translateY(-100%);
}

#sp-header.scrolled {
  background: rgb(43,48,101);
background: linear-gradient(180deg, rgba(43,48,101,1) 0%, rgba(0,0,0,0) 100%);
}

.verstecken {
  opacity: 0;
  pointer-events: none;
  transition: .4s;
}

.sp-megamenu-parent>li>a, .sp-megamenu-parent>li>span {
    font-size: var(--mainNavigantionText);
    font-family: var(--textBold);
    text-transform: uppercase;
    line-height: 200%;
    padding: 0 10px;
}

.sp-megamenu-parent>li>a.mitglied_werden {
    background-color: var(--gruen);
    color: var(--weiss);
    padding: 0px 5px;
    margin-left: 0px;
}

.sp-megamenu-parent>li:last-child>a.stellenmarkt {
    background-color: var(--gruen);
    color: var(--weiss);
    padding: 0px 5px;
    margin-left: 5px;
}

.sp-megamenu-parent>li:last-child>a.stellenmarkt:hover,
.sp-megamenu-parent>li>a.mitglied_werden:hover {
    background-color: var(--gruen);
    color: var(--weiss);

}

body.ltr .sp-megamenu-parent>li.sp-has-child>a:after, body.ltr .sp-megamenu-parent>li.sp-has-child>span:after {
    display: none;
}

/*
.sp-megamenu-parent .mitglied_werden::before {
    content: url('/images/template/become-a-member-hover.svg');
    display: inline-block;
    vertical-align: middle;
    margin-right: 8px;
    transition: .3s;
    transition-timing-function: ease-in-out;
}
*/
/* DROPDOWN */

.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a, .sp-megamenu-parent .sp-dropdown li.sp-menu-item span:not(.sp-menu-badge) {
    font-size: var(--mengentext);
    text-transform: uppercase;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a:hover,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active>a {
    color: var(--gelb);
}



/* END Header ################################### */

/* OPENSTREETMAP ####################################### */

.leaflet-popup-content {
    margin: 0!important;
    min-width: 450px;
    -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

.leaflet-popup-content-wrapper {
    border-radius: 0!important;
}

.marker h3 {
    background-color: var(--gelb);
    padding: 10px;
    color: var(--weiss);
    font-size: var(--h4Headlines);
    font-family: var(--textBold);
    }

.marker p {
    padding: 0 10px;
    font-family: var(--textMedium);
    font-size: var(--mengentext);
}

.marker p:last-child {
    padding: 0;
    margin: 0;
}

.marker p a {
    background-color: var(--gruen);
    color: var(--weiss);
    display: block;
    padding: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 70%;
    font-family: var(--textLight);
}

/* END OPENSTREETMAP ################################### */

/* FOOTER ####################################### */

#sp-footer {
    font-size: var(--mengentext);
}

#sp-footer h3 {
    padding: 0;
    color: var(--weiss);
}

#sp-footer ul.menu,
#sp-footer ul.menu li {
    display: block!important;
    width: 100%;
}


#sp-footer a {
    color: var(--weiss);
    text-decoration: underline;
    border: 0!important;
}

/* END FOOTER ################################### */

/* LOGIN ####################################### */

span.input-group-text,
button.btn.btn-secondary.input-password-toggle {
    display: none;
}

/* Container für Benutzername und Passwort */
.mod-login__userdata {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.form-control {
    font-size: var(--mengentext);
}

/* Benutzername und Passwort nebeneinander mit Abstand */
.mod-login__username {
    flex: 1 1 48%;
    margin-right: 2%; /* Kleiner Abstand rechts vom Benutzernamen-Feld */
    margin-bottom: 1rem;
    font-size: var(--mengentext);
}

.mod-login__password {
    flex: 1 1 48%;
    margin-bottom: 1rem;
}

/* Der Anmelden-Button soll unter den Eingabefeldern stehen, 40% breit und zentriert sein */
.mod-login__submit {
    display: flex;
    justify-content: center;
    width: 100%;
    font-size: var(--mengentext);
    margin-bottom: 20px;
}

button.btn.btn-primary.w-100 {
    font-size: var(--mengentext);
}

.mod-login__submit .btn-primary {
    width: 60%!important;
}

#login-form-16 > div > ul > li:nth-child(1) > a {
    color: var(--grau2);
}

#login-form-16 > div > ul > li:nth-child(1) > a:hover {
    text-decoration: underline;
}

/* Blende das 'Angemeldet bleiben'-Feld aus */
.mod-login__remember {
    display: none;
}

/* Blende den Link 'Benutzername vergessen?' aus */
.mod-login__options li:nth-child(2) {
    display: none;
}

/* Auf kleineren Bildschirmen (z.B. Handys) sollen die Felder untereinander stehen */
@media (max-width: 768px) {
    .mod-login__username,
    .mod-login__password {
        flex: 1 1 100%; /* 100% Breite auf kleinen Bildschirmen */
        margin-right: 0;
    }

    .mod-login__submit .btn-primary {
        width: 100%; /* Button füllt die gesamte Breite aus */
    }
}






/* END LOGIN ################################### */

/* SUCHE ####################################### */

#search-results {
    padding-bottom: 75px;
}

.btn.disabled, .btn:disabled, fieldset:disabled .btn {
    pointer-events: auto;
    background-color: var(--gruen);
    opacity: 1;
}

/* Grundlegendes Layout für größere Bildschirme */
.input-group {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 1%; /* Fügt 1% Abstand zwischen den Elementen hinzu */
}

.awesomplete {
    flex: 0 0 80%; /* Suchfeld nimmt 60% der Breite ein */
    position: relative;
}

.awesomplete input {
    width: 100%; /* Stellt sicher, dass das Eingabefeld die gesamte Breite der .awesomplete-Div einnimmt */
    padding: 10px;
    box-sizing: border-box;
    border-radius: 0;
}

.btn-primary {
    flex: 0 0 19%; /* Der erste Button nimmt 28% der Breite ein */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    box-sizing: border-box;
    color: var(--weiss);
    background-color: var(--gruen);
    border: 0;
    border-radius: 0;
}

.btn-primary:hover {
    background-color: var(--gelb);
}

.ads {
    flex: 0 0 18%; /* Der zweite Button nimmt 28% der Breite ein */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    box-sizing: border-box;
    border: 0;
    border-radius: 0;
}

/* Responsive Layout für Mobilgeräte */
@media (max-width: 768px) {
    #search-form .input-group {
        flex-direction: column; /* Elemente untereinander aufreihen */
        gap: 10px; /* Abstand zwischen den Elementen */
    }

    .awesomplete,
    .btn-primary,
    .ads {
        flex: 0 0 100%; /* Jedes Element nimmt die volle Breite ein */
        border: 0!important;
    border-radius: 0!important;
    }
}

/* SUCHERGEBNIS */

.result__title-text {
    font-size: var(--h2Headlines);
    color: var(--grau);
    font-family: var(--textBold);
    line-height: 120%;
}

/* END SUCHERGEBNIS */

/* SCHLAGWORTSUCHE */

ul.list-group li {
    background-color: var(--gruen);
    scale: 1;
    border: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    transition: .3s;
    margin-bottom: 1px;
}

ul.list-group li:hover {
    scale: 1.02;
    background-color: var(--gelb);
    transition: .3s;
}

ul.list-group li a {
    color: var(--weiss);
}

/* END SCHLAGWORTSUCHE */

/* END SUCHE ################################### */

/* INTRANET ####################################### */

ul.menu__intranetNavigation {
    margin-top: 40px;
    padding: 0;
}

ul.menu__intranetNavigation li {
    list-style: none;
}

ul.menu__intranetNavigation li a {
    background-color: var(--gruen);
    color: var(--weiss);
    display: block;
    padding: 8px 20px;
    margin:  0 0 1px 0;
}

ul.menu__intranetNavigation li.active.menu-deeper.menu-parent>a,
ul.menu__intranetNavigation li.active.menu-deeper.menu-parent ul li.current.active a,
ul.menu__intranetNavigation li:hover>a {
    background-color: var(--gelb);
    color: var(--weiss);
}

ul.menu-child {
    padding: 0;
} 

ul.menu-child li a {
    padding-left: 20px;
}

ul.menu-child li a:before {
    content: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="15" height="15"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM241 377c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l87-87-87-87c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L345 239c9.4 9.4 9.4 24.6 0 33.9L241 377z" fill="%23fff"/></svg>');
    margin: 0 10px 0 0;
}



/* END INTRANET ################################### */

/* DOWNLOADS ####################################### */

.btn_download > a, a.modosdownloadsDownloadButton {
    background-color: var(--gruen);
}

.btn_download > a:hover, a.modosdownloadsDownloadButton:hover {
    background-color: var(--gelb);
    color: var(--gruen);
}

.mod_osdownloadsfiles ul li:last-child {
    border: 0;
}

#sppb-addon-1722846678603 > div > div > div:nth-child(1) {
    margin-top: 0;
}

#sppb-addon-1722846678603 > div > div > div {
    margin-top: 30px;
}

.sppb-addon-wrapper .osHeadline {
    padding: 10px 20px;
    background-color: var(--gruen);
    color: var(--weiss);
    text-transform: uppercase;
    font-family: var(--textBold);
    font-size: var(--mengentext);
    letter-spacing: 1px;
}

.sppb-addon-wrapper .osHeadline,
.agv__osDownloads .osHeadline {
    padding: 10px 20px;
    background-color: var(--gruen);
    color: var(--weiss);
}

.file-list {
        list-style: none;
        padding: 0;
    }

.mod_osdownloadsfiles ul li {
    padding: 5px 20px;
    transition: .3s;
}

.mod_osdownloadsfiles ul li:hover {
    background-color: var(--weiss);
    padding: 5px 20px;
    transition: .3s;
}


.mod_osdownloadsfiles ul li h4 {
    margin: 0;
}



    .file-item {
        margin-bottom: 20px;
    }
    .file-content {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }
    .file-description {
        flex: 1;
    }
    .file-action {
        margin-left: auto;
    }
    @media (max-width: 768px) {
        .file-content {
            flex-direction: column;
            align-items: flex-start;
        }
        .file-action {
            margin-left: 0;
            margin-top: 10px;
        }
    }

/* END DOWNLOADS ################################### */

/* STELLENANZEIGEN ################################# */

.custom-field-group {
    margin: 0 0 20px 0;
}

.custom-field-group h4 {
    background-color: var(--gruen);
    color: var(--weiss);
    padding: 10px 20px;
    margin: 0;
}

.custom-field-group-content {
    background-color: var(--framegrau);
    padding: 20px;
}

.custom-field-group-content.stelleninformationen {
    padding: 0;
    background-color: var(--weiss);
}

div.custom-field-group.vollständige-stellenbeschreibung > div > div > strong {
    display: none;
}

.custom-field-group-content {
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* Abstand zwischen den Spalten */
}

.custom-field-group.stelleninformationen

.custom-field {
    flex: 1 1 calc(50% - 15px); /* Zwei Spalten mit gleicher Breite */
    box-sizing: border-box;
    background-color: var(--hellgrau);
    padding: 15px;
}

.custom-field-group.vollständige-stellenbeschreibung .custom-field-group-content .custom-field,
.custom-field-group.aufgaben-und-anforderungen .custom-field-group-content .custom-field,
.custom-field-group.leistungen-und-vorteile .custom-field-group-content .custom-field,
.custom-field-group.bewerbungsdetails .custom-field-group-content .custom-field {
    background-color: var(--hellgrau);
    padding: 20px;
    margin-top: 20px;
}

.custom-field-group.vollständige-stellenbeschreibung .custom-field-group-content,
.custom-field-group.aufgaben-und-anforderungen .custom-field-group-content,
.custom-field-group.leistungen-und-vorteile .custom-field-group-content,
.custom-field-group.bewerbungsdetails .custom-field-group-content {
    background-color: var(--weiss);
    display: block;
    padding: 0;
}

.custom-field strong::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: var(--gruen);
    font-size: 20px;
    margin-right: 5px;
    display: inline-block; /* Stellt sicher, dass das Icon immer links bleibt */
    vertical-align: middle; /* Vertikale Ausrichtung für das Icon */
}

.custom-field.arbeitszeit strong::before {
    content: "\f64a";
}

.custom-field.befristung strong::before {
    content: "\f252";
}

.custom-field.art-des-arbeitsplatz strong::before {
    content: "\f722";
}

.custom-field.homeoffice-moeglich strong::before {
    content: "\e1b0";
}

.custom-field.einsatzort strong::before {
    content: "\f3c5";
}

.custom-field.anzahl-der-offenen-stellen strong::before {
    content: "\f46d";
}

.custom-field-group.vollständige-stellenbeschreibung > div > div > h3 {
    font-family: var(--textBold);
    
}

@media (max-width: 768px) {
    .custom-field {
        flex: 1 1 100%; /* Einspaltig auf kleinen Bildschirmen */
    }
}


/* END STELLENANZEIGEN ############################# */

/* MITGLIEDSBEREICH ####################################### */

.addon-member-login {
    /*box-shadow: var(--schattenNormal);*/
    transition: .6s;
    transition-timing-function: ease-in-out;
    margin: 0 0 30px 0;
    scale:1;
}


#agv__mitgliedsbereichIntro .sppb-column.agv__noShadow {
    box-shadow: none;
}

#agv__mitgliedsbereichIntro .sppb-column {
    box-shadow: var(--schattenNormal);
    padding: 20px 20px 4px 20px;
}

/* END MITGLIEDSBEREICH ################################### */

/* GLOBAL ####################################### */

/* END GLOBAL ################################### */

/* GLOBAL ####################################### */

/* END GLOBAL ################################### */

/* GLOBAL ####################################### */

/* END GLOBAL ################################### */

/* GLOBAL ####################################### */

/* END GLOBAL ################################### */

/* GLOBAL ####################################### */

/* END GLOBAL ################################### */

/* GLOBAL ####################################### */

/* END GLOBAL ################################### */

/* MEDIAQUERIES ####################################### */


@media (1200px <= width <= 1599px) {

div#agv__newsBereich {
        margin-top: -150px;
    }

}


@media (768px <= width <= 1199px) {
  
div#sp-logo {
    max-width: 300px;
}

div#agv__newsBereich {
        margin-top: -100px;
    }

}

@media (576px <= width <= 767px) {

   div#agv__newsBereich {
        margin-top: -70px;
    } 

}

@media (max-width: 575px) {

 #sp-header {
        height: 60px
    }

    div#agv__newsBereich {
        margin-top: -50px;
    }

    .agv__footerNav {
        text-align: center;
    }
}


@media (992px <= width <= 1399px) {

   .sp-megamenu-parent>li>a {
       font-size: clamp(0.875rem, 0.418rem + 0.7371vw, 1.0625rem);
       /*padding: 0 0 0 10px;*/
   }

}

/* END MEDIAQUERIES ################################### */