.re-consent {
	position: fixed;
	right: max(1rem, env(safe-area-inset-right));
	bottom: max(1rem, env(safe-area-inset-bottom));
	left: max(1rem, env(safe-area-inset-left));
	z-index: 1000;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1rem 1.5rem;
	align-items: center;
	max-width: 72rem;
	margin-inline: auto;
	padding: 1rem;
	color: #f5f7fa;
	background: #10243e;
	border: 1px solid rgb(255 255 255 / 22%);
	border-radius: .75rem;
	box-shadow: 0 .75rem 2rem rgb(0 0 0 / 24%);
}

.re-consent[hidden] { display: none; }
.re-consent__title { margin: 0 0 .25rem; color: inherit; font-size: 1.05rem; }
.re-consent__description { margin: 0; font-size: .9rem; line-height: 1.5; }
.re-consent__link { color: #fff; text-decoration: underline; text-underline-offset: .18em; }
.re-consent__actions { display: flex; gap: .65rem; }
.re-consent__button,
.re-consent-preferences {
	min-height: 44px;
	padding: .65rem .85rem;
	font: inherit;
	font-weight: 650;
	color: #10243e;
	background: #fff;
	border: 2px solid #fff;
	border-radius: .4rem;
	cursor: pointer;
}

.re-consent__button + .re-consent__button { color: #fff; background: transparent; }
.re-consent__button:focus-visible,
.re-consent__link:focus-visible,
.re-consent-preferences:focus-visible { outline: 3px solid #ffc857; outline-offset: 3px; }
.re-consent-preferences { margin: 1rem; color: #fff; background: #10243e; border-color: currentcolor; }
.re-consent-status { position: fixed; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

@media (max-width: 42rem) {
	.re-consent { grid-template-columns: 1fr; max-height: calc(100dvh - 2rem); overflow: auto; }
	.re-consent__actions { display: grid; grid-template-columns: 1fr 1fr; }
}

@media (max-width: 22rem) {
	.re-consent { right: .5rem; bottom: .5rem; left: .5rem; padding: .75rem; }
	.re-consent__actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
	.re-consent,
	.re-consent-preferences { scroll-behavior: auto; transition: none; }
}
