/*
Theme Name: e-novision Theme
Theme URI: https://e-novision.ch
Author: e-novision
Author URI: https://e-novision.ch
Description: Thème WP e-novision
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: theme-enovision
*/


html 
{
  font-size: 14px;
}
body
{
    margin: 0;
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
}

body.error404
{
  background-color: #d1d1d1;
}
.container-404
{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  height: 60vh;
}
body.error404 .container-404 h1 
{
  font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
  font-size: var(--e-global-typography-secondary-font-size);
  font-weight: var(--e-global-typography-secondary-font-weight);
  line-height: var(--e-global-typography-secondary-line-height);
  color: var(--e-global-color-primary);

  margin-bottom: 15px;
}

/* SINGLE ARTICLE STYLE WYSIWIG */
.elementor-widget-text-editor h2
{
  font-size: var(--e-global-typography-50cf0d1-font-size);

  font-family: var(--e-global-typography-50cf0d1-font-family), Sans-serif;
  font-weight: var(--e-global-typography-50cf0d1-font-weight);
  line-height: var(--e-global-typography-50cf0d1-line-height);
  letter-spacing: var(--e-global-typography-50cf0d1-letter-spacing);

  margin-bottom: 15px;
}

.elementor-widget-text-editor h3
{
  font-size: var(--e-global-typography-cffcd45-font-size);

  font-family: var(--e-global-typography-cffcd45-font-family), Sans-serif;
  font-weight: var(--e-global-typography-cffcd45-font-weight);
  line-height: var(--e-global-typography-cffcd45-line-height);
  letter-spacing: var(--e-global-typography-cffcd45-letter-spacing);

  margin-bottom: 10px;
}

.elementor-widget-text-editor h4 
{
  font-size: var(--e-global-typography-1027ade-font-size);

  font-family: var(--e-global-typography-1027ade-font-family), Sans-serif;
  font-weight: var(--e-global-typography-1027ade-font-weight);
  line-height: var(--e-global-typography-1027ade-line-height);
  letter-spacing: var(--e-global-typography-1027ade-letter-spacing);

  margin-bottom: 10px;
}


/* Header menu -------------- */
ul.elementor-nav-menu
{
  position: relative;
}
ul.elementor-nav-menu li
{
  position: unset;
}
ul.elementor-nav-menu ul.sub-menu[aria-expanded="true"]
{
  width: 100% !important;
  border: 1px solid #e6e6e6 !important;
  background-color: #fff !important;
  border-radius: 5px !important;
  box-shadow: 0px 5px 15px #0000000f !important;
  display: flex !important;
  flex-wrap: wrap !important;
  min-width: 500px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  padding: 10px !important;
  gap: 10px !important;
}
ul.elementor-nav-menu ul.sub-menu li
{
  width: calc(50% - 5px);
}
ul.elementor-nav-menu ul.sub-menu li a
{
  border: 0;
  padding: 10px !important; 
  border-radius: 5px !important;
  display: flex;
  flex-direction: column;
  align-items: flex-start; 
}
ul.elementor-nav-menu ul.sub-menu li a span
{
  font-size: var(--e-global-typography-40d709d-font-size); 
  white-space: normal;
  line-height: 1.2rem;
  color: #a8a8a8;
  padding-top: 5px;
}


/* STICKY MENU */
header .elementor-sticky
{
  transition: top .3s;
}
header .elementor-sticky > div.e-con-inner
{
  border-radius: 999px;
  background-color: #fff;
  padding: 0 30px;
}

header .elementor-sticky.elementor-sticky--effects 
{
  position: relative;
  isolation: isolate;

  top: 20px !important;
  left: 0;
  right: 0;
  margin: 0 auto;
  min-height: 60px; 
}

header .elementor-sticky.elementor-sticky--effects > div.e-con-inner
{
  border-radius: 999px;
  max-width: 1180px !important;
  box-shadow: 0px 10px 15px -5px hsl(0deg 0% 0% / 20%);
  border: 1px solid #71385a;
}

@media screen and (max-width: 600px)
{
  header .elementor-sticky.elementor-sticky--effects 
  {
    min-height: 40px;  
  }
}




