* {
    --primary-color    : #ef7d00;
    --secondary-color  : #0c6ec6;
    --tertiary-color   : #585858;
    --lightgray        : #f5f5f5;
    --lightgray-border : #d9d9d9;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}

body {
    background : white;
    padding    : 0;
    margin     : 0;
    position   : relative;
}

*:focus {
    outline: none;
}

button:focus-visible,
a:focus-visible,
span[tabindex="0"]:focus-visible {
    outline : 2px solid var(--blue-color);
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

.Container {
    min-width : 1260px;
}

.layout-1000 .Container {
    min-width : auto;
}

.layout-1000 main section {
    clear: both;
    margin: 3.75em 0;
}

article > div > section:last-child
section > *:last-child,
#Content > *:last-child,
main > *:last-child {
    margin-bottom: 0 !important;
}

#Content section:first-of-type { margin-top: 0px !important }
@media all and (max-width: 768px) {
    .layout-1000 #Content section:first-of-type {
        margin-top: 0px !important;
    }
}


.layout-1000 main > section:first-child {
    margin-top: 0;
}

.Wrapper {
    box-sizing    : border-box;
    margin        : auto;
    width         : 1260px;
    padding-left  : 30px;
    padding-right : 30px;
}

.layout-1000 .Wrapper {
    width     : 100%;
    max-width : 1060px;
}

.Wrapper.no-padding {
    padding-left  : 0;
    padding-right : 0;
}

.Wrapper.Banner {
    margin : auto;
}

@media screen and (max-width : 1280px) {
    .Wrapper.Banner {
        margin-left   : 0;
        margin-right  : 0;
        padding-left  : 0px !important;
        padding-right : 0px !important;
    }
}


#Header h1 {
    overflow  : hidden;
    font-size : 0.0625rem;
}

#Header h1 span {
    display     : inline-block;
    text-indent : -9999px !important;
}

.Container.header {
    width            : 100%;
    z-index          : 10000;
    background-color : #ffffff;
    transition       : all 0.3s ease-in-out;
}

#HeaderContainer {
    position : sticky;
    top      : 0;
}

#HeaderContainer.shrink {
    box-shadow : 0 3px 6px #00000029;
}

#HeaderContainer.shrink #Header {
    height : 75px;
}

#HeaderContainer.shrink #Logo img {
    height : 41px !important;
}

#SubNavi {
    padding   : 0;
    font-size : 0;
    margin    : 1.5625rem 0 0;
}

#SubNavi ul {
    list-style  : none inside;
    white-space : nowrap;
    overflow    : visible;
    margin      : 0;
    display     : flex;
    flex-wrap   : wrap;
    row-gap     : 0.5rem;
}

#SubNavi ul li {
    display      : flex;
    align-items  : center;
    font         : var(--font-xs);
    position     : relative;
    margin-left  : 0px;
    margin-right : 0.75em;
    color        : var(--lightgray-4);
}

#SubNavi ul li a {
    padding-right : 0.75em;
}

#SubNavi ul li:first-child a {
    padding-left : 0;
}

#SubNavi ul li:last-child {
    color : var(--darkgray);
}

#SubNavi ul li a {
    color : inherit;
}

#SubNavi ul li.OnlyMobile {
    display : none;
}

#SubNavi ul li.breadcrumb-toggle {
    display : none;
}

#SubNavi ul li {
    white-space : normal;
}

#SubNavi li.breadcrumb-items[hidden] {
    display : none;
}

#SubNavi ul li.breadcrumb-toggle {
    display : flex;
}

#SubNavi ul li.breadcrumb-toggle button {
    padding-right    : 0.75em;
    color            : var(--lightgray-4);
    border           : none;
    background-color : transparent;
}


#Content {
    color      : #333333;
    padding    : 3em 0;
    min-height : 400px;
    /*	overflow: hidden; */
}


div.left,
#Article {
    float : left;
    width : 835px;
}

.layout-1000 #Article {
    width : 100%;
}

#kontaktformular-footer {
    padding       : 30px 0px;
    margin-bottom : 3.75em;
    color         : var(--tertiary-color);
}

#kontaktformular-footer > h3 {
    text-align    : center;
    /* text-transform : uppercase; */
    margin-top    : 0px;
    margin-bottom : 30px;
}

#kontaktformular-footer > *:last-child {
    margin-bottom : 0;
}

#kontaktformular-footer .itrk-form .itrk-columns-2 {
    margin-bottom : 10px;
}

#kontaktformular-footer .itrk-form .additional-infos {
    font : var(--font-small);
}

#kontaktformular-footer .itrk-form .itrk-button-bar {
    margin-top : 0;
}

#kontaktformular-footer .form-valid {
    text-align : center;
}

#kontaktformular-footer .form-valid .itrk-icon {
    margin-bottom : 10px;
}

itrk-popup#popup_agb > itrk-popup-frame {
    width                   : 80%;
    max-width               : 1200px;
    color                   : #595857;
    text-rendering          : auto;
    -webkit-font-smoothing  : antialiased;
    -moz-osx-font-smoothing : grayscale;
}

itrk-popup#popup_agb > itrk-popup-frame:before {
    font-size : 16px;
}

itrk-popup#popup_agb > itrk-popup-frame #AgbTree {
    display : block;
}

itrk-popup#popup_agb > itrk-popup-frame #AgbTree .platformGroup > div,
itrk-popup#popup_agb > itrk-popup-frame #AgbTree a {
    color       : inherit;
    white-space : nowrap;
}

.OnlyMobile,
li.OnlyMobile,
hr.OnlyMobile,
.OnlyPrint {
    display : none;
}

div.button-group {
    display : inline-block;
    margin  : 0.25em 0;
}

div.button-group a.button {
    margin : 0.25em 0;
}

div.button-group + div.button-group {
    margin-left : 1em;
}

div.button-group.float-right {
    float : right;
}

div.button-group:last-child:after {
    display : block;
    clear   : both;
}

#right-fixed {
    position: fixed;
    z-index: 2000;
    top: 165px;
    right: 0px;
    display: grid;
    gap: 0.7em;
    opacity: 1;
    transition: all 0.5s ease-in-out;
}
#right-fixed .border {
    width: 98px;
    border: 1px solid var(--primary-color);
    box-sizing: border-box !important;
    border-top-left-radius    : var(--itrk-border-radius);
    border-bottom-left-radius : var(--itrk-border-radius);
}

@media (max-height : 560px) {
    #right-fixed {
        right: -200px;
        opacity: 0;
    }
}
@media all and (max-width : 1450px) {
    body:not(.layout-1000) #right-fixed {
        right: -200px;
        opacity: 0;
    }
}
@media all and (max-width : 1230px) {
    #right-fixed {
        right: -200px;
        opacity: 0;
    }
}


@media screen and (max-width : 767px) {

    .OnlyFull {
        display : none;
    }

    .OnlyMobile {
        display : inline;
    }

    hr.OnlyMobile, div.OnlyMobile {
        display : block;
    }

    .Wrapper {
        width         : auto;
        max-width     : 100%;
        padding-left  : 25px;
        padding-right : 25px;
    }

    #Content {
        padding-top : 40px;
    }

    #SubNavi {
        padding : 0;
    }

    #SubNavi ul {
        margin-left : 0;
    }

    #Navigation {
        display    : none;
        position   : absolute;
        margin-top : 34px;
        left       : 0;
        right      : 0;
        padding    : 0;
        box-shadow : 0 5px 5px rgba(0, 0, 0, 0.2);
    }

    #Navigation ul {
        margin : 0;
    }

    #Navigation ul li {
        display       : block;
        text-align    : center;
        font-size     : 13px;
        border-bottom : 1px solid #cccccc;
        margin        : 0;
    }

    #Navigation ul li a {
        display     : block;
        line-height : 3em;
    }

    #Footer {
        padding : 25px 20px 20px;
    }

    #Footer ul {
        margin : 0;
    }

    #Footer ul li.col1,
    #Footer ul li.col2,
    #Footer ul li.col3,
    #Footer ul li.col4 {
        clear   : both;
        display : block;
        margin  : 0;
        width   : 100%;
        float   : none;
    }

    div.left,
    #Article {
        float   : none;
        clear   : both;
        display : block;
        width   : 100%;
    }

    #MinFooter {
        text-align : center;
    }

    #MinFooter ul,
    #MinFooter span {
        margin  : 0;
        display : block;
        float   : none;
        padding : 0;
    }

    #SubNavi ul li.OnlyMobile {
        display : inline;
    }

    #Navigation ul li.OnlyMobile,
    #Header ul li.OnlyMobile {
        display : block;
    }

}

@media (max-width : 767px) {
    .Container {
        max-width : 100%;
        min-width : initial;
    }
}

/* Schriften für Handies optimieren */
@media only screen and (max-width : 767px) and (orientation : portrait) {
    #News p, #News ul, #News ol, #Article p, #Article ul, #Article ol, .SideBarItem ul, .SideBarItem p {
        line-height : 1.6em;
        text-align  : left !important;
    }

    #Article div.alert ul,
    #Content div.alert ul {
        margin-left : 1.5em !important;
    }
}

.card {
    border-radius : var(--itrk-border-radius-outer);
    border        : 1px solid var(--lightgray-border);
}


@media screen and (max-width : 767px) {
    #_cms_admin_layer {
        top    : 0 !important;
        height : 48px !important;
        width  : 48px !important;
    }

    #_cms_admin_layer img {
        height : 48px !important;
        width  : 48px !important;
    }
}

/* GFX Elemente */
a.cms-gfx {
    margin-top    : 1em !important;
    margin-bottom : 1em !important;
}

img.cms-gfx {
    height : auto;
}

div.cms-gfx {
    text-align : center;
    margin-top : 2em;
}

div.cms-gfx > div {
    text-align    : center;
    max-width     : 747px;
    display       : inline-block;
    margin-bottom : 1.5em;
    background    : white;
    border        : 0px solid #e5e5e5;
    padding       : 0px;
    box-shadow    : 0px 3px 7px 5px rgba(0, 0, 0, 0.07);
    border-radius : 10px;
    overflow      : hidden;
}

div.cms-gfx.full > div {
    max-width : none;
    display   : block;
}

div.cms-gfx > div > p {
    font-size   : 11px;
    line-height : 1.3em;
    font-weight : bold;
    color       : #333333;
    text-align  : left;
    margin      : 10px 0px 0px 0px;
}

div.cms-gfx > div > *:last-child {
    padding-bottom : 0px !important;
    margin-bottom  : 0px !important;
}

@media screen and (max-width : 576px) {
    #SubNavi ul li,
    #SubNavi ul,
    #SubNavi ul li.breadcrumb-toggle
    {
        display: inline;
    }
    #SubNavi ul li i {
        line-height: inherit;
    }
}



#Header {
    height                : 7.5em;
    -ms-user-select       : none; /* Internet Explorer/Edge */
    -moz-user-select      : none; /* Old versions of Firefox */
    -khtml-user-select    : none; /* Konqueror HTML */
    -webkit-user-select   : none; /* Safari */
    -webkit-touch-callout : none; /* iOS Safari */
    user-select           : none;
    color                 : var(--darkgray);
    position              : relative;
    transition            : all 0.3s ease-in-out;
}

#Header ul {
    margin-left : 0;
}

#Header a,
#Header .btn-with-dropdown {
    padding : 0.625em 0;
    color   : var(--darkgray);
    font    : var(--font-small);
}

#Header .btn-with-dropdown {
    border: none;
    background-color: inherit;
}

.skip-nav {
    position         : absolute;
    background-color : white;
    padding          : 0.3125em;
    outline          : 0.125em solid var(--blue-color);
    opacity          : 0;
    z-index          : 20000;
    left             : 50%;
    top              : -40px;
    transform        : translateX(-50%);
    transition       : opacity 0.1s ease-in-out;
}

.skip-nav:focus,
.skip-nav:focus-visible {
    top : 1.5625em;
}

@media screen and (max-width : 768px) {
    .skip-nav {
        left      : auto;
        transform : none;
        right     : 0;
    }
}

.skip-nav:focus {
    opacity : 1;
}

#Header img.Logo {
    width  : 9.375em;
    height : 5.75em;
}

#Header #Logo img {
    transition : all 0.3s ease-in-out;
}

@media all and (max-width : 767px) {
    #Header {
        height : 5.5em;
    }

    #Header #Logo img {
        height : 65px !important;
    }
}

#Header #MinNavi {
    display         : flex;
    justify-content : space-between;
    align-items     : center;
    height          : 100%;
}

#Header .main-nav > ul {
    display : flex;
    gap     : 1.375em;
}

#Header .main-nav > ul > li > a,
#burger-menu-button,
#Header .login a,
#Header .btn-with-dropdown {
    position : relative;
}

#Header .main-nav > ul > li > a:before,
#Header .main-nav > ul > li.current > a:before,
#burger-menu-button:before,
#Header #header-navi > .login a:before,
#Header .btn-with-dropdown:before {
    content          : "";
    position         : absolute;
    bottom           : 0.375rem;
    left             : 0;
    width            : 0;
    height           : 0.1875rem;
    background-color : var(--primary-color);
    transition       : width 0.3s;
}

#Header .main-nav > ul > li > a:hover:before,
#burger-menu-button:hover:before,
#Header #header-navi > .login a:hover:before,
#Header .search-container:hover:before,
#Header .main-nav > ul > li.current > a:before,
#Header .btn-with-dropdown:hover:before {
    width : 100%;
}

#Header li {
    list-style  : none;
    margin-left : 0;
    display     : flex;
}

#Header #header-navi {
    display     : flex;
    align-items : center;
    font        : var(--font-small);
    gap         : 1.375em;
}

#Header li.search {
    margin-right : -1.375em;
}

#Header itrk-search-wrapper input {
    font : var(--font-small);
}

#Header .search-container {
    position : relative;
    display  : inline-block;
}

#Header .search-button {
    cursor     : pointer;
    font-size  : 16px;
    color      : var(--darkgray);
    background : none;
    border     : none;
    padding    : 0.9375em 1.375em;
}

#Header .search-box {
    position   : absolute;
    right      : 0.75em;
    top        : 0.25em;
    width      : 0;
    height     : 2.625em;
    background : white;
    transition : width 0.1s ease-in-out;
    padding    : 0;
    visibility : hidden;
}

