.cookie-notice { position: fixed; z-index: 10000; left: 50%; bottom: 18px; width: min(720px,calc(100% - 32px)); display: grid; grid-template-columns: 44px minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 14px 15px; border: 1px solid rgba(255,255,255,.12); border-radius: 0; background: #111; color: #fff; box-shadow: 0 18px 60px rgba(0,0,0,.32); font-family: "Open Sans",Arial,sans-serif; transform: translateX(-50%); animation: cookie-notice-in .28s ease-out; }
.cookie-notice.closing { opacity: 0; transform: translate(-50%,12px); transition: opacity .18s,transform .18s; }
.cookie-notice-mark { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: #e81922; color: #fff; font-size: 22px; font-weight: 900; transform: none; }
.cookie-notice-copy { min-width: 0; }
.cookie-notice-copy strong { display: block; margin-bottom: 3px; font-size: 13px; line-height: 1.3; }
.cookie-notice-copy p { margin: 0; color: rgba(255,255,255,.68); font-size: 10px; line-height: 1.45; }
.cookie-notice-copy a { display: inline-block; margin-top: 4px; color: #ff6268; font-size: 9px; font-weight: 800; text-underline-offset: 2px; }
.cookie-notice > button { min-height: 40px; padding: 10px 17px; border: 0; border-radius: 999px; background: #e81922; color: #fff; cursor: pointer; font: 800 11px "Open Sans",Arial,sans-serif; }
.cookie-notice > button:hover { background: #c91018; }
@keyframes cookie-notice-in { from { opacity: 0; transform: translate(-50%,12px); } to { opacity: 1; transform: translate(-50%,0); } }
@media (max-width: 620px) {
  .cookie-notice { bottom: 10px; width: calc(100% - 20px); grid-template-columns: 38px 1fr; gap: 10px; padding: 12px; }
  .cookie-notice-mark { width: 38px; height: 38px; font-size: 19px; }
  .cookie-notice-copy strong { font-size: 12px; }
  .cookie-notice-copy p { font-size: 9px; }
  .cookie-notice > button { grid-column: 1 / -1; width: 100%; min-height: 38px; }
}
@media (prefers-reduced-motion: reduce) { .cookie-notice { animation: none; } }

.demo-banner { padding: 7px 14px; background: #ed1c24; color: #fff; text-align: center; font: 700 10px/1.4 "Open Sans",Arial,sans-serif; letter-spacing: .02em; }
