/**
 * DemandSense Cookiebot presentation layer
 * Cookiebot owns consent behavior and markup. This file only overrides the
 * standard banner's visual presentation using Cookiebot's public DOM IDs/classes.
 */

#CybotCookiebotDialog,
#CookiebotWidget {
  font-family: Lato, Arial, sans-serif !important;
}

#CybotCookiebotDialog {
  background: var(--ds-cb-bg, #001628) !important;
  color: var(--ds-cb-text, #fff) !important;
  border: 1px solid color-mix(in srgb, var(--ds-cb-border, #355464) 72%, transparent) !important;
  border-radius: var(--ds-cb-radius, 22px) !important;
  box-shadow: 0 24px 72px rgba(0, 0, 0, .42) !important;
  overflow: hidden !important;
}

#CybotCookiebotDialog *,
#CybotCookiebotDialogBodyContentTitle,
#CybotCookiebotDialogBodyContentText,
#CybotCookiebotDialogBodyEdgeMoreDetails a,
#CybotCookiebotDialogBodyLevelDetailsButton,
#CybotCookiebotDialogDetail,
#CybotCookiebotDialogDetailBodyContentTextAbout,
#CybotCookiebotDialogDetailBodyContentCookieContainerTypes,
#CybotCookiebotDialogDetailBodyContentCookieContainerTypeDetails {
  font-family: Lato, Arial, sans-serif !important;
}

#CybotCookiebotDialogBodyContentTitle,
#CybotCookiebotDialogBodyLevelTitle,
#CybotCookiebotDialogDetailBodyContentCookieContainerTypeHeader,
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink {
  color: var(--ds-cb-text, #fff) !important;
}

#CybotCookiebotDialogBodyContentTitle {
  font-size: clamp(1.2rem, 1.6vw, 1.55rem) !important;
  line-height: 1.16 !important;
  font-weight: 700 !important;
  letter-spacing: -.02em !important;
}

#CybotCookiebotDialogBodyContentText,
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonDescription,
#CybotCookiebotDialogDetail,
#CybotCookiebotDialogDetailBodyContentTextAbout,
#CybotCookiebotDialogDetailBodyContentCookieContainerTypeDetails,
#CybotCookiebotDialogBodyLevelButtonIABHeaderViewText,
#CybotCookiebotDialogHeaderLogosWrapper + div {
  color: var(--ds-cb-muted, #c7d4db) !important;
}

#CybotCookiebotDialog a,
#CybotCookiebotDialog a:hover,
#CybotCookiebotDialog a:focus,
#CybotCookiebotDialogBodyLevelDetailsButton,
#CybotCookiebotDialogBodyEdgeMoreDetails a {
  color: var(--ds-cb-accent, #99d9d9) !important;
}

#CybotCookiebotDialogBodyLevelButtonsSelectPane,
#CybotCookiebotDialogDetail,
#CybotCookiebotDialogNav,
#CybotCookiebotDialogBodyLevelDetailsWrapper,
#CybotCookiebotDialogDetailFooter {
  background: transparent !important;
  border-color: color-mix(in srgb, var(--ds-cb-border, #355464) 66%, transparent) !important;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyButton {
  min-height: 44px !important;
  border-radius: 999px !important;
  border: 1px solid var(--ds-cb-border, #355464) !important;
  font-family: Lato, Arial, sans-serif !important;
  font-size: .9rem !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease !important;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyButton:hover,
#CybotCookiebotDialog .CybotCookiebotDialogBodyButton:focus-visible {
  transform: translateY(-1px) !important;
}

#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll,
#CybotCookiebotDialogBodyButtonAccept,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  background: var(--ds-cb-accent, #99d9d9) !important;
  border-color: var(--ds-cb-accent, #99d9d9) !important;
  color: var(--ds-cb-accent-text, #001628) !important;
}

#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll:hover,
#CybotCookiebotDialogBodyButtonAccept:hover,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection:hover {
  filter: brightness(1.05) !important;
}

#CybotCookiebotDialogBodyLevelButtonLevelOptinDeclineAll,
#CybotCookiebotDialogBodyButtonDecline,
#CybotCookiebotDialogBodyLevelButtonCustomize {
  background: transparent !important;
  border-color: var(--ds-cb-border, #355464) !important;
  color: var(--ds-cb-text, #fff) !important;
}

#CybotCookiebotDialogBodyLevelButtonLevelOptinDeclineAll:hover,
#CybotCookiebotDialogBodyButtonDecline:hover,
#CybotCookiebotDialogBodyLevelButtonCustomize:hover {
  background: color-mix(in srgb, var(--ds-cb-border, #355464) 26%, transparent) !important;
  border-color: var(--ds-cb-accent, #99d9d9) !important;
}

#CybotCookiebotDialog input:checked + .CybotCookiebotDialogBodyLevelButtonSlider {
  background-color: var(--ds-cb-accent, #99d9d9) !important;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSlider {
  background-color: color-mix(in srgb, var(--ds-cb-border, #355464) 86%, #001628) !important;
}

#CybotCookiebotDialog input:checked + .CybotCookiebotDialogBodyLevelButtonSlider::before {
  background-color: var(--ds-cb-accent-text, #001628) !important;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSlider::before {
  background-color: var(--ds-cb-text, #fff) !important;
}

#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink.CybotCookiebotDialogActive {
  border-color: var(--ds-cb-accent, #99d9d9) !important;
  color: var(--ds-cb-accent, #99d9d9) !important;
}

#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieContainerButton:hover,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieContainerButton:focus-visible {
  background: color-mix(in srgb, var(--ds-cb-border, #355464) 22%, transparent) !important;
}

#CybotCookiebotDialogPoweredByText,
#CybotCookiebotDialogPoweredbyCybot,
#CybotCookiebotDialogHeaderLogosWrapper {
  color: var(--ds-cb-muted, #c7d4db) !important;
}

/* Cookiebot's floating privacy trigger remains visible, but is brought into the site palette.
   Keep Cookiebot's outer launcher shells transparent so its default white square
   does not show behind the circular DemandSense-styled control. */
#CookiebotWidget,
#CookiebotWidget.CookiebotWidget-open,
#CookiebotWidget .CookiebotWidget-body,
#CookiebotWidget .CookiebotWidget-logo,
#CookiebotWidget .CookiebotWidget-logo-wrapper {
  background-color: transparent !important;
}

#CookiebotWidget,
#CookiebotWidget .CookiebotWidget-body,
#CookiebotWidget .CookiebotWidget-logo-wrapper {
  border-color: transparent !important;
  box-shadow: none !important;
}

#CookiebotWidget .CookiebotWidget-logo svg circle,
#CookiebotWidget .CookiebotWidget-logo svg path {
  transition: fill .18s ease !important;
}

#CookiebotWidget .CookiebotWidget-logo {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .28) !important;
}

#CookiebotWidget .CookiebotWidget-logo svg circle {
  fill: var(--ds-cb-bug-bg, #000000) !important;
}

#CookiebotWidget .CookiebotWidget-logo svg path {
  fill: var(--ds-cb-bug-logo, #99d9d9) !important;
}

/* Post-consent Cookiebot settings panel. Reuse the same Customizer tokens as
   the primary consent banner so both Cookiebot surfaces stay visually aligned. */
#CookiebotWidget #CookiebotWidget-widgetContent {
  background: var(--ds-cb-bg, #001628) !important;
  color: var(--ds-cb-text, #fff) !important;
  border: 1px solid color-mix(in srgb, var(--ds-cb-border, #355464) 72%, transparent) !important;
  border-radius: var(--ds-cb-radius, 22px) !important;
  box-shadow: 0 24px 72px rgba(0, 0, 0, .42) !important;
  overflow: hidden !important;
}

#CookiebotWidget .CookiebotWidget-contents,
#CookiebotWidget .CookiebotWidget-header,
#CookiebotWidget .CookiebotWidget-body,
#CookiebotWidget .CookiebotWidget-body-inner,
#CookiebotWidget .CookiebotWidget-consents-list,
#CookiebotWidget .CookiebotWidget-consent-details,
#CookiebotWidget .CookiebotWidget-main-logo {
  background: transparent !important;
  color: var(--ds-cb-text, #fff) !important;
}

#CookiebotWidget .CookiebotWidget-header {
  border-bottom: 1px solid color-mix(in srgb, var(--ds-cb-border, #355464) 66%, transparent) !important;
}

#CookiebotWidget .CookiebotWidget-header strong,
#CookiebotWidget .CookiebotWidget-state,
#CookiebotWidget .CookiebotWidget-consents-list li,
#CookiebotWidget .CookiebotWidget-consent-details-box strong {
  color: var(--ds-cb-text, #fff) !important;
}

#CookiebotWidget .CookiebotWidget-date,
#CookiebotWidget .CookiebotWidget-consent-id,
#CookiebotWidget .CookiebotWidget-consent-details-box {
  color: var(--ds-cb-muted, #c7d4db) !important;
}

#CookiebotWidget .CookiebotWidget-close,
#CookiebotWidget .CookiebotWidget-show-consent-details {
  background: transparent !important;
  border: 0 !important;
}

#CookiebotWidget .CookiebotWidget-close {
  color: var(--ds-cb-text, #fff) !important;
}

#CookiebotWidget .CookiebotWidget-close svg path {
  fill: var(--ds-cb-text, #fff) !important;
}

#CookiebotWidget .CookiebotWidget-show-consent-details {
  color: var(--ds-cb-accent, #99d9d9) !important;
}

#CookiebotWidget .CookiebotWidget-show-consent-details svg path,
#CookiebotWidget .Cookiebotwidget-consent-icon svg path {
  fill: var(--ds-cb-accent, #99d9d9) !important;
}

#CookiebotWidget .CookiebotWidget-main-logo a {
  color: var(--ds-cb-muted, #c7d4db) !important;
}

#CookiebotWidget .CookiebotWidget-main-logo svg path {
  fill: var(--ds-cb-muted, #c7d4db) !important;
}

#CookiebotWidget #CookiebotWidget-buttons {
  background: transparent !important;
  border-top: 1px solid color-mix(in srgb, var(--ds-cb-border, #355464) 66%, transparent) !important;
}

#CookiebotWidget #CookiebotWidget-btn-withdraw,
#CookiebotWidget #CookiebotWidget-btn-change {
  min-height: 44px !important;
  border-radius: 999px !important;
  font-family: Lato, Arial, sans-serif !important;
  font-weight: 700 !important;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease !important;
}

#CookiebotWidget #CookiebotWidget-btn-change {
  background: var(--ds-cb-accent, #99d9d9) !important;
  border: 2px solid var(--ds-cb-accent, #99d9d9) !important;
  color: var(--ds-cb-accent-text, #001628) !important;
}

#CookiebotWidget #CookiebotWidget-btn-withdraw {
  background: transparent !important;
  border: 2px solid var(--ds-cb-border, #355464) !important;
  color: var(--ds-cb-text, #fff) !important;
}

#CookiebotWidget #CookiebotWidget-btn-change:hover,
#CookiebotWidget #CookiebotWidget-btn-change:focus-visible,
#CookiebotWidget #CookiebotWidget-btn-withdraw:hover,
#CookiebotWidget #CookiebotWidget-btn-withdraw:focus-visible {
  transform: translateY(-1px) !important;
}

#CookiebotWidget #CookiebotWidget-btn-change:hover,
#CookiebotWidget #CookiebotWidget-btn-change:focus-visible {
  filter: brightness(1.05) !important;
}

#CookiebotWidget #CookiebotWidget-btn-withdraw:hover,
#CookiebotWidget #CookiebotWidget-btn-withdraw:focus-visible {
  background: color-mix(in srgb, var(--ds-cb-border, #355464) 26%, transparent) !important;
  border-color: var(--ds-cb-accent, #99d9d9) !important;
}

#CookiebotWidget .CookiebotWidgetSpinner {
  color: var(--ds-cb-text, #fff) !important;
}

@media (max-width: 767px) {
  #CybotCookiebotDialog {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin: 0 12px 12px !important;
    border-radius: min(var(--ds-cb-radius, 22px), 20px) !important;
  }

  #CybotCookiebotDialog .CybotCookiebotDialogBodyButton,
  #CookiebotWidget #CookiebotWidget-btn-withdraw,
  #CookiebotWidget #CookiebotWidget-btn-change {
    min-height: 46px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #CybotCookiebotDialog .CybotCookiebotDialogBodyButton,
  #CookiebotWidget #CookiebotWidget-btn-withdraw,
  #CookiebotWidget #CookiebotWidget-btn-change,
  #CookiebotWidget .CookiebotWidget-logo svg circle,
  #CookiebotWidget .CookiebotWidget-logo svg path {
    transition: none !important;
  }
}