#Header .search-box input {
    width     : 100%;
    height    : 100%;
    border    : none;
    padding   : 0.625em;
    font-size : 1em;
    outline   : none;
}

#Header .search-container.active .search-box {
    width      : 12.5em;
    padding    : 12.5em;
    visibility : visible;
}

#Header .login a {
    display     : flex !important;
    align-items : center;
    gap         : 0.4375em;
}

#Header .login i:before {
    font-size   : 1.125em;
    line-height : 1.5em;
}

#Header .itrk-tag {
    float        : right;
    margin-right : -0.0625em;
}

#Header li.locked,
#Header li.locked a,
#Header li.locked a:hover {
    color : #cccccc !important;
}

#Header li.locked:before {
    content      : "\f023";
    font-family  : "Font Awesome 6 Free";
    font-weight  : 900 !important;
    font-size    : inherit;
    color        : inherit;
    margin-right : 0.5em;
}

#burger-menu-button {
    border           : none;
    background-color : white;
    color            : var(--darkgray);
    padding          : 0.625em 0;
    display          : flex;
    align-items      : center;
}

#burger-menu-button i {
    font-size    : 1em;
    line-height  : 1.25em;
    margin-right : 0.5em;
    margin-top   : -0.125em;
}

#Header li.burger-nav {
    overflow-y       : scroll;
    z-index          : 100001;
    position         : fixed;
    height           : 100%;
    width            : 30em;
    right            : -25em;
    top              : 0;
    bottom           : 0;
    box-shadow       : 0.1875em 0.1875em 0.625em #00000029;
    border-top       : 0.0625em solid var(--darkgray);
    background-color : white;
    transition       : all 0.2s ease-in-out;
    opacity          : 0;
    pointer-events   : none;
}

#Header li.burger-nav > ul {
    margin  : 6em 0 0 0 !important;
    padding  : 0 2em 6em 2em !important;
    position : absolute;
    z-index  : 25;
    top      : 0;
    left     : 0;
}

body:not([id="Portal"]) #Header li.burger-nav .title,
body:not([id="Portal"]) #Header li.burger-nav a {
    font-family : var(--font-family-bitter);
    color       : var(--darkgray-2);
    font-size   : 1rem;
    line-height : 1.5em;
}

#Header li.burger-nav .with-dropdown li a {
    font-family : var(--font-family-sans);
    color       : var(--darkgray);
    padding     : 10px 0;
    font-size   : 0.875rem;
    line-height : 1.25em;
}

#Header.menu-show li.burger-nav {
    right          : 0;
    opacity        : 1;
    pointer-events : auto;
}

#Header:before {
    position       : fixed;
    top            : 0;
    bottom         : 0;
    left           : 0;
    right          : 0;
    width          : 100%;
    height         : 100%;
    opacity        : 0;
    transition     : opacity 0.4s ease-in-out;
    content        : "";
    pointer-events : none;
    z-index        : 990;
}

#Header.menu-show:before {
    background          : rgba(0, 0, 0, 0.5);
    pointer-events      : initial;
    overscroll-behavior : contain;
    opacity             : 1;
}

#Header #burger-menu-close {
    position   : absolute;
    z-index    : 20;
    top        : 1.25em;
    right      : 1.25em;
    background : white;
    border     : none;
    color      : var(--darkgray);
    font-size  : 1.625em;
    padding    : 1.25em;
    margin     : -1.25em;
    transition : color 0.2s ease-in-out;
}

#Header #burger-menu-close:hover {
    color : var(--primary-color);
}

#Header .burger-nav li {
    display : block;
}

#Header .burger-nav li.locked {
    display     : flex;
    align-items : center;
}

#Header .burger-nav ul {
    width : 100%;
}

#Header .burger-nav ul {
    margin-left : 0;
    list-style  : none;
}

#Header .burger-nav ul li {
    margin : 0px 0;
}

#Header .burger-nav a {
    transition : color 0.2s ease-in-out;
}

#Header .burger-nav a:hover {
    color : var(--primary-color) !important;
}

#Header .burger-nav ul.level-0 > li {
    border-bottom : 0.0625em solid var(--lightgray-border);
    padding       : 0.625em 0;
}

#Header .burger-nav ul.level-0 > li:last-of-type {
    border-bottom : none;
}

#Header .burger-nav .title {
    display : block;
}

#Header .burger-nav .with-dropdown .title,
#Header .burger-nav a {
    padding : 5px 0;
    display : block;
}

#Header .burger-nav .with-dropdown .title {
    display         : flex;
    justify-content : space-between;
    align-items     : center;
    position        : relative;
    transition      : color 0.2s ease-in-out;
    padding-right   : 1.25em;
}

#Header .burger-nav .with-dropdown .title:hover {
    cursor : pointer;
    color  : var(--primary-color);
}

#Header .burger-nav .with-dropdown .title::after {
    content       : '';
    width         : 0.625em;
    height        : 0.625em;
    border-left   : 2px solid var(--darkgray);
    border-bottom : 2px solid var(--darkgray);
    margin-left   : 0.625em;
    transition    : all 0.2s ease;
    position      : absolute;
    right         : 4px;
    transform     : translateY(-50%) rotate(-45deg);
}

#Header .burger-nav .with-dropdown .title:hover::after {
    border-color : var(--primary-color);
}

#Header .burger-nav .with-dropdown.active .title::after {
    transform : rotate(135deg);
}

#Header .burger-nav .with-dropdown.active .a:focus-visible {
    outline-offset : 4px;
}

#Header .burger-nav .with-dropdown > ul {
    margin-left : 1.25em;
    transition  : all 0.2s ease;
    overflow    : hidden;
    height      : 0;
}

#Header .burger-nav .with-dropdown.active > ul {
    height : auto;
}

#Header .has-dropdown {
    position : relative;
}

#Header .has-dropdown > ul {
    position      : absolute;
    top           : 100%;
    left          : 0;
    min-width     : 235px;
    margin        : 0.5rem 0 0 0;
    padding       : 0;
    list-style    : none;

    background    : var(--white);
    border-radius : var(--itrk-border-radius);
    box-shadow    : 0 2px 10px rgba(0, 0, 0, .14);

    opacity       : 0;
    visibility    : hidden;
    transform     : translateY(8px);
    transition    : opacity 0.18s ease, transform 0.18s ease, visibility 0s linear 0.18s;
    z-index       : 50;
}

/* Öffnen beim Hover oder Fokus */
#Header .has-dropdown.open > ul,
#Header .has-dropdown.open > ul {
    opacity    : 1;
    visibility : visible;
    transform  : translateY(0);
    transition : opacity 0.18s ease, transform 0.18s ease, visibility 0s;
}

/* Einzelne Links */
#Header .has-dropdown > ul > li a {
    display         : block;
    padding         : 12px 18px;
    text-decoration : none;
    white-space     : nowrap;
    width           : 100%;
    transition      : background 0.2s ease-in-out;
}

#Header .has-dropdown > ul > li a:hover,
#Header .has-dropdown > ul > li a:focus {
    background : var(--lightgray);
    outline    : none;
}

#Contact .contact-links {
    display         : flex;
    flex-wrap       : wrap;
    justify-content : end;
    gap             : 1em;
    row-gap         : 2px;
    align-items     : center;
}

#Contact .contact-links a {
    color       : white;
    font        : var(--font-xs);
    display     : flex;
    gap         : 5px;
    align-items : center;
    line-height : 22px;
}

#Contact .itrk-tooltip i {
    margin-left : 0;
    color       : white;
}

#Contact .itrk-tooltip .itrk-tooltip-text {
    z-index   : 100000;
    width     : 175px;
    min-width : unset;
    max-width : unset;
    transform : translate(-49%, 53px);
}

@media screen and (max-width : 900px) {
    #Header .main-nav, #Header .login {
        display : none;
    }

    #Header .has-dropdown > ul {
        display : none;
    }

    #Header .search:before {
        display : none;
    }

    #Header .search {
        order : 1;
    }

    #burger-menu-button:before {
        display : none;
    }

    #burger-menu-button {
        padding: 0.5em;
        margin-right: -0.5em;
    }

    #Header #burger-menu-button i {
        font-size    : 1.5em;
        margin-right : 0;
    }

    #Header #burger-menu-button span {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0,0,0,0);
        white-space: nowrap;
        border: 0;
    }

    #Header .burger-menu-button {
        order : 2;
    }
}

@media screen and (min-width : 900px) {
    #Header .burger-nav .hide-desktop {
        display : none !important;
    }
}

@media screen and (max-width : 480px) {
    #Header li.burger-nav {
        width : 100%;
        right : -100%;
    }

    #Contact .contact-links {
        justify-content : center;
    }
}

@media screen and (min-width : 768px) {
    #Portal #Header #header-navi,
    #Portal #Header.menu-show:before {
        display : none;
    }
}


#BundlesWrapper {
    position: relative;
}

#BundlesMini .header {
    font: var(--font-h2);
    color: var(--darkgray-2);
    margin-bottom: 5px!important;
    text-align: center;
    text-transform: none;
    font-size: 24px !important;
    line-height: 39px !important;
    padding-top: 40px !important;
    font-weight: 400;
}

#Bundles ul {
    display: flex;
    justify-content: space-around;
    align-items: flex-end;
    gap: 1.25em;
    box-sizing: border-box;
    margin-left: 0;
}

#Bundles ul li {
    flex: 1 1 233px;
    border: 1px solid var(--itrk-border);
    background-color: #ffffff;
    list-style: none;
    border-radius: var(--itrk-border-radius);
    margin: 0;
    transition: all 0.2s ease-in-out;
}

#Bundles ul li:hover {
    border: 1px solid var(--primary-color);
}

#Bundles ul li a {
    display: flex;
    align-items: center;
    padding: 1.25em;
    padding-bottom: 2.25em;
    height: 100%;
    width: 100%;
}

#Bundles .bundle-inner {
    display: grid;
    grid-template-columns: 31px auto;
    gap: 1em;
    color: var(--darkgray);
    align-items: center;
}

#Bundles ul li p {
    font: var(--font-xs);
}

#Bundles .info-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#Bundles ul img {
    margin: 0 auto;
    min-width: 25px;
}

#Bundles ul .name {
    font: var(--font-xs);
    text-transform: uppercase;
    font-weight: 500;
    margin-bottom: 0;
}

#Bundles li {
    position: relative;
}

#Bundles .price {
    position: absolute;
    bottom: 0.5em;
    right: 1em;
}

#Bundles .price .itrk-button {
    text-transform: none;
}

#Bundles .bestseller-label {
    height: 23px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--lightgray-4);
    color: white;
    padding: 0.2em 0.75em;
    font: var(--font-xs);
    transform: skew(-15deg);
    text-transform: uppercase;
}

#Bundles .bestseller-label span {
    font: var(--font-xs);
    line-height: 10px;
    display: inline-block;
    transform: skew(15deg);
}

#Bundles .bundle-10 {
    height: 120px;
}

#Bundles .bundle-10 .bundle-inner {
    grid-template-columns: 31px auto;
}

#Bundles .bundle-10 img {
    max-height: 45px;
}

#Bundles .bundle-4 {
    height: 130px;
}

#Bundles .bundle-4 .bundle-inner {
    height: 70px;
    grid-template-columns: 48px auto;
}

#Bundles .bundle-5 {
    height: 140px;
    border: 2px solid var(--primary-color);
}

#Bundles .bundle-5 a {
    padding-left: 0.75em;
    padding-right: 0.5em;
}

#Bundles .bundle-5:hover {
    border: 2px solid color-mix(in srgb, var(--primary-color) 40%, white);
}

#Bundles .bundle-5 .bundle-inner {
    grid-template-columns: 90px auto;
    grid-template-rows: auto auto;
    gap: 13px !important;
}

#Bundles .bundle-5 .info-text {
    grid-column: 2;
    grid-row: 1 / 3;
}

#Bundles .bundle-6 {
    height: 150px;
}

#Bundles .bundle-6 .bundle-inner {
    grid-template-columns: 51px auto;
    letter-spacing: -0.12px;
}

#Bundles .bundle-4 img {
    max-height: 50px;
}

#Bundles .bundle-5 img {
    max-height: 50px;
}

@media all and (max-width: 1100px) {
    #Bundles .header {
        margin-bottom: 0.75em;
    }

    #Bundles ul {
        gap: 0.5em;
    }

    #Bundles ul li a {
        flex: 0 1 220px;
        padding: 1em 0.625em 2.25em;
    }

    #Bundles .bundle-inner {
        width: 170px;
        margin: 0 auto;
        gap: 0.725em;
        align-items: start;
    }

    #Bundles ul img {
        margin-top: 4px;
    }

    #Bundles ul .name {
        margin-bottom: 0;
    }

    #Bundles .bundle-10 {
        height: 120px;
    }

    #Bundles .bundle-10 .bundle-inner {
        grid-template-columns: 35px 122px;
    }

    #Bundles .bundle-4 {
        height: 130px;
    }

    #Bundles .bundle-4 .bundle-inner {
        grid-template-columns: auto 118px;
    }

    #Bundles .bundle-5 {
        height: 140px;
    }

    #Bundles .bundle-5 a {
        padding-left: 0;
        padding-right: 0;
    }

    #Bundles .bundle-5 .bundle-inner {
        width: 100%;
        margin-left: 1em;
        margin-right: 1em;
        margin-top: -10px;
        grid-template-columns: auto 102px;
        grid-template-rows: auto auto;
        row-gap: 2px !important;
    }

    #Bundles .bundle-5 img {
        grid-row: 2;
    }

    #Bundles .bundle-5 .info-text {
        grid-column: 2;
        grid-row: 2;
    }

    #Bundles .bundle-5 .bestseller-label {
        grid-column: -1/1;
        grid-row: 1;
        margin-bottom: 0.5em;
        transform: none;
        width: 100%;
        border-radius: var(--itrk-border-radius);
    }

    #Bundles .bundle-5 .bestseller-label span {
        transform: none;
    }

    #Bundles .bundle-6 {
        height: 150px;
    }

    #Bundles .bundle-6 .bundle-inner {
        grid-template-columns: 45px 117px;
    }
}

