/**
 * consent-theme.css — BRAND ADAPTER (Impact24x7).
 * The banner hardcodes no colors/fonts: everything reads --consent-*, mapped here
 * to the locked site tokens (docs/brand-guidelines.md + site.css :root).
 * Change control: any colour/font change = Martijn approval + brand-guidelines.md
 * + site.css tokens updated together (see brand-guidelines.md §Change control).
 */
:root {
  --consent-primary: var(--navy, #0B1D33);        /* Master Navy */
  --consent-on-primary: var(--white, #FFFFFF);
  --consent-surface: var(--white, #FFFFFF);
  --consent-text: var(--navy, #0B1D33);
  --consent-muted: var(--slate, #5A6B7D);         /* Secondary Slate */
  --consent-border: var(--beige, #E8E2D6);        /* light neutral */
  --consent-radius: var(--radius, 10px);
  --consent-font: var(--font, "Manrope", sans-serif);
}

#tarteaucitronRoot #tarteaucitronAlertBig,
#tarteaucitronRoot #tarteaucitron,
#tarteaucitronRoot #tarteaucitronBack {
  font-family: var(--consent-font);
}

#tarteaucitronRoot #tarteaucitronAlertBig {
  background: var(--consent-surface);
  color: var(--consent-text);
  border-radius: var(--consent-radius);
}

#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronDeny,
#tarteaucitronRoot .tarteaucitronAllowAll,
#tarteaucitronRoot .tarteaucitronSave {
  font-family: var(--consent-font);
  border-radius: var(--consent-radius);
  cursor: pointer;
}

/* !important: the vendored stylesheet ships default button colours with equal/higher
   specificity — brand tokens must always win (brand adherence rule). */
#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronAllowAll {
  background: var(--consent-primary) !important;
  color: var(--consent-on-primary) !important;
  border: 1px solid var(--consent-primary) !important;
}

/* Reject styled with equal prominence (EDPB: reject as easy as accept) */
#tarteaucitronRoot .tarteaucitronDeny {
  background: var(--consent-surface) !important;
  color: var(--consent-primary) !important;
  border: 1px solid var(--consent-primary) !important;
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronLine {
  border-top: 1px solid var(--consent-border);
}

#tarteaucitronRoot .tarteaucitronName .tarteaucitronH2 {
  color: var(--consent-text);
  font-family: var(--consent-font);
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronH2 {
  color: var(--consent-text);
}

#tarteaucitronRoot #tarteaucitronAlertBig a,
#tarteaucitronRoot #tarteaucitron a {
  color: var(--bronze-text, #86621E); /* AA-passing text gold on light surfaces */
}

#tarteaucitronRoot #tarteaucitronBack {
  background: rgba(11, 29, 51, 0.55); /* navy scrim */
}

/* ==================== Library-default kill-list (brand adherence) ====================
   tarteaucitron ships yellow (#fbd600) states, a lemon icon and a "tarte au citron"
   credit. All of it is overridden here to brand tokens; icon/credit are disabled in
   consent-init.js (iconSrc + removeCredit). Every rule !important: vendor stylesheet
   ships equal/higher specificity — brand tokens must always win. */

/* typography everywhere in banner + panel */
#tarteaucitronRoot,
#tarteaucitronRoot button,
#tarteaucitronRoot a,
#tarteaucitronRoot span,
#tarteaucitronRoot div {
  font-family: var(--consent-font) !important;
}

/* panel + dialogs */
#tarteaucitronRoot #tarteaucitron,
#tarteaucitronRoot #tarteaucitronAlertBig,
#tarteaucitronRoot #tarteaucitronPrivacyUrlDialog {
  background: var(--consent-surface) !important;
  color: var(--consent-text) !important;
}
#tarteaucitronRoot #tarteaucitron .tarteaucitronH2,
#tarteaucitronRoot #tarteaucitron .tarteaucitronH1,
#tarteaucitronRoot #tac_title {
  color: var(--consent-text) !important;
}

