/* Memorify overrides for CookieConsent v3 */
#cc-main {
  --cc-font-family: var(--sans);
  --cc-bg: var(--ink);
  --cc-primary-color: var(--paper);
  --cc-secondary-color: rgba(248, 245, 239, 0.62);
  --cc-btn-primary-bg: var(--ultra);
  --cc-btn-primary-color: var(--paper);
  --cc-btn-primary-border-color: var(--ultra);
  --cc-btn-primary-hover-bg: var(--ultra-deep);
  --cc-btn-primary-hover-color: var(--paper);
  --cc-btn-primary-hover-border-color: var(--ultra-deep);
  --cc-btn-secondary-bg: transparent;
  --cc-btn-secondary-color: var(--paper);
  --cc-btn-secondary-border-color: rgba(248, 245, 239, 0.35);
  --cc-btn-secondary-hover-bg: rgba(248, 245, 239, 0.08);
  --cc-btn-secondary-hover-color: var(--paper);
  --cc-btn-secondary-hover-border-color: rgba(248, 245, 239, 0.5);
  --cc-btn-border-radius: 0px;
  --cc-modal-border-radius: 0px;
  --cc-modal-margin: 20px;
  --cc-separator-border-color: var(--rule-l);
}

#cc-main .cm,
#cc-main .cm--cloud,
#cc-main .cm--cloud.cm--inline {
  max-width: fit-content !important;
  width: auto !important;
  margin-inline: auto;
  padding: 0 !important;
  border: 1px solid var(--rule-l);
  box-shadow: 0 24px 60px -28px rgba(0, 0, 0, 0.6);
}

#cc-main .cm--bottom.cm--center {
  left: 50% !important;
  right: auto !important;
  bottom: var(--cc-modal-margin) !important;
  transform: translateX(-50%) translateY(1.6em);
}

.show--consent #cc-main .cc--anim .cm--bottom.cm--center {
  transform: translateX(-50%) translateY(0) !important;
}

#cc-main .cm__body {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
  padding: 16px 20px !important;
  width: auto !important;
}

#cc-main .cm__texts {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 1 auto;
  min-width: 0;
  padding: 0 !important;
  margin: 0 !important;
}

#cc-main .cm__title {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}

#cc-main .cm__desc {
  margin: 0 !important;
  padding: 0 !important;
  width: max-content;
  max-width: 46ch;
  font-size: 13px;
  line-height: 1.5;
  text-align: left;
  color: var(--cc-secondary-color);
}

#cc-main .cm__desc a {
  display: inline;
  color: var(--paper);
  border-bottom: 1px solid currentColor;
}

#cc-main .cm__desc a:hover {
  color: #fff;
}

#cc-main .cm__btns {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 10px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

#cc-main .cm__btn-group {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 !important;
  padding: 0 !important;
}

#cc-main .cm__btn {
  min-width: 0 !important;
  min-height: 34px;
  height: 34px;
  padding: 0 16px;
  font-family: var(--mono);
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  line-height: 1;
}

#cc-main .cm__btn--secondary {
  background: transparent !important;
}

/* "Manage preferences" reads as a plain text link, not a third button */
#cc-main .cm__btn--secondary[data-role="show"] {
  min-height: 0;
  height: auto;
  padding: 0;
  border: 0 !important;
  border-bottom: 1px solid currentColor !important;
  opacity: 0.6;
}
#cc-main .cm__btn--secondary[data-role="show"]:hover {
  background: transparent !important;
  opacity: 1;
}

/* Cloud inline: kill default uneven spacing */
#cc-main .cm--cloud,
#cc-main .cm--cloud.cm--inline,
#cc-main .cm--cloud .cm__body,
#cc-main .cm--cloud.cm--inline .cm__body {
  align-items: center !important;
}

#cc-main .cm--cloud .cm__texts,
#cc-main .cm--cloud.cm--inline .cm__texts {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

#cc-main .cm--cloud .cm__btns,
#cc-main .cm--cloud.cm--inline .cm__btns {
  border-left: 1px solid var(--cc-separator-border-color);
  padding-left: 18px !important;
  margin-left: 0 !important;
  max-width: none !important;
}

#cc-main .pm__section-title,
#cc-main .pm__title,
#cc-main .pm__desc,
#cc-main .pm__section-desc {
  font-family: var(--sans);
}

@media (max-width: 640px) {
  #cc-main .cm,
  #cc-main .cm--cloud,
  #cc-main .cm--cloud.cm--inline {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
  }

  #cc-main .cm--bottom.cm--center {
    bottom: 10px !important;
  }

  #cc-main .cm__body {
    flex-direction: column !important;
    flex-wrap: nowrap;
    align-items: stretch !important;
    gap: 14px;
    padding: 20px !important;
  }

  #cc-main .cm__texts {
    width: 100%;
    justify-content: center;
  }

  #cc-main .cm__desc {
    width: 100%;
    max-width: none;
    font-size: 13px;
    line-height: 1.5;
    text-align: left;
  }

  #cc-main .cm__btns,
  #cc-main .cm--cloud .cm__btns,
  #cc-main .cm--cloud.cm--inline .cm__btns {
    width: 100%;
    border-left: 0 !important;
    border-top: 1px solid var(--cc-separator-border-color);
    padding-left: 0 !important;
    padding-top: 14px !important;
    justify-content: stretch;
  }

  #cc-main .cm__btn-group {
    display: flex !important;
    flex-direction: row !important;
    width: 100%;
    gap: 10px;
  }

  #cc-main .cm__btn:not([data-role="show"]) {
    flex: 1 1 0;
    margin: 0 !important;
    min-height: 40px;
    height: 40px;
    padding: 0 12px;
  }
}
