/* Allgemein */
:root {
    --max-container-width: 1800px;
    --font-size: 16px;
}
html,
body,
.w3-default-font {
    font-family: Roboto, sans-serif;
    font-size: var(--font-size);

    /*    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;*/
}

body.cn {
    font-size: 17px;
}

.w3-fifth,
.w3-twofifth,
.w3-threefifth,
.w3-fourfifth {
    float: left;
    width: 100%;
}
@media (min-width: 601px) {
    .w3-fifth {
        width: 19.99999%;
    }
    .w3-twofifth {
        width: 39.99999%;
    }
    .w3-threefifth {
        width: 59.99999%;
    }
    .w3-fourfifth {
        width: 79.99999%;
    }
}
.w3-row-padding > .w3-fifth,
.w3-row-padding > .w3-twofifth,
.w3-row-padding > .w3-threefifth,
.w3-row-padding > .w3-fourfifth {
    padding: 0 8px;
}

.ck-richtext img {
    max-width: 100%;
}

select {
    font-family: Roboto, sans-serif !important;
    font-size: var(--font-size) !important;
    color: #333 !important;
}

body {
    color: #333;
    background: #fefefe;
}

body a {
    color: #cc0502;
}

footer a {
    color: #fff;
}

footer {
    width: 100%;
    background-color: #003063;
    color: #fff;
    padding-bottom: 10px;
    margin: -100px auto;
}
body,
html {
    height: 100%;
    margin: 0;
    padding: 0;
    font-size: var(--font-size);
}

h1 {
    font-size: 2.5em;
    text-align: center;
    margin: 0px;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 25px;
}
h2 {
    font-size: 2em;
    text-align: center;
    margin-left: 0px;
    margin-right: 0px;
    /* margin-top: 40px; */
}
h3 {
    font-size: 1.5em;
    margin-top: 0px;
}

h4 {
    font-size: 1.3em;
    margin-top: 0px;
}

h5 {
    font-size: 1.1em;
    margin-top: 0px;
}

h6 {
    font-size: 1em;
    margin-top: 0px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Oswald, sans-serif;
    font-weight: 300;
    color: #003063;
}

.align_left {
    float: left;
}

.align_right {
    float: right;
}

a {
    text-decoration: none;
}

.w3-red,
.w3-hover-red:hover {
    color: #fff;
    background-color: #cc0502;
}
.w3-white,
.w3-hover-white:hover {
    color: #333;
    background-color: #fff !important;
}
.w3-white-red,
.w3-hover-white-red:hover {
    color: #cc0502;
    background-color: #fff;
}
.w3-lighter-grey,
.w3-hover-lighter-grey:hover,
.w3-lighter-gray,
.w3-hover-lighter-gray:hover {
    color: #333;
    background-color: #fafafa;
}
.w3-slide-grey {
    background: #fff;
    border: 2px solid #333;
    color: #fff;
}
.w3-slide-black,
.w3-slide-hover-black:hover {
    background: #333;
}
.w3-white-grey,
.w3-hover-white-grey:hover {
    color: #fff;
    background-color: #333;
}

.w3-card-2 {
    box-shadow: 0 4px 2px 0 rgba(0, 0, 0, 0.16), 0 2px 5px 0 rgba(0, 0, 0, 0.12);
}

/*.w3-content{max-width:1570px; padding-left: 10px; padding-right: 10px;}*/
.w3-content {
    max-width: var(--max-container-width);
    padding-left: 10px;
    padding-right: 10px;
}

#content,
#template-home {
    min-height: 80%;
    height: auto;
    padding-top: 160px;
    margin-bottom: 175px;
}

.w3-btn {
    box-shadow: none !important;
    white-space: normal;
}
.w3-btn:focus {
    outline: none !important;
}

/* HEADER */
#menu ul {
    padding: 0px;
}

.header_height {
    height: 45px;
}

.padding_menu {
    padding-top: 0px;
}
.padding_language {
    padding-top: 0px;
    padding-bottom: 10px;
}

