/* Brand theme for the vendored cookie banner (vanilla-cookieconsent 3.1.0 CSS variables). */
#cc-main {
  --cc-font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --cc-bg: var(--bg-primary, #FFFFFF);
  --cc-primary-color: var(--text-primary, #0A2233);
  --cc-secondary-color: var(--text-secondary, #3F5A6B);
  --cc-btn-primary-bg: var(--primary-color, #0C7288);
  --cc-btn-primary-color: #FFFFFF;
  --cc-btn-primary-border-color: var(--primary-color, #0C7288);
  --cc-btn-primary-hover-bg: var(--primary-dark, #095A6B);
  --cc-btn-primary-hover-color: #FFFFFF;
  --cc-btn-primary-hover-border-color: var(--primary-dark, #095A6B);
  --cc-btn-secondary-bg: var(--bg-secondary, #EFF6F8);
  --cc-btn-secondary-color: var(--text-primary, #0A2233);
  --cc-btn-secondary-border-color: var(--border-color, #DCE8EC);
  --cc-btn-secondary-hover-bg: var(--primary-tint, #E8F6F9);
  --cc-btn-secondary-hover-color: var(--text-primary, #0A2233);
  --cc-btn-secondary-hover-border-color: var(--border-strong, #C3D6DC);
  --cc-toggle-on-bg: var(--primary-color, #0C7288);
  --cc-link-color: var(--primary-color, #0C7288);
  --cc-separator-border-color: var(--border-color, #DCE8EC);
  --cc-modal-border-radius: 12px;
  --cc-btn-border-radius: 8px;
}

/* --- Consent bar: logo | text + "Show details" | stacked buttons (Allow all / Customize / Decline) --- */
#cc-main .cm.cm--bar {
  max-width: none;
  border-radius: 12px 12px 0 0;
  box-shadow: 0 -4px 24px rgba(10, 34, 51, 0.12);
}
#cc-main .cm--bar .cm__body {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 24px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 48px;
}
#cc-main .cm--bar .cm__body::before {
  content: '';
  flex: 0 0 72px;
  height: 72px;
  background: url('/assets/img/logo.png') center / contain no-repeat;
}
#cc-main .cm--bar .cm__texts {
  flex: 1 1 auto;
  padding: 0;
}
#cc-main .cm--bar .cm__title {
  font-size: 15px;
  font-weight: 700;
  padding: 0 0 8px;
}
#cc-main .cm--bar .cm__desc {
  font-size: 14px;
  line-height: 1.6;
  padding: 0;
  max-height: none;
}
#cc-main .cc-details-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  font-weight: 500;
  color: var(--primary-color, #0C7288);
  background: none;
  text-decoration: none;
}
#cc-main .cc-details-link::after,
#cc-main .cm--bar .cm__btn[data-role="show"] span::after {
  content: '';
  width: 6px;
  height: 6px;
  margin-left: 8px;
  border-right: 2px solid currentColor;
  border-top: 2px solid currentColor;
  transform: rotate(45deg);
  display: inline-block;
}
#cc-main .cc-details-link:hover { text-decoration: underline; }

/* Buttons: one column, in the order Allow all → Customize → Decline. */
#cc-main .cm--bar .cm__btns {
  flex: 0 0 240px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0;
  border: 0;
}
#cc-main .cm--bar .cm__btn-group { display: contents; }
#cc-main .cm--bar .cm__btn {
  width: 100%;
  min-height: 44px;
  margin: 0;
  font-weight: 600;
}
#cc-main .cm--bar .cm__btn[data-role="all"] { order: 1; }
#cc-main .cm--bar .cm__btn[data-role="show"] {
  order: 2;
  background: var(--bg-primary, #FFFFFF);
  border: 1.5px solid var(--text-primary, #0A2233);
  color: var(--text-primary, #0A2233);
}
#cc-main .cm--bar .cm__btn[data-role="show"] span { display: inline-flex; align-items: center; }
#cc-main .cm--bar .cm__btn[data-role="necessary"] {
  order: 3;
  background: transparent;
  border-color: transparent;
  color: var(--text-primary, #0A2233);
}
#cc-main .cm--bar .cm__btn[data-role="necessary"]:hover { text-decoration: underline; }

/* Phones: stack logo, text and buttons. */
@media (max-width: 760px) {
  #cc-main .cm--bar .cm__body { flex-direction: column; align-items: stretch; gap: 16px; padding: 16px; }
  #cc-main .cm--bar .cm__body::before { flex-basis: 48px; height: 48px; background-position: left center; }
  #cc-main .cm--bar .cm__btns { flex-basis: auto; }
}
