/* Grundstyling für Banner + Preferences Center liefert die cookieconsent-Lib
   selbst (analog pivasoft.de). Hier nur:
     - kleinere, filigrane Banner-Optik mit runden Ecken
     - einheitliche Button-Farbe #bd7138 im Banner
     - Platzhalter-Ansicht für gegatete Google-Maps-Karten
   Die Lib-Styles werden zur Laufzeit injiziert – deshalb Overrides mit !important. */

.cc-hidden { display: none !important; }

/* Banner: kleiner, filigraner, abgerundete Ecken */
.privacypolicies-com---palette-light.privacypolicies-com---nb {
    background-color: #fdfaf6 !important;
    border-radius: .75rem !important;
    box-shadow: 0 10px 30px rgba(17, 24, 39, .18) !important;
    font-size: 14px !important;
    overflow: hidden !important;
}
.privacypolicies-com---nb-simple {
    right: 1rem !important;
    bottom: 1rem !important;
    left: auto !important;
    top: auto !important;
    max-width: 380px !important;
}
@media (max-width: 600px) {
    .privacypolicies-com---nb-simple {
        right: .75rem !important;
        left: .75rem !important;
        bottom: .75rem !important;
        max-width: none !important;
    }
}
.privacypolicies-com---nb .cc-nb-main-container {
    padding: 1.1rem 1.25rem !important;
}
.privacypolicies-com---nb .cc-nb-title {
    font-size: 15px !important;
    font-weight: 600 !important;
    margin: 0 0 .35rem 0 !important;
}
.privacypolicies-com---nb .cc-nb-text {
    font-size: 13px !important;
    line-height: 1.5 !important;
    margin: 0 0 .85rem 0 !important;
}
.privacypolicies-com---nb .cc-nb-buttons-container { margin-top: .25rem !important; }

/* Alle Buttons im Banner in der Primärfarbe (--primary-*) */
.privacypolicies-com---nb .cc-nb-okagree,
.privacypolicies-com---nb .cc-nb-reject,
.privacypolicies-com---nb .cc-nb-changep {
    background-color: oklch(var(--primary-600)) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: .4rem !important;
    padding: .45rem .85rem !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}
.privacypolicies-com---nb .cc-nb-okagree:hover,
.privacypolicies-com---nb .cc-nb-reject:hover,
.privacypolicies-com---nb .cc-nb-changep:hover {
    background-color: oklch(var(--primary-700)) !important;
}
.privacypolicies-com---nb .cc-nb-okagree:focus,
.privacypolicies-com---nb .cc-nb-reject:focus,
.privacypolicies-com---nb .cc-nb-changep:focus {
    box-shadow: 0 0 0 2px oklch(var(--primary-600) / .35) !important;
}

.cc-map-wrap { position: relative; }

.cc-map-placeholder {
    min-height: 320px;
    background: #e5e7eb;
    color: #1f2937;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    padding: 1.75rem 1.25rem;
    text-align: center;
    font-family: inherit;
}
.cc-map-placeholder i { font-size: 2rem; color: #6b7280; }
.cc-map-placeholder p { margin: 0; max-width: 34rem; color: #4b5563; font-size: .95rem; line-height: 1.55; }
.cc-map-placeholder p strong { color: #1f2937; }
.cc-map-placeholder a { color: oklch(var(--primary-700)); text-decoration: underline; }

.cc-map-placeholder button {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    background: oklch(var(--primary-600));
    color: #fff;
    border: 0;
    padding: .55rem 1.1rem;
    border-radius: .5rem;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
    transition: background .15s;
}
.cc-map-placeholder button:hover { background: oklch(var(--primary-700)); }
