/* Mailnaptic cookie banner (iubenda) — brand skin.
   Brand tokens: ink #0e1330, text #2b3150, muted #6b7089, line #e6e4df, bg #faf9f7, indigo #4f46e5, violet #7c3aed. */

#iubenda-cs-banner#iubenda-cs-banner,
#iubenda-iframe#iubenda-iframe {
  --mn-ink: #0e1330;
  --mn-text: #2b3150;
  --mn-muted: #6b7089;
  --mn-line: #e6e4df;
  --mn-bg: #faf9f7;
  --mn-indigo: #4f46e5;
  --mn-violet: #7c3aed;
  --mn-grad: linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);
  font-family: Inter, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* No iubenda branding anywhere */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-brand-badge-outer,
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-brand-badge,
#iubenda-iframe#iubenda-iframe .iub-iframe-brand-button,
#iubenda-iframe#iubenda-iframe .iubenda-cs-brand-badge-outer,
#iubenda-iframe#iubenda-iframe .iubenda-iframe-badge-container,
.iubenda-cs-brand-badge-outer { display: none !important; }

/* Backdrop */
#iubenda-cs-banner#iubenda-cs-banner.iubenda-cs-overlay,
#iubenda-iframe#iubenda-iframe.iubenda-iframe-visible {
  background: rgba(14, 19, 48, 0.55) !important;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}

/* ---------- Banner card ---------- */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-content {
  width: min(540px, calc(100vw - 32px)) !important;
  max-width: 540px !important;
  border: 1px solid var(--mn-line);
  border-radius: 20px !important;
  box-shadow: 0 30px 80px -20px rgba(14, 19, 48, 0.45), 0 8px 24px -8px rgba(79, 70, 229, 0.18) !important;
  overflow: hidden;
  padding: 0 !important;
  color: var(--mn-text) !important;
}
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-rationale { padding: 0 !important; }
#iubenda-cs-banner#iubenda-cs-banner .iubenda-banner-content {
  padding: 28px 28px 8px !important;
  position: relative;
}
/* Brand accent bar */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-content::before {
  content: "";
  display: block;
  height: 4px;
  background: var(--mn-grad);
}
#iubenda-cs-banner#iubenda-cs-banner #iubenda-cs-paragraph,
#iubenda-cs-banner#iubenda-cs-banner #iubenda-cs-paragraph p {
  color: var(--mn-text) !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
  margin: 0 0 10px !important;
}
#iubenda-cs-banner#iubenda-cs-banner #iubenda-cs-paragraph strong { color: var(--mn-ink); }
#iubenda-cs-banner#iubenda-cs-banner a.iubenda-cs-cookie-policy-lnk,
#iubenda-iframe#iubenda-iframe a.iubenda-cs-cookie-policy-lnk {
  color: var(--mn-indigo) !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Purposes toggles */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-granular-controls-container {
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 6px 28px 4px !important;
  padding: 14px 16px !important;
  background: var(--mn-bg) !important;
  border: 1px solid var(--mn-line);
  border-radius: 12px;
}
#iubenda-cs-banner#iubenda-cs-banner .iubenda-granular-controls-container label,
#iubenda-cs-banner#iubenda-cs-banner .iubenda-granular-controls-container label span {
  color: var(--mn-ink) !important;
  font-weight: 600;
  font-size: 14px;
}

/* Toggle switches (banner + panel) */
#iubenda-cs-banner#iubenda-cs-banner .iub-toggle-checkbox input[type="checkbox"] + label::before,
#iubenda-iframe#iubenda-iframe .iub-toggle-checkbox input[type="checkbox"]:not(.locked) + label::before { background: #cfd2e0 !important; }
#iubenda-cs-banner#iubenda-cs-banner .iub-toggle-checkbox input[type="checkbox"]:checked + label::before,
#iubenda-iframe#iubenda-iframe .iub-toggle-checkbox input[type="checkbox"]:checked {
  background-color: var(--mn-indigo) !important;
  border-color: var(--mn-indigo) !important;
}
#iubenda-cs-banner#iubenda-cs-banner .iub-toggle-checkbox input:focus-visible + label,
#iubenda-iframe#iubenda-iframe .iub-toggle-checkbox input:focus-visible { outline: 2px solid var(--mn-indigo); outline-offset: 3px; }

