/*
Theme Name: Essentials Child
Theme URI: https://essentials.pixfort.com/
Author: PixFort
Template: essentials
Author URI: http://themeforest.net/user/pixfort
Description: Essentials child theme
Version: 1.2.72
License: Envato Marketplaces Split Licence
License URI: https://themeforest.net/licenses/standard
Text Domain: essentials-child
Tags: header-builder, footer-builder, divider-builder, popup-builder, premium-design, translation-ready

*/

/* ==========================================================================
   Fonts — Luxenta
   ========================================================================== */
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-Regular-BF66e8f162ecd4a.otf") format("opentype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-Italic-BF66e8f169a1dd4.otf") format("opentype");
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-Medium-BF66e8f169e7d3f.otf") format("opentype");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-MediumItalic-BF66e8f169141e3.otf") format("opentype");
	font-weight: 500;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-SemiBold-BF66e8f16946d50.otf") format("opentype");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-SemiBoldItalic-BF66e8f16973521.otf") format("opentype");
	font-weight: 600;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-Bold-BF66e8f168d957c.otf") format("opentype");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-BoldItalic-BF66e8f16825874.otf") format("opentype");
	font-weight: 700;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-ExtraBold-BF66e8f1685379b.otf") format("opentype");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-ExtraBoldItalic-BF66e8f168816e6.otf") format("opentype");
	font-weight: 800;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-Black-BF66e8f16800de1.otf") format("opentype");
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Luxenta";
	src: url("fonts/Luxenta-BlackItalic-BF66e8f167ebe65.otf") format("opentype");
	font-weight: 900;
	font-style: italic;
	font-display: swap;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: "Luxenta", sans-serif !important;
}

/* ==========================================================================
   Header VC — fixed
   ========================================================================== */
 .essentials-child-vc-header, header#masthead.essentials-child-vc-header {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99999 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100%;
    background: #F8F2FE;
    border-bottom: 1px solid #7900f014;
}

#pix-page-footer,
footer#pix-page-footer {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 5;
}
.nova-cards-meta-filter__body {
    gap: 0 !important;
    font-size: initial !important;
}
.nova-filter-input, .nova-filter-select, .nova-filter-textarea , .nova-cards-meta-filter--nice{
    padding: 0 !important;
    border-radius: 0 !important;
    border: none !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 120% !important;
    letter-spacing: -1% !important;
    color: #727272 !important;
    outline: none !important;
}
.nova-cards-meta-filter--nice {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    position: relative !important;
    justify-content: center !important;
    min-width: auto !important;
    align-items: start !important;
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    outline: none !important;
    box-shadow: none !important;
}
.nova-cards-meta-filter--nice .nova-cards-meta-filter__control {
    flex: initial !important;
    max-height: 18px;
}
.nova-cards-meta-filter__body {
    flex: initial !important;
	max-height: 18px;

}
.nova-cards-meta-filter--nice .nice-select .current {
    padding: 0 !important;
    border-radius: 0 !important;
    border: none !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 120% !important;
    letter-spacing: -1% !important;
    color: #727272 !important;
    outline: none !important;
	max-height: 18px;
	display: flex;
}
.nova-cards-meta-filter--nice .nice-select.nova-has-value .current{
    color: #7900F0 !important;
}
header .nova-cards-meta-filter--nice .nice-select .current {
    font-weight: 500 !important;
}
/* Anti-debordement HORIZONTAL uniquement, SANS creer de conteneur de scroll.
   Historique des deux bugs corriges ici :
   1) `overflow: hidden` sur <body> rognait le header (position: fixed) et le
      footer Pixfort sur les pages detail article/pays/pub -> disparition.
   2) `overflow-x: hidden` sur <body> deplace le scroll sur <html> :
      `window.scrollY`/`document.documentElement.scrollTop` ne bougent plus,
      le calcul `shift` de vc-sticky.js reste a 0 -> nova-vc-sticky-row
      inactif.
   `overflow-x: clip` coupe le debordement horizontal sans creer de scroll
   container : header/footer restent visibles ET le sticky VC fonctionne. */
body.abroadb-nova-context {
    /* Neutralise toute regle `body { overflow: hidden }` residuelle (ancienne
       version du fichier restee en cache navigateur/CDN, ou autre plugin) qui
       rognait le header `position: fixed` et cassait le scroll du sticky VC.
       `overflow-y: visible` est indispensable : sans lui, `overflow-x: clip`
       force le navigateur a recalculer overflow-y et un `hidden` herite rend
       le body scroll container -> window.scrollY reste a 0 -> sticky inactif.

       Le `!important` est necessaire car l'ancienne regle fautive
       `body { overflow: hidden; }` a une specificite egale/sup. */
    overflow-x: clip !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
}
/* Repli pour navigateurs sans `clip` (Safari < 16) : on ne coupe rien
   plutot que de casser le sticky ou le header fixed. */
@supports not (overflow: clip) {
    body.abroadb-nova-context {
        overflow-x: visible !important;
    }
}

/* Header et footer du theme B (Pixfort) : toujours visibles et au-dessus,
   meme si un parent cree un contexte de clipping. Aligne sur le pattern de
   section-backgrounds.css (#masthead fixed z-index 99999, footer visible). */
body.abroadb-nova-context #masthead,
body.abroadb-nova-context header#masthead,
body.abroadb-nova-context header.pix-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    visibility: visible !important;
    opacity: 1 !important;
}
body.abroadb-nova-context footer#pix-page-footer,
body.abroadb-nova-context .site-footer2,
body.abroadb-nova-context #pix-page-footer {
    position: relative;
    z-index: 5;
    visibility: visible !important;
    opacity: 1 !important;
}
.vc_editor .vc_element.vc_container-block div#article-content-right {
    max-width: 100% !important;
}
header .nova-cards-meta-filter--nice .nice-select {
    padding: 0 !important;
}
header .nova-cards-meta-filter--nice .nice-select .current {
    font-size: 13px !important;
    overflow: hidden;
}
.nova-filter-input:focus, .nova-filter-select:focus, .nova-filter-textarea:focus {
    box-shadow: none !important;
}
input::placeholder, textarea::placeholder {
    color: #727272 !important;
}
div#footer-bottom-bottom .vc_column-inner {
    padding: 0 !important;
}
div#footer-bottom-2 .nova-icon-menu-list>li {
    align-items: center;
    display: flex;
}
div#footer-bottom-bottom > div {
    width: 100% !important;
}
div#footer-bottom-bottom {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
div#footer-bottom-3 .nova-icon-menu-text-wrap {
    justify-content: space-between;
}
footer .nova-icon-menu-header-title-text {
	font-family: "Poppins", sans-serif !important;
	font-weight: 500 !important;
	font-size: 16px !important;
	line-height: 114.99999999999999% !important;
	letter-spacing: -1% !important;
    color: #2D0059 !important;
	margin-bottom: 20px !important;
	display: block !important;
}
.nova-filter-input, .nova-filter-select, .nova-filter-textarea {
    padding: 0 !important;
    border-radius: 0 !important;
    border: none !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 120% !important;
    letter-spacing: -1% !important;
    color: #727272 !important;
    outline: none !important;
    background: transparent !important;
}
.nova-cards-meta-filter__control {
    display: flex;
}
.home:not(.nova-is-scrolled) .essentials-child-vc-header, .home:not(.nova-is-scrolled) header#masthead.essentials-child-vc-header {
    border-bottom: 1px solid #f3ebe44d;
    background: transparent;
}
.essentials-child-vc-header-spacer {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none;
	width: 100%;
}
.nova-filter-field {
    justify-content: center !important;
}
div#top-bloc-home-child-parent .nova-cards-meta-filter--nice .nice-select:not([data-nova-arrow="1"])::after, .nova-cards-meta-sort .nice-select::after {
    display: none !important;
}
.nova-cards-meta-filter--nice .nice-select .list {
    border: none !important;
    margin: 0;
}
.nova-cards-meta-filter--nice .nice-select .option {
    font-size: 13px;
    padding: 5px 7px;
    min-height: 33px;
    line-height: 1;
    letter-spacing: -3%;
}
/* Nova Filters / Cards meta : scrollbar sur le dropdown NiceSelect2 */
.nova-cards-meta-filter--nice .nice-select .nice-select-dropdown, .nova-cards-meta-sort .nice-select .nice-select-dropdown, .nova-filters-form .nice-select .nice-select-dropdown, .nova-cards-filters .nice-select .nice-select-dropdown, .nova-filter-field .nice-select .nice-select-dropdown {
    max-height: min(280px, 55vh) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    background-color: #fff !important;
    scrollbar-width: thin;
    scrollbar-color: #c4b5e0 transparent;
    max-width: min(300px, calc(100vw - 16px)) !important;
    width: 100% !important;
    min-width: 205px !important;
}

.nova-cards-meta-filter--nice .nice-select .nice-select-dropdown::-webkit-scrollbar,
.nova-cards-meta-sort .nice-select .nice-select-dropdown::-webkit-scrollbar,
.nova-filters-form .nice-select .nice-select-dropdown::-webkit-scrollbar,
.nova-cards-filters .nice-select .nice-select-dropdown::-webkit-scrollbar,
.nova-filter-field .nice-select .nice-select-dropdown::-webkit-scrollbar {
	width: 6px;
}

.nova-cards-meta-filter--nice .nice-select .nice-select-dropdown::-webkit-scrollbar-thumb,
.nova-cards-meta-sort .nice-select .nice-select-dropdown::-webkit-scrollbar-thumb,
.nova-filters-form .nice-select .nice-select-dropdown::-webkit-scrollbar-thumb,
.nova-cards-filters .nice-select .nice-select-dropdown::-webkit-scrollbar-thumb,
.nova-filter-field .nice-select .nice-select-dropdown::-webkit-scrollbar-thumb {
	background: #c4b5e0;
	border-radius: 999px;
}

.nova-cards-meta-filter--nice .nice-select .nice-select-dropdown > .list,
.nova-cards-meta-sort .nice-select .nice-select-dropdown > .list,
.nova-filters-form .nice-select .nice-select-dropdown > .list,
.nova-cards-filters .nice-select .nice-select-dropdown > .list,
.nova-filter-field .nice-select .nice-select-dropdown > .list {
	max-height: none !important;
	overflow: visible !important;
}

/* Fallback jquery-nice-select (sans .nice-select-dropdown) */
.nova-cards-meta-filter--nice .nice-select > .list,
.nova-cards-meta-sort .nice-select > .list,
.nova-filters-form .nice-select > .list,
.nova-cards-filters .nice-select > .list,
.nova-filter-field .nice-select > .list {
	max-height: min(280px, 55vh) !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-color: #c4b5e0 transparent;
}

.admin-bar .essentials-child-vc-header,
.admin-bar header#masthead.essentials-child-vc-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	.admin-bar .essentials-child-vc-header,
	.admin-bar header#masthead.essentials-child-vc-header {
		top: 46px;
	}
}

/* Essentials masque [data-area=header] < 1199px — on force l’affichage VC.
   Aligné sur le « Breakpoint desktop » du widget Nova Mega Menu (1199px) :
   au-delà le header desktop reste affiché, en deçà le menu mobile prend le relais. */
@media (max-width: 1199px) {
	[data-area="topbar"],
	[data-area="header"],
	[data-area="stack"],
	.essentials-child-vc-header,
	.essentials-child-vc-header[data-area="header"],
	header.pixfort-header-area,
	.pixfort-header-area {
		display: block !important;
	}

}

/* ==========================================================================
   Topbar
   ========================================================================== */
#topbar-div {
	position: static !important;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	width: 100% !important;
	max-width: calc(1280px + 30px) !important;
	margin: 0 auto;
	padding: 0 15px !important;
	background: transparent !important;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .heading-font, .secondary-font {
    font-weight: 900 !important;
}
div#top-bloc-home-child .wpb_wrapper {
    display: flex;
    flex-direction: column;
    gap: 44px;
}
form#filtre-missions-js {
    background-color: #fff;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    gap: 20px;
    margin-left: auto;
    margin-right: auto;
    padding: 12px 12px 12px 4px;
    margin: 0px 0px 0px 0px;
    border-style: none;
    border-radius: 24px;
    display: flex;
    border: 1px solid #F3EBE4;
    box-shadow: 0px 6px 15px 0px #64646414;
}
header form#filtre-missions-js {
    max-width: 704px;
    width: calc(100% - 30px);
    margin-bottom: 22px;
    max-height: 45px;
    border-radius: 14px;
    padding: 8px 8px 8px 4px;
}