/* ALL yellow (#fbd600) states -> brand tokens */
#tarteaucitronRoot .tarteaucitron-magic-block button,
#tarteaucitronRoot .tac_activate .tarteaucitronAllow {
  background: var(--consent-primary) !important;
  color: var(--consent-on-primary) !important;
}
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
  border-color: var(--bronze, #C79A3A) !important; /* brand Gold = rules/borders per guidelines */
}
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied.tarteaucitronIsSelected,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied2.tarteaucitronIsSelected,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitron #tarteaucitronPrivacyUrlDialog {
  background: var(--consent-primary) !important;
  color: var(--consent-on-primary) !important;
  border-color: var(--consent-primary) !important;
}

/* checkbox / cross glyphs (vendor forces the unicode chars via content) */
#tarteaucitronRoot .tarteaucitronCheck::before,
#tarteaucitronRoot .tarteaucitronCross::before {
  color: var(--consent-primary) !important;
}

/* save / allow buttons in panel */
#tarteaucitronRoot #tarteaucitron .tarteaucitronSave,
#tarteaucitronRoot #tarteaucitron .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron .tarteaucitronAllowAll {
  background: var(--consent-primary) !important;
  color: var(--consent-on-primary) !important;
  border: 1px solid var(--consent-primary) !important;
}
#tarteaucitronRoot #tarteaucitron .tarteaucitronDeny {
  background: var(--consent-surface) !important;
  color: var(--consent-primary) !important;
  border: 1px solid var(--consent-primary) !important;
}

/* floating re-open icon (brand favicon via iconSrc) */
#tarteaucitronRoot #tarteaucitronIcon {
  background: var(--consent-surface) !important;
  border: 1px solid var(--consent-border) !important;
  border-radius: var(--consent-radius) !important;
}

/* no third-party credit link (belt & braces next to removeCredit) */
#tarteaucitronRoot #tarteaucitronCredits,
#tarteaucitronRoot a[href*="tarteaucitron.io"] {
  display: none !important;
}codes no colors/fonts: everything reads --consent-*, mapped here
 * to the locked site tokens (docs/brand-guidelines.md + site.css :root).
 * Change control: any colour/font change = Martijn approval + brand-guidelines.md
 * + site.css tokens updated together (see brand-guidelines.md §Change control).
 */
:root {
  --consent-primary: var(--navy, #0B1D33);        /* Master Navy */
  --consent-on-primary: var(--white, #FFFFFF);
  --consent-surface: var(--white, #FFFFFF);
  --consent-text: var(--navy, #0B1D33);
  --consent-muted: var(--slate, #5A6B7D);         /* Secondary Slate */
  --consent-border: var(--beige, #E8E2D6);        /* light neutral */
  --consent-radius: var(--radius, 10px);
  --consent-font: var(--font, "Manrope", sans-serif);
}

#tarteaucitronRoot #tarteaucitronAlertBig,
#tarteaucitronRoot #tarteaucitron,
#tarteaucitronRoot #tarteaucitronBack {
  font-family: var(--consent-font);
}

#tarteaucitronRoot #tarteaucitronAlertBig {
  background: var(--consent-surface);
  color: var(--consent-text);
  border-radius: var(--consent-radius);
}

#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronDeny,
#tarteaucitronRoot .tarteaucitronAllowAll,
#tarteaucitronRoot .tarteaucitronSave {
  font-family: var(--consent-font);
  border-radius: var(--consent-radius);
  cursor: pointer;
}

/* !important: the vendored stylesheet ships default button colours with equal/higher
   specificity — brand tokens must always win (brand adherence rule). */
#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronAllowAll {
  background: var(--consent-primary) !important;
  color: var(--consent-on-primary) !important;
  border: 1px solid var(--consent-primary) !important;
}

/* Reject styled with equal prominence (EDPB: reject as easy as accept) */
#tarteaucitronRoot .tarteaucitronDeny {
  background: var(--consent-surface) !important;
  color: var(--consent-primary) !important;
  border: 1px solid var(--consent-primary) !important;
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronLine {
  border-top: 1px solid var(--consent-border);
}

#tarteaucitronRoot .tarteaucitronName .tarteaucitronH2 {
  color: var(--consent-text);
  font-family: var(--consent-font);
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronH2 {
  color: var(--consent-text);
}

#tarteaucitronRoot #tarteaucitronAlertBig a,
#tarteaucitronRoot #tarteaucitron a {
  color: var(--bronze-text, #86621E); /* AA-passing text gold on light surfaces */
}

#tarteaucitronRoot #tarteaucitronBack {
  background: rgba(11, 29, 51, 0.55); /* navy scrim */
}

/* ==================== Library-default kill-list (brand adherence) ====================
   tarteaucitron ships yellow (#fbd600) states, a lemon icon and a "tarte au citron"
   credit. All of it is overridden here to brand tokens; icon/credit are disabled in
   consent-init.js (iconSrc + removeCredit). Every rule !important: vendor stylesheet
   ships equal/higher specificity — brand tokens must always win. */

/* typography everywhere in banner + panel */
#tarteaucitronRoot,
#tarteaucitronRoot button,
#tarteaucitronRoot a,
#tarteaucitronRoot span,
#tarteaucitronRoot div {
  font-family: var(--consent-font) !important;
}

