/*  This is done to preload pseudo image: the image don't load at first Ctrl+P otherwise */
#footer:after {
    visibility: hidden;
}

/* GLOBAL STYLES
--------------*/
@media print {
    html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td
    {
        margin: 0;
        padding: 0;
        border: 0;
        outline: 0;
        vertical-align: baseline;
        background: transparent;
        font-family: 'Open Sans', Helvetica,Arial,san-serif;
        --theme-color1: #D6001C;
    }

    a {
        text-decoration: none !important;
        border: none !important;
        color: inherit !important;
    }

    .inline {
        display: inline;
    }

    .bold{
        font-weight: bold;
    }

    .italic {
        font-style : italic;
    }

    .line_through {
        text-decoration:line-through
    }

    .error {
        color : #bb3030;
    }

    ul {
        list-style-type: none;
    }

    .pad_left {
        padding-left : 15pt;
    }

    .pad_right {
        padding-right : 15pt;
    }

    .pad_bottom {
        padding-bottom : 16pt;
    }

    input, select, textarea {
        font-family : Helvetica,Arial,san-serif;
    }

    .capital {
        text-transform : uppercase;
    }

    .right {
        float: right;
        width : auto;
    }

    abbr {
        border : none;
        cursor : help;
        font-style : italic
    }

    .left, ul.galleryImg li, .pagination ul li {
        float: left;
        width : auto;
    }

    .ce_text {
        clear : left;
        margin-bottom: 15pt;
    }

    #main .ce_image {
    }

    * html #main .mod_article {
    }

    .ce_download, .ce_downloads {
        padding-top : 8pt;
        margin-bottom : 8pt;
    }


    .image_container img {
        /* margin-top : 8pt; */
    }

    .ce_text ul,  .ce_list ul, .ce_text ol, .ce_list ol  {
        clear : both;
        margin-bottom : 20px;
        list-style-type : square;
        list-style-position : outside;
    }

    .ce_text ol li, .ce_list ol li  {
        list-style-type:decimal;
    }

    .ce_list ul li, .ce_text ul li {
        padding-left: 0;
        margin-left: 1rem;
    }

    .ce_list ul li:before, .ce_text ul li:before {
        content : '' !important;
    }

    .caption {
        clear: both;
        font-size : 11pt;
        padding-bottom :10pt;
    }

    .invisible, #mainNavi, .subNavi, #model-close, .nav-icon-wrap,
    .back, .mod_bsslider, .slick-slider,
     #footerNavi, .widget-captcha , .widget-submit,
    #footer-like .link-button,
    .header-icons,
    .navigation,
    .more,
    .link-box,
    .emptyP,
    .mod_customnav,
    .mod_navigation,
    .search-form,
    .logo-footer,
    .mod_changelanguage,
    .mod_social_media_link,
    #searchForm,
    .headerSpacer,
    #footer .logo,
    .mod_breadcrumb,
    .ce_lottiefilesplayer .image_container,
    .ce_contentSeparator,
    .link-button.less,
    .link-button.more,
    #footer .ce_image,
    #menuContent,
    .float_below_box img[src=svg]{
        display: none !important;
    }

    .text-white,
    #footer-like .ce_multicolumnStart > * {
        color: #000;
    }

    #footer-like .one-fifth {
        clear: none;
        float: left;
        width: 50%;
    }

    #footer-like .two-third {
        display: block !important;
    }


    .clear, #clear {
        clear:both;
        height:0.1px;
        line-height:0.1px;
        font-size:0.01em;
        overflow:hidden;
    }

    p,dl,hr,h1,h2,h3,h4,h5,h6,ol,ul,pre,table,address,fieldset { margin-bottom: 10px; }

    .list-one li, .list-one ol {
        list-style: none;
        padding : 0.5em 0 !important;
        border-top : 1px solid #e9e9e9;
    }

    .list-one ul li:before {
        content: '' !important;
        margin : 0;
        padding : 0;
    }

    .list-one li:last-child, .list-one ol:last-child {
        border-bottom : 1px solid #e9e9e9;
    }

    /* LAYOUT STYLES
    --------------------------------------------------------------------*/

    body {
        font : 11pt/1.4 'Open Sans';
        font-family: 'Open Sans', Helvetica,Arial,san-serif;
        background: #fff !important;
        color: #333333;
        font-size: 12px;
    }

    #footer,
    #wrapper {
        margin: 0 auto;
        background-color: #fff;
        position: relative;    
    }


    #wrapper {
        width: calc(100% - 40pt);
    }


    #header{
        position: relative !important;
        overflow: hidden;
        border-bottom: 2px solid var(--theme-color1);
        margin-bottom: 20px;
    }

    #footer {
        page-break-inside: avoid !important;
    }

    #footer:before {
        content: "";
        display: block;
        float: right;
        font-size: 10pt;
        font-size: 11px;
        position: absolute;
        right: 0;
        top: 10pt;
    }

    #footer:after {
        left: auto;
        visibility: visible;
        /* refer to top */
    }


    #main {
        padding : 10pt 0;
    }

    #right .inside .mod_article, #right .inside .block {
        margin-top : 10px;
        padding-top : 10px;
    }

    #footer .inside {
        clear  : both;
        position: relative !important;
        margin-top : 6pt;
        border-top : 2px solid var(--theme-color1);
        padding-top: 10pt;
        font-size: 10pt;
        font-size: 11px;        
    }


    /* HEADER STYLES
    --------------------------------------------------------------------*/
    .logo {
        width: auto;
        margin-bottom: 5pt;
    }

    .logo figure {
        margin-bottom: 0;
    }

    .logo img {
        float: left;
        height: 70pt;
        width: auto;
    }


    /* OTHERS STYLES
    --------------------------------------------------------------------*/
    h1,h2,h3,h4 {
        font-weight: 700;
        font-style: normal;
        line-height: 1.2;      
    }
    h1, .like-h1 { font-size: 17px;}
    h2, .like-h2 { font-size: 15px; }
    h3, .like-h3 { font-size: 13px; }
    h4, .like-h4 { font-size: 12px; }

    .like-h1, .like-h2,.like-h3, .like-h4,.like-h5,  
	h1,h2,h3,h4,h5,h6 {
        color: #000;
	}

    h1 br,
    h2 br,
    h3 br,
    h4 br {
        display: none;
    }

    #main .ce_text p {
        padding-bottom : 5pt;
        box-sizing: border-box;
        overflow: visible;
    }

    .text-transparent {
        color: #000;
    }

    .ce_headline {
        margin-bottom: 0;
        margin-top: 16pt;
    }

    .teaser-3block .inside_art > div,
    .mod_ContentNewsTeaser {
        width: 33%;
        float: left;
        box-sizing: border-box;
        padding-right: 10px;
    }

    .flex-col2  > div {
        width: 50%;
        float: left;
        box-sizing: border-box;
        padding-right: 10px;
    }

    figcaption br {
        display: none;
    }

    #footer .ce_text {
        float: left;
        width: 50%;
        clear: none;
    }

    /* SITEMAP STYLES
    ----------------------------------*/
    .mod_sitemap{

    }

    ul#sitemap_tree a {

    }

    ul#sitemap_tree li {
        margin-top : 8pt;
    }

    ul#sitemap_tree ul li {
        margin-top : 3px;
    }

    ul#sitemap_tree li {
        list-style-type : square;
        margin-left : 16pt;
    }

    ul#sitemap_tree li ul {
        font-weight : normal;
        margin-left : 0px;
    }
    /* FROM STYLES
    ------------------*/
    .ce_form {
        margin-bottom: 26px;
    }

    #main form label {
        clear : both;
        float : left;
        width : 100%;
        margin: 5px 0 0 0;
    }

    #main form .checkbox_container input {
        float: left;
        clear : both;
        width : 20px;
    }

    #main form .checkbox_container label {
        clear : none;
        width : 90%;
    }

    span.captcha_text {
        float : left;
        width : 237px;
        margin : 3px 0 0 0;
        padding-left : 130px;
    }

    #main form input.text, #main form textarea {
        float : right;
        width : 400px;
        font : 12pt/14px 'Open Sans', Helvetica,Arial,san-serif;
        padding : 3px;
        margin : 5px 0;
        color : #808080;
        border : 1px solid #000;
    }

    fieldset {
        clear : both;
    }

    div.submit_container input.submit {
        float : right;
        width : 100px !important;
        color : #333333;
        background-color : #CCCCCC;
        margin-right : 308px;
        font : 12pt/22px  'Open Sans', Helvetica,Arial,san-serif;
        height : 22px;
        padding : 0;
    }

    .ce_gallery {
        margin: 0 !important;
    }

    .ce_gallery a {
        position: relative;
    }
      
    .ce_gallery a::after {
        content: "";
        display: block;
        padding-bottom: 100%;
    }

    .ce_gallery a img {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }    

    .image_container,
    img {
        display: inline-block !important;
        page-break-inside: avoid !important;
    }

    /* teaser */
    .teaser .ce_text {
        display: inline-block !important;
        page-break-inside: avoid !important;
        margin-bottom: 20pt;
    }

    figure.float_right,
    figure.float_left {
        padding: 0;
    }

    .teaser figure.float_right,
    .teaser figure.float_left {
        display: block;
        position: relative;
        overflow: hidden;
        width: 50%;
        margin-top: 20pt;
        margin-bottom: 0;
    }

    .teaser figure:before {
        content: '';
        display: block;
        width: 100%;
        padding-top: 66.65%;
    }

    .teaser figure.float_right img ,
    .teaser figure.float_left img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        object-fit: cover;
        object-position: left;
    }    

    .float_right + .content-div,
    .float_left + .content-div {
        width: 50%;
        box-sizing: border-box;
        overflow: visible !important;
        display: inline-block !important;
        page-break-inside: avoid !important;
    }
    .float_right + .content-div {
        padding-right: 2rem;
    }        
    .float_left + .content-div {
        padding-left: 2rem;
    }

    .teaser p:last-child {
        margin-bottom: 0;
    }

    .teaser .inside_ce {
        display: flex;
        align-items: flex-start;
    }

    .teaser figure.float_right {
        order: 2
    } 
    /* teaser ends */


    /* page */
    @page {
        size: A4;
        /* margin: 50pt auto 160pt; Cuts Text off; dont use */
        margin-top: 40pt; 
    }
    @page :first {
        /* margin-top: 15pt; */
        margin-top: auto; 
    }


} /*@media ends*/