/* ==========================================================================
   MODÈLES SINGLE (Ressources, Études de cas…)
   Portée : .elementor-location-single = conteneur de tout modèle Single
   du Theme Builder. Les classes .enov-* sont posées dans Elementor
   (Avancé > Classes CSS).
   ========================================================================== */

/* ===== Hero ===== */
.elementor-location-single .enov-res-breadcrumbs,
.elementor-location-single .enov-res-breadcrumbs a,
.elementor-location-archive .enov-res-breadcrumbs,
.elementor-location-archive .enov-res-breadcrumbs a {
	color: rgba(255,255,255,.75);
	font-family: "Outfit",sans-serif;
	font-size: 13px;
	text-decoration: none;
}
.elementor-location-single .enov-res-breadcrumbs a:hover,
.elementor-location-archive .enov-res-breadcrumbs a:hover {
	color: #fff;
}
.elementor-location-single .enov-res-breadcrumbs .breadcrumb_last,
.elementor-location-archive .enov-res-breadcrumbs .breadcrumb_last {
	color: #fff;
}
.elementor-location-single .enov-res-badge .elementor-post-info__item {
	padding: 4px 12px;
	border: 1px solid rgba(255,255,255,.6);
	border-radius: 50px;
}
.elementor-location-single .enov-res-badge a,
.elementor-location-single .enov-res-badge .elementor-post-info__terms-list {
	color: #fff;
	font-family: "Outfit",sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	text-decoration: none;
}
.elementor-location-single .enov-res-title .elementor-heading-title {
	margin: 0;
}
.elementor-location-single .enov-res-excerpt,
.elementor-location-single .enov-res-excerpt p {
	color: #fff;
	font-family: "Outfit",sans-serif;
	font-weight: 300;
	font-size: clamp(16px,13px + .5vw,20px);
	line-height: 1.5;
	margin: 0;
	max-width: 760px;
}
.elementor-location-single .enov-res-meta .elementor-post-info__item,
.elementor-location-single .enov-res-meta a {
	color: rgba(255,255,255,.75);
	font-family: "Outfit",sans-serif;
	font-size: 13px;
	text-decoration: none;
}
.elementor-location-single .enov-res-meta a:hover {
	color: #fff;
	text-decoration: underline;
}
.elementor-location-single .enov-res-meta .elementor-post-info__item:not(:last-child)::after {
	content: "·";
	margin: 0 10px;
}

/* ===== Image principale ===== */
.elementor-location-single .enov-res-cover img {
	width: 100%;
	border-radius: 16px;
	aspect-ratio: 16/9;
	object-fit: cover;
}

/* ===== Contenu Gutenberg ===== */
.elementor-location-single .enov-prose {
	color: var(--e-global-color-text);
	font-family: "Outfit",sans-serif;
	font-weight: 300;
	font-size: clamp(16px,15px + .2vw,18px);
	line-height: 1.7;
	letter-spacing: .01em;
}
.elementor-location-single .enov-prose > .elementor-widget-container > *:first-child {
	margin-top: 0;
}
.elementor-location-single .enov-prose p {
	margin: 0 0 1.2em;
}
.elementor-location-single .enov-prose h2,
.elementor-location-single .enov-prose h3,
.elementor-location-single .enov-prose h4 {
	font-family: "Outfit",sans-serif;
	font-weight: 700;
	color: var(--e-global-color-primary);
	line-height: 1.2;
	scroll-margin-top: 120px;
}
.elementor-location-single .enov-prose h2 {
	font-size: clamp(24px,20px + .7vw,30px);
	margin: 1.8em 0 .6em;
}
.elementor-location-single .enov-prose h3 {
	font-size: clamp(19px,17px + .4vw,22px);
	margin: 1.5em 0 .5em;
}
.elementor-location-single .enov-prose h4 {
	font-size: 18px;
	margin: 1.3em 0 .4em;
}
.elementor-location-single .enov-prose strong {
	font-weight: 600;
}
.elementor-location-single .enov-prose a {
	color: var(--e-global-color-secondary);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}
