.cookie-banner {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 999;
  display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px;
  padding: 18px 28px;
  background: var(--ink);
  color: #fff;
  box-shadow: 0 -8px 28px rgba(0,0,0,.18);
  transform: translateY(100%);
  transition: transform .35s ease;
}
.cookie-banner.is-visible { transform: translateY(0); }
.cookie-banner[hidden] { display: none; }

.cookie-banner__text {
  flex: 1 1 320px;
  font: 500 14px/1.55 Manrope, sans-serif;
  color: #e7e7e7;
}
.cookie-banner__text a { color: #fff; text-decoration: underline; }

.cookie-banner__actions {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
}
.cookie-banner__btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 12px 22px; border-radius: 999px; border: 0; cursor: pointer;
  font: 600 14px/1.3 Manrope, sans-serif;
  transition: transform .2s ease, box-shadow .2s ease;
}
.cookie-banner__btn:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(0,0,0,.28); }
.cookie-banner__btn:active { transform: translateY(0); box-shadow: none; }
.cookie-banner__btn--accept { background: var(--accent); color: #fff; }
.cookie-banner__btn--decline { background: transparent; color: #fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.4); }

@media (max-width: 560px) {
  .cookie-banner { padding: 16px 20px; }
  .cookie-banner__actions { width: 100%; }
  .cookie-banner__btn { flex: 1 1 auto; }
}
