/* STACK Consentement – bannière */
.sc-banner {
	--sc-accent: #db291c;
	--sc-ink: #111111;
	position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 99999;
	background: #fff; color: var(--sc-ink);
	border: 1px solid #e5e7eb; border-radius: 16px;
	box-shadow: 0 18px 50px -20px rgba(0,0,0,.35);
	font-family: inherit;
}
.sc-banner *, .sc-banner *::before, .sc-banner *::after { box-sizing: border-box; }
.sc-inner {
	display: flex; align-items: center; gap: 1.5rem;
	padding: 1.1rem 1.35rem; max-width: 1160px; margin: 0 auto; flex-wrap: wrap;
}
.sc-text { flex: 1 1 420px; min-width: 260px; }
.sc-title { display: block; font-size: 1.02rem; font-weight: 700; margin-bottom: .25rem; }
.sc-msg { margin: 0; font-size: .9rem; color: #4b5563; line-height: 1.5; }
.sc-msg a { color: var(--sc-accent); text-decoration: underline; }

.sc-cats { display: flex; flex-wrap: wrap; gap: .85rem 1.4rem; margin-top: .85rem; }
.sc-cat { font-size: .85rem; display: inline-flex; align-items: center; gap: .45rem; color: var(--sc-ink); }

.sc-actions { display: flex; gap: .6rem; flex-wrap: wrap; align-items: center; }
.sc-btn { padding: .7rem 1.2rem; border-radius: 999px; border: 1.5px solid transparent; font: inherit; font-weight: 600; cursor: pointer; transition: opacity .2s, border-color .2s; }
.sc-primary { background: var(--sc-accent); color: #fff; }
.sc-primary:hover { opacity: .9; }
.sc-ghost { background: #fff; color: var(--sc-ink); border-color: #d1d5db; }
.sc-ghost:hover { border-color: var(--sc-ink); }

.sc-reopen { cursor: pointer; }

@media (max-width: 720px) {
	.sc-inner { flex-direction: column; align-items: stretch; }
	.sc-actions { justify-content: stretch; }
	.sc-actions .sc-btn { flex: 1; }
}
