.cookie-notice {
  position:fixed;
  z-index:85;
  left:max(24px,env(safe-area-inset-left));
  bottom:max(24px,env(safe-area-inset-bottom));
  width:420px;
  max-width:calc(100% - 48px);
  max-height:calc(100svh - 48px);
  overflow:auto;
  padding:24px;
  box-sizing:border-box;
  background:#fafaf9;
  border:1px solid #d9d8d5;
  box-shadow:0 8px 32px #0000000d;
  color:#171717;
  font:400 14px/1.65 'Manrope',Arial,sans-serif;
  text-align:left;
  animation:cookie-notice-in .35s ease-out both;
}
.cookie-notice h2 {
  margin:0 0 10px;
  font:600 15px/1.4 'Manrope',Arial,sans-serif;
  letter-spacing:0;
  text-transform:none;
}
.cookie-notice p { margin:0; color:#555; font:inherit; }
.cookie-notice a { color:#171717; text-decoration:underline; text-underline-offset:3px; }
.cookie-notice .cookie-notice-dismiss {
  display:block;
  margin:18px 0 0 auto;
  padding:10px 24px;
  min-height:44px;
  border:1px solid #171717;
  border-radius:0;
  background:#171717;
  color:#fff;
  font:500 14px/1.5 'Manrope',Arial,sans-serif;
  cursor:pointer;
}
.cookie-notice .cookie-notice-dismiss:hover { background:#363636; }
.cookie-notice :focus-visible { outline:2px solid #171717; outline-offset:4px; }
@keyframes cookie-notice-in { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
@media(max-width:600px) {
  .cookie-notice { left:12px; bottom:max(12px,env(safe-area-inset-bottom)); width:calc(100% - 24px); max-width:none; padding:20px; max-height:calc(100svh - 24px); }
}
@media(prefers-reduced-motion:reduce) { .cookie-notice { animation:none; } }
@media print { .cookie-notice { display:none; } }
