.analytics-consent {
  position: fixed;
  inset: auto 0 0;
  z-index: 100;
  max-height: 85vh;
  overflow-y: auto;
  display: flex;
  align-items: center;
  gap: 2rem;
  padding: 1.5rem 2.5rem;
  background: #fdfaf6;
  color: #2a2118;
  border-top: 1px solid #c4a882;
  box-shadow: 0 -6px 24px rgb(42 33 24 / 8%);
  font-family: 'Jost', sans-serif;
}
.analytics-consent[hidden] { display: none; }
.analytics-consent-copy { flex: 1; max-width: 800px; }
.analytics-consent h2 {
  margin: 0 0 0.5rem;
  font-family: 'Cormorant Garamond', serif;
  font-size: 26px;
  font-weight: 400;
}
.analytics-consent p { margin: 0; font-size: 13px; line-height: 1.7; color: #5c4f43; }
.analytics-consent-options { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; margin-top: 0.75rem; }
.analytics-consent-options label { display: flex; align-items: center; gap: 0.5rem; min-height: 44px; font-size: 13px; cursor: pointer; }
.analytics-consent-options input { width: 18px; height: 18px; accent-color: #5c4f43; }
.analytics-consent-options input:focus-visible { outline: 2px solid #2a2118; outline-offset: 3px; }
.analytics-consent-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.analytics-consent-actions button {
  min-height: 44px;
  padding: 12px 18px;
  border: 1px solid #5c4f43;
  background: #fdfaf6;
  color: #2a2118;
  font: 400 12px 'Jost', sans-serif;
  cursor: pointer;
}
.analytics-consent-actions button:hover { background: #f2ebe1; }
.analytics-settings {
  display: block;
  align-self: center;
  margin: 1rem auto;
  padding: 10px 14px;
  min-height: 44px;
  border: 0;
  background: transparent;
  color: #5c4f43;
  text-decoration: underline;
  font: 400 12px 'Jost', sans-serif;
  cursor: pointer;
}
.analytics-consent button:focus-visible, .analytics-settings:focus-visible {
  outline: 2px solid #2a2118;
  outline-offset: 3px;
}
@media (max-width: 760px) {
  .analytics-consent { flex-direction: column; align-items: stretch; gap: 1rem; padding: 1.25rem; }
  .analytics-consent-actions button { flex: 1; }
}
