/* CookieYes consent UI — aligned to the Valour Canada design tokens. */
.cky-consent-container,
.cky-modal,
.cky-consent-container *,
.cky-modal * {
  font-family: var(--vc-font-body, "Inter", sans-serif) !important;
}
.cky-consent-container {
  width: min(660px, calc(100vw - 32px)) !important;
  max-width: 660px !important;
}
.cky-consent-container .cky-consent-bar {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 32px 40px 30px !important;
  background: var(--vc-color-white, #fff) !important;
  border: 1px solid var(--vc-color-crimson, #c10538) !important;
  border-radius: var(--vc-card-radius-sm, 8px) !important;
  box-shadow: var(--vc-shadow-card, 5px 5px 30px rgba(0, 0, 0, 0.15)) !important;
}
.cky-consent-container .cky-title,
.cky-modal .cky-preference-title {
  margin: 0 !important;
  font-family: var(--vc-font-display, "Fjalla One", sans-serif) !important;
  font-size: clamp(1.5rem, 3vw, 2rem) !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  color: var(--vc-color-near-black, #272727) !important;
}
.cky-consent-container .cky-notice-des,
.cky-modal .cky-preference-content-wrapper,
.cky-modal .cky-accordion-header-des {
  font-size: var(--vc-size-body, 1rem) !important;
  line-height: var(--vc-line-body, 1.65) !important;
  color: var(--vc-color-mid-gray, #505050) !important;
}
.cky-consent-container .cky-notice-des {
  max-width: 58ch !important;
  margin-top: 18px !important;
}
.cky-consent-container .cky-notice-btn-wrapper,
.cky-modal .cky-prefrence-btn-wrapper {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin-top: 26px !important;
}
.cky-consent-container .cky-btn,
.cky-modal .cky-btn {
  min-height: 56px !important;
  margin: 0 !important;
  padding: 12px 18px !important;
  border: 1px solid var(--vc-color-crimson, #c10538) !important;
  border-radius: var(--vc-button-radius, 4px) !important;
  font-size: var(--vc-size-label, 1rem) !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  transition: color 180ms ease, background-color 180ms ease !important;
}
.cky-consent-container .cky-btn-accept,
.cky-modal .cky-btn-accept {
  color: var(--vc-color-white, #fff) !important;
  background: var(--vc-color-crimson, #c10538) !important;
}
.cky-consent-container .cky-btn-reject,
.cky-consent-container .cky-btn-customize,
.cky-modal .cky-btn-reject,
.cky-modal .cky-btn-preferences {
  color: var(--vc-color-near-black, #272727) !important;
  background: transparent !important;
}
.cky-consent-container .cky-btn:hover,
.cky-consent-container .cky-btn:focus-visible,
.cky-modal .cky-btn:hover,
.cky-modal .cky-btn:focus-visible {
  color: var(--vc-color-white, #fff) !important;
  background: var(--vc-color-near-black, #272727) !important;
  border-color: var(--vc-color-near-black, #272727) !important;
}
.cky-consent-container .cky-btn-close,
.cky-modal .cky-btn-close {
  top: 18px !important;
  right: 18px !important;
  width: 32px !important;
  height: 32px !important;
  padding: 8px !important;
}
.cky-modal .cky-preference-center {
  border: 1px solid var(--vc-color-crimson, #c10538) !important;
  border-radius: var(--vc-card-radius-sm, 8px) !important;
  box-shadow: var(--vc-shadow-card, 5px 5px 30px rgba(0, 0, 0, 0.15)) !important;
}
.cky-modal .cky-preference-header,
.cky-modal .cky-preference-body-wrapper,
.cky-modal .cky-footer-wrapper {
  padding-inline: clamp(20px, 4vw, 32px) !important;
}
.cky-modal .cky-accordion {
  border-color: var(--vc-color-border-light, rgba(0, 0, 0, 0.1)) !important;
}
.cky-modal .cky-accordion-btn {
  font-family: var(--vc-font-display, "Fjalla One", sans-serif) !important;
  font-size: 1.125rem !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  color: var(--vc-color-near-black, #272727) !important;
}
.cky-modal .cky-always-active,
.cky-modal .cky-show-desc-btn {
  color: var(--vc-color-crimson, #c10538) !important;
}
.cky-revisit-bottom-left {
  background: var(--vc-color-crimson, #c10538) !important;
}
@media (max-width: 640px) {
  .cky-consent-container {
    right: 12px !important;
    left: 12px !important;
    width: auto !important;
  }
  .cky-consent-container .cky-consent-bar {
    padding: 24px 20px 20px !important;
  }
  .cky-consent-container .cky-notice-btn-wrapper,
  .cky-modal .cky-prefrence-btn-wrapper {
    grid-template-columns: 1fr !important;
  }
  .cky-consent-container .cky-btn,
  .cky-modal .cky-btn {
    min-height: 50px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .cky-consent-container *,
  .cky-modal * {
    animation: none !important;
    transition: none !important;
  }
}