.elementor-location-single .enov-prose a:hover {
	color: var(--e-global-color-primary);
}
.elementor-location-single .enov-prose ul,
.elementor-location-single .enov-prose ol {
	margin: 0 0 1.4em;
	padding-left: 1.4em;
}
.elementor-location-single .enov-prose ul {
	list-style: disc;
}
.elementor-location-single .enov-prose ol {
	list-style: decimal;
}
.elementor-location-single .enov-prose li {
	margin-bottom: .5em;
	padding-left: .2em;
}
.elementor-location-single .enov-prose li::marker {
	color: var(--e-global-color-secondary);
	font-weight: 600;
}
.elementor-location-single .enov-prose blockquote {
	margin: 1.8em 0;
	padding: 1.2em 1.5em;
	border-left: 4px solid var(--e-global-color-secondary);
	background: var(--e-global-color-3a82a18);
	border-radius: 0 12px 12px 0;
	font-size: 1.05em;
}
.elementor-location-single .enov-prose blockquote p:last-child {
	margin-bottom: 0;
}
.elementor-location-single .enov-prose figure {
	margin: 1.8em 0;
}
.elementor-location-single .enov-prose img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}
.elementor-location-single .enov-prose figcaption {
	font-size: 14px;
	color: var(--e-global-color-4ee04d1);
	margin-top: .5em;
	text-align: center;
}
.elementor-location-single .enov-prose .wp-block-table {
	overflow-x: auto;
}
.elementor-location-single .enov-prose table {
	width: 100%;
	border-collapse: collapse;
	font-size: .92em;
}
.elementor-location-single .enov-prose th,
.elementor-location-single .enov-prose td {
	padding: 12px 14px;
	border: 1px solid var(--e-global-color-f24f5d7);
	text-align: left;
	vertical-align: top;
}
.elementor-location-single .enov-prose thead th {
	background: var(--e-global-color-primary);
	color: #fff;
	font-weight: 600;
	border-color: var(--e-global-color-primary);
}
.elementor-location-single .enov-prose tbody tr:nth-child(even) {
	background: var(--e-global-color-ed56f25);
}
.elementor-location-single .enov-prose hr {
	border: 0;
	border-top: 1px solid var(--e-global-color-f24f5d7);
	margin: 2.5em 0;
}

/* ===== Sommaire ===== */
.elementor-location-single .enov-res-toc .elementor-toc__header {
	background: transparent;
	padding: 0 0 12px;
	border-bottom: 1px solid var(--e-global-color-f24f5d7);
}
.elementor-location-single .enov-res-toc .elementor-toc__header-title {
	font-family: "Outfit",sans-serif;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--e-global-color-primary);
}
.elementor-location-single .enov-res-toc .elementor-toc__body {
	padding: 12px 0 0;
}
.elementor-location-single .enov-res-toc {
	--toc-border-width: 0;
	--toc-body-padding: 0;
}
.elementor-location-single .enov-res-toc .elementor-toc__list-item-text {
	font-family: "Outfit",sans-serif;
	font-size: 14px;
	color: var(--e-global-color-4ee04d1);
	text-decoration: none;
}
.elementor-location-single .enov-res-toc .elementor-toc__list-item-text:hover,
.elementor-location-single .enov-res-toc .elementor-toc__list-item-text.elementor-item-active {
	color: var(--e-global-color-primary);
	font-weight: 600;
}
.elementor-location-single .enov-res-toc .elementor-toc__list-item {
	margin-bottom: 6px;
}
.elementor-location-single .enov-res-toc .elementor-toc__list-item-text-wrapper i,
.elementor-location-single .enov-res-toc .elementor-toc__list-item-text-wrapper svg {
	color: var(--e-global-color-3a4639b);
	fill: var(--e-global-color-3a4639b);
	font-size: 6px;
}
.elementor-location-single .enov-res-toc .elementor-toc__widget-container {
	border: 0;
}

