/* Complianz keeps ownership of visibility, categories and saved choices. */
body.glowline-site .cmplz-cookiebanner {
  --cmplz_banner_width: 540px;
  --cmplz_banner_background_color: #F6F2ED;
  --cmplz_banner_border_color: #D9C6C0;
  --cmplz_text_color: #2D2A23;
  --cmplz_hyperlink_color: #665F55;
  --cmplz_slider-active-color: #C49091;
  --cmplz_slider-inactive-color: #DDD2CA;
  --cmplz_slider-bullet-color: #F6F2ED;
  box-sizing: border-box;
  width: min(540px, calc(100vw - 48px)) !important;
  max-width: calc(100vw - 48px) !important;
  max-height: calc(100vh - 48px);
  max-height: calc(100dvh - 48px);
  margin: 0 !important;
  padding: 26px 28px 24px !important;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #C49091 #F6F2ED;
  color: var(--ink, #2D2A23) !important;
  background: var(--base, #F6F2ED) !important;
  border: 1px solid #D9C6C0 !important;
  border-radius: 20px !important;
  box-shadow: 0 16px 58px #2D2A2314, 0 3px 18px #D79D9C12 !important;
  font-family: var(--sans, Manrope, Arial, sans-serif) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  row-gap: 0 !important;
  -webkit-overflow-scrolling: touch;
}
body.glowline-site .cmplz-cookiebanner.cmplz-bottom-right {
  right: 24px !important;
  bottom: 24px !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  align-items: start;
  gap: 12px;
  padding: 0 !important;
  margin: 0 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-logo:empty { display: none; }
body.glowline-site .cmplz-cookiebanner .cmplz-title {
  display: block !important;
  grid-column: 1;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  color: var(--ink, #2D2A23) !important;
  font-family: var(--serif-small, Cormorant, Georgia, serif) !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em;
  text-align: left !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-close {
  grid-column: 2;
  position: relative;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px;
  min-height: 44px;
  margin: -8px -8px 0 0 !important;
  padding: 0 !important;
  color: var(--ink, #2D2A23);
  border: 1px solid transparent;
  border-radius: 50%;
  background: transparent;
  transition: background-color .25s ease, border-color .25s ease;
}
body.glowline-site .cmplz-cookiebanner .cmplz-close svg { visibility: hidden; }
body.glowline-site .cmplz-cookiebanner .cmplz-close::before,
body.glowline-site .cmplz-cookiebanner .cmplz-close::after {
  content: '';
  position: absolute;
  left: 12px;
  top: 21px;
  width: 19px;
  height: 1px;
  background: currentColor;
  transform: rotate(45deg);
  pointer-events: none;
}
body.glowline-site .cmplz-cookiebanner .cmplz-close::after { transform: rotate(-45deg); }
body.glowline-site .cmplz-cookiebanner .cmplz-close:hover {
  background-color: #ECC2C133;
  border-color: #D9C6C0;
}
body.glowline-site .cmplz-cookiebanner .cmplz-divider {
  height: 1px !important;
  margin: 16px 0 !important;
  border: 0 !important;
  background: #D9C6C0 !important;
  opacity: .8;
}
/* The card owns scrolling; disable the plugin's inner scrollbar-width compensation. */
body.glowline-site .cmplz-cookiebanner .cmplz-body {
  min-width: 0;
  max-height: none !important;
  padding: 0 !important;
  overflow: visible !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-message,
body.glowline-site .cmplz-cookiebanner .cmplz-categories,
body.glowline-site .cmplz-cookiebanner .cmplz-category,
body.glowline-site .cmplz-cookiebanner .cmplz-category-header {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
}
body.glowline-site .cmplz-cookiebanner .cmplz-message,
body.glowline-site .cmplz-cookiebanner .cmplz-message p,
body.glowline-site .cmplz-cookiebanner .cmplz-description {
  color: var(--muted, #665F55) !important;
  font-family: var(--sans, Manrope, Arial, sans-serif) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  overflow-wrap: anywhere;
}
body.glowline-site .cmplz-cookiebanner .cmplz-message {
  max-height: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-message p { margin: 0 0 12px; }
body.glowline-site .cmplz-cookiebanner .cmplz-message p:last-child { margin-bottom: 0; }
body.glowline-site .cmplz-cookiebanner .cmplz-categories {
  margin-top: 18px;
  padding: 0 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-category {
  margin: 0 0 8px !important;
  padding: 0 !important;
  background: #EADBD526 !important;
  border: 1px solid #D9C6C0 !important;
  border-radius: 10px !important;
  overflow: hidden;
}
body.glowline-site .cmplz-cookiebanner .cmplz-category-header {
  grid-template-columns: minmax(0, 1fr) max-content 44px !important;
  align-items: center;
  min-height: 52px;
  padding: 10px 13px !important;
  gap: 10px;
  color: var(--ink, #2D2A23) !important;
  font-family: var(--sans, Manrope, Arial, sans-serif) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-category-title {
  min-width: 0;
  justify-self: start;
  text-align: left;
  font-size: 14px !important;
  font-weight: 600 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-always-active {
  color: var(--muted, #665F55) !important;
  font-size: 12px !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-description { padding: 0 13px 14px !important; }
body.glowline-site .cmplz-cookiebanner .cmplz-category-toggle {
  position: relative;
  min-width: 44px;
  min-height: 44px;
  margin: -6px -8px -6px 0;
  border-radius: 50%;
  color: var(--ink, #2D2A23);
  cursor: pointer;
}
body.glowline-site .cmplz-cookiebanner .cmplz-category-toggle svg { visibility: hidden; }
body.glowline-site .cmplz-cookiebanner .cmplz-category-toggle::after {
  content: '';
  position: absolute;
  width: 7px;
  height: 7px;
  left: 17px;
  top: 16px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
  transition: transform .28s ease;
  pointer-events: none;
}
body.glowline-site .cmplz-cookiebanner .cmplz-category-toggle[aria-expanded="true"]::after {
  transform: translateY(3px) rotate(225deg);
}
body.glowline-site .cmplz-cookiebanner .cmplz-banner-checkbox input { accent-color: #C49091; }
body.glowline-site .cmplz-cookiebanner .cmplz-banner-checkbox input:checked + .cmplz-label::before {
  background-color: #C49091 !important;
  border-color: #C49091 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-buttons {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px !important;
  margin: 6px 0 0 !important;
  padding: 0 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  color: var(--ink, #2D2A23) !important;
  font-family: var(--sans, Manrope, Arial, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  text-align: center !important;
  white-space: normal !important;
  border: 1px solid #C49091 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  transition: background-color .25s ease, border-color .25s ease, box-shadow .25s ease;
}
body.glowline-site .cmplz-cookiebanner .cmplz-btn.cmplz-accept,
body.glowline-site .cmplz-cookiebanner .cmplz-btn.cmplz-deny {
  background: var(--button, #ECC2C1) !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
body.glowline-site .cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences {
  grid-column: 1 / -1;
  background: transparent !important;
  border-color: #D9C6C0 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-buttons .cmplz-btn:hover {
  background-color: #E8B7B7 !important;
  border-color: #B47F80 !important;
  box-shadow: 0 3px 12px #D79D9C1A !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-buttons :is(.cmplz-view-preferences, .cmplz-save-preferences):hover {
  background-color: #ECC2C133 !important;
  border-color: #C49091 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-documents {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 5px 18px;
  margin: 16px 0 0 !important;
  padding: 0 !important;
}
body.glowline-site .cmplz-cookiebanner .cmplz-documents a,
body.glowline-site .cmplz-cookiebanner .cmplz-message a {
  color: var(--muted, #665F55) !important;
  font-size: 12px !important;
  line-height: 1.7 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px;
  transition: color .25s ease;
}
body.glowline-site .cmplz-cookiebanner .cmplz-documents a { padding: 4px 0; }
body.glowline-site .cmplz-cookiebanner :is(a, button, [role="button"], input):focus-visible,
body.glowline-site .cmplz-cookiebanner .cmplz-banner-checkbox input:focus-visible + .cmplz-label {
  outline: 2px solid var(--focus, #6F584A) !important;
  outline-offset: 3px !important;
}
body.glowline-site.has-footer-consent #cmplz-manage-consent { display: none !important; }
@media (max-width: 760px) {
  body.glowline-site .cmplz-cookiebanner {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 112px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    max-height: calc(100dvh - 112px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    padding: 20px !important;
    border-radius: 17px !important;
  }
  body.glowline-site .cmplz-cookiebanner.cmplz-bottom-right {
    right: 12px !important;
    bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
  }
  body.glowline-site .cmplz-cookiebanner .cmplz-title { font-size: 30px !important; }
  body.glowline-site .cmplz-cookiebanner .cmplz-header { margin-bottom: 0 !important; }
  body.glowline-site .cmplz-cookiebanner .cmplz-buttons { gap: 9px !important; margin-top: 6px !important; }
  body.glowline-site .cmplz-cookiebanner .cmplz-buttons .cmplz-btn { padding: 11px 10px !important; }
  /* Keep the native fallback usable until the footer replacement is ready. */
  body.glowline-site:not(.has-footer-consent) #cmplz-manage-consent button.cmplz-btn.cmplz-manage-consent.cmplz-show {
    bottom: calc(74px + env(safe-area-inset-bottom, 0px)) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.glowline-site .cmplz-cookiebanner *,
  body.glowline-site .cmplz-cookiebanner *::before,
  body.glowline-site .cmplz-cookiebanner *::after { transition: none !important; }
}