.home #header-filter{
	display: none !important;
}
header .nova-cards-meta-filter__title {
    display: none;
}
/* Titre renseigné (stacked) : visible même dans le header. */
header .nova-cards-meta-filter--stacked > .nova-cards-meta-filter__body > .nova-cards-meta-filter__title,
header .nova-cards-meta-filter--stacked .nova-cards-meta-filter__title {
    display: block;
}
.nova-cards-meta-filter {
    gap: 4px !important;
}
.nova-breadcrumbs__item {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}
.nova-cards-meta-filter {
    padding-left: 20px !important;
    border-left: 1px solid #7900F026 !important;
}
.nova-filter-field:first-child .nova-cards-meta-filter {
    border-left: none !important;
}
.nova-cards-meta-filter--nice .nice-select {
    max-height: 18px;
}
.nova-cards-meta-filter__title {
    font-weight: 500 !important;
    font-size: 13px !important;
    line-height: 100% !important;
    letter-spacing: -3% !important;
    color: #2D0059 !important;
    text-transform: initial !important;
}
.nova-filters-submit {
    padding: 17px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    border-radius: 16px !important;
    background: #7900F0 !important;
}
header .nova-filters-submit {
    padding: 7px !important;
    min-width: 32.51px !important;
    min-height: 32.51px !important;
    border-radius: 8px !important;
}
header span.nova-filters-submit-icon {
    width: 13px;
}
body:not(.home) #content {
    padding-top: 152px;
}
div#article-content-left {
    max-width: 413px;
    width: 100%;
    /* La colonne sticky garde sa largeur ; on interdit tout etirement/depassement. */
    flex: 0 0 auto;
}
div#article-content-right {
    /* Pas de `max-width: calc(100% - 413px - 64px)` : ce pave est fige et ne
       tient pas compte de la largeur REELLE de la colonne gauche (que le JS du
       sticky fixe en px via `flex-shrink: 0`). Sur les largeurs ou 413 + calc
       depassent le conteneur, la colonne de droite debordait -> chevauchement.
       On laisse donc la colonne droite prendre tout l'espace RESTANT. */
    width: auto;
    max-width: none;
    flex: 1 1 0;
    min-width: 0;
}
.nova-checklist__item {
    display: flex;
}
/* Row 2 colonnes (sommaire sticky + contenu).
   `flex-direction: row` est OBLIGATOIRE : la rangee porte AUSSI la classe
   `.article-content` (utilisee par le theme pour les CARTES d'article, cf.
   style.css ~3890 : `display:flex; flex-direction:column; position:absolute;
   bottom:0; overflow:hidden; background:#F7F7F7`). Cette class regle
   s'applique alors a notre rangee et EMPILE les deux colonnes verticalement :
   chacune a left:16px, la colonne sticky (translate3d) passe PAR-DESSUS la
   colonne de contenu -> chevauchement au scroll (mesure navigateur : left.x =
   right.x = 16px, overlapBoth = true).
   On neutralise donc explicitement ces proprietes (direction, position
   absolue, overflow, fond, hauteur collee en bas) et on force la mise en page
   en ligne.
   IMPORTANT : on garde le selecteur `div#article-content` (JAMAIS qualifie par
   la classe) pour que les media queries ci-dessous (< 1200px / < 992px),
   ecrites plus bas dans le fichier avec la MEME specificite, puissent
   continuer a imposer `flex-direction: column` sur mobile/tablette. Un
   selecteur plus specifique (ex: `div#article-content.article-content`) les
   ecraserait et casserait le responsive. */
div#article-content {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    /* `gap` plutot que `space-between` seul : borne l'espace entre les deux
       colonnes et evite que la colonne de droite vienne sous la sticky. */
    column-gap: 64px !important;
    align-items: flex-start !important;
    /* Neutralisation de la regle `.article-content` (cartes) qui collait la
       rangee en `position:absolute; bottom:0; overflow:hidden`. */
    position: relative !important;
    bottom: auto !important;
    overflow: visible !important;
    background: transparent !important;
}
/* La colonne sticky du plugin Nova VC (translate3d) ne doit JAMAIS passer
   au-dessus de la colonne de contenu : on la contraint dans son propre
   empilement et on garantit qu'elle ne deborde pas horizontalement. */
div#article-content .nova-vc-sticky-col,
div#article-content .wpb_column {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}
/* FIX chevauchement sticky (article / detail pays) : le contenu INTERNE de la
   colonne sticky (vc_column-inner > wpb_wrapper et tout ce qu'il contient) doit
   rester borne a la largeur de la colonne. Sans ca, un bloc interne plus large
   que 413px (image, carte, shortcode) debordait horizontalement par-dessus la
   colonne de droite -> chevauchement visuel au scroll. On ne touche NI au JS
   sticky NI au HTML : purement defensif, scope a `#article-content`. */
div#article-content .nova-vc-sticky-col .vc_column-inner,
div#article-content .nova-vc-sticky-col .wpb_wrapper {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}
div#article-content .nova-vc-sticky-col .wpb_wrapper > *,
div#article-content .nova-vc-sticky-col .vc_column-inner img,
div#article-content .nova-vc-sticky-col .vc_column-inner .vc_row,
div#article-content .nova-vc-sticky-col .vc_column-inner .vc_column_container {
    max-width: 100% !important;
    box-sizing: border-box;
}
/* Un enfant flex (ex: sommaire checklist) ne doit pas forcer la colonne a
   s'elargir : `min-width: 0` autorise le retrecissement sous la taille du
   contenu (defaut flex = min-content). */
div#article-content .nova-vc-sticky-col .vc_column-inner,
div#article-content .nova-vc-sticky-col .vc_column-inner > * {
    min-width: 0;
}
.nova-sommaire__item {
    display: flex !important;
}
.nova-sommaire__item .nova-sommaire__link {
	width: 100%;
	cursor: pointer;
}
.article-acf-section {
    margin-top: 48px;
}
.article-acf-section:first-child {
    margin-top: 0 !important;
}
div#article-content-right h2, div#article-content-right h2 strong {
    margin-top: 48px;
    margin-bottom: 32px !important;
    font-weight: 500 !important;
    font-size: 26px !important;
    line-height: 115% !important;
    letter-spacing: -3% !important;
    font-family: "Poppins", sans-serif !important;
}
div#article-content-right h2 .article-h2-num {
    font: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    color: inherit !important;
    -webkit-text-fill-color: initial !important;
}
div#article-content-right blockquote {
    background: #DD472B0D;
    color: #D23D22;
    border-left: 3px solid #D23D22;
    border-radius: 0 16px 16px 0;
    padding: 32px 32px 32px 29px;
    margin: 0;
}
.nova-vc-template.nova-template-widget {
    display: flex;
}
div#article-content ul.nova-checklist__list {
    margin-top: 20px;
}
div#article-content-right .wpb_text_column.wpb_content_element p, div#article-content-right .wpb_text_column.wpb_content_element li {
    font-weight: 400;
    font-size: 17px;
    line-height: 125%;
    letter-spacing: -1%;
    color: #727272;
}
#article-content-right .wpb_text_column.wpb_content_element ul, .body-classic ul {
	list-style: none !important;
	padding-left: 9px;
}
.article-acf-section img {
    object-fit: cover;
    object-position: center center;
    border-radius: 16px;
}
a.nova-sommaire__link strong {
    font-weight: 500 !important;
}
div#article-content-right strong {
    color: #2d0059 !important;
    font-family: "Poppins", sans-serif !important;
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 110% !important;
    letter-spacing: -3% !important;
    display: inline-block !important;
}
div#article-content-right h2 strong {
    display: inline !important;
    margin: 0 !important;
}
.page_classique .euroweb-section-bg-layer {
    display: none !important;
}
#article-content-right .wpb_text_column.wpb_content_element ul li, .body-classic ul li {
    position: relative;
    padding-left: 15px;
}
#article-content-right .wpb_text_column.wpb_content_element ul li::before, .body-classic ul li::before {
    content: '•';
    position: absolute;
    left: 0;
    font-size: 16px;
    line-height: 1.3;
    color: #727272;
    display: flex;
    top: 0px;
}
p + ul {
    margin-top: -16px;
}

p:empty {
    height: 17px;
    display: block;
}
ul:has(span[style*="color: #7900f0"]) {
    margin-bottom: 0 !important;
}
ul:has(span[style*="color: #7900f0"]) li::before {
    color: #7900f0 !important;
}
div#article-content .nova-vc-template__inner {
    width: 100% !important;
}
div#article-content-right > .vc_column-inner > .wpb_wrapper > *:last-child {
    margin-bottom: 0 !important;
}
div#article-content-right > .vc_column-inner > .wpb_wrapper > *:first-child {
    margin-top: 0 !important;
}
div#article-content-right .nova-vc-template.nova-template-widget {
    margin-top: 48px !important;
	margin-bottom: 48px !important;
}
.nova-callout--recap small {
    font-weight: 400;
    font-size: 15px;
    line-height: 120%;
    letter-spacing: -1%;
}
div#article-content-right .nova-image-widget {
    margin-top: 48px !important;
}
aside.nova-callout.nova-vc-callout.nova-callout--conseil {
    margin-top: 32px !important;
}
aside.nova-callout.nova-vc-callout.nova-callout--recap {
    margin-top: 48px !important;
}
div#article-content-right .wpb_text_column.wpb_content_element {
    margin-bottom: 0 !important;
}
div#article-content-right h3, div#article-content-right h3 strong {
    font-family: "Poppins", sans-serif !important;
    margin-top: 32px;
    margin-bottom: 12px;
    font-weight: 500 !important;
    font-size: 20px !important;
    line-height: 110% !important;
    letter-spacing: -3% !important;
}
div#article-content-right h4, div#article-content-right h4 strong {
    font-family: "Poppins", sans-serif !important;
    margin-top: 16px;
    margin-bottom: 12px;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 110% !important;
    letter-spacing: -3% !important;
}
div#article-content-right h5, div#article-content-right h5 strong {
    font-family: "Poppins", sans-serif !important;
    margin-top: 16px;
    margin-bottom: 12px;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 110% !important;
    letter-spacing: -3% !important;
}

div#article-content-right h2 strong, div#article-content-right h3 strong, div#article-content-right h4 strong, div#article-content-right h5 strong {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
div#article-content-right .nova-table {
    margin-top: 32px;
}
table.nova-table__table {
    margin: 0;
}
div#article-content .wpb_text_column.wpb_content_element .wpb_wrapper > *:not(h2,h3):last-child {
    margin-bottom: 0 !important;
}

