/* Site overrides for Liquid Consent 1.1.0; the vendor stylesheet stays intact. */
html body #cookie-consent-banner[data-cc-theme="dark"] {
  --cc-panel: rgba(0, 23, 60, 0.46) !important;
  --cc-option-bg: rgba(0, 15, 40, 0.25) !important;
  --cc-check-mark: var(--profe-secondary) !important;
  --cc-primary-text: var(--profe-secondary) !important;
  --cc-link: #dba800 !important;
  --cc-link-hover: #dba800 !important;
  --cc-check-bg-checked: #dba800 !important;
  --cc-check-border-checked: #dba800 !important;
  font-family: "Poppins", sans-serif !important;
}

html body #cookie-consent-trigger[data-cc-theme="dark"] {
  background: rgba(0, 23, 60, 0.45) !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] :is(button, input) {
  font-family: inherit !important;
}

/* Theme: h2 = Teko 600, normal case; site-button = Poppins 14px/500. */
html body #cookie-consent-banner[data-cc-theme="dark"] :is(h2, #open-cookie-settings) {
  font-family: "Teko", sans-serif !important;
  font-weight: 600 !important;
  text-transform: none !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] :is(p, label, strong, small, .cookie-policy-link) {
  font-family: "Poppins", sans-serif !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] .cookie-btn {
  font-family: "Poppins", sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 1px !important;
  text-transform: none !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] a {
  color: #dba800 !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] input[type="checkbox"] {
  accent-color: #dba800 !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] .cookie-actions :is([data-cookie-accept],[data-cookie-reject]) {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  min-height: 40px !important;
  padding: 8px 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 6px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  color: #ffffff !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  text-align: center !important;
  box-shadow: none !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] .cookie-actions :is([data-cookie-accept],[data-cookie-reject]):hover,
html body #cookie-consent-banner[data-cc-theme="dark"] .cookie-actions :is([data-cookie-accept],[data-cookie-reject]):focus {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] .cookie-actions :is([data-cookie-accept],[data-cookie-reject]):focus-visible {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
  outline: 2px solid rgba(255, 255, 255, 0.78) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.14) !important;
}

html body #cookie-consent-banner[data-cc-theme="dark"] [data-cookie-save],
html body #cookie-consent-banner[data-cc-theme="dark"] [data-cookie-save]:hover,
html body #cookie-consent-banner[data-cc-theme="dark"] [data-cookie-save]:focus-visible {
  background: #dba800 !important;
  border-color: #dba800 !important;
  color: var(--profe-secondary) !important;
}

/* Preserve each existing iframe's size while overlaying its original wrapper. */
html body [data-consent-container] {
  position: relative;
}

html body iframe[data-consent="marketing"]:not([src]) {
  visibility: hidden !important;
}

html body .consent-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  overflow: auto;
  box-sizing: border-box;
  padding: clamp(12px, 3vw, 24px);
  background: var(--profe-secondary);
  color: #ffffff;
  font-family: "Poppins", sans-serif;
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
}

html body .consent-placeholder[hidden] {
  display: none !important;
}

html body .consent-placeholder p {
  max-width: 48ch;
  margin: 0;
  color: inherit;
  font: inherit;
}

html body .consent-placeholder a {
  color: #ffffff;
  text-decoration: underline;
  font: inherit;
}

html body .consent-placeholder button {
  flex-shrink: 0;
  padding: 8px 14px;
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 4px;
  background: transparent;
  color: #ffffff;
  font: inherit;
  cursor: pointer;
}

html body .consent-placeholder button:hover {
  background: rgba(255, 255, 255, 0.12);
}

html body .consent-placeholder :is(a, button):focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}
