/* ICT Banner — hero avec image de fond plein écran + overlay sombre dégradé
   Variables inline : --ict-bn-c1, --ict-bn-c2, --ict-bn-bg, --ict-bn-bg-rgb, --ict-bn-btn-text */

.ict-bn { width: 100%; }

.ict-bn-inner {
	--ict-bn-fh: "Montserrat", "Inter", system-ui, sans-serif;
	--ict-bn-fb: "Montserrat", "Inter", system-ui, sans-serif;
	--ict-bn-line: rgba(255, 255, 255, 0.4);
	--ict-bn-ink-60: rgba(255, 255, 255, 0.85);
	position: relative;
	overflow: hidden;
	min-height: clamp(480px, 60vh, 650px);
	display: flex;
	align-items: center;
	box-sizing: border-box;
	font-family: var(--ict-bn-fb);
}
.ict-bn-inner *, .ict-bn-inner *::before, .ict-bn-inner *::after { box-sizing: border-box; }

/* Image de fond — pleine largeur */
.ict-bn-bg {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	width: 100%;
	background-size: cover;
	background-position: center center;
}
.ict-bn-bg--mobile { display: none; }

/* Overlay sombre dégradé sur toute l'image */
.ict-bn-fade {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to right,
		rgba(10, 20, 40, 0.82) 0%,
		rgba(10, 20, 40, 0.55) 45%,
		rgba(10, 20, 40, 0.30) 75%,
		rgba(10, 20, 40, 0.18) 100%
	);
}

/* Contenu */
.ict-bn-wrap {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: clamp(64px, 8vw, 110px) clamp(24px, 6vw, 10%);
}
.ict-bn-content { max-width: 52%; }

.ict-bn-eyebrow {
	font-family: var(--ict-bn-fh);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	background: var(--ict-bn-c2, #E21237);
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 15px;
	border-radius: 0.65rem;
}

.ict-bn-title {
	font-family: var(--ict-bn-fh);
	color: #ffffff;
	font-size: clamp(2rem, 4.6vw, 3.2rem);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.015em;
	margin: 16px 0 0;
	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
}
.ict-bn-accent { color: var(--ict-bn-c2, #E55A20); }

.ict-bn-subtitle {
	color: var(--ict-bn-ink-60);
	font-size: 1.05rem;
	line-height: 1.65;
	margin: 18px 0 0;
	max-width: 44ch;
	text-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
}

/* Boutons */
.ict-bn-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; }
.ict-bn-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 52px;
	padding: 0 28px;
	border-radius: 6px;
	font-family: var(--ict-bn-fh);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	border: 1.5px solid transparent;
	cursor: pointer;
	transition: transform .15s ease, box-shadow .2s ease, filter .2s ease, border-color .2s ease, background .2s ease;
	white-space: nowrap;
}
.ict-bn-btn .dashicons,
.ict-bn-btn svg,
.ict-bn-btn img { width: 18px; height: 18px; font-size: 18px; line-height: 18px; }

.ict-bn-btn-primary {
	background: var(--ict-bn-c2, #E55A20);
	color: #fff;
	border-color: var(--ict-bn-c2, #E55A20);
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35);
}
.ict-bn-btn-primary:hover {
	color: #fff !important;
	filter: brightness(1.1);
	transform: translateY(-1px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}

.ict-bn-btn-secondary {
	background: transparent;
	color: #ffffff;
	border-color: rgba(255, 255, 255, 0.6);
}
.ict-bn-btn-secondary:hover {
	color: #ffffff;
	border-color: #ffffff;
	background: rgba(255, 255, 255, 0.12);
	transform: translateY(-1px);
}

/* Mini-liste */
.ict-bn-checks { list-style: none; margin: 28px 0 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.ict-bn-checks li {
	display: flex;
	align-items: center;
	gap: 12px;
	color: rgba(255, 255, 255, 0.9);
	font-size: 1rem;
	font-weight: 500;
}
.ict-bn-check-ico {
	flex: none;
	color: var(--ict-bn-c2, #E55A20);
	display: inline-flex;
}

/* Responsive */
@media (max-width: 900px) {
	.ict-bn-bg { width: 100%; }
	.ict-bn-bg--has-mobile { display: none; }
	.ict-bn-bg--mobile { display: block; }
	.ict-bn-fade {
		background: linear-gradient(
			to right,
			rgba(10, 20, 40, 0.85) 0%,
			rgba(10, 20, 40, 0.60) 100%
		);
	}
	.ict-bn-content { max-width: none; }
}
@media (max-width: 600px) {
	.ict-bn-actions .ict-bn-btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.ict-bn-btn { transition: none; }
}

h1.ict-bn-title {
    color: #fff;
}