/* ACF sections → Nova widgets (template-parts/article-acf-sections.php) */
.article-acf-wysiwyg--gradient {
	border: 2px solid transparent;
	border-radius: 16px;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(59.78deg, #7E4BD2 11.51%, #DD472B 119.57%) border-box;
	padding: 24px;
	margin: 48px 0 0;
}
.article-acf-wysiwyg--gradient .wpb_text_column {
	margin: 0 !important;
}
.article-acf-images--slider {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	margin-top: 48px;
}
.article-acf-images--slider > .nova-image-widget {
	flex: 0 0 100%;
	scroll-snap-align: start;
	margin-top: 0 !important;
}
.article-acf-video {
	margin-top: 48px;
}
.article-acf-video__frame {
	position: relative;
	aspect-ratio: 16 / 9;
	border-radius: 16px;
	overflow: hidden;
	background: #0a0a0a;
}
.article-acf-video__frame iframe,
.article-acf-video__frame video,
.article-acf-video__el {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
	object-fit: cover;
}
.article-acf-cta {
	margin-top: 32px;
}
.article-acf-cta .vc_btn3 {
	border-radius: 16px !important;
	padding: 12px 28px !important;
}

div#content {
    background: transparent !important;
}
body.abroadb-nova-context .nice-select:after {
    display: none !important;
    opacity: 0 !important;
}
div#header-filter {
    display: flex;
    z-index: 1;
}
header .nova-cards-meta-filter--nice {
    min-height: 32px !important;
    max-height: 32px !important;
}
body.abroadb-nova-context .nice-select .option.selected {
    font-weight: 400 !important;
}
.nova-cards-meta-filter--nice .nice-select .option:hover, .nova-cards-meta-filter--nice .nice-select .option.focus, .nova-cards-meta-filter--nice .nice-select .option.selected.focus {
    background: transparent !important;
    color: #151515 !important;
}
.nova-cards-meta-filter--nice .nice-select .option:hover, .nova-cards-meta-filter--nice .nice-select .option.focus, .nova-cards-meta-filter--nice .nice-select .option.selected.focus {
    color: #7900f0 !important;
}
[class^="bg-"], [class*=" bg-"], [class^="dark:bg-"]:is(.pix-dark *), [class*=" dark:bg-"]:is(.pix-dark *) {
    background-color: transparent !important;
}
div#content > .container > div {
    display: flex;
}
.nova-title-widget .nova-title-text.has-nova-size, .nova-title-widget .nova-title-text.has-nova-size :where(h1, h2, h3, h4, h5, h6, p, span, li, a, div, label):not(.nova-styled-word), .elementor-widget-nova-title .nova-title-text.has-nova-size, .elementor-widget-nova-title .nova-title-text.has-nova-size :where(h1, h2, h3, h4, h5, h6, p, span, li, a, div, label):not(.nova-styled-word) {
    line-height: 100% !important;
}
.pourqoui-home-btns-no-results {
    margin-left: auto !important;
    margin-right: auto !important;
}
.no-results .articles-cards {
    background: transparent !important;
}
h2 span:not(.nova-icon-menu-header-title-text,.nova-icon-menu-header-title-inner), body:not(.home) h1 span
, .nova-title-text-1 p span
{
    -webkit-text-fill-color: transparent;
    color: transparent;
    background: linear-gradient(90deg, rgb(126, 75, 210) 0%, rgb(221, 71, 43) 100%) text;
}
.articles-cards-pub {
	display: flex;
	flex-direction: column;
	position: relative;
	background: linear-gradient(59.78deg, #7E4BD2 11.51%, #DD472B 119.57%);
}

.has-pub-curve {
	position: relative;
	background: transparent !important;
	overflow: visible;
}

.has-pub-curve::before {
	display: none !important;
}

.has-pub-curve > .pix-divider.pix-top-divider {
	opacity: 0 !important;
	visibility: hidden;
	pointer-events: none;
}

.has-pub-curve > .articles-cards-pub-curve {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 0;
	pointer-events: none;
	overflow: visible;
}

.has-pub-curve > *:not(.articles-cards-pub-curve) {
	position: relative;
	z-index: 1;
}
.articles-cards-pub > div.wpb_column  {
    max-width: calc(1280px + 30px);
    padding: 0 15px;
    margin-left: auto !important;
    margin-right: auto !important;
}
.nova-filters-submit:hover {
    background: #2D0059 !important;
}
div#top-bloc-home-child-parent > div {
    max-width: calc(846px + 30px) !important;
    width: 100%;
    margin: auto;
    padding: 0 15px;
}
#topbar-div > div {
	width: auto !important;
}
.arrow-white-hover a {
    padding: 17px  7px !important;
}
.padding-left-right a {
    padding-left: 17px !important;
    padding-right: 17px !important;
}
#topbar-div .vc_row {
	margin: 0 !important;
}
.topbar-div-right-right .wpb_wrapper {
    gap: 4px !important;
}
#topbar-div .vc_column-inner {
	padding: 0 !important;
}

#topbar-div > #topbar-div-right {
    width: 100% !important;
    max-width: 987px !important;
}

#topbar-div-right .wpb_wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
}

#topbar-div-right .wpb_wrapper > div,
#topbar-div-right .wpb_wrapper > div > div,
#topbar-div-right .wpb_wrapper > div > div > div {
	margin: 0 !important;
}

.topbar-div-right-left {
	width: 100% !important;
	max-width: 696px !important;
}

/* Logo / icônes menu blancs sur home */
.home:not(.nova-is-scrolled, .nova-breadcrumb-open) #logo-left-topbar,
.home:not(.nova-is-scrolled, .nova-breadcrumb-open) .menu-header-primaire .nova-mega-menu-icon-wrapper {
	filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(93deg) brightness(115%) contrast(102%);
}


/* ==========================================================================
   Mega menu (header)
   ========================================================================== */
   .home .euroweb-section-bg-layer {
    display: none !important;
}
   .nova-vc-mega-menu-widget .nova-mega-menu-container > ul > li > a {
    color: #151515 !important;
    letter-spacing: -2%;
}
.nova-vc-mega-menu-widget .nova-mega-menu-container > ul > li.current-menu-item > a {
    color: #7900f0 !important;
}
.nova-card-item:not(.nova-page-hidden):not(.nova-filter-hidden) {
    gap: 24px !important;
    display: flex !important;
}
div#nova-cards-guides .nova-cards-meta-filter__body {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    box-shadow: 0px 6px 15px 0px #64646414;
    border: 1px solid #7900F014;
    padding: 12px 12px 12px 24px;
    border-radius: 24px;
    max-height: initial !important;
    gap: 4px !important;
    max-width: 728px !important;
    width: 100% !important;
    min-height: 78px;
    justify-content: center;
    position: relative;
    overflow: visible;
}
#nova-cards-guides .nova-filter-input {
	color: #7900F0 !important;
}
#nova-cards-guides .nova-filter-input::placeholder {
	color: #727272 !important;
}
#nova-cards-guides .nova-cards-meta-filter__control {
    flex: 1 1 auto !important;
    width: 100% !important;
    display: block !important;
    position: static !important;
    overflow: visible !important;
    max-height: 18px !important;
}
#nova-cards-guides span.nova-filter-live__icon {
    display: none !important;
}
#nova-cards-guides .nova-cards-meta-filter {
    padding-left: 0 !important;
    border-left: none !important;
    flex: 1 1 628px !important;
    max-width: 628px !important;
    margin: auto !important;
    overflow: visible !important;
}
#nova-cards-guides  .nova-cards-meta-filter.nova-cards-meta-filter--text.nova-cards-meta-filter--stacked,
#nova-cards-guides  .nova-cards-meta-filter.nova-cards-meta-filter--keyup-live.nova-cards-meta-filter--stacked {
    max-width: 628px !important;
    width: 100% !important;
    margin: auto;
}
#nova-cards-guides .nova-filter-live__input-wrap {
    width: 100%;
}
#nova-cards-guides .nova-filter-live__dropdown,
#nova-cards-guides .nova-cards-meta-filter__body .nova-filter-live__dropdown {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 12px) !important;
    z-index: 50 !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    max-height: 242px !important;
    margin: 0 !important;
    padding: 12px !important;
    background: #fff !important;
    border: 1px solid #F3EBE4 !important;
    border-radius: 24px !important;
    box-shadow: 0px 6px 15px 0px #64646414 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}
#nova-cards-guides .nova-filter-live__option-inner--guide {
    min-width: 0 !important;
    width: 100% !important;
    gap: 20px;
    padding: 0;
}
.nova-filter-live__option-thumb img, .nova-filter-live-item__thumb img {
    border-radius: 12px !important;
}
.nova-filter-live__option-thumb, .nova-filter-live-item__thumb {
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    border-radius: 12px !important;
}
.nova-filter-live__option {
    padding: 0;
}
#nova-cards-guides .nova-filter-live__option-inner--guide .btn {
    margin: 0 !important;
}
.np-popup__header {
    border: none !important;
    padding: 0 !important;
}
.np-popup__close--image {
    padding: 0 !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    top: 24px !important;
    right: 24px !important;
    transform: initial !important;
}
.np-popup__body {
    padding: 36px 24px 24px 24px !important;
}
.nsf-form-global-title--rich p {
    font-weight: 500;
    font-size: 26px;
    line-height: 114.99999999999999%;
    letter-spacing: -3%;
    text-align: center;
    color: #2D0059;
}
.nsf-form-global-title--rich {
    margin: 0;
}
.nsf-form-shell.form-guide .nsf-field > label {
    display: none;
}
.nsf-field input, .nsf-field textarea, .nsf-field select {
    outline: none !important;
    border: 1px solid #7900F014;
    border-radius: 16px;
    min-height: 54px;
    padding: 11px 24px;
    font-weight: 400;
    font-size: 15px;
    line-height: 120%;
    letter-spacing: -1%;
    color: #000000;
}
.nsf-field input:focus, .nsf-field textarea:focus, .nsf-field select:focus {
    color: #000000;
}
.nsf-field input::placeholder, .nsf-field textarea::placeholder {
    color: #000000;
}
.nsf-form-shell.form-guide .nsf-step-title--rich {
    margin: 0;
}
.nsf-form.nsf-js-ready[data-nsf-nav="single"] .nsf-submit-wrap, .nsf-form.nsf-js-ready[data-nsf-nav="end"] .nsf-submit-wrap, .nsf-form.nsf-js-ready[data-nsf-nav="single"] .nsf-nav-mount .nsf-submit-wrap, .nsf-form.nsf-js-ready[data-nsf-nav="end"] .nsf-nav-mount .nsf-submit-wrap, .nsf-form:not(.nsf-js-ready) .nsf-submit-wrap {
    width: 100%;
    margin: 0;
}
.nsf-submit {
    width: 100% !important;
    border-radius: 16px !important;
    padding: 18px !important;
    gap: 10px !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    line-height: 120% !important;
    letter-spacing: -1% !important;
    border: none !important;
}
.nsf-success-close-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: #7900F0;
    text-decoration: none;
    box-shadow: none;
    transition: background-color .15s ease,color .15s ease,border-color .15s ease;
    border: 1px solid #2D005926;
    min-width: 248px;
    gap: 10px;
    padding: 17px 18px;
    position: relative;
    margin-bottom: 0 !important;
    border-radius: 16px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 120% !important;
    background-image: none !important;
}
.nsf-submit-busy__text {
    margin: 0 !important    ;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 114.99999999999999% !important;
    letter-spacing: -1% !important;
    color: #2D0059 !important;
}
.nsf-submit-busy__spinner {
    border: 3px solid #7900f033 !important;
    border-top-color: #7900F0 !important;
}
.nsf-submit-busy__backdrop {
    background: transparent !important;
    backdrop-filter: blur(0px) !important;
    -webkit-backdrop-filter: blur(0px) !important;
}
.header-detail-pays-image-title .vc_column-inner {
    padding: 0;
}
.header-detail-pays-image-title-2 {
    max-width: 42% !important;
    width: 100% !important;
}
.header-detail-pays-image-title-1 {
    max-width: 100% !important;
    width: 100% !important;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nova-stats {
    margin: auto !important;
}
.header-detail-pays-image-title-1 .nova-stats .nova-stats__list {
    display: flex !important;
    width: 100% !important;
    justify-content: space-between !important;
}
.nova-stats .nova-stats__item {
    width: auto !important;
}
.header-detail-pays-image-title-1-chiifres {
    margin: inherit !important;
    width: 100% !important;
}
.header-detail-pays-image-title-1 .btn {
    width: 100% !important;
    max-width: 373px;
}
.header-detail-pays-image-title-1 > .vc_column-inner >  .wpb_wrapper {
    display: flex;
    flex-direction: column;
    gap: 24px;
    justify-content: start;
    align-items: start;
}
.header-detail-pays-image-title-1 > div {
    max-width: 675px;
    width: 100%;
    margin: auto;
    padding: 0 15px !important;
}

.nova-sommaire {
    background: #fff !important;
}

.header-detail-pays-image-title {
    box-shadow: 0px 6px 15px 0px #64646414;
    background: #fff;
    border: 1px solid #F3EBE4;
    border-radius: 16px;
    display: flex;
    margin-top: 64px !important;
    min-height: 496px !important;
    margin-left: initial !important;
    margin-right: initial !important;
}
.nsf-success-close-btn:hover {
    color: #2D0059 !important;
	background: #fff !important;
    border: 1px solid #2D005926 !important;
}
.nsf-form-shell.form-guide:has(.nsf-form-replaced-inner) .nsf-form-global-title {
    display: none;
}
form.nsf-form.nsf-js-ready.nsf-form-ready.nsf-form-replaced-inner > fieldset.nsf-step p {
    font-weight: 500;
    line-height: 115%;
    letter-spacing: -1%;
    color: #727272;
}
form.nsf-form.nsf-js-ready.nsf-form-ready.nsf-form-replaced-inner > fieldset.nsf-step p span strong {
    font-weight: 700 !important;
}
form.nsf-form.nsf-js-ready.nsf-form-ready.nsf-form-replaced-inner > fieldset.nsf-step > p > strong {
    font-weight: 500;
    font-size: 26px;
    line-height: 115%;
    letter-spacing: -3%;
    text-align: center;
    color: #2D0059;
}
.np-popup__overlay {
    backdrop-filter: blur(12px);
}
fieldset.nsf-step {
    width: 100% !important;
}
span.nsf-submit-icon, span.nsf-submit-icon img {
    height: 18px !important;
    width: 17px !important;
}
.nsf-form-shell.form-guide .nsf-fields-grid {
    margin-top: 24px;
}
.nsf-nav-mount {
    margin: 8px 0 0 0;
}
form.nsf-form.nsf-js-ready {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 !important;
}
.np-popup__body .wpb_content_element {
    margin: 0 !important;
}
.nsf-step-title.nsf-step-title--rich p {
    font-weight: 500;
    font-size: 16px;
    line-height: 115%;
    letter-spacing: -1%;
}
.nsf-step-title.nsf-step-title--rich strong {
    font-weight: 700 !important;
}
.nsf-form-shell {
    gap: 24px;
    max-width: 582px;
}
.np-popup__close--image img {
    width: 100% !important;
    height: 100% !important;
}
#nova-cards-guides .nova-filter-live__option-inner--guide .btn a {
    border-radius: 16px !important;
    padding: 18px !important;
    gap: 10px !important;
    border: none !important;
}
#nova-cards-guides .nova-filter-live__option-desc {
    color: #2D0059;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 400;
    font-size: 15px;
    line-height: 120%;
    letter-spacing: -1%;
}
#nova-cards-guides .nova-cards-filters {
    margin-bottom: 118px;
    overflow: visible;
}
#nova-cards-guides .nova-card-item:not(.nova-page-hidden):not(.nova-filter-hidden) {
    gap: 0 !important;
}