.padding_search {
    padding-top: 10px;
}

#filter,
.filter {
    padding: 0px;
}

.filter-box {
    padding-left: 48px;
    padding-right: 16px;
    padding-bottom: 55px;
    margin-right: 16px;
    background-color: #f6f6f6;
    border: 1px solid #ccc;
    margin-top: 8px;
    margin-bottom: 8px;
}

input#site_search {
    height: 40px;
    background-color: white;
    width: 50%;
    position: absolute;
    top: 40px;
    left: 0;
    border: 1px solid #ccc;
    color: #ccc;
}
input#site_search :focus {
    border: 1px solid #ccc;
    outline: 0;
}
:focus {
    outline: 0;
}
input#site_search::placeholder {
    opacity: 1;
}

#site_search_results {
    position: fixed;
    width: 75%;
    border: 1px solid #999;
    padding: 10px;
    max-height: 500px;
    overflow: auto;
    left: 0;
    top: 80px;
}

.hhm_menu {
    fill: #fff;
    position: relative;
    padding: 10px;
}
.w3-bar-block .w3-bar-item {
    padding: 3px 16px;
}

.animate-hide {
    position: relative;
    animation: animatehide 0.4s;
}
@keyframes animatehide {
    from {
        left: 0;
        opacity: 1;
    }
    to {
        left: -300px;
        opacity: 0;
    }
}
.animate-fade {
    position: relative;
    animation: animatefade 0.4s;
}
@keyframes animatefade {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

/* alter Header */
input.hhm-search {
    background: white;
    color: #003063;
    border-width: 1px !important;
    border-color: rgba(2, 31, 28, 0.2) !important;
    border-style: solid !important;
    padding-left: 40px !important;
    font-size: var(--font-size);
    background-image: url(/site/templates/images/tmp/search.png);
    background-position: 10px center;
    background-repeat: no-repeat;
}

.hhm-menu-circle {
    background: #fafafa;
    fill: #cc0502;
    border: 1px dotted #ccc;
    border-radius: 100%;
    height: 45px;
    width: 45px;
    position: relative;
    margin: 0 auto;
    margin-bottom: 8px;
}
.hhm-menu-circle:hover {
    background: #cc0502;
    fill: #fff;
}

.hhm-menu-circle-invert {
    background: #cc0502;
    fill: #fafafa;
    border: 1px dotted #ccc;
    border-radius: 100%;
    height: 45px;
    width: 45px;
    position: relative;
    margin: 0 auto;
    margin-bottom: 8px;
}

.hhm-menu-svg2 {
    height: 20px;
    width: 20px;
    position: absolute;
    left: 10px;
}

.hhm-menu-circle-invert:hover {
    background: #fafafa;
    fill: #cc0502;
}

.hhm-menu-svg {
    height: 20px;
    width: 20px;
    position: absolute;
    top: 11px;
    left: 11px;
}

.hhm-bar-item {
    min-width: 90px;
    text-align: center;
}

.hhm-hover-inherit:hover {
    background-color: transparent !important;
}

.hhm-paragraph-After-Button {
    margin-bottom: 70px;
}
/* alte Header Ende */

/* Content */
.hhm-content-padding {
    padding-top: 64px;
}
.w3-card-2 {
    background: white;
}

.hhm_layer {
    position: absolute;
    top: 70%;
    text-align: center;
    padding: 5px;
    border: 1px solid white;
    border-left: none;
}

.hhm-paragraph {
    margin-bottom: 70px;
}

/* Card */
.hhm-card-padding {
    padding: 16px;
}

.w3-card-2 > .hhm-card-padding,
.w3-card-2 > div > .hhm-card-padding {
    padding: 16px;
}

.hhm-title-padding {
    padding-bottom: 5px;
    padding-top: 5px;
    margin: 0px;
}

.w3-table td {
    padding-top: 4px;
    padding-bottom: 4px;
}

.w3-table tr {
    line-height: 1;
}

.hhm-arrow-padding {
    padding-right: 16px;
    padding-bottom: 10px;
}

.hhm-card-dottedLine {
    border-bottom: 1px solid #ccc;
}

.hhm-card-arrow {
    padding-left: 10px;
    padding-right: 10px;
}

.hhm-card-triangle {
    padding-left: 10px;
    padding-right: 20px;
}
.icon_triangle_down:before {
    content: "\f127";
}

/*Table */
table tr {
    display: table-row;
    border-bottom: 1px solid #ccc;
    background-color: #f6f6f6;
    margin-top: -1px;
    width: 100%;
}

th,
td {
    border-bottom: 1px solid #ccc;
    font-weight: normal;
    text-align: center;
}

td {
    padding: 5px 10px;
}

table {
    border: 1px solid #ccc;
    border-collapse: collapse;
    width: 100%;
    font-size: var(--font-size);
    margin-bottom: 14px;
}

tbody tr:nth-child(even) {
    background-color: #fff;
    color: #333;
}

th {
    border-bottom: 1px solid #ccc;
    background-color: #fff;
    margin-top: -1px;
}

/* Slider */
.w3-badge {
    height: 15px;
    width: 15px;
    padding: 0;
    cursor: pointer;
}

.scrolling-wrapper-flexbox {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px;
}

.cardSlider {
    display: flex;
    flex: 0 0 auto;
    padding-right: 10px;
    max-width: 370px;
}

.hhm-slidebtn-right {
    border-style: solid;
    border-width: 1px 0px 1px 1px;
    border-color: #ccc;
}
.hhm-slidebtn-left {
    border-style: solid;
    border-width: 1px 1px 1px 0px;
    border-color: #ccc;
}

/* Slider Ende */

.btn-default {
    background-color: #cc0502;
    color: #fff;
    padding: 10px 20px;
    text-decoration: none;
    border: none;
    text-align: center;
    display: inline-block;
    margin-bottom: 5px;
}

/** Image Gallery (alte Eventseite) **/
.hhm-img-gallery {
    position: relative;
    overflow: hidden;
}

.hhm-img-gallery .img-prev {
    position: absolute;
    top: calc(50% - 25px);
    left: 0;
    width: 50px;
    height: 50px;
    background-color: rgba(255, 255, 255, 1);
    cursor: pointer;
    display: none;
    color: black;
    font-size: 24px;
    line-height: 43px;
    text-align: center;
}

.hhm-img-gallery .img-prev:hover,
.hhm-img-gallery .img-next:hover {
    background-color: rgba(255, 255, 255, 1);
}

.hhm-img-gallery .img-next {
    position: absolute;
    top: calc(50% - 25px);
    right: 0;
    width: 50px;
    height: 50px;
    background-color: rgba(255, 255, 255, 1);
    cursor: pointer;
    display: none;
    color: black;
    font-size: 24px;
    line-height: 43px;
    text-align: center;
}
/** Effects **/
.animatable {
    transition: all 0.3s;
}
.shrink {
    transform: scale(0);
}
.move {
    transform: translateX(100%);
}
.flip {
    transform: rotate3d(0, 1, 0, 90deg);
}
.flipX {
    transform: rotate3d(1, 0, 0, 90deg);
}
.fade {
    opacity: 0;
}
.blur {
    filter: blur(20px);
}
.fademoveY {
    opacity: 0;
    transform: translateY(80%);
}
/* Alte Eventseite Ende */

/* FLEX */
.flex-item {
    display: flex;
    width: 100%;
    padding: 0 0.5em 15px;
}

.flex-content {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.column_flex {
    flex: 100%;
    max-width: 100%;
    padding: 7px 4px;
}

.row {
    display: flex;
    flex-wrap: wrap;
    padding: 0 4px;
}

.card_half > .w3-half {
    width: 50%;
}

.body_text img {
    width: 100%;
}

#boxlist {
    margin-right: -16px;
    margin-left: -16px;
    float: right;
    margin-top: 13px;
}

.boxlist_extra {
    margin-top: 0px;
}

#filterbox,
.filterbox {
    padding-top: 0px;
}

.left-arrow-pw-embed {
    margin-left: -50px;
}
.right-arrow-pw-embed {
    margin-right: -50px;
}

.bigbutton-facebook {
    padding: 5px 15px;
    background-color: #cc0502;
    color: white;
    display: block;
    max-width: 150px;
    text-align: center;
}
.bigbutton-facebook:before {
    display: inline-block;
    font-family: "Font Awesome 5 Brands";
    font-size: 1em;
    content: "\f082";
    margin-right: 1em;
}
.bigbutton-twitter {
    padding: 5px 15px;
    background-color: #cc0502;
    color: white;
    display: block;
    max-width: 150px;
    text-align: center;
}
.bigbutton-twitter:before {
    display: inline-block;
    font-family: "Font Awesome 5 Brands";
    font-size: 1em;
    content: "\f081";
    margin-right: 1em;
}
.bigbutton-linkedin {
    padding: 5px 15px;
    background-color: #cc0502;
    color: white;
    display: block;
    max-width: 150px;
    text-align: center;
}
.bigbutton-linkedin:before {
    display: inline-block;
    font-family: "Font Awesome 5 Brands";
    font-size: 1em;
    content: "\f08c";
    margin-right: 1em;
}
.bigbutton-instagram {
    padding: 5px 15px;
    background-color: #cc0502;
    color: white;
    display: block;
    max-width: 150px;
    text-align: center;
}
.bigbutton-instagram:before {
    display: inline-block;
    font-family: "Font Awesome 5 Brands";
    font-size: 1em;
    content: "\f16d";
    margin-right: 1em;
}
.bigbutton-download {
    padding: 5px 15px;
    background-color: #cc0502;
    color: white;
    display: block;
    max-width: 200px;
    text-align: center;
}
.bigbutton-download:before {
    display: inline-block;
    font-family: "Font Awesome 5 Pro";
    font-size: 1em;
    content: "\f019";
    margin-right: 1em;
}

.w3-content p {
    margin: 0;
    margin-top: 10px;
    letter-spacing: 0.05em;
}

.w3-content .anchor_card p {
    margin: 0;
}

ul {
    list-style-type: disc;
    padding-left: 16px;
}

.arrow_slider {
    cursor: pointer;
    width: auto;
    padding: 16px;
    color: #ccc;
    font-weight: bold;
    font-size: 20px;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
    user-select: none;
    -webkit-user-select: none;
}

@media (min-width: 769px) {
    .w3-content {
        padding-right: 25px;
        padding-left: 25px;
    }

    .flex-item {
        width: 50%;
    }

    .fifth > .flex-item,
    .flex-item.fifth {
        width: 50%;
    }

    .quarter > .flex-item,
    .flex-item.quarter {
        width: 50%;
    }

    .third > .flex-item,
    .flex-item.third {
        width: 50%;
    }

    .half > .flex-item,
    .flex-item.half {
        width: 100%;
    }

    .company_detail .flex-item.half,
    .company_detail .half > .flex-item {
        width: 50%;
    }

    .twothird > .flex-item,
    .flex-item.twothird {
        width: 100%;
    }

    .threequarter > .flex-item,
    .flex-item.threequarter {
        width: 100%;
    }

    .fourfifth > .flex-item,
    .flex-item.fourfifth {
        width: 100%;
    }

    .full > .flex-item,
    .flex-item.full {
        width: 100%;
    }

    .column_flex {
        flex: 50%;
        max-width: 50%;
    }

    .body_text {
        margin-left: 150px;
        margin-right: 150px;
    }
}
@media (max-width: 993px) {
    .flex-content .w3-rest {
        clear: both;
    }
}

@media (min-width: 993px) {
    .fifth > .flex-item,
    .flex-item.fifth {
        width: 20%;
    }

    .third > .flex-item,
    .flex-item.third {
        width: 33.33%;
    }

    .half > .flex-item,
    .flex-item.half {
        width: 50%;
    }

    .twothird > .flex-item,
    .flex-item.twothird {
        width: 66%;
    }

    .threequarter > .flex-item,
    .flex-item.threequarter {
        width: 75%;
    }

    .fourfifth > .flex-item,
    .flex-item.fourfifth {
        width: 80%;
    }

    .full > .flex-item,
    .flex-item.full {
        width: 100%;
    }
    .quarter > .flex-item,
    .flex-item.quarter {
        width: 25%;
    }

    .column_flex {
        flex: 25%;
        max-width: 25%;
    }

    body,
    html {
        font-size: var(--font-size);
    }

    .body_text {
        margin-left: 150px;
        margin-right: 150px;
    }

    .boxlist_extra {
        margin-top: -40px;
    }

    #filterbox,
    .filterbox {
        padding-top: 12px;
    }

    h1 {
        font-size: 4.5em;
        text-align: center;
        margin: 0px;
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 25px;
    }
    h2 {
        font-size: 2.75em;
        text-align: center;
        margin-left: 0px;
        margin-right: 0px;
        /* margin-top: 40px; */
    }
    h3 {
        font-size: 1.5em;
        margin-top: 0px;
    }

    h4 {
        font-size: 1.3em;
        margin-top: 0px;
    }

    h5 {
        font-size: 1.1em;
        margin-top: 0px;
    }

    h6 {
        font-size: 1em;
        margin-top: 0px;
    }
}

/* Detailansicht */
/*.details {
      -webkit-column-count: 3; /* Chrome, Safari, Opera */
/*    -moz-column-count: 3; /* Firefox */
/*    column-count: 3;
    -webkit-column-gap: 10px; /* Chrome, Safari, Opera */
/*    -moz-column-gap: 10px; /* Firefox */
/*    column-gap: 10px;
}*/

/*MEDIA*/
@media screen and (min-width: 1023px) {
    /* hide the Scrollbar (Slider) at large */
    .scrolling-wrapper-flexbox {
        overflow-x: hidden;
    }

    .content-HeaderImg {
        margin-top: 160px;
    }

    .header_height {
        height: 60px;
    }
    .padding_menu {
        padding-top: 12px;
    }
    .padding_language {
        margin-bottom: 5px;
        padding-top: 12px;
        margin-left: 8px;
    }
    .padding_search {
        padding-top: 12px;
        margin-left: 8px;
    }
    input#site_search {
        border: none;
        background-color: rgba(102, 102, 102, 0.2);
        color: #fff;
        font-size: var(--font-size);
        width: 70%;
        margin-left: 10px;
        padding-left: 10px;
        position: static;
    }
    #site_search_results {
        top: 60px;
    }

    #site_search {
        position: fixed;
        width: 25%;
        border: 1px solid #999;
        padding: 10px;
        max-height: 500px;
        overflow: auto;
    }
}
@media screen and (max-width: 1023px) {
    .left-arrow-pw-embed {
        margin-left: -30px;
    }
    .right-arrow-pw-embed {
        margin-right: -30px;
    }
    .full-on-small {
        width: 100% !important;
    }
    .w3-half,
    .w3-third {
        width: 100%;
    }
    .hhm-half-padding {
        padding: 0px !important;
    }
    /* cards (Slider) at medium and small */
    .cardInfos {
        width: 300px;
    }
    /* hide the Dots (Slider) at medium and small */
    .dotsInfos,
    .dotsShip,
    .dotsDate,
    .dotsLink {
        display: none;
    }

    .news-detail-half:first-child {
        padding-right: 8px;
    }
    .news-detail-half:not(:first-child) {
        padding-left: 8px;
    }
    .site_search_wrapper {
        display: none !important;
    }
}