/* ---------- Buttons: Accept is the hero ---------- */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-opt-group {
  display: flex !important;
  flex-direction: column;
  gap: 10px;
  padding: 18px 28px 24px !important;
}
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-opt-group-consent {
  display: flex !important;
  flex-direction: column-reverse; /* Accept first, then Reject */
  gap: 10px;
  width: 100%;
}
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-opt-group-custom { order: 3; width: 100%; text-align: center; }

#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-opt-group button,
#iubenda-iframe#iubenda-iframe .iub-btn-consent,
#iubenda-iframe#iubenda-iframe #iubFooterBtn,
#iubenda-iframe#iubenda-iframe #iubRejectBtn {
  font-family: inherit !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  border-radius: 12px !important;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease, border-color .15s ease;
}

/* Accept all — primary, brand gradient */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-accept-btn,
#iubenda-iframe#iubenda-iframe .iub-btn-accept,
#iubenda-iframe#iubenda-iframe #iubFooterBtn {
  background: var(--mn-grad) !important;
  color: #fff !important;
  border: 0 !important;
  min-height: 52px !important;
  width: 100% !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  box-shadow: 0 10px 24px -8px rgba(79, 70, 229, 0.65), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-accept-btn:hover,
#iubenda-iframe#iubenda-iframe .iub-btn-accept:hover,
#iubenda-iframe#iubenda-iframe #iubFooterBtn:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 30px -8px rgba(79, 70, 229, 0.75), inset 0 1px 0 rgba(255,255,255,.18) !important;
  filter: brightness(1.05);
}

/* Reject all — secondary, outlined (clearly visible, but quieter) */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-reject-btn,
#iubenda-iframe#iubenda-iframe .iub-btn-reject,
#iubenda-iframe#iubenda-iframe #iubRejectBtn {
  background: #fff !important;
  color: var(--mn-ink) !important;
  border: 1.5px solid #d6d3cb !important;
  min-height: 46px !important;
  width: 100% !important;
  box-shadow: none !important;
}
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-reject-btn:hover,
#iubenda-iframe#iubenda-iframe .iub-btn-reject:hover,
#iubenda-iframe#iubenda-iframe #iubRejectBtn:hover { background: var(--mn-bg) !important; border-color: var(--mn-ink) !important; }

/* Learn more — tertiary text link */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-customize-btn {
  background: transparent !important;
  color: var(--mn-muted) !important;
  border: 0 !important;
  box-shadow: none !important;
  width: auto !important;
  min-height: 0 !important;
  padding: 6px 10px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-customize-btn:hover { color: var(--mn-indigo) !important; }

#iubenda-cs-banner#iubenda-cs-banner button:focus-visible,
#iubenda-iframe#iubenda-iframe button:focus-visible { outline: 3px solid rgba(79, 70, 229, .45) !important; outline-offset: 2px; }

/* ---------- "Learn more" panel (Your Privacy Choices) ---------- */
#iubenda-iframe#iubenda-iframe #iubenda-iframe#iubenda-iframe-popup {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid var(--mn-line);
  box-shadow: 0 30px 80px -20px rgba(14, 19, 48, 0.5) !important;
  width: min(680px, calc(100vw - 24px)) !important;
  max-width: 680px !important;
  overflow: hidden;
}
#iubenda-iframe#iubenda-iframe #iubenda-iframe#iubenda-iframe-content,
#iubenda-iframe#iubenda-iframe #purposes-container,
#iubenda-iframe#iubenda-iframe .iubenda-iframe-top-container,
#iubenda-iframe#iubenda-iframe #purposes-content-container { background: #fff !important; color: var(--mn-text) !important; }
#iubenda-iframe#iubenda-iframe #iubenda-iframe#iubenda-iframe-popup::before {
  content: "";
  display: block;
  height: 4px;
  background: var(--mn-grad);
}
#iubenda-iframe#iubenda-iframe .purposes-header { padding-top: 4px; }
#iubenda-iframe#iubenda-iframe .purposes-header-title {
  color: var(--mn-ink) !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em;
  line-height: 1.2 !important;
}
#iubenda-iframe#iubenda-iframe .purposes-header-text,
#iubenda-iframe#iubenda-iframe .purposes-section-header-text,
#iubenda-iframe#iubenda-iframe .purposes-item-body {
  color: var(--mn-text) !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
}
#iubenda-iframe#iubenda-iframe .purposes-section-header-title { color: var(--mn-ink) !important; font-size: 18px !important; font-weight: 700 !important; }
#iubenda-iframe#iubenda-iframe .purposes-item {
  background: var(--mn-bg) !important;
  border: 1px solid var(--mn-line) !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  margin-bottom: 10px;
}
#iubenda-iframe#iubenda-iframe .purposes-item-title label { color: var(--mn-ink) !important; font-weight: 700; }

