.elementor-1682 .elementor-element.elementor-element-6e48dd67:not(.elementor-motion-effects-element-type-background), .elementor-1682 .elementor-element.elementor-element-6e48dd67 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(115deg, #0E3149 0%, #1B537D 100%);}.elementor-1682 .elementor-element.elementor-element-6e48dd67 > .elementor-container{max-width:1240px;}.elementor-1682 .elementor-element.elementor-element-6e48dd67{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:64px 0px 76px 0px;}.elementor-1682 .elementor-element.elementor-element-6e48dd67 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1682 .elementor-element.elementor-element-1990e962{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 16px) 0px;text-align:start;}.elementor-1682 .elementor-element.elementor-element-1990e962 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:52px;font-weight:700;line-height:1.15em;letter-spacing:-1px;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1682 .elementor-element.elementor-element-2032a446{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 14px) 0px;text-align:start;font-family:"Inter", Sans-serif;font-size:13px;line-height:1.65em;letter-spacing:0px;color:#FFFFFF;}.elementor-1682 .elementor-element.elementor-element-2032a446 a{color:#47BCC8;}.elementor-1682 .elementor-element.elementor-element-5e5ebe63:not(.elementor-motion-effects-element-type-background), .elementor-1682 .elementor-element.elementor-element-5e5ebe63 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1682 .elementor-element.elementor-element-5e5ebe63 > .elementor-container{max-width:1240px;}.elementor-1682 .elementor-element.elementor-element-5e5ebe63{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:56px 0px 56px 0px;}.elementor-1682 .elementor-element.elementor-element-5e5ebe63 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1682 .elementor-element.elementor-element-6e1a4603:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-1682 .elementor-element.elementor-element-6e1a4603 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1682 .elementor-element.elementor-element-6e1a4603 > .elementor-element-populated{border-style:solid;border-width:1px 1px 1px 1px;border-color:#E3E7EF;box-shadow:0px 6px 24px 0px rgba(13,18,32,0.06);transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:5px 5px 5px 5px;--e-column-margin-right:5px;--e-column-margin-left:5px;padding:26px 26px 26px 26px;}.elementor-1682 .elementor-element.elementor-element-6e1a4603 > .elementor-element-populated, .elementor-1682 .elementor-element.elementor-element-6e1a4603 > .elementor-element-populated > .elementor-background-overlay, .elementor-1682 .elementor-element.elementor-element-6e1a4603 > .elementor-background-slideshow{border-radius:20px 20px 20px 20px;}.elementor-1682 .elementor-element.elementor-element-6e1a4603 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}@media(max-width:1024px){.elementor-1682 .elementor-element.elementor-element-6e48dd67{padding:48px 0px 57px 0px;}.elementor-1682 .elementor-element.elementor-element-1990e962 .elementor-heading-title{font-size:42px;}.elementor-1682 .elementor-element.elementor-element-5e5ebe63{padding:42px 0px 0px 0px;}}@media(max-width:767px){.elementor-1682 .elementor-element.elementor-element-6e48dd67{padding:38px 0px 45px 0px;}.elementor-1682 .elementor-element.elementor-element-1990e962 .elementor-heading-title{font-size:35px;}.elementor-1682 .elementor-element.elementor-element-5e5ebe63{padding:33px 0px 0px 0px;}.elementor-1682 .elementor-element.elementor-element-6e1a4603 > .elementor-element-populated{padding:20px 18px 20px 18px;}}/* Start custom CSS for shortcode, class: .elementor-element-a4ca4bb *//* =============================================================================
   Printemps de l'IA — Exposants
   Feuille de style à coller dans WPCode (extrait de type CSS, chargé sur tout
   le site). Elle surcharge les styles de base du plugin : vous pouvez modifier
   librement ce fichier sans jamais toucher au plugin.

   Sommaire
   1. Variables — commencez par ici, la plupart des réglages y sont
   2. Grille des exposants
   3. Carte
   4. Badges de niveau
   5. Filtres
   6. Fiche détaillée  [exposant_detail]
   7. Bloc Participations
   8. Pagination et divers
   9. Responsive
   ========================================================================== */

/* -----------------------------------------------------------------------------
   1. Variables
   Modifier ces valeurs suffit pour la majorité des ajustements.
   -------------------------------------------------------------------------- */

:root {
	--pia-couleur-texte: #1c1c1c;
	--pia-couleur-douce: #6b7280;
	--pia-couleur-lien: #0f766e;          /* reprend le vert du thème */
	--pia-couleur-bordure: #e3e5e8;
	--pia-couleur-fond-carte: #ffffff;

	--pia-rayon: 6px;
	--pia-espace: 20px;                    /* gouttière de la grille */
	--pia-ombre: 0 1px 2px rgba(16, 24, 40, .05);
	--pia-ombre-survol: 0 8px 24px rgba(16, 24, 40, .10);

	--pia-carte-hauteur: 190px;            /* hauteur des cartes de la grille */
	--pia-logo-hauteur: 82px;              /* hauteur maximale d'un logo */

	--pia-transition: .18s ease;
}

/* -----------------------------------------------------------------------------
   2. Grille
   Le nombre de colonnes vient de l'attribut « colonnes » du shortcode.
   -------------------------------------------------------------------------- */

.pia-exposants {
	--pia-gap: var(--pia-espace);
	color: var(--pia-couleur-texte);
}

.pia-exposants__title {
	margin: 0 0 var(--pia-espace);
}

.pia-grid {
	display: grid;
	grid-template-columns: repeat(var(--pia-cols, 4), minmax(0, 1fr));
	gap: var(--pia-gap);
}

/* -----------------------------------------------------------------------------
   3. Carte
   -------------------------------------------------------------------------- */

.pia-card {
	position: relative;
	background: var(--pia-couleur-fond-carte);
	border: 1px solid var(--pia-couleur-bordure);
	border-radius: var(--pia-rayon);
	box-shadow: var(--pia-ombre);
	transition: box-shadow var(--pia-transition), transform var(--pia-transition);
}

.pia-card:hover {
	box-shadow: var(--pia-ombre-survol);
	transform: translateY(-2px);
}

.pia-card__link {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 14px;
	height: 100%;
	min-height: var(--pia-carte-hauteur);
	padding: 30px 18px 22px;
	text-align: center;
	text-decoration: none;
	color: inherit;
}

.pia-card__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	width: 100%;
}