@media all and (max-width: 950px) {
    #Bundles .bundle-inner {
        width: 150px;
    }

    #Bundles .bundle-10 .bundle-inner {
        grid-template-columns: auto 122px;
    }

    #Bundles .bundle-4 .bundle-inner {
        grid-template-columns: auto 118px;
    }

    #Bundles .bundle-6 .bundle-inner {
        grid-template-columns: 24px 117px;
    }
}

#BundlesSmall.parallelogram .parallelogram-content {
    padding-top: 0.85em;
    padding-bottom: 0.85em;
}

#BundlesSmall.parallelogram .parallelogram-content h1 {
    font: var(--font-small);
    font-family: var(--font-family-bitter);
    margin-bottom: 0.7em;
    line-height: 1.5;
    text-align: center;
}

#BundlesSmall .label {
    font: var(--font-h6);
    color: var(--darkgray-2);
    position: relative;
    display: block;
    height: 100%;
}

#BundlesSmall .dash {
    width: 1px;
    height: 1.25em;
    background-color: var(--darkgray);
}

#BundlesSmall ul {
    max-width: 800px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    list-style: none;
    gap: 1em;
}

#BundlesSmall li {
    margin-left: 0;
    flex: 0 1 auto;
}

#BundlesSmall a {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    color: var(--darkgray);
    gap: 0.5em;
    text-transform: uppercase;
    font: var(--font-small);
}

#BundlesSmall img {
    position: relative;
    top: -1px;
    height: 19px;
}

#BundlesMini img, #BundlesMini a {
    display: none;
}

@media all and (max-width: 768px) {
    #BundlesSmall {
        display: none;
    }
    #BundlesMini img, #BundlesMini a {
        display: block;
    }
    #BundlesMini {
        background-color: var(--background-gray);
        max-width: 100%;
        display: block;
        padding: 22px 0;
    }
    #BundlesMini > div {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
    }
    #BundlesMini > div >div {
        display: flex;
        align-items: center;
        gap: 12px;
    }
    
    #BundlesMini .header {
        margin: 0!important;
        padding: 0!important;
        font: var(--font-normal)!important;
        font-family: var(--font-family-bitter)!important;
        text-align: left;
        line-height: 1.25!important;
        color: var(--darkgray-2);
        min-width: 0;
    }
}

@media all and (max-width: 550px) {
    #BundlesMini {
        padding: 15px 0;
    }
    #BundlesMini .header span:nth-child(1) {
        display: block;
        font-size: 12px;
        line-height: 20px;
        white-space: normal;
    }
}

@media all and (max-width: 300px) {
    #BundlesMini > div,
    #BundlesMini > div > div{
        flex-wrap: wrap;
    }
}

#BundlesOverlay {
    z-index : 1100;
}

@media all and (min-width: 769px) {
    #BundlesOverlay {
        z-index          : 1100;
        opacity          : 0;
        pointer-events   : none;
        position         : absolute;
        width            : 100%;
        top              : 0;
        left             : 0;
        background-color : var(--lightgray-3);
        padding          : 1.25em 0;
        color            : var(--darkgray);
        transition       : opacity 0.3s ease-in-out;
    }
    
    #BundlesOverlay.show {
        opacity        : 1;
        pointer-events : auto;
    }
    
    #BundlesOverlay .header {
        padding-top : 0 !important;
    }
}

@media all and (max-width: 400px) {
    #BundlesSmall ul {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.5em 1.5em;
        max-width: 230px;
        margin: 0 auto;
    }
    #BundlesSmall a {
        flex-basis: 100px;
    }
    #BundlesSmall a {
        justify-content: left;
    }
    #BundlesSmall .img-wrap {
        width: 25px;
        text-align: center;
        margin-right: 2px;
    }
}

@media all and (max-width: 270px) {
    #BundlesSmall ul {
        grid-template-columns : 1fr;
        max-width: 230px;
    }
}


#Footer {
    padding : 3.375em 0;
    font    : var(--font-small);
    color   : var(--lightgray-4);
}

#Footer ul {
    margin     : 0;
    list-style : none;
}

#Footer ul a {
    color : inherit;
}

#Footer ul li,
#Footer p {
    color         : inherit;
    font-size     : 12px;
    line-height   : 1.6em;
    margin-bottom : 1em;
}

#Footer .footer-headline {
    font           : var(--font-normal);
    margin-top     : 0;
    line-height    : 1;
    margin-bottom  : 1.25em;
    text-transform : uppercase;
    font-weight    : 500 !important;
    color          : var(--darkgray);
}

#Footer li ul li {
    display : block;
    margin  : 0;
}

#MinFooter {
    padding : 1.25em 0;
    font    : var(--font-xs);
    color   : white;
}

#MinFooter ul {
    float       : right;
    color       : inherit;
    font-weight : 500;
    list-style  : none inside;
}

#MinFooter ul li {
    display      : inline-block;
    width        : auto;
    padding      : 0 9px;
    border-right : 1px solid var(--itrk-border);
    white-space  : nowrap;
    margin       : 0;
    height       : 22px;
}

#MinFooter ul li a {
    color   : inherit;
    padding : 0.5em 0;
}

#MinFooter ul li:first-child {
    padding-left : 0;
}

#MinFooter ul li:last-child {
    padding-right : 0;
    border        : 0;
}

body.plain #Footer {
    position   : relative;
    bottom     : 0;
    left       : 0;
    right      : 0;
    text-align : center;
}

body.plain #MinFooter {
    text-align : center;
}

body.plain #MinFooter.left-align {
    text-align : left;
}

@media screen and (max-width : 767px) {
    #Footer ul {
        margin : 0;
    }

    #MinFooter {
        display        : flex;
        flex-direction : column-reverse;
        padding        : 0.5em 0 1em;
    }

    #MinFooter ul,
    #MinFooter span {
        margin  : 0;
        display : block;
        float   : none;
        padding : 0;
    }

    #MinFooter ul {
        margin    : 1em 0 !important;
        font-size : 13px;
    }
}

@media screen and (max-width : 500px) {
    #MinFooter ul {
        margin-top : 0;
    }

    #MinFooter ul li {
        text-align    : center;
        width         : 100%;
        border        : none;
        margin-bottom : 1em;
        padding       : 0;
    }

    #MinFooter ul li:last-of-type {
        margin-bottom : 0;
    }

    #MinFooter span:before {
        text-align : center;
        display    : block;
        margin     : 2em auto 2em;
        content    : "";
        width      : 22px;
        height     : 1px;
        border-top : 1px solid white;
    }
}

#Footer ul li {
    margin : 0 !important;
}

#Footer .footer {
    display               : grid;
    grid-template-columns : 1fr 1px auto;
    gap                   : 1.8em;
    position              : relative;
}

#Footer .footer .line {
    background : repeating-linear-gradient(
        to bottom,
        var(--itrk-border),
        var(--itrk-border) 2px,
        transparent 2px,
        transparent 6px
    );
    width      : 1px;
}

#Footer .card-list {
    display  : grid;
    grid-gap : 2em 0.5em;
}

#Footer .footer-top-services .card-list {
    gap: 7px;
    width : 235px;
}

#Footer .footer-top-services a {
    color : var(--darkgray);
}

#Footer .footer-bestseller-legal-texts .card-list {
    margin-top: 3em;
    grid-template-columns : repeat(4, 1fr);
}

#Footer .footer .image-container {
    height          : 60px;
    display         : flex;
    justify-content : center;
    align-items     : center;
    position        : relative;
}

#Footer .footer .image-container svg,
#Footer .footer .image-container img {
    max-height : 100%;
}

#Footer .footer-bestseller-legal-texts .itrk-card-title {
    display         : flex;
    align-items     : center;
    justify-content : center;
    font            : var(--font-xs);
    line-height     : 15px;
    height          : 30px;
    hyphens         : auto;
    overflow-wrap   : break-word;
    word-break      : break-word;
    text-align      : center;
    color           : var(--darkgray);
}

#Footer .footer-bestseller-legal-texts .card-list a {
    display         : flex;
    flex-direction  : column;
    justify-content : center;
    gap             : 2em;
    padding         : 0.75em 0.5em;
}

#Footer .footer-bestseller-legal-texts .image-container {
    flex       : 0 1 37px;
    max-width  : 100px;
    max-height : 32px;
    margin     : 0 auto;
    width      : 100px;
}

#Footer .footer-bestseller-legal-texts .itrk-card-title {
    flex   : 0 1 auto;
    height : auto;
}

#Footer .footer-bestseller-legal-texts #toggle-footer-list {
    margin-top: 1.2rem;
}

#Footer #toggle-footer-list {
    display: none;
}

@media all and (max-width : 1000px) {
    #Footer .footer-bestseller-legal-texts .card-list {
        grid-template-columns: 1fr 1fr 1fr;
    }
    #Footer .footer-bestseller-legal-texts .card-list > :nth-child(n+7) {
        display: none;
    }
    #Footer .footer-bestseller-legal-texts .card-list.show > * {
        display: block!important;
    }
    #Footer #toggle-footer-list {
        display: block;
    }

}

@media all and (max-width : 767px) {
    #Footer .footer-top-services .card-list {
        grid-template-columns: auto auto auto;
        justify-content: center;
        gap: 0.725rem 3rem;
        text-align: left;
    }

    #Footer .footer-bestseller-legal-texts .card-list {
        margin-top: 1em;
    }

    #Footer .footer {
        grid-template-columns : 1fr;
        gap                   : 3em !important;
    }

    #Footer .footer .line {
        border-bottom : 1px dashed var(--itrk-border);
        height        : 1px;
        width         : 100%;
    }

    #Footer .footer-top-services .card-list {
        width : auto;
    }
}

@media all and (max-width : 568px) {
    #Footer .footer-bestseller-legal-texts .card-list {
        grid-template-columns : repeat(2, 1fr);
    }
    #Footer .footer-bestseller-legal-texts .card-list > :nth-child(n+5) {
        display: none;
    }
    #Footer .footer-top-services .card-list {
        grid-template-columns: auto auto;
    }
}


.tools-slide-out-wrap {
    position : relative;
    height   : 220px
}

.tools-slide-out {
    position        : absolute;
    z-index         : 400;
    right           : 0;
    transform       : translateX(calc(100% - 98px));
    transition      : transform 0.4s ease;
    display         : flex;
    justify-content : flex-end;
    align-items     : flex-end;
    margin-left     : 1em;
}

.tools-slide-out.open {
    transform : translateX(0);
}

.tools-slide-out.open:before {
    content                   : '';
    height                    : 25px;
    box-shadow                : 0 3px 6px 0 #00000029;
    position                  : absolute;
    bottom                    : 0;
    right                     : 0;
    width                     : 100%;
    border-bottom-left-radius : var(--itrk-border-radius);
    margin-left               : 1em;
    z-index                   : -1;
}

.tools-slide-out .tools-toggle {
    display                   : flex;
    flex-direction            : column;
    background-color          : var(--primary-color); /* orange */
    color                     : white;
    padding                   : 1.5em 1.625em;
    align-items               : center;
    justify-content           : center;
    text-transform            : uppercase;
    height                    : 220px;
    border                    : none;
}

.tools-slide-out .tools-toggle:before {
    content     : "\f7d9";
    left        : 0;
    font-size   : 33px;
    line-height : 1.2em;
    font-family : var(--itrk-fa-font-family);
    color       : white;
    font-weight : bold;
    display     : inline-block;
}

.tools-slide-out #tool-groups {
    display                : flex;
    flex-wrap              : nowrap;
    box-sizing             : border-box;
    gap                    : 0;
    justify-content        : flex-end;
    border-top-left-radius : var(--itrk-border-radius);
    background-color       : white;
}

.tools-slide-out .tool-group .tool:before {
    content        : "";
    position       : absolute;
    inset          : 0;
    border-radius  : inherit;
    z-index        : 0;
    pointer-events : none;
    opacity        : 0.2;
    transition     : all 0.2s ease-in-out;
}

.tools-slide-out .tool-group:nth-child(1) .tool:before {
    background-color : white;
}

.tools-slide-out .tool-group:nth-child(2) .tool:before {
    background-color : var(--primary-color);
}

.tools-slide-out .tool:hover:before {
    background-color : var(--primary-color) !important;
    opacity          : 0.1;
}

.tools-slide-out .tool-group:nth-child(1) .label {
    border-top-left-radius : var(--itrk-border-radius);
    border-right           : 1px solid var(--itrk-border);
}


.tools-slide-out .tool-group:nth-child(2) .icon-wrapper {
    color : var(--primary-color);
}

.tools-slide-out .tool-group {
    position : relative;
}

.tools-slide-out .label {
    position         : relative;
    z-index          : 2;
    background-color : var(--tertiary-color);
    color            : white;
    font             : var(--font-h4);
    margin           : 0 !important;
    padding          : 0.75em 0;
    text-align       : center;
}

.tools-slide-out .tools {
    position   : relative;
    z-index    : 2;
    display    : inline-flex;
    flex-wrap  : nowrap;
    box-sizing : border-box;
}

.tools-slide-out .tool {
    position : relative;
}

.tools-slide-out .tool-content {
    position        : relative;
    z-index         : 4;
    display         : flex;
    box-sizing      : border-box;
    width           : 240px;
    color           : var(--tertiary-color);
    height          : 220px;
    flex-direction  : column;
    align-items     : center;
    justify-content : center;
    border          : 1px solid var(--itrk-border);
    border-left     : none;
    padding         : 1em 0.75em;
    transition      : all 0.2s ease-in-out;
}

.tools-slide-out .title {
    font          : var(--font-h5);
    text-align    : center;
    color         : var(--darkgray-2);
    margin-bottom : 0.25em;
}


.tools-slide-out .tool-description {
    font       : var(--font-xs);
    text-align : center;
    max-width  : 225px;
}

.tools-slide-out .icon-wrapper {
    height        : 90px;
    display       : flex;
    align-items   : center;
    margin-bottom : 0.5em;
    color         : var(--darkgray);
}

.tools-slide-out .icon {
    max-height : 65px;
    max-width  : 100%;
    transition : all 0.2s ease-in-out;
}

.tools-slide-out .barrierefreiheit .icon {
    width : 54px;
}

.tools-slide-out .website-scanner .icon {
    max-height : 84px;
}