#nova-cards-guides .nova-cards-meta-filter-input {
    max-width: 100% !important;
    width: 100% !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    outline: none !important;
    color: #727272;
    font-weight: 400;
    font-size: 15px;
    line-height: 120%;
    letter-spacing: -1%;
}

   .home:not(.nova-is-scrolled, .nova-breadcrumb-open) .nova-vc-mega-menu-widget .nova-mega-menu-container > ul > li > a {
	color: #fff !important;
}
div#articles-home {
    z-index: 1;
}
div#top-bloc-home {
    z-index: 2;
}
.nova-card-button {
    margin-top: 0;
}
span.nova-faq-question-text p {
    margin: 0 !important;
}
.no-results .show-in-results, .no-results .nova-cards-active-filters {
	display: none !important;
}
.nova-card-1 {
    max-width: 522px;
    width: 100%;
}
.articles-cards {
    background: linear-gradient(180deg, rgb(255 255 255 / 0%) 0%, rgba(238, 224, 252, 0.8) 33.48%, rgba(251, 228, 219, 0.8) 79.52%, rgb(255 255 255 / 0%) 100%);
    display: flex;
    flex-direction: column;
}
.nova-faq-widget[data-nova-faq-instance="nova-faq-47067b4a57"] .nova-faq-item:not(:last-child) {
    margin-bottom: 16px;
}
.articles-cards > div {
    max-width: calc(1280px + 30px);
    padding: 0 15px;
    margin-left: auto !important;
    margin-right: auto !important;
}
.bloc-cta-faq > div {
    max-width: 680px;
}
.menu-header-primaire .nova-mega-menu-icon img {
	width: 8px !important;
	height: 5px !important;
}
.nova-cards-pagination {
    margin: 48px 0 0 !important;
}
.vc_row::before,
.vc_row::after {
	display: none !important;
}
.nova-cards-pagination .btn {
    max-width: 248px !important;
    width: 100%;
}
/* ==========================================================================
   Boutons — styles globaux `.btn` retirés (fournis par le thème B).
   Les styles spécifiques aux composants du module (cards, CTA) sont
   conservés dans leurs fichiers respectifs.
   ========================================================================== */
div#thematique-home {
    /* width: calc(100% - 30px) !important; */
	display: flex;
    flex-direction: column;
	margin-left: auto !important;
    margin-right: auto !important;
}
header .nova-icon-menu-container {
    margin-top: 64px;
}
.body-classic > div > div {
    padding: 0 !important;
}
.nova-icon-menu-list > li > p {
    display: none;
}
div#footer-bottom > div {
    width: 100% !important;
}	
.nova-card-article-stack__video-scrim {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 54.37%, #000000 100%) !important;
}
div#footer-bottom-1 {
	max-width: 284px;
	width: 100%;
}
.nova-card-article-stack__video-body {
    gap: 16px;
    padding: 20px;
}
div#footer-bottom-1 .wpb_wrapper {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}
	div#footer-bottom .vc_column-inner {
		padding: 0 !important;
	}
	div#footer-bottom-3 {
		max-width: 276px;
		width: 100%;
	}
	div#footer-bottom-2 {
		max-width: 568px;
		width: 100%;
	}
body.abroadb-nova-context .nice-select .nice-select-dropdown {
    background-color: #fff !important;
}
div#thematique-home > div {
    max-width: calc(1376px + 0px) !important;
    width: calc(100% - 30px) !important;
    padding: 48px 16px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-top-width: 1px !important;
    border-right-width: 1px !important;
    border-bottom-width: 1px !important;
    border-left-width: 1px !important;
    background-color: #F8F2FE !important;
    border-left-style: solid !important;
    border-right-style: solid !important;
    border-top-style: solid !important;
    border-bottom-style: solid !important;
    border-color: #7900F00D !important;
    border-radius: 16px !important;
}
.thematique-home-child .vc_column-inner {
    max-width: calc(1280px + 30px);
    width: 100%;
}
#nova-mm-1 .sub-menu {
    border: 1px solid #7900f014;
}
div#articles-home-2 > div {
    max-width: calc(1280px + 30px);
    padding: 0 15px;
    margin-left: auto !important;
    margin-right: auto !important;
}
div#articles-home-2 {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.8) 0%, rgba(238, 224, 252, 0.8) 33.48%, rgba(251, 228, 219, 0.8) 79.52%, rgba(255, 255, 255, 0.8) 100%);
    display: flex;
    flex-direction: column;
}
.nova-card-pub__cta-wrap .nova-card-pub__cta:hover, .nova-card-pub__cta-wrap .nova-card-pub__cta:focus-visible {
    background-color: var(--ncp-cta-hover, #b5361f) !important;
    color: #fff !important;
    box-shadow: none !important;
}
.btn-primary {
	border: 1px solid #7900f0 !important;
}
.nova-card-article-stack__media, .nova-card-article-stack__media a, .nova-card-article-stack__media img, .article-similaires .nova-card-pub__panel--media, .article-similaires .nova-card-pub__panel--media a, .article-similaires .nova-card-pub__panel--media img {
    flex: initial !important;
    aspect-ratio: 296 / 220 !important;
    min-height: auto !important;
}
.msh-gradient {
	background: linear-gradient(59.78deg, #7e4bd2 11.51%, #dd472b 119.57%) !important;
}
.nova-vc-icon-menu .nova-icon-menu-text-wrap {
    width: 100%;
}
.pourqoui-home-1 .wpb_wrapper {
    max-width: 580px;
    width: 100%;
    margin-left: auto;
    display: flex;
    flex-direction: column;
    gap: 41.5px;
    margin-right: auto;
}
.otgs-development-site-front-end {
    display: none !important;
}


.pourqoui-home-1 .vc_column-inner {
    display: flex;
    align-items: center;
    justify-content: center;
}
div#nova-cards-pourquoi .nova-cards-grid {
    max-width: 564px;
    width: 100% !important;
}
/* --------------------------------------------------------------------------
   Boutons / liens flèche — animation basée sur bc.css
   Sélecteurs style.css : .arrow-right-back-* a (classe sur le wrapper)
   -------------------------------------------------------------------------- */
.arrow-right-back-purple-hover a,
.arrow-right-back-white-hover a,
.msh-header-2 > div:nth-child(2) a,
.msh-header-2 > div:nth-child(3) a {
	position: relative;
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.btn.arrow-right-back-purple-hover a,
.btn.arrow-right-back-white-hover a {
	padding: 18px 39.5px;
	overflow: hidden;
	width: max-content;
	max-width: max-content;
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Pseudo-flèche — état initial (comme bc.css) */
.arrow-right-back-purple-hover a::after,
.arrow-right-back-white-hover a::after,
.msh-header-2 > div:nth-child(2) a::after,
.msh-header-2 > div:nth-child(3) a::after {
	content: "" !important;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	right: -6px;
	width: 0;
	top: 50%;
	height: 26px;
	overflow: hidden;
	opacity: 0;
	transform: translate(10px, -50%);
	background-size: cover;
	background-repeat: no-repeat;
	pointer-events: none;
	transition:
		width 0.6s ease,
		margin-left 0.6s ease,
		opacity 0.6s ease,
		transform 0.6s ease;
}

/* Header : scale au lieu de translate (bc.css) */
.msh-header-2 > div:nth-child(2) a::after,
.msh-header-2 > div:nth-child(3) a::after {
	right: 12px;
	transform: scale(0.0001);
	transform-origin: center center;
	transition: transform 0.6s ease, opacity 0.6s ease;
}

/* Boutons : flèche plus haute */
.arrow-right-back-purple-hover a::after,
.arrow-right-back-white-hover a::after {
	height: 37px;
	right: 12px;
}

/* Images flèche */
.arrow-right-back-purple-hover a::after {
	background-image: url("/wp-content/uploads/2026/09/arrow-purple-2.svg");

}

.arrow-right-back-white-hover a::after {
	background-image: url("/wp-content/uploads/2026/09/arrow-white-2.svg");

}
.pourqoui-home-btns .wpb_wrapper {
    display: flex;
    flex-direction: row;
    gap: 12px !important;
    justify-content: space-between;
}
.pourqoui-home-btns .btn, .pourqoui-home-btns .btn a {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}d
.pourqoui-home-btns {
    max-width: 580px !important;
    width: 100%;
    display: flex !important;
    margin: auto;
}
.pourqoui-home-btns .vc_column-inner {
    padding: 0 !important;
}

/* Illustration fond : offsets / size via --ncp-panel-bg-* (onglet Pub — Illustration) */
@media screen and (min-width: 992px) {
    div#footer-bottom-4 {
        display: none !important;
    }
	/* .arrow-right-back-purple-hover a:hover,
	.arrow-right-back-white-hover a:hover,
	.msh-header-2 > div:nth-child(2) a:hover,
	.msh-header-2 > div:nth-child(3) a:hover {
		padding-left: 19px !important;
		padding-right: 60px !important;
	} */

	/* .btn.arrow-right-back-purple-hover a:hover,
	.btn.arrow-right-back-white-hover a:hover {
		padding-left: 19px !important;
		padding-right: 60px !important;
	} */

	.arrow-right-back-purple-hover a:hover::after,
	.arrow-right-back-white-hover a:hover::after,
	.msh-header-2 > div:nth-child(2) a:hover::after,
	.msh-header-2 > div:nth-child(3) a:hover::after {
		width: 26px;
		opacity: 1;
		transform: translate(0, -50%);

	}

	.msh-header-2 > div:nth-child(2) a:hover::after,
	.msh-header-2 > div:nth-child(3) a:hover::after {
		transform: scale(1);
		opacity: 1;
	}

	.arrow-right-back-purple-hover a:hover::after,
	.arrow-right-back-white-hover a:hover::after {
		width: 37px;
		right: 12.5px;
		transition: opacity 1s ease, transform 1s ease;
	}
}

@media screen and (max-width: 991px) {
	.arrow-right-back-purple-hover a::after,
	.arrow-right-back-white-hover a::after,
	.msh-header-2 > div:nth-child(2) a::after,
	.arrow-right-back-purple-hover a:hover::after,
	.arrow-right-back-white-hover a:hover::after {
		display: none !important;
	}

	.btn.arrow-right-back-purple-hover a,
	.btn.arrow-right-back-white-hover a,
	.btn.arrow-right-back-purple-hover a:hover,
	.btn.arrow-right-back-white-hover a:hover {
		padding-left: initial !important;
		padding-right: initial !important;
	}
}
main#main article > div {
    display: flex;
    flex-direction: column;
}
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl {
    padding-right: 15px;
    padding-left: 15px;
}
/* --------------------------------------------------------------------------
   Lien flèche violet — .arrow-right-purple (port thème old)
   Markup : <a class="arrow-right-purple"><span class="span-1"></span><span class="span-2">…</span></a>
   -------------------------------------------------------------------------- */
.arrow-right-purple {
	padding: 0 22px 0 0 !important;
	position: relative;
	overflow: hidden;
	border-radius: 0 !important;
	display: inline-flex;
	align-items: center;
	color: #7900f0 !important;
	text-decoration: none;
	line-height: 1.2;
}
div#content.error-404 {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 0 !important;
}
.content-404 .wpb_wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 48px;
    background: radial-gradient(50% 50% at 50% 50%, #ffffff 76.84%, rgb(255 255 255 / 2%) 99.67%) !important;
    max-width: 820px;
    margin: auto;
    padding: 30px;
}