.pia-card__logo img {
	max-width: 100%;
	max-height: var(--pia-logo-hauteur);
	width: auto;
	height: auto;
	object-fit: contain;
}

/* Nom de la société. Masquez-le si le logo suffit : passez « display » à none. */
.pia-card__name {
	display: block;
	font-weight: 700;
	font-size: .95rem;
	letter-spacing: .01em;
}

.pia-card__desc {
	font-size: .8rem;
	font-weight: 400;
	color: var(--pia-couleur-douce);
	line-height: 1.45;
}

/* -----------------------------------------------------------------------------
   4. Badges de niveau
   La couleur de fond vient du réglage de chaque niveau (Exposants › Niveaux),
   appliquée en style inline : ne la redéfinissez pas ici, elle serait ignorée
   ou figerait tous les niveaux sur la même teinte.
   -------------------------------------------------------------------------- */

.pia-badge {
	position: absolute;
	top: -11px;
	left: 14px;
	padding: 3px 12px;
	border-radius: 12px;
	font-size: .7rem;
	line-height: 1.6;
	font-weight: 500;
	color: #fff;
	white-space: nowrap;
}

.pia-badge--static {
	position: static;
	display: inline-block;
}

.pia-badge--small {
	position: static;
	display: inline-block;
	padding: 2px 10px;
	font-size: .66rem;
	margin-left: 6px;
}

/* -----------------------------------------------------------------------------
   5. Filtres
   -------------------------------------------------------------------------- */

.pia-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	align-items: flex-end;
	margin: 0 0 28px;
}

.pia-filter {
	display: flex;
	flex-direction: column;
	gap: 5px;
	font-size: .88rem;
}

.pia-filter__label {
	font-weight: 600;
	color: var(--pia-couleur-douce);
	text-transform: uppercase;
	letter-spacing: .04em;
	font-size: .72rem;
}

.pia-filter select,
.pia-filter input[type="search"] {
	min-width: 190px;
	padding: 9px 12px;
	border: 1px solid var(--pia-couleur-bordure);
	border-radius: var(--pia-rayon);
	background: #fff;
	font-size: .9rem;
	color: var(--pia-couleur-texte);
}