@keyframes tools-pulse {
    0% {
        transform  : scale(1);
        box-shadow : 0 0 0 rgba(255, 102, 0, 0.7);
    }
    50% {
        transform  : scale(1.05);
        box-shadow : 0 0 6px rgba(255, 102, 0, 0.8);
    }
    100% {
        transform  : scale(1);
        box-shadow : 0 0 0 rgba(255, 102, 0, 0.7);
    }
}

@keyframes pulse-swing {
    0% {
        transform : translateX(calc(100% - 98px));;
    }
    50% {
        transform : translateX(50%);
    }
    100% {
        transform : translateX(calc(100% - 98px));;
    }
}

.tools-slide-out.pulse:not(.open) .tools-toggle {
    animation : tools-pulse 1.5s infinite;
    z-index   : 5;
}

.tools-slide-out.slide:not(.open) {
    animation : pulse-swing 2s ease-in-out forwards;
}


.news-more {
    text-align : right;
    margin     : 2.5em 0;
}

.news-topics {
    display         : flex;
    flex-wrap       : wrap;
    justify-content : center;
    column-gap      : 2em;
    row-gap         : 0.5em;
    margin-bottom   : 2.5em;
    text-align      : center;
}

.news-topics a {
    font           : var(--font-small);
    text-transform : uppercase;
    color          : var(--lightgray-4);
}

.news-item > *:first-child {
    margin-top : 0 !important;
}

.news-item > *:last-child {
    margin-bottom : 0 !important;
}

.news-infos {
    color     : var(--lightgray-4);
    font-size : 12px;
}

.news-infos > span {
    display     : flex;
    gap         : 15px;
    white-space : nowrap;
}

.news-infos i {
    font-size    : 20px;
    margin-right : 5px;
}

#Article #article {
    margin-bottom : 3rem;
}

#Article .news-header {
    min-height    : 194px;
    padding       : 1.875rem 0px;
    border-top    : 1px solid #d0d0d0;
    border-bottom : 1px solid #d0d0d0;
    word-wrap     : break-word;
    overflow-wrap : break-word;
    word-break    : break-word;
    hyphens       : auto;
    margin-top    : 30px;
}

#Article .news-header .meta {
    display : flex;
    color   : var(--lightgray-4);
}

#Article .news-header .meta .date-time {
    margin-right : 23px;
    font-size    : 13px;
    white-space  : nowrap;
}

#Content header {
    margin-bottom : 40px;
}

#Content #Article > header:first-child {
    margin-bottom : 2.5em !important;
}

#Article itrk-tooltip .itrk-tooltip {
    min-width : auto;
}

#Article #copy-news-link itrk-tooltip .itrk-tooltip {
    min-width : 90px;
}

#Article .news-header .header-top {
    display         : flex;
    flex            : 1;
    flex-direction  : row;
    gap             : 15px;
    justify-content : space-between;
}

#Article .news-header .news-item-topic {
    display        : block;
    color          : var(--primary-color);
    text-transform : uppercase;
    font           : var(--font-xs);
    margin-bottom  : 0.25em;
}

#Article .news-header .header-bottom {
    display         : flex;
    justify-content : space-between;
    align-items     : center;
    column-gap      : 30px;
    margin-top      : 1em;
    row-gap         : 2em;
}

#Article .news-header .header-bottom > div {
    flex       : 0 1 auto;
    column-gap : 20px;
}

#Article .news-header .header-bottom .meta {
    flex : 0 0 auto;
}

#Article .news-header .header-bottom .persons {
    display   : flex;
    flex-wrap : wrap;
    row-gap   : 1em;
}

#Article .news-header .header-bottom .persons a {
    display : block;
}

#Article .news-header h1 {
    text-transform : initial !important;
    margin-bottom  : 0px !important;
}

#Article .news-header .meta,
#Article .author .author-name {
    font-size   : 13px;
    font-weight : 400;
    line-height : 1;
}

#Article .news-header .author .author-name {
    font-size      : 13px;
    font-weight    : 400;
    line-height    : 1;
    vertical-align : middle;
    align-items    : center;
}

#Article .news-header .meta {
    justify-content : space-between;
    width           : 300px;
}

#Article .news-header .meta .date-time,
#Article .news-header .meta .news-infos > span > span {
    margin-right : 0;
}

#Article .news-header .meta .date-time:last-of-type,
#Article .news-header .meta .news-infos > span > span:last-of-type {
    margin-bottom : 0;
}

#Article .news-header .meta .meta-dates {
    text-align     : right;
    display        : flex;
    flex-direction : column;
    gap            : 10px;
}

#Article .news-header .meta .news-infos {
    align-items : flex-start;
}


#Article .author {
    display     : flex;
    align-items : center;
    gap         : 0.5em;
}

#Article .author .author-image {
    height          : 35px;
    width           : 35px;
    background-size : cover;
    border-radius   : 50%;
    border          : 1px solid #ececec;
}

#Article .news-header .news-thumbnail img {
    max-height : 225px;
    max-width  : 300px;
}

#Article .news-details {
    display : flex;
    gap     : 35px;
}

#Article .news-details i {
    font-size : 20px;
    color     : var(--darkgray);
}

#Article .news-details > div {
    font-size : 20px;
}

#Article .news-comments h2 {
    margin-top : 0;
}

#Article .news-comments .news-comments-list {
    margin-top : 20px;
}

#Article .news-comments .news-comments-list .news-comment {
    display               : grid;
    grid-template-columns : 50px 1fr;
    padding               : 10px 0;
}

#Content .toc > h2,
#Article .toc > h2 {
    font-size     : 19px;
    margin-top    : 0 !important;
    margin-bottom : 1em !important;
}

#Content .toc > h2:after,
#Article .toc > h2:after {
    content : none;
    display : none;
}

.news-fb-text {
    margin: 3em 0!important;
    display: flex;
    align-items: center;
    gap: 1em;
    font: var(--font-small);
}

.news-fb-text i {
    font-size: 30px;
    color: var(--blue-color);
}

.news-comment-img {
    border-radius    : 50%;
    width            : 33px;
    height           : 33px;
    line-height      : 33px;
    text-align       : center;
    text-indent      : 2px;
    border           : 1px solid var(--itrk-border);
    /* font-family: "Bitter", Arial, verdana, sans-serif; */
    font-weight      : bold;
    font-size        : 18px;
    background-color : #f7f7f7;
}

#Article .news-comments .news-comments-list .news-comment .news-meta {
    min-height  : 35px;
    display     : flex;
    align-items : center;
}

#Article .news-comments .news-comments-list .news-comment .news-meta .news-date-time {
    font  : normal normal normal 12px/22px Fira Sans;
    color : var(--tertiary-color)
}

#Article .news-comments .news-comments-list .news-comment .news-body {
    position    : relative;
    transition  : max-height 0.25s ease-in;
    max-height  : unset;
    overflow    : hidden;
    white-space : pre-wrap;
}

#Article .news-comments .news-comments-list .news-comment .news-title {
    font-weight   : 500 !important;
    margin-bottom : 3px;
}

#Article .news-comments .news-comments-list .news-comment .news-body.read-more:after {
    position   : absolute;
    top        : 0;
    left       : 0;
    right      : 0;
    bottom     : 0;
    background : linear-gradient(transparent 40px, white);
    content    : "";
    width      : 100%;
}

#Article .news-comments .news-comments-list .news-comment .news-body.read-more {
    max-height : 70px;
    transition : max-height 0.5s ease-in;
    cursor     : pointer;
}

#Article .news-comments .news-comments-list .news-comment .news-body.read-more.open:after {
    background : transparent;
}

#Article .news-comments .news-comments-list .news-comment .news-body.open {
    max-height : 3000px;
}

#Article .news-comments .news-comments-list .news-comment .news-read-more {
    margin-top  : 0;
    position    : relative;
    display     : inline-block;
    font-weight : bold;
    cursor      : pointer;
}

#Article .news-comments .news-comments-list .news-comment .news-read-more:after {
    position           : absolute;
    line-height        : inherit;
    top                : -1px;
    right              : -21px;
    font-family        : "Font Awesome 6 Free";
    font-weight        : 900;
    content            : "\f078";
    transform          : scaleY(1);
    -webkit-transition : 0.4s ease-in-out;
    -moz-transition    : 0.4s ease-in-out;
    -o-transition      : 0.4s ease-in-out;
    transition         : 0.4s ease-in-out;
}

#Article .news-comments .news-comments-list .news-comment .news-body.open ~ .news-read-more:after {
    transform : scaleY(-1);
    top       : -2px;
}

#Article
.news-comments
.news-comments-list
.news-comment
.news-meta
.news-author {
    margin-right   : 15px;
    text-transform : uppercase;
    font-weight    : 500;
}

#Article .author {
    display     : flex;
    align-items : center;
    gap         : 0.5em;
}

@media all and (max-width : 767px) {
    #Article #article {
        margin-bottom : 2rem;
    }

    #Article .news-header {
        margin      : 0 0 2rem 0 !important;
        min-height  : 0;
    }

    #Article .news-header h1:after {
        margin-bottom : 30px !important;
    }

    #Article .news-header .news-thumbnail {
        max-width : 30%;
        flex      : 1 0 130px;
    }

    #Article .news-header .news-thumbnail img {
        max-width : 100%;
    }

    #Article .news-comments {
        margin-bottom : 60px;
        margin-top    : 60px;
    }

    #Article .news-header .header-content {
        margin        : 0 -20px -20px -20px;
        padding       : 20px;
        background    : var(--lightgray-1);
        border-top    : 1px solid var(--lightgray-2);
        border-bottom : 1px solid var(--lightgray-2);
    }

    #Article .news-header .header-bottom {
        flex-wrap : wrap;
    }

    #Article .news-header .header-bottom > div,
    #Article .news-header .header-bottom .meta {
        flex : 1 1 auto;
    }

    #Article .news-header .header-bottom .persons {
        justify-content : space-between;
    }
}

#copy-news-link {
    position : relative;
}

#copy-news-link.copied::after {
    position      : absolute;
    content       : 'Link kopiert!';
    bottom        : -40px;
    left          : 50%;
    border-radius : 7px;
    background    : var(--tertiary-color);
    color         : white;
    padding       : 5px 10px;
    width         : 80px;
}

@media all and (max-width : 550px) {
    #Article .header-bottom .meta {
        width      : 100%;
        display    : flex;
        flex-wrap  : wrap;
        row-gap    : 1em;
        column-gap : 0.5em;
    }

    #Article .news-header .meta .meta-dates,
    #Article .header-bottom .meta .news-info {
        flex : 1 1 auto;
    }

    #Article .header-bottom .meta .news-infos {
        width : auto;
    }

    .news-list.news-list-4col .news-item .news-image {
        height : auto !important;
    }

    .news-fb-text {
        gap: 0.5em;
    }

    .news-fb-text i {
        font-size: 1.5em;
    }
}

.news-with-sidebar {
    display               : grid;
    grid-template-columns : 2fr 1fr;
    gap                   : 2.5em 1.25em;
    border-bottom         : 1px solid var(--lightgray-border);
    padding               : 2.5em 0;
    margin                : 2.5em 0;
}

.news-with-sidebar .sidebar {
    border-left  : dashed 1px var(--itrk-border);
    padding-left : 1.25em;
    height       : 100%;
}

.news-with-sidebar .SideBarItem.BannerItem {
    margin-bottom : 0 !important;
    height        : 100%;
}

@media all and (max-width : 1000px) {
    .news-with-sidebar {
        grid-template-columns : 1fr;
    }

    .news-with-sidebar:not(.first-row) {
        margin-bottom : 0em !important;
    }

    .news-with-sidebar .sidebar {
        padding-top  : 2em !important;
        padding-left : 0;
        border-left  : none;
        border-top   : 1px solid var(--lightgray-border);
    }
}

.topic-read-more {
    display         : flex;
    gap             : 0.6em;
    justify-content : flex-end;
    align-items     : start;
    margin-top      : 2em;
}

.topic-read-more i {
    line-height : 1.6em;
}


.banner-newsletter {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}
.banner-newsletter .banner-newsletter-form {
    flex: 0 1 750px;
}

.banner-newsletter .banner-newsletter-image {
    width: 25%;
    max-width: 190px;
    max-width: min(25%, 190px);
}

.banner-newsletter .mandatory.hp {
    position: absolute;
    display: none;
}

.banner-newsletter a {
    text-decoration: underline;
}

.banner-newsletter .small-subtitle {
    color: var(--darkgray);
    font: var(--font-xs);
    margin-top: 1rem;
}

@media screen and (max-width : 568px) {
    .banner-newsletter {
        flex-direction: column;
        gap: 2.75em;
    }
    .banner-newsletter .banner-newsletter-image {
        width: 190px;
        max-width: 190px;
    }
    .banner-newsletter .banner-newsletter-form {
        flex: 1 1 auto;
    }
}


.banner-easyscan {
    display: flex;
    gap: 2em;
    position: relative;
    overflow: hidden;
    padding: 1em;
    padding-left: 11.5em;
    border-radius: var(--itrk-border-radius);
    border: 1px solid var(--itrk-border);
}

.banner-easyscan .icon-header {
    position: absolute;
    top: -1.5em;
    left: 2.5em;
}

.banner-easyscan .header {
    font: var(--font-h4);
}

.banner-easyscan .sub-title {
    font: var(--font-small);
}

.banner-easyscan .form-wrap {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
}

.banner-easyscan .text-end {
    display: flex;
    align-items: center;
    gap: 1em;
}

.banner-easyscan .easyscan-search {
    width: 100%;
}

@media all and (max-width: 1000px) {
    .banner-easyscan {
        padding-left: 8em;
    }
    .banner-easyscan .icon-header {
        left: 1em;
    }
}


@media all and (max-width: 767px) {
    .banner-easyscan {
        padding: 1em;
        flex-wrap: wrap;
        gap: 1em;
    }
    .banner-easyscan .icon-header {
        display: none;
    }
    .banner-easyscan .text-header {
        width: 100%;
    }
}



.read-also {
    /* kein Abstand nach unten, damit scrollen funktioniert */
    margin: 3em 0 0;
    container-type: inline-size;
}

.read-also > span {
    font: var(--font-h5);
    font-weight: 500;
    margin-bottom: 6px;
    display: block;
    color: var(--darkgray);
    text-transform: uppercase;
}