/* ===== Ressources liées ===== */
.elementor-location-single .enov-res-related .elementor-post {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(64,28,48,.06);
	transition: transform .3s ease,box-shadow .3s ease;
}
.elementor-location-single .enov-res-related .elementor-post:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 40px rgba(64,28,48,.12);
}
.elementor-location-single .enov-res-related .elementor-post__text {
	padding: 20px 22px 24px;
}
.elementor-location-single .enov-res-related .elementor-post__thumbnail__link {
	margin-bottom: 0!important;
}
.elementor-location-single .enov-res-related .elementor-post__title,
.elementor-location-single .enov-res-related .elementor-post__title a {
	font-family: "Outfit",sans-serif;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--e-global-color-primary);
	text-decoration: none;
}
.elementor-location-single .enov-res-related .elementor-post__excerpt p {
	font-family: "Outfit",sans-serif;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.5;
	color: var(--e-global-color-text);
	margin-top: 8px;
}
.elementor-location-single .enov-res-related .elementor-post__read-more {
	font-family: "Outfit",sans-serif;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--e-global-color-secondary);
}

/* Masquer la section si aucune ressource liée */
.elementor-location-single .enov-res-related-wrap:not(:has(.elementor-post)) {
	display: none;
}

/* ===== Champs ACF ===== */
.elementor-location-single .enov-res-meta2 .elementor-heading-title {
	color: rgba(255,255,255,.75);
	font-family: "Outfit",sans-serif;
	font-size: 13px;
	font-weight: 400;
}
.elementor-location-single .enov-res-meta2__item + .enov-res-meta2__item .elementor-heading-title::before {
	content: "·";
	margin: 0 10px;
}
.elementor-location-single .enov-res-meta2:not(:has(.elementor-heading-title)) {
	display: none;
}
.elementor-location-single .enov-res-keypoints {
	background: var(--e-global-color-3a82a18);
	border-left: 4px solid var(--e-global-color-secondary);
	border-radius: 0 16px 16px 0;
	padding: 22px 26px;
}
.elementor-location-single .enov-res-keypoints__titre .elementor-heading-title {
	font-family: "Outfit",sans-serif;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--e-global-color-secondary);
}
.elementor-location-single .enov-res-keypoints__texte {
	color: var(--e-global-color-text);
	font-family: "Outfit",sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 1.6;
}
.elementor-location-single .enov-res-keypoints__texte ul {
	margin: 0;
	padding-left: 1.2em;
	list-style: disc;
}
.elementor-location-single .enov-res-keypoints__texte li {
	margin-bottom: .35em;
}
.elementor-location-single .enov-res-keypoints__texte li::marker {
	color: var(--e-global-color-secondary);
}
.elementor-location-single .enov-res-keypoints__texte p:last-child {
	margin-bottom: 0;
}
.elementor-location-single .enov-res-keypoints:not(:has(.enov-res-keypoints__texte li, .enov-res-keypoints__texte p)) {
	display: none;
}
.elementor-location-single .enov-apps-liees__titre {
	font-family: "Outfit",sans-serif;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--e-global-color-primary);
	margin: 0 0 12px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--e-global-color-f24f5d7);
}
.elementor-location-single .enov-apps-liees ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.elementor-location-single .enov-apps-liees a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 14px;
	border: 1px solid var(--e-global-color-f24f5d7);
	border-radius: 10px;
	font-family: "Outfit",sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: var(--e-global-color-primary);
	text-decoration: none;
	transition: border-color .3s ease,background .3s ease;
}
.elementor-location-single .enov-apps-liees a::after {
	content: "→";
	color: var(--e-global-color-secondary);
}
.elementor-location-single .enov-apps-liees a:hover {
	border-color: var(--e-global-color-secondary);
	background: var(--e-global-color-3a82a18);
}
.elementor-location-single .enov-res-apps:not(:has(.enov-apps-liees)) {
	display: none;
}
.elementor-location-single .enov-res-expert {
	padding: 16px 0;
	border-top: 1px solid var(--e-global-color-f24f5d7);
	border-bottom: 1px solid var(--e-global-color-f24f5d7);
}
.elementor-location-single .enov-res-expert__photo {
	width: 56px;
	flex-shrink: 0;
}
.elementor-location-single .enov-res-expert__photo img {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
}
.elementor-location-single .enov-res-expert__photo:not(:has(img)) {
	display: none;
}
.elementor-location-single .enov-res-expert__texte {
	flex: 1;
}
.elementor-location-single .enov-res-expert__label .elementor-heading-title {
	font-family: "Outfit",sans-serif;
	font-size: 12px;
	color: var(--e-global-color-4ee04d1);
}
.elementor-location-single .enov-res-expert__nom .elementor-heading-title {
	font-family: "Outfit",sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--e-global-color-primary);
}
.elementor-location-single .enov-res-expert__fonction .elementor-heading-title {
	font-family: "Outfit",sans-serif;
	font-size: 13px;
	font-weight: 300;
	color: var(--e-global-color-text);
}
.elementor-location-single .enov-res-expert:not(:has(.enov-res-expert__nom .elementor-heading-title)) {
	display: none;
}


