/* =========================================================================
   ElbElite – Cookie-Wand (Soft Wall)
   Eigenstaendig, ohne Marken-Variablen: die Rechtsseiten laden ein eigenes
   schlankes Stylesheet. Klassennamen stammen 1:1 aus consent.js.
   ========================================================================= */
.kekse{
  position:fixed;inset:0;z-index:2000;display:none;
  align-items:center;justify-content:center;padding:16px;
  background:rgba(8,13,24,.62);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
}
.kekse.zeig{display:flex}
body.kekse-offen{overflow:hidden}

.kekse__karte{
  width:100%;max-width:min(520px,calc(100vw - 24px));max-height:92vh;overflow-y:auto;
  background:#fff;border-radius:20px;padding:28px 26px 22px;text-align:center;
  box-shadow:0 24px 64px rgba(8,13,24,.28);
  animation:keksAuf .4s cubic-bezier(.22,1,.36,1) both;
}
@keyframes keksAuf{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}

.kekse__logo{display:block;margin:0 auto 8px;width:58px;height:58px;object-fit:contain}
/* Der Firmenname steht unter dem Wappen - der Besucher soll sehen, wessen
   Seite ihn hier fragt. */
.kekse__marke{
  display:block;margin-bottom:12px;font-size:12.4px;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:#106692;
}
.kekse h2{
  margin:0 0 10px;font-family:'Bricolage','Segoe UI',system-ui,sans-serif;
  font-size:1.32rem;font-weight:800;line-height:1.2;color:#0F1626;letter-spacing:-.012em;
}
.kekse p{margin:0;font-size:14.4px;line-height:1.6;color:#44515F}

/* --- Einstellungen ------------------------------------------------------- */
.kekse__panel{margin-top:18px;padding-top:16px;border-top:1px solid #DFE6ED;text-align:left}
.kekse__panel[hidden]{display:none}
.kekse__zeile{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:11px 0;border-bottom:1px solid #EDF1F6;
}
.kekse__zeile b{display:block;font-size:14px;font-weight:600;color:#0F1626}
.kekse__zeile span{display:block;font-size:12.4px;color:#61707F;margin-top:2px}
.kekse__fest{font-size:12.4px;font-weight:600;color:#128A4E;white-space:nowrap}

.schalter{display:inline-flex;align-items:center;gap:9px;cursor:pointer;flex:none}
.schalter input{position:absolute;opacity:0;width:0;height:0}
.schalter__bahn{
  width:44px;height:25px;border-radius:99px;background:#C3CEDA;flex:none;
  display:block;padding:3px;transition:background .2s ease;
}
.schalter__punkt{
  display:block;width:19px;height:19px;border-radius:50%;background:#fff;
  box-shadow:0 1px 3px rgba(8,13,24,.3);transition:transform .2s cubic-bezier(.22,1,.36,1);
}
.schalter input:checked + .schalter__bahn{background:#106692}
.schalter input:checked + .schalter__bahn .schalter__punkt{transform:translateX(19px)}
.schalter input:focus-visible + .schalter__bahn{outline:3px solid #2E90C4;outline-offset:2px}
.schalter__text{font-size:12.6px;font-weight:600;color:#61707F;min-width:22px}

/* --- Knoepfe: "Alle akzeptieren" und "Ablehnen" exakt gleich breit -------- */
.kekse__knoepfe{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.kekse__knopf{
  flex:1 1 0;min-width:0;padding:14px 16px;border-radius:14px;border:1.5px solid transparent;
  font-family:inherit;font-size:15px;font-weight:600;line-height:1.2;cursor:pointer;
  min-height:52px;transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.kekse__knopf--ja{background:#106692;color:#fff;box-shadow:0 10px 24px -10px rgba(16,102,146,.45)}
.kekse__knopf--ja:hover{background:#0C557B}
.kekse__knopf--nein{background:#fff;color:#106692;border-color:#106692}
.kekse__knopf--nein:hover{background:#F1F6FA}
.kekse__knopf--mehr{
  flex:1 1 100%;background:transparent;color:#61707F;border-color:#DFE6ED;
  font-weight:500;font-size:14.2px;min-height:46px;
}
.kekse__knopf--mehr:hover{border-color:#C3CEDA;color:#44515F}
.kekse__panel .kekse__knopf{display:block;width:100%;margin-top:14px}
.kekse__knopf:focus-visible{outline:3px solid #2E90C4;outline-offset:2px}

.kekse__links{margin-top:16px;font-size:12.4px;color:#61707F}
.kekse__links a{color:#61707F;text-decoration:underline;text-underline-offset:2px}
.kekse__links a:hover{color:#106692}

@media (max-width:479px){
  .kekse__karte{padding:24px 20px 20px}
  .kekse__knopf--ja,.kekse__knopf--nein{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){
  .kekse__karte{animation:none}
  .schalter__punkt,.schalter__bahn{transition:none}
}