/* Top buttons in the panel: Accept leads, Reject quiet */
#iubenda-iframe#iubenda-iframe .iub-consent-buttons { display: flex !important; flex-direction: row-reverse; gap: 10px; justify-content: flex-start; }
#iubenda-iframe#iubenda-iframe .iub-consent-buttons > div { flex: 0 0 auto; }
#iubenda-iframe#iubenda-iframe .iub-consent-buttons .iub-btn-accept { width: auto !important; min-height: 48px !important; padding: 0 28px !important; }
#iubenda-iframe#iubenda-iframe .iub-consent-buttons .iub-btn-reject { width: auto !important; min-height: 48px !important; padding: 0 22px !important; }
#iubenda-iframe#iubenda-iframe .iub-btn-consent svg { display: none !important; } /* the check/x icons add noise */

/* Header utility buttons (back, full cookie policy) */
#iubenda-iframe#iubenda-iframe .purposes-btn-back,
#iubenda-iframe#iubenda-iframe .iub-btn-cp {
  background: var(--mn-bg) !important;
  color: var(--mn-ink) !important;
  border: 1px solid var(--mn-line) !important;
  border-radius: 10px !important;
}
#iubenda-iframe#iubenda-iframe .purposes-btn-back:hover,
#iubenda-iframe#iubenda-iframe .iub-btn-cp:hover { border-color: var(--mn-indigo) !important; color: var(--mn-indigo) !important; }

/* Panel footer: Save and continue is the primary action */
#iubenda-iframe#iubenda-iframe .iubenda-iframe-footer {
  background: #fff !important;
  border-top: 1px solid var(--mn-line);
  padding: 16px 24px !important;
}
#iubenda-iframe#iubenda-iframe #iubFooterBtnContainer { display: flex; gap: 10px; justify-content: flex-end; }
#iubenda-iframe#iubenda-iframe #iubFooterBtn { width: auto !important; min-width: 200px; }
#iubenda-iframe#iubenda-iframe #iubRejectBtn { width: auto !important; min-width: 120px; }

/* Floating "privacy preferences" button (after consent) */
.iubenda-cs-preferences-link,
#iubenda-cs-banner#iubenda-cs-banner ~ .iubenda-tp-btn { border-radius: 999px !important; }

/* Phones */
@media (max-width: 560px) {
  #iubenda-cs-banner#iubenda-cs-banner .iubenda-banner-content { padding: 22px 20px 6px !important; }
  #iubenda-cs-banner#iubenda-cs-banner .iubenda-granular-controls-container { margin: 6px 20px 4px !important; }
  #iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-opt-group { padding: 16px 20px 20px !important; }
  #iubenda-iframe#iubenda-iframe .iub-consent-buttons { flex-direction: column; }
  #iubenda-iframe#iubenda-iframe .iub-consent-buttons .iub-btn-accept,
  #iubenda-iframe#iubenda-iframe .iub-consent-buttons .iub-btn-reject,
  #iubenda-iframe#iubenda-iframe #iubFooterBtn,
  #iubenda-iframe#iubenda-iframe #iubRejectBtn { width: 100%; }
  #iubenda-iframe#iubenda-iframe #iubFooterBtnContainer { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  #iubenda-cs-banner#iubenda-cs-banner *, #iubenda-iframe#iubenda-iframe * { transition: none !important; }
}

/* Polish: centred "Learn more", flat toggle row, no empty paragraphs */
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-opt-group-custom { display: flex !important; justify-content: center !important; }
#iubenda-cs-banner#iubenda-cs-banner .iubenda-cs-customize-btn { margin: 0 auto !important; text-align: center !important; }
#iubenda-cs-banner#iubenda-cs-banner .iub-toggle-checkbox { background: transparent !important; border: 0 !important; padding: 0 !important; box-shadow: none !important; }
#iubenda-cs-banner#iubenda-cs-banner .iub-p:empty { display: none !important; }