.read-also .read-also-content {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px 0;
    border-top: 1px solid var(--itrk-border);
    border-bottom: 1px solid var(--itrk-border);
}
.read-also .read-also-content > i {
    font-size: 50px;
    color: var(--lightgray-4);
}

@media all and (max-width : 767px) {
    .read-also .read-also-content {
        align-items: start;
    }
}

.read-also .news-title {
    font-size: 16px;
    margin-bottom: 5px!important;
}

.read-also img {
    width: 57px;
}

.read-also p a, .read-also p {
    color: var(--darkgray-2);
    font-size: 14px!important;
    margin-bottom: 0!important;
}

.read-also p a {
    text-decoration: underline;
}


.news-infos span {
    line-height : 1;
    font-size   : 13px;
}

.news-infos .newsReadingTime, .news-infos .newsCommentsCount {
    display         : flex;
    justify-content : center;
}

.news-infos i {
    font-size    : 14px;
    margin-right : 5px;
}

.news-item {
    color : var(--tertiary-color);
}

.news-item .news-image img {
    border-radius : var(--itrk-border-radius);
}

.news-item .news-item-header {
    margin-bottom : 10px;
    margin-top    : 0 !important;
    word-wrap     : break-word;
    overflow-wrap : break-word;
    word-break    : break-word;
    hyphens       : auto;
    line-height   : 1.3em !important;
}

.news-item .news-item-header a {
    font  : var(--font-h4);
    color : var(--darkgray-2);
}

.news-item .news-item-topic {
    line-height : 1.4em;
    display     : flex;
    flex-wrap   : wrap;
    gap         : 3px;
}

.news-item.itrk-exclusive .news-item-topic:before {
    content             : "";
    display             : block;
    height              : 18px;
    width               : 78px;
    margin              : 1px 5px 0 0;
    background-image    : url(/gfx/News/ITRKExklusiv.svg);
    background-size     : contain;
    background-repeat   : no-repeat;
    background-position : center;
    flex-shrink         : 0;
}

.news-item .news-item-topic a {
    line-height    : inherit;
    font-size      : 12px;
    color          : var(--primary-color);
    text-transform : uppercase;
}

.news-item .news-body {
    font       : var(--font-normal);
    text-align : left !important;
    margin     : 0 0 20px !important;
}

/**
 * News Liste
 */
.news-list {
    width : 100%;
}

/**
 * Layout Default News Liste
 */
.news-list .news-item {
    box-sizing            : border-box;
    display               : grid;
    grid-template-columns : 270px auto;
    column-gap            : 40px;
    padding               : 2em 0;
}

.news-list div:first-of-type {
    padding-top : 0;
}

.news-list .news-item:last-of-type {
    border-bottom  : none;
    padding-bottom : 0;
}

.news-list .news-item .news-image {
    height        : 202px;
    position      : relative;
    border-radius : var(--itrk-border-radius);
}

.news-list .news-item .news-image img {
    position   : absolute;
    top        : 0;
    left       : 0;
    width      : 100%;
    height     : 100%;
    object-fit : cover;
}

/**
 * Layout Default News Liste
 */
.news-list.news-list-default .news-item {
    border-bottom : 1px solid var(--lightgray-border);
    padding       : 2.5em 0;
}

.news-list.news-list-default .news-item:first-of-type {
    padding-top : 0;
}

.news-list.news-list-default .news-item:last-of-type {
    border-bottom  : none;
    padding-bottom : 0;
}


/**
 * Layout 2 Spalten
 */
/*.news-list.news-list-2col {*/
/*    display               : grid;*/
/*    grid-template-columns : 1fr 1fr;*/
/*    gap                   : 20px;*/
/*}*/

/*.news-list.news-list-2col .news-item .news-image {*/
/*    box-sizing     : border-box;*/
/*    padding-bottom : 75%;*/
/*    width          : 100%;*/
/*    position       : relative;*/
/*    border-radius  : var(--itrk-border-radius);*/
/*}*/

/*.news-list.news-list-2col .news-item img {*/
/*    position   : absolute;*/
/*    top        : 0;*/
/*    left       : 0;*/
/*    width      : 100%;*/
/*    height     : 100%;*/
/*    object-fit : cover;*/
/*}*/

/*.news-list.news-list-2col .news-item {*/
/*    box-sizing    : border-box;*/
/*    display       : grid;*/
/*    grid-template : auto 1fr auto / 200px auto;*/
/*    gap           : 15px;*/
/*    border-radius : var(--itrk-border-radius);*/
/*    border        : 1px solid var(--lightgray-border);*/
/*    padding       : 20px;*/
/*}*/

/*.news-list.news-list-2col .news-item-header:after {*/
/*    content       : "" !important;*/
/*    clear         : both;*/
/*    display       : block;*/
/*    width         : 100px;*/
/*    margin-top    : 15px;*/
/*    border-bottom : 4px solid var(--primary-color);*/
/*}*/

/*.news-list.news-list-2col .news-item p, .news-list.news-list-2col .news-infos, .news-list-2col .news-item-header {*/
/*    margin-bottom : 0px !important;*/
/*}*/

/*.news-list.news-list-2col .news-item p, .news-list.news-list-2col .news-infos {*/
/*    grid-column : span 2;*/
/*}*/

/**
 * Layout 4 Spalten
 */
.news-list.news-list-4col {
    display               : grid;
    grid-template-columns : repeat(4, 1fr);
    gap                   : 20px;
}

.news-list.news-list-4col .news-item {
    display        : flex;
    flex-direction : column;
    padding        : 0;
}

.news-list.news-list-4col .news-content {
    display        : flex;
    flex-direction : column;
    flex           : 1;
}

.news-list.news-list-4col .news-item-header {
    margin-bottom : 0.625em !important;
    font-size     : 1em !important;
}

.news-list.news-list-4col .news-item-header a {
    font-size : 1rem;
}

.news-list.news-list-4col .news-infos {
    margin-top : auto;
}

.news-list.news-list-4col .news-image {
    position      : relative;
    width         : 100%;
    height        : auto;
    aspect-ratio  : 4 / 3;
    overflow      : hidden;
    margin-bottom : 1em;
    border-radius : var(--itrk-border-radius);
}

/**
 * Top News
 */
.top-news {
    padding : 0px;
}

.top-news .news-item {
    display               : grid;
    grid-template-columns : 400px auto;
    gap                   : 1.875em;
}

.top-news .news-item .news-image {
    background-size     : cover;
    background-position : center;
    height              : 0;
    padding-top         : 75%;
    grid-column         : 1;
    display             : block;
    border-radius       : var(--itrk-border-radius);
}

.top-news .news-item .news-content {
    display         : flex;
    box-sizing      : border-box;
    flex-direction  : column;
    justify-content : center;
    grid-column     : 2;
}

.top-news .news-item p {
    color : var(--tertiary-color);
}

.top-news .news-item .news-header {
    margin-top : 0 !important;
    font       : var(--font-h3) !important;
}

/**
 * Top News in Liste
 */
.top-news.news-list-topnews {
    border-bottom  : solid 1px var(--lightgray-border);
    padding-bottom : 2.5em;
    margin-bottom  : 2.5em;
}

.top-news.news-list-topnews .news-item {
    grid-template-columns : 1fr 1fr;
}

#Content .top-news .news-item h1 {
    font-size      : 25px !important;
    line-height    : 32px !important;
    text-transform : none !important;
    word-wrap      : break-word;
    overflow-wrap  : break-word;
    word-break     : break-word;
    hyphens        : auto;
    
}

#Content .top-news .news-item h1:after {
    margin-bottom : 1em !important;
}

.news-list-header-only {
    box-sizing : border-box;
    margin     : 3em 0;
}

.news-list-header-only .news-item {
    display : block;
    margin  : 0;
    padding : 0;
}

.news-list-header-only h2 {
    font           : var(--font-h3) !important;
    line-height    : 1em !important;
    text-transform : none !important;
    font-weight    : 400 !important;
}

.news-list-header-only .news-list {
    display               : grid;
    grid-template-columns : repeat(3, 1fr);
    gap                   : 1.25em;
}

.news-list-header-only .news-item-header a {
    font        : var(--font-small) !important;
    color       : var(--darkgray);
    font-weight : 500 !important;
    display     : block;
}

@media all and (max-width : 767px) {
    .top-news .news-item,
    .news-list.news-list-default .news-item,
    .top-news.news-list-topnews .news-item,
    .news-list.news-list-4col .news-item {
        display               : grid;
        grid-template-columns : 200px auto;
        column-gap            : 1.25em;
    }
    
    .news-list.news-list-4col .news-item {
        padding-bottom : 2.5em;
    }
    
    .news-list.news-list-4col .news-item:last-of-type {
        padding-bottom : 0;
    }
    
    .news-list.news-list-4col .news-infos {
        margin-top : 0;
    }
    
    .news-list.news-list-4col .news-item .news-image {
        height        : 150px;
        margin-bottom : 0;
    }
    
    .news-list.news-list-default .news-item .news-image {
        height : 150px;
    }
    
    .news-list.news-list-4col {
        display : block;
    }
    
    .news-list-header-only .news-list {
        grid-template-columns : 1fr 1fr;
    }
}

@media all and (max-width : 568px) {
    .top-news .news-item,
    .news-list.news-list-default .news-item,
    .top-news.news-list-topnews .news-item {
        display : block;
    }
    
    .news-list.news-list-4col {
        display               : grid;
        grid-template-columns : 1fr;
        gap                   : 2.5em;
    }
    
    .news-list.news-list-4col .news-item {
        padding-bottom : 0;
    }
    
    .news-list.news-list-4col .news-item {
        display               : grid;
        grid-template-columns : 4fr 5fr;
        gap                   : 1.25em;
    }
    
    .news-list.news-list-4col .news-item .news-image {
        margin-bottom : 0;
    }
    
    .news-list.news-list-default .news-item .news-image {
        height        : auto;
        position      : relative;
        width         : 100%;
        aspect-ratio  : 4 / 3;
        margin-bottom : 0.8em;
    }
    
    .top-news .news-item .news-image {
        margin-bottom : 1.875em;
    }
    
    .news-list-header-only .news-list {
        grid-template-columns : 1fr;
    }
}

.news-archiv .newsitem {
    display       : flex;
    gap           : 1.25em;
    margin-bottom : 1.25em;
}

.news-archiv .newsitem:last-of-type {
    margin-bottom : 0;
}

.news-archiv .newsitem .news-thumbnail {
    flex-shrink : 0;
    width       : 4em;
    height      : 2.625em;
    text-align  : center;
}

.news-archiv .newsitem .date {
    color : var(--lightgray-4);
    font  : var(--font-xs);
}

.news-archiv .newsitem a {
    margin-top    : -0.5em;
    display       : block;
    color         : var(--darkgray);
    overflow-wrap : break-word;
    word-break    : break-word;
    hyphens       : auto;
}



#Article .news-search-bar {
    padding-top : 20px;
    border-top  : 1px solid var(--lightgray-border);
}

.NewsList .Element {
    margin-bottom : 3px;
}

.NewsElement div.content {
    display : block;
    float   : right;
    width   : 615px;
}

.NewsElement div.content > div:first-child {
    min-height : 180px;
}

.NewsElement.small div.content {
    width : 65%;
}

.NewsList .news-archiv {
    margin-top    : 3em;
    margin-bottom : 3em;
}

/* @media screen and (max-width:767px) {
	.NewsList .news-archiv {
		border-bottom: 1px solid var(--lightgray-border);
	}
} */

/* .NewsElement old */
.NewsElement {
    padding    : 0 0 25px 0;
    margin-bottom: 25px;
    border-bottom : 1px solid var(--lightgray-border);
}

.NewsElement .thumb {
    position   : relative;
    text-align : center;
    float      : left;
    max-height : 400px;
    overflow   : hidden;

    background: var(--lightgray);
    border-radius: var(--itrk-border-radius);
}

.NewsElement .thumb img {
    max-width : 100%;
    border-radius: var(--itrk-border-radius);
}

.NewsElement .content h2 {
    margin         : 0.7em 0 !important;
    font-size      : 19px !important;
    line-height    : 24px !important;
    text-transform : none !important;
}

.NewsElement .content h2::after {
    display : none !important;
}

.NewsElement .content h2 a {
    color : #333333;
}

.NewsElement .content .date {
    font-size     : 85%;
    margin-bottom : 1em;
}

@media screen and (max-width : 767px) {
    .NewsElement.small div.content,
    .NewsElement div.content {
        display : block;
        width   : 100%;
        float   : none;
    }

    .NewsElement div.content > div:first-child {
        min-height : 0;
    }

    .NewsList .Element:first-child .NewsElement {
        border-top : 0;
    }

    .NewsElement .thumb {
        float : right;
        width : 200px !important;
        top   : 30px;
    }

    .NewsElement .thumb img {
        width : 100px;
    }
}

/** refactored **/
.news-elements {
    padding    : 0 0 25px 0px;
    margin-bottom: 25px !important;
    display    : flex;
    gap        : 20px;
    border-bottom : 1px solid var(--lightgray-border);
    margin: 0px;
}

.news-elements > .news-thumb {
    width : 200px;
    text-align: center;
    border-radius: var(--itrk-border-radius);
    overflow: hidden;
}
.news-elements .news-thumb img {
    max-width : 200px;
    border-radius: var(--itrk-border-radius);
    overflow: hidden;
}

.news-elements .news-content {
    flex : 1;
}
.news-elements .news-content .news-meta {
    font : var(--font-small);
}

.news-elements .news-content h2 {
    text-transform : initial !important;
    margin         : 0.7em 0 !important;
    font-size      : 19px !important;
    line-height    : 1.4em !important;
    font-weight    : 500 !important;
}

.news-elements .news-content .news-thumb img {
    max-width   : 80px;
    max-height  : 80px;
    padding-top : 3px;
}

@media screen and (max-width : 767px) {
    .news-elements:first-child {
        padding-top : 0;
        border-top  : none;
    }

    .news-elements .news-content h2 {
        font-size      : 19px;
        line-height    : 25px;
        letter-spacing : -0.19px;
        display        : flex;
        gap            : 15px;

    }

    .news-elements .news-content h2 a {
        flex : 1;
    }

    .news-elements .news-content .news-body {
        padding-top : 10px;
        hyphens     : auto;
        font-size   : 21px !important;
        line-height : 28px !important;
        font-weight : 300;
    }
}


