/* ---------- ciasteczka (okienko zgody) - styl strony: papier, terakota, szkic ---------- */
.cookie {
  position: fixed; left: 20px; bottom: 20px; z-index: 2147483100;
  width: min(440px, calc(100vw - 24px));
  display: grid; grid-template-columns: 124px 1fr; gap: 6px 16px; align-items: start;
  padding: 20px 22px 18px 16px;
  background: var(--card, #fffdf9); color: var(--ink, #2b221d);
  border-radius: 22px;
  box-shadow: 0 24px 60px -18px rgba(43, 34, 29, .38), inset 0 0 0 1.5px var(--line, rgba(43, 34, 29, .12));
  font: 400 14.5px/1.5 var(--sans, Manrope, system-ui, sans-serif);
  transform: translateY(24px) rotate(-1deg); opacity: 0; pointer-events: none;
  transition: transform .6s cubic-bezier(.2, .9, .2, 1.15), opacity .4s ease;
}
.cookie.is-open { transform: none; opacity: 1; pointer-events: auto; }
/* papierowy "szew" - lekko przesuniety drugi kontur jak w szkicach na stronie */
.cookie::after {
  content: ""; position: absolute; inset: 6px -4px -5px 5px; z-index: -1; border-radius: 24px;
  border: 1.5px dashed var(--sketch, rgba(93, 70, 52, .26)); transform: rotate(.8deg);
}
.cookie__art { width: 124px; height: 101px; margin: -8px 0 -4px -4px; }
.cookie.is-open .cookie__art { animation: cookie-hop 1.1s .25s cubic-bezier(.3, 1.6, .5, 1) both; }
@keyframes cookie-hop { 0% { transform: translateY(14px) rotate(-12deg) scale(.7); opacity: 0; } 60% { transform: translateY(-3px) rotate(3deg) scale(1.04); opacity: 1; } 100% { transform: rotate(-2deg) scale(1); } }
.cookie__title { grid-column: 2; margin: 2px 0 0; font: 700 27px/1.05 var(--hand, Caveat, cursive); color: var(--terra, #c9603f); transform: rotate(-1.5deg); transform-origin: left; }
.cookie__text { grid-column: 1 / -1; margin: 4px 0 0; color: var(--ink-soft, #5d5049); }
.cookie__text a { color: var(--terra, #c9603f); text-decoration: underline; text-underline-offset: 3px; }
.cookie__btns { grid-column: 1 / -1; display: flex; gap: 10px; flex-wrap: wrap; margin-top: 12px; }
.cookie__btns .btn { flex: 1 1 auto; cursor: pointer; border: 0; }
@media (max-width: 520px) {
  .cookie { left: 12px; bottom: 12px; grid-template-columns: 92px 1fr; padding: 16px; }
  .cookie__art { width: 92px; height: 75px; }
  .cookie__title { font-size: 24px; }
}
/* linki w stopce: polityka i ustawienia ciasteczek */
.footer__legal { display: flex; gap: 18px; flex-wrap: wrap; }
.footer__legal a, .footer__legal button { color: inherit; font: inherit; background: none; border: 0; padding: 0; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; opacity: .8; }
.footer__legal a:hover, .footer__legal button:hover { opacity: 1; color: var(--terra, #c9603f); }
