/*!*******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/project-icon-title-text/style.css ***!
  \*******************************************************************************************************************************************************************************************/
/**
 * Bandeau icône + titre + texte.
 *
 * Orientation : `is-orientation-row` (1–5 cols) ou `is-orientation-column` (empilé).
 * Icône : `is-icon-top` (stack) ou `is-icon-left` (grille icône | titre+texte).
 * Visibilité : `is-hide-title` / `is-hide-text` (InnerBlocks conservés).
 * Optionnel : `has-separators` (+ `has-separator-arrows`) en ligne et en colonne.
 * Rythme vertical racine : assets/css/block-spacing.css
 * Padding horizontal : is-disable-padding-left|right (propre + gutter colonne).
 */

/*
 * Fond plein bord — gutter = root padding FSE (mode ligne + full/wide).
 * Sans align : fond sur le container. `:not(.is-orientation-column)` = legacy.
 * Défaut crème seulement si aucun fond WP (.has-background).
 * Éditeur : `.is-root-container` (canvas iframé) pour la même largeur que le front.
 */
.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	):is(.alignfull, .alignwide),
.is-layout-constrained
	> .wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	):is(.alignfull, .alignwide),
.has-global-padding
	> .wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	):is(.alignfull, .alignwide),
.is-root-container
	> .wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	):is(.alignfull, .alignwide),
.block-editor-block-list__layout.is-root-container
	> .wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	):is(.alignfull, .alignwide) {
	box-sizing: border-box;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	/* Rythme vertical : block-spacing.css */
	padding-inline: var(--tc-container-pad-inline-start)
		var(--tc-container-pad-inline-end);
}

.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau.is-orientation-column {
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	/* Padding / marges verticales racines : block-spacing.css (+ toggles). */
	/* Gutter horizontal local (pas --tc-container-pad : trop large en colonne étroite). */
	padding-inline: 1.25rem;
	overflow: hidden;
}

.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.has-background
	) {
	background-color: var(--wp--preset--color--surface-canvas, #f7f2eb);
}

/*
 * Nested colonne : hauteur = colonne text-image (stretch).
 * Marges / padding verticaux : block-spacing.css (panneau Espacement) —
 * ne plus forcer margin-block: 0 ni padding-block fixe (sinon toggles inerts).
 */
.wp-block-column
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau.is-orientation-column,
.wp-block-techniconcept-columns
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau.is-orientation-column {
	display: flex;
	flex-direction: column;
	width: 100% !important;
	max-width: 100% !important;
	height: 100%;
	min-height: 100%;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-inline: 1.25rem;
	box-sizing: border-box;
}

/* Nested ligne : pas de double gutter (le full-bleed gère). */
.wp-block-column
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	),
.wp-block-techniconcept-columns
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	) {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-inline: 0;
}

/* Shell wide : grille centrée (mode ligne + legacy sans orientation). */
.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	)
	> .wp-block-techniconcept-columns,
.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	)
	> .wp-block-columns,
.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	)
	.tc-icon-title-text__columns,
.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	)
	.wp-block-techniconcept-columns.is-layout-flex,
.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
		.is-orientation-column
	)
	.wp-block-columns {
	display: flex !important;
	flex-wrap: wrap !important;
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-inline: 0;
	gap: 1.25rem 1.5rem;
	align-items: flex-start;
	justify-content: center;
}

/* Mode colonne : items empilés, répartis sur toute la hauteur. */
.wp-block-techniconcept-project-icon-title-text.is-orientation-column
	> .wp-block-techniconcept-columns,
.wp-block-techniconcept-project-icon-title-text.is-orientation-column
	> .wp-block-columns,
.wp-block-techniconcept-project-icon-title-text.is-orientation-column
	.tc-icon-title-text__columns,
.wp-block-techniconcept-project-icon-title-text.is-orientation-column
	.wp-block-techniconcept-columns.is-layout-flex,
