/* Presentation only. Moove owns the UI and jm-site-core owns consent state. */
#moove_gdpr_cookie_info_bar,
#moove_gdpr_cookie_modal,
.gdpr_lightbox {
	font-family: inherit !important;
}

/* Moove renders this vendor-default logo even when no company mark is set. */
#moove_gdpr_cookie_modal .moove-gdpr-company-logo-holder {
	display: none !important;
}

#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {
	max-width: 81.25rem;
	padding: .375rem clamp(1rem, 3vw, 2rem) !important;
}

#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-content {
	align-items: center;
	display: grid;
	gap: .625rem 1.5rem;
	grid-template-columns: minmax(0, 1fr) 30rem;
	padding: 0 !important;
}

/*
 * Keep the desktop notice compact without turning its controls into tiny
 * targets. Moove renders a title and paragraph inside this notice.
 */
@media (min-width: 64.01rem) {
	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice {
		display: block;
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice h2,
	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p {
		margin: 0 !important;
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice h2 {
		font-size: 1.125rem !important;
		line-height: 1.15 !important;
		white-space: nowrap;
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p {
		font-size: .875rem !important;
		line-height: 1.25 !important;
	}
}

#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder {
	display: grid !important;
	gap: .5rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	justify-self: stretch !important;
	min-width: 0 !important;
	padding-left: 0 !important;
	width: 100% !important;
}

#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder button.mgbutton {
	margin: 0 !important;
	min-width: 0 !important;
	width: 100% !important;
}

#moove_gdpr_cookie_info_bar button.mgbutton.moove-gdpr-infobar-settings-btn {
	order: 1 !important;
}

#moove_gdpr_cookie_info_bar button.mgbutton.moove-gdpr-infobar-reject-btn {
	order: 2 !important;
}

#moove_gdpr_cookie_info_bar button.mgbutton.moove-gdpr-infobar-allow-all {
	order: 3 !important;
}

#moove_gdpr_cookie_info_bar button.mgbutton.moove-gdpr-infobar-allow-all,
#moove_gdpr_cookie_info_bar button.mgbutton.moove-gdpr-infobar-reject-btn {
	background: #ff6500 !important;
	border: 2px solid #ff6500 !important;
	color: #fff !important;
	font-weight: 700 !important;
	min-height: 44px;
	min-width: 9.5rem;
}

#moove_gdpr_cookie_info_bar button.mgbutton.moove-gdpr-infobar-settings-btn {
	background: transparent !important;
	border: 2px solid currentColor !important;
	color: #fff !important;
	min-height: 44px;
	min-width: 9.5rem;
}

#moove_gdpr_cookie_info_bar button.mgbutton.moove-gdpr-infobar-allow-all:hover,
#moove_gdpr_cookie_info_bar button.mgbutton.moove-gdpr-infobar-reject-btn:hover {
	background: #e95800 !important;
	border-color: #e95800 !important;
	color: #fff !important;
}

#moove_gdpr_cookie_modal button.mgbutton.moove-gdpr-modal-allow-all:hover,
#moove_gdpr_cookie_modal button.mgbutton.moove-gdpr-modal-reject-all:hover {
	background: #e95800 !important;
	border-color: #e95800 !important;
	color: #111 !important;
}

#moove_gdpr_cookie_modal button.mgbutton.moove-gdpr-modal-allow-all,
#moove_gdpr_cookie_modal button.mgbutton.moove-gdpr-modal-reject-all {
	background: #ff6500 !important;
	border: 2px solid #ff6500 !important;
	color: #111 !important;
	font-weight: 700 !important;
	min-height: 44px;
}

#moove_gdpr_cookie_modal button.mgbutton.moove-gdpr-modal-save-settings {
	background: transparent !important;
	border: 2px solid currentColor !important;
	min-height: 44px;
}

/*
 * Moove scales the complete dialog to 75% at tablet widths. That also scales
 * its controls below the 44px touch-target floor, even when their computed
 * height is larger. The unscaled dialog still fits comfortably in this range.
 */
@media (min-width: 48.01rem) and (max-width: 64rem) {
	#moove_gdpr_cookie_modal .moove-gdpr-modal-content {
		transform: none !important;
	}
}

#moove_gdpr_cookie_info_bar button:focus-visible,
#moove_gdpr_cookie_modal button:focus-visible,
#moove_gdpr_cookie_modal a:focus-visible {
	outline: 3px solid #111 !important;
	outline-offset: 3px !important;
}

@media (max-width: 48rem) {
	#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-content {
		gap: .75rem;
		grid-template-columns: minmax(0, 1fr);
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-width: none !important;
		width: 100% !important;
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder button.mgbutton {
		min-width: 0 !important;
		width: 100% !important;
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-button-holder .moove-gdpr-infobar-settings-btn {
		grid-column: 1 / -1;
		order: 3 !important;
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-button-holder .moove-gdpr-infobar-reject-btn {
		order: 1 !important;
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-button-holder .moove-gdpr-infobar-allow-all {
		order: 2 !important;
	}
}

@media (max-width: 22rem) {
	#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder {
		grid-template-columns: minmax(0, 1fr);
	}

	#moove_gdpr_cookie_info_bar .moove-gdpr-button-holder .moove-gdpr-infobar-settings-btn {
		grid-column: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	#moove_gdpr_cookie_info_bar *,
	#moove_gdpr_cookie_modal *,
	.gdpr_lightbox * {
		animation: none !important;
		scroll-behavior: auto !important;
		transition: none !important;
	}
}