.ui-datepicker table {
    display: table;
}

.ui-datepicker tr {
    display: table-row;
}

.ui-datepicker td {
    display: table-cell;
}

.ui-widget-header {
    background: #bababa !important;
    border: 1px solid #bababa !important;
}

a .ui-state-default {
    color: #333 !important;
}

.ui-state-hover .ui.icon {
    background-image: none !important;
}

.svg-btn {
    background-color: white;
    border: 1px solid #cc0502;
    color: #cc0502;
    height: 30px;
    font-size: var(--font-size);
    cursor: pointer;
    position: relative;
    padding: 0 10px 0 40px;
    margin-bottom: 10px;
}

.svg-btn:hover {
    background-color: #cc0502;
    color: white;
}

.svg-btn i {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    width: 28px;
    height: 28px;
    background-color: #cc0502;
    color: white;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

.LoginRegisterProLoginPass {
    width: 100%;
}

ul.LoginRegisterLinks {
    color: white;
}

ul.LoginRegisterLinks li {
    margin: 0 10px 8px;
    list-style: none;
    display: inline-block;
    background-color: white;
    border: 1px solid #cc0502;
    color: #cc0502;
    height: 30px;
    line-height: 28px;
    font-family: Oswald;
    font-size: var(--font-size);
    cursor: pointer;
    position: relative;
    padding: 0 10px 0 40px;
}

ul.LoginRegisterLinks li:hover {
    background-color: #cc0502;
}
ul.LoginRegisterLinks li:hover a {
    color: white;
}

ul.LoginRegisterLinks li:before {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    width: 28px;
    height: 28px;
    background-color: #cc0502;
    color: white;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    content: "";
}

ul.LoginRegisterLinks li.LoginRegisterLinksProfile:before {
    background-image: url(/site/templates/images/id-card-light.svg);
}
ul.LoginRegisterLinks li.LoginRegisterLinksLogout:before {
    background-image: url(/site/templates/images/sign-out-light.svg);
}

.pw-edit,
.pw-edit-modal {
    cursor: pointer !important;
    user-select: none;
}
/* 
.pw-edit:hover,
.pw-edit-modal:hover {
    background-color: #f5f5f5;
} */

blockquote {
    font-style: italic;
    font-family: Georgia, Times, "Times New Roman", serif;
    margin-left: 0;
    border-style: solid;
    border-color: #ccc;
    border-width: 0;
    padding: 2px 8px 2px 8px;
    /* border-left-width: 5px; */
    margin-left: 0;
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0; /* 40px;*/
    /* margin-inline-end: 40px; */
}

.pw-modal-window.ui-dialog-content.ui-widget-content {
    min-width: 100%;
}

.zoom {
    overflow: hidden;
    display: block;
}
.zoom img {
    transition: transform 0.3s;
    width: 100%;
}
.zoom:hover img {
    transform: scale(1.1);
}

.lg-sub-html {
    background: rgba(0, 0, 0, 0.7);
}

.larger-text {
    font-size: 1.2em;
}

.hhm-internal {
    --bg-col-light: #f2f2f2;
    --bg-col-light-alpha: rgba(242, 242, 242, 0.7);
    --bg-col-dark: #000;
    --font-col-light: #fff;
    --font-col-dark: #333;
    --col-yellow: #ddc806;
    --bg-col-tint: #ddcbdd;
    --border-light: #ccc;
    --border-dark: #999;
    --primary-col: #b12f95;
    background: repeating-linear-gradient(-45deg, var(--col-yellow), var(--col-yellow) 10px, var(--font-col-dark) 10px, var(--font-col-dark) 20px);
    color: var(--text-color);
    /* text-shadow: 1px 1px 1px #000, -1px -1px 1px #000, 1px -1px 1px #000, -1px 1px 1px #000; */
}

.hhm-internal h1,
.hhm-internal h2,
.hhm-internal h3,
.hhm-internal h4,
.hhm-internal h5,
.hhm-internal h6 {
    color: white;
    padding-inline: 16px;
    text-shadow: none;
}
