body {
    color: #333 !important;
    font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
}

h1 {
    font-size: 20px !important;
    color: #3C506E;
    margin-bottom: 0 !important;
}

h5 {
    font-weight: bold !important;
    color: #3C506E;
}

a {
    color: #3c506e !important;
    text-decoration: none;
}

a:hover {
    color: #233755 !important;
    text-decoration: underline;
}

.light,
.light:hover {
    color: #fff !important;
}

footer {
    background-color: #233755;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
}

:focus {
    outline: 2px dotted #fff;
}

.container {
    max-width: 1280px !important;
    background-color: white;
}

.bg-dark {
    --bs-bg-opacity: 1;
    /* background-color: rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important; */
    background-color: #3C506E !important;
}

.btn-dark:hover,
.btn-dark:focus {
    color: white !important;
    text-decoration: none !important;
}


/** Logos **/
#logo_karte,
#logo_portal,
#logo_gdi {
    height: 32px;
    width: auto;
}

/** Logos iPad hoch**/
@media only screen and (min-width: 768px) {
    #logo_karte {
        height: 35px;
        width: auto;
    }

    #logo_karte {
        height: 25px;
        width: auto;
    }

    /* 2023 */
    /*#logo_portal {height: 60px; width: auto; padding: 5px 5px 5px 10px;} */
    #logo_portal {
        height: 60px;
        width: auto;
        padding: 5px 5px 5px 10px;
    }

    /* 2023 */
    /*#logo_gdi {height: 60px; width: auto; padding: 5px;} */
    #logo_gdi {
        height: 60px;
        width: auto;
        padding: 5px !important;
    }

    /* 2023 */
    /*	#main_content2karte > div.container-fluid.bg-dark.p-0 > header > form { width:55%; }*/
    #main_content2karte>div.container-fluid.bg-dark.p-0>header>form {
        width: 50%;
    }
}

/** Logos iPad quer und Desktop
@media only screen and (min-width: 1024px)  { 
	#logo_karte {height: 36px; width: auto;}
	#logo_portal {height: 70px; width: auto; padding: 5px 5px 5px 10px;}
	#logo_gdi {height: 70px; width: auto; padding: 5px;}
}**/
#FooterModal .modal-content {
    /* 2023 */
    width: 100%;
    height: 100%;
}

.modal-body {
    /* 2023 */
    padding: 0.5rem;
}

.nrw-scheme {
    background-color: #3C506E;
}

.navbar-dark .navbar-brand,
.navbar-dark .navbar-nav .active>.nav-link,
.navbar-dark .navbar-nav .nav-link.active,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .show>.nav-link {
    color: #fff !important;
}

.nav-tabs {
    border: none !important;
}

.nav-link {
    padding: .8rem 1rem !important;
}

.nav-tabs .nav-item {
    margin-bottom: -2px;
}

.nav-tabs .nav-link {
    border: none !important;
    border-radius: none;
}

.nav-tabs .nav-link:hover,
.nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    color: #fff !important;
    text-decoration: underline;
    background-color: #233755 !important;
    border: none !important;
    border-radius: 0%;
}

a.nav-link.active {
    color: #3C506E;
    font-weight: bold;
}

a.nav-link {
    color: #fff !important;
    /*wey font-weight: bold;*/
}

#search-typ {
    border: none !important;
    border-radius: 0;
}

.dropdown-menu {
    margin: 0 !important;
    min-width: 5rem !important;
    border-radius: 0;
    background-color: #3C506E !important;
}

a.dropdown-item {
    color: #fff !important;
}

.dropdown-item:hover,
.dropdown-item.active {
    color: #fff !important;
    text-decoration: underline !important;
    background-color: #233755 !important;
    border: none !important;
    border-radius: 0%;
}

.haeufigeDS {
    text-align: center;
}

.btn-primary {
    background-color: #3C506E !important;
    border-color: #3C506E !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: #233755 !important;
    border-color: #233755 !important;
    text-decoration: underline !important;
}

.btn-primary.focus,
.btn-primary:focus {
    box-shadow: none !important;
}

.btn-lg {
    background-color: rgba(60, 80, 110, 0.7) !important;
    border: none !important;
}

.btn-lg:hover,
.btn-lg:focus,
.btn-lg:active {
    background-color: rgb(35, 55, 85, 0.7) !important;
    border: none !important;
    text-decoration: underline !important;
}

.fa-lightbulb-o,
.fa-lock {
    /*font-size: 7.5rem !important;*/
    font-size: 6rem !important;
}

.fa-download,
.fa-map-o {
    font-size: 6rem !important;
}

/*wey- .fa-home-theme {
    font-size: 5rem !important;
}
.fa-bus, .fa-users, .fa-ellipsis-h, .fa-leaf, .fa-heartbeat {
    font-size: 4rem !important;
}
.fa-bus::after {
    padding-bottom: 15px;
}*/
.fa-home-theme,
.fa-bus,
.fa-users,
.fa-ellipsis-h,
.fa-leaf,
.fa-heartbeat {
    font-size: 2rem !important;
}