.itrk-tooltip {
    position : relative;
}

/** itrk-ui.css **/
itrk-input-content itrk-input-wrapper.info .itrk-tooltip,
itrk-checkbox-content itrk-checkbox-wrapper.info .itrk-tooltip {
    position     : absolute;
    /* height: 100%; */
    width        : 15px;
    margin-right : 10px;
    top          : 0;
    right        : -3px;
}

itrk-checkbox-content itrk-checkbox-wrapper.info .itrk-tooltip {
    top   : 1px;
    right : -35px;
}

itrk-input-content itrk-input-wrapper.action .itrk-tooltip,
itrk-input-content itrk-input-wrapper.action.regex .itrk-tooltip {
    right : 36px;
}

itrk-input-content .itrk-tooltip i.fa-info-circle {
    margin-top : 10px;
}

.inline.itrk-tooltip, span.itrk-tooltip {
    display : inline-block;
}

.itrk-tooltip-text {
    min-width        : 100%;
    max-width        : 100%;
    width            : 100%;
    padding          : 10px 20px;
    color            : var(--darkgray);
    background-color : white;
    font-weight      : normal;
    font-size        : 13px;
    border-radius    : 8px;
    position         : absolute;
    z-index          : 100;
    box-sizing       : border-box;
    display          : none;
    margin-top       : 25px;
    left             : 50%;
    transform        : translate(-50%, 0);
    filter           : drop-shadow(3px 3px 10px #00000029);
    -webkit-filter   : drop-shadow(3px 3px 10px #00000029);
}

.itrk-tooltip .itrk-tooltip-text.tooltip-top {
    margin-top : 0;
    top        : 0;
    left       : 0;
    transform  : translateX(0) translateY(-100%) translateY(-25px);
}

@media all and (min-width : 768px) {
    .itrk-tooltip-text {
        min-width : 260px;
        max-width : 360px;
    }
    
    .itrk-tooltip:hover .itrk-tooltip-text {
        display : block;
    }
    
    .itrk-tooltip .itrk-tooltip-text.tooltip-top {
        left      : 50%;
        transform : translateX(-50%) translateY(-100%) translateY(-25px);
    }
}

.itrk-tooltip-text > .tooltip-text-inner {
    overflow       : hidden;
    text-overflow  : ellipsis;
    text-transform : none;
}

.itrk-tooltip .itrk-tooltip-text::before {
	font-family : 'Font Awesome 6 Free';
    font-weight : 900;
    content     : "\f0d8";
    position    : absolute;
    font-size   : 50px;
    line-height : 30px;
    left        : 50%;
    top         : 0;
    margin-top  : -23px;
    margin-left : -15px;
    color       : white;
    background  : none;
}

.itrk-tooltip .itrk-tooltip-text.tooltip-top::before {
    content       : "\f0d7";
    top           : initial;
    margin-top    : initial;
    bottom        : 0;
    margin-bottom : -19px;
}

.itrk-tooltip .itrk-tooltip-text.itrk-tooltip-fulltext {
    white-space : normal;
}

/** new .itrk-tooltip.tooltip-small **/
.itrk-tooltip.tooltip-small:before {
    content       : attr(data-text);
    position      : absolute;
    font-size     : 15px;
    font-weight   : 300;
    left          : 100%;
    min-width     : 200px;
    width         : 100%;
    padding       : 6px 15px;
    border-radius : var(--itrk-border-radius);
    background    : var(--darkgray);
    color         : white;
    display       : none;
}

.itrk-tooltip.tooltip-small:after {
    content      : "";
    position     : absolute;
    left         : 100%;
    margin-left  : -2px;
    top          : 50%;
    transform    : translateY(-50%);
    border       : 6px solid var(--darkgray);
    border-color : transparent var(--darkgray) transparent transparent;
    display      : none;
}

.itrk-tooltip.tooltip-small:hover:before,
.itrk-tooltip.tooltip-small:hover:after {
    display : block;
}

/** Tooltip Bottom **/
.itrk-tooltip.tooltip-small.tooltip-bottom:before {
    top         : -50%;
    left        : 50%;
    transform   : translateX(-50%) translateY(50%) !important;
    margin-left : 0;
    margin-top  : 11px;
}

.itrk-tooltip.tooltip-small.tooltip-bottom:after {
    top          : 50%;
    left         : 50%;
    transform    : translateX(-50%) translateY(50%) !important;
    margin-left  : 0;
    margin-top   : -1px;
    border-color : transparent transparent var(--darkgray) transparent;
}

/** Tooltip Top **/
.itrk-tooltip.tooltip-small.tooltip-top:before {
    top         : -50%;
    left        : 50%;
    transform   : translateX(-50%) translateY(-100%) !important;
    margin-left : 0;
    margin-top  : 5px;
}

.itrk-tooltip.tooltip-small.tooltip-top:after {
    top          : 0;
    left         : 50%;
    transform    : translateX(-50%) translateY(-50%) !important;
    margin-left  : 0;
    margin-top   : -1px;
    border-color : var(--darkgray) transparent transparent transparent;
}

/** Tooltip Right **/
.itrk-tooltip.tooltip-small.tooltip-right:before {
    top         : 50%;
    transform   : translateY(-50%);
    margin-left : 10px;
}

.itrk-tooltip.tooltip-small.tooltip-right:after {
    top         : 50%;
    transform   : translateY(-50%);
    left        : 100%;
    margin-left : -2px;
}

/** Tooltip Left **/
.itrk-tooltip.tooltip-small.tooltip-left:before {
    top         : 50%;
    transform   : translateX(-100%) translateY(-50%) !important;
    margin-left : 1px;
    left        : -100%;
}

.itrk-tooltip.tooltip-small.tooltip-left:after {
    top          : 50%;
    transform    : translateX(-100%) translateY(-50%) !important;
    border-color : transparent transparent transparent var(--darkgray);
    margin-left  : 0;
    left         : 0;
}


html, body {
    font-size   : 16px;
    font-family : 'Fira Sans', Arial, verdana, sans-serif;
    font-weight : normal;
    line-height : 1.6em;
}

hr {
    display       : block;
    clear         : both;
    height        : 1px;
    border        : 0;
    margin        : 1.5em 0;
    border-bottom : 1px solid var(--lightgray-border);
}

hr.thick {
    border-bottom : 7px solid var(--lightgray);
}

th.center,
td.center,
div.center,
p.center {
    text-align : center !important;
}


div.section {
    display : inline-block;
    clear   : both;
}

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


hr.blue {
    border-bottom : 2px solid #0c6ec6;
}

.p-0 {
    padding : 0 !important;
}

/* Text transformations */

.uppercase {
    text-transform : uppercase !important;
}

.uppercase.bold {
    font-weight : 500 !important;
}

.capitalize {
    text-transform : capitalize !important;
}

.lowercase {
    text-transform : lowercase !important;
}

.italic {
    font-style : italic !important;
}

.no-decoration {
    text-decoration : none !important;
}

i.fa {
    line-height : inherit;
}

a {
    text-decoration : none;
    color           : var(--secondary-color);
}

a.external::after {
    font-family : "Font Awesome 6 Free";
    font-weight : 900;
    content     : "\f35d";
    font-size   : 80%;
    margin      : 0 3px;
}

a.external-before::before {
    font-family     : "Font Awesome 6 Free";
    font-weight     : 900;
    content         : "\f360";
    font-size       : 95%;
    margin          : 0px 10px 0 0;
    text-decoration : none;
    display         : inline-block;
    color           : var(--darkgray);
}

a.nohover:hover {
    text-decoration : underline;
}

#Content {
    color : var(--tertiary-color);
}

#Content::after {
    display : block;
    content : "";
    clear   : both;
}

#Content sup {
    font-size   : 100%;
    font-weight : 300;
    color       : var(--tertiary-color);
}

#Content p b {
    font-weight : 500;
}

h1, h2, h3, h4, h5 {
    line-height : 130%;
    font-family : 'Bitter', Arial, verdana, sans-serif;
    font-weight : 400;
}

h1 *, h2 *, h3 *, h4 *, h5 * {
    font-family   : 'Bitter', Arial, verdana, sans-serif;
    font-weight   : 400;
}

#Article a {
    word-wrap : break-word;
}


ol.alpha2 {
    margin-left   : 2.3em !important;
    counter-reset : list;
}

ol.alpha2 > li {
    list-style : none;
}

ol.alpha2 > li:before {
    text-align        : right;
    font-weight       : bold;
    display           : inline-block;
    width             : 2em;
    margin-left       : -2.6em;
    margin-right      : 0.5em;
    content           : counter(list, lower-alpha) ") ";
    counter-increment : list;
}


#Content *.black,
*.black {
    color : var(--tertiary-color);
}


#Content header {
    padding : 0;
    margin  : 0 0 1.5em;
}

#Content header h1 {
    margin-bottom : 0;
}

body.plain header.News {
    padding : 0 !important;
}

body.plain header.News address {
    position : relative;
}

p.blue,
span.blue {
    color : #0c6ec6;
}

.orange {
    color : var(--primary-color);
}

.orangeBackground {
    background-color : var(--primary-color);
}

a.ref_images {
    float         : left;
    margin-right  : 15px;
    margin-bottom : 10px;
    border        : 1px solid #bdcbe0;
    background    : white;
    padding       : 4px 4px 0;
}


article ul.brui-ulist,
#Article ul.brui-ulist {
    margin-left : 0;
}

#Content table th h2 {
    margin : 0.5em;
}


#Article > h2:first-child {
    margin-top : 0;
}

#Content div.cms-block,
#Content p.quote,
#Content blockquote {
    margin-top    : 2em;
    margin-bottom : 1em;
    margin-left   : 0;
    margin-right  : 0;
    padding       : 40px;
    background    : var(--background-blue);
    border-radius : var(--itrk-border-radius);
    position      : relative;
}

#Content .cms-block p.quote,
#Content .cms-block .cms-block {
    margin  : 2.5em;
    padding : 0 1.875em;
}

#Content .cms-block p.quote:after,
#Content .cms-block .cms-block:after {
    top   : -3px;
    left  : -10px;
    width : 30px;
}

#Content div.cms-block.info {
    margin : 0.5em 0 1em;
}

#Content p.quote,
#Content blockquote {
    font-style : normal;
}

#Content div.cms-block > *:first-child {
    margin-top : 0 !important;
}

#Content div.cms-block > *:last-child {
    margin-bottom : 0 !important;
}

#Content div.cms-block > *:last-child > *:last-child {
    margin-bottom : 0 !important;
}

#Content div.cms-block div.cms-block {
    padding    : 1em;
    background : white;
}

#Content div.cms-block.achtung::after,
#Content div.cms-block.hinweis::after,
#Content div.cms-block.hinweise::after,
#Content div.cms-block.beispiel::after,
#Content div.cms-block.beispiele::after,
#Content div.cms-block.tipp::after,
#Content div.cms-block.tipps::after,
#Content div.cms-block.definition::after,
#Content div.cms-block.muster::after,
#Content p.quote::after,
#Content blockquote::after {
    content           : '';
    position          : absolute;
    left              : -15px;
    top               : -15px;
    width             : 50px;
    height            : 50px;
    background-size   : contain;
    background-repeat : no-repeat;
    vertical-align    : middle;
    margin-right      : 0.5em;
}

#Content div.cms-block::before,
#Content p.quote::before,
#Content blockquote::before {
    font-weight    : 500;
    display        : block;
    text-transform : uppercase;
    margin-bottom  : 1em;
}

#Content div.cms-block.achtung::after {
    background-image : url('/gfx/News/block-achtung.svg');
}

#Content div.cms-block.achtung::before {
    content : 'Achtung';
}

#Content p.quote:after,
#Content blockquote:after {
    background-image : url('/gfx/News/block-zitat.svg');
}

#Content p.quote:before,
#Content blockquote:before {
    content : 'Zitat';
}

#Content div.cms-block.hinweis::after,
#Content div.cms-block.hinweise::after {
    background-image : url('/gfx/News/block-hinweis.svg');
}

#Content div.cms-block.hinweis::before {
    content : "Hinweis";
}

#Content div.cms-block.hinweise::before {
    content : "Hinweise";
}

#Content div.cms-block.beispiel::after,
#Content div.cms-block.beispiele::after {
    background-image : url('/gfx/News/block-beispiel.svg');
}

#Content div.cms-block.beispiel::before {
    content : "Beispiel";
}

#Content div.cms-block.beispiele::before {
    content : "Beispiele";
}

#Content div.cms-block.tipp::after,
#Content div.cms-block.tipps::after {
    background-image : url('/gfx/News/block-tipp.svg');
}

#Content div.cms-block.tipp::before {
    content : "Tipp";
}

#Content div.cms-block.tipps::before {
    content : "Tipps";
}

#Content div.cms-block.muster::after {
    background-image : url('/gfx/News/block-muster.svg');
}

#Content div.cms-block.muster::before {
    content : "Muster";
}

#Content div.cms-block.definition::after {
    background-image : url('/gfx/News/block-definition.svg');
}


#Content div.cms-block.definition::before {
    content : "Definition";
}

.cms-block.kurzfassung {
    margin-top       : 4em !important;
    background-color : var(--background-primary) !important;
    border           : 1px solid var(--primary-color);
    position         : relative;
}

.cms-block.kurzfassung:after {
    content          : "Das Wichtigste zusammengefasst";
    padding          : 0.5em 1.25em;
    color            : white;
    background-color : var(--primary-color);
    border-radius    : var(--itrk-border-radius);
    border           : 1px solid var(--primary-color);
    position         : absolute;
    top              : 0 !important;
    height           : auto !important;
    transform        : translateY(-50%)
}

@media screen and (max-width : 768px) {
    #Content .cms-block p.quote,
    #Content .cms-block .cms-block {
        margin  : 2em 1em 2em 0;
        padding : 0 1.875em;
    }
}

@media screen and (max-width : 512px) {
    #Content div.cms-block,
    #Content p.quote,
    #Content blockquote {
        padding : 40px 20px 20px;
    }
    
    #Content div.cms-block.info {
        padding : 20px;
    }
    
    #Content div.cms-block:not(.kurzfassung)::after,
    #Content p.quote::after,
    #Content blockquote::after {
        top    : -13px !important;
        left   : 0 !important;
        height : 40px !important;
    }
}

