.cookie-footer { background: #f9e4f0; padding: 0 2.1875rem 1.25rem; text-align: center; }
.cookie-settings { padding: .5rem; border: 0; background: transparent; color: #4d1e2c; font: inherit; text-decoration: underline; text-underline-offset: .2em; cursor: pointer; }
.cookie-banner {
  position: fixed;
  z-index: 10000;
  right: 24px;
  bottom: 24px;
  left: 24px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  align-items: center;
  gap: 32px;
  max-width: 1100px;
  max-height: calc(100dvh - 48px);
  margin: 0 auto;
  padding: 28px 32px;
  overflow-y: auto;
  border: 1px solid #4d1e2c;
  border-radius: 4px;
  background: #f9e4f0;
  color: #4d1e2c;
  box-shadow: 0 8px 40px #48202d30;
  font-size: 16px;
  line-height: 1.5;
}
.cookie-banner[hidden], .cookie-banner [hidden], .cookie-footer [hidden] { display: none; }
.cookie-banner h2 { margin: 0 0 12px; font-size: 26px; font-weight: 400; line-height: 1.2; text-transform: uppercase; }
.cookie-banner p { margin: 0 0 12px; }
.cookie-banner__actions { display: flex; flex-direction: column; gap: 12px; }
.cookie-choice { min-height: 46px; padding: 10px 20px; border: 1px solid #4d1e2c; border-radius: 24px; background: #fcfe5b; color: #4d1e2c; font: inherit; text-transform: uppercase; cursor: pointer; }
.cookie-choice:hover { background: #f9fbb0; }
.cookie-banner button:focus-visible, .cookie-settings:focus-visible, .cookie-info summary:focus-visible, .cookie-info a:focus-visible { outline: 2px solid #4d1e2c; outline-offset: 4px; }
.cookie-info summary { cursor: pointer; text-decoration: underline; text-underline-offset: .2em; }
.cookie-info > div { margin-top: 16px; }
.cookie-status:empty { display: none; }
.cookie-banner .cookie-status { margin: 12px 0 0; }
@media screen and (max-width: 767px) {
  .cookie-banner { left: 12px; right: 12px; bottom: 12px; max-height: calc(100dvh - 24px); grid-template-columns: 1fr; gap: 20px; padding: 22px; }
  .cookie-banner h2 { font-size: 23px; }
  .cookie-banner__actions { gap: 10px; }
}