.message-bloc {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    height: 100%;
}
div#content.error-404 {
    position: relative !important;
}
div#content.error-404::before {
    content: "";
    position: absolute;
    left: 50%;
    background-image: url('/wp-content/uploads/2026/09/Vector-1.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: var(--message-bloc-width, 1950px);
    height: var(--message-bloc-height, 340px);
    transition: opacity 0.2s;
    z-index: 9 !important;
    display: flex !important;
    top: calc(50% + -135px);
    transform: translate(-50%, -50%);
    opacity: 0;
}

div#content.error-404.show-before::before {
    opacity: 1;
}
div#content.error-404 > div {
    height: 100%;
    display: flex;
    align-items: center;
    margin: 0 !important;
    max-width: 100% !important;
}
.nova-mega-menu-panel .nova-icon-menu-header-title-text {
    margin-bottom: 0 !important;
}

.error404 .essentials-child-vc-header, .error404 footer#pix-page-footer {
    display: none !important;
}
.arrow-right-purple .span-1 {
	/* Pas de position:relative : les ::before/::after se positionnent sur .arrow-right-purple */
	display: inline;
}
.arrow-right-purple::before, .arrow-right-purple::after {
    display: none !important;
}
.arrow-right-purple .span-1::after,
.arrow-right-purple .span-1::before,
.arrow-right-purple::after,
.arrow-right-purple::before {
	background-image: url("/wp-content/uploads/2026/09/arrow-right-purple.svg");
	content: "";
	background-size: contain;
	background-repeat: no-repeat;
	width: 14px;
	height: 12px;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -6px;
	transition: transform 1s ease, opacity 1s ease;
}

.arrow-right-purple .span-1::before,
.arrow-right-purple::before {
	transform: translateX(-15px);
	opacity: 0;
}

.arrow-right-purple:hover .span-1::after,
.arrow-right-purple:hover::after {
	transform: translateX(14px);
}

.arrow-right-purple:hover .span-1::before,
.arrow-right-purple:hover::before {
	transform: translateX(0);
	opacity: 1;
}

.arrow-right-purple .span-2 {
	position: relative;
	display: inline-block;
	padding-bottom: 4px;
}

.arrow-right-purple .span-2::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1px;
	width: calc(100% + 22px);
	background-color: #7900f0;
	transform: scaleX(1);
	transform-origin: left;
	transition: transform 1s ease;
}

.arrow-right-purple.white .span-2::after {
	height: 1px !important;
	background-color: #fff;
}

.arrow-right-purple.white::after,
.arrow-right-purple.white::before,
.arrow-right-purple.white span::after,
.arrow-right-purple.white span::before {
	filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(23deg) brightness(118%) contrast(118%);
}
p.nova-sommaire__title {
    display: flex;
    margin-bottom: 20px;
}
.arrow-right-purple.arrow-right-purple-without-border .span-2::after {
	display: none !important;
}

.arrow-right-purple .span-2.anim-left::after {
	transform: scaleX(0);
	transform-origin: left;
	animation: essentials-child-expand-left 1s forwards;
}
.nova-vc-template__inner > div {
    display: flex;
}
.arrow-right-purple .span-2.anim-right::after {
	transform: scaleX(0);
	transform-origin: right;
	animation: essentials-child-expand-right 1s forwards;
}

@keyframes essentials-child-expand-left {
	0% {
		transform: scaleX(0);
		transform-origin: left;
	}
	100% {
		transform: scaleX(1);
		transform-origin: left;
	}
}

@keyframes essentials-child-expand-right {
	0% {
		transform: scaleX(0);
		transform-origin: right;
	}
	100% {
		transform: scaleX(1);
		transform-origin: right;
	}
}

div#footer-bottom {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.topbar-div-right-left {
    display: flex;
}
div#mobile-div-menu .nova-mega-menu-panel {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding-top: 7px !important;
    padding-bottom: 20px !important;
}
.nova-mobile-breadcrumb-content .nova-mega-menu-container > ul {
    max-width: 100% !important;
    width: 100% !important;
}
.nova-mobile-breadcrumb-content .nova-mega-menu-container > ul > li > a {
    min-height: 58px;
    width: auto !important;
    max-width: max-content !important;
}
.nova-mobile-breadcrumb-content .nova-mega-menu-container > ul > li {
    width: 100% !important;
    border-bottom: 1px solid #7900F014;
}
.nova-mobile-breadcrumb-content[data-animation-type="expand"]{
    background: #F8F2FE  !important;
}
div#mobile-div-menu  p.nova-icon-menu-header-title {
    display: none !important;
}
div#mobile-div-menu .nova-mega-menu-panel > div {
    display: flex;
}
div#mobile-div-menu span.nova-icon-menu-icon {
    background: #FFFFFF !important;
    width: 48px !important;
    height: 48px !important;
    min-height: 48px;
}
.wpb-content-wrapper > div {
    display: flex;
}
div#mobile-div-menu .nova-vc-icon-menu .nova-icon-menu-icon img {
    height: 24px !important;
}

/* Flèche dropdown du sélecteur de langue (mobile + desktop) : SUPPRIMÉ de ce
   module car fourni par le thème enfant B (style.css + nice-select2-compat). */
.nova-cards-filter-empty--template .pourqoui-home-btns .wpb_wrapper {
    margin-top: 32px !important;
    max-width: 508px !important;
    margin: auto;
    width: 100%;
}
.nova-cards-filter-empty--template > div {
    min-height: 500px !important;
}
.nova-mobile-breadcrumb-template-wrapper>div {
    height: 100% !important;
}
div#topbar-div-right .nova-mobile-breadcrumb-template-wrapper {
    padding: 0 16px 0 16px  !important;
}
.nova-mobile-breadcrumb-template-wrapper>div>div {
    height: 100%;
}
div#mobile-div-menu .nova-mega-menu-icon-wrapper--leaf span.nova-mega-menu-icon.nova-mega-menu-icon-normal, div#mobile-div-menu .nova-mega-menu-icon-wrapper--leaf span.nova-mega-menu-icon.nova-mega-menu-icon-normal img {
    width: 8px !important;
    height: 8px !important;
}
div#mobile-div-menu .nova-mega-menu-icon-wrapper--leaf {
    width: 8px !important;
    height: 8px !important;
    min-width: 8px !important;
    min-height: 8px !important;
}
.mobile-div-menu-btns {
    padding-bottom: 10vh;
}
.mobile-div-menu-btns {
    display: flex;
}
.mobile-div-menu-btns a.vc_general.vc_btn3 {
    width: 100% !important;
}
.mobile-div-menu-btns .nova-vc-template-php__inner {
    display: flex !important;
}
div#top-bloc-home-child-parent .vc_row.wpb_row.vc_inner.vc_row-fluid {
    display: flex;
}
.pourqoui-home-2 .wpb_wrapper, .pourqoui-home-2 .wpb_wrapper img, .pourqoui-home-2 .nova-image-widget, .pourqoui-home-2  span.nova-image-widget__frame {
    height: 100% !important;
    border-radius: 24px !important;
}
span.nova-filters-submit-text {
    font-weight: 500;
    font-size: 15px;
    line-height: 120%;
    letter-spacing: -1%;
    text-align: center;
}
.pourqoui-home-2 > div {
    padding: 0 0 0 24px !important;
}
.pourqoui-home-1 {
    width: 53%;
}
div#pourqoui-home {
    flex-wrap: nowrap;
    padding: 0 15px !important;
}
.vc_row.wpb_row.vc_inner.vc_row-fluid {
    display: flex;
}
div#nova-cards-article-featured .vc_do_btn {
    margin: 0 !important;
}
article.nova-card-article-stack {
    height: 100% !important;
}
.nova-card-pub {
    min-height: auto !important;
    height: 100% !important;
}
.nova-card-article-stack__body {
    min-height: 230px;
}
.pourqoui-home-btns {
    display: contents !important;
}

.header-detail-pays-image-title-2 * {
    height: 100% !important;
}
span.nova-im-show-more__text {
    font-weight: 500;
    font-size: 15px;
    line-height: 120%;
    letter-spacing: -1%;
    text-align: center;
}

p:empty {
    display: none !important;
}
.nova-mobile-breadcrumb >  br {
    display: none;
}
/* ---- Pays : Fiche pays | Chiffres (template-parts/pays-chiffres.php) ---- */
.pays-chiffres-section__title {
	margin: 0 0 24px;
}
header .nova-cards-meta-filter--stacked .nova-cards-meta-filter__title {
    display: none !important;
}
.pays-chiffres {
	width: 100%;
	gap: 12px;
}
div#article-content-right .wpb_text_column.wpb_content_element a {
    color: #7900F0;
    text-decoration: underline !important;
    font-size: 17px !important;
}
.body-classic {
    max-width: 892px;
    margin: auto;
}
.body-classic p, .body-classic li {
    color: #7A7A7A !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 18px !important;
    letter-spacing: -1% !important;
}
.body-classic h2 {
    font-family: Poppins !important;
    font-weight: 500 !important;
    font-size: 20px !important;
    line-height: 100%;
    letter-spacing: -3%;
    margin-bottom: 24px !important;
    margin-top: 48px !important;
    color: #151515 !important;
}
.body-classic h3 {
    font-family: Poppins !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 18px !important;
    letter-spacing: -3%;
    margin-bottom: 0px !important;
    margin-top: 20px !important;
    color: #151515 !important;
}
.body-classic a:where(:not(.wp-element-button)) {
    text-decoration: underline !important;
}
.body-classic h2:first-child {
    margin-top: 0 !important;
}

div#article-content-right .wpb_text_column.wpb_content_element a:hover {
    color: #2D0059 !important;
}
div#article-content-right  .vc_btn3-container {
    margin-top: 32px;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    min-width: 248px;
}
.pays-chiffres__tile {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 20px 24px;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-sizing: border-box;
    background: #F3F3F3;
    color: #2D0059;
    box-shadow: 0px 6px 15px 0px #64646414;
}
.pays-chiffres__label, .pays-chiffres__sublabel {
    display: block;
    font-weight: 500;
    font-size: 20px;
    line-height: 110%;
    letter-spacing: -3%;
    color: #FFFFFF99 !important;
}