/* ==========================================================================
   HUB RESSOURCES (/ressources/) et cartes de boucle
   ========================================================================== */
.enov-hub-hero > .e-con-inner {
	max-width: 960px;
}
.enov-hub-intro p {
	max-width: 760px;
	line-height: 1.5;
	margin: 0 0 .8em;
}
.enov-hub-intro p:last-child {
	margin-bottom: 0;
}

/* Filtres
   Préfixe .elementor-widget-taxonomy-filter.enov-hub-pills nécessaire pour passer
   devant widget-loop-filter.min.css d'Elementor Pro, chargé après le thème. */
.enov-hub-filtre__label .elementor-heading-title {
	display: inline-block;
	min-width: 100px;
	font-family: "Outfit", sans-serif;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--e-global-color-primary);
}
.elementor-widget-taxonomy-filter.enov-hub-pills {
	flex: 1;
	min-width: 0;
	--e-filter-justify-content: flex-start;
	--e-filter-space-between: 8px;
	--e-filter-item-padding: 8px 16px;
	--e-filter-item-border-radius: 50px;
	--e-filter-normal-text-color: var(--e-global-color-primary);
	--e-filter-hover-text-color: var(--e-global-color-primary);
	--e-filter-active-text-color: #fff;
}
.elementor-widget-taxonomy-filter.enov-hub-pills .e-filter-item {
	border: 1px solid var(--e-global-color-f24f5d7);
	background-color: #fff;
	font-family: "Outfit", sans-serif;
	font-size: 14px;
	font-weight: 400;
	cursor: pointer;
	transition: background-color .3s ease, border-color .3s ease, color .3s ease;
}
.elementor-widget-taxonomy-filter.enov-hub-pills .e-filter-item:hover:not([aria-pressed="true"]) {
	border-color: var(--e-global-color-secondary);
	background-color: var(--e-global-color-3a82a18);
}
.elementor-widget-taxonomy-filter.enov-hub-pills .e-filter-item[aria-pressed="true"] {
	border-color: var(--e-global-color-primary);
	background-color: var(--e-global-color-primary);
	font-weight: 600;
}
.elementor-widget-taxonomy-filter.enov-hub-pills .e-filter-item[data-filter="__all"] {
	order: -1;
}
@media (max-width: 767px) {
	.elementor-widget-taxonomy-filter.enov-hub-pills {
		--e-filter-wrap: nowrap;
		--e-filter-overflow-x: auto;
		width: 100%;
	}
}

/* Grille */
.enov-hub-grille .e-loop-nothing-found-message {
	padding: 40px 20px;
	border: 1px dashed var(--e-global-color-f24f5d7);
	border-radius: 16px;
	font-family: "Outfit", sans-serif;
	color: var(--e-global-color-4ee04d1);
}
.elementor-widget-loop-grid.enov-hub-grille .elementor-button-wrapper .elementor-button {
	padding: 10px 36px;
	border: 1px solid var(--e-global-color-secondary);
	border-radius: 30px;
	background: transparent;
	font-family: "Outfit", sans-serif;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--e-global-color-secondary);
}
.elementor-widget-loop-grid.enov-hub-grille .elementor-button-wrapper .elementor-button:hover {
	background: var(--e-global-color-secondary);
	color: #fff;
}

