/* temporary fixes style until the final design */

/* noscript */
.noscript-only {
    display: initial;
}

/* warnings */
#browser-warning,
#password-warning {
    background-color: #f00;
    color: #fff;
    font-size: 1.5em;
    font-weight: 600;
    padding: 1rem;
}
#password-warning .close-warning,
#browser-warning .close-warning {
    border: 2px solid #fff;
    border-radius: 6px;
    color: #fff;
    float: right;
    margin: 0 0 1em 1em;
    padding: 4px 8px;
    text-decoration: none;
}
#password-warning a {
    color: #fff;
}

/* form */
.select-wrapper {
    position: relative;
}
.select-wrapper:before {
    right: -17px !important;
}
form .form-group .col-info[class*="col"] .select-wrapper .btn-tooltip {
    right: -40px;
}
input.form-control[type="text"]:focus {
    background: #fff;
}

/* footer position */
#content {
    overflow: auto;
}
footer {
    margin-top: 0;
}

/* cookie consent */
body.cc_open {
    overflow: hidden;
}
#cc {
    background-color: rgba(0, 0, 0, 0.5);
    display: none;
    height: 100%;
    left: 0;
    padding: 2rem 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 2001;
}
#cc_banner {
    background-color: #fff;
    border-radius: 4px;
    color: #000;
    display: block;
    margin: 0 auto;
    max-height: 100%;
    max-width: 80%;
    overflow: auto;
    padding: 2rem;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    width: 800px;
    z-index: 1000;
    outline: none;
}

#cc_banner :focus {
    outline: 2px solid blue;
}
#cc .cc_commands {
    margin-bottom: 1rem;
    text-align: right;
}
#cc .cc_commands .btn {
    margin: 0 0 1rem 1rem;
}
#cc .cc_id {
    font-style: italic;
}

/* privacy page */
#cc_edit,
#cc_edit2,
#cc_delete {
    display: none;
}
.privacy_accordion dt {
    color: #666;
    font-weight: normal;
    margin-top: 0.75rem;
}
.privacy_accordion dt:hover {
    cursor: pointer;
    text-decoration: underline;
}
.privacy_accordion dt.open .fa-chevron-down,
.privacy_accordion dt:not(.open) .fa-chevron-up {
    display: none;
}
.privacy_accordion dd {
    border: 1px solid #474a7b;
    padding: 0.5rem 0.5rem 0 0.5rem;
}
.privacy_accordion dd p:last-child {
    padding-bottom: 0;
}
#privacy_matomo {
    display: none;
}

/* legal page */
div.agb_pricelist {
    margin-bottom: 1rem;
}

/* faq teaser block/sidebar item */
.block dl.fold {
    margin-bottom: 0;
}
.block dl.fold dt,
.sidebar__item dl.fold dt {
    background: #f4f4f4;
    border-radius: 4px;
    font-size: 0.9375rem;
    margin: 0 0 20px 0;
    padding: 8px 30px 8px 10px;
}
.block dl.fold dt:last-of-type,
.block dl.fold dd:last-of-type {
    margin-bottom: 0;
}
.block dl.fold dt:hover,
.sidebar__item dl.fold dt:hover {
    background: #6d7176;
    color: #fff;
}
.block dl.fold dt.active,
.sidebar__item dl.fold dt.active {
    background: #6d7176;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    color: #fff;
    margin-bottom:0;
}
.block dl.fold dd,
.sidebar__item dl.fold dd {
    background: #f4f4f4;
    font-size: 0.75rem;
    line-height: 1.15rem;
    margin: 0 0 20px 0;
    padding: 0.625rem;
}
.block dl.fold dd p,
.sidebar__item dl.fold dd p {
    font-size: 0.75rem;
}
.sidebar__item dl.fold dt,
.sidebar__item dl.fold dd {
    background: #fff;
    margin: 0 0 3px 0;
}
.sidebar__item .indent_bottom_large {
    padding-bottom: 40px;
}

/* news */
.news-list .pagination a:not([href]) {
    color: #fff;
}
.news-list:not(:last-child) {
    margin-bottom: 1.25em;
}
.content .news-list .news-item {
    padding-top: 1.5625rem;
}

/* publications */
.result_container .row .title_result a:hover,
.result_container .row .info a:hover,
.result_container .row .first a:hover {
    color: inherit;
    text-decoration: none;
}
.result_container .row .title_result a[href]:hover,
.result_container .row .info a[href]:hover,
.result_container .row .first a[href]:hover {
    color: #006378;
    text-decoration: underline;
}

/* official section */
.result_filter.table_filter .pager_release_year_container {
    float: left;
}
.result_filter.table_filter .pager_release_date_container .pager_release_date {
    position: relative;
}
.pager_release_year .select-wrapper::before,
.pager_release_date .select-wrapper::before {
    right: -17px !important;
    top: 17px !important;
}
.result_filter.table_filter .pager_release_year_container .pager_release_year_update {
    float: left;
    margin-left: 5px;
    width: 34px;
}

/* messages */
.error_msg > :not(.error-header-panel) ~ ul {
    margin-bottom: 0;
    padding: 0;
}
.error_msg > :not(.error-header-panel) ~ ul li::before {
    display: none;
}

/* checklist */
.content ul.checklist li::before {
    font-size: inherit;
    content: '\f00c';
    left: -12px;
    top: 0;
}

.menu__content .menu__wrapper li a:focus {
    border: 0;
}

.btn-gray:focus, .btn-tooltip:focus, .btn-green:focus {
    background: #1e252b;
    color: #fff !important;
    text-decoration: none !important;
}

.scroll-to-top:focus {
    background: #fff;
    text-decoration: none;
}
.scroll-to-top:focus:before {
    color: #1e252b;
}

.news-item a:focus, .linklist li a:focus {
    border: 2px solid black;
}
.block-content:has(.contact-info) a:focus {
    border: 2px solid black;
}

.service_block .service__list.top li.gebaerden_sprache {
    margin-top: 5px;
    font-size: 0.75rem;
}

.service_block .service__list.top li.gebaerden_sprache a {
    padding: 5px;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin: 0;
}

.service_block .service__list.top li.gebaerden_sprache a > * {
    flex-shrink: 1;
    flex-grow: 0;
}

.service_block .service__list.top li.gebaerden_sprache a span {
    display: none;
    padding: 2px 8px 0 0;
}

@media (min-width: 768px) {
    .service_block .service__list.top li.gebaerden_sprache {
        margin: 5px 5px 0 0;
    }
    .service_block .service__list.top li.gebaerden_sprache a span {
        display: inline-block;
    }
}

.service_block .service__list.top li.gebaerden_sprache a:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f2a7";
    font-size: 1.125rem;
    display: inline-block;
    transform: scaleX(-1.1);
    position: relative;
    top: -1px;
    right: 0;
}

.block-video {
    background: #fff;
    padding: 1.25rem 1.25rem 0 1.25rem;
    margin: 2rem auto 4rem;
}

.block-video video {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: block;
}