.pays-chiffres__value {
    display: block;
    color: #2D0059;
    overflow-wrap: anywhere;
    font-family: Poppins;
    font-weight: 500;
    font-size: 37px;
    line-height: 110%;
    letter-spacing: -3%;
}
.pays-chiffres__slot-3 .pays-chiffres__label {
    color: #727272 !important;
}
.pays-chiffres__slot-4 .pays-chiffres__label {
    color: #727272 !important;
}
.pays-chiffres__slot-6 .pays-chiffres__label {
    color: #727272 !important;
}
.pays-chiffres__slot-7 span.pays-chiffres__sublabel  {
    color: #727272 !important;
}
.pays-chiffres__value small {
    font-size: 20px !important;
}

.pays-chiffres__value strong,
.pays-chiffres__value b {
	font-weight: 600;
}

.pays-chiffres__icon {
	display: block;
	width: 32px;
	height: 32px;
	object-fit: contain;
}

.pays-chiffres__tile--image {
	padding: 0;
	background: #EFEAF6;
}

.pays-chiffres__tile .pays-chiffres__img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	border-radius: inherit;
}

/* Grille maquette : 4 colonnes x 2 box ACF */
.pays-chiffres--grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-template-rows: 140px 140px 130px;
}

.pays-chiffres__slot-1 {
    grid-column: 1 / 5;
    grid-row: 1 / 3;
    align-items: flex-start;
    text-align: left;
    background: #7900F0;
    gap: 24px !important;
}

.pays-chiffres__slot-1 .pays-chiffres__label,
.pays-chiffres__slot-1 .pays-chiffres__sublabel {
	color: #D4A8FF;
}

.pays-chiffres__slot-1 .pays-chiffres__value {
	color: #fff;
}
.pays-chiffres__slot-2 {
    grid-column: 5 / 9;
    grid-row: 1 / 2;
    background: #D23D22;
    gap: 32px !important;
}
.pays-chiffres__slot-2 .pays-chiffres__label,
.pays-chiffres__slot-2 .pays-chiffres__sublabel {
	color: #F5A48F;
}

.pays-chiffres__slot-2 .pays-chiffres__value {
	color: #fff;
}

.pays-chiffres__slot-2 .pays-chiffres__sublabel {
	order: -1;
}

.pays-chiffres__slot-3 {
    grid-column: 5 / 9;
    grid-row: 2 / 3;
    background: #F3F3F3;
    gap: 16px;
    border: 1px solid #F3EBE4;
}
.pays-chiffres__slot-3 span.pays-chiffres__value {
    font-size: 20px !important;
}
.pays-chiffres__slot-6 span.pays-chiffres__value {
    font-size: 26px !important;
    display: flex;
    flex-direction: column;
}
.pays-chiffres__slot-7 span.pays-chiffres__value {
    font-size: 26px !important;
}
.pays-chiffres__slot-4 {
    grid-column: 9 / 13;
    grid-row: 1 / 3;
    align-items: flex-start;
    text-align: left;
    background: #E7D5FB;
    gap: 24px !important;
}


.pays-chiffres__slot-5 {
	grid-column: 1 / 4;
	grid-row: 3 / 4;
}

.pays-chiffres__slot-6 {
    grid-column: 4 / 7;
    grid-row: 3 / 4;
    background: #FAD5C8;
    gap: 8px;
}
.pays-chiffres__slot-6 .pays-chiffres__value {
	color: #D23C20;
}

.pays-chiffres__slot-7 {
    grid-column: 7 / 10;
    grid-row: 3 / 4;
    background: #fff;
    gap: 8px;
    border: 1px solid #F3EBE4;
}

.pays-chiffres__slot-8 {
	grid-column: 10 / 13;
	grid-row: 3 / 4;
}



.pays-chiffres__slot-5.pays-chiffres__tile--text,
.pays-chiffres__slot-8.pays-chiffres__tile--text {
	background: #F3F3F3;
}

/* Mode générique : colonnes de box empilées, couleur depuis le select ACF */
.pays-chiffres--columns {
	display: flex;
	align-items: stretch;
}

.pays-chiffres__col {
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	gap: 12px;
	min-width: 0;
}

.pays-chiffres--columns .pays-chiffres__tile {
	flex: 1 1 auto;
	min-height: 130px;
}

.pays-chiffres--columns .pays-chiffres__tile--size-medium .pays-chiffres__value {
	font-size: 22px;
}

.pays-chiffres__tile--purple {
	background: #7900F0;
}

.pays-chiffres__tile--purple .pays-chiffres__value {
	color: #fff;
}

.pays-chiffres__tile--purple .pays-chiffres__label,
.pays-chiffres__tile--purple .pays-chiffres__sublabel {
	color: #D4A8FF;
}

.pays-chiffres__tile--red {
	background: #D23C20;
}

.pays-chiffres__tile--red .pays-chiffres__value {
	color: #fff;
}

.pays-chiffres__tile--red .pays-chiffres__label,
.pays-chiffres__tile--red .pays-chiffres__sublabel {
	color: #F5A48F;
}

.pays-chiffres__tile--corail {
	background: #FBD6CA;
}

.pays-chiffres__tile--corail .pays-chiffres__value {
	color: #D23C20;
}

.pays-chiffres__tile--lilac {
	background: #E8D6FB;
}

.pays-chiffres__tile.is-empty {
	background: #F3F3F3;
}
.back_to_top {
    background: #fff !important;
}
.back_to_top svg {
    color: #7900f0;
}
@media screen and (min-width: 1200px) {
    div#nova-cards-guides .nova-cards-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}
@media screen and (max-width: 1330px) {
    div#footer-bottom, div#footer-bottom-bottom {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}
@media screen and (max-width: 1199px) {
    .nova-card-pub__panel--media {
        max-height: 100% !important;
    }
    .checklist-pays span.nova-checklist__text {
        max-width: 100px !important;
        display: flex;
        width: 100% !important;
        height: 100% !important;
        text-wrap: stable;
        white-space: normal;
        overflow-wrap: break-word;
        word-break: break-word;
        align-items: center;
    }
    .single-pays .nova-checklist--equal-height.nova-checklist--cards .nova-checklist__row{ 
        width: 100% !important;
    }
    .pays-chiffres__tile:not(.pays-chiffres__tile--image) {
        padding: 16px !important;
    }
    div#nova-cards-guides .nova-cards-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    div#header-detail-pays-image-title h1 {
        font-size: 41px !important;
    }
    .pays-chiffres__value {
        font-size: 26px;
    }
    
    body:not(.home) #content {
        padding-top: 133px;
    }
    .nova-cards-grid {
        gap: 12px !important;
    }

    .nova-table--scroll .nova-table__table {
        min-width: 710px !important;
    }
    .pourqoui-home-2 > div {
        padding: 0px 0 0 12px !important;
    }
    .pourqoui-home-1 {
        width: 58%;
    }
    div#thematique-home .nova-vc-icon-menu .nova-icon-menu-title, div#thematique-home .nova-vc-icon-menu .nova-icon-menu-title p {
        font-size: 16px !important;
        line-height: 115% !important;
        letter-spacing: -1% !important;
    }
    div#thematique-home .nova-vc-icon-menu .nova-icon-menu-icon {
        width: 48px !important;
        height: 48px !important;
        max-width: 48px !important;
        max-height: 48px !important;
        min-height: 48px !important;
        min-width: 48px !important;
    }
    .nova-card-pub__copy {
        gap: 12px !important;
    }
    .nova-card-pub__copy {
        gap: 12px !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
        height: auto !important;
    }
    .nova-card-article {
        min-height: auto;
    }
    h1, .h1 {
        font-size: 41px !important;
        line-height: 100% !important;
        letter-spacing: -2% !important;
    }
    h2, .h2 {
        font-size: 30px !important;
        line-height: 100% !important;
    }
}

@media (min-width: 992px) {
    span.nova-filters-submit-text {
        display: none;
    }
}

@media (max-width: 1199px) {
    .articles-home-2-div .nova-cards-grid {
        gap: 12px !important;
    }
    .articles-home-2-2 {
        padding-top: 70px !important;
    }
    div#articles-home-2 {
        padding-top: 70px !important;
        padding-bottom: 70px !important;
    }
    .nova-card-item:has(.nova-card-article):not(.nova-page-hidden):not(.nova-filter-hidden), .nova-cards-grid .nova-card-item:has(.nova-card-article):not(.nova-page-hidden):not(.nova-filter-hidden) {
        display: flex !important;
        justify-content: center !important;
        align-items: center;
    }
    .articles-home-2-2 > div > div {
        padding-top: 0 !important;
    }
    .nova-card-article__body {
        padding: 16px !important;
        gap: 12px !important;
    }
    .nova-card-article__title {
        font-size: 20px !important;
    }
    div#nova-cards-article-featured .nova-card-article__excerpt-wrapper {
        display: none;
    }
    div#top-bloc-home-child .nova-title-overlay-content {
        gap: 12px !important;
    }
    div#top-bloc-home-child .nova-filters-fields {
        gap: 0 !important;
    }
    div#top-bloc-home-child .wpb_wrapper {
        gap: 36px !important;
    }

    .nova-cards-meta-filter--nice .nice-select .current {
        font-size: 13px !important;
        line-height: 15.93px !important;
        letter-spacing: -3% !important;
    }

    .nova-filters-submit-icon {
        max-width: 14px;
    }
    #topbar-div {
        max-height: 68px !important;
        min-height: 68px !important;
        justify-content: center !important;
    }
    #topbar-div .vc_column-inner {
        padding: 0 !important;
        height: 100% !important;
    }
    div#logo-left-topbar, .topbar-div-right-right  {
        display: none !important;
    }
    .topbar-div-right-left {
        width: 100% !important;
        max-width: 100% !important;
    }
    #topbar-div-right .wpb_wrapper {
        width: 100% !important;
    }
    #topbar-div-right .wpb_wrapper > div, #topbar-div-right .wpb_wrapper > div > div, #topbar-div-right .wpb_wrapper > div > div > div {
        width: 100% !important;
        max-width: 100% !important;
        /* min-width: 100% !important; */
    }
    #topbar-div-right .wpb_wrapper > div > div > div.nova-mobile-breadcrumb-wrapper,
    #topbar-div-right .wpb_wrapper > div > div > div.nova-mobile-breadcrumb-logo,
    #topbar-div-right .wpb_wrapper > div > div > div.nova-mobile-breadcrumb {
        width: auto !important;
        flex: 0 0 auto !important;
    }
    
    .nova-mobile-breadcrumb-content[data-animation-type="expand"].active {
        /* `--nova-expand-top` = bas de la barre, posé par le JS du plugin. */
        height: calc(100vh - var(--nova-expand-top, 0px));
        height: calc(100dvh - var(--nova-expand-top, 0px));
    }
    div#mobile-div-menu .wpb_wrapper {
        flex-direction: column;
        justify-content: space-between;
        gap: 15px !important;
        align-items: center;
        height: 100%;
    }

  
    div#mobile-div-menu .wpb_wrapper > #topbar-div,
    div#mobile-div-menu .wpb_wrapper > .mobile-div-menu-btns {
        flex: 0 0 auto;
    }

    div#mobile-div-menu .wpb_wrapper > .menu-header-primaire-mobile,
    div#mobile-div-menu .wpb_wrapper > .menu-header-primaire-mobile.wpb_content_element {
        flex: 1 1 auto;
        min-height: 0;
        height: auto;
        max-height: 100%;
        overflow-y: auto;
        overflow-x: hidden;
        align-self: stretch;
        width: 100%;
        /* Évite que le scroll se propage au drawer ou à la page une fois
           arrivé en haut/bas du menu (effet « rubber band »). */
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scrollbar-color: #C9C2D4 transparent;
    }

    /* Scrollbar fine et discrète (WebKit/Blink). */
    div#mobile-div-menu .wpb_wrapper > .menu-header-primaire-mobile::-webkit-scrollbar {
        width: 6px;
    }
    div#mobile-div-menu .wpb_wrapper > .menu-header-primaire-mobile::-webkit-scrollbar-track {
        background: transparent;
    }
    div#mobile-div-menu .wpb_wrapper > .menu-header-primaire-mobile::-webkit-scrollbar-thumb {
        background: #C9C2D4;
        border-radius: 999px;
    }
    div#mobile-div-menu .wpb_wrapper > .menu-header-primaire-mobile::-webkit-scrollbar-thumb:hover {
        background: #7900f0;
    }
    .nova-breadcrumb-open header#masthead {
        background: #F8F2FE !important;
        border-bottom: 1px solid #7900F014 !important;
    }
    .home:not(.nova-is-scrolled, .nova-breadcrumb-open) .nova-mobile-breadcrumb-logo,
    .home:not(.nova-is-scrolled , .nova-breadcrumb-open) .nova-mobile-breadcrumb-logo {
        filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(93deg) brightness(115%) contrast(102%);
    }
    /* Toggle du menu mobile : taille compacte.
       ID dynamique (nova-mm-{unique_id}) → on cible par classe. */
    .nova-vc-mega-menu-widget .nova-mobile-breadcrumb-toggle,
    [id^="nova-mm-"] .nova-mobile-breadcrumb-toggle {
        padding: 0 !important;
        width: 45px !important;
        height: 45px !important;
    }
    #topbar-div-right .wpb_wrapper > div > div > div.nova-mobile-breadcrumb-logo {
        max-width: 128px !important;
        min-width: 128px !important;
    }
    div#nova-cards-article-featured h3.nova-card-article__title {
        margin-bottom: 20px;
    }
    div#article-content {
        gap: 0px !important;
        column-gap: 24px !important;
    }
    div#article-content-right {
        /* Idem desktop : on laisse la colonne prendre l'espace restant, sans
           calc() figé qui pouvait deborder et chevaucher la colonne sticky. */
        max-width: none !important;
        width: auto !important;
        flex: 1 1 0 !important;
        min-width: 0 !important;
    }
}

