/** @license CookiesJSR 2.0.4
 * file: cookiesjsr.min.css
 *
 * Copyright (c) 2024 Joachim Feltkamp, Hamburg, Germany.
 *
 * This source code is licensed under the GPL-3.0-or-later license found in the
 * LICENSE.txt file in the root directory of this source tree.
 *
 * GNU General Public License, version 3 or later
 * https://www.gnu.org/licenses/gpl-3.0.html
 */
.cookiesjsr-btn {
    cursor: pointer;
    font: inherit;
    width: calc(100% - 2.5em);
    text-transform: uppercase;
    font-size: .85em;
    padding: 0;
    text-decoration: none;
    white-space: nowrap;
    margin: .625em;
    opacity: .95;
    transform: scale(1);
    transition: all .3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    color: var(--btn-font-color, #FFF);
    border: 2px solid var(--btn-border-color, #FFF);
    background-color: var(--btn-bg-color, #4c4c4c)
}

@media (min-width: 576px) {
    .cookiesjsr-btn {
        min-height: 35px;
    }
}

.cookiesjsr-btn:hover {
    opacity: 1;
    transform: scale(1.02)
}

.cookiesjsr-btn.invert {
    color: var(--btn-inv-font-color, #4c4c4c);
    border-color: var(--btn-inv-border-color, #4c4c4c);
    background-color: var(--btn-inv-bg-color, #FFF)
}

.cookiesjsr-btn.important {
    color: var(--btn-prime-font-color, #4c4c4c);
    border-color: var(--btn-prime-border-color, #FFF);
    background-color: var(--btn-prime-bg-color, #FFF)
}

.cookiesjsr-btn.important.invert {
    color: var(--btn-prime-inv-font-color, #FFF);
    border-color: var(--btn-prime-inv-border-color, #4c4c4c);
    background-color: var(--btn-prime-inv-bg-color, #4c4c4c)
}

.cookiesjsr-links {
    list-style: none;
    margin: 0 -.75em;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: left;
    align-items: center
}

.cookiesjsr-links.links--row li {
    margin: 0;
    padding-left: .75em;
    padding-right: .75em;
    position: relative
}

.cookiesjsr-links.links--row li a {
    margin: 0;
    padding: 0;
    line-height: 2em;
    display: inline-block
}

.cookiesjsr-links.links--row li:last-child:before {
    content: none
}

.cookiesjsr-links.links--row li:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: .3em;
    height: .3em;
    background-color: var(--link-list-separator-color, #FFF);
    transform: translate(50%,-40%)
}

.cookiesjsr-btn.denyAll {
    white-space: wrap
}

@media (min-width: 1200px) {
    .cookiesjsr-btn.denyAll {
        display:inline-block
    }
}

.cookiesjsr-switch {
    position: relative;
    margin: 0;
    padding: 0;
    display: block;
    width: var(--switch-width, 45px);
    height: var(--switch-height, 20px);
    border-radius: var(--switch-height, 20px);
    background-color: var(--switch-bg-off, #FFF);
    cursor: pointer;
    box-shadow: inset -1px 2px 1px #00000040;
    border: 0;
    transition: background-color .1s ease-in-out
}

.cookiesjsr-switch:focus-within:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    border: 1px dotted #eee;
    transform: scale(1.4)
}

.cookiesjsr-switch:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: var(--switch-height, 20px);
    height: var(--switch-height, 20px);
    border-radius: var(--switch-height, 20px);
    transform: scale(1.2);
    background-color: var(--switch-handle-color, #FFF);
    border: 1px solid var(--switch-border-color, #e4e5e6);
    transition: left .1s ease-in-out;
    box-shadow: -1px 2px 1px #00000040
}

.cookiesjsr-switch.active {
    background-color: var(--switch-bg-on, #00AA00)
}

.cookiesjsr-switch.active:after {
    left: 25px
}

.cookiesjsr-switch input[type=checkbox] {
    position: absolute;
    opacity: 0
}

.cookiesjsr-banner {
    position: fixed;
    z-index: 100;
    right: 1em;
    bottom: 1em;
    width: 420px;
    height: auto;
    max-width: calc(100vw - 2em);
    max-height: calc(100vh - 2em);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    box-shadow: var(--banner-box-shadow, 1px 1px 6px 4px rgba(0, 0, 0, .2));
    padding: 1em;
    background-color: var(--banner-bg-color, #4c4c4c);
    color: var(--banner-font-color, #FFF);
    overflow: auto;
    transform: translateY(100%);
    transition: transform .3s ease-in-out
}

.cookiesjsr-banner.active {
    transform: translateY(0)
}

.cookiesjsr-banner a {
    color: var(--link-list-font-color, #FFF)
}

.cookiesjsr-banner--info,.cookiesjsr-banner--action {
    width: 100%
}

.cookiesjsr-banner--info {
    margin-bottom: var(--default-margin, 1.25em);
    max-height: calc(100vh - 100px - 2.5em);
    /* overflow: auto; */
}

.cookiesjsr-banner--links {
    margin-top: .5em;
    font-size: .85em;
}

.cookiesjsr-banner--action {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0
}

.cookiesjsr-banner button.cookiesjsr-settings,.cookiesjsr-banner button.denyAll,.cookiesjsr-banner button.allowAll {
    display: inline-block;
    white-space: wrap;
    width: auto;
    padding: 0 .5em
}

.cookiesjsr-service-groups {
    position: static!important;
    display: block;
    max-height: 100%;
    overflow: auto;
    list-style: none;
    margin: 0 0 -1px!important;
    padding: 0!important
}

.cookiesjsr-service-group {
    position: static!important;
    line-height: 1.5em;
    list-style: none
}

.cookiesjsr-service-group--tab {
    min-height: 3em;
    padding: 1em var(--default-margin, 1.25em);
    display: block;
    width: 100%;
    text-decoration: none;
    text-align: left;
    cursor: pointer;
    font-weight: 700;
    margin: 0;
    border: 0;
    color: var(--layer-tab-font-color, #2a2a2a);
    background: var(--layer-tab-bg-color, #FFF);
    border-bottom: 1px solid var(--layer-border-color, #e4e5e6);
    -webkit-appearance: none;
    -moz-appearance: none
}

.cookiesjsr-service-group--tab:last-child {
    border-bottom: 0
}

@media (min-width: 768px) {
    .cookiesjsr-service-group--tab {
        padding:1em 3.25em 1em 1.25em;
        width: calc(30% + 2em)
    }
}

.cookiesjsr-service-group--content {
    display: none
}

@media (min-width: 768px) {
    .cookiesjsr-service-group--content {
        position:absolute;
        width: 70%;
        height: 100%;
        overflow: auto;
        right: 0;
        top: 0
    }
}

.cookiesjsr-service-group--intro {
    padding: 1em var(--default-margin, 1.25em)
}

.cookiesjsr-service-group.active .cookiesjsr-service-group--tab {
    color: var(--layer-tab-active-font-color, #FFF);
    background: var(--layer-tab-active-bg-color, #4c4c4c);
    border-bottom: 0 none
}

.cookiesjsr-service-group.active .cookiesjsr-service-group--content {
    display: block;
    color: var(--layer-tab-active-font-color, #FFF);
    background: var(--layer-tab-active-bg-color, #4c4c4c);
    font-weight: 500
}

.cookiesjsr-service-group--services {
    margin: 0!important;
    padding: 0!important
}

.cookiesjsr-service {
    display: flex;
    align-items: center;
    background-color: #e4e5e600;
    transition: background-color .3s ease
}

.cookiesjsr-service:hover {
    background-color: #e4e5e61a
}

.cookiesjsr-service--description {
    padding: .625em 1.25em;
    width: calc(100% - 2.5em - 45px)
}

.cookiesjsr-service--description h3 {
    margin: 0;
    font-size: 1.125em;
    font-weight: 400;
    color: var(--layer-font-light, #FFF)
}

.cookiesjsr-service--links a {
    color: var(--layer-font-light, #FFF);
    font-size: .75em
}

.cookiesjsr-service--links a:hover,.cookiesjsr-service--links a:active,.cookiesjsr-service--links a:visited {
    color: var(--layer-font-light, #FFF)
}

.cookiesjsr-service--action {
    padding: .625em 1.25em;
    width: calc(2.5em + 45px)
}

.cookiesjsr-service--always-on {
    color: var(--switch-always-on-font-color, #00AA00);
    text-align: right;
    display: flex;
    justify-content: flex-end;
    white-space: nowrap
}

.cookiesjsr-service--always-on span {
    background-color: var(--switch-always-on-bg-color, #FFF);
    padding: 0 .5em
}

.cookiesjsr-layer {
    display: block;
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    background: var(--layer-header-bg-color, #FFF);
    box-shadow: var(--banner-box-shadow, 1px 1px 6px 4px rgba(0, 0, 0, .2));
    height: 100vh;
    width: 100vw;
    max-width: 100%;
    z-index: 314160;
    padding: var(--layer-header-height, 3.5em) 0 var(--layer-footer-height, 4.5em);
    overflow: hidden;
    line-height: 1.5em
}

@media (min-height: 668px) {
    .cookiesjsr-layer {
        height:80vh;
        max-height: 575px
    }
}

@media (min-height: 992px) {
    .cookiesjsr-layer {
        height:60vh
    }
}

@media (min-width: 768px) {
    .cookiesjsr-layer {
        width:860px
    }
}

.cookiesjsr-layer--overlay {
    position: fixed;
    z-index: 314159;
    height: 100vh;
    width: 100vw;
    left: 0;
    top: 0;
    background: #0006;
    border: 0
}

.cookiesjsr-layer--header {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 100;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #fff;
    margin: 0;
    background: var(--layer-header-bg-color, #FFF);
    padding: 0 var(--default-margin, 1.25em);
    border-bottom: 1px solid var(--layer-border-color, #e4e5e6);
    height: 3.5em
}

.cookiesjsr-layer--title {
    color: var(--layer-header-font-color, #272727);
    text-transform: uppercase
}

.cookiesjsr-layer--close {
    z-index: 102;
    width: 1em;
    height: 1em;
    background: transparent url("data:image/svg+xml,%0A%3Csvg width='27px' height='27px' viewBox='0 0 27 27' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Welcome' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='tarte-close' transform='translate(-1264.000000, -2628.000000)' fill='%23000f37'%3E%3Cg id='Group-2' transform='translate(155.000000, 2591.000000)'%3E%3Cg id='Group-3-Copy-2'%3E%3Cpolygon id='Page-1' points='1133.26296 37 1122.50065 47.762319 1111.73704 37 1109 39.7370358 1119.76361 50.5006452 1109 61.2629642 1111.73704 64 1122.50065 53.2363906 1133.26296 64 1136 61.2629642 1125.23768 50.5006452 1136 39.7370358'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center scroll;
    background-size: contain;
    text-indent: -999em;
    overflow: hidden;
    border: 0;
    cursor: pointer;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none
}

.cookiesjsr-layer--body {
    position: absolute;
    left: 0;
    right: 0;
    background: var(--layer-body-bg-color, #FFF);
    top: var(--layer-header-height, 3.5em);
    bottom: var(--layer-footer-height, 4.5em)
}

.cookiesjsr-layer--footer {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0 var(--default-margin, 1.25em);
    height: var(--layer-footer-height, 4.5em);
    display: flex;
    justify-content: flex-end;
    align-items: center;
    background: var(--layer-footer-bg-color, #FFF);
    border-top: 1px solid var(--layer-border-color, #e4e5e6)
}

@media (min-width: 768px) {
    .cookiesjsr-layer--footer {
        justify-content:space-between
    }
}

.cookiesjsr-layer--label-all {
    color: var(--layer-footer-font-color, #373737);
    display: none
}

@media (min-width: 768px) {
    .cookiesjsr-layer--label-all {
        display:block;
        width: 30%;
        padding-right: var(--default-margin, 1.25em)
    }
}

.cookiesjsr-layer--actions {
    display: flex;
    align-items: center;
    margin: 0 -.625em;
    width: calc(100% + 1.25em)
}

@media (min-width: 768px) {
    .cookiesjsr-layer--actions {
        width:calc(70% + .625em)
    }
}

.cookiesjsr-layer button.denyAll,.cookiesjsr-layer button.allowAll {
    white-space: wrap
}

@media (min-width: 576px) {
    .cookiesjsr-layer button.denyAll,.cookiesjsr-layer button.allowAll {
        display:inline-block
    }
}

@media (max-width: 576px) {
    .cookiesjsr-layer button.save {
        padding:0 2em;
        width: auto;
        margin-left: auto
    }
}

#cookiesjsr {
    z-index: 100;
    --default-margin: 1.25em;
    --font-size-reset: 1.4rem;
    --btn-font-color: #FFF;
    --btn-border-color: #FFF;
    --btn-bg-color: #4c4c4c;
    --btn-prime-font-color: #4c4c4c;
    --btn-prime-border-color: #FFF;
    --btn-prime-bg-color: #FFF;
    --btn-inv-font-color: #4c4c4c;
    --btn-inv-border-color: #4c4c4c;
    --btn-inv-bg-color: #FFF;
    --btn-prime-inv-font-color: #FFF;
    --btn-prime-inv-border-color: ##4c4c4c;
    --btn-prime-inv-bg-color: ##4c4c4c;
    --link-list-font-color: #FFF;
    --link-list-separator-color: #FFF;
    --banner-logo-offset: 100px;
    --banner-bg-color: #4c4c4c;
    --banner-font-color: #FFF;
    --banner-box-shadow: 1px 1px 6px 4px rgba(0, 0, 0, .2);
    --layer-header-height: 3.5em;
    --layer-header-bg-color: #FFF;
    --layer-header-font-color: #1a1a1a;
    --layer-body-bg-color: #FFF;
    --layer-tab-bg-color: #FFF;
    --layer-tab-font-color: #272727;
    --layer-tab-active-bg-color: #878787;
    --layer-tab-active-font-color: #FFF;
    --layer-bg-dark: #4c4c4c;
    --layer-font-light: #FFF;
    --layer-font-dark: #272727;
    --layer-border-color: #e4e5e6;
    --layer-footer-bg-color: #FFF;
    --layer-footer-font-color: #4c4c4c;
    --layer-footer-height: 4.5em;
    --switch-border-color: #e4e5e6;
    --switch-handle-color: #FFF;
    --switch-bg-off: #FFF;
    --switch-bg-on: #00AA00;
    --switch-width: 45px;
    --switch-height: 20px;
    --switch-always-on-font-color: #00AA00;
    --switch-always-on-bg-color: #FFF
}

.cookiesjsr--app {
    font-size: var(--font-size-reset, 1rem);
}

body .cookiesjsr--app,body .cookiesjsr--app *,body .cookiesjsr--app *:before,body .cookiesjsr--app *:after {
    box-sizing: border-box
}

/* end: cookiesjsr.min.css */