/* Badge de format sur les cartes de boucle */
.enov-card-badge .elementor-post-info__item,
.enov-card-badge .elementor-post-info__terms-list {
	font-family: "Outfit", sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--e-global-color-secondary);
}

/* ==========================================================================
   ÉTUDES DE CAS (modèle "Single - Étude de cas")
   Complète les styles des modèles Single ci-dessus (hero, contenu, CTA, cartes liées).
   ========================================================================== */
.elementor-location-single .enov-edc-badge .elementor-heading-title {
	display: inline-block;
	padding: 4px 12px;
	border: 1px solid rgba(255,255,255,.6);
	border-radius: 50px;
	font-family: "Outfit", sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: #fff;
}

/* Sections masquées si le champ ACF est vide */
.elementor-location-single .enov-edc-section:not(:has(.enov-edc-section__texte p, .enov-edc-section__texte li)) {
	display: none;
}
.elementor-location-single .enov-edc-resultats:not(:has(.enov-resultats)) {
	display: none;
}
.elementor-location-single .enov-edc-citation:not(:has(.enov-edc-citation__texte p)) {
	display: none;
}

/* Résultats chiffrés */
.enov-resultats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 16px;
}
.enov-resultats__item {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 22px 20px;
	border-radius: 16px;
	background: var(--e-global-color-3a82a18);
}
.enov-resultats__valeur {
	font-family: "Outfit", sans-serif;
	font-size: clamp(28px, 22px + 1vw, 36px);
	font-weight: 700;
	line-height: 1;
	color: var(--e-global-color-secondary);
}
.enov-resultats__libelle {
	font-family: "Outfit", sans-serif;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.4;
	color: var(--e-global-color-text);
}

/* Citation client */
.elementor-location-single .enov-edc-citation {
	position: relative;
	padding: 30px 32px 28px 64px;
	border-radius: 16px;
	background: var(--e-global-color-primary);
}
.elementor-location-single .enov-edc-citation::before {
	content: "«";
	position: absolute;
	top: 18px;
	left: 24px;
	font-family: "Outfit", sans-serif;
	font-size: 48px;
	line-height: 1;
	color: var(--e-global-color-3a4639b);
}
.elementor-location-single .enov-edc-citation__texte,
.elementor-location-single .enov-edc-citation__texte p {
	margin: 0 0 10px;
	font-family: "Outfit", sans-serif;
	font-size: clamp(17px, 15px + .4vw, 20px);
	font-weight: 300;
	line-height: 1.5;
	color: #fff;
}
.elementor-location-single .enov-edc-citation__auteur .elementor-heading-title {
	font-family: "Outfit", sans-serif;
	font-size: 15px;
	font-weight: 700;
	color: #fff;
}
.elementor-location-single .enov-edc-citation__fonction .elementor-heading-title {
	font-family: "Outfit", sans-serif;
	font-size: 13px;
	font-weight: 300;
	color: var(--e-global-color-3a4639b);
}

/* Fiche projet (colonne de droite) */
.elementor-location-single .enov-edc-fiche:not(:has(.enov-fiche)) {
	display: none;
}
.enov-fiche {
	padding: 24px;
	border: 1px solid var(--e-global-color-f24f5d7);
	border-radius: 16px;
}
.enov-fiche__titre {
	margin: 0 0 16px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--e-global-color-f24f5d7);
	font-family: "Outfit", sans-serif;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--e-global-color-primary);
}
.enov-fiche__logo {
	margin-bottom: 16px;
}
.enov-fiche__logo img {
	max-width: 160px;
	max-height: 60px;
	width: auto;
	height: auto;
	object-fit: contain;
}
.enov-fiche dl {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.enov-fiche__ligne dt {
	font-family: "Outfit", sans-serif;
	font-size: 12px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: var(--e-global-color-4ee04d1);
}
.enov-fiche__ligne dd {
	margin: 2px 0 0;
	font-family: "Outfit", sans-serif;
	font-size: 15px;
	font-weight: 600;
	color: var(--e-global-color-primary);
}
.enov-fiche__ligne dd a {
	color: var(--e-global-color-secondary);
	text-decoration: underline;
	text-underline-offset: 3px;
}
