/* Playful consent banner in cream, charcoal, and teal. */
.cookie-consent {
  position: fixed;
  z-index: 1000;
  inset: auto 20px 20px;
  max-width: 620px;
  max-height: 75vh;
  overflow: auto;
  margin: 0 auto;
  padding: 20px 24px;
  display: flex;
  gap: 18px;
  align-items: flex-start;
  background: #f7f1e3;
  color: #22303f;
  border: 2px solid #22303f;
  border-radius: 18px;
  box-shadow: 0 6px 0 #22303f22, 0 12px 32px #22303f33;
  font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.cookie-consent[hidden] { display: none; }
.cookie-consent-art { flex: 0 0 auto; margin-top: 2px; }
.cookie-consent-art svg { display: block; width: 64px; height: 64px; }
.cookie-consent-body { flex: 1 1 auto; }
.cookie-consent h2 {
  margin: 0 0 6px;
  color: #22303f;
  font: 700 24px/1.2 Georgia, "Times New Roman", serif;
}
.cookie-consent p { margin: 0 0 12px; max-width: none; }
.cookie-consent .cookie-consent-scope { font-size: 14px; margin: 10px 0 0; }
.cookie-consent a { color: #0f766e; text-decoration: underline; }
.cookie-consent-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.cookie-consent button,
[data-cookie-preferences] {
  min-height: 44px;
  padding: 10px 22px;
  border: 2px solid #0f766e;
  border-radius: 999px;
  background: #f7f1e3;
  color: #0f766e;
  font: 600 16px/1.4 "Helvetica Neue", Helvetica, Arial, sans-serif;
  cursor: pointer;
}
.cookie-consent button[data-consent-choice="accepted"] {
  background: #0f766e;
  color: #f7f1e3;
}
.cookie-consent button:focus-visible,
.cookie-consent a:focus-visible,
[data-cookie-preferences]:focus-visible {
  outline: 3px solid #22303f;
  outline-offset: 3px;
}
.cookie-consent-status { font-size: 14px; margin: 12px 0 0 !important; }
.privacy-draft-note { font-size: 12px; letter-spacing: 0.06em; }
@media (max-width: 600px) {
  .cookie-consent { inset: auto 12px 12px; padding: 16px; gap: 12px; }
  .cookie-consent-art svg { width: 48px; height: 48px; }
  .cookie-consent-actions button { flex: 1; }
}
