/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/
@font-face {
    font-family: 'Segoe-UI'; /* Name for your font */
    src: url('fonts/segoeuithis.ttf') format('truetype'); /* Path to the .ttf file */
    font-weight: normal;
    font-style: normal;
}

:root {
    --cnvs-themecolor: #EE712A;
    --cnvs-themecolor-rgb: 238, 113, 42;
    --cnvs-themecolor-dark: #5282c4;
    --zkrd-dark-blue: #4F82C3;
    --cnvs-heading-color: #EE712A;
    --zkrd-red: #FBE3D4;
    --zkrd-light-red: rgba(238, 113, 42, 50);
    --cnvs-headings-font-weight: 700;
    --cnvs-copyrights-link-color: #ffffff !important;
    --cnvs-primary-font: "Segoe-UI", sans-serif;
    --cnvs-body-font: "Segoe-UI", sans-serif;
    --page-section-background: #EDF2F9;
    --cnvs-section-bg: transparent;
    --horizontal-offset: 15;
}

#footer, .dark #copyrights {
    background-color: var(--cnvs-themecolor);
    --cnvs-copyrights-link-color: #ffffff !important;
}

.copyright-links {
    color: var(--cnvs-copyrights-link-color);
    text-decoration: none !important;
}

#page-title, .page-title {
    --cnvs-page-title-parallax-padding: 12rem;
    --cnvs-page-title-parallax-font-size: 70px;
}

.page-title-content h1 {
    text-transform: uppercase;
    color: var(--cnvs-themecolor);
}

.page-title-content h1 span {
    display: inline;
    color: var(--cnvs-themecolor-dark) !important;
    font-size: var(--cnvs-page-title-parallax-font-size);
}

ol, ul {
    padding-left: 2rem;
}

ol li p, ul li p {
    margin: 0;
}

/* 
################
  Helper Classes
################
*/

.text-orange {
    color: var(--cnvs-themecolor) !important;
}

/*** Startseite ***/

#audit-logs:has(.no-entries) .pagination {
    display: none !important;
}

#audit-logs .list-group-item:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-top: solid 1px var(--cnvs-themecolor);
}

#audit-logs .list-group-item:last-child {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

#audit-logs .list-group-item {
    position: relative;
    border-bottom: solid 1px var(--cnvs-themecolor);
    border-left: solid 0 transparent;
    border-right: solid 0 transparent;
    padding: 15px 75px 15px 0;
    color: #000;
    font-size: 18px;
}

#audit-logs .list-group-item .audit-action {
    text-decoration: underline;
    color: var(--cnvs-themecolor);
    cursor: pointer;
}

#audit-logs .list-group-item::after {
    content: "";
    position: absolute;
    right: 50px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 34px;
    background-image: url('/assets/staticImages/arrow-right.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}


#audit-logs .list-group-item span.text-decoration-underline {
    color: var(--cnvs-themecolor);
    font-weight: bold;
}

#audit-logs .list-group-item span {
    color: #000;
    text-decoration: none;
    font-weight: normal;
}


.info-container {
    position: fixed;
    top: 50%;
    right: -350px;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    transition: right 0.3s ease-in-out;
    z-index: 9999999;
}

.info-container:not(:has(.button)) {
    display: none;
    visibility: hidden;
}

/* Sticky Icon */
.sticky-icon {
    background: #869ab4;
    color: #4f82c3;
    padding: 5px 15px;
    cursor: pointer;
    font-size: 50px;
    box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.2);
    transition: background 0.3s;
    z-index: 9999999;
}

.sticky-icon:hover {
    background: #4F82C3;
    color: #ffffff;
}

/* Info Box */
.info-box {
    width: 350px;
    padding: 100px 20px 20px 20px;
    border: 1px solid #869ab4;
    box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.2);
    z-index: 9999999;
    color: #4f82c3;
    background: #869ab4 url(data:image/svg+xml,%3Csvg%20width%3D%22159%22%20height%3D%22190%22%20viewBox%3D%220%200%20159%20190%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M186.421%20127.423C220.604%2093.2405%20220.604%2037.8196%20186.421%203.63697C152.239%20-30.5456%2096.8178%20-30.5456%2062.6352%203.63697C28.4527%2037.8196%2028.4527%2093.2405%2062.6352%20127.423C96.8178%20161.606%20152.239%20161.606%20186.421%20127.423Z%22%20stroke%3D%22%234F82C3%22%20stroke-width%3D%2220%22%2F%3E%0A%3Cpath%20d%3D%22M132.51%2051.7899H116.34V104.18H132.51V51.7899ZM131.26%2041.1499C132.98%2039.5799%20133.84%2037.5699%20133.84%2035.1099C133.84%2032.6499%20132.98%2030.7099%20131.26%2029.1799C129.54%2027.6399%20127.29%2026.8799%20124.53%2026.8799C121.77%2026.8799%20119.57%2027.6499%20117.83%2029.1799C116.09%2030.7199%20115.22%2032.6899%20115.22%2035.1099C115.22%2037.5299%20116.09%2039.4499%20117.83%2041.0699C119.57%2042.6899%20121.8%2043.4999%20124.53%2043.4999C127.26%2043.4999%20129.53%2042.7099%20131.26%2041.1499Z%22%20fill%3D%22%234F82C3%22%2F%3E%0A%3C%2Fsvg%3E%0A) no-repeat right top;
}