#Content div.info > div.info {
    background : white;
}

#Content p.info {
    padding-bottom : 1em;
}


#Content #article table {
    margin-bottom : 2em;
    width         : 100%;
}

#Content #article table th {
    font-weight : bold;
}

#Content #article table td,
#Content #article table th {
    padding : 3px;
}

#Content div.info table {
    width      : 100%;
    padding    : 0.25em;
    margin     : 0 0 1.5em;
    background : white;
    border     : 1px solid #999999;
}

#Content div.info table th,
#Content div.info table td {
    padding : 1px 5px;
}

#Content div.info table th {
    font-weight : bold;
    color       : #3668b4;
}

#Content div.info blockquote {
    background   : none;
    margin-right : 2em;
}

#Content pre.code {
    background    : #ffffd9;
    border        : 1px solid rgb(213, 213, 0);
    padding       : 8px;
    line-height   : 13px;
    font-size     : 12px;
    margin-bottom : 1em;
}


#News p, #News ul, #News ol,
#Content p, #Content ul, #Content ol,
div.Content ul, div.Content ol, div.Content p {
    margin-bottom : 1em;
}

ul {
    margin-left : 0.5em;
}

li {
    text-align  : left;
    margin-left : 1.5em;
}

#Article ul,
#Content ul,
#Content ol,
div.Content ul {
    margin-left   : 0;
    margin-bottom : 2em;
    padding       : 0;
}

#Article ul li,
#Article ol li,
div.Content ul li,
div.Content ol li {
    margin-bottom : 0.5em;
    margin-left   : 1.3em;
    padding-left  : 0.2em;
}

div.Content ul li.listheader,
div.Content ol li.listheader,
#Article ul li.listheader,
#Article ol li.listheader {
    display     : block;
    margin      : 0 0 5px;
    padding     : 0;
    list-style  : none;
    font-weight : bold;
}

#Content ol {
    list-style-type : decimal;
}

#Article ul li ul {
    padding : 0;
    margin  : 0.25em 0 0;
}

#Article ul li ul li {
    padding    : 0;
    margin     : 0 0 0.25em;
    list-style : none;
}

#Article ul li ul li.brui-ulist-element {
    list-style : square;
}

#Article ul.numeric,
article ul.numeric {
    list-style  : decimal;
    margin-left : 1.45em;
}

#Article ul.numeric li,
article ul.numeric li {
    list-style : decimal;
}

#Content cite {
    margin-bottom : 2em;
    line-height   : 1.4em;
    display       : block;
}

div.Content ul,
#Article ul {
    clear      : left;
    text-align : left;
}

div.Content ul li,
#Article ul:not(.check) li {
    list-style-image : url(/gfx/LAYOUT/items/Bullet.png);
}

div.pager {
    clear         : both;
    text-align    : center;
    color         : #888888;
    
    border-top    : 2px solid #0c6ec6;
    
    margin-top    : 1em;
    padding-top   : 1em;
    margin-bottom : 1em;
}

div.pager .selected {
    color       : black;
    font-weight : bold;
    font-size   : 110%;
}

#Content p.Impressum {
    background    : white;
    border        : 1px solid #cccccc;
    padding       : 1em;
    font-size     : 110%;
    text-align    : left;
    margin-bottom : 2em;
    color         : #666666;
}

#Content img.news_image {
    clear         : left;
    float         : left;
    width         : 100px;
    height        : auto;
    border        : 1px solid #cccccc;
    margin-right  : 0.75em;
    margin-bottom : 1em;
    margin-top    : 2px;
}

#Content .alert,
.alert {
    margin     : 2em 0;
    padding    : 1em 1.5em;
    border     : 1px solid var(--lightgray-border);
    background : var(--lightgray);
    text-align : left;
}

.alert.with-icon {
    box-sizing   : border-box;
    padding-left : 40px !important;
}

.alert.with-icon i {
    float       : left;
    margin-left : -25px;
}

.alert:first-child {
    margin-top : 0;
}

#Content .alert *:last-child,
.alert *:last-child {
    margin-bottom : 0;
}

#Content .alert.error,
.alert.error {
    border     : 1px solid red;
    background : #fff0f0;
    color      : var(--red-color);
}

.alert.error strong {
    font-weight : bold;
}

#Content .alert.notification,
.alert.notification {
    background : #edf6ff;
    border     : 1px solid #0062c3;
}

.alert.notification strong {
    color : #404040;
}

.alert.notification.gray {
    border     : 1px solid var(--lightgray-border);
    background : var(--lightgray);
}

.alert.notification.gray strong {
    color : #e7e7e7;
}

#Content .alert.warning,
.alert.warning {
    background : #ffffac;
    border     : 2px solid #ffed1c;
    padding    : 1em;
}

#Content .alert.success,
.alert.success {
    background : #e0ffe0;
    border     : 1px solid green;
    color      : green;
}

.alert.success strong {
    font-weight : bold;
    color       : green;
}

div.alert ul {
    margin-left : 1.5em !important;
}

div.alert i.fa,
div.alert i.fas {
    line-height : inherit;
    margin-top  : -1px;
}


#Content div.Werbung {
    margin-bottom : 2em;
    background    : #eaf8ff;
}

#Content div.Werbung h2 {
    background    : none;
    border-top    : 2px solid #0068b8;
    padding-left  : 1em;
    padding-top   : 0.75em;
    margin-bottom : 0.5em;
}

#Content div.Werbung p {
    margin-bottom : 0.6em;
}

#Content div.Werbung div.text {
    padding : 0 1em 0.5em;
}

#Content table.simple {
    width          : 100%;
    border         : 1px solid #cccccc;
    border-bottom  : 0;
    border-spacing : 0;
    margin-bottom  : 1em;
}

#Content table.simple th,
#Content table.simple td {
    padding : 3px;
}

#Content table.simple th {
    font-weight : bold;
}

#Content table.simple td {
    vertical-align : top;
    border-bottom  : 1px solid #cccccc;
    text-align     : left;
}

#Content table.simple td p,
#Content table.simple td ul li {
    text-align : left;
}

#Content table.simple th {
    background : #f0f0f0;
}

#Content .newslist li {
    margin  : 0;
    padding : 0.4em 0.4em;
}

#Content .newslist li .date {
    position   : absolute;
    width      : 70px;
    text-align : right;
    font-size  : 80%;
    margin-top : -3px;
}

#Content .newslist li a {
    display     : block;
    line-height : 1.2em;
    margin-left : 90px;
}

#Content div.plugin_gfx {
    margin-top    : 1.5em;
    margin-bottom : 1.5em;
    text-align    : center;
}

#Content #TopNews {
    padding       : 1em 2em 1em 1em;
    margin-bottom : 2em;
    box-shadow    : 3px 3px 5px #c0c0c0;
    background    : var(--lightgray);
}

#Content div.werbung {
    padding       : 1em;
    background    : #ebebeb url(/gfx/LAYOUT/items/Info_icon.jpg) no-repeat 0 60px;
    min-height    : 130px;
    
    border-radius : 3px;
    box-shadow    : 0 0 5px #999999;
}

#Content div.werbung > *,
#Content div.werbung ul {
    font-size   : 12px;
    line-height : 1.5em;
    margin-left : 135px;
}

#Content div.werbung h1,
#Content div.werbung h2 {
    margin-left   : 0.5em;
    font-size     : 14px;
    margin-bottom : 1em;
}

#Content div.werbung ul {
    margin-bottom : 1em;
}

#Content div.werbung ul li {
    font-size     : 95%;
    line-height   : 1.4em;
    margin-top    : 1px;
    margin-bottom : 1px;
}

#Content div.werbung > *:last-child {
    margin-bottom : 0;
}

#Content div.werbung p:last-child > a {
    float         : right;
    clear         : both;
    padding       : 5px 10px;
    margin-bottom : 0;
    font-size     : 11px;
    color         : white;
    
    border-radius : 3px;
    border        : 1px solid var(--tertiary-color);
    /* box-shadow: 0px 0px 5px var(--tertiary-color); */
    
    background    : #333333;
    background    : -moz-linear-gradient(top, #333333 0%, #7d7e7d 100%); /* FF3.6+ */
    background    : -webkit-gradient(linear, left top, left bottom, color-stop(0%, #333333), color-stop(100%, #7d7e7d)); /* Chrome,Safari4+ */
    background    : -webkit-linear-gradient(top, #333333 0%, #7d7e7d 100%); /* Chrome10+,Safari5.1+ */
    background    : -o-linear-gradient(top, #333333 0%, #7d7e7d 100%); /* Opera 11.10+ */
    background    : -ms-linear-gradient(top, #333333 0%, #7d7e7d 100%); /* IE10+ */
    background    : linear-gradient(to bottom, #333333 0%, #7d7e7d 100%); /* W3C */
}

#Content div.werbung p:last-child:after {
    content : ' ';
    display : none;
    height  : 1px;
    clear   : both;
}

#Content ul.links {
    list-style  : none;
    padding     : 0;
    margin-left : 0;
}

#Content ul.links li {
    border-bottom    : 1px solid #cccccc;
    padding-bottom   : 3px;
    margin-bottom    : 3px;
    font-size        : 90%;
    margin-left      : 0;
    list-style-image : none;
}

p.byline {
    font-size      : 12px;
    margin-top     : -4px;
    line-height    : 1.2em;
    margin-bottom  : 2em !important;
    color          : var(--tertiary-color);
    padding-bottom : 5px;
    border-bottom  : 1px solid #cccccc;
}

.toc {
    margin        : 2em 0;
    padding       : 1.5em;
    border        : 2px solid #d9d9d9;
    border-radius : var(--itrk-border-radius);
    max-height    : 70vh;
    overflow-y    : auto;
}

.toc.right {
    float  : right;
    width  : 40%;
    margin : 0 0 2em 2em;
}

#Article .toc > ul,
.toc > ul {
    padding-bottom : 0;
    margin         : 0;
}

#Article .toc > ul li:last-child,
.toc > ul li:last-child {
    margin-bottom : 0;
}

#Article .toc > ul li,
.toc > ul li {
    margin-top    : 0.5em;
    margin-left   : 1.0em;
    margin-bottom : 0.5em;
}

#Article .toc > ul li.active {
    font-weight : bold;
}

.toc h2,
.toc h3 {
    margin      : 0 0 1em;
    border      : 0;
    padding     : 0;
    font-weight : 500;
}

#Article .toc > ul ul,
.toc > ul ul {
    font-size     : 90%;
    margin-bottom : 1em;
}

#Article .toc ul li ul {
    margin-top : 0;
}

#Article .toc > ul > li {
    margin-top : 1em;
}

#Article .toc > ul > li:first-of-type {
    margin-top : 0;
}

#Article .toc ul li ul li,
.toc ul li ul li {
    font-weight : normal;
    line-height : 1.3em;
    margin      : 2px 0 5px;
    display     : block;
}

#Article .toc ul li.active ul li,
.toc ul li.active ul li {
    font-weight : bold;
}

#Article .toc ul li ul li a,
.toc ul li ul li a {
    text-decoration : none;
    color           : #333333;
    border-bottom   : 1px dashed #999999;
}

#Content ul li p {
    margin : 0.25em 0;
}

#Content div.commercial {
    margin-top : 2em;
}

#Content div.commercial p {
    font-family : inherit;
    color       : inherit;
}

#Content div.commercial a.more {
    float          : right;
    margin-top     : -2em;
    font-size      : 13px;
    font-weight    : bold;
    width          : 165px;
    height         : 43px;
    color          : white;
    text-align     : center;
    background     : #276ec2;
    line-height    : 43px;
    border-radius  : 2px;
    text-transform : uppercase;
    box-shadow     : rgba(0, 0, 0, 0.2) 0 1px 1px 0;
}

#Content #article div.info table,
#Content div.info table {
    background : none;
    font-size  : 90%;
    border     : 0;
    margin     : 2em 0;
    border-top : 1px solid #e5e5e5;
}

#Content div.info table tr td {
    border-bottom : 1px solid #e5e5e5;
}

#Content div.info table tr > td:first-child {
    font-weight : bold;
}

#Content div.info table tr td *:last-child {
    margin-bottom : 0;
}

#Content div.info table tr {
    background : white;
}

#Content div.info table tr + tr {
    background : none;
}

#Content div.info table tr + tr + tr {
    background : white;
}

#Content ul.tabset {
    list-style : none;
}

.ContentItem {
    margin-bottom : 1em;
}

form.default input[type="submit"],
input.button,
span.button,
a.button {
    color          : var(--primary-color);
    text-transform : uppercase;
    border         : 1px solid var(--primary-color);
    background     : transparent;
    padding        : 0.5em 2em 0.4em 2em;
    font-size      : inherit;
    font-weight    : normal;
    line-height    : 1.3em;
    display        : inline-block;
    text-align     : center;
    width          : auto;
    white-space    : nowrap;
    cursor         : pointer;
    border-radius  : 7px;
}

@media screen and (max-width : 512px) {
    div.button-group {
        display : block;
        width   : auto;
    }
    
    form.default input[type="submit"],
    input.button,
    span.button,
    a.button {
        display       : block;
        text-align    : center;
        width         : auto;
        max-width     : 100%;
        margin-bottom : 5px;
    }
    
    div.button-group.float-right {
        float       : none;
        display     : block;
        margin-left : 0 !important;
    }
    
}


form.default input.block[type="submit"],
input.button.block,
span.button.block,
a.button.block {
    font-weight : normal;
    display     : block;
}

textarea.invalid,
input.invalid {
    background : #ffeeee;
}

form.default input.invert[type="submit"],
input.button.invert,
span.button.invert,
a.button.invert {
    color       : white;
    background  : var(--primary-color);
    font-weight : normal;
}

form.default input.blue[type="submit"],
span.button.blue,
a.button.blue,
a.button.blue,
input.button.blue {
    border-color : var(--secondary-color);
    color        : var(--secondary-color);
    font-weight  : normal;
}

form.default input.gray[type="submit"],
span.button.gray,
a.button.gray,
a.button.gray,
input.button.gray {
    background   : #dddddd;
    border-color : #dddddd;
    color        : var(--tertiary-color);
    font-weight  : normal;
}

