.consent-banner {
  position: fixed;
  z-index: 1000;
  right: 1.25rem;
  bottom: 1.25rem;
  left: 1.25rem;
  max-width: 760px;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.25rem 1.35rem;
  background: #151515;
  color: #f4f2ee;
  border: 1px solid #3a3a3a;
  box-shadow: 0 18px 55px rgba(0, 0, 0, .55);
  font-family: Manrope, Arial, sans-serif;
}

.consent-banner strong { display: block; margin-bottom: .35rem; font: 800 .88rem Montserrat, Arial, sans-serif; text-transform: uppercase; letter-spacing: .04em; }
.consent-banner p { max-width: 470px; margin: 0; color: #aaa; font-size: .82rem; line-height: 1.55; }
.consent-actions { display: flex; flex-shrink: 0; gap: .6rem; }
.consent-actions button { min-height: 44px; padding: .7rem .9rem; border: 1px solid #555; background: transparent; color: #eee; font: 700 .78rem Manrope, Arial, sans-serif; cursor: pointer; }
.consent-actions button:hover, .consent-actions button:focus-visible { border-color: #fff; }
.consent-actions .consent-accept { border-color: #f0262f; background: #f0262f; color: #fff; }
.consent-actions .consent-accept:hover, .consent-actions .consent-accept:focus-visible { background: #ff3942; }

@media (max-width: 680px) {
  .consent-banner { display: block; }
  .consent-actions { margin-top: 1rem; }
  .consent-actions button { flex: 1; }
}
