.iu-consent-banner,
.iu-consent-manage { font-family: "Manrope", Arial, sans-serif; }

.iu-consent-banner {
  position: fixed; z-index: 10000; right: 1.25rem; bottom: 1.25rem; left: 1.25rem;
  display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.5rem; align-items: end;
  max-width: 72rem; margin: 0 auto; padding: 1.35rem 1.5rem; color: #f5f1e8;
  background: #0c1a2a; border: 1px solid rgba(198, 160, 88, 0.5); border-radius: 0.35rem;
  box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, 0.32);
}

.iu-consent-banner[hidden], .iu-consent-manage[hidden] { display: none; }
.iu-consent-copy { max-width: 52rem; }
.iu-consent-kicker { margin: 0 0 0.45rem; color: #d2b06c; font-size: 0.72rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; }
.iu-consent-copy h2 { margin: 0 0 0.45rem; color: #fff; font-family: "Playfair Display", Georgia, serif; font-size: clamp(1.25rem, 2vw, 1.65rem); font-weight: 500; line-height: 1.2; }
.iu-consent-copy p:not(.iu-consent-kicker) { margin: 0 0 0.55rem; color: #d8dee5; font-size: 0.9rem; line-height: 1.55; }
.iu-consent-copy a { color: #e2c587; font-size: 0.82rem; text-underline-offset: 0.2em; }
.iu-consent-actions { display: flex; flex-wrap: wrap; gap: 0.65rem; justify-content: flex-end; }

.iu-consent-button, .iu-consent-manage {
  min-height: 2.75rem; padding: 0.7rem 1rem; border: 1px solid #d2b06c; border-radius: 0.2rem;
  font-size: 0.78rem; font-weight: 600; letter-spacing: 0.04em; cursor: pointer;
}

.iu-consent-accept { color: #0c1a2a; background: #d2b06c; }
.iu-consent-decline { color: #f5f1e8; background: transparent; }
.iu-consent-button:hover, .iu-consent-button:focus-visible, .iu-consent-manage:hover, .iu-consent-manage:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.iu-consent-manage { position: fixed; z-index: 9999; right: 1rem; bottom: 1rem; color: #f5f1e8; background: #0c1a2a; box-shadow: 0 0.6rem 1.6rem rgba(0, 0, 0, 0.25); }

@media (max-width: 760px) {
  .iu-consent-banner { grid-template-columns: 1fr; gap: 1rem; max-height: calc(100vh - 2rem); overflow: auto; }
  .iu-consent-actions { display: grid; grid-template-columns: 1fr; }
  .iu-consent-button { width: 100%; }
}