@media (max-width: 1024px) {
    .nova-filters-fields {
        grid-template-columns: repeat(18, minmax(0, 1fr));
    }
    header .nova-filters-fields {
        flex-direction: row !important;
        display: flex;
        gap: 8px !important;
    }
}
@media (max-width: 991px) {
    div#thematique-home ul li a {
        background: transparent !important;
    }
    .nova-card-pub__content h1, .nova-card-pub__content h2, .nova-card-pub__content h3, .nova-card-pub__content h4, .nova-card-pub__content .h1, .nova-card-pub__title, .nova-card-pub__title *, #article-content-right .nova-card-pub h1, #article-content-right .nova-card-pub h2, #article-content-right .nova-card-pub h3, #article-content-right .nova-card-pub h4, #article-content-right .nova-card-pub .nova-card-pub__title, #article-content-right .nova-card-pub .nova-card-pub__title * {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
    }
    .pays-chiffres__value small {
        font-size: 26px !important;
    }
    div#nova-cards-guides .nova-cards-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    div#nova-cards-guides .nova-cards-grid {
        gap: 24px 16px !important;
        margin-top: 24px;
    }
    div#nova-cards-guides .nova-card-item--image-top .nova-card-image-wrapper img {
        height: 188px;
    }
    div#nova-cards-guides .nova-card-text-1 {
        font-size: 16px !important;
    }
    div#nova-cards-guides .nova-cards-grid--grouped > .nova-cards-group-heading {
        margin: 24px 0 0 0 !important;
    }
    div#nova-cards-guides .nova-card-image-wrapper {
        height: 188px !important;
        min-height: 188px !important;
        max-height: 188px !important;
    }
    div#nova-cards-guides  .nova-cards-grid > .nova-card-item {
        min-height: auto !important;
    }
    .guides-detail-article .nova-title-text-2 {
        margin-top: 0 !important;
    }
    #nova-cards-guides .nova-cards-filters {
        margin-bottom: 0;
    }
    .guides-detail-article > div > div {
        padding: 0 !important;
    }
    div#nova-cards-guides {
        padding-top: 48px !important;
    }
    .guides-detail-article .nova-title-overlay-content {
        padding-top: 50px !important;
        gap: 12px !important;
    }
    .guides-detail-article {
        max-width: 508px !important;
        width: 100% !important;
        margin-left: auto;
        margin-right: auto;
    }
    .guides-detail-article .nova-breadcrumbs {
        margin-top: 50px !important;
    }
    .guides-detail-article {
        padding-top: 0 !important;
    }
    .nova-card-article-stack__media, .nova-card-article-stack__media a, .nova-card-article-stack__media img, .article-similaires .nova-card-pub__panel--media, .article-similaires .nova-card-pub__panel--media a, .article-similaires .nova-card-pub__panel--media img {
        aspect-ratio: 140 / 140 !important;
    }
    div#article-content {
        flex-direction: column !important;
    }
    .header-detail-article {
        max-width: 508px !important;
        width: 100% !important;
        margin: auto;
    }
    header form#filtre-missions-js {
        max-width: 508px !important;
        width: 100% !important;
    }
    div#topbar-div {
        max-width: 538px !important;
        width: 100% !important;
    }
    #topbar-div  .nova-mobile-breadcrumb-template-wrapper>div {
        max-width: 508px !important;
        width: 100% !important;
        margin: auto !important;
    }
    div#article-content {
        max-width: 508px !important;
        width: 100% !important;
        margin: auto !important;
    }
    .header-detail-pays-image-title-1 > div {
        padding: 16px !important;
    }
    .nova-stats .nova-stats__title {
        font-size: 16px !important;
    }
 
    .header-detail-pays-image-title-1 .nova-stats .nova-stats__list {
        flex-direction: column;
        gap: 20px;
    }
    .pays-chiffres__slot-6 span.pays-chiffres__value {
        max-width: 145px;
    }
    .pays-chiffres__value, .pays-chiffres__slot-3 .pays-chiffres__value, .pays-chiffres__slot-6 .pays-chiffres__value, .pays-chiffres__slot-7 .pays-chiffres__value {
        font-size: 26px !important;
    }
    .pays-chiffres__tile.pays-chiffres__tile--text.pays-chiffres__tile--size-medium.pays-chiffres__slot-4 span.pays-chiffres__label {
        max-width: 144px;
    }
    .header-detail-pays-image-title-2 span.nova-image-widget__frame, .header-detail-pays-image-title-2 span.nova-image-widget__frame a, .header-detail-pays-image-title-2 span.nova-image-widget__frame img {
        aspect-ratio: 398 / 396 !important;
    }
    .pays-chiffres__slot-1 .pays-chiffres__label, .pays-chiffres__slot-4 .pays-chiffres__label {
        font-size: 20px !important;
    }
    .pays-chiffres__label, .pays-chiffres__sublabel {
        font-size: 20px !important;
    }
    .header-detail-pays-image-title-1 .btn {
        margin-bottom: 0 !important;
    }
    .nova-stats .nova-stats__label br {
        display: none;
    }
    dd.nova-stats__value {
        font-size: 20px !important;
    }
    div#header-detail-pays-image-title .nova-title-text h1 {
        max-width: 385px;
    }
    div#header-detail-pays-image-title .nova-title-overlay-content {
        gap: 24px !important;
    }
    div#header-detail-pays-image-title .nova-title-text p {
        font-size: 15px !important;
        line-height: 120% !important;
        letter-spacing: -1% !important;
    }
    div#article-content-left {
        margin-top: 48px;
    }
    .nova-card-pub {
        justify-content: center;
    }
    div#article-content-right {
        max-width: 100% !important;
    }
    .nova-cards-active-filters {
        padding: 16px !important;
        border-radius: 16px !important;
        margin-bottom: 50px;
        max-width: 508px !important;
        width: 100% !important;
        margin-left: auto;
        margin-right: auto;
    }
    .articles-header {
        max-width: 538px !important;
        width: 100% !important;
        margin: auto;
    }
    .bloc-cta-faq > div {
        width: 100% !important;
        max-width: 538px !important;
        margin: auto;
    }
    .header-detail-article .nova-title-overlay-content {
        justify-content: start !important;
        align-items: start !important;
        gap: 12px !important;
    }
    .header-detail-article .nova-title-text > * {
        text-align: left !important;
    }

    .header-detail-article .nova-title-text-2 {
        margin-top: 0 !important;
    }
    .header-detail-article .nova-title-text-1 {
        margin-top: 12px;
    }
    .header-detail-article .nova-image-widget__frame {
        aspect-ratio: 398 / 271 !important;
    }
    .header-detail-article .nova-image-widget {
        margin-top: 48px !important;
    }
    .nova-breadcrumbs {
        margin-top: 38px !important;
        max-width: 508px !important;
        width: 100% !important;
        margin-left: auto;
        margin-right: auto;
    }
    div#header-detail-pays-image-title {
        max-width: 508px !important;
        width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    div#header-detail-pays-image-title > div {
        width: 100% !important;
        max-width: 100% !important;
    }
    div#header-detail-pays-image-title {
        display: flex !important;
        flex-direction: column !important;
    }
    div#header-detail-pays-image-title .nova-title-text > * {
        text-align: left !important;
    }
    div#header-detail-pays-image-title .nova-title-text {
        margin-top: 0 !important;
    }
    .header-detail-article {
        padding-top: 0 !important;
        display: flex;
    }

    .header-detail-article .nova-breadcrumbs {
        margin-top: 50px !important;
    }
    .articles-header-archive {
        margin-bottom: 64px !important;
    }
    .articles-cards-pub {
        padding-top: 82px !important;
        padding-bottom: 82px !important;
    }
    .articles-cards-pub .nova-title-widget .nova-title-text.has-nova-max-width.nova-title-text-1 {
        max-width: 264px !important;
        width: 100% !important;
    }
    div#nova-cards-cards-pub-c {
        padding-top: 48px;
    }
    div#nova-cards-cards-pub-c .nova-cards-grid {
        gap: 12px !important;
    }
    div#nova-cards-cards-pub-c .nova-card-pub__text2 {
        display: none;
    }
    .euroweb-section-bg-layer {
        display: none;
    }
    .articles-header .nova-title-overlay-content {
        padding-top: 50px !important;
    }
    .articles-cards {
        padding-top: 50px !important;
        padding-bottom: 70px !important;
    }
    .bloc-cta-faq .nova-title-widget .nova-title-text.has-nova-max-width.nova-title-text-1 {
        max-width: 324px !important;
        width: 100% !important;
    }
    .bloc-cta-faq .nova-faq-container {
        margin-top: 48px !important;
    }
    div#nova-card-1 {
        margin-top: 48px;
    }
    .bloc-cta-faq .nova-cards-widget .nova-card-image-wrapper {
        display: none;
    }
    .bloc-cta-faq {
        flex-direction: column-reverse !important;
    }
    div#nova-card-1 .nova-card-item {
        min-height: auto !important;
    }
    header .nova-cards-meta-filter--nice .nice-select .current {
        color: #2D0059 !important;
    }
    .articles-cards-ar .nova-card-pub__text2 {
        display: none;
    }
    .articles-cards-ar .nova-title-widget .nova-title-text.has-nova-max-width.nova-title-text-1 {
        max-width: 370px !important;
        width: 100% !important;
    }
    header .nova-cards-meta-filter--nice .nice-select.nova-has-value .current{
        color: #7900F0 !important;
    }
    .nova-cards-grid:not(.nova-cards-grid--grouped) {
        flex-direction: column !important;
        display: flex;
    }
    div#header-filter {
        margin: 0 !important;
    }
    header .nova-filter-field {
        justify-content: center !important;
        position: unset !important;
    }
    header form#filtre-missions-js {
        padding: 16px 16px 16px 8px !important;
        max-height: 56px;
        min-height: 56px;
        align-items: center;
        justify-content: center;
        margin-bottom: 12px !important;
        margin-top: 12px !important;
        max-width: 508px !important;
        width: 100% !important;
    }
    header .nova-cards-meta-filter {
        padding-left: 8px !important;
    }
    header .nova-cards-meta-filter--nice {
        min-height: 24px !important;
        max-height: 24px !important;
    }
    header .nova-filters-actions {
        display: none;
    }
    div#footer-bottom-bottom-2 {
        display: none !important;
    }

    div#footer-bottom-4 {
        margin-bottom: 24px;
    }
    div#footer-bottom-2 {
        margin-top: 24px;
    }
    footer .nova-icon-menu-header-title-text {
        margin-bottom: 10px !important;
        min-height: 23px;
        line-height: 1 !important;
    }
    div#footer-bottom-2, div#footer-bottom-3, div#footer-bottom-4 {
        border-bottom: 1px solid #D9DCEC;
    }
    .menu-social.nova-icon-menu-vertical:not(.nova-icon-menu-multicol-yes):not(.nova-icon-menu-list--multicol):not(.nova-im-display-grid):not(.nova-im-display-columns):not(.nova-im-cols) .nova-icon-menu-list {
        flex-direction: row !important;
        justify-content: space-between !important;
    }
    .menu-social li {
        width: auto !important;
        max-width: max-content;
    }
    .header-detail-pays-image-title-2 img {
        border-radius: 0 0 16px 16px !important;
    }
    .header-detail-pays-image-title-1  .btn {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }
    #text-copy .nova-title-text span {
        font-size: 16px !important;
    }
    div#footer-bottom, div#footer-bottom-bottom {
        flex-direction: column !important;
        margin: 0 !important;
        padding-top: 24px !important;
        padding-bottom: 0 !important;
        max-width: 538px !important;
        margin-right: auto !important;
        left: 50% !important;
        transform: translateX(-50%);
    }
    div#footer-bottom-bottom {
        padding: 20px 15px 18px 15px  !important;
        border: none !important;
        flex-direction: column-reverse;
    }
    footer .wpb-content-wrapper > div {
        max-width: 538px !important;
        width: 100% !important;
        /* margin-left: auto !important; */
        /* margin-right: auto !important; */
        /* position: initial !important; */
    }
    footer .wpb-content-wrapper {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    footer .nova-title-text > * {
        text-align: left !important;
    }
    div#footer-bottom > div {
        max-width: 100% !important;
    }
    footer#pix-page-footer {
        background: #F8F2FE !important;
    }
    div#articles-home-child > div {
        padding: 0 !important;
    }
    div#pourqoui-home > div > .vc_column-inner {
        padding: 12px !important;
    }
    .pourqoui-home-btns .wpb_wrapper {
        flex-direction: column;
    }
    div#pourqoui-home .nova-card-item {
        width: 100% !important;
        max-width: 100% !important;
    }
    div#pourqoui-home > div.pourqoui-home-2 {
        display: none !important;
    }
    div#pourqoui-home > div {
        width: 100% !important;
        max-width: 508px;
        margin: auto;
    }

    div#pourqoui-home {
        flex-direction: column;
    }
    div#pourqoui-home {
        margin-top: 70px !important;
        margin-bottom: -36px;
    }
    .nova-faq-item:last-child {
        margin-bottom: 0;
    }
    .nova-im-show-more-wrap {
        margin: 0 !important;
    }
    div#thematique-home .nova-vc-icon-menu.nova-im-display-grid:not(.nova-im-expanded) .nova-icon-menu-list {
        margin-bottom: -100px !important;
        padding-bottom: 30px !important;
    }
    div#thematique-home .nova-im-expanded  .nova-im-show-more-wrap {
        display: none !important;
    }
    div#thematique-home .nova-vc-icon-menu.nova-im-display-grid .nova-icon-menu-list {
        padding-top: 48px;
        flex-direction: column !important;
        display: flex !important;
        gap: 16px !important;
    }
    div#thematique-home .nova-vc-icon-menu.nova-im-equal-height .nova-icon-menu-list > li > a br {
        display: none;
    }
    div#thematique-home .nova-vc-icon-menu .NOVA-dropdown-icon--image {
        display: none;
    }
    div#thematique-home .nova-vc-icon-menu.nova-im-equal-height .nova-icon-menu-list > li > a {
        padding: 0 !important;
        min-height: 48px !important;
    }
    div#thematique-home > div > .vc_column-inner {
        padding: 0;
    }
    div#thematique-home .nova-icon-menu-list {
        padding-top: 48px;
    }
    div#thematique-home .nova-title-badge {
        margin-bottom: 8px !important;
    }
    div#thematique-home > div {
        width: calc(100% - 32px) !important;
        padding: 16px !important;
        max-width: 508px !important;
    }
    div#articles-home {
        max-width: 508px;
        margin: auto;
        width: 100% !important;
    }
    div#top-bloc-home-child-parent > div {
        max-width: 538px !important;
        width: 100% !important;
    }
    .nova-card-article-stack__eyebrow {
        margin-bottom: 0 !important;
    }
    .articles-home-2-2 .nova-title-badge {
        margin-bottom: 8px !important;
    }
    .nova-card-article-stack__body {
        min-height: auto !important;
    }
    .articles-home-2-div .nova-cards-grid {
        flex-direction: column !important;
        display: flex !important;
    }
    .nova-title-overlay-content {
        gap: 16px !important;
        justify-content: center !important;
        align-items: center !important;
    }
    .nova-title-text > * {
        text-align: center !important;
    }
    .nova-title-badge {
        margin-bottom: 0 !important;
    }
    .articles-home-2-1  .nova-title-badge {
        margin-bottom: -4px !important;
    }
    .articles-home-2-div .nova-cards-widget {
        padding: 48px 0 0 0 !important;
    }
    div#pourqoui-home .nova-title-badge {
        margin-bottom: 8px !important;
    }
    div#nova-cards-pourquoi .nova-cards-grid {
        gap: 20px !important;
    }
    div#nova-cards-pourquoi .nova-cards-grid {
        display: flex;
        flex-direction: column;
    }
    .pourqoui-home-1 .wpb_wrapper {
        gap: 48px;
    }
    div#articles-home-2 h2 {
        max-width: 238px;
        width: 100%;
        margin: auto;
    }
    div#nova-cards-article-featured {
        padding: 0 0 12px 0;
    }
    .nova-card-article-row__body {
        gap: 12px;
        padding: 12px;
    }
    div#nova-cards-article-featured article.nova-card-article {
        max-width: 510px !important;
    }
    .nova-card-article-row__media, .nova-card-article-row__media-link, .nova-card-article-row__img {
        min-height: 100px;
        max-height: 100px;
        aspect-ratio: 1 / 1;
        height: auto;
        max-width: 100px;
    }
    article.nova-card-article-row {
        max-height: 100px !important;
        min-height: 100px;
        display: flex;
    }
    div#nova-cards-row {
        min-width: 2000px !important;
    }
    .nova-card-article-row__title {
        font-size: 15px !important;
        line-height: 120% !important;
    }

    article.nova-card-article .nova-card-article__media-link, article.nova-card-article .nova-card-article__img {
        min-height: 265px !important;
        aspect-ratio: 398 / 265 !important;
        height: auto !important;
    }
    div#article-content-right .nova-image-widget {
        margin-top: 48px !important;
        display: flex !important;
        aspect-ratio: 399 / 276 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        min-height: 276px !important;
        flex: initial !important;
    }
    #nova-cards-row .nova-card-item {
        min-width: 330px !important;
        max-width: 330px !important;
        width: 100% !important;
    }
    div#top-bloc-home-child .nova-filters-fields {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    }
    div#top-bloc-home {
        min-height: auto !important;
        padding: 115px 0 10vh 0 !important;
    }
    div#top-bloc-home-child .nova-filters-actions {
        width: 100% ;
    }

    div#top-bloc-home-child .nova-filters-submit {
        width: 100% !important;
        aspect-ratio: initial !important;
        max-height: 45px !important;
        min-height: 45px !important;
        gap: 10px;
    }
    form#filtre-missions-js {
        border-radius: 16px;
        padding: 4px 12px 12px 12px;
        flex-direction: column;
        gap: 16px !important;
    }
    
    div#top-bloc-home-child .nova-filter-field .nova-cards-meta-filter {
        min-height: 32px !important;
        padding: 16px  0 16px 0 !important;
        border-bottom: 1px solid #7900F026 !important;
        border-left: none !important;
    }

    .pourqoui-home-btns .wpb_wrapper {
        gap: 8px !important;
    }
}

