/* Estilos aislados del consentimiento, compartidos por todas las páginas. */
.eloy-consent {
  position: fixed;
  inset: auto 16px 16px;
  z-index: 1000;
  display: flex;
  align-items: center;
  gap: 24px;
  max-width: 1080px;
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  margin: 0 auto;
  padding: 22px;
  background: #fffdf6;
  color: #4a3728;
  border: 1px solid #7a6350;
  border-radius: 18px;
  box-shadow: 0 12px 45px #4a372830;
  font: 14px/1.5 'DM Sans', system-ui, sans-serif;
  text-align: left;
}
.eloy-consent[hidden], .eloy-cookie-settings[hidden] { display: none; }
.eloy-consent-copy { flex: 1; }
.eloy-consent h2 { margin: 0 0 8px; font: 700 18px/1.3 'DM Sans', system-ui, sans-serif; color: inherit; }
.eloy-consent p { margin: 0; font: inherit; color: inherit; }
.eloy-consent a { color: #4a3728; text-decoration: underline; }
.eloy-consent-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.eloy-consent button, .eloy-cookie-settings {
  appearance: none;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid #4a3728;
  border-radius: 10px;
  background: #fffdf6;
  color: #4a3728;
  font: 600 14px/1.4 'DM Sans', system-ui, sans-serif;
  cursor: pointer;
}
.eloy-consent button:hover, .eloy-cookie-settings:hover { background: #faf3e1; }
.eloy-consent button:focus-visible, .eloy-consent a:focus-visible, .eloy-cookie-settings:focus-visible {
  outline: 3px solid #5e7a33;
  outline-offset: 3px;
}
.eloy-cookie-settings {
  position: fixed;
  bottom: max(12px, env(safe-area-inset-bottom));
  left: 12px;
  z-index: 999;
  box-shadow: 0 3px 12px #4a372820;
}
@media (max-width: 700px) {
  .eloy-consent { flex-direction: column; align-items: stretch; gap: 16px; padding: 18px; }
  .eloy-consent-actions button { flex: 1; }
}