.pia-filter select:focus,
.pia-filter input[type="search"]:focus {
	outline: 2px solid var(--pia-couleur-lien);
	outline-offset: 1px;
}

/* -----------------------------------------------------------------------------
   6. Fiche détaillée — rendu de [exposant_detail]
   -------------------------------------------------------------------------- */

.pia-detail {
	color: var(--pia-couleur-texte);
}

.pia-detail__title {
	margin: 0 0 6px;
}

.pia-detail__baseline {
	margin: 0 0 28px;
	font-size: 1.05rem;
	color: var(--pia-couleur-douce);
}

.pia-detail__head {
	display: grid;
	grid-template-columns: minmax(0, 300px) minmax(0, 1fr);
	gap: 40px;
	align-items: start;
	margin-bottom: 36px;
}

.pia-detail__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 28px;
	background: #fff;
	border: 1px solid var(--pia-couleur-bordure);
	border-radius: var(--pia-rayon);
}

.pia-detail__logo img {
	max-width: 100%;
	height: auto;
}

.pia-detail__contact-title {
	margin: 0 0 16px;
	font-size: 1.4rem;
}

.pia-detail__badges {
	margin: 0 0 14px;
}

.pia-detail__site a {
	color: var(--pia-couleur-lien);
	text-decoration: none;
	border-bottom: 1px solid currentColor;
}

.pia-detail__site a:hover {
	border-bottom-color: transparent;
}

.pia-detail__adresse,
.pia-detail__tel {
	margin: 6px 0;
	color: var(--pia-couleur-douce);
}

.pia-detail__body {
	line-height: 1.65;
}

.pia-detail__body h2,
.pia-detail__body h3 {
	margin-top: 1.6em;
}

.pia-detail__back {
	margin-top: 40px;
}

.pia-detail__back a {
	color: var(--pia-couleur-lien);
	text-decoration: none;
}

/* -----------------------------------------------------------------------------
   7. Participations
   -------------------------------------------------------------------------- */

.pia-participations {
	margin-top: 44px;
	padding-top: 8px;
	border-top: 1px solid var(--pia-couleur-bordure);
}

.pia-participations__title {
	margin: 22px 0 14px;
	font-size: 1.3rem;
}

.pia-participations__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pia-participation {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 10px;
	padding: 12px 4px;
	border-bottom: 1px solid var(--pia-couleur-bordure);
}

.pia-participation:last-child {
	border-bottom: none;
}

.pia-participation.is-courante {
	background: rgba(15, 118, 110, .04);
	border-radius: var(--pia-rayon);
	padding-left: 12px;
	padding-right: 12px;
}

.pia-participation__edition {
	min-width: 68px;
	font-weight: 600;
	color: var(--pia-couleur-lien);
	text-decoration: none;
}

.pia-participation__edition:hover {
	text-decoration: underline;
}

.pia-stand,
.pia-note {
	font-size: .82rem;
	color: var(--pia-couleur-douce);
}

/* -----------------------------------------------------------------------------
   8. Pagination et états
   -------------------------------------------------------------------------- */

.pia-pagination {
	display: flex;
	justify-content: center;
	gap: 6px;
	margin-top: 34px;
}

.pia-pagination .page-numbers {
	padding: 8px 13px;
	border: 1px solid var(--pia-couleur-bordure);
	border-radius: var(--pia-rayon);
	text-decoration: none;
	color: var(--pia-couleur-texte);
}

.pia-pagination .page-numbers:hover {
	border-color: var(--pia-couleur-lien);
}

.pia-pagination .page-numbers.current {
	background: var(--pia-couleur-lien);
	border-color: var(--pia-couleur-lien);
	color: #fff;
}

.pia-empty {
	padding: 40px 0;
	color: var(--pia-couleur-douce);
	text-align: center;
}

/* -----------------------------------------------------------------------------
   9. Responsive
   -------------------------------------------------------------------------- */

@media (max-width: 1024px) {
	.pia-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.pia-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pia-detail__head {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.pia-filters {
		gap: 16px;
	}

	.pia-filter select,
	.pia-filter input[type="search"] {
		min-width: 0;
		width: 100%;
	}

	.pia-filter {
		flex: 1 1 200px;
	}
}

@media (max-width: 520px) {
	.pia-grid {
		grid-template-columns: 1fr;
	}
}/* End custom CSS */