/*
 Theme Name:     Divi-child
 Description:    Divi-child personnalisation
 Author:         OpenMyDiv
 Author URI:     https://www.openmydiv.fr/
 Template:       Divi
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */

/*  PROVISOIRE */
.pa-header .et_pb_menu_page_id-130, .et-l.et-l--footer #menu-item-494, .page-id-132 .et_pb_text_inner .section-titre:last-of-type, .page-id-132 .et_pb_text_inner ul:last-of-type {display: none!important;}


/* ============================================================
   TYKO — style.css (Divi child theme)
   Basé sur la structure Maint Up, palette Tyko
   ============================================================ */

@font-face {font-family:'Google Sans';font-style:normal;font-display:auto;src:url('/wp-content/themes/Divi-child/fonts/GoogleSans-Regular.ttf') format("truetype");}
@font-face {font-family:'Inter';font-style:normal;font-display:auto;src:url('/wp-content/themes/Divi-child/fonts/Inter.ttf') format("truetype");}
@font-face {font-family:'Inter Italic';font-style:italic;font-display:auto;src:url('/wp-content/themes/Divi-child/fonts/Inter-Italic.ttf') format("truetype");}

:root {--font-title: 'Google Sans', sans-serif;
--font-italic: 'Inter Italic', sans-serif;
--font-base: 'Inter', sans-serif;
--color-brand-950: #0B1020;
--color-brand-900: #11182D;
--color-brand-800: #17213D;
--color-brand-700: #24304D;
--color-brand-500: #5B6886;
--color-accent-700: #3F49D8;
--color-accent-600: #4F5BEE;
--color-accent-500: #6366F1;
--color-accent-400: #8B90FF;
--color-accent-300: #B8BEFF;
--color-accent-200: #DDE1FF;
--color-accent-100: #EEF1FF;
--color-accent-50: #F7F8FF;
--color-violet-700: #5B32D6;
--color-violet-600: #6D3FE8;
--color-violet-500: #7C5CFA;
--color-violet-200: #E5DBFF;
--color-violet-50: #F8F5FF;
--color-neutral-0: #FFFFFF;
--color-neutral-25: #FCFDFF;
--color-neutral-50: #F7F9FC;
--color-neutral-100: #F0F4FA;
--color-neutral-200: #E7ECF4;
--color-neutral-300: #D7DFEB;
--color-neutral-400: #B8C3D6;
--color-neutral-500: #8A96AC;
--color-neutral-600: #667389;
--color-neutral-700: #445066;
--color-neutral-800: #20293A;
--color-neutral-900: #121927;
--color-surface-primary: var(--color-neutral-0);
--color-surface-secondary: var(--color-neutral-50);
--color-surface-tertiary: var(--color-accent-50);
--color-surface-dark: var(--color-brand-950);
--color-border-light: rgba(17,24,45,0.08);
--color-border-medium: rgba(17,24,45,0.14);
--color-border-strong: rgba(17,24,45,0.22);
--color-text-primary: var(--color-brand-900);
--color-text-secondary: var(--color-neutral-700);
--color-text-muted: var(--color-neutral-600);
--color-text-inverse: #FFFFFF;
--color-promotion: #52c87d;
--color-promotion-background: #c6edd4;
--color-success: #15803D;
--color-success-soft: #EAF7EF;
--color-error: #C62828;
--color-error-soft: #FDEDED;
--color-warning: #C68A00;
--color-warning-soft: #FFF7E1;
--gradient-accent: linear-gradient(135deg, #4F5BEE 0%, #7C5CFA 100%);
--gradient-accent-soft: linear-gradient(135deg, #EEF1FF 0%, #F8F5FF 100%);
--gradient-dark: linear-gradient(135deg, #11182D 0%, #1A2442 100%);
--size-h1: clamp(3.25rem, 5vw, 3.5rem);
--size-h2: clamp(2.35rem, 3.5vw, 2.5rem);
--size-h3: clamp(1.65rem, 2.4vw, 1.9rem);
--size-h4: clamp(1.25rem, 1.6vw, 1.5rem);
--size-bigger: 1.25rem;
--size-base: 1.0625rem;
--size-cta: 1rem;
--size-meta: 0.875rem;
--size-small: 0.9375rem;
--lh-title: 1.05;
--lh-tight: 1.25;
--lh-base: 1.45;
--weight-light: 300;
--weight-regular: 400;
--weight-medium: 500;
--weight-semibold: 600;
--weight-bold: 700;
--weight-extrabold: 800;
--shadow-xs: 0 1px 2px rgba(17,24,45,0.04);
--shadow-sm: 0 8px 24px rgba(17,24,45,0.06);
--shadow-md: 0 14px 40px rgba(17,24,45,0.09);
--shadow-lg: 0 24px 60px rgba(17,24,45,0.14);
--shadow-focus: 0 0 0 4px rgba(99,102,241,0.16);
--g-xxsmall: 0.125rem;
--g-xsmall: 0.25rem;
--g-small: 0.5rem;
--g-smedium: .625rem;
--g-medium: 1rem;
--g-xmedium: 1.5rem;
--g-large: 2rem;
--g-xlarge: 4rem;
--g-xxlarge: 6rem;
--g-xxxlarge: 9rem;
--g-pill: 999px;
--container-width: 1360px;
--container-wide: 1480px;
--container-narrow: 940px;
--container-small: 780px;
--header-height: 84px;
--btn-height: 52px;
--btn-height-small: 42px;
--input-height: 54px;
--transition-fast: 0.2s ease;
--transition-base: 0.3s ease;
}

/* ============================================================
   TYPOGRAPHIE GLOBALE
   ============================================================ */

h1, h2, h3, h4, h5, h6 {font-family: var(--font-title);font-weight: var(--weight-bold);line-height: var(--lh-title);color: var(--color-text-primary);padding-bottom: 0!important;}

body, p, li, .cta {font-family: var(--font-base);font-weight: var(--weight-regular);font-size: var(--size-base);line-height: var(--lh-base);color: var(--color-text-secondary);}

#page-container h1 {font-size: var(--size-h1);}
#page-container h2 {font-size: var(--size-h2);}
#page-container h3 {font-size: var(--size-h3);}
#page-container h4 {font-size: var(--size-h4);}

/* ============================================================
   DIVI OVERRIDES — layout sans-padding pour blocs ACF
   ============================================================ */

.et_pb_section:has(.bloc-flexible),
.et_pb_row:has(.bloc-flexible) {padding: 0;}
.et_pb_row:has(.bloc-flexible) {width: 100%;max-width: 100%;}
.et_pb_row {width: 90%;}
.swiper-button-next:after, .swiper-button-prev:after {display:none;}
.et_pb_section {background-color: var(--color-surface-primary);}
[class*=dipi_] .swiper-button-next:after,
[class*=dipi_] .swiper-button-prev:after {display:none;}

/* ============================================================
   BLOC FLEXIBLE — base commune
   ============================================================ */

.bloc-flexible:not(.bloc-hero):not(.bloc-chiffres-cles):not(.bloc-conversion):not(.bloc-banniere-cta):not(:has(.bloc-banniere)):not(:has(.bloc-contact)) {max-width: var(--container-width);width: 90%;margin: var(--g-xlarge) auto;}

#page-container .bloc-temoignages, #page-container .bloc-etapes {max-width: 100%;width: 100%;margin: auto;padding: var(--g-xxlarge) 0;}

/* ============================================================
   SECTION HEADER (label + titre + intro partagé)
   ============================================================ */

.section-header {text-align: center;max-width: var(--container-narrow);margin: 0 auto var(--g-xlarge);display: grid;gap: var(--g-medium);}
.section-label {display: inline-flex;align-items: center;justify-content: center;font-size: var(--size-meta);font-weight: var(--weight-semibold);font-family: var(--font-title);color: var(--color-accent-600);background: var(--color-accent-100);border: 1px solid var(--color-accent-200);padding: 0.35rem 1rem;border-radius: var(--g-pill);letter-spacing: 0.02em;width: fit-content;margin: 0 auto;}
.section-titre {margin: 0;color: var(--color-text-primary);line-height: var(--lh-title);}
.section-introduction {font-size: var(--size-bigger);color: var(--color-text-muted);line-height: var(--lh-base);margin: 0;}

/* Header en blanc sur fond foncé */
.bloc-chiffres-cles .section-label {background:rgba(255,255,255,0.12);border-color:rgba(255,255,255,0.2);color:var(--color-accent-300);}
.bloc-chiffres-cles .section-titre {color: var(--color-text-inverse);}
.bloc-chiffres-cles .section-introduction {color: rgba(255,255,255,0.65);}
.bloc-conversion .section-label {background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.2);color:var(--color-accent-300);}
.bloc-conversion .section-titre {color: var(--color-text-inverse);}

/* ============================================================
   CTA BUTTONS
   ============================================================ */

a.cta, #page-container .et_pb_section.pa-header li.cta > a,
#page-container .et_pb_section.pa-fixed-header li.cta > a,
.carte-offre__cta, .carte-offre__nav-cta {display: inline-flex;align-items: center;gap: var(--g-small);font-family: var(--font-title);font-weight: var(--weight-regular);font-size: var(--size-cta)!important;height: var(--btn-height);padding: 0 1.75rem!important;border-radius: var(--g-smedium)!important;text-decoration: none;transition: all var(--transition-fast);cursor: pointer;white-space: nowrap;width: fit-content;}
#page-container .et_pb_section.pa-header li.cta > a,
#page-container .et_pb_section.pa-fixed-header li.cta > a {height: 2.5rem;}

a.cta.primary, #page-container .et_pb_section.pa-header li.cta.primary > a,
#page-container .et_pb_section.pa-fixed-header li.cta.primary > a,
.carte-offre__cta:hover, .carte-offre.carte-offre--active .carte-offre__cta {background: var(--gradient-accent);color: var(--color-text-inverse);border: none;box-shadow: var(--shadow-sm);}

a.cta.primary:hover, #page-container .et_pb_section.pa-header li.cta.primary > a:hover,
#page-container .et_pb_section.pa-fixed-header li.cta.primary > a:hover {filter: brightness(1.08);box-shadow: var(--shadow-md);}

a.cta.secondary, .carte-offre__cta, .carte-offre__nav-cta {background: transparent;color: var(--color-brand-900);border: 1.5px solid var(--color-border-strong);}
a.cta.secondary:hover {background: var(--color-neutral-100);border-color: var(--color-accent-400);color: var(--color-accent-600);}

/* CTA sur fond foncé 
.bloc-hero a.cta.secondary,
.bloc-conversion a.cta.secondary {color: var(--color-text-inverse);border-color: rgba(255,255,255,0.3);}
.bloc-hero a.cta.secondary:hover,
.bloc-conversion a.cta.secondary:hover {background: rgba(255,255,255,0.1);border-color: rgba(255,255,255,0.6);}*/

.bloc-cta-wrapper {display: flex;flex-wrap: wrap;gap: var(--g-medium);align-items: center;}

/* ============================================================
   404
   ============================================================ */

.error404 #page-container .et_pb_section.df.aic {padding: 0;}
.error404 #page-container .et-l.et-l--body .et_pb_text_0_tb_body .et_pb_text_inner:first-of-type > :first-child {display: block;} 
.error404 .et_pb_text_inner * {color: var(--color-accent-50);}
.error404 .et_pb_button_module_wrapper {text-align: center;margin-top: var(--g-large);}

/* ============================================================
   HERO
   ============================================================ */

.bloc-hero {min-height: calc(100vh - var(--header-height));min-height: clamp(560px, 60vh, 900px);display: flex;align-items: center;justify-content: center;text-align: center;position: relative;overflow: hidden;}

/* — Mode sombre (par défaut si classe absente, sécurité) — */
.bloc-hero--sombre, .error404 .et_pb_section {background: var(--gradient-dark);}
.bloc-hero--sombre::before {content: '';position: absolute;inset: 0;background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(99,102,241,0.18) 0%, transparent 70%);pointer-events: none;}
.bloc-hero--sombre .hero-label {color: var(--color-accent-300);background: rgba(99,102,241,0.15);border-color: rgba(99,102,241,0.3);}
.bloc-hero--sombre h1 {color: var(--color-text-inverse);}
.bloc-hero--sombre .hero-introduction {color: rgba(255,255,255,0.7);}
.bloc-hero--sombre .hero-reassurance  {color: rgba(255,255,255,0.45);}
:is(.bloc-hero--sombre, .bloc-conversion) a.cta.secondary {color: var(--color-text-inverse);border-color: rgba(255,255,255,0.3);}
:is(.bloc-hero--sombre, .bloc-conversion) a.cta.secondary:hover {background: rgba(255,255,255,0.1);border-color: rgba(255,255,255,0.6);}

/* — Mode clair (défaut) — */
.bloc-hero--clair {background: var(--gradient-accent-soft);}
.bloc-hero--clair::before {content: '';position: absolute;inset: 0;background: radial-gradient(ellipse 70% 50% at 50% 0%, rgba(99,102,241,0.08) 0%, transparent 65%);pointer-events: none;}
.bloc-hero--clair .hero-label {color: var(--color-accent-700);background: var(--color-accent-100);border-color: var(--color-accent-200);}
.bloc-hero--clair h1 {color: var(--color-text-primary);}
.bloc-hero--clair .hero-introduction {color: var(--color-text-secondary);font-weight: var(--weight-regular);}
.bloc-hero--clair .hero-reassurance {color: var(--color-text-muted);}
.bloc-hero--clair a.cta.secondary {color: var(--color-brand-900);border-color: var(--color-border-strong);}
.bloc-hero--clair a.cta.secondary:hover {background: var(--color-neutral-100);border-color: var(--color-accent-400);color: var(--color-accent-600);}

/* — Éléments communs aux deux modes — */
.bloc-hero__inner {position: relative;z-index: 1;max-width: var(--container-narrow);width: 90%;margin: 0 auto;padding: /*var(--g-xlarge) 0*/var(--g-xxxlarge) 0 var(--g-xlarge);display: grid;gap: var(--g-large);justify-items: center;}
.hero-label {display: inline-flex;align-items: center;font-family: var(--font-title);font-size: var(--size-meta);font-weight: var(--weight-semibold);padding: 0.4rem 1.1rem;border-radius: var(--g-pill);border: 1px solid;letter-spacing: 0.02em;margin-bottom: -1rem;}
.bloc-hero h1 {font-size: var(--size-h1);font-weight: var(--weight-extrabold);line-height: 1.0;margin: 0;max-width: var(--container-narrow);}
.hero-introduction {font-size: var(--size-bigger);line-height: var(--lh-base);max-width: var(--container-narrow);margin: 0;font-weight: var(--weight-light);}
.hero-reassurance {font-size: var(--size-small);line-height: var(--lh-base);max-width: 560px;margin: 0;}
.blog-archive__body {max-width: var(--container-width);width: 90%;margin: 0 auto;display: flex;flex-direction: column;gap: var(--g-xlarge);}

/* ============================================================
   BLOC ACCROCHE
   ============================================================ */

.bloc-flexible.bloc-accroche {font-size: clamp(1.6rem, 2.8vw, 2.2rem);font-family: var(--font-italic);font-style: italic;line-height: 1.25;letter-spacing: -0.5px;color: var(--color-text-primary);max-width: var(--container-narrow) !important;text-align: center;margin: var(--g-xlarge) auto;}

/* ============================================================
   BLOC CARROUSEL LOGOS
   ============================================================ */

.bloc-carrousel-logos {padding: var(--g-xlarge) 0;overflow: hidden;}
.bloc-carrousel-logos .bloc-carrousel-logos--static {background: var(--color-surface-secondary);border-top: 1px solid var(--color-border-light);border-bottom: 1px solid var(--color-border-light);}
.bloc-carrousel-logos .section-header {margin-bottom: var(--g-xlarge);}
.bloc-carrousel-logos__marquee {width: 100%;}
.bloc-carrousel-logos__list {display: grid;grid-template-columns: repeat(7, minmax(0, 1fr));gap: var(--g-medium);}
.bloc-carrousel-logos__item {display: flex;flex-direction: column;align-items: center;background: #fff;padding: var(--g-medium) var(--g-large);border-radius: var(--g-medium);border: 1px solid var(--color-neutral-200);}
.bloc-carrousel-logos__item___logo {background: var(--color-neutral-50);/*padding: 1rem;*/
border-radius: var(--g-medium);width: 3.5rem;height: 3.5rem;display: flex;justify-content: center;  align-items: center;margin-bottom: .75rem;}
.bloc-carrousel-logos__item___logo img {width: 2.5rem;height: 2.5rem;object-fit: contain;}
.bloc-carrousel-logos__nom {font-weight: 600;font-size: .9rem;  line-height: 1.25rem;color: var(--color-brand-950);margin-bottom: var(--g-small);}
.bloc-carrousel-logos__label {font-size: .85rem;  line-height: 1rem;text-align: center;color: var(--color-neutral-500);}


/* ============================================================
   BLOC CARTES (Fonctionnalités)
   ============================================================ */

.bloc-cartes {background: var(--color-surface-primary);}
.cartes-grid {display: grid;grid-template-columns: repeat(3, 1fr);gap: var(--g-large);}
.carte-fonctionnalite {background: var(--color-surface-primary);border: 1px solid var(--color-border-light);border-radius: var(--g-xmedium);padding: var(--g-large);display: flex;flex-direction: column;gap: var(--g-medium);transition: all var(--transition-base);box-shadow: var(--shadow-xs);}
.carte-fonctionnalite:hover {border-color: var(--color-accent-300);box-shadow: var(--shadow-md);transform: translateY(-2px);}
.carte__icone {width: 3rem;height: 3rem;background: var(--color-violet-50);border-radius: var(--g-medium);display: flex;align-items: center;justify-content: center;padding: 0.6rem;}
.carte__icone svg path {stroke: var(--color-violet-600);}
.carte__icone img {width: 100%;height: 100%;object-fit: contain;}
.bloc-cartes {
}


.carte__titre {font-size: var(--size-h4);font-weight: var(--weight-semibold);color: var(--color-text-primary);margin: 0;line-height: var(--lh-tight);}
.carte__texte {font-size: var(--size-small);color: var(--color-text-muted);line-height: var(--lh-base);margin: 0;flex: 1;}
.carte__lien {font-size: var(--size-meta);font-weight: var(--weight-semibold);color: var(--color-accent-600);text-decoration: none;display: inline-flex;align-items: center;gap: 0.375rem;transition: color var(--transition-fast);width: fit-content;}
.carte__lien:hover {color: var(--color-accent-700);}
.carte__lien::after {content: '→';}

/* ============================================================
   BLOC CHIFFRES CLÉS
   ============================================================ */

.bloc-chiffres-cles {background: var(--gradient-dark);max-width: 100% !important;width: 100% !important;margin: 0 !important;padding: var(--g-xxlarge) 0;}
.bloc-chiffres-cles .section-header,
.bloc-chiffres-cles .chiffres-grid {max-width: var(--container-width);width: 90%;margin-left: auto;margin-right: auto;}
.bloc-chiffres-cles .section-header {margin-bottom: var(--g-xlarge);}
.chiffres-grid {display: flex;/*flex-wrap: wrap;*/justify-content: center;gap: var(--g-large);text-align: center;}
.chiffre-item {display: flex;flex-direction: column;align-items: center;gap: var(--g-small);padding: var(--g-large);border-radius: var(--g-xmedium);background: rgba(255,255,255,0.04);border: 1px solid rgba(255,255,255,0.06);transition: background var(--transition-base);}
.chiffre-item:hover {background: rgba(255,255,255,0.08);}
.chiffre-valeur {font-family: var(--font-title);font-size: clamp(2.5rem, 4vw, 3.5rem);font-weight: var(--weight-extrabold);color: var(--color-text-inverse);display: flex;align-items: baseline;gap: 0.35rem;line-height: 1;}
.chiffre-prefixe,
.chiffre-suffixe {font-size: clamp(1.65rem, 1.9vw, 1.85rem);font-weight: var(--weight-bold);color: var(--color-accent-400);}
.chiffre-compteur {color: var(--color-text-inverse);}
.chiffre-legende {font-size: var(--size-meta);color: rgba(255,255,255,0.5);line-height: 1.3;max-width: 150px;font-weight: var(--weight-medium);}

/* ============================================================
   BLOC ÉTAPES
   ============================================================ */

.bloc-etapes {background: var(--color-surface-secondary);}
.bloc-etapes .section-header {margin-bottom: var(--g-xlarge);}
.bloc-etapes:has(.etapes-liste--count-6) {display: flex;  padding: var(--g-xxlarge) 5%!important;gap: var(--g-xlarge);}
.bloc-etapes:has(.etapes-liste--count-6) .section-header {text-align: left;display: flex;  gap: var(--g-medium);  flex-direction: column;  align-self: flex-start;  position: sticky;  top: calc(var(--header-height) + var(--g-large));}
.bloc-etapes:has(.etapes-liste--count-6) .etapes-liste {grid-template-columns: 1fr;  gap: 0;}
.bloc-etapes:has(.etapes-liste--count-6) .etape-item-wrap {min-height: 30vh; /* distance de scroll par carte — ajuste selon le rendu voulu */display: flex;  align-items: flex-start;}
.bloc-etapes:has(.etapes-liste--count-6) .etape-item-wrap:last-child {min-height: auto;}
.bloc-etapes:has(.etapes-liste--count-6) .etape-item {position: sticky;  top: calc(var(--header-height) + var(--g-large));  width: 100%;}


.bloc-etapes:has(.etapes-liste--count-6) .section-header .section-label {margin: 0;}
.etapes-liste {list-style: none;margin: auto!important;padding: 0;display: grid;gap: var(--g-large);counter-reset: none;}
.etapes-liste--count-2 {grid-template-columns: repeat(2, 1fr);}
.etapes-liste--count-3 {grid-template-columns: repeat(3, 1fr);}
.etapes-liste--count-4 {grid-template-columns: repeat(4, 1fr);}
.etape-item {display: flex;gap: var(--g-medium);flex-direction: column;align-items: flex-start;padding: var(--g-large);background: var(--color-surface-primary);border: 1px solid var(--color-border-light);border-radius: var(--g-xmedium);box-shadow: var(--shadow-xs);transition: box-shadow var(--transition-base);}
.etape-item:hover {box-shadow: var(--shadow-md);}
.etape-numero {flex-shrink: 0;width: 2.75rem;height: 2.75rem;background: var(--gradient-accent);color: var(--color-text-inverse);border-radius: 50%;display: flex;align-items: center;justify-content: center;font-family: var(--font-title);font-size: var(--size-bigger);font-weight: var(--weight-bold);}
.etape-content {display: grid;gap: var(--g-small);}
.etape-icone img {width: 2.5rem;height: 2.5rem;object-fit: contain;}
.etape-titre {font-size: var(--size-bigger);font-weight: var(--weight-semibold);color: var(--color-text-primary);margin: 0;}
.etape-texte {font-size: var(--size-small);color: var(--color-text-muted);margin: 0;line-height: var(--lh-base);}

/* ============================================================
   BLOC TÉMOIGNAGES
   ============================================================ */

.bloc-temoignages {background: var(--color-surface-tertiary);}
.bloc-temoignages .section-header {margin-bottom: var(--g-xlarge);}
.testimonials_wrapper, .etapes-liste {max-width: var(--container-wide);margin: auto;width: 90%;}
.temoignages-grid {display: grid;grid-template-columns: repeat(2, 1fr);gap: var(--g-large);}
.testimonial_item.carte {background: var(--color-surface-primary);border: 1px solid var(--color-border-light);border-radius: var(--g-xmedium);padding: var(--g-large);display: flex;flex-direction: column;gap: var(--g-large);box-shadow: var(--shadow-xs);transition: box-shadow var(--transition-base);}
.testimonial_item.carte:hover {box-shadow: var(--shadow-md);}
.testimonial_bloc {display: grid;gap: var(--g-medium);flex: 1;}
.testimonial_rating {display: flex;gap: 0.2rem;}
.star {font-size: 1.1rem;line-height: 1;}
.star-full  {color: #F59E0B;}
.star-half  {color: #F59E0B;}
.star-empty {color: var(--color-neutral-300);}
.testimonial_title {font-size: var(--size-base);font-weight: var(--weight-semibold);color: var(--color-text-primary);margin: 0;}
.testimonial_content {font-size: var(--size-small);color: var(--color-text-muted);line-height: var(--lh-base);font-style: italic;}
.testimonial_author {display: flex;align-items: center;gap: var(--g-medium);padding-top: var(--g-medium);border-top: 1px solid var(--color-border-light);}
.author_image img {width: 3rem;height: 3rem;border-radius: 50%;object-fit: cover;}
.author_infos {display: flex;flex-direction: column;gap: 0.15rem;}
.author_name {font-size: var(--size-small);font-weight: var(--weight-semibold);color: var(--color-text-primary);}
.author_company {font-size: var(--size-meta);color: var(--color-text-muted);}
.author_role    {font-size: var(--size-meta);color: var(--color-text-muted);}

/* ============================================================
   BLOC FAQ
   ============================================================ */

.faq-groupe {margin-bottom: var(--g-xxlarge);}
.faq-groupe:last-child {margin-bottom: 0;}
.faq-groupe__titre {font-size: var(--size-h3);font-weight: var(--weight-semibold);color: var(--color-text-primary);margin: 0 0 var(--g-large);padding-bottom: var(--g-medium)!important;border-bottom: 2px solid var(--color-border-light);max-width: 780px;margin-left: auto;margin-right: auto;}


.bloc-faq {background: var(--color-surface-primary);}
.bloc-faq .section-header {margin-bottom: var(--g-xlarge);}
.faq_wrapper {display: grid;gap: var(--g-small);max-width: var(--container-small);margin: 0 auto;}
.faq_item.carte {border: 1px solid var(--color-border-light);border-radius: var(--g-medium);overflow: hidden;cursor: pointer;transition: border-color var(--transition-fast);}
.faq_item.carte:hover {border-color: var(--color-accent-300);}
.faq_open {border-color: var(--color-accent-400);}
.faq_question {display: flex;align-items: center;justify-content: space-between;gap: var(--g-medium);padding: var(--g-medium);}
.faq_question h3 {font-size: var(--size-base);font-weight: var(--weight-semibold);color: var(--color-text-primary);margin: 0;flex: 1;padding-bottom: 0;}
.faq_icon {flex-shrink: 0;width: 2rem;height: 2rem;border-radius: 50%;background: var(--color-accent-100);display: flex;align-items: center;justify-content: center;color: var(--color-accent-600);transition: all var(--transition-fast);}
.faq_icon svg {transition: transform var(--transition-fast);}
.faq_open .faq_icon {background: var(--color-accent-600);color: #fff;}
.faq_open .faq_icon svg {transform: rotate(90deg);}
.faq_answer {max-height: 0;overflow: hidden;transition: max-height 0.4s ease, padding 0.3s ease;padding: 0 var(--g-large);}
.faq_open .faq_answer {max-height: 600px;padding: 0 var(--g-large) var(--g-large);}
.faq_answer p {font-size: var(--size-small);color: var(--color-text-muted);line-height: var(--lh-base);margin: 0;}

/* ============================================================
   BLOC CONVERSION (grande section foncée)
   ============================================================ */

.bloc-conversion {background: var(--gradient-dark);max-width: 100% !important;width: 100% !important;margin: 0 !important;padding: var(--g-xxlarge) 0;}
.bloc-conversion__inner {max-width: var(--container-width);width: 90%;margin: 0 auto;display: grid;gap: var(--g-xlarge);justify-items: center;text-align: center;}
.bloc-conversion .section-header {margin-bottom: 0;}
.bloc-conversion__texte, .section-introduction, .bloc-tarifs__complement, .bloc-tarifs__complement *:not(a) {font-size: var(--size-bigger);max-width: var(--container-narrow);margin: 0 auto;line-height: var(--lh-base);}


.bloc-conversion__texte, .bloc-banniere-cta:has(.bloc-tarifs):first-of-type .section-introduction, .bloc-banniere-cta:has(.bloc-tarifs):first-of-type .bloc-tarifs__complement, .bloc-banniere-cta:has(.bloc-tarifs):first-of-type .bloc-tarifs__complement *:not(a) {color: rgba(255,255,255,0.7);}
.bloc-conversion__encart {background: rgba(99,102,241,0.12);border: 1px solid rgba(99,102,241,0.25);border-radius: var(--g-medium);padding: var(--g-medium) var(--g-large);font-size: var(--size-small);color: var(--color-accent-300);max-width: 700px;text-align: center;}
.conversion-sous-blocs {display: grid;grid-template-columns: repeat(3, 1fr);gap: var(--g-large);width: 100%;max-width: var(--container-width);}
.conversion-sous-bloc {background: rgba(255,255,255,0.05);border: 1px solid rgba(255,255,255,0.08);border-radius: var(--g-xmedium);padding: var(--g-large);text-align: left;display: grid;gap: var(--g-small);transition: background var(--transition-base);}
.conversion-sous-bloc:hover {background: rgba(255,255,255,0.09);}
.sous-bloc__icone img {width: 2.5rem;height: 2.5rem;object-fit: contain;}
.sous-bloc__titre {font-size: var(--size-bigger);font-weight: var(--weight-semibold);color: var(--color-text-inverse);margin: 0;}
.sous-bloc__texte {font-size: var(--size-small);color: rgba(255,255,255,0.55);line-height: var(--lh-base);margin: 0;}

/* ============================================================
   BLOC IMAGE TEXTE 50/50
   ============================================================ */

.bloc-image-texte-50-50 {display: grid;gap: var(--g-xlarge);}
.bloc-double-columns {display: flex;gap: var(--g-xlarge);align-items: center;}
.bloc-double-columns .bloc-col-texte {flex: 1;/*position: sticky;top: calc(var(--header-height) + var(--g-large));align-self: flex-start;*/}
.bloc-double-columns .bloc-col-texte :is(h2, h3) {margin-bottom: var(--g-small);}
.bloc-double-columns .bloc-col-image {width: 50%;display: grid;gap: var(--g-medium);}
.bloc-double-columns .bloc-col-image .bloc-col-image-item img {aspect-ratio: 3/2;object-fit: cover;width: 100%;border-radius: var(--g-xmedium);box-shadow: rgb(255, 255, 255) 10px -10px 0px -3px, var(--color-violet-500) 10px -10px;border: 1px solid var(--color-accent-200);}
.bloc-image-texte-50-50 .bloc-col-cta {margin-top: var(--g-large);}
.bloc-double-columns .bloc-col-image,
.bloc-double-columns .bloc-col-texte {min-width: 0;}
.bloc-double-columns .bloc-col-image .swiper-container {width: 100%;min-width: 0;overflow: hidden;}
.bloc-double-columns .bloc-col-image .swiper-wrapper {min-width: 0;}
.bloc-double-columns .bloc-col-image .swiper-slide.bloc-col-image-item {min-width: 0;}

/* IMAGE GALERIE HOME */
.home .bloc-double-columns .bloc-col-image .bloc-col-image-item img {aspect-ratio: unset; border-radius: 0; box-shadow: none;}
.home .galerie-popup-inner img {aspect-ratio: unset; border-radius: 0; box-shadow: none;}


/* ============================================================
   GALERIE POPUP (lightbox partagé)
   ============================================================ */

.galerie-trigger { cursor: zoom-in; }
.galerie-popup-overlay {position: fixed;inset: 0;z-index: 999;background: rgba(11,16,32,0.92);display: flex;align-items: center;justify-content: center;/*padding: var(--g-xlarge);*/
  padding: var(--g-xxxlarge) var(--g-xlarge) var(--g-xlarge) var(--g-xlarge);}
.galerie-popup-overlay[hidden] { display: none; }
.galerie-popup-inner {position: relative;display: flex;align-items: center;gap: var(--g-large);max-width: var(--container-width);width: 100%;}
.galerie-popup-inner img {max-width: 100%;max-height: 85vh;width: auto;height: auto;margin: 0 auto;display: block;border-radius: var(--g-xmedium);box-shadow: var(--shadow-lg);}
.galerie-popup-prev,
.galerie-popup-next {flex-shrink: 0;width: 3rem;height: 3rem;border: 1.5px solid rgba(255,255,255,0.3);border-radius: 50%;background: rgba(255,255,255,0.08);color: #fff;display: flex;align-items: center;justify-content: center;cursor: pointer;transition: all var(--transition-fast);}
.galerie-popup-prev svg,
.galerie-popup-next svg { stroke: #fff; }
.galerie-popup-prev:hover,
.galerie-popup-next:hover {background: rgba(255,255,255,0.18);border-color: rgba(255,255,255,0.6);}
.galerie-popup-prev svg { transform: rotate(180deg); }
.galerie-popup-media {display: flex;flex-direction: column;align-items: center;gap: var(--g-medium);min-width: 0; /* évite l'overflow flex, cf. bug du carrousel bloc-image-texte */flex: 1;}
.galerie-popup-inner img {max-height: 80vh;}
.galerie-popup-caption {margin: 0;max-width: var(--container-narrow);text-align: center;font-size: var(--size-small);color: rgba(255,255,255,0.75);line-height: var(--lh-base);}


/* ============================================================
   BLOC WYSIWYG
   ============================================================ */

.bloc-wysiwyg {width: 60% !important;margin: var(--g-xlarge) auto;}

/* ============================================================
   BLOC GALERIE
   ============================================================ */

.bloc-galerie.galerie-grille, .bloc-galerie.galerie-masonry {display: grid;grid-template-columns: repeat(3, 1fr);gap: var(--g-medium);}
.bloc-galerie .image-gallery {width: 100%;aspect-ratio: 4/3;object-fit: cover;border-radius: var(--g-medium);}

/* ============================================================
   BLOC BANNIÈRE CTA
   ============================================================ */

.bloc-banniere-cta:has(.bloc-tarifs):first-of-type {background: var(--gradient-dark);}
.bloc-banniere-cta:has(.bloc-tarifs) .bloc-tarifs {margin: 0 auto!important;}
.bloc-banniere-cta:has(.bloc-tarifs):first-of-type .bloc-tarifs .section-titre {color: var(--color-text-inverse);}
.bloc-banniere-cta {text-align: center;}
.bloc-banniere-cta .bloc-cta-wrapper {display: flex;flex-wrap: wrap;justify-content: center;gap: var(--g-medium);}
.bloc-banniere {min-height: 380px;display: flex;align-items: center;justify-content: center;text-align: center;position: relative;background-position: center;background-repeat: no-repeat;background-size: cover;background: var(--gradient-dark);}
.bloc-banniere::before {content: '';position: absolute;inset: 0;background: linear-gradient(135deg,rgba(79,91,238,0.45) 0%,rgba(124,92,250,0.45) 100%);}
.bloc-banniere .banniere-message-cta {position: relative;z-index: 1;display: grid;gap: var(--g-large);max-width: 700px;width: 90%;margin: auto;padding: var(--g-xxlarge) 0;}
.bloc-banniere .banniere-texte {font-size: var(--size-bigger);color: var(--color-text-inverse);line-height: var(--lh-base);font-family: var(--font-italic);}
.bloc-banniere .banniere-titre {color: var(--color-text-inverse);}
.bloc-banniere .bloc-cta-wrapper {display: flex;flex-wrap: wrap;justify-content: center;gap: var(--g-medium);}

/* ============================================================
   BLOC NAVIGATION TRANSVERSE
   ============================================================ */

.bloc-navigation-transverse {display: grid;gap: var(--g-large);}
.bloc-navigation-transverse .custom-pages-wrapper.carousel {max-width: 100%;margin: 0;}
.custom-pages-wrapper.carousel .swiper-slide {height: auto;}
.custom-page-item {background: var(--color-surface-primary);border: 1px solid var(--color-border-light);border-radius: var(--g-xmedium);overflow: hidden;transition: box-shadow var(--transition-base), border-color var(--transition-fast);}
.custom-page-item:hover {box-shadow: var(--shadow-md);border-color: var(--color-accent-300);}
.custom-page-image img {display: block;width: 100%;aspect-ratio: 3/2;object-fit: cover;}
.custom-page-content {padding: var(--g-large);}
.custom-page-title h3 {font-size: var(--size-bigger);font-weight: var(--weight-semibold);margin: 0 0 var(--g-small);}
.custom-page-title h3 a {color: var(--color-text-primary);text-decoration: none;}
.custom-page-title h3 a:hover {color: var(--color-accent-600);}
.custom-page-excerpt {font-size: var(--size-small);color: var(--color-text-muted);margin: 0 0 var(--g-medium);}
.btn-en-savoir-plus, a.btn-en-savoir-plus {font-size: var(--size-meta);font-weight: var(--weight-semibold);color: var(--color-accent-600);text-decoration: none;}
.btn-en-savoir-plus:hover {color: var(--color-accent-700);}
.home .custom-pages-wrapper.grid {grid-template-columns: repeat(4, 1fr);}
.custom-pages-wrapper.grid {display: grid;grid-template-columns: repeat(3, 1fr);gap: var(--g-large);}
.custom-pages-wrapper.cartouches {display: grid;grid-template-columns: repeat(2, 1fr);gap: var(--g-medium);}
.navigation-transverse-card.carte a {display: flex;padding: var(--g-large);font-weight: var(--weight-semibold);color: var(--color-text-primary);text-decoration: none;}
.navigation-transverse-card.carte:hover a {color: var(--color-accent-600);}

/* ============================================================
   BLOC CONTACT
   ============================================================ */

.bloc-contact {display: grid;grid-template-columns: /*1fr */1fr;gap: var(--g-large);align-items: start;}
.bloc-contact-header {grid-column: 1 / -1;text-align: center;}
.bloc-contact-header .section-header {margin-bottom: 0;}
.bloc-contact-texte {font-size: var(--size-small);color: var(--color-text-muted);line-height: var(--lh-base);max-width: var(--container-narrow);margin: auto;  text-align: center;}
.bloc-contact-form {background: var(--color-surface-primary);border: 1px solid var(--color-border-light);border-radius: var(--g-xmedium);padding: var(--g-xlarge);box-shadow: var(--shadow-sm);max-width: var(--container-narrow);width: 100%;margin: auto;}

/* CF7 */
form.wpcf7-form {display: grid;gap: var(--g-medium);}
.wpcf7 .form-group {display: flex;flex-wrap: wrap;gap: var(--g-small);position: relative;}
.wpcf7 .half-width {display: grid;grid-template-columns: repeat(2, 1fr);gap: var(--g-medium);}
.form-fields {display: grid; gap: var(--g-small);}
.wpcf7 .form-fit-content {width: 120px;}
.form-flex, .form-group.form-flex div:last-of-type {flex:1;position: relative;}
.wpcf7 .full-width, .wpcf7 .full-width p, .wpcf7 .full-width div {width: 100%;box-sizing: border-box;text-align: left;}
input.text, input.title, input[type=email], input[type=password], input[type=tel], input[type=text], select, textarea, input[type=number], input[type=url] {width: 100%;height: var(--input-height);padding: 0 1rem;box-sizing: border-box;background: var(--color-surface-primary);border: 1.5px solid var(--color-border-medium);border-radius: var(--g-smedium);font-size: var(--size-base);font-family: var(--font-base);color: var(--color-text-primary);transition: border-color var(--transition-fast), box-shadow var(--transition-fast);}
input:focus, textarea:focus, select:focus {outline: none;border-color: var(--color-accent-500);box-shadow: var(--shadow-focus);}
textarea {height: auto;min-height: 140px;padding: 1rem;resize: vertical;}
.required-fields {margin-bottom: var(--g-medium);display: grid;gap: var(--g-xsmall);}
.required-fields .wpcf7-list-item {margin: 0;}
.required-fields .acceptance label span, .required-fields .acceptance label span * {line-height: 1!important;}
.required-fields label {display: flex;align-items: center;gap:var(--g-small);}
.required-fields input {font-size: 20px !important;  width: 1rem;  height: 1rem;  margin: 0;}
.required-fields * {font-size: 14px!important;line-height: 1.3!important;text-align: left;}
.wpcf7-form-control.wpcf7-submit {height: var(--btn-height);background: var(--gradient-accent);color: var(--color-text-inverse);border: none;border-radius: var(--g-smedium);font-size: var(--size-cta);font-weight: var(--weight-semibold);font-family: var(--font-base);cursor: pointer;padding: 0 2rem;transition: filter var(--transition-fast), box-shadow var(--transition-fast);}
.wpcf7-form-control.wpcf7-submit:hover {filter: brightness(1.08);box-shadow: var(--shadow-md);}

/* ============================================================
   SLIDER NAV (partagé)
   ============================================================ */

.slider-nav {display: flex;align-items: center;justify-content: center;gap: var(--g-xlarge);margin-top: var(--g-large);}
.swiper-button-next:after, .swiper-button-prev:after {display: none;}
.slider-nav .swiper-button {position: relative;width: 3rem;height: 3rem;border: 1.5px solid var(--color-border-medium);border-radius: 50%;background: var(--color-surface-primary);display: flex;align-items: center;justify-content: center;cursor: pointer;transition: all var(--transition-fast);margin: 0;top: auto;}
.slider-nav .swiper-button:hover {border-color: var(--color-accent-400);background: var(--color-accent-50);}
.slider-nav .swiper-button-prev svg {transform: rotate(180deg);}
.swiper-pagination {position: relative;display: flex;  gap: var(--g-xsmall);}
.swiper-pagination-bullet {background: var(--color-neutral-300);opacity: 1;width: 14px;height: 14px;}
.swiper-pagination-bullet-active {background: var(--color-accent-500);width: 24px;border-radius: var(--g-pill);}

/* ============================================================
   PUCES
   ============================================================ */

:is(.et_pb_text_inner, .et_pb_post_content, .bloc-wysiwyg, .article-content) :is(ul, ol) {margin: var(--g-medium) 0;padding: 0;}
:is(.et_pb_text_inner, .et_pb_post_content, .bloc-wysiwyg, .article-content) ul {list-style: none;}
:is(.et_pb_text_inner, .et_pb_post_content, .bloc-wysiwyg, .article-content) ol {list-style: decimal;}
:is(.et_pb_text_inner, .et_pb_post_content, .bloc-wysiwyg, .article-content) :is(ul, ol) li {position: relative;margin: 0.3rem 0;font-size: var(--size-small);color: var(--color-text-secondary);}
:is(.et_pb_text_inner, .et_pb_post_content, .bloc-wysiwyg, .article-content) ul li, :is(.et_pb_text_inner, .et_pb_post_content, .bloc-wysiwyg, .article-content) ol:not(.etapes-liste) {padding-left: 1.1rem;}
:is(.et_pb_text_inner, .et_pb_post_content, .bloc-wysiwyg, .article-content) ul li::before {content: '';position: absolute;left: 0;top: 0.45em;width: 8px;height: 8px;background: var(--gradient-accent);border-radius: 50%;}
ol.etapes-liste li::marker {content:'';}
:is(.et_pb_text_inner, .et_pb_post_content, .bloc-wysiwyg, .article-content) ol li::marker {color: var(--color-accent-500);font-weight: 700;}


/* Blockquote */
.article-content blockquote {margin: var(--g-large) 0;padding: var(--g-large) var(--g-large) var(--g-large) calc(var(--g-large) + 4px);background: var(--color-accent-50);border-left: 4px solid var(--color-accent-500);border-radius: 0 var(--g-medium) var(--g-medium) 0;}
.article-content blockquote p {margin: 0;font-size: var(--size-bigger);font-style: italic;color: var(--color-text-primary);font-family: var(--font-italic);}


/* ============================================================
   HEADER (Divi)
   ============================================================ */
#page-container .et-l.et-l--body .et_pb_text_0_tb_body .et_pb_text_inner:first-of-type > :first-child {display:none;}
#page-container .et_pb_section.pa-header {position: fixed;  width: 100%;  max-width: 100%;  background-color: transparent;  top: 1rem;  padding: 0;  margin: auto;  left: 50%;  translate: -50%;}
#page-container .et_pb_section.pa-header .et_pb_row {z-index: 3;--tw-backdrop-blur: blur(16px);backdrop-filter: blur(16px);background-color: #f0f3ff80;border: 1px solid var(--color-violet-200);padding: .75rem 1rem;border-radius: var(--g-medium);max-width: var(--container-wide);}

#page-container .et_pb_section.pa-header .et_pb_row .et_pb_menu {background: transparent;}
#page-container .et_pb_section.pa-header .et_pb_menu__logo img {height: 40px;}
#page-container .et_pb_section.pa-header .et_pb_menu_inner_container {display: flex;  justify-content: space-between;}
/*make the width of menu containers 100% wide to make room for the menu items to move*/

#page-container .et_pb_section.pa-header .et_pb_menu__menu, #page-container .et_pb_section.pa-header .et_pb_menu__menu > nav, #page-container .et_pb_section.pa-header .et_pb_menu__menu > nav > ul {width: 100%;}
#page-container .et_pb_section.pa-header .et_pb_menu__menu > nav > ul li:nth-child(4) {margin-left: auto;}
#page-container .et_pb_section.pa-header .et_pb_menu__wrap, #page-container .et_pb_section.pa-header .et_pb_menu__wrap .et-menu.nav {flex-wrap: nowrap !important;}
#page-container .et_pb_section.pa-header .et_pb_menu_inner_container .et-menu li {padding: 0!important;}
#page-container .et_pb_section.pa-header .et_pb_menu_inner_container .et-menu li>a {padding: .375rem 1rem !important;font-family: var(--font-title);  font-weight: var(--weight-regular);}


/*#page-container .et_pb_section.pa-header {background: rgba(17,24,45,0.92) !important;backdrop-filter: blur(12px);}
#page-container .et_pb_section.pa-fixed-header {background: rgba(17,24,45,0.97) !important;backdrop-filter: blur(16px);}
#page-container #et-boc .et_pb_section.pa-header .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a {color: rgba(255,255,255,0.8);font-size: 15px !important;font-weight: var(--weight-medium);padding: var(--g-small) var(--g-medium) !important;border-radius: var(--g-smedium);transition: all var(--transition-fast);}
#page-container #et-boc .et_pb_section.pa-header .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:hover {background: rgba(255,255,255,0.08);color: #fff;}
.et-menu a {color: rgba(255,255,255,0.8);font-weight: var(--weight-medium);}*/

/* ============================================================
   FOOTER
   ============================================================ */

.et-l.et-l--footer .et_pb_section {background: var(--color-brand-950);}
.et-l.et-l--footer .et_pb_row:first-child .et_pb_column:first-of-type {width:34%;padding-left: 0;}
.et-l.et-l--footer .et_pb_row:first-child .et_pb_column {width:22%;margin-right: 0;padding-left: var(--g-large);}
.et-l.et-l--footer .et_pb_row .et_pb_module.et_pb_widget_area {padding: 0;border: none;display: grid;gap: var(--g-medium);}
.et-l.et-l--footer .et_pb_row .et_pb_module .fwidget {margin: 0;width: 100%;font-size: var(--size-meta);color: rgba(255,255,255,0.85);}
.et-l.et-l--footer .et_pb_row .et_pb_module .wp-block-image {margin-bottom: 0px;}
.et-l.et-l--footer .et_pb_row .et_pb_module .wp-block-image img {height: 40px;}
.et-l.et-l--footer .et_pb_row .et_pb_module .fwidget li {margin-bottom: var(--g-xsmall);}
.et-l.et-l--footer .et_pb_row .et_pb_module .fwidget li a {color: rgba(255,255,255,0.85);font-size: var(--size-meta);}
.et-l.et-l--footer .et_pb_row .et_pb_module .fwidget li a:hover {color: var(--color-accent-300);}
.et-l.et-l--footer .et_pb_row:last-child {padding-bottom: 0;border-top: 1px solid;}
.et-l.et-l--footer .et_pb_row:last-child .et_pb_column {display: flex;justify-content: space-between;align-items: center;gap: var(--g-large);}

/* ============================================================
   GLOBAL HELPERS
   ============================================================ */

.df {display:flex;}
.f1 {flex:1;}
.aic {align-items:center;}
.jcc {justify-content:center;}
.jcsb {justify-content:space-between;}
.dif {display:inline-flex;}
.dn {display:none;}
.fdc {flex-direction:column;}
.tac {text-align:center;}
.tae {text-align:end;}
.ma {margin:auto;}
.wmc {width:max-content;}
.shortcode.et_pb_section, .shortcode.et_pb_section .et_pb_row {padding:0;}
.shortcode.et_pb_section, .shortcode.et_pb_section .et_pb_row {width:100%;max-width:100%;}

/* ============================================================
   TRANSITIONS GLOBALES
   ============================================================ */

#page-container .et_pb_section.pa-header,
#page-container .et_pb_section.pa-fixed-header,
.faq_icon,
.testimonial_item.carte,
.carte-fonctionnalite,
.custom-page-item,
.etape-item {transition: all 200ms cubic-bezier(0.6,0.05,0.01,0.99);}

/* ============================================================
   BLOG ARCHIVE — style.css (à ajouter à la suite du CSS Tyko)
   ============================================================ */

/* ——— LAYOUT GÉNÉRAL ——————————————————————————————— */

.blog-archive {margin: 0 auto;padding: 0 0 var(--g-xxlarge);display: flex;flex-direction: column;gap: var(--g-xxlarge);}

/* ——— EN-TÊTE ——————————————————————————————————————— */

.blog-archive__header {text-align: center;max-width: var(--container-narrow);margin: 0 auto;display: grid;gap: var(--g-medium);}
.blog-archive__titre {font-size: var(--size-h1);font-weight: var(--weight-extrabold);color: var(--color-text-primary);line-height: var(--lh-title);margin: 0;}
.blog-archive__intro {font-size: var(--size-bigger);color: var(--color-text-muted);line-height: var(--lh-base);margin: 0;}

/* ——— ARTICLE ÉPINGLÉ ————————————————————————————— */

.article-featured {display: grid;grid-template-columns: 1fr 1fr;gap: var(--g-xlarge);background: var(--color-surface-primary);border: 1px solid var(--color-border-light);border-radius: var(--g-large);overflow: hidden;box-shadow: var(--shadow-sm);}
.article-featured__visuel {display: block;overflow: hidden;}
.article-featured__visuel img {width: 100%;height: 100%;object-fit: cover;aspect-ratio: 3/2;display: block;transition: transform var(--transition-base);}
.article-featured:hover .article-featured__visuel img {transform: scale(1.03);}
.article-featured__content {display: flex;flex-direction: column;gap: var(--g-medium);padding: var(--g-large) var(--g-xlarge) var(--g-large) 0;justify-content: center;}
.article-featured__meta {display: flex;align-items: center;gap: var(--g-small);flex-wrap: wrap;}
.article-featured__titre {font-size: var(--size-h3);font-weight: var(--weight-bold);line-height: var(--lh-tight);margin: 0;}
.article-featured__titre a {color: var(--color-text-primary);text-decoration: none;}
.article-featured__titre a:hover {color: var(--color-accent-600);}
.article-featured__extrait {font-size: var(--size-small);color: var(--color-text-muted);line-height: var(--lh-base);margin: 0;}
.article-featured__tags {display: flex;flex-wrap: wrap;gap: var(--g-xsmall);}
.article-featured__footer {display: flex;align-items: center;justify-content: space-between;gap: var(--g-medium);padding-top: var(--g-medium);border-top: 1px solid var(--color-border-light);margin-top: auto;}
.article-featured__lire {font-size: var(--size-small);font-weight: var(--weight-semibold);color: var(--color-accent-600);text-decoration: none;}
.article-featured__lire:hover {color: var(--color-accent-700);}

/* ——— TAGS ——————————————————————————————————————— */

.article-tag {display: inline-flex;align-items: center;font-size: var(--size-meta);font-weight: var(--weight-medium);font-family: var(--font-base);padding: 0.2rem 0.65rem;border-radius: var(--g-pill);background: var(--color-neutral-100);color: var(--color-text-secondary);border: 1px solid var(--color-border-light);white-space: nowrap;width: fit-content;}
.article-tag:hover {background: var(--color-accent-100);color: var(--color-accent-700);border-color: var(--color-accent-200);}
.article-tag--featured {background: var(--gradient-accent);color: var(--color-text-inverse);border-color: transparent;}
.article-tag--featured:hover {filter: brightness(1.08);color: var(--color-text-inverse);}
.article-tag--primary {background: var(--color-accent-100);color: var(--color-accent-700);border-color: var(--color-accent-200);}
.article-tag--more {background: transparent;color: var(--color-text-muted);border-color: transparent;}

/* ——— META (date · lecture) ——————————————————————— */

.article-meta {font-size: var(--size-meta);color: var(--color-text-muted);white-space: nowrap;}

/* ——— BARRE DE FILTRE —————————————————————————————— */

.blog-filtre {display: flex;flex-direction: column;align-items: center;gap: var(--g-medium);}
.blog-filtre__label {font-size: var(--size-small);font-weight: var(--weight-semibold);color: var(--color-text-muted);text-align: center;}
.blog-filtre__boutons {display: flex;flex-wrap: wrap;gap: var(--g-small);justify-content: center;}
.blog-filtre__btn {display: inline-flex;align-items: center;gap: var(--g-xsmall);font-size: var(--size-meta);font-weight: var(--weight-medium);font-family: var(--font-base);padding: 0.45rem 1rem;border-radius: var(--g-pill);border: 1.5px solid var(--color-border-medium);background: var(--color-surface-primary);color: var(--color-text-secondary);text-decoration: none;transition: all var(--transition-fast);white-space: nowrap;}
.blog-filtre__btn:hover {border-color: var(--color-accent-400);color: var(--color-accent-600);background: var(--color-accent-50);}
.blog-filtre__btn--active {background: var(--gradient-accent);color: var(--color-text-inverse);border-color: transparent;box-shadow: var(--shadow-sm);}
.blog-filtre__btn--active:hover {filter: brightness(1.08);color: var(--color-text-inverse);}
.blog-filtre__count {font-size: 0.75rem;font-weight: var(--weight-bold);opacity: 0.7;}

/* ——— GRILLE D'ARTICLES ———————————————————————————— */

.blog-grille {display: grid;grid-template-columns: repeat(3, 1fr);gap: var(--g-large);}

/* ——— CARTE ARTICLE ————————————————————————————————— */

.article-card {background: var(--color-surface-primary);border: 1px solid var(--color-border-light);border-radius: var(--g-xmedium);overflow: hidden;display: flex;flex-direction: column;transition: box-shadow var(--transition-base), border-color var(--transition-fast);box-shadow: var(--shadow-xs);}
.article-card:hover {box-shadow: var(--shadow-md);border-color: var(--color-accent-200);}
.article-card__visuel {display: block;overflow: hidden;}
.article-card__visuel img {width: 100%;aspect-ratio: 16/9;object-fit: cover;display: block;transition: transform var(--transition-base);}
.article-card:hover .article-card__visuel img {transform: scale(1.03);}
.article-card__content {display: flex;flex-direction: column;gap: var(--g-small);padding: var(--g-large);flex: 1;}
.article-card__titre {font-size: var(--size-bigger);font-weight: var(--weight-semibold);line-height: var(--lh-tight);margin: 0;}
.article-card__titre a {color: var(--color-text-primary);text-decoration: none;}
.article-card__titre a:hover {color: var(--color-accent-600);}
.article-card__extrait {font-size: var(--size-small);color: var(--color-text-muted);line-height: var(--lh-base);margin: 0;flex: 1;}
.article-card__tags {display: flex;flex-wrap: wrap;gap: var(--g-xsmall);margin-top: auto;}
.article-card__footer {display: flex;align-items: center;justify-content: space-between;gap: var(--g-medium);padding-top: var(--g-medium);border-top: 1px solid var(--color-border-light);margin-top: var(--g-small);}
.article-card__lire {font-size: var(--size-meta);font-weight: var(--weight-semibold);color: var(--color-accent-600);text-decoration: none;}
.article-card__lire:hover {color: var(--color-accent-700);}

/* ——— PAGE VIDE ———————————————————————————————————— */

.blog-vide {text-align: center;color: var(--color-text-muted);font-size: var(--size-bigger);padding: var(--g-xxlarge) 0;}

/* ——— PAGINATION ——————————————————————————————————— */

.blog-pagination {display: flex;align-items: center;justify-content: space-between;gap: var(--g-medium);padding-top: var(--g-large);border-top: 1px solid var(--color-border-light);}
.blog-pagination__pages {display: flex;align-items: center;gap: var(--g-xsmall);}
.blog-pagination__btn {display: inline-flex;align-items: center;font-size: var(--size-small);font-weight: var(--weight-semibold);color: var(--color-text-secondary);text-decoration: none;padding: 0.5rem 1.25rem;border: 1.5px solid var(--color-border-medium);border-radius: var(--g-smedium);background: var(--color-surface-primary);transition: all var(--transition-fast);}
.blog-pagination__btn:hover {border-color: var(--color-accent-400);color: var(--color-accent-600);background: var(--color-accent-50);}
.blog-pagination__btn--disabled {opacity: 0.4;pointer-events: none;cursor: default;}
.blog-pagination__page {display: inline-flex;align-items: center;justify-content: center;width: 2.25rem;height: 2.25rem;font-size: var(--size-small);font-weight: var(--weight-medium);color: var(--color-text-secondary);text-decoration: none;border-radius: var(--g-smedium);border: 1.5px solid transparent;transition: all var(--transition-fast);}
.blog-pagination__page:hover {background: var(--color-accent-50);color: var(--color-accent-600);border-color: var(--color-accent-200);}
.blog-pagination__page--active {background: var(--gradient-accent);color: var(--color-text-inverse);border-color: transparent;font-weight: var(--weight-semibold);}
.blog-pagination__ellipsis {color: var(--color-text-muted);padding: 0 var(--g-xsmall);font-size: var(--size-small);}


/* ——— LAYOUT GÉNÉRAL ——————————————————————————————— */

.article-single {max-width: var(--container-width);width: 90%;margin: 0 auto;padding: var(--g-xxlarge) 0;display: flex;flex-direction: column;gap: var(--g-xlarge);}

/* ——— BREADCRUMB ——————————————————————————————————— */

.article-breadcrumb {display: flex;align-items: center;gap: var(--g-small);font-size: var(--size-meta);color: var(--color-text-muted);flex-wrap: wrap;}
.article-breadcrumb a {color: var(--color-text-muted);text-decoration: none;}
.article-breadcrumb a:hover {color: var(--color-accent-600);}
.article-breadcrumb__sep {color: var(--color-neutral-400);}

/* ——— EN-TÊTE ARTICLE ——————————————————————————————— */

.article-header {display: grid;grid-template-columns: 380px 1fr;gap: var(--g-xlarge);align-items: stretch;}
.article-header__col1 {align-self: stretch;min-height: 0; /* évite l'overflow en grid */
}

/* L'image dans col1 prend toute la hauteur disponible */
.article-header__col1 .article-cover {height: 100%;border-radius: var(--g-xmedium);overflow: hidden;}
.article-header__col1 .article-cover img {width: 100%;height: 100%;/* clé : l'image remplit toute la hauteur */object-fit: cover;aspect-ratio: unset; /* annule le ratio fixe défini précédemment */display: block;}

/* Col2 détermine la hauteur — elle doit avoir assez de contenu */
.article-header__col2 {display: flex;flex-direction: column;gap: var(--g-medium);justify-content: center;}


.article-header__meta {display: flex;align-items: center;gap: var(--g-small);flex-wrap: wrap;}
.article-header__tags {display: flex;flex-wrap: wrap;gap: var(--g-small);}
.article-header__titre {font-size: var(--size-h2);font-weight: var(--weight-extrabold);line-height: var(--lh-tight);color: var(--color-text-primary);margin: 0;}
.article-header__infos {display: flex;align-items: center;gap: var(--g-small);font-size: var(--size-meta);color: var(--color-text-muted);}
.article-meta__sep {color: var(--color-neutral-400);}
.article-header__meta {display: flex;align-items: center;flex-wrap: wrap;gap: var(--g-small);font-size: var(--size-meta);color: var(--color-text-muted);}
.article-meta {display: inline-flex;align-items: center;gap: 0.3rem;}
.article-meta svg {flex-shrink: 0;color: var(--color-neutral-400);}
.article-meta--auteur {font-weight: var(--weight-medium);color: var(--color-text-secondary);}
.article-meta--modif  {font-style: italic;}
.article-meta__sep    {color: var(--color-neutral-300);}

/* ——— IMAGE À LA UNE ———————————————————————————————— */

.article-cover {border-radius: var(--g-xmedium);overflow: hidden;box-shadow: var(--shadow-md);}
.article-cover img {display: block;width: 100%;aspect-ratio: 2/1;object-fit: cover;}
.article-resume {font-size: var(--size-bigger);color: var(--color-text-secondary);line-height: var(--lh-base);margin: 0;font-weight: var(--weight-light);}

/* ——— RÉSUMÉ IA ——————————————————————————————————————— */

.resume-ai {background: var(--color-surface-secondary);border: 1px solid var(--color-border-light);border-radius: var(--g-xmedium);padding: var(--g-small) 1.25rem;display: flex;flex-direction: row;gap: var(--g-medium);width: fit-content;margin: -1rem auto;align-items: center;}
.resume-ai__label {font-size: var(--size-small);font-weight: var(--weight-semibold);font-family: var(--font-title);color: var(--color-text-secondary);letter-spacing: 0.06em;width: fit-content;}
.resume-ai__services {display: flex;flex-wrap: wrap;gap: var(--g-small);width: fit-content;}
.resume-ai__btn {display: inline-flex;flex-direction: column;align-items: center;gap: 0.375rem;padding: var(--g-small);border: 1.5px solid transparent;border-radius: var(--g-smedium);text-decoration: none;transition: all var(--transition-fast);position: relative;}
.resume-ai__btn::before {content: "Résumer avec " attr(data-ai);position: absolute;bottom: calc(100% + 8px);left: 50%;transform: translateX(-50%);background: var(--color-brand-900);color: var(--color-text-inverse);font-size: 0.75rem;font-weight: var(--weight-medium);white-space: nowrap;padding: 0.35rem 0.75rem;border-radius: var(--g-pill);opacity: 0;pointer-events: none;transition: opacity var(--transition-fast), transform var(--transition-fast);transform: translateX(-50%) translateY(4px);}
.resume-ai__btn:hover::before {opacity: 1;transform: translateX(-50%) translateY(0);}
.resume-ai__btn:hover {border-color: var(--color-accent-300);box-shadow: var(--shadow-sm);background: var(--color-surface-primary);border: 1.5px solid var(--color-border-light);box-shadow: var(--shadow-xs);}
.resume-ai__icon {display: flex;align-items: center;justify-content: center;width: 1.25rem;height: 1.25rem;}
.resume-ai__icon svg {width: 1.25rem;height: 1.25rem;}
.resume-ai__name {font-size: 0.75rem;font-weight: var(--weight-medium);color: var(--color-text-secondary);text-align: center;white-space: nowrap;}
.resume-ai__note {font-size: 0.75rem;color: var(--color-text-muted);margin: 0;font-style: italic;width: 380px;}

/* Toast */
.ai-toast {position: fixed;bottom: var(--g-large);left: 50%;transform: translateX(-50%) translateY(8px);background: var(--color-brand-900);color: var(--color-text-inverse);font-size: var(--size-meta);font-weight: var(--weight-medium);padding: 0.5rem 1.25rem;border-radius: var(--g-pill);opacity: 0;pointer-events: none;transition: opacity var(--transition-fast), transform var(--transition-fast);z-index: 9999;}
.ai-toast.is-visible {opacity: 1;transform: translateX(-50%) translateY(0);}


/* ——— LAYOUT CORPS : sidebar TOC + contenu ————————— */

.article-layout {display: grid;grid-template-columns: 260px 1fr;gap: var(--g-xxlarge);align-items: start;line-height: var(--lh-tight);  padding-top: var(--g-xlarge);  border-top: 1px solid var(--color-border-light);}

/* ——— TABLE DES MATIÈRES ———————————————————————————— */

.article-toc {position: sticky;top: calc(var(--header-height) + var(--g-large));}
.article-toc__inner {background: var(--color-surface-secondary);border: 1px solid var(--color-border-light);border-radius: var(--g-medium);padding: var(--g-large);display: flex;flex-direction: column;gap: var(--g-medium);}
.article-toc__titre {font-size: var(--size-small);font-weight: var(--weight-semibold);font-family: var(--font-title);color: var(--color-text-primary);margin: 0;text-transform: uppercase;letter-spacing: 0.06em;}
.article-toc__liste {list-style: none;margin: 0;padding: 0;display: flex;flex-direction: column;gap: 0.1rem;}
.article-toc__item a {display: block;font-size: var(--size-meta);color: var(--color-text-muted);text-decoration: none;padding: 0.3rem 0;border-left: 2px solid transparent;padding-left: var(--g-small);line-height: var(--lh-tight);transition: color var(--transition-fast), border-color var(--transition-fast);}
.article-toc__item a:hover {color: var(--color-accent-600);border-left-color: var(--color-accent-400);}
.article-toc__item--h3 a {padding-left: calc(var(--g-small) + var(--g-medium));font-size: 0.8125rem;}

/* TOC active state (JS optionnel) */
.article-toc__item.is-active a {color: var(--color-accent-600);border-left-color: var(--color-accent-500);font-weight: var(--weight-medium);}

/* ——— CONTENU DE L'ARTICLE ————————————————————————— */

.article-content {min-width: 0; /* évite overflow dans grid */
  font-size: var(--size-base);line-height: var(--lh-base);color: var(--color-text-secondary);}

/* Typographie du contenu */
.article-content h2 {font-size: var(--size-h3);font-weight: var(--weight-bold);color: var(--color-text-primary);margin: var(--g-large) 0 var(--g-medium);line-height: var(--lh-tight);}
.article-content h2:first-child {margin-top: 0;border-top: none;padding-top: 0;}
.article-content h3 {font-size: var(--size-h4);font-weight: var(--weight-semibold);color: var(--color-text-primary);margin: var(--g-large) 0 var(--g-medium);line-height: var(--lh-tight);}
.article-content p {margin: 0 0 var(--g-large);color: var(--color-text-secondary);}
.article-content a {color: var(--color-accent-600);text-decoration: underline;text-underline-offset: 3px;}
.article-content a:hover {color: var(--color-accent-700);}
.article-content strong, .article-content b {font-weight: var(--weight-semibold);color: var(--color-text-primary);}
.article-content em {font-style: italic;}


/* Code inline */
.article-content code {font-family: 'Courier New', Courier, monospace;font-size: 0.875em;background: var(--color-neutral-100);border: 1px solid var(--color-border-light);border-radius: 4px;padding: 0.15em 0.4em;color: var(--color-accent-700);}

/* Code bloc */
.article-content pre {background: var(--color-brand-900);border-radius: var(--g-medium);padding: var(--g-large);overflow-x: auto;margin: 0 0 var(--g-large);}
.article-content pre code {background: none;border: none;padding: 0;color: var(--color-accent-200);font-size: var(--size-small);}

/* Images dans le contenu */
.article-content img {max-width: 100%;height: auto;border-radius: var(--g-medium);display: block;margin: var(--g-large) auto;box-shadow: var(--shadow-sm);}

/* Tableaux */
.article-content table {width: 100%;border-collapse: collapse;margin: 0 0 var(--g-large);font-size: var(--size-small);}
.article-content th {background: var(--color-neutral-100);font-weight: var(--weight-semibold);color: var(--color-text-primary);text-align: left;padding: var(--g-small) var(--g-medium);border-bottom: 2px solid var(--color-border-medium);}
.article-content td {padding: var(--g-small) var(--g-medium);border-bottom: 1px solid var(--color-border-light);color: var(--color-text-secondary);}
.article-content tr:last-child td {border-bottom: none;}
.article-content tr:hover td {background: var(--color-neutral-50);}

/* ——— TAGS (bas d'article) ——————————————————————————— */

.article-tags {display: flex;flex-wrap: wrap;gap: var(--g-small);margin: var(--g-xlarge) 0 0;padding-top: var(--g-large);border-top: 1px solid var(--color-border-light);}

/* ——— NAVIGATION PREV / NEXT ————————————————————————— */

.article-nav {display: grid;grid-template-columns: 1fr 1fr;gap: var(--g-large);margin-top: var(--g-xlarge);padding-top: var(--g-large);border-top: 1px solid var(--color-border-light);}
.article-nav__btn {display: flex;flex-direction: column;gap: var(--g-xsmall);padding: var(--g-large);background: var(--color-surface-secondary);border: 1px solid var(--color-border-light);border-radius: var(--g-medium);text-decoration: none;transition: all var(--transition-fast);}
.article-nav__btn:hover {border-color: var(--color-accent-300);background: var(--color-accent-50);box-shadow: var(--shadow-sm);}
.article-nav__btn--next {text-align: right;}
.article-nav__dir {font-size: var(--size-meta);color: var(--color-accent-600);font-weight: var(--weight-semibold);}
.article-nav__label {font-size: var(--size-small);color: var(--color-text-primary);font-weight: var(--weight-medium);line-height: var(--lh-tight);display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;}

/* ——— ARTICLES LIÉS ————————————————————————————————— */

.article-related {border-top: 1px solid var(--color-border-light);padding-top: var(--g-xlarge);display: flex;flex-direction: column;gap: var(--g-xlarge);}
.article-related__titre {font-size: var(--size-h3);font-weight: var(--weight-bold);color: var(--color-text-primary);margin: 0;}
.article-related__grille {display: grid;grid-template-columns: repeat(3, 1fr);gap: var(--g-large);}
.et_pb_scroll_top.et-pb-icon {display: inline;  border-radius: var(--g-xmedium);  background: var(--color-accent-600);  right: 0.35rem;}


/* ============================================================
   CONTENU WYSIWYG
   ============================================================ */

.bloc-contenu-wysiwyg {max-width: var(--container-width);margin: var(--g-xlarge) auto;}
.bloc-contenu-wysiwyg__inner {padding: var(--g-xlarge);color: var(--color-text-primary);line-height: 1.7;}
.bloc-contenu-wysiwyg__inner h2,
.bloc-contenu-wysiwyg__inner h3,
.bloc-contenu-wysiwyg__inner h4 {margin-top: var(--g-large);margin-bottom: var(--g-medium);font-weight: var(--weight-bold);}
.bloc-contenu-wysiwyg__inner p {margin-bottom: var(--g-medium);}
.bloc-contenu-wysiwyg__inner a {color: var(--color-accent-600);text-decoration: underline;}
.bloc-contenu-wysiwyg__inner a:hover {color: var(--color-accent-700);}
.bloc-contenu-wysiwyg__inner ul,
.bloc-contenu-wysiwyg__inner ol {margin-left: var(--g-large);margin-bottom: var(--g-medium);}

/* ============================================================
   HERO - GABARIT STANDARD
   ============================================================ */

.gabarit-standard .bloc-hero {min-height: clamp(420px, 30vh, 900px);}

/* ============================================================
   HERO - LIGHT VARIANT (pour pages catégories)
   ============================================================ */

.bloc-hero--light {background: var(--color-neutral-25);}
.bloc-hero--light .bloc-hero__inner {padding: var(--g-xxxlarge) 0 var(--g-xlarge);}
.bloc-hero--light h1 {color: var(--color-text-primary);}

/* ============================================================
   HEADER - INVERSION SUR FOND SOMBRE
   ============================================================ */

#page-container .et_pb_section.pa-header .et_pb_row,
#page-container .et_pb_section.pa-header .et_pb_menu__logo img,
#page-container .et_pb_section.pa-header .et-menu a,
#page-container .et_pb_section.pa-header .et_pb_menu_inner_container .et-menu li>a {transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, filter 0.3s ease;}

#page-container .et_pb_section.pa-header.pa-header--on-dark .et_pb_row {background-color: rgba(17,24,45,0.45);border-color: rgba(255,255,255,0.1);}
#page-container .et_pb_section.pa-header.pa-header--on-dark .et_pb_menu_inner_container .et-menu li>a {color: rgba(255,255,255,0.85) !important;border-radius: var(--g-smedium) !important;}
#page-container .et_pb_section.pa-header.pa-header--on-dark .et_pb_menu_inner_container .et-menu li>a:hover {color: #fff !important;background: rgba(255,255,255,0.08);}
#page-container .et_pb_section.pa-header.pa-header--on-dark .et_pb_menu__logo img {filter: brightness(0) invert(1);}

/* ============================================================
   TARIFS — Grille tarifaire avec toggle mensuel/annuel
   ============================================================ */

.bloc-tarifs {padding: var(--g-xlarge) 0;}
.bloc-tarifs__toggle {display: flex;justify-content: center;padding: var(--g-small);background: var(--color-neutral-50);width: fit-content;margin: 0 auto var(--g-xlarge);border-radius: var(--g-xlarge);flex-wrap: wrap;}
.bloc-tarifs__toggle-label {position: relative;display: inline-flex;align-items: center;gap: 8px;cursor: pointer;}
.bloc-tarifs__toggle-input {position: absolute;opacity: 0;cursor: pointer;width: 0;height: 0;}
.bloc-tarifs__toggle-option {line-height: 1;padding: .75rem 1rem;font-size: 1.1rem;border-radius: var(--g-xlarge);/*padding: 12px 28px;border: 2px solid var(--color-neutral-300);background: #fff;color: var(--color-text-primary);font-weight: 600;border-radius: 24px;transition: all 0.3s ease;font-size: 14px;display: inline-block;*/display: flex;align-items: center;gap: var(--g-xsmall);flex-direction: row;}
.bloc-tarifs__toggle-input:checked + .bloc-tarifs__toggle-option {background: var(--color-accent-500);color: #fff;/*background: var(--color-accent-500);color: #fff;border-color: var(--color-accent-500);*/}
.bloc-tarifs__toggle-label:hover .bloc-tarifs__toggle-option {/*border-color: var(--color-accent-500);*/}
.bloc-tarifs__toggle-badge {display: inline-block;background: var(--color-promotion);color: #fff;padding: 6px 12px;border-radius: var(--g-xlarge);font-size: 12px;line-height: 1.1;font-weight: 700;text-transform: uppercase;letter-spacing: 0.3px;margin-left: 4px;white-space: nowrap;}
.tarifs-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));gap: var(--g-large);max-width: 1280px;margin: 0 auto var(--g-xlarge);}
.carte-offre {display: flex;flex-direction: column;background: #fff;border: 2px solid var(--color-neutral-200);border-radius: 12px;padding: var(--g-large);position: relative;transition: all 0.3s ease;}
.carte-offre:not(.carte-offre--active) .carte-offre__cta-check {display: none;}
.carte-offre:hover, .carte-offre.carte-offre--active {border-color: var(--color-accent-500);box-shadow: 0 12px 32px rgba(99, 102, 241, 0.12);}
.carte-offre.carte-offre--active {background: var(--color-accent-50);}
.carte-offre__nav-cta {display: block;  opacity: 0;  max-height: 0;  overflow: hidden;  transform: translateY(-6px);  margin-top: 0;  pointer-events: none;  transition: opacity .35s ease, transform .35s ease, max-height .35s ease, margin-top .35s ease;justify-content: center;width: 100%;}
.carte-offre--active .carte-offre__nav-cta {opacity: 1;  max-height: var(--g-xlarge);  transform: translateY(0);  margin-top: var(--g-medium);  pointer-events: auto;}


.carte-offre--highlight {border-color: var(--color-accent-500);background: var(--color-accent-50);box-shadow: 0 12px 32px rgba(99, 102, 241, 0.16);}
.carte-offre--highlight:hover {box-shadow: 0 16px 40px rgba(99, 102, 241, 0.2);}
.carte-offre__badge {position: absolute;top: -12px;left: 50%;transform: translateX(-50%);background: var(--color-accent-500);color: #fff;padding: 8px 16px;border-radius: 20px;font-size: 12px;font-weight: 700;text-transform: uppercase;letter-spacing: 0.5px;}
.carte-offre__titre {margin: 0 0 8px 0;font-size: 28px;font-weight: 700;color: var(--color-text-primary);font-family: var(--font-title);text-align: left;}
.carte-offre__cibles {margin: 0 0 24px 0;font-size: 14px;color: var(--color-text-secondary);line-height: 1.6;text-align: left;}
.carte-offre__prix-container {margin-bottom: 16px;text-align: left;}
.carte-offre__reduction--annual {display: flex;align-items: center;gap: var(--g-small);margin-bottom: 12px;padding: 0;background: transparent;text-align: left;}
.tarif-sans-reduction {font-size: 18px;font-weight: 600;color: var(--color-text-secondary);text-decoration: line-through;text-decoration-thickness: 2px;text-decoration-color: var(--color-promotion);}
.reduction-badge {background: var(--color-promotion-background);color: var(--color-promotion);padding: 0px 6px;border-radius: 6px;font-size: 12px;font-weight: 700;text-transform: uppercase;letter-spacing: 0.5px;}
.carte-offre__prix {display: flex;flex-direction: column;gap: 4px;align-items: start;}
.carte-offre__prix--monthly {display: flex;flex-direction: column;align-items: baseline;gap: 8px;margin-bottom: 0;}
.carte-offre__prix--annual {display: flex;flex-direction: column;gap: 8px;}
.carte-offre__prix-mensuel {display: flex;flex-direction: row;align-items: end;}
.prix-montant {font-size: 52px;font-weight: 700;color: var(--color-accent-600);line-height: 1;}
.prix-a-partir-de, .prix-unite {font-size: 16px;color: var(--color-text-secondary);font-weight: 500;}
.prix-annuel-label {font-size: 13px;color: var(--color-text-secondary);font-weight: 500;margin-top: 4px;}
.reduction-label {font-weight: 500;opacity: 0.95;}
.reduction-montant {font-weight: 700;display: inline;margin: 0 2px;}
.reduction-pct {font-size: 18px;font-weight: 700;display: block;margin-bottom: 2px;}
.carte-offre__cta {width: 100%;justify-content: center;margin-bottom: 1.5rem;/*padding: 14px 20px;background: var(--color-accent-500);color: #fff;border: none;border-radius: 8px;font-weight: 600;cursor: pointer;transition: all 0.3s ease;font-size: 14px;text-transform: uppercase;letter-spacing: 0.5px;*/}

/*.carte-offre__cta:hover {background: var(--color-accent-600);transform: scale(1.02);}
.carte-offre--highlight .carte-offre__cta {background: var(--color-accent-600);}*/

.carte-offre__features {flex: 1;}
.carte-offre__features ul {list-style: none;padding: 0;margin: 0;}
.carte-offre__features li {font-size: 14px;color: var(--color-text-secondary);line-height: 1.6;display: flex;align-items: flex-start;gap: 12px;text-align: left;padding-left: 0!important;}
.carte-offre__features li::before {content: none!important;}
.carte-offre__features li svg {flex-shrink: 0;width: 20px;height: 20px;stroke: var(--color-promotion);stroke-width: 2.5;margin-top: 2px;}
.carte-offre__features li span:has(.picto-ia) {display: flex;  align-items: center;  gap: var(--g-xsmall);}
.carte-offre__features li .picto-ia {height: 20px;  width: 20px;}
.carte-offre__features li .picto-ia::after {content:url('/wp-content/uploads/2026/07/assistance_ia-20.svg');}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media all and (max-width: 1440px) {
.bloc-carrousel-logos__item {padding: var(--g-medium) var(--g-medium);}
}

@media all and (max-width: 1280px) {.chiffres-grid {grid-template-columns: repeat(3, 1fr);}
.cartes-grid {grid-template-columns: repeat(2, 1fr);}
.conversion-sous-blocs {grid-template-columns: repeat(3, 1fr);}
}

@media all and (max-width: 1024px) {:root{	--g-large: 1.75rem;	--g-xxlarge: 5rem;}

.cartes-grid {grid-template-columns: repeat(2, 1fr);}
.etapes-liste {grid-template-columns: 1fr;}
.bloc-contact {grid-template-columns: 1fr;}
.bloc-double-columns:nth-child(odd) {flex-direction: column-reverse;}
.bloc-double-columns:nth-child(even) {flex-direction: column;}
.bloc-double-columns .bloc-col-image {width: 100%;}
.temoignages-grid {grid-template-columns: 1fr;}
.custom-pages-wrapper.grid {grid-template-columns: repeat(2, 1fr);}
.blog-grille {grid-template-columns: repeat(2, 1fr);}
.article-featured {grid-template-columns: 1fr;}
.article-featured__content {padding: var(--g-large);}
.article-featured__visuel img {aspect-ratio: 16/9;}
.article-layout {grid-template-columns: 1fr;}
.article-toc {position: static;order: -1; /* passe au-dessus du contenu sur mobile */}
.article-related__grille {grid-template-columns: repeat(2, 1fr);}
.article-header {grid-template-columns: 1fr;}
.article-header__col1 .article-cover img {aspect-ratio: 16/9;height: auto;}
.chiffre-prefixe, .chiffre-suffixe {font-size: clamp(1rem, 1.5vw, 1.5rem);}
.bloc-carrousel-logos__list {grid-template-columns: repeat(5, minmax(0, 1fr));}
	
}

@media all and (max-width: 768px) {:root {--size-h1: clamp(3rem, 5vw, 3.5rem);  --size-h2: clamp(2rem, 3.5vw, 2.75rem);  --size-h3: clamp(1.35rem, 2.4vw, 2.15rem);  --size-h4: clamp(1.15rem, 1.6vw, 1.5rem);}
.bloc-hero h1 {letter-spacing: -0.8px;}
.cartes-grid {grid-template-columns: repeat(2, 1fr);}
.chiffres-grid {/*grid-template-columns: repeat(2, 1fr);*/flex-wrap: wrap;}
.conversion-sous-blocs {grid-template-columns: 1fr;}
.custom-pages-wrapper.grid {grid-template-columns: 1fr;}
.custom-pages-wrapper.cartouches {grid-template-columns: 1fr;}
.bloc-contact {grid-template-columns: 1fr;}
.bloc-contact-form {padding: var(--g-large);}
.wpcf7 .half-width {grid-template-columns: 1fr;}
.bloc-flexible:not(.bloc-hero):not(.bloc-chiffres-cles):not(.bloc-conversion):not(.bloc-banniere-cta):not(:has(.bloc-banniere)) {margin: var(--g-xlarge) auto;}
.section-header {margin-bottom: var(--g-large);}
.etape-item {flex-direction: column;gap: var(--g-medium);}
.blog-grille {grid-template-columns: 1fr;}
.blog-filtre__boutons {gap: var(--g-xsmall);}
.blog-pagination {flex-wrap: wrap;justify-content: center;}
.blog-pagination__pages {order: -1;width: 100%;justify-content: center;}
.article-header__titre {font-size: var(--size-h3);}
.article-cover img {aspect-ratio: 16/9;}
.article-nav {grid-template-columns: 1fr;}
.article-related__grille {grid-template-columns: 1fr;}
.article-content h2 {font-size: var(--size-h4);}
.resume-ai__services {gap: var(--g-small);}
.resume-ai__btn {padding: var(--g-small) var(--g-medium);min-width: 64px;}
.resume-ai__icon svg {width: 1.5rem;height: 1.5rem;}
.bloc-etapes:has(.etapes-liste--count-6) :is(.section-header, .etapes-liste) {flex: 1;}
}

@media all and (max-width: 480px) {:root {--size-h1: clamp(2.2rem, 5vw, 3.5rem);  --size-h2: clamp(1.75rem, 3.5vw, 2.75rem);  --size-h3: clamp(1.25rem, 2.4vw, 2.15rem);  --size-h4: clamp(1.15rem, 1.6vw, 1.5rem);	--size-bigger: 1.05rem;	--g-large: 1.25rem;	--g-xxlarge: 4rem;	--g-xxxlarge: 7rem;}
.bloc-flexible.bloc-accroche {font-size: clamp(1.3rem, 2.8vw, 2.2rem);}
.chiffres-grid {grid-template-columns: repeat(2, 1fr);display: grid;gap: var(--g-medium);}
.cartes-grid {grid-template-columns: repeat(1, 1fr);}
.bloc-carrousel-logos__list {grid-template-columns: repeat(2, minmax(0, 1fr));}
.bloc-hero__inner {padding: var(--g-xxxlarge) 0 var(--g-xlarge);}
.hero-label {margin-bottom: 0;}
a.cta, .bloc-cta-wrapper {width: 100%;justify-content: center;}
.blog-archive {gap: var(--g-xlarge);}
.blog-filtre__btn {font-size: 0.75rem;padding: 0.35rem 0.75rem;}
.article-single {gap: var(--g-large);}
.article-nav__btn {padding: var(--g-medium);}
:is(.bloc-temoignages, .bloc-etapes) .section-header { width: 90%;}
.slider-nav {justify-content: space-between;gap: var(--g-medium);}
.et-l.et-l--footer .et_pb_section {padding: var(--g-medium) 0;}
.et-l.et-l--footer .et_pb_row:first-child .et_pb_column {padding-left: 0;}
#page-container #et-boc .et_pb_section.pa-header li > a, #page-container #et-boc .et_pb_section.pa-fixed-header li > a {border-radius: var(--g-smedium) !important;height: var(--btn-height) !important;}
#page-container #et-boc .et_pb_section.pa-header li.cta.primary > a {width: 100%; justify-content: center; color: var(--color-text-inverse)!important;}
.bloc-wysiwyg {width: 90% !important;}
.bloc-tarifs__toggle {width: 100%;}
.bloc-tarifs__toggle-option {padding: .25rem .65rem;}
.wpcf7 .form-fit-content, .wpcf7-form-control.wpcf7-submit {width: 100%;}
.wpcf7 .form-group {flex-direction: column;}
.wpcf7 .form-group strong {font-size: 14px;}
.wpcf7 .half-width {gap: var(--g-small);}
.gabarit-standard .bloc-hero {min-height: clamp(350px, 30vh, 840px);}
.bloc-contenu-wysiwyg__inner {padding: 0;}
.bloc-etapes:has(.etapes-liste--count-6) {flex-direction: column;padding:var(--g-xxlarge) 0!important;gap: var(--g-medium);}	
.bloc-etapes:has(.etapes-liste--count-6) .section-header {position: relative;top: unset;}
.bloc-etapes:has(.etapes-liste--count-6) .section-header {margin-bottom: var(--g-medium);}
	.bloc-etapes:has(.etapes-liste--count-6) :is(.section-header, .etapes-liste) {gap: var(--g-medium);}
	.bloc-etapes:has(.etapes-liste--count-6) .etape-item-wrap {margin: 0;}
}