#main_content1 .fa-home,
#main_content2 .fa-home,
#main_content3 .fa-home {
    /*font-size: 2rem !important;*/
    font-size: 1.7rem !important;
}

.nav-link:active {
    /* wey 2023 */
    text-decoration: underline !important;
    background-color: #233755 !important;
}

.paragraph_header {
    background-color: #EAEFF6;
    display: flex;
    margin-bottom: 1rem;
    margin-top: 0;
    /*wey+*/
    padding: 1rem;
    text-transform: uppercase;
}

.paragraph_header>i {
    font-size: 1.2rem;
    margin-right: .75rem;
    padding-top: .25rem;
}

.fa-stop {
    color: #3C506E !important;
}

h2.card-title {
    font-size: 20px !important;
    font-weight: bold !important;
}


.suchfeld,
#search-results {
    width: 350px;
}

@media (max-width: 435px) {

    .suchfeld,
    #search-results {
        width: 80%;
    }
}

.suchfeldFeld {
    width: 100%;
}

.dropdown-menu {
    left: unset !important;
    padding: unset !important;
    top: 50px;
}

/*
#suchfeld{
    width: 100%;
}
*/

.suchfeldKarte,
#search-results-karte {
    left: 90px;
    width: 350px;
}

@media (max-width: 435px) {

    .suchfeldKarte,
    #search-results-karte {
        width: 80%;
    }
}

@media (max-width: 435px) {
    #suchfeldKarte {
        width: 160px;
    }
}

.form-control{
    border: 1px solid #ffffff !important;
}
#search-results,
#search-results-karte {
    left: unset;
    overflow: hidden;
    width: 100%;
    border: 1px solid #ffffff !important;
}

/* "Es wurde keine Adresse gefunden */
#search-results>p,
#search-results-karte>p {
    color: white;
    margin-left: 2px;
}

div#search-results-karte.dropdown-menu,
div#search-results.dropdown-menu {
    /*border: 2px solid #3C506E;*/
    box-shadow: 1px 2px 8px gray !important;
    border: none !important;
}

#search-results a,
#search-results-karte a {
    text-overflow: ellipsis;
    /* Required for text-overflow to do anything */
    white-space: nowrap;
    overflow: hidden;
    padding: 4px 1px 4px 16px;

    color: #3C506E !important;
    background-color: white;
}

#search-results a:hover,
#search-results-karte a:hover {
    color: white !important;
    background-color: #3C506E;
}



#mapapps-app {
    position: relative;
    margin: 0;
    padding: 0;
    width: 100%;
}

.main-content1 {
    position: absolute;
    top: 0;
    background-color: #c0c0c0;
    width: 100%;
    z-index: 1;
    overflow-x: hidden;
}

/*#main_content1 > div.container.bg-dark.p-0 > header > form { width:60%; }*/
#main_content1>div.container.bg-dark.p-0>header>form {
    width: 55%;
}

/* wey 2023 */

#main_content2 {
    background-color: white;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    overflow-x: hidden;
    overflow-y: hidden;
}

/*#main_content2 > div.container-fluid.bg-dark.p-0 > header > form { width:65%; }*/
#main_content2>div.container-fluid.bg-dark.p-0>header>form {
    width: 45%;
}

/* wey 2023 */
#main_content2karte {
    background-color: #3C506E;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

#main_content3 {
    background-color: #c0c0c0;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    overflow-x: hidden;
}

.dropdown-button {
    background-color: rgba(255, 255, 255, 1);
    border: none;
    padding: 0;
}

.karte {
    width: 100% !important;
    max-width: 100% !important;
    height: calc(100% - 45px);
    /*border: 1px solid lime;*/
}

/*wey- .karte_footer{
    height: 45px;
    bottom: 0;
    width: 100% !important;
    max-width: 100% !important;
}*/

.kartenrow {
    /*wey   height: calc(100% - 115px); */
    /*wey height: calc(100% - 66px);  mit Doppelfooter*/
    height: calc(100% - 40px);
    /*wey ohne BS footer*/

    /*border: 1px solid red;*/
    --bs-gutter-x: 0 !important;
}


.content2 {
    height: 100%;
    --bs-gutter-x: 0 !important;
    /** verhindert Verschieben der Karte !! **/
}

#waitingCardBody {
    color: #333 !important;
    font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
}

#waitingCardComponent {
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: rgba(165, 165, 165, 0.5) !important;
}

#waitingCard {
    width: calc(100% - 100px);
    height: calc(100% - 100px);
    margin: 50px 50px 50px 50px;
    padding: 20px 20px 20px 20px;
    background-color: #eeeeee !important;
    border-radius: 5px;
}

#waitingCardCard {
    border: none;
    height: calc(100% - 100px);
}

.waitingCardFooter {
    height: 100px;
    margin: 0 auto 0 auto;
}

