/**
 * SGP Sticky Call Banner - Styles publics
 *
 * - Par défaut : banner visible (opacity 1, transform none).
 * - Gate : masquer UNIQUEMENT quand html.sgp-scbp-ready ET banner.sgp-is-hidden.
 * - sgp-scbp-ready est ajouté uniquement par public.js (pas en head).
 * - Si public.js est différé (LiteSpeed Delay JS), le bandeau reste visible.
 */
/* 1. État par défaut (sans JS) : banner visible immédiatement */
.sgp-scbp-banner {
	--scbp-avatar-size: 34px;
	position: fixed;
	left: 0;
	right: 0;
	z-index: 9999999;
	background: var(--sgp-bg, #0f172a);
	color: var(--sgp-text, #ffffff);
	border: 1px solid var(--sgp-border, #0f172a);
	box-shadow: var(--sgp-shadow, 0 15px 30px rgba(0, 0, 0, 0.25));
	padding: 14px 16px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
	opacity: 1;
	transform: none;
}

.sgp-scbp-banner.sgp-pos-bottom {
	bottom: 0;
	padding-bottom: max(14px, env(safe-area-inset-bottom, 0px));
}
.sgp-scbp-banner.sgp-pos-top { top: 0; }
.sgp-scbp-banner.sgp-pos-floating {
	left: auto;
	border-radius: 16px;
}

/* Layout BAR (mode large) : full width sticky */
#sgp-scbp-banner.sgp-layout-bar,
.sgp-scbp-banner.sgp-layout-bar {
	left: 0;
	right: 0;
	border-radius: 0;
	padding: 18px 22px;
}

/* Layout FLOATING (mode minimal/compact) : card flottante */
#sgp-scbp-banner.sgp-layout-floating,
.sgp-scbp-banner.sgp-layout-floating {
	border-radius: 16px;
	padding: 16px 18px;
}
.sgp-scbp-floating-header {
	display: flex;
	align-items: center;
	gap: 10px;
	position: relative;
	margin-bottom: 8px;
}
.sgp-scbp-floating-header .sgp-scbp-headline {
	flex: 1;
	min-width: 0;
}
.sgp-scbp-close-floating {
	position: absolute;
	top: -4px;
	right: -4px;
	flex-shrink: 0;
}
.sgp-scbp-floating-inner .sgp-scbp-text {
	margin-bottom: 10px;
}
.sgp-scbp-floating-inner .sgp-scbp-actions {
	flex-wrap: wrap;
	gap: 10px;
}
.sgp-scbp-floating-inner .sgp-scbp-cta {
	flex: 1;
	min-width: 120px;
}

/* Schedule runtime check: hidden until JS confirms active (cache-safe) */
#sgp-scbp-banner.sgp-scbp-awaiting-schedule,
.sgp-scbp-banner.sgp-scbp-awaiting-schedule {
	visibility: hidden !important;
	pointer-events: none !important;
	opacity: 0 !important;
}
#sgp-scbp-banner.sgp-scbp-schedule-closed,
.sgp-scbp-banner.sgp-scbp-schedule-closed {
	display: none !important;
}

/* 2. Gate : masquer UNIQUEMENT quand JS a pris le contrôle (sgp-scbp-ready) ET qu'on veut cacher (sgp-is-hidden).
   Sans JS ou si public.js est différé : pas de sgp-scbp-ready → bandeau reste visible.
   Transition sur le base : nécessaire pour que l'apparition (sgp-visible) ET la disparition (sgp-is-hidden) soient animées. */
html.sgp-scbp-ready .sgp-scbp-banner {
	transition: transform var(--scbp-anim-duration-desktop, 0.35s) ease, opacity var(--scbp-anim-duration-desktop, 0.35s) ease;
}
html.sgp-scbp-ready .sgp-scbp-banner.sgp-is-hidden {
	opacity: 0;
	transform: translateY(120%);
}
html.sgp-scbp-ready .sgp-scbp-banner.sgp-is-hidden.sgp-anim-fade { transform: translateY(120%); }
html.sgp-scbp-ready .sgp-scbp-banner.sgp-is-hidden.sgp-anim-slide-up { transform: translateY(120%); }
html.sgp-scbp-ready .sgp-scbp-banner.sgp-is-hidden.sgp-anim-slide-down { transform: translateY(-120%); }
/* 3. État visible (animé) : sgp-visible retire sgp-is-hidden visuellement */
html.sgp-scbp-ready .sgp-scbp-banner.sgp-visible {
	opacity: 1;
	transform: translateY(0);
}

/* Fermeture sans JS : checkbox + label, masquage via :has */
.sgp-scbp-banner:has(.sgp-scbp-close-toggle:checked) {
	display: none !important;
}
.sgp-scbp-close-toggle {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.sgp-scbp-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.sgp-scbp-badge {
	flex: 0 0 var(--scbp-avatar-size);
	flex-shrink: 0;
	width: var(--scbp-avatar-size);
	height: var(--scbp-avatar-size);
	min-width: var(--scbp-avatar-size);
	max-width: var(--scbp-avatar-size);
	max-height: var(--scbp-avatar-size);
	align-self: flex-start;
	border-radius: 50%;
	overflow: hidden;
	background: rgba(255,255,255,0.1);
	border: 1px solid rgba(255,255,255,0.2);
	box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.sgp-scbp-badge img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.sgp-scbp-text {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.sgp-scbp-headline {
	font-size: 16px;
	font-weight: 700;
	color: var(--sgp-text, #ffffff);
}

.sgp-scbp-subheadline {
	font-size: 13px;
	color: var(--sgp-text, #ffffff);
	opacity: 0.9;
}

.sgp-scbp-phone {
	font-size: 18px;
	font-weight: 700;
	color: var(--sgp-text, #ffffff);
}

.sgp-scbp-actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.sgp-scbp-cta,
.sgp-premium-cta-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 16px;
	background: var(--sgp-cta-bg, #2563eb);
	color: var(--sgp-cta-text, #ffffff);
	text-decoration: none;
	border-radius: var(--sgp-cta-radius, 8px);
	font-weight: 700;
	transition: transform 0.18s ease, filter 0.18s ease, opacity 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
	box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

.sgp-scbp-cta:hover,
.sgp-premium-cta-link:hover {
	transform: translateY(-1px);
	filter: brightness(1.04);
}

.sgp-scbp-cta:active,
.sgp-premium-cta-link:active {
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	.sgp-scbp-cta:hover,
	.sgp-premium-cta-link:hover {
		transform: none;
		filter: none;
		opacity: 0.95;
	}
}

.sgp-scbp-cta--no-link {
	cursor: default;
	text-decoration: none;
}

.sgp-scbp-cta--no-link:hover {
	transform: none;
	box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

.sgp-scbp-icon {
	width: 18px;
	height: 18px;
	display: inline-block;
	background: currentColor;
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: cover;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: cover;
}

.sgp-scbp-icon-phone { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M6.62 10.79a15.05 15.05 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.01-.24c1.11.37 2.3.57 3.58.57a1 1 0 0 1 1 1v3.61a1 1 0 0 1-1 1C10.08 21.13 2.87 13.92 2.87 4.99a1 1 0 0 1 1-1H7.5a1 1 0 0 1 1 1c0 1.28.2 2.47.57 3.58a1 1 0 0 1-.25 1.02l-2.2 2.2Z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M6.62 10.79a15.05 15.05 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.01-.24c1.11.37 2.3.57 3.58.57a1 1 0 0 1 1 1v3.61a1 1 0 0 1-1 1C10.08 21.13 2.87 13.92 2.87 4.99a1 1 0 0 1 1-1H7.5a1 1 0 0 1 1 1c0 1.28.2 2.47.57 3.58a1 1 0 0 1-.25 1.02l-2.2 2.2Z"/></svg>'); }
.sgp-scbp-icon-handset { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23fff"><path d="M19 2.9999C17.48 2.9999 15.99 3.2999 14.59 3.8599C14.21 4.0099 14.08 4.4499 14.31 4.7699L16.21 7.3899C16.41 7.6699 16.78 7.7599 17.08 7.6299C17.89 7.2899 18.75 7.1099 19.62 7.1099C20.41 7.1099 21.19 7.2599 21.93 7.5399C22.34 7.6999 22.8 7.4899 22.97 7.0799L23.95 4.5499C24.1 4.1599 23.93 3.7199 23.55 3.5399C22.13 2.8799 20.57 2.5299 19 2.5299V2.9999ZM9.41001 3.8499C8.01001 3.2899 6.52001 2.9999 5.00001 2.9999V2.5299C3.43001 2.5299 1.87001 2.8799 0.450012 3.5399C0.0700117 3.7199 -0.0999883 4.1599 0.0500117 4.5499L1.03001 7.0799C1.20001 7.4899 1.66001 7.6999 2.07001 7.5399C2.81001 7.2599 3.59001 7.1099 4.38001 7.1099C5.25001 7.1099 6.11001 7.2899 6.92001 7.6299C7.22001 7.7599 7.59001 7.6699 7.79001 7.3899L9.69001 4.7699C9.92001 4.4399 9.79001 4.0099 9.41001 3.8499ZM12 10.9999C10.9 10.9999 10 11.8999 10 12.9999C10 14.0999 10.9 14.9999 12 14.9999C13.1 14.9999 14 14.0999 14 12.9999C14 11.8999 13.1 10.9999 12 10.9999Z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23fff"><path d="M19 2.9999C17.48 2.9999 15.99 3.2999 14.59 3.8599C14.21 4.0099 14.08 4.4499 14.31 4.7699L16.21 7.3899C16.41 7.6699 16.78 7.7599 17.08 7.6299C17.89 7.2899 18.75 7.1099 19.62 7.1099C20.41 7.1099 21.19 7.2599 21.93 7.5399C22.34 7.6999 22.8 7.4899 22.97 7.0799L23.95 4.5499C24.1 4.1599 23.93 3.7199 23.55 3.5399C22.13 2.8799 20.57 2.5299 19 2.5299V2.9999ZM9.41001 3.8499C8.01001 3.2899 6.52001 2.9999 5.00001 2.9999V2.5299C3.43001 2.5299 1.87001 2.8799 0.450012 3.5399C0.0700117 3.7199 -0.0999883 4.1599 0.0500117 4.5499L1.03001 7.0799C1.20001 7.4899 1.66001 7.6999 2.07001 7.5399C2.81001 7.2599 3.59001 7.1099 4.38001 7.1099C5.25001 7.1099 6.11001 7.2899 6.92001 7.6299C7.22001 7.7599 7.59001 7.6699 7.79001 7.3899L9.69001 4.7699C9.92001 4.4399 9.79001 4.0099 9.41001 3.8499ZM12 10.9999C10.9 10.9999 10 11.8999 10 12.9999C10 14.0999 10.9 14.9999 12 14.9999C13.1 14.9999 14 14.0999 14 12.9999C14 11.8999 13.1 10.9999 12 10.9999Z"/></svg>'); }
.sgp-scbp-icon-bell { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23fff"><path d="M18 8a6 6 0 10-12 0c0 7-3 9-3 9h18s-3-2-3-9zm-6 14a2.992 2.992 0 01-2.816-2h5.632A2.992 2.992 0 0112 22z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23fff"><path d="M18 8a6 6 0 10-12 0c0 7-3 9-3 9h18s-3-2-3-9zm-6 14a2.992 2.992 0 01-2.816-2h5.632A2.992 2.992 0 0112 22z"/></svg>'); }
.sgp-scbp-icon-star { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23fff"><path d="M12 17.27l6.18 3.73-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23fff"><path d="M12 17.27l6.18 3.73-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/></svg>'); }

/* Icônes CTA par device (whitelist: phone, calendar, quote, chat, info, arrow) */
.sgp-scbp-icon--phone { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M6.62 10.79a15.05 15.05 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.01-.24c1.11.37 2.3.57 3.58.57a1 1 0 0 1 1 1v3.61a1 1 0 0 1-1 1C10.08 21.13 2.87 13.92 2.87 4.99a1 1 0 0 1 1-1H7.5a1 1 0 0 1 1 1c0 1.28.2 2.47.57 3.58a1 1 0 0 1-.25 1.02l-2.2 2.2Z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M6.62 10.79a15.05 15.05 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.01-.24c1.11.37 2.3.57 3.58.57a1 1 0 0 1 1 1v3.61a1 1 0 0 1-1 1C10.08 21.13 2.87 13.92 2.87 4.99a1 1 0 0 1 1-1H7.5a1 1 0 0 1 1 1c0 1.28.2 2.47.57 3.58a1 1 0 0 1-.25 1.02l-2.2 2.2Z"/></svg>'); }
.sgp-scbp-icon--calendar { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V10h14v10zm0-12H5V6h14v2z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V10h14v10zm0-12H5V6h14v2z"/></svg>'); }
.sgp-scbp-icon--quote { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z"/></svg>'); }
.sgp-scbp-icon--chat { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H6l-2 2V4h16v12z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H6l-2 2V4h16v12z"/></svg>'); }
.sgp-scbp-icon--info { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>'); }
.sgp-scbp-icon--arrow { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"/></svg>'); -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 24 24"><path d="M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"/></svg>'); }

/* Bouton fermer : croix X (2 barres diagonales), scopé pour éviter collisions */
#sgp-scbp-banner .sgp-scbp-close,
.sgp-scbp-banner .sgp-scbp-close {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 1px solid var(--sgp-text, #ffffff);
	color: var(--sgp-text, #ffffff);
	border-radius: 50%;
	width: 32px;
	height: 32px;
	min-width: 32px;
	min-height: 32px;
	cursor: pointer;
	transition: opacity 0.2s ease, background 0.2s ease;
	font-size: 0 !important;
	line-height: 0 !important;
	overflow: hidden;
}
#sgp-scbp-banner .sgp-scbp-close::before,
#sgp-scbp-banner .sgp-scbp-close::after,
.sgp-scbp-banner .sgp-scbp-close::before,
.sgp-scbp-banner .sgp-scbp-close::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 2px;
	background: var(--sgp-text, #ffffff);
	border-radius: 999px;
	opacity: 1;
}
#sgp-scbp-banner .sgp-scbp-close::before,
.sgp-scbp-banner .sgp-scbp-close::before {
	transform: translate(-50%, -50%) rotate(45deg) !important;
}
#sgp-scbp-banner .sgp-scbp-close::after,
.sgp-scbp-banner .sgp-scbp-close::after {
	transform: translate(-50%, -50%) rotate(-45deg) !important;
}
#sgp-scbp-banner .sgp-scbp-close:hover,
.sgp-scbp-banner .sgp-scbp-close:hover {
	opacity: 0.9;
	background: var(--sgp-close-hover, rgba(255,255,255,0.2));
}

@media (max-width: 760px) {
	html.sgp-scbp-ready .sgp-scbp-banner {
		transition: transform var(--scbp-anim-duration-mobile, 0.35s) ease, opacity var(--scbp-anim-duration-mobile, 0.35s) ease;
	}
	.sgp-scbp-banner {
		left: 12px;
		right: 12px;
	}
	.sgp-scbp-inner {
		flex-direction: column;
		align-items: stretch;
	}
	/* Avatar: force fixed size on mobile (Safari iOS stretch fix) */
	#sgp-scbp-banner .sgp-scbp-badge,
	.sgp-scbp-banner .sgp-scbp-badge {
		width: var(--scbp-avatar-size) !important;
		height: var(--scbp-avatar-size) !important;
		min-width: var(--scbp-avatar-size) !important;
		max-width: var(--scbp-avatar-size) !important;
		max-height: var(--scbp-avatar-size) !important;
		flex: 0 0 var(--scbp-avatar-size) !important;
		align-self: flex-start !important;
	}
	.sgp-scbp-actions {
		width: 100%;
	}
	.sgp-scbp-cta {
		width: 100%;
		justify-content: center;
	}
	.sgp-scbp-banner.sgp-pos-floating,
	#sgp-scbp-banner.sgp-layout-floating {
		left: 12px !important;
		right: 12px !important;
		max-width: none !important;
		width: calc(100% - 24px) !important;
	}
	.sgp-scbp-floating-inner .sgp-scbp-cta {
		width: 100%;
	}
	.sgp-scbp-floating-inner .sgp-scbp-actions {
		flex-direction: column;
	}
	#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-text,
	#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-text {
		padding-right: 38px;
	}
	#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-actions,
	.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-actions {
		grid-template-columns: 1fr;
	}
}

/* ========== Modes (minimal / compact / large) – fin de fichier pour priorité ========== */

/* Layout FLOATING (minimal + compact) : floating card premium (PJ1) */
#sgp-scbp-banner.sgp-mode-minimal,
#sgp-scbp-banner.sgp-mode-compact,
.sgp-scbp-banner.sgp-mode-minimal,
.sgp-scbp-banner.sgp-mode-compact {
	--scbp-avatar-size: 40px;
	border-radius: 18px;
	padding: 15px 16px;
	border: 0;
	max-width: 420px;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-inner,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-inner,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-inner,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-inner {
	flex-direction: column;
	align-items: stretch;
	gap: 12px;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-floating-header,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-floating-header,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-floating-header,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-floating-header {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 0;
	position: relative;
	min-height: 40px;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-badge,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-badge,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-badge,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-badge {
	width: var(--scbp-avatar-size);
	height: var(--scbp-avatar-size);
	min-width: var(--scbp-avatar-size);
	max-width: var(--scbp-avatar-size);
	max-height: var(--scbp-avatar-size);
	flex-shrink: 0;
	border: 2px solid rgba(255, 255, 255, 0.35);
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-text,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-text,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-text,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-text {
	display: flex;
	flex-direction: column;
	gap: 4px;
	flex: 1;
	min-width: 0;
	align-items: flex-start;
	text-align: left;
	padding-right: 38px;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-headline,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-headline,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-headline,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-headline {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-subheadline,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-subheadline,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-subheadline,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-subheadline {
	font-size: 14px;
	font-weight: 400;
	opacity: 0.9;
	display: block;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-phone,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-phone {
	display: none !important;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-close-floating,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-close-floating,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-close-floating,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-close-floating {
	position: absolute;
	top: 0;
	right: 0;
	width: 32px;
	height: 32px;
	min-width: 32px;
	min-height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255, 255, 255, 0.5);
	background: transparent;
	transition: background 0.2s ease, opacity 0.2s ease;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-close-floating:hover,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-close-floating:hover,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-close-floating:hover,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-close-floating:hover {
	background: var(--sgp-close-hover, rgba(255, 255, 255, 0.2));
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-close-floating:focus-visible,
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-close-floating:focus-visible,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-close-floating:focus-visible,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-close-floating:focus-visible {
	outline: 2px solid rgba(255, 255, 255, 0.6);
	outline-offset: 2px;
}

/* Mode minimal : 1 CTA pleine largeur */
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-actions,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-actions {
	width: 100%;
	flex-direction: column;
	gap: 0;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-cta,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-cta {
	width: 100%;
	justify-content: center;
	padding: 14px 20px;
	min-height: 46px;
	border-radius: 12px;
	font-weight: 700;
}
#sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-cta-2,
.sgp-scbp-banner.sgp-mode-minimal .sgp-scbp-cta-2 {
	display: none !important;
}

/* Mode compact : 2 CTA côte à côte (desktop) / colonne (mobile) */
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-actions,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-actions {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
#sgp-scbp-banner.sgp-mode-compact .sgp-scbp-cta,
.sgp-scbp-banner.sgp-mode-compact .sgp-scbp-cta {
	width: 100%;
	justify-content: center;
	padding: 12px 12px;
	min-height: 46px;
	border-radius: 12px;
	font-weight: 700;
}

/* Mode large : padding et tailles augmentés */
#sgp-scbp-banner.sgp-mode-large,
.sgp-scbp-banner.sgp-mode-large {
	--scbp-avatar-size: 40px;
	padding: 18px 22px;
}
#sgp-scbp-banner.sgp-mode-large .sgp-scbp-inner,
.sgp-scbp-banner.sgp-mode-large .sgp-scbp-inner {
	gap: 14px;
}
#sgp-scbp-banner.sgp-mode-large .sgp-scbp-headline,
.sgp-scbp-banner.sgp-mode-large .sgp-scbp-headline {
	font-size: 19px;
}
#sgp-scbp-banner.sgp-mode-large .sgp-scbp-subheadline,
.sgp-scbp-banner.sgp-mode-large .sgp-scbp-subheadline {
	font-size: 15px;
}
#sgp-scbp-banner.sgp-mode-large .sgp-scbp-phone,
.sgp-scbp-banner.sgp-mode-large .sgp-scbp-phone {
	font-size: 16px;
}
#sgp-scbp-banner.sgp-mode-large .sgp-scbp-cta,
.sgp-scbp-banner.sgp-mode-large .sgp-scbp-cta {
	padding: 14px 20px;
}
#sgp-scbp-banner.sgp-mode-large .sgp-scbp-badge,
.sgp-scbp-banner.sgp-mode-large .sgp-scbp-badge {
	width: var(--scbp-avatar-size);
	height: var(--scbp-avatar-size);
	min-width: var(--scbp-avatar-size);
	max-width: var(--scbp-avatar-size);
	max-height: var(--scbp-avatar-size);
}
