.cc--agentur-prinz {
    --cc-font-family: "IBM Plex Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --cc-bg: color-mix(in srgb, var(--color-background) 92%, white 8%);
    --cc-primary-color: var(--color-text);
    --cc-secondary-color: color-mix(in srgb, var(--color-text) 68%, transparent);
    --cc-modal-border-radius: 1.35rem;
    --cc-btn-border-radius: 999px;
    --cc-modal-margin: 1rem;
    --cc-link-color: var(--color-primary);
    --cc-btn-primary-bg: var(--color-primary);
    --cc-btn-primary-color: #ffffff;
    --cc-btn-primary-border-color: var(--color-primary);
    --cc-btn-primary-hover-bg: color-mix(in srgb, var(--color-primary) 88%, black 12%);
    --cc-btn-primary-hover-color: #ffffff;
    --cc-btn-primary-hover-border-color: color-mix(in srgb, var(--color-primary) 88%, black 12%);
    --cc-btn-secondary-bg: var(--color-surface);
    --cc-btn-secondary-color: var(--color-text);
    --cc-btn-secondary-border-color: color-mix(in srgb, var(--color-text) 12%, transparent);
    --cc-btn-secondary-hover-bg: var(--color-surface-soft);
    --cc-btn-secondary-hover-color: var(--color-text);
    --cc-btn-secondary-hover-border-color: color-mix(in srgb, var(--color-text) 18%, transparent);
    --cc-separator-border-color: color-mix(in srgb, var(--color-text) 8%, transparent);
    --cc-cookie-category-block-bg: color-mix(in srgb, var(--color-surface) 84%, white 16%);
    --cc-cookie-category-block-border: color-mix(in srgb, var(--color-text) 8%, transparent);
    --cc-cookie-category-block-hover-bg: var(--color-surface-soft);
    --cc-cookie-category-block-hover-border: color-mix(in srgb, var(--color-text) 12%, transparent);
    --cc-cookie-category-expanded-block-bg: color-mix(in srgb, var(--color-surface-soft) 78%, white 22%);
    --cc-cookie-category-expanded-block-hover-bg: var(--color-surface-alt);
    --cc-toggle-on-bg: var(--color-primary);
    --cc-toggle-off-bg: color-mix(in srgb, var(--color-text) 22%, transparent);
    --cc-toggle-on-knob-bg: #ffffff;
    --cc-toggle-off-knob-bg: #ffffff;
    --cc-toggle-readonly-bg: color-mix(in srgb, var(--color-text) 18%, transparent);
    --cc-toggle-readonly-knob-bg: #ffffff;
    --cc-footer-bg: color-mix(in srgb, var(--color-surface) 80%, white 20%);
    --cc-footer-color: color-mix(in srgb, var(--color-text) 68%, transparent);
    --cc-footer-border-color: color-mix(in srgb, var(--color-text) 8%, transparent);
    --cc-overlay-bg: rgba(30, 28, 27, 0.32);
}

.cc--agentur-prinz #cc-main .cm,
.cc--agentur-prinz #cc-main .pm {
    border: 1px solid color-mix(in srgb, var(--color-text) 8%, transparent);
    box-shadow: 0 24px 70px rgba(30, 28, 27, 0.12);
}

.cc--agentur-prinz #cc-main {
    pointer-events: none;
}

.cc--agentur-prinz #cc-main .cm,
.cc--agentur-prinz #cc-main .pm,
.cc--agentur-prinz #cc-main .pm-overlay {
    pointer-events: auto;
}

.cc--agentur-prinz #cc-main .cm__title,
.cc--agentur-prinz #cc-main .pm__title {
    font-family: "IBM Plex Serif", Georgia, serif;
    font-size: 1.18rem;
    letter-spacing: -0.02em;
}

.cc--agentur-prinz #cc-main .cm__desc,
.cc--agentur-prinz #cc-main .pm__section-desc,
.cc--agentur-prinz #cc-main .pm__body {
    line-height: 1.65;
}

.cc--agentur-prinz #cc-main .cm__btn,
.cc--agentur-prinz #cc-main .pm__btn,
.cc--agentur-prinz #cc-main .pm__close-btn {
    transition: transform 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.cc--agentur-prinz #cc-main .cm__btn:hover,
.cc--agentur-prinz #cc-main .pm__btn:hover,
.cc--agentur-prinz #cc-main .pm__close-btn:hover {
    transform: translateY(-1px);
}

.cc--agentur-prinz #cc-main .cm__link-group,
.cc--agentur-prinz #cc-main .cc__link {
    color: var(--color-text);
}

.cc--agentur-prinz #cc-main .cc__link:hover,
.cc--agentur-prinz #cc-main a:hover {
    color: color-mix(in srgb, var(--color-primary) 84%, black 16%);
}

.cc--agentur-prinz #cc-main .pm__section--toggle .pm__section-title,
.cc--agentur-prinz #cc-main .pm__section {
    border-radius: 1rem;
}

.cc--agentur-prinz #cc-main .pm__badge {
    background: color-mix(in srgb, var(--color-primary) 12%, white 88%);
    color: var(--color-primary);
}

.cc--agentur-prinz #cc-main .pm__service-counter {
    background: var(--color-primary);
    color: #ffffff;
}

html.show--consent,
html.show--preferences,
html.disable--interaction.show--consent,
html.disable--interaction.show--preferences,
html.show--consent body,
html.show--preferences body,
html.disable--interaction.show--consent body,
html.disable--interaction.show--preferences body {
    height: auto !important;
    overflow: auto !important;
}

@media (max-width: 640px) {
    .cc--agentur-prinz {
        --cc-modal-margin: 0.65rem;
    }

    .cc--agentur-prinz #cc-main .cm,
    .cc--agentur-prinz #cc-main .pm {
        border-radius: 1.1rem;
    }
}

/* Secondary consent choices must read as equally available actions. */
.cc--agentur-prinz { --cc-btn-secondary-bg: #dedbd6; --cc-btn-secondary-color: #272727; --cc-btn-secondary-border-color: #77736e; --cc-btn-secondary-hover-bg: #cfcac3; --cc-btn-secondary-hover-color: #171717; --cc-btn-secondary-hover-border-color: #5a5651; }
.cc--agentur-prinz #cc-main .cm__btn--secondary,
.cc--agentur-prinz #cc-main .pm__btn--secondary { opacity: 1; font-weight: 600; }
.cc--agentur-prinz #cc-main .cm__btn[data-role="necessary"] {
    background: #dedbd6;
    color: #272727;
    border: 1px solid #77736e;
}
.cc--agentur-prinz #cc-main .cm__btn[data-role="necessary"]:hover {
    background: #cfcac3;
    color: #171717;
}
@media (max-width: 640px) {
  .cc--agentur-prinz #cc-main .cm { max-width: calc(100vw - 1.3rem); }
}
