/* Einwilligungs-Banner und Platzhalter für externe Einbettungen.
   Bewusst in einer eigenen Datei, damit der Consent-Teil unabhängig vom
   restlichen Stylesheet gepflegt werden kann. Farben und Typografie kommen
   aus den Variablen in style.css. */

/* ── Banner ─────────────────────────────────────────────────────────── */
.consent-bar{
  position:fixed;
  bottom:0;left:0;right:0;
  z-index:9999;
  background:rgba(9,22,20,.985);
  border-top:1px solid var(--border);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  padding:20px 40px;
  transform:translateY(110%);
  transition:transform .4s var(--ease, ease);
}
.consent-bar.show{transform:translateY(0)}
.consent-bar[hidden]{display:none}

.consent-inner{
  max-width:1100px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  gap:28px;flex-wrap:wrap;
}
.consent-text{flex:1;min-width:240px}
.consent-text p{font-size:13.5px;color:var(--text2);line-height:1.75}
.consent-text p strong{
  display:block;color:var(--cream);font-weight:600;
  font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-bottom:6px;
}
.consent-text a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}

.consent-btns{display:flex;gap:12px;flex-shrink:0}

/* Beide Schaltflächen sind gleich gross und gleich gut erreichbar —
   Ablehnen darf nicht schwerer sein als Zustimmen. */
.consent-decline,.consent-accept{
  padding:13px 26px;
  font-family:var(--sans);font-size:12px;font-weight:700;
  letter-spacing:1.5px;white-space:nowrap;cursor:pointer;
  transition:background .3s,border-color .3s,color .3s;
}
.consent-decline{
  background:transparent;
  border:1px solid rgba(245,240,232,.35);
  color:var(--cream);
}
.consent-decline:hover{border-color:rgba(245,240,232,.7)}
.consent-accept{
  background:var(--gold);border:1px solid var(--gold);color:var(--bg2);
}
.consent-accept:hover{background:var(--gold2);border-color:var(--gold2)}
.consent-bar button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* Auf schmalen Bildschirmen von oben einblenden — unten sitzt die
   mobile Navigation und der Bestell-Button. */
@media(max-width:960px){
  .consent-bar{
    bottom:auto;top:0;
    border-top:none;border-bottom:1px solid var(--border);
    transform:translateY(-110%);
    padding:16px 20px;
  }
  .consent-bar.show{transform:translateY(0)}
  .consent-inner{flex-direction:column;align-items:stretch;gap:14px}
  .consent-btns{gap:10px}
  .consent-decline,.consent-accept{flex:1;padding:13px 12px;text-align:center}
}

/* ── Platzhalter für externe Einbettungen ───────────────────────────── */
.consent-embed{
  position:relative;
  width:100%;height:100%;min-height:320px;
  background:var(--bg3, #0e2220);
  border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
}
.consent-embed.embed-geladen{display:block;border:none;background:none}

.embed-platzhalter{
  text-align:center;padding:36px 28px;max-width:460px;
  color:var(--text2);
}
.embed-platzhalter svg{color:var(--gold);opacity:.75;margin-bottom:14px}
.embed-titel{
  font-family:var(--serif);font-size:21px;color:var(--cream);
  margin-bottom:8px;line-height:1.3;
}
.embed-hinweis{font-size:13px;line-height:1.7;margin-bottom:20px}

.embed-aktionen{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.embed-laden{
  padding:12px 24px;
  background:var(--gold);border:1px solid var(--gold);color:var(--bg2);
  font-family:var(--sans);font-size:11px;font-weight:700;
  letter-spacing:2px;text-transform:uppercase;cursor:pointer;
  transition:background .3s,color .3s;
}
.embed-laden:hover{background:var(--gold2)}
.embed-laden-merken{
  background:transparent;color:var(--gold);
}
.embed-laden-merken:hover{background:rgba(201,168,76,.12)}
.embed-laden:focus-visible{outline:2px solid var(--cream);outline-offset:3px}

.embed-alternative{font-size:12px;margin-top:18px;color:var(--text2)}
.embed-alternative a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}

@media(prefers-reduced-motion:reduce){
  .consent-bar{transition:none}
}