.wp-block-techniconcept-project-icon-title-text.is-orientation-column
	.wp-block-columns {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	flex: 1 1 auto;
	align-items: stretch;
	justify-content: space-between !important;
	gap: 0;
	height: 100%;
	min-height: 100%;
	max-width: 100% !important;
	width: 100% !important;
	padding-inline: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Item défaut : icône / titre / texte empilés et centrés (is-icon-top). */
.wp-block-techniconcept-project-icon-title-text .wp-block-column,
.wp-block-techniconcept-project-icon-title-text
	.wp-block-column.tc-icon-title-text__item {
	box-sizing: border-box;
	display: flex !important;
	flex-direction: column !important;
	align-items: center;
	text-align: center;
	min-width: 0 !important;
	margin: 0;
	/* Écarts internes (padding title déjà annulé). */
	gap: 0.5rem;
	row-gap: 0.5rem;
}

.wp-block-techniconcept-project-icon-title-text.is-orientation-column
	.wp-block-column,
.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau.is-orientation-column
	.wp-block-column {
	flex: 0 0 auto !important;
	flex-basis: auto !important;
	width: 100% !important;
	max-width: 100% !important;
}

.wp-block-techniconcept-project-icon-title-text.is-columns-1
	> .wp-block-techniconcept-columns
	> .wp-block-column,
.wp-block-techniconcept-project-icon-title-text.is-columns-1
	.tc-icon-title-text__columns
	> .wp-block-column {
	flex: 1 1 100%;
	max-width: 100%;
}

.wp-block-techniconcept-project-icon-title-text.is-columns-2
	> .wp-block-techniconcept-columns
	> .wp-block-column,
.wp-block-techniconcept-project-icon-title-text.is-columns-2
	.tc-icon-title-text__columns
	> .wp-block-column {
	flex: 1 1 calc(50% - 1rem);
	max-width: calc(50% - 1rem);
}

.wp-block-techniconcept-project-icon-title-text.is-columns-3
	> .wp-block-techniconcept-columns
	> .wp-block-column,
.wp-block-techniconcept-project-icon-title-text.is-columns-3
	.tc-icon-title-text__columns
	> .wp-block-column {
	flex: 1 1 calc(33.333% - 1.25rem);
	max-width: calc(33.333% - 1.25rem);
}

.wp-block-techniconcept-project-icon-title-text.is-columns-4
	> .wp-block-techniconcept-columns
	> .wp-block-column,
.wp-block-techniconcept-project-icon-title-text.is-columns-4
	.tc-icon-title-text__columns
	> .wp-block-column {
	flex: 1 1 calc(25% - 1.5rem);
	max-width: calc(25% - 1.5rem);
}

.wp-block-techniconcept-project-icon-title-text.is-columns-5
	> .wp-block-techniconcept-columns
	> .wp-block-column,
.wp-block-techniconcept-project-icon-title-text.is-columns-5
	.tc-icon-title-text__columns
	> .wp-block-column {
	flex: 1 1 calc(20% - 1.5rem);
	max-width: calc(20% - 1.5rem);
}

.wp-block-techniconcept-project-icon-title-text.is-columns-6
	> .wp-block-techniconcept-columns
	> .wp-block-column,
.wp-block-techniconcept-project-icon-title-text.is-columns-6
	.tc-icon-title-text__columns
	> .wp-block-column {
	flex: 1 1 calc(16.666% - 1.5rem);
	max-width: calc(16.666% - 1.5rem);
}

/*
 * Filet front : si le HTML a encore trop de colonnes (sync / legacy),
 * masquer l’excédent selon is-columns-N.
 */
.wp-block-techniconcept-project-icon-title-text.is-columns-1
	> .wp-block-techniconcept-columns
	> .wp-block-column:nth-child(n + 2),
.wp-block-techniconcept-project-icon-title-text.is-columns-1
	.tc-icon-title-text__columns
	> .wp-block-column:nth-child(n + 2),
.wp-block-techniconcept-project-icon-title-text.is-columns-2
	> .wp-block-techniconcept-columns
	> .wp-block-column:nth-child(n + 3),
.wp-block-techniconcept-project-icon-title-text.is-columns-2
	.tc-icon-title-text__columns
	> .wp-block-column:nth-child(n + 3),
.wp-block-techniconcept-project-icon-title-text.is-columns-3
	> .wp-block-techniconcept-columns
	> .wp-block-column:nth-child(n + 4),
.wp-block-techniconcept-project-icon-title-text.is-columns-3
	.tc-icon-title-text__columns
	> .wp-block-column:nth-child(n + 4),
.wp-block-techniconcept-project-icon-title-text.is-columns-4
	> .wp-block-techniconcept-columns
	> .wp-block-column:nth-child(n + 5),
.wp-block-techniconcept-project-icon-title-text.is-columns-4
	.tc-icon-title-text__columns
	> .wp-block-column:nth-child(n + 5),
.wp-block-techniconcept-project-icon-title-text.is-columns-5
	> .wp-block-techniconcept-columns
	> .wp-block-column:nth-child(n + 6),
.wp-block-techniconcept-project-icon-title-text.is-columns-5
	.tc-icon-title-text__columns
	> .wp-block-column:nth-child(n + 6),
.wp-block-techniconcept-project-icon-title-text.is-columns-6
	> .wp-block-techniconcept-columns
	> .wp-block-column:nth-child(n + 7),
.wp-block-techniconcept-project-icon-title-text.is-columns-6
	.tc-icon-title-text__columns
	> .wp-block-column:nth-child(n + 7) {
	display: none !important;
}

/* Icône ~2.5rem — marges nulles, l’écart vient du gap item. */
.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-image,
.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-image,
.wp-block-techniconcept-project-icon-title-text .wp-block-column > figure {
	width: 2.5rem;
	max-width: 2.5rem;
	margin: 0 !important;
}

.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-image
	img,
.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-image
	img,
.wp-block-techniconcept-project-icon-title-text .wp-block-column > figure img {
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	max-width: 2.5rem;
	object-fit: contain;
	margin-inline: auto;
}

/*
 * Icône au-dessus du titre : plus d’air sous l’icône.
 * Icône à gauche (is-icon-left) : inchangé (grille, pas de marge bas).
 */
.wp-block-techniconcept-project-icon-title-text.is-icon-top
	.wp-block-column
	> .wp-block-techniconcept-image,
.wp-block-techniconcept-project-icon-title-text.is-icon-top
	.wp-block-column
	> .wp-block-image,
.wp-block-techniconcept-project-icon-title-text.is-icon-top
	.wp-block-column
	> figure {
	margin-block-end: 0.75rem !important;
}

/*
 * Couleur des icônes (PNG/JPG/WebP) : masque = forme du fichier image,
 * background-color = teinte choisie. Pas besoin que le fichier soit un SVG.
 * --tc-icon-mask vient du viewScript / edit (pas du save image),
 * pour ne pas invalider les images photo déjà en base.
 */
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-techniconcept-image,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-image,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> figure {
	background-color: transparent;
	-webkit-mask-image: var(--tc-icon-mask, none);
	mask-image: var(--tc-icon-mask, none);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-techniconcept-image.is-icon-color-masked,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-image.is-icon-color-masked,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> figure.is-icon-color-masked,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-techniconcept-image[style*='--tc-icon-mask'],
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-image[style*='--tc-icon-mask'],
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> figure[style*='--tc-icon-mask'] {
	background-color: var(--tc-icon-color, currentColor);
}

.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-techniconcept-image.is-icon-color-masked
	img,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-image.is-icon-color-masked
	img,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> figure.is-icon-color-masked
	img,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-techniconcept-image[style*='--tc-icon-mask']
	img,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> .wp-block-image[style*='--tc-icon-mask']
	img,
.wp-block-techniconcept-project-icon-title-text.has-icon-color
	.wp-block-column
	> figure[style*='--tc-icon-mask']
	img {
	opacity: 0 !important;
	mix-blend-mode: normal;
	filter: none;
}

/*
 * Séparateurs entre colonnes (mode ligne uniquement).
 * Trait vertical (défaut) ou flèche (has-separator-arrows), couleur via --tc-separator-color.
 */
.wp-block-techniconcept-project-icon-title-text.has-separators:not(
		.is-orientation-column
	)
	.wp-block-column {
	position: relative;
}

.wp-block-techniconcept-project-icon-title-text.has-separators:not(
		.is-orientation-column
	):not(.has-separator-arrows)
	.wp-block-column:not(:last-child)::after {
	content: '';
	position: absolute;
	top: 0.25rem;
	bottom: 0.25rem;
	right: calc(-0.75rem - 0.5px);
	width: 1px;
	background-color: var(
		--tc-separator-color,
		var(--wp--preset--color--outline, rgba(8, 43, 78, 0.18))
	);
	pointer-events: none;
}

/*
 * Flèche → centrée dans l’interstice entre colonnes (même ancrage que le trait).
 * right = demi-gap ; translate(50%, -50%) centre la flèche sur ce point.
 */
.wp-block-techniconcept-project-icon-title-text.has-separators.has-separator-arrows:not(
		.is-orientation-column
	) {
	--tc-itt-arrow-size: 2rem;
	--tc-itt-arrow-gap-half: 0.75rem;
}

.wp-block-techniconcept-project-icon-title-text.has-separators.has-separator-arrows:not(
		.is-orientation-column
	)
	.wp-block-column {
	overflow: visible;
}

.wp-block-techniconcept-project-icon-title-text.has-separators.has-separator-arrows:not(
		.is-orientation-column
	)
	.wp-block-column:not(:last-child)::after {
	content: '';
	position: absolute;
	top: 50%;
	right: calc(-1 * var(--tc-itt-arrow-gap-half));
	width: var(--tc-itt-arrow-size);
	height: var(--tc-itt-arrow-size);
	transform: translate(50%, -50%);
	background-color: var(
		--tc-separator-color,
		var(--wp--preset--color--primary-dark, #082b4e)
	);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27%3E%3Cpath d=%27M4 12h13M13 6l6 6-6 6%27 stroke=%27%23000%27 stroke-width=%271.35%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27%3E%3Cpath d=%27M4 12h13M13 6l6 6-6 6%27 stroke=%27%23000%27 stroke-width=%271.35%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	pointer-events: none;
}

/*
 * Mode colonne : séparateurs entre items empilés.
 * Trait horizontal ou flèche ↓ (même SVG, rotate 90deg).
 */
.wp-block-techniconcept-project-icon-title-text.has-separators.is-orientation-column {
	--tc-itt-arrow-size: 2rem;
}

.wp-block-techniconcept-project-icon-title-text.has-separators.is-orientation-column:not(
		.has-separator-arrows
	)
	.wp-block-column:not(:last-child)::after {
	content: '';
	display: block;
	flex: 0 0 auto;
	width: 2.5rem;
	height: 1px;
	margin-block-start: 0.75rem;
	background-color: var(
		--tc-separator-color,
		var(--wp--preset--color--outline, rgba(8, 43, 78, 0.18))
	);
	pointer-events: none;
}

.wp-block-techniconcept-project-icon-title-text.has-separators.has-separator-arrows.is-orientation-column
	.wp-block-column:not(:last-child)::after {
	content: '';
	display: block;
	flex: 0 0 auto;
	width: var(--tc-itt-arrow-size);
	height: var(--tc-itt-arrow-size);
	margin-block-start: 0.75rem;
	margin-inline: auto;
	background-color: var(
		--tc-separator-color,
		var(--wp--preset--color--primary-dark, #082b4e)
	);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27%3E%3Cpath d=%27M4 12h13M13 6l6 6-6 6%27 stroke=%27%23000%27 stroke-width=%271.35%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27%3E%3Cpath d=%27M4 12h13M13 6l6 6-6 6%27 stroke=%27%23000%27 stroke-width=%271.35%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	/* Flèche droite → bas. */
	transform: rotate(90deg);
	pointer-events: none;
}

/* Mode colonne + icône à gauche : flèche sous le titre (col 2), pas sous l’icône. */
.wp-block-techniconcept-project-icon-title-text.is-icon-left.has-separators.has-separator-arrows.is-orientation-column
	.wp-block-column:not(:last-child)::after {
	grid-column: 2;
	justify-self: center;
	margin-inline: 0;
}

.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-title:not(.has-text-color),
.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> :is(h1, h2, h3):not(.has-text-color) {
	/* Annule le padding Intro du bloc title (sinon ~1–1.5rem entre icône et texte). */
	--tc-title-pad: 0;
	padding: 0 !important;
	margin: 0 !important;
	/* Entre body (1rem) et preset title (1.25rem) : titre d’item avec icône. */
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.35;
	/* Défaut seulement si pas de textColor enfant (évite d’écraser le front). */
	color: var(--wp--preset--color--on-background, #082b4e);
	text-align: center;
	max-width: 100%;
}

.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-title.has-text-color,
.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> :is(h1, h2, h3).has-text-color {
	--tc-title-pad: 0;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.35;
	text-align: center;
	max-width: 100%;
}

.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-text:not(.has-text-color),
.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> p:not(.has-text-color) {
	padding: 0 !important;
	margin: 0 !important;
	font-size: var(--wp--preset--font-size--body, 1rem);
	font-weight: 400;
	line-height: 1.45;
	color: var(--wp--preset--color--on-background, #082b4e);
	text-align: center;
	max-width: 100%;
}

.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-text.has-text-color,
.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> p.has-text-color {
	padding: 0 !important;
	margin: 0 !important;
	font-size: var(--wp--preset--font-size--body, 1rem);
	font-weight: 400;
	line-height: 1.45;
	text-align: center;
	max-width: 100%;
}

/* Neutralise le margin-block WP entre InnerBlocks dans l’item. */
.wp-block-techniconcept-project-icon-title-text .wp-block-column > .wp-block {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

/*
 * Icône à gauche : grille 2 colonnes (icône | stack titre+texte).
 * Rangée 1 = hauteur icône ; titre centré verticalement au milieu.
 */
.wp-block-techniconcept-project-icon-title-text.is-icon-left .wp-block-column,
.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column.tc-icon-title-text__item {
	display: grid !important;
	grid-template-columns: 2.5rem minmax(0, 1fr);
	grid-template-rows: 2.5rem auto;
	column-gap: 0.75rem;
	row-gap: 0.35rem;
	align-items: center;
	justify-content: start;
	text-align: left;
	flex-direction: unset !important;
}

.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> .wp-block-techniconcept-image,
.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> .wp-block-image,
.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> figure {
	grid-column: 1;
	grid-row: 1;
	align-self: center;
	justify-self: center;
	margin: 0 !important;
	height: 2.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> .wp-block-techniconcept-image
	img,
.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> .wp-block-image
	img,
.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> figure
	img {
	margin-inline: 0;
}

.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> .wp-block-techniconcept-title,
.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> :is(h1, h2, h3) {
	grid-column: 2;
	grid-row: 1;
	align-self: center;
	display: flex !important;
	align-items: center;
	min-height: 2.5rem;
	text-align: left;
	margin: 0 !important;
	line-height: 1.2;
}

.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> .wp-block-techniconcept-text,
.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column
	> p {
	grid-column: 2;
	grid-row: 2;
	text-align: left;
}

/* Titre masqué : le texte remonte en première rangée (évite le trou). */
.wp-block-techniconcept-project-icon-title-text.is-icon-left.is-hide-title
	.wp-block-column
	> .wp-block-techniconcept-text,
.wp-block-techniconcept-project-icon-title-text.is-icon-left.is-hide-title
	.wp-block-column
	> p {
	grid-row: 1;
}

/* Masquer titre / texte sans supprimer les InnerBlocks. */
.wp-block-techniconcept-project-icon-title-text.is-hide-title
	.wp-block-column
	> .wp-block-techniconcept-title,
.wp-block-techniconcept-project-icon-title-text.is-hide-title
	.wp-block-column
	> :is(h1, h2, h3) {
	display: none !important;
}

.wp-block-techniconcept-project-icon-title-text.is-hide-text
	.wp-block-column
	> .wp-block-techniconcept-text,
.wp-block-techniconcept-project-icon-title-text.is-hide-text
	.wp-block-column
	> p {
	display: none !important;
}

/*
 * Éditeur : le MediaPlaceholder ne tient pas dans 2.5rem.
 * On élargit l’image (contexte icône) pour afficher label + boutons correctement.
 */
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-image:has(.components-placeholder),
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-image:has(.components-placeholder),
.block-editor-block-list__block.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-image:has(.components-placeholder) {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	height: auto !important;
	min-height: 7rem !important;
	margin: 0 !important;
	display: block !important;
}

/*
 * Icône à gauche + placeholder : la grille 2.5rem écrase le MediaPlaceholder
 * (bande verticale illisible). Empiler icône / titre / texte tant que vide.
 */
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column:has(.components-placeholder),
.block-editor-block-list__block.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column:has(.components-placeholder) {
	grid-template-columns: minmax(0, 1fr) !important;
	grid-template-rows: auto !important;
	row-gap: 0.5rem;
}

.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column:has(.components-placeholder)
	> .wp-block-techniconcept-image,
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column:has(.components-placeholder)
	> .wp-block-image,
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column:has(.components-placeholder)
	> .wp-block-techniconcept-title,
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column:has(.components-placeholder)
	> .wp-block-techniconcept-text,
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column:has(.components-placeholder)
	> :is(h1, h2, h3, p),
.block-editor-block-list__block.wp-block-techniconcept-project-icon-title-text.is-icon-left
	.wp-block-column:has(.components-placeholder)
	> .wp-block {
	grid-column: 1 / -1 !important;
	grid-row: auto !important;
	justify-self: stretch !important;
	width: 100% !important;
	max-width: 100% !important;
}

.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-techniconcept-image
	.components-placeholder,
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	> .wp-block-image
	.components-placeholder,
.block-editor-block-list__block.wp-block-techniconcept-project-icon-title-text
	.wp-block-column
	.components-placeholder {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	min-height: 7rem;
	margin: 0;
	padding: 1rem;
	justify-content: center;
	align-items: center;
}

.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text
	.components-placeholder__fieldset,
.block-editor-block-list__block.wp-block-techniconcept-project-icon-title-text
	.components-placeholder__fieldset {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: center;
	width: 100%;
	max-width: 100%;
}

.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text
	.components-placeholder__instructions,
.block-editor-block-list__block.wp-block-techniconcept-project-icon-title-text
	.components-placeholder__instructions {
	text-align: center;
	max-width: 100%;
}

@media (min-width: 1024px) {
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
			.is-orientation-column
		)
		> .wp-block-techniconcept-columns,
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
			.is-orientation-column
		)
		> .wp-block-columns,
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
			.is-orientation-column
		)
		.tc-icon-title-text__columns {
		flex-wrap: nowrap !important;
		gap: 1.5rem;
	}

	.wp-block-techniconcept-project-icon-title-text.is-columns-1
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-1
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-2
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-2
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-3
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-3
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-4
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-4
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-5
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-5
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-6
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-6
		.tc-icon-title-text__columns
		> .wp-block-column {
		flex: 1 1 0;
		max-width: none;
	}

	.wp-block-techniconcept-project-icon-title-text.is-columns-1
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-1
		.tc-icon-title-text__columns
		> .wp-block-column {
		flex: 1 1 100%;
		max-width: 100%;
	}
}

/* Tablette : 2 colonnes pour éviter un wrap chaotique (sauf 1 col). */
@media (min-width: 768px) and (max-width: 1023px) {
	.wp-block-techniconcept-project-icon-title-text.is-columns-3
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-3
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-4
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-4
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-5
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-5
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-6
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-6
		.tc-icon-title-text__columns
		> .wp-block-column {
		flex: 1 1 calc(50% - 1rem);
		max-width: calc(50% - 1rem);
	}
}

/* Mobile row (+ legacy) : une colonne, empilement. */
@media (max-width: 767px) {
	/*
	 * Trait vertical : masqué (plus d’interstice horizontal).
	 * Flèche : repassée en flux sous chaque item, tournée vers le bas.
	 */
	.wp-block-techniconcept-project-icon-title-text.has-separators:not(
			.is-orientation-column
		):not(.has-separator-arrows)
		.wp-block-column:not(:last-child)::after {
		display: none;
	}

	.wp-block-techniconcept-project-icon-title-text.has-separators.has-separator-arrows:not(
			.is-orientation-column
		) {
		--tc-itt-arrow-size: 2rem;
	}

	.wp-block-techniconcept-project-icon-title-text.has-separators.has-separator-arrows:not(
			.is-orientation-column
		)
		.wp-block-column:not(:last-child)::after {
		content: '';
		display: block;
		position: static;
		top: auto;
		right: auto;
		flex: 0 0 auto;
		width: var(--tc-itt-arrow-size);
		height: var(--tc-itt-arrow-size);
		margin-block-start: 0.75rem;
		/* is-icon-top : centrée comme titre/texte (align-items center). */
		margin-inline: auto;
		transform: rotate(90deg);
		background-color: var(
			--tc-separator-color,
			var(--wp--preset--color--primary-dark, #082b4e)
		);
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27%3E%3Cpath d=%27M4 12h13M13 6l6 6-6 6%27 stroke=%27%23000%27 stroke-width=%271.35%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27%3E%3Cpath d=%27M4 12h13M13 6l6 6-6 6%27 stroke=%27%23000%27 stroke-width=%271.35%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
		-webkit-mask-size: contain;
		mask-size: contain;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-position: center;
		mask-position: center;
		pointer-events: none;
	}

	/*
	 * Icône à gauche : ::after auto-place en col 1 (sous l’icône).
	 * Forcer col 2 = alignement avec le titre / texte.
	 */
	.wp-block-techniconcept-project-icon-title-text.is-icon-left.has-separators.has-separator-arrows:not(
			.is-orientation-column
		)
		.wp-block-column:not(:last-child)::after {
		grid-column: 2;
		justify-self: center;
		margin-inline: 0;
	}

	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
			.is-orientation-column
		)
		> .wp-block-techniconcept-columns,
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
			.is-orientation-column
		)
		> .wp-block-columns,
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
			.is-orientation-column
		)
		.tc-icon-title-text__columns,
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
			.is-orientation-column
		)
		.wp-block-techniconcept-columns.is-layout-flex,
	.wp-block-techniconcept-project-icon-title-text.is-layout-bandeau:not(
			.is-orientation-column
		)
		.wp-block-columns {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		justify-content: stretch !important;
		gap: 1.25rem;
		flex-wrap: wrap !important;
	}

	.wp-block-techniconcept-project-icon-title-text:not(.is-orientation-column)
		.wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-1
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-1
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-2
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-2
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-3
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-3
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-4
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-4
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-5
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-5
		.tc-icon-title-text__columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-6
		> .wp-block-techniconcept-columns
		> .wp-block-column,
	.wp-block-techniconcept-project-icon-title-text.is-columns-6
		.tc-icon-title-text__columns
		> .wp-block-column {
		flex: 1 1 100% !important;
		flex-basis: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/*
 * Titre de section (fond) juste au-dessus : une seule bande crème
 * (comme intro+titre dans univers-grid, pas double pad).
 */
.wp-block-techniconcept-title.has-background
	+ .wp-block-techniconcept-project-icon-title-text,
.wp-block-techniconcept-title.has-background
	+ .wp-block-techniconcept-project-icon-title-text.is-layout-bandeau,
.is-layout-constrained
	> .wp-block-techniconcept-title.has-background
	+ .wp-block-techniconcept-project-icon-title-text,
.has-global-padding
	> .wp-block-techniconcept-title.has-background
	+ .wp-block-techniconcept-project-icon-title-text {
	padding-block-start: 0.25rem !important;
	margin-block-start: 0 !important;
}

/*
 * Éditeur : pas d’inserter libre dans le bandeau (structure figée AD-10).
 * Les items s’ajoutent uniquement via l’inspecteur (+/−).
 */
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text
	.block-list-appender,
.editor-styles-wrapper
	.wp-block-techniconcept-project-icon-title-text
	.block-editor-default-block-appender,
.block-editor-block-list__block.wp-block-techniconcept-project-icon-title-text
	.block-list-appender,
.block-editor-block-list__block.wp-block-techniconcept-project-icon-title-text
	.block-editor-default-block-appender {
	display: none !important;
}

/*
 * Opt-out padding inline (panneau Espacement).
 * 1) Padding propre du bloc (full/wide tokens, 1.25rem mode colonne).
 * 2) Nested ligne : ITT a padding-inline: 0 — le gutter visible est le padding
 *    de la colonne parente (--tc-column-pad). On le compense en marge négative.
 * Spécificité >= règle nested `margin-left: 0 !important` (+ .is-layout-bandeau).
 */
.wp-block-techniconcept-project-icon-title-text.is-disable-padding-left {
	padding-inline-start: 0 !important;
}

.wp-block-techniconcept-project-icon-title-text.is-disable-padding-right {
	padding-inline-end: 0 !important;
}

.wp-block-column
	> .wp-block-techniconcept-project-icon-title-text.is-layout-bandeau.is-disable-padding-left {
	margin-left: calc(-1 * var(--tc-column-pad, 1rem)) !important;
	margin-inline-start: calc(-1 * var(--tc-column-pad, 1rem)) !important;
	width: calc(100% + var(--tc-column-pad, 1rem)) !important;
	max-width: none !important;
}

.wp-block-column
	> .wp-block-techniconcept-project-icon-title-text.is-layout-bandeau.is-disable-padding-right {
	margin-right: calc(-1 * var(--tc-column-pad, 1rem)) !important;
	margin-inline-end: calc(-1 * var(--tc-column-pad, 1rem)) !important;
	width: calc(100% + var(--tc-column-pad, 1rem)) !important;
	max-width: none !important;
}

.wp-block-column
	> .wp-block-techniconcept-project-icon-title-text.is-layout-bandeau.is-disable-padding-left.is-disable-padding-right {
	width: calc(100% + (2 * var(--tc-column-pad, 1rem))) !important;
}


/*# sourceMappingURL=style-index.css.map*/