.info-box h3 {
    color: inherit;
    line-height: 32px;
    font-size: 26px;
    font-weight: bold;
}

/* Close Button */
.close-btn {
    background: red;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    border-radius: 5px;
    position: absolute;
    top: 5px;
    right: 5px;
}

/* When active, move the container into view */
.info-container.active {
    right: 0;
}

/*
################
  Header
################
*/


#header {
    --cnvs-header-height: 192px;
    --cnvs-header-height-sm: 70px;
    --cnvs-header-height-md: 80px;
    --cnvs-header-height-lg: 120px;
    --cnvs-header-height-shrink: 120px;
    --logo-space: 20px;
}

.header-wrap-clone {
    height: calc(var(--cnvs-header-height) - calc(1px - 23px));
}

#header-wrap #logo img {
    height: calc(var(--cnvs-header-height) - calc(var(--logo-space) * 2));
}

.is-expanded-menu #header.sticky-header-shrink #header-wrap #logo img {
    height: calc(var(--cnvs-header-height) - calc(var(--logo-space) * 4));
}

/*
################
  Buttons
################
*/

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--cnvs-themecolor);
    --bs-btn-border-color: var(--cnvs-themecolor);
    --bs-btn-hover-color: var(--cnvs-themecolor);
    --bs-btn-hover-bg: #fff;
    --bs-btn-hover-border-color: var(--cnvs-themecolor);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: var(--cnvs-themecolor);
    --bs-btn-active-bg: #fff;
    --bs-btn-active-border-color: var(--cnvs-themecolor);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: gray;
    --bs-btn-disabled-border-color: gray;
}

.btn-secondary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--cnvs-themecolor-dark);
    --bs-btn-border-color: var(--cnvs-themecolor-dark);
    --bs-btn-hover-color: var(--cnvs-themecolor-dark);
    --bs-btn-hover-bg: #fff;
    --bs-btn-hover-border-color: var(--cnvs-themecolor-dark);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: var(--cnvs-themecolor-dark);
    --bs-btn-active-bg: #fff;
    --bs-btn-active-border-color: var(--cnvs-themecolor-dark);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: gray;
    --bs-btn-disabled-border-color: gray;
}

.btn-compact {
    --bs-btn-padding-x: 0.5rem;
    --bs-btn-padding-y: 0.25rem;
    --bs-btn-line-height: 1.25;
    --bs-btn-font-size: 16px;
    --bs-btn-font-weight: 300;

}

/*
################
  Navigation
################
*/

/* primary menu */

.cnvs-hamburger .cnvs-hamburger-inner,
.cnvs-hamburger .cnvs-hamburger-inner::before,
.cnvs-hamburger .cnvs-hamburger-inner::after {
    background-color: var(--cnvs-themecolor);
}

@media (min-width: 1520px) {
    .primary-menu .sub-menu-container {
        margin-top: -35px !important;
        left: 50%;
        transform: translateX(-50%);
        --cnvs-primary-menu-submenu-bg: var(--zkrd-red);
        border: 0;
        padding: 25px 15px;
    }

    .primary-menu .sub-menu-container::before {
        content: "";
        position: absolute;
        top: -15px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-bottom: 15px solid var(--zkrd-red);
    }
}

@media (max-width: 1519px) {
    #logo {
        padding: 10px 0;
    }
}

.primary-menu .menu-link,
.sub-menu-container .menu-item > .menu-link {
    --cnvs-primary-menu-font-size: 18px;
    --cnvs-primary-menu-submenu-font-size: 18px;
    --cnvs-primary-menu-submenu-font-weight: bold;
    --cnvs-primary-menu-font-weight: bold;
    text-transform: none;
}

.primary-menu .menu-item .sub-menu-container .menu-link {
    color: var(--zkrd-dark-blue);
    text-transform: none;
    text-decoration: underline;
}

