/* ===== tāstium — cookie consent banner ===== */
.cookie-banner {
  position: fixed;
  left: 20px; right: 20px; bottom: 20px;
  max-width: 760px; margin: 0 auto;
  background: var(--surface, #fff);
  border: 1px solid var(--hairline-2, rgba(30,20,40,0.14));
  border-radius: 18px;
  box-shadow: 0 20px 50px rgba(30,15,45,0.18);
  padding: 22px 24px;
  z-index: 999;
  display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px;
  font-family: var(--sans, sans-serif);
  transform: translateY(140%);
  opacity: 0;
  transition: transform .4s cubic-bezier(.2,.8,.2,1), opacity .4s ease;
}
.cookie-banner.is-visible { transform: translateY(0); opacity: 1; }
.cookie-banner-text { flex: 1 1 380px; min-width: 220px; }
.cookie-banner-text p {
  margin: 0; font-size: 14px; line-height: 1.5;
  color: var(--ink-70, #3a3040);
}
.cookie-banner-text a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.cookie-banner-actions { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.cookie-banner-actions button {
  font-family: inherit; font-size: 14px; font-weight: 600;
  border-radius: 999px; padding: 10px 18px;
  border: 1px solid transparent; cursor: pointer;
  transition: background .15s, border-color .15s, color .15s;
  white-space: nowrap;
}
.cookie-banner-actions .ck-accept {
  background: var(--plum, #4a2f66); color: var(--bg, #fff);
}
.cookie-banner-actions .ck-accept:hover { background: var(--plum-deep, #3a2452); }
.cookie-banner-actions .ck-reject {
  background: transparent; color: var(--ink, #221a2a);
  border-color: var(--hairline-2, rgba(30,20,40,0.2));
}
.cookie-banner-actions .ck-reject:hover { background: var(--ink, #221a2a); color: var(--bg, #fff); }
footer .footer-cookie-link {
  font: inherit; font-size: 13px; color: var(--ink-55, #6b6070);
  background: none; border: none; padding: 0; cursor: pointer;
  text-decoration: none;
}
footer .footer-cookie-link:hover { color: var(--ink, #221a2a); }
.footer-legal {
  margin-top: 28px; padding-top: 20px;
  border-top: 1px solid var(--hairline, rgba(30,20,40,0.1));
}
.footer-legal p {
  margin: 0; font-size: 12px; line-height: 1.6; color: var(--ink-40, var(--ink-55, #948a98));
  max-width: 760px;
}
@media (max-width: 560px) {
  .cookie-banner { left: 12px; right: 12px; bottom: 12px; padding: 18px; }
  .cookie-banner-actions { width: 100%; }
  .cookie-banner-actions button { flex: 1 1 auto; }
}