/* panel + dialogs */
#tarteaucitronRoot #tarteaucitron,
#tarteaucitronRoot #tarteaucitronAlertBig,
#tarteaucitronRoot #tarteaucitronPrivacyUrlDialog {
  background: var(--consent-surface) !important;
  color: var(--consent-text) !important;
}
#tarteaucitronRoot #tarteaucitron .tarteaucitronH2,
#tarteaucitronRoot #tarteaucitron .tarteaucitronH1,
#tarteaucitronRoot #tac_title {
  color: var(--consent-text) !important;
}

/* ALL yellow (#fbd600) states -> brand tokens */
#tarteaucitronRoot .tarteaucitron-magic-block button,
#tarteaucitronRoot .tac_activate .tarteaucitronAllow {
  background: var(--consent-primary) !important;
  color: var(--consent-on-primary) !important;
}
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
  border-color: var(--bronze, #C79A3A) !important; /* brand Gold = rules/borders per guidelines */
}
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied.tarteaucitronIsSelected,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied2.tarteaucitronIsSelected,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitron #tarteaucitronPrivacyUrlDialog {
  background: var(--consent-primary) !important;
  color: var(--consent-on-primary) !important;
  border-color: var(--consent-primary) !important;
}

/* checkbox / cross glyphs (vendor forces the unicode chars via content) */
#tarteaucitronRoot .tarteaucitronCheck::before,
#tarteaucitronRoot .tarteaucitronCross::before {
  color: var(--consent-primary) !important;
}

/* save / allow buttons in panel */
#tarteaucitronRoot #tarteaucitron .tarteaucitronSave,
#tarteaucitronRoot #tarteaucitron .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron .tarteaucitronAllowAll {
  background: var(--consent-primary) !important;
  color: var(--consent-on-primary) !important;
  border: 1px solid var(--consent-primary) !important;
}
#tarteaucitronRoot #tarteaucitron .tarteaucitronDeny {
  background: var(--consent-surface) !important;
  color: var(--consent-primary) !important;
  border: 1px solid var(--consent-primary) !important;
}

/* floating re-open icon (brand favicon via iconSrc) */
#tarteaucitronRoot #tarteaucitronIcon {
  background: var(--consent-surface) !important;
  border: 1px solid var(--consent-border) !important;
  border-radius: var(--consent-radius) !important;
}

/* no third-party credit link (belt & braces next to removeCredit) */
#tarteaucitronRoot #tarteaucitronCredits,
#tarteaucitronRoot a[href*="tarteaucitron.io"] {
  display: none !important;
}
