.bf-analytics-consent[hidden] { display: none !important; }
.bf-analytics-consent {
	position: fixed;
	z-index: 99970;
	left: 50%;
	bottom: 32px;
	transform: translateX(-50%);
	width: min(560px, calc(100% - 40px));
	max-height: calc(100dvh - 180px);
	overflow: auto;
	box-sizing: border-box;
	padding: 22px;
	border: 2px solid #16477f;
	border-radius: 12px;
	background: #fff;
	color: #000;
	box-shadow: 0 6px 28px rgb(0 0 0 / 22%);
	font-family: "Manrope", Arial, Helvetica, sans-serif;
	text-align: left;
}
.bf-analytics-consent h2 { margin: 0 0 10px; color: #102c4e; font-size: 21px; line-height: 1.25; text-align: left; }
.bf-analytics-consent p { margin: 0 0 12px; color: #000; font-size: 15px; line-height: 1.5; }
.bf-analytics-consent a { color: #16477f; text-decoration: underline; font-size: 15px; }
.bf-analytics-consent__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.bf-analytics-consent button {
	flex: 1 1 180px;
	min-height: 44px;
	padding: 10px 14px;
	border: 2px solid #16477f;
	border-radius: 6px;
	background: #fff;
	color: #102c4e;
	font: inherit;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
}
.bf-analytics-consent button:hover { background: #e8f1fc; color: #102c4e; }
.bf-analytics-consent button:disabled { cursor: not-allowed; opacity: .65; }
.bf-analytics-consent :focus-visible, .bf-analytics-preferences:focus-visible { outline: 3px solid #2371c8; outline-offset: 4px; }
.bf-analytics-preferences {
	border: 0;
	padding: 8px 0;
	min-height: 44px;
	background: transparent;
	color: inherit;
	font: inherit;
	text-decoration: underline;
	cursor: pointer;
}
@media (max-width: 767px) {
	.bf-analytics-consent { bottom: 150px; padding: 16px; width: calc(100% - 24px); max-height: calc(100dvh - 170px); }
	.bf-analytics-consent h2 { font-size: 19px; }
	.bf-analytics-consent p { font-size: 14px; }
	.bf-analytics-consent button { flex-basis: 130px; font-size: 14px; }
}
