:root {
    --hf-primary-highlight-color: #aa0a2f;
    --hf-primary-text-color: #333333;
}

body {
    font-family: "PT Sans", Arial, sans-serif;
    color: var(--hf-primary-text-color) !important;
    line-height: 1;
}

a {
    color: inherit !important;
}

.font-sans {
    font-family: "PT Sans", Arial, sans-serif;
}
.font-serif {
    font-family: "PT Serif", "Times New Roman", serif
}
.font-narrow {
    font-family: "PT Sans Narrow", Arial, sans-serif;
}

.ls-normal {
    letter-spacing: normal !important;
}

.ls-inherit {
    letter-spacing: inherit !important;
}

.ls-tight {
    letter-spacing: -0.125rem !important;
}

.ls-lg {
    letter-spacing: 0.125rem !important;
}

.ls-xl {
    letter-spacing: 0.25rem !important;
}
/* Line-Height */

.lh-sm {
    line-height: 1.5 !important;
}
.lh-md {
    line-height: 1.75 !important;
}

/* Font-Size */

.fs-xs {
    font-size: 0.875rem !important;
}

.fs-sm {
    font-size: 0.9375rem !important;
}

.fs-md {
    font-size: 1rem !important;
}

.fs-lg {
    font-size: 1.25rem !important;
}

.fs-xl {
    font-size: 1.5rem !important;
}
.fs-xxl {
    font-size: 1.75rem !important;
}

.text-muted {
    color: #c0c0c0 !important;
}

.hf-link {
    text-decoration: none;
    border-bottom:4px solid #f2f1f0;
    transition: border-color 0.15s ease-in-out;
}
.hf-link:hover {
    border-color: var(--hf-primary-highlight-color);
}
.hf-link.active {
    border-color: var(--hf-primary-highlight-color);
}
.hf-link.disabled {
    border-bottom:4px solid #f2f1f0;
    color: #c0c0c0;
}