@media (max-width: 991px) and (min-width: 768px) {
	.pays-chiffres__label,
	.pays-chiffres__sublabel {
		font-size: 15px;
	}

	.pays-chiffres__value {
		font-size: 26px;
	}
}

@media (max-width: 991px) {
	.pays-chiffres--grid,
	.pays-chiffres--columns {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-rows: none;
		grid-auto-rows: auto;
	}

	.pays-chiffres__col {
		display: contents;
	}

	.pays-chiffres--grid .pays-chiffres__tile,
	.pays-chiffres--columns .pays-chiffres__tile {
		grid-column: auto;
		grid-row: auto;
		aspect-ratio: 193 / 200;
		min-height: 0;
		padding: 16px 20px;
	}

	.pays-chiffres .pays-chiffres__tile--image {
		padding: 0;
	}

	.pays-chiffres__label,
	.pays-chiffres__sublabel {
		font-size: 15px;
	}

	.pays-chiffres__value,
	.pays-chiffres__slot-3 .pays-chiffres__value,
	.pays-chiffres__slot-6 .pays-chiffres__value,
	.pays-chiffres__slot-7 .pays-chiffres__value {
		font-size: 22px;
		line-height: 1.2;
	}

	.pays-chiffres__slot-1 .pays-chiffres__label,
	.pays-chiffres__slot-4 .pays-chiffres__label {
		font-size: 17px;
	}

	.pays-chiffres__slot-3,
	.pays-chiffres__slot-4 {
		gap: 10px;
	}
}

/* ---------------------------------------------------------------------------
 * #pourqoui-home – image déplacée après le titre en mobile (<= 991px)
 * Le script assets/js/pourqoui-home-image-order.js place le widget image dans
 * la colonne 1 ; data-pourqoui-image-moved="1" sert de crochet CSS fiable.
 * Ratio 374 / 215 avec min-height 215px.
 * ------------------------------------------------------------------------- */
@media (max-width: 991px) {
    .body-classic .nova-title-overlay-content {
        padding-bottom: 50px !important;
    }
	div#pourqoui-home .pourqoui-home-1 .wpb_wrapper > .nova-image-widget {
		width: 100% !important;
		max-width: 580px;
		align-self: stretch;
		flex: 0 0 auto;
		overflow: hidden;
		border-radius: 24px;
	}
    .body-classic {
        padding-top: 50px !important;
        max-width: 508px !important;
        width: 100% !important;
        margin: auto;
    }
	div#pourqoui-home .pourqoui-home-1 .wpb_wrapper > .nova-image-widget .nova-image-widget__frame {
		display: block;
		width: 100%;
	}
    div#footer-bottom, div#footer-bottom-bottom {
        padding-left: 0px !important;
        padding-right: 0px !important;
    }
	div#pourqoui-home .pourqoui-home-1 .wpb_wrapper > .nova-image-widget .nova-image-widget__img,
	div#pourqoui-home .pourqoui-home-1 .wpb_wrapper > .nova-image-widget img {
		display: block;
		width: 100% !important;
		height: auto !important;
		min-height: 215px;
		aspect-ratio: 374 / 215;
		object-fit: cover;
		object-position: center center;
		border-radius: 24px;
	}
}

/* ---------------------------------------------------------------------------
 * Footer – menu social déplacé dans #footer-bottom-bottom en mobile (<= 991px)
 * Le script assets/js/footer-social-order.js déplace .menu-social dans la
 * colonne sociale (après « Le blog ») ; data-nova-social-moved="1" (posé sur
 * <html>) sert de crochet CSS fiable. Sur desktop, le script restaure la
 * position d'origine : aucune règle ici ne s'applique.
 * ------------------------------------------------------------------------- */
@media (max-width: 991px) {
	html[data-nova-social-moved="1"] div#footer-bottom-bottom .menu-social {
		width: 100% !important;
		max-width: 100% !important;
		margin-bottom: 0 !important;
	}
}