.primary-menu .menu-link, .header-misc .dropdown-toggle, #top-search-trigger i {
    color: var(--zkrd-light-red);
}

.primary-menu .menu-container > .menu-item:hover > .menu-link {
    color: var(--zkrd-dark-blue);
}

@media (min-width: 1520px) {
    .primary-menu > ul > .menu-item > .menu-link {
        overflow-wrap: break-word;
        word-break: break-word;
        white-space: normal;
        display: inline-block;
        max-width: 215px;
        text-align: center;
    }
}

/* header-misc icon dropdown */
.header-misc .dropdown-menu {
    --bs-dropdown-min-width: fit-content;
    --bs-dropdown-link-hover-bg: var(--cnvs-themecolor);
    --bs-dropdown-link-hover-color: #fff;
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: var(--cnvs-themecolor);
    --bs-dropdown-padding-y: .25rem;
    margin-top: 35px !important;
}

.header-misc .dropdown-toggle::after {
    display: none !important;
}


/*
################
  Container override
################
*/


@media (min-width: 576px) {
    .container-sm, .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container-md, .container-sm, .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container-lg, .container-md, .container-sm, .container {
        max-width: 800px;
    }
}

@media (min-width: 1200px) {
    .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1000px;
    }
}


@media (min-width: 1400px) {
    .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1186px;
    }

    .custom-container {
        max-width: 1900px;
    }
}


/*
################
  ContentPage
################
*/

@media (min-width: 992px) {
    .zkrd-background {
        background-image: url('/assets/temporaryImages/zkrd-pinsel.png');
        background-repeat: no-repeat;
        background-position-x: right;
    }
}

/*
################
  Page Section
################
*/

.partner-title {
    --cnvs-page-title-padding: 9rem;
    --cnvs-page-title-font-size: 70px;
    background-size: cover;
    background-position: center;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}

.page-section {
    margin-bottom: 60px;
}

.page-section.active .page-section-headline {
    animation: pulse 1s infinite;
}

/** Headline **/
.page-section-headline {
    background-color: var(--page-section-background);
    color: var(--cnvs-themecolor-dark);
    padding: 15px 10px;
    border-bottom: 1px solid var(--cnvs-themecolor-dark);
    margin-bottom: 15px;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 25%);
}

.page-section-headline h2 {
    color: inherit;
    margin-bottom: 0;
}

/*
################
  Accordion
################
*/

* > .zkrd-accordion:first-of-type {
    border-top: 1px solid var(--cnvs-themecolor);
}

.zkrd-accordion {
    margin-bottom: 0;
    border-bottom: 1px solid var(--cnvs-themecolor);
    --bs-accordion-btn-icon: url(data:image/svg+xml,%3Csvg%20width%3D%2230%22%20height%3D%2214%22%20viewBox%3D%220%200%2030%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M15%2014L0.277568%200.45028L29.7224%200.450278L15%2014Z%22%20fill%3D%22%23EE712A%22%2F%3E%0A%3C%2Fsvg%3E);
    --bs-accordion-btn-active-icon: url(data:image/svg+xml,%3Csvg%20width%3D%2230%22%20height%3D%2214%22%20viewBox%3D%220%200%2030%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M15%2014L0.277568%200.45028L29.7224%200.450278L15%2014Z%22%20fill%3D%22%23EE712A%22%2F%3E%0A%3C%2Fsvg%3E);
    --bs-accordion-btn-icon-width: 34px;
    --bs-accordion-bg: transparent;
}

.zkrd-accordion.circular-wrapper {
    border-color: #dee2e6;
}

.zkrd-accordion:has(+ div:not(.zkrd-accordion)) {
    margin-bottom: 30px;
}

.zkrd-accordion .accordion-button:focus {
    border-color: inherit;
    box-shadow: none;
}

.zkrd-accordion .accordion-button {
    color: var(--cnvs-themecolor);
    font-size: 18px;
    font-weight: bold;
    text-decoration: underline;
}

.zkrd-accordion .accordion-button::after {
    background-position-y: center;
}

.zkrd-accordion .accordion-button:not(.collapsed) {
    background-color: transparent;
    color: var(--cnvs-themecolor);
    box-shadow: none;
}

/*
################
  Download Element
################
*/

.download a {
    font-size: 18px;
    color: var(--cnvs-themecolor);
    font-weight: bold;
    text-decoration: underline !important;
}

.download > ul > li::marker {
    color: var(--cnvs-themecolor);
}

/*
################
  SiteMenu
################
*/