.table-rows-border-bottom tr > td {border-bottom: 1px solid #f2f1f0;}
.table-last-row-border-bottom-0 tr:last-child > td {border-bottom: 0 none;}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
p, ul > li, ol > li {
    margin-bottom:0;
    //line-height: 125%;
}

h1 + h2,
h2 + h3,
h3 + h4,
h4 + h5,
h5 + h6,
h1 + p,
h2 + p,
h3 + p,
h4 + p,
h5 + p,
h6 + p,
p + p,
ul + h1,
ul + h2,
ul + h3,
ul + h4,
ul + h5,
ul + h6,
ul + p,
ol + h1,
ol + h2,
ol + h3,
ol + h4,
ol + h5,
ol + h6,
ol + p
{
    margin-top: 1.25rem;
}
h1 + ul,
h2 + ul,
h3 + ul,
h4 + ul,
h5 + ul,
h6 + ul,
h1 + ol,
h2 + ol,
h3 + ol,
h4 + ol,
h5 + ol,
h6 + ol,
p + ul,
p + ol,
ul + ul,
ul + ol,
ol + ol,
ol + ul
{
    margin-top: 1.25rem;
}
h1 + ul > li,
h2 + ul > li,
h3 + ul > li,
h4 + ul > li,
h5 + ul > li,
h6 + ul > li,
h1 + ol > li,
h2 + ol > li,
h3 + ol > li,
h4 + ol > li,
h5 + ol > li,
h6 + ol > li,
p + ul > li,
p + ol > li,
ul + ul > li,
ul + ol > li,
ol + ol > li,
ol + ul > li
{
    margin-top: 0.625rem;
}

.text-xs {font-size: 0.75rem}
.text-md {font-size: 1rem}
.text-lg {font-size: 1.25rem}
.text-xl {font-size: 1.75rem}
.text-xxl {font-size: 2.5rem}

/**/

.hf-note {
    font-family: "PT Sans Narrow", Arial, sans-serif !important;
    color: #c0c0c0 !important;
}

.form-control{display:block;width:100%;padding:0.875rem 1.5rem;font-size:1rem;font-weight:400;line-height:1.5;color:#1f1f1f;background-color:#fff;background-clip:border-box;border:1px solid #e5e5e5;appearance:none;border-radius:0;transition:all 0.1s ease-in-out;-webkit-appearance:none;-moz-appearance:none;box-shadow:0 0;transition-property:border;}
.form-control[type=file]{overflow:hidden;}
.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer;}
.form-control:focus{color:#1f1f1f;background-color:#fff;border-color:#1f1f1f;outline:0;box-shadow:0 0,0 0;}
.form-control::-webkit-date-and-time-value{height:1.5em;}
.form-control::placeholder{color:#767676;opacity:1;}
.form-control:disabled{background-color:#e9ecef;opacity:1;}
.form-control::file-selector-button{padding:0.875rem 1.5rem;margin:-0.875rem -1.5rem;margin-inline-end:1.5rem;color:#1f1f1f;background-color:#fff;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;-webkit-margin-end:1.5rem;border:0 solid;}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#f2f2f2;}
.form-control-plaintext{display:block;width:100%;padding:0.875rem 0;margin-bottom:0;line-height:1.5;color:#1f1f1f;background-color:transparent;border:solid transparent;border-width:1px 0;}
.form-control-plaintext:focus{outline:0;}
.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0;}
.form-control-sm{min-height:calc(1.5em + 1.625rem + 2px);padding:0.8125rem 1.25rem;font-size:0.9375rem;border-radius:0.25rem;}
.form-control-sm::file-selector-button{padding:0.8125rem 1.25rem;margin:-0.8125rem -1.25rem;margin-inline-end:1.25rem;-webkit-margin-end:1.25rem;}
.form-control-lg{min-height:calc(1.5em + 2.125rem + 2px);padding:1.0625rem 1.875rem;font-size:1rem;border-radius:0.5rem;}
.form-control-lg::file-selector-button{padding:1.0625rem 1.875rem;margin:-1.0625rem -1.875rem;margin-inline-end:1.875rem;-webkit-margin-end:1.875rem;}
textarea.form-control{min-height:calc(1.5em + 1.75rem + 2px);}
textarea.form-control-sm{min-height:calc(1.5em + 1.625rem + 2px);}
textarea.form-control-lg{min-height:calc(1.5em + 2.125rem + 2px);}
.form-control-color{width:3rem;height:auto;padding:0.875rem;}
.form-control-color:not(:disabled):not([readonly]){cursor:pointer;}
.form-control-color::-moz-color-swatch{border:0 !important;border-radius:0.375rem;height:1.5em;}
.form-control-color::-webkit-color-swatch{border-radius:0.375rem;height:1.5em;}
.form-control-color.form-control-sm{height:calc(1.5em + 0.5rem + 2px);}
.form-control-color.form-control-lg{height:calc(1.5em + 1rem + 2px);}

.form-group {margin-bottom:1.5rem;}
.form-group-overflow{max-height:250px;overflow:hidden;}

.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%;}
.input-group > .form-control,.input-group > .form-select,.input-group > .form-floating{position:relative;flex:1 1 auto;width:1%;min-width:0;}
.input-group > .form-control:focus,.input-group > .form-select:focus,.input-group > .form-floating:focus-within{z-index:5;}
.input-group .btn{position:relative;z-index:2;}
.input-group .btn:focus{z-index:3;}
.input-group-text{display:flex;align-items:center;padding:0.875rem 1.5rem;font-size:1rem;font-weight:400;line-height:1.5;color:#767676;text-align:center;white-space:nowrap;background-color:#fff;border:1px solid #e5e5e5;border-radius:0.375rem;}
.input-group-lg > .form-control,.input-group-lg > .form-select,.input-group-lg > .input-group-text,.input-group-lg > .btn{padding:0.5rem 1rem;font-size:1.25rem;border-radius:0.5rem;}
.input-group-sm > .form-control,.input-group-sm > .form-select,.input-group-sm > .input-group-text,.input-group-sm > .btn{padding:0.25rem 0.5rem;font-size:0.875rem;border-radius:0.25rem;}
.input-group-lg > .form-select,.input-group-sm > .form-select{padding-right:6rem;}
.input-group:not(.has-validation) >:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select{border-top-right-radius:0;border-bottom-right-radius:0;}
.input-group.has-validation >:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select{border-top-right-radius:0;border-bottom-right-radius:0;}
.input-group >:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0;}
.input-group > .form-floating:not(:first-child) > .form-control,.input-group > .form-floating:not(:first-child) > .form-select{border-top-left-radius:0;border-bottom-left-radius:0;}

.input-group-merge .form-control{border-right-width:0;}
.input-group-merge .input-group-append > *{border-left-width:0;transition:all 0.1s ease-in-out;transition-property:border;}
.input-group-merge .form-control ~ .input-group-append > *{border-color:#e5e5e5 !important;}
.input-group-merge .form-control:focus ~ .input-group-append > *{border-color:#1f1f1f !important;}
.input-group-merge .form-control-light:focus ~ .input-group-append > *,.input-group-merge .form-control-light ~ .input-group-append > *{border-color:#fff !important;}
.input-group .form-control-sm ~ .input-group-append .input-group-text{font-size:0.9375rem;padding:0.8125rem 1.25rem;}

.input-group-merge .input-group-append > .btn{
    height: calc(3.25rem + 2px);
    padding-left: 0;
    padding-right: 1.5rem;
}

[type="checkbox"].hf-check {
    position: relative;
    left: 15px;
    top: -4px;
    z-index: 0;
    -webkit-appearance: none;
}
[type="checkbox"].hf-check + label {
    position: absolute;
}
[type="checkbox"].hf-check.disabled + label
{
    color: #c0c0c0;
}
[type="checkbox"].hf-check + label::before {
    width: 16px;
    height: 16px;
    border-radius: 0;
    border: 2px solid #c0c0c0;
    background-color: #fff;
    display: block;
    content: "";
    float: left;
    margin-right: 6px;
    z-index: 5;
    position: relative;
    transition: all 0.25s ease-in-out;
}
[type="checkbox"].hf-check:checked + label::before {
    //border: 2px solid var(--hf-primary-highlight-color);
    //box-shadow: inset 0 0 0 1px #fff;
    background-color: var(--hf-primary-highlight-color);
}
[type="checkbox"].hf-check.disabled + label::before
{
    border-color: #f2f1f0;
}

.hf-overlay {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100vh;
}


/* Anpassung Bootstrap */


.offcanvas {
    //max-width: 85%;
}

.offcanvas.offcanvas-start {
    //right: 48px;
}

.text-muted {
    color: #757575 !important;
}

.border,
.border-top,
.border-right,
.border-bottom,
.border-left {
    border-color: #f2f1f0;
}

.table-striped > tbody > tr:nth-of-type(2n+1) > * {
    background-color: #f2f1f0 !important;
    box-shadow: none !important;
}

table.border-0 tr td,
table.border-0 tr th {
    border: 0 none !important;
}

.btn {
    border-radius: 0;
    box-shadow: none;
}
.btn-primary {
    background-color: var(--hf-primary-highlight-color) !important;
    border-color: var(--hf-primary-highlight-color) !important;
    color: #ffffff !important;
}

.btn-primary:hover {
    color: #ffffff !important;
    background-color: #860825 !important;
    border-color: #860825 !important;
}
.btn-primary:focus-visible {
    color: #ffffff !important;
    background-color: #860825 !important;
    border-color: #860825 !important;
}

.btn-primary.disabled {
    color: #ffffff !important;
    background-color: #d80c3b !important;
    border-color: #d80c3b !important;
}

.btn-light {
    background-color: #f2f1f0 !important;
    border-color: #f2f1f0 !important;
    color: var(--hf-primary-text-color) !important;
}

.btn-light:hover {
    color: var(--hf-primary-text-color) !important;
    background-color: #e2e1e0 !important;
    border-color: #e2e1e0 !important;
}
.btn-light:focus-visible {
    color: var(--hf-primary-text-color) !important;
    background-color: #e2e1e0 !important;
    border-color: #e2e1e0 !important;
}
.btn-light.disabled {
    color: #c0c0c0 !important;
}

svg {
    position:relative;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.nav-overflow {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 1px;
}

.nav-tabs {
    //border-bottom: 1px solid #f2f1f0 !important;
}

.nav-tabs > .nav-link {
    border-radius: 0 !important;
    margin-bottom: 0 !important;
    border: 0 none !important;
    padding: 0 0 1.25rem 0 !important;
    color: #757575 !important;
    border-bottom: 4px solid #f2f1f0 !important;
    margin-left: 1rem;
}
.nav-tabs > .nav-link:first-child {
    margin-left: 0;
}
.nav-tabs > .nav-link:hover {
    border-bottom: 4px solid var(--hf-primary-highlight-color) !important;
    //color: #333333 !important;
}
.nav-tabs > .nav-link.active {
    border-bottom: 4px solid var(--hf-primary-highlight-color) !important;
    color: #333333 !important;
}

.hf-collapse-icon {
    transition: .3s transform ease-in-out;
}

.collapsed .hf-collapse-icon {
    transform: rotate(-180deg);
}



/* Anpassung Flickity */

.flickity-prev-next-button {
    border-radius: 0 !important;
    transition: opacity 0.25s ease-in-out;
}

.flickity-nav .flickity-slider img {
    opacity: 0.25;
}

.flickity-nav .flickity-slider .is-selected img {
    opacity: 1;
}

.flickity-enabled > .flickity-prev-next-button {
    opacity:0;
}
.flickity-enabled:hover > .flickity-prev-next-button {
    opacity:1;
}

/* Anpassung BigPicture */

#bp_container {
    background: rgba(0,0,0,.75) !important;
}

#bp_aud, #bp_container img, #bp_sv, #bp_vid {
    //box-shadow: 0 0 .25rem rgba(0,0,0,.25) !important;
    box-shadow: none !important;
}

#bp_container > .bp-x {
    border-radius: 0 !important;
}

/* SM */

@media (min-width: 576px) {

    .border-bottom-sm {
        border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    }

    .border-bottom-sm-0 {
        border-bottom: 0 !important;
    }

}

/* MD */

@media (min-width: 768px) {

    .border-bottom-md {
        border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    }

    .border-bottom-md-0 {
        border-bottom: 0 !important;
    }

}

/* LG */

@media (min-width: 992px) {

    .border-bottom-lg {
        border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    }

    .border-bottom-lg-0 {
        border-bottom: 0 !important;
    }

}

/* XL */

@media (min-width: 1200px) {

    .border-bottom-xl {
        border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    }

    .border-bottom-xl-0 {
        border-bottom: 0 !important;
    }

}

/* XXL */

@media (min-width: 1400px) {

    .border-bottom-xxl {
        border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    }

    .border-bottom-xxl-0 {
        border-bottom: 0 !important;
    }

}