.waitingCardButton {
    width: 200px;
    padding-bottom: 10px;
    padding-top: 10px;
    border-radius: 5px;
    background-color: #3C506E;
    color: white;
    margin-left: calc(50% - 100px);
}

.waitingCardButton:disabled {
    background-color: #5a6268;
}



.container-fluid {
    padding: 0 !important;
}

/** Carousel **/
.card {
    background-color: white;
    border: none !important;
}

.carousel-control-prev,
.carousel-control-next {
    width: 25px !important;
    z-index: 2;
    opacity: 1;
}


/* show 3 items */
@media (min-width: 1111768px) {
    /* wey temp */
    /* left or forward direction */
    /* farthest right hidden item must be abso position for animations */
    /* right or prev direction */
    /*.carousel-inner .active, .carousel-inner .active + .carousel-item, .carousel-inner .active + .carousel-item + .carousel-item {
        display: block;
    }
    .carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left), .carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left) + .carousel-item, .carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left) + .carousel-item + .carousel-item {
        transition: none;
    }
    .carousel-inner .carousel-item-next, .carousel-inner .carousel-item-prev {
        position: relative;
        transform: translate3d(0, 0, 0);
    }
    .carousel-inner .active.carousel-item + .carousel-item + .carousel-item + .carousel-item {
        position: absolute;
        top: 0;
        right: -33.3333%;
        z-index: -1;
        display: block;
        visibility: visible;
    }
    .active.carousel-item-left + .carousel-item-next.carousel-item-left, .carousel-item-next.carousel-item-left + .carousel-item, .carousel-item-next.carousel-item-left + .carousel-item + .carousel-item, .carousel-item-next.carousel-item-left + .carousel-item + .carousel-item + .carousel-item {
        position: relative;
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    .carousel-inner .carousel-item-prev.carousel-item-right {
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        display: block;
        visibility: visible;
    }
    .active.carousel-item-right + .carousel-item-prev.carousel-item-right, .carousel-item-prev.carousel-item-right + .carousel-item, .carousel-item-prev.carousel-item-right + .carousel-item + .carousel-item, .carousel-item-prev.carousel-item-right + .carousel-item + .carousel-item + .carousel-item {
        position: relative;
        transform: translate3d(100%, 0, 0);
        visibility: visible;
        display: block;
        visibility: visible;
    }*/
}

.carousel-indicators {
    background: transparent;
    position: absolute;
    right: 0;
    bottom: -40px !important;
    left: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    padding: 0;
    margin-right: 0;
    margin-bottom: -1rem;
    margin-left: 0;
    list-style: none;
}

#carousel_themen>div>div>div>div>div>div>button {
    background-color: #3c506e8c !important;
}


/*****geklaut https://www.codeply.com/p/0CWffz76Q9 ****/
@media (max-width: 767px) {
    .carousel-inner .carousel-item>div {
        display: none;
    }

    .carousel-inner .carousel-item>div:first-child {
        display: block;
    }
}

.carousel-inner .carousel-item.active,
.carousel-inner .carousel-item-next,
.carousel-inner .carousel-item-prev {
    display: flex;
}

/* medium and up screens */
@media (min-width: 768px) {

    .carousel-inner .carousel-item-end.active,
    .carousel-inner .carousel-item-next {
        transform: translateX(25%);
    }

    .carousel-inner .carousel-item-start.active,
    .carousel-inner .carousel-item-prev {
        transform: translateX(-25%);
    }
}

.carousel-inner .carousel-item-end,
.carousel-inner .carousel-item-start {
    transform: translateX(0);
}

/*****geklaut ende ****/

/** sorgt für Abstand zwischen den Carousel-Kacheln **/
#carousel_haeufigeDS>div>div.carousel-item>div,
#carousel_themen>div>div.carousel-item>div,
#carousel_portale>div>div.carousel-item>div {
    padding: 7px;
}

#carousel_portale2>div>div.carousel-item>div {
    padding: 10px;
}

/** Carousels Ende **/

/** iframeCockpit **/
#iframeCockpit {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

button {
    border-radius: 0 !important;
}

#suchenButton {                             /*einzelne Linie zwischen X und Lupe*/
    border-left: solid 1px white !important;
}

#suchenButtonK {                             /*einzelne Linie zwischen X und Lupe*/
    border-left: solid 1px white !important;
}

#kartenHeader {
    padding: unset !important;
}

.quizWeiterButton {
    background-color: #3C506E;
    color: white;
    border-radius: 5px;
    padding: 8px 20px;
    margin-top: 20px;
}

.form-group {
    margin-bottom: 0;
}

/*::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: #fff;
    border-radius: 0
}
::-webkit-scrollbar-thumb {
    border-radius: 5px;
    border: 1px solid #fff;
    background-color: #076193;
    background-image: none
}
::-webkit-scrollbar-thumb:vertical,
::-webkit-scrollbar-thumb:horizontal {
    border-radius: 5px;
    border: 1px solid #fff;
    background-color: #076193;
    background-image: none
}*/