.site-menu {
    position: fixed;
    top: 50%;
    left: 0;
    transform: translate(-100%, -50%);
    z-index: 1;
    transition: transform 200ms ease-in-out;
    background-color: #FBE3D4;
    padding: 50px 40px;
    min-width: 300px;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 25%);
}

.site-menu.open {
    transform: translate(0, -50%);
}

.site-menu li:not(:last-of-type) {
    margin-bottom: 15px;
}

.site-menu li > a {
    font-size: 18px;
    text-decoration: underline !important;
    font-weight: bold;
    color: #4F82C3;
}

#site-menu-toggle {
    --icon-size: 25px;
    border: 1px solid #4F82C3;
    border-radius: 5px;
    padding: 5px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(90%, -50%) rotate(0deg);
    width: var(--icon-size);
    height: calc(var(--icon-size) * 2);
    line-height: var(--icon-size);
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #4F82C3;
    transition: transform 250ms ease-in-out;
    transition-delay: 250ms;
    cursor: pointer;
}

#site-menu-toggle i {
    color: #fff;
    font-size: 30px;
}

#site-menu.open #site-menu-toggle {
    transform: translate(25%, -50%) rotate(-180deg);
}

/*
################
  StatusPages
################
*/

.status-page-title {
    --cnvs-page-title-bg: #FBE2D4;
}

/* 
################
  Search
################
*/

.search-card {
    --bs-card-cap-bg: var(--zkrd-dark-blue);
    color: #fff;
}

.search-card .card-header h5 {
    color: inherit;
    margin-bottom: 5px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    font-weight: 600;
}

.search-card .card-content {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden;
    color: #000;
}

.search-card .download li {
    color: var(--cnvs-themecolor);
}

.toggle-title h5 {
    color: var(--zkrd-dark-blue);
}

.toggle-title span {
    color: var(--cnvs-themecolor);
}

.search-result {
    padding: 15px 0px 15px 10px;
    border-top: solid 1px #e5e5e5;
    border-bottom: solid 1px #e5e5e5;
    margin-bottom: 50px;
    background-color: #e1eeff;
}

.search-result span {
    color: var(--cnvs-themecolor);
    font-weight: bold;
}

.toggle-header .search-icon {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
    padding: 0 0.375rem;
    text-align: center;
}

/* 
################
  Circular
################
*/

.circular {
    margin: 0 auto;
}

.circular-wrapper {
    font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
}

.circular-wrapper a {
    color: #0c2c65;
}


.circular-wrapper table tr td img {
    width: 100%;
}

.circular-wrapper h1 {
    line-height: 1.2;
    font-size: 20px;
    color: #5f89c6;
    margin-right: 20px;
}

.circular-wrapper h2 {
    line-height: 1.2;
    font-size: 15px;
    color: #5f89c6;
}

.circular-wrapper b.b {
    color: #5f89c6;
}

.circular-wrapper p.white {
    color: #ffffff;
    margin: 10px 0;
}

.circular-wrapper table.header {
    padding: 0 0 20px 20px;
}

.circular-wrapper table.header td {
    padding: 0;
    margin: 0;
}

.circular-wrapper table.header td img {
    vertical-align: center;
}

.circular-wrapper table.intro {
    padding: 20px;
}

.circular-wrapper table.gallery {
    background-color: #0c2c65;
    padding: 20px;
}

.circular-wrapper table.gallery tr td {
    text-align: center;
}

.circular-wrapper table.content {
    background-color: #ffffff;
    padding: 20px;
}

.circular-wrapper table.content tr td {
    width: 50%;
}

.circular-wrapper table.sep {
    padding: 20px;
}

.circular-wrapper table.footer {
    padding: 20px;
    text-align: center;
    font-size: 13px;
}

/* 
################
  RichText Styles
################
*/

.free-text ul,
.free-text ol {
    padding-left: 40px;
}

.free-text ul > li > p {
    margin-bottom: 0;
}

/* 
################
LOGIN  
################
*/

.login .page-title-content h1 {
    color: var(--cnvs-themecolor-dark) !important;
}


/* 
################
  Navigation
################
*/

/** Language switcher **/
.dropdown-menu.flags {
    padding: 0 !important;
}

.dropdown-menu.flags li {
    padding: 5px 10px;
}

.dropdown-menu.flags li:has(a.active) {
    background-color: var(--zkrd-light-red);
}

.dropdown-menu.flags li:hover {
    background-color: var(--zkrd-light-red);
}

.dropdown-menu.flags a {
    padding: 0 !important;
    line-height: 0;
    width: 30px;
}

.culture-flag {
    width: 100%;
}