/* IAMM Cookie-Einwilligung – Stylesheet
   Eigenstaendig, unabhaengig vom Theme. Farben koennen hier angepasst werden. */
:root{
  /* An die Website-Farben angepasst (Navy/Gold statt Blau aus der Vorlage) */
  --iamm-blau:#10233C; --iamm-blau-hell:#AB8A44; --iamm-blau-bg:#F4F0E8;
  --iamm-text:#1B2733; --iamm-leise:#5A6875; --iamm-linie:#DDE3EA;
  --iamm-weiss:#FFFFFF; --iamm-gruen:#2E7D52; --radius:6px;
}
.iamm-cc-link{ cursor:pointer; }
.iamm-cc-btn{
  font:inherit; font-size:16px; font-weight:600; cursor:pointer;
  padding:13px 24px; border-radius:var(--radius);
  border:2px solid var(--iamm-blau); background:var(--iamm-blau); color:#fff;
}
.iamm-cc-btn:hover{ background:#0A1626; border-color:#0A1626; }
.iamm-cc-btn:focus-visible{ outline:3px solid var(--iamm-blau-hell); outline-offset:2px; }

/* ==================== EINWILLIGUNGSDIALOG (consent.js) ==================
   Wichtig: "Alle akzeptieren" und "Ablehnen" sind bewusst optisch identisch.
   Das verlangt die Aufsichtspraxis (VG Hannover 19.03.2025). Bitte nicht
   einen der beiden Knöpfe hervorheben oder verkleinern.
   ====================================================================== */
.cc-huelle{
  /* Bewusst KEIN Vollbild-Overlay mehr: der Banner sitzt unten als Leiste
     und blockiert weder Klicks noch Tippen im Rest der Seite. Nur die
     eine Zusatzfunktion (reCAPTCHA im Formular), die wirklich eine
     Einwilligung braucht, bleibt bis dahin gesperrt. */
  position:fixed; left:0; right:0; bottom:0; z-index:9999;
  display:flex; justify-content:center;
  padding:16px; pointer-events:none;
}

.cc-kasten{
  background:var(--iamm-weiss); border-radius:10px; max-width:640px; width:100%;
  padding:22px 26px 20px; box-shadow:0 4px 28px rgba(0,0,0,.22);
  max-height:70vh; overflow-y:auto;
  pointer-events:auto;
}
.cc-kasten h2{ font-size:19px; margin:0 0 12px; color:var(--iamm-blau); }
.cc-text{ font-size:15px; line-height:1.6; margin:0 0 18px; color:var(--iamm-text); max-width:none; }

.cc-knoepfe{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:18px 0 12px; }
.cc-btn{
  font:inherit; font-size:16px; font-weight:600; cursor:pointer;
  padding:13px 18px; border-radius:var(--radius);
  border:2px solid var(--iamm-blau); background:var(--iamm-blau); color:#fff;
  min-height:48px;
}
.cc-btn:hover{ background:#0A1626; border-color:#0A1626; }
.cc-btn:focus-visible{ outline:3px solid var(--iamm-blau-hell); outline-offset:2px; }

.cc-zeile{ display:flex; gap:20px; flex-wrap:wrap; justify-content:center; }
.cc-link{
  font:inherit; font-size:14.5px; background:none; border:none; cursor:pointer;
  color:var(--iamm-blau); text-decoration:underline; text-underline-offset:3px; padding:8px 4px;
}
.cc-link:focus-visible{ outline:3px solid var(--iamm-blau-hell); outline-offset:2px; }

.cc-details{ border-top:1px solid var(--iamm-linie); margin-top:6px; padding-top:6px; }
.cc-dienst{ border-bottom:1px solid var(--iamm-linie); padding:14px 0; }
.cc-dienst:last-child{ border-bottom:none; }
.cc-dienst-kopf{ display:flex; align-items:center; justify-content:space-between; gap:14px; }
.cc-dienst-kopf strong{ font-size:15.5px; color:var(--iamm-text); }
.cc-dienst-kopf input[type="checkbox"]{ width:22px; height:22px; flex-shrink:0; cursor:pointer; }
.cc-dienst-kopf label{ cursor:pointer; }
.cc-dienst p{ font-size:14px; color:var(--iamm-leise); margin:7px 0 0; line-height:1.55; max-width:none; }
.cc-meta{ font-size:13px !important; }
.cc-immer{ font-size:13px; color:var(--iamm-gruen); font-weight:600; }
.cc-noetig{ background:var(--iamm-blau-bg); border-radius:var(--radius); padding:14px 16px; border-bottom:none; }

/* ======================= ZWEI-KLICK-KARTE ==============================
   Vor dem Klick wird nichts von Google geladen. Der Platzhalter ist reines
   CSS – kein Bild von einem fremden Server.
   ====================================================================== */
.karte-platzhalter{
  border:1px solid var(--iamm-linie); border-radius:var(--radius); overflow:hidden;
  margin:16px 0; background:
    repeating-linear-gradient(45deg, var(--iamm-blau-bg) 0 12px, #E6EDF5 12px 24px);
}
#karte{ padding:34px 24px; text-align:center; }
#karte:has(iframe){ padding:0; }
.karte-titel{
  font-weight:700; font-size:18px; color:var(--iamm-blau); margin:0 0 10px;
}
.karte-text{
  font-size:14px; color:var(--iamm-leise); max-width:46ch;
  margin:0 auto 18px; line-height:1.6;
}
#karte iframe{ display:block; }