form.default input.blue.invert[type="submit"],
a.button.blue.invert,
span.button.blue.invert,
input.button.blue.invert {
    background  : var(--secondary-color);
    color       : white;
    font-weight : normal;
}

#Content h2.divider,
#Content h3.divider,
.divider {
    font-family   : "Fira Sans", sans-serif !important;
    font-size     : var(--font-normal);
    color         : var(--tertiary-color);
    white-space   : initial;
    font-weight   : 500;
    background    : var(--lightgray) !important;
    margin        : 40px 0 20px 0;
    overflow-x    : hidden;
    text-align    : left;
    line-height   : inherit;
    padding       : 14px 45px 14px 15px;
    border-radius : var(--itrk-border-radius) !important;
}

#Content h2.divider.sticky,
#Content h3.divider.sticky,
.divider.sticky {
    margin-bottom              : 0;
    border-bottom-left-radius  : 0;
    border-bottom-right-radius : 0;
}

ul.topics {
    list-style : none;
}

ul.topics li {
    border-bottom : 1px solid var(--lightgray-border);
}

ul.topics li a {
    color : #3e3f3f;
}

ul.check {
    list-style  : none;
    margin-left : 0;
}

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

ul.check li:before {
    content      : "✓";
    color        : #f07501;
    margin-right : 0.3em;
    position     : absolute;
    margin-left  : -1.2em;
}

#Content table.default {
    margin-top    : 1em;
    margin-bottom : 3em;
    border-bottom : 0;
    width         : 100%;
}

#Content table.default th {
    text-align    : left;
    font-weight   : bold;
    background    : var(--lightgray);
    padding       : 5px;
    border-bottom : 1px solid var(--lightgray-border);
    border-right  : 3px solid white;
}

#Content table.default th:last-child {
    border-right : 0;
}

#Content table.default td {
    text-align    : left;
    padding       : 5px;
    border-bottom : 1px solid #eeeeee;
}

#Content table.default td > ul {
    margin-left : 0;
}

#Content table.default td > ul > li {
    margin-left : 1em;
    font-size   : 14px;
}

#Content table.default td:first-child {
    padding-left : 0;
}

#Content table.default td *:last-child {
    margin-bottom : 0;
}

#Content table.default th.centered,
#Content table.default th.center,
#Content table.default td.centered,
#Content table.default td.center {
    text-align : center;
}

#Content table.default.noborder th,
#Content table.default.noborder th,
#Content table.default.noborder td {
    border  : 0;
    padding : 3px;
}

#Content .SideBarItem ul.Navi li {
    margin-left   : 13px;
    margin-bottom : 3px;
}

#Content .SideBarItem ul.Navi li a {
    color : inherit;
}

#Content .Infobox {
    margin-top : 3em;
    border     : 2px solid #fea150;
    padding    : 2em;
    background : #fefbf8;
}

#Content .Infobox h2,
#Content .Infobox h3 {
    margin-top : 0;
}

#Content .Infobox > *:last-child {
    margin-bottom : 0;
}

label {
    margin-right : 0.6em;
}

label.mandatory {
    font-weight : bold;
}

label.mandatory:after {
    content : "*";
    color   : #cc0000;
    margin  : 0 0.1em;
}

form.default {
    margin  : 2em 0;
    border  : 0;
    padding : 0;
}

form.default fieldset {
    position      : relative;
    display       : block;
    clear         : both;
    border        : 0;
    border-bottom : 1px solid #cccccc;
    padding       : 0 0 1.5em;
    margin        : 1.5em 0;
    white-space   : nowrap;
    overflow      : visible;
}

form.default fieldset * {
    white-space : normal;
}

form.default legend {
    font-weight : bold;
}

form.default label {
    display : inline-block;
    width   : 17%;
    margin  : 0 1.5% 6px 0;
}

form.default select {
    margin : 0 0 5px 0;
}

form.default textarea,
form.default input {
    width              : 80%;
    margin             : 0 0 5px 0;
    padding-left       : 5px;
    padding-right      : 5px;
    border             : 1px solid #d2d2d2;
    box-sizing         : border-box; /* css3 rec */
    -moz-box-sizing    : border-box; /* ff2 */
    -ms-box-sizing     : border-box; /* ie8 */
    -webkit-box-sizing : border-box; /* safari3 */
    -khtml-box-sizing  : border-box; /* konqueror */
}

form.default label {
    margin-top : 2px;
}

form.default .mandatory {
    font-weight : bold;
}

form.default div.error label,
form.default label.error {
    color : red;
}

form.default div.error input,
form.default input.error {
    background : #ffeeee;
}

#Content li h2:first-child,
#Content li h3:first-child,
div.Content h2:first-child,
#Content form.default > h2:first-child,
form.default > h2:first-child {
    margin-top : 0;
}

form.default input[readonly="readonly"] {
    background : var(--lightgray);
    color      : #999999;
}


form.default input[type="checkbox"],
form.default input[type="radio"] {
    width        : auto;
    margin-right : 1em;
}

form.default input[type="checkbox"] + label {
    width       : 90%;
    margin-top  : 0;
    white-space : normal;
}

div.annotation {
    font        : var(--font-small) !important;
    color       : var(--tertiary-color);
    padding     : 10px 0;
    border-top  : 1px solid #e5e5e5;
    line-height : 15px;
    clear       : both;
}

div.annotation div {
    margin-bottom : 0.5em;
}

div.Content ul li {
    list-style : square none;
    margin     : 0;
}

div.Content ul li a {
    color           : #333333;
    text-decoration : underline;
}

.col-25,
.col-25-2 {
    display            : inline-block;
    margin             : 0;
    padding            : 0;
    box-sizing         : border-box; /* css3 rec */
    -moz-box-sizing    : border-box; /* ff2 */
    -ms-box-sizing     : border-box; /* ie8 */
    -webkit-box-sizing : border-box; /* safari3 */
    -khtml-box-sizing  : border-box; /* konqueror */
    white-space        : normal;
}

.col-25-2,
.col-25 {
    width : 25%;
}

.col-25.right,
.col-25-2.right {
    float : right;
}

@media screen and (max-width : 767px) {
    
    #Article {
        padding-bottom : 2em;
    }
    
    #Footer ul li.OnlyFull {
        display : none;
    }
    
    #Article header h1 {
        margin-right : 0;
    }
    
    form.default label {
        white-space : nowrap;
    }
    
    form.default select {
        clear : right;
        /* display: block; */
    }
    
    .col-25 {
        display : block;
        width   : auto;
    }
    
    .col-25.right {
        display : block;
        width   : auto;
        float   : none;
    }
    
    .col-25-2 {
        width : 50%;
    }
    
    .scrollbanner {
        margin : -30px -20px 0 -20px;
    }
    
    .scrollbanner + img {
        display : none;
    }
    
}


ul.black,
div.Content ul.black,
#Article ul.black {
    color      : var(--tertiary-color);
    list-style : square none;
    margin     : 0;
}

ul.black li,
div.Content ul.black li,
#Article ul.black li {
    margin-bottom : 0;
}

code {
    background : var(--lightgray);
    border     : 1px solid #eaeaea;
    font-size  : 95%;
    padding    : 1px 4px;
}

textarea {
    width       : 98%;
    background  : white;
    border      : 1px solid #eaeaea;
    height      : 120px;
    padding     : 1%;
    line-height : 1.2em;
}

#Article ul.plain,
ul.plain {
    margin     : 0;
    padding    : 0;
    list-style : none inside none;
    width      : 100%;
}

#Article ul.plain li,
ul.plain li {
    margin-left  : 0;
    padding-left : 0;
    list-style   : none;
}

.price-with-decimal {
    color   : var(--primary-color);
    padding : 15px 0;
}

.price-with-decimal strong {
    font-size : 19px;
    color     : var(--tertiary-color);
}

.price-with-decimal .exact_price {
    font-style  : normal;
    font-size   : 35px;
    line-height : 22px;
    margin-left : -2px;
    font-weight : 500;
}

.price-with-decimal .exact_price sup {
    position   : absolute;
    font-size  : 17px !important;
    margin-top : -7px;
    color      : var(--primary-color) !important;
}

.price-with-decimal .time {
    position    : relative;
    top         : 8px;
    color       : var(--tertiary-color);
    font        : var(--font-small);
    margin-left : -2px;
}

.price-with-decimal.small {
    font-size : 15px;
}

.price-with-decimal.small .exact_price {
    font-style  : normal;
    font-size   : 32px;
    margin-left : -3px;
    font-weight : bold;
}

.price-with-decimal.small .exact_price sup {
    position    : absolute;
    font-size   : 12px;
    font-weight : bold;
    margin-top  : -6px;
    color       : var(--secondary-color) !important;
}

.price-with-decimal.small .time {
    position  : relative;
    top       : 6px;
    color     : var(--tertiary-color);
    font-size : 11px;
}


#SideBar {
	float: right;
	width: 325px;
	padding: 0px;
	margin: 0px;
	max-width: 325px;
}

.SideBarItem {
	margin: 0;
	padding-top: 30px;
	padding-bottom: 30px;
	border-top: 1px solid var(--lightgray-border);
}
.SideBarItem > *:last-child {
    margin-bottom : 0;
}
.SideBarItem:last-child {
	margin-bottom: 4em;
}

.SideBarItem.BannerItem {
	padding: 20px !important;
	margin-bottom: 30px !important;
	border: 1px solid var(--lightgray-border) !important;
	border-radius: var(--itrk-border-radius) !important;
	overflow: hidden;
}

.SideBarItem h1,
.SideBarItem h2,
.SideBarItem h3 {
    margin-bottom  : 0.2em !important;
    font-weight    : 500;
    padding        : 0px;
    text-transform : uppercase;
    color          : var(--tertiary-color) !important;
    font-size      : 17px !important;
}
.SideBarItem h1:first-of-type,
.SideBarItem h2:first-of-type,
.SideBarItem h3:first-of-type {
	margin-top     : 0px !important;
}


.SideBarItem h1 + div.subline,
.SideBarItem h2 + div.subline,
.SideBarItem h3 + div.subline {
	margin-top: -6px !important;
}


.SideBarItem h4 {
    margin-top  : 1.5em !important;
	font-family : var(--font-family-sans) !important;
    font-size   : inherit !important;
    font-weight : 500 !important;
    color       : var(--tertiary-color) !important;
}

.SideBarItem form {
    background : none;
    border     : none;
    margin     : 0;
    padding    : 0;
}

.SideBarItem p {
    margin : 1em 0;
}

.SideBarItem ul {
    margin  : 0.7em 0;
    padding : 0;
}
.SideBarItem ul li {
    text-align    : left;
    margin-left   : 1.4em;
    margin-bottom : 6px;
}

.SideBarItem h2 + p,
.SideBarItem h2 + ul,
.SideBarItem h3 + p,
.SideBarItem h3 + ul {
    margin-top : 0;
}

.SideBarItem.image-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 15px;
}
.SideBarItem.image-grid .single-image {
	border-radius: 7px;
	border: 1px solid var(--lightgray-border);
	overflow: hidden;
}

.SideBarItem.img-layout {
	border-top: none;
	padding-top: 0px;
	padding-bottom: 20px;
}

.SideBarItem > *:last-child,
.SideBarItem > * > [class*="itrk-dropdown"]:last-child {
	margin-bottom: 0;
}

.SideBarItem h3 + p,
.SideBarItem h3 + a + p {
	margin-top: 0px;
}

.SideBarItem.gray {
	background-color:	#f7f7f7;
	border: 0px;
	padding:			1em;
	box-sizing: border-box;
}
.SideBarItem.gray h1 {
	border-top: 0px;
	margin-top: 0px;
	padding-top: 0px;
}
.SideBarItem.gray h1 + p {
	margin-top: 0px;
	padding-top: 0px;
}
.SideBarItem a.button:last-child {
	margin-top: 1.2em;
	display: block;
}
.SideBarItem a > img.left-text-around {
	width: 100px;
	margin-right: 1.2em;
	margin-bottom: 1em;
	float: left;
}

.SideBarItem ul > li > ul {
	margin-bottom: 1em;
}

.SideBarItem .easyscan-search .easyscan-btn  {
    margin-top: 1em;
}

.SideBarItem .icon-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 1em;
}

.SideBarItem .icon-header h2,
.SideBarItem .icon-header .header {
    font: var(--font-h3)!important;
    font-size: 18px!important;
    text-transform: none!important;
    line-height: 18px!important;
    margin-bottom: 0!important;
}

.SideBarItem .icon-header img {
    max-height: 35px;
    max-width: 35px;
}

.SideBarItem .sub-title {
    font-weight: 500;
}

@media screen and (max-width:767px) {
    #SideBar {
		float: none;
		clear: both;
		width: 100%;
		margin-top: 20px;
		max-width: none;
	}

	#SideBar div.SideBarItem:last-child {
		margin-bottom: 1em;
	}

	.SideBarItem {
		display: block;
		width: 100%;
		float: none;
		padding: 20px 0px;
		margin: 0px;
		border-top: 1px solid var(--lightgray-border);
		/* border-bottom: 1px solid #ccc; */
	}
	.SideBarItem > h2:first-child,
	.SideBarItem > h3:first-child {
		padding-top: 0px;
		margin-top: 0px;
		border: 0px !important;
	}

	body#Portal .SideBarItem {
		border-bottom: 0px;
		margin-bottom: 0px;
		padding-bottom: 0px;
		margin-top: 1em;
	}
}


@media print {
    
    @page {
        size   : auto;
        margin : 2cm auto 4cm auto;
    }
    
    .OnlyPrint {
        display: inline-block;
        width: auto;
    }
    
    .Container,
    .Wrapper {
        width     : auto !important;
        min-width : min-content;
        display   : block;
    }
    
    .Container.header {
        border : 0;
    }
    
    table, figure {
        page-break-inside : avoid;
    }
    
    h1, h2, h3, h4, h5 {
        page-break-after : avoid;
    }
    
    #_cms_admin_layer,
    .Container.itrk-banner,
    #header-navi,
    #SideBar,
    #SubNavi,
    #BundlesWrapper,
    #Footer,
    #MinNavi ul,
    #MinFooter > ul {
        display : none !important;
    }
    
    #MinFooter {
        display    : block;
        text-align : left;
    }
    
    .no-print {
        display : none !important;
    }
    
    #chatTag {
        display: none!important;
    }
}


