/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/

/* Site prévu en clair uniquement : demande aux navigateurs de ne pas forcer un mode sombre automatique */
:root { color-scheme: only light; }

/* VARIABLES */
:root { 
  --ww-container-max: 1440px; 
  --ww-gutter-desktop: 40px; 
  --ww-gutter-tablet: 24px; 
  --ww-gutter-mobile: 20px;
  --font-accent: "Lora", serif;
  --font-text: "Montserrat", sans-serif; 
  --red:#E6253D; 
  --c-text:#1D1D1B;
}

/* BASE ET LAYOUT GLOBAL */
body, html { font-family: "Montserrat", sans-serif; color: var(--c-text); overflow-x: hidden;}
body .ww-container { position: relative; width: calc(100% - (var(--ww-gutter-desktop) * 2)); max-width: var(--ww-container-max); margin-inline: auto; background-color: transparent; background: transparent; }
.ww-badge { display: inline-flex; align-items: center; justify-content: center; font-family: inherit; font-size: 12px; font-weight: 600; line-height: 1; text-transform: uppercase; white-space: nowrap; }
.red { color: var(--red); }
.semi-accent { color: var(--red); font-weight: 600; }
.c-text{color:var(--c-text);}
.lora{font-family: "Lora", serif;}
.btn-ww-red { background-color: var(--color-accent); border-radius: 115px; font-family: "Montserrat", sans-serif; font-size: 14px; font-weight: 500; color: white; }

.ww-h2{font-family: "Montserrat", sans-serif;  color: var(--c-text); font-size:40px; line-height: 56px; font-weight:400;}
.ww-h2 span, .lora-50{font-family: "Lora", serif; color: var(--red); font-weight:600; font-size:50px; }
.lora-60{font-family: "Lora", serif; color: var(--red); font-weight:600; font-size:60px; }

  .desktop { display: block; }
  .mobile {display: none;}

.ww-h1 {font-family:var(--font-text);font-size:50px;line-height:64px;font-weight:400;}
.ww-h1 .mark {font-family:var(--font-accent);font-size:60px;font-weight:600;}
.ww-h2 {font-family:var(--font-text);font-size:40px;line-height:56px;font-weight:400;}
.ww-h2 .mark {font-family:var(--font-accent);font-size:50px;font-weight:600;}
.ww-h3 {font-family:var(--font-text);font-size:24px;line-height:32px;font-weight:600;}
.ww-text {font-size:20px;line-height:32px;font-weight:400;}
.ww-preheading {font-family:var(--font-text);font-size:14px;line-height:14px;font-weight:700;text-transform:uppercase;}
.ww-kpi {font-family:var(--font-text);font-size:24px;line-height:24px;font-weight:600;}

/* WILSON WEB — CTA SVG ANIMÉ */

.ww-cta-outline { position: relative; isolation: isolate; --ww-outline-color: #fff; }
/* grossi au survol (cursor.js) : il passe devant ses voisins, comme la mascotte de Branding */
.ww-cta-outline:hover { z-index: 20; }

.ww-cta-outline .ww-cta-svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }

.ww-cta-outline .ww-cta-svg rect { fill: none; stroke: var(--ww-outline-color); stroke-width: 1.5; vector-effect: non-scaling-stroke; }
.ww-cta-outline .ww-cta-text { display: inline-block; position: relative; transform: translateX(0); transition: transform 450ms cubic-bezier(.22,1,.36,1); }
.ww-cta-outline:hover .ww-cta-text { transform: translateX(2px); }
.ww-cta-outline:focus-visible .ww-cta-text { transform: translateX(2px); }

@media (prefers-reduced-motion: reduce) {.ww-cta-outline .ww-cta-text { transition: none; }}

.ww-cta-outline--dark { --ww-outline-color: #1D1D1B; }
.ww-cta-outline--light { --ww-outline-color: #fff; }

@media (prefers-reduced-motion: reduce) {.ww-cta-outline .ww-cta-svg rect { transition: none; }}


/*
Ajout des classes sur les boutons 

Bouton rouge ou noir : ww-cta-outline ww-cta-outline--light
Bouton blanc : ww-cta-outline ww-cta-outline--dark

*/

/* Circles */

.circle-red{position:relative;display:inline-block;width:fit-content;isolation:isolate;}
.circle-red::before{content:"";position:absolute;z-index:-1;inset:-6px -10px;left:-4px;right:-15px;background:url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/09/circle-red-2.svg") center/100% 100% no-repeat;pointer-events:none;}

/* CERCLE ANIMÉ */
.animated-circle { position:relative; display:inline-flex; align-items:center; justify-content:center; width:fit-content; height:fit-content; padding:10px; }
.animated-circle-text, .animated-circle-text-red, .team-badge { position:relative; display:block; white-space:nowrap; }
/* variante rouge : le même gribouillis (scribble.js), tracé en rouge Wilson ; peut aussi entourer un seul mot (display inline-block) */
.animated-circle-text-red .wm-scribble path { stroke:var(--red) !important; }
span.animated-circle-text-red { display:inline-block; }
.ww-circle-scroll { position:relative; display:inline-block; white-space:nowrap; }
.ww-circle-scroll .wm-scribble path { stroke:#1D1D1B !important; }
.animated-circle-svg, .team-badge-circle { display:none !important; }


.arrow-rotate {position:absolute;left:50%;transform:translateX(-50%) rotate(90deg);}
.section-kicker {position:relative;color:var(--c-text);font-size:14px;font-weight:600;line-height:1.2;letter-spacing:.03em;text-transform:uppercase;}
.section-title {margin:0;color:var(--c-text);font-family:var(--font-text);font-size:40px;font-weight:400;line-height:1.12;letter-spacing:-.035em;}
.section-title span {color:var(--red);font-family:var(--font-accent);font-weight:600;font-size:50px;}

/* Navigation */


body .bricks-mobile-menu > li > a {padding: 0 30px; font-size: 14px;}
body .brxe-nav-menu .bricks-mobile-menu-wrapper a {font-size: 14px;}
body .brx-submenu-toggle.icon-right button {margin-left: 0;padding: 0 !important;}
.ww-desktop-nav .bricks-nav-menu > li > .sub-menu { width: 240px; min-width: 240px; padding: 20px 0 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.ww-desktop-nav .bricks-nav-menu .sub-menu > li { height: auto !important; min-height: 0 !important; margin: 0 0 8px !important; padding: 0 !important; background: transparent !important; border: 0 !important; }
.ww-desktop-nav .bricks-nav-menu .sub-menu > li:last-child { margin-bottom: 0 !important; }

.ww-desktop-nav .bricks-mobile-menu-wrapper .sub-menu {display:none!important;width:180px!important;margin:12px 0 4px auto!important;padding:0!important;background:transparent!important;overflow:hidden;}
.ww-desktop-nav .bricks-mobile-menu-wrapper .menu-item-has-children.open > .sub-menu {display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;}
.ww-desktop-nav .bricks-mobile-menu-wrapper .sub-menu li {width:100%!important;margin:0!important;padding:0!important;background:transparent!important;text-align:left!important;}
.ww-desktop-nav .bricks-mobile-menu-wrapper .sub-menu li > a {display:flex!important;align-items:center!important;gap:8px;width:100%!important;min-height:32px!important;padding:8px 12px!important;background:#fff!important;border-radius:4px!important;color:var(--color-accent, #E6253D)!important;font-size:10.5px!important;font-weight:700!important;letter-spacing:.03em;line-height:1!important;text-transform:uppercase!important;text-align:left!important;}
.ww-desktop-nav .bricks-mobile-menu-wrapper .sub-menu li > a::before {content:"⟶";flex-shrink:0;color:#aaa;font-size:13px;font-weight:300;}

.ww-desktop-nav .bricks-nav-menu .sub-menu > li > a { display: flex; align-items: center; justify-content: flex-start; gap: 8px; width: 100%; height: auto !important; min-height: 42px; margin: 0 !important; padding: 12px 14px !important; border-radius: 6px; background: #fff !important; color: #fa2044 !important; font-family: var(--font-text); font-size: 13px !important; font-weight: 600; line-height: 18px !important; text-transform: uppercase; text-decoration: none; transition: background-color .2s ease, color .2s ease; }
.ww-desktop-nav .bricks-nav-menu .sub-menu > li > a::before { content: "→"; flex-shrink: 0; color: #777; font-size: 20px; font-weight: 400; line-height: 1; }
.ww-desktop-nav .bricks-nav-menu .sub-menu > li > a:hover, .ww-desktop-nav .bricks-nav-menu .sub-menu > li > a:focus-visible { background: #ef203e !important; color: #fff !important; }
.ww-desktop-nav .bricks-mobile-menu-wrapper::before {content:"";position:absolute;top:32px;left:50%;width:95px;height:55px;transform:translateX(-50%);background-color: #000;background-image:url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/07/WILSONWEB-LOGO-2.svg");background-repeat:no-repeat;background-position:center;background-size:contain;z-index:10001;pointer-events:none;}

/* MENU DESKTOP : TRACÉS (cercle, trait, crayon) */
.ww-desktop-nav .bricks-nav-menu > li > a, .ww-desktop-nav .brx-submenu-toggle > a { position: relative; }
.ww-desktop-nav .ww-menu-circle { display: none !important; }
.ww-nav-mark { position: absolute; overflow: visible; pointer-events: none; }
.ww-nav-mark path { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.ww-nav-mark--circle path { stroke: var(--color-accent, #E6253D); stroke-width: 1.4; }
.ww-nav-mark--line path { stroke: #fff; stroke-width: 1.2; }
.ww-nav-mark--pencil path { stroke: var(--color-accent, #E6253D); stroke-width: 3.4; }
.ww-nav-mark--pencil path + path { stroke-width: 1.5; opacity: .55; }
.ww-nav-mark--chalk path { stroke: #fff; stroke-width: 1.8; opacity: .9; }
.ww-nav-mark--rect path { stroke: #fff; stroke-width: 1.6; }
.ww-nav-mark--rect path + path { stroke-width: 1; opacity: .5; }

/* MENU MOBILE : décor, chevron, tracés */
.mob-decor { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
/* calée en bas à gauche (l'échelle part du bas de l'écran, sous les liens du menu) */
.mob-scene { position: absolute; top: auto; bottom: -4%; left: -30%; height: 78%; aspect-ratio: 584 / 1038; }
.mob-scene img { position: absolute; top: 0; left: 0; width: 100%; height: auto; max-width: none; filter: invert(1); opacity: .3; }
.mob-scene .mob-decor-cloud { opacity: .55; filter: invert(1) brightness(.55); }
.mob-scene .mob-decor-person { top: 30%; left: 36%; width: 28%; opacity: .45; }
.wm-menu-open #brx-header > .brxe-section { z-index: 100000 !important; }
html.wm-menu-open, html.wm-menu-open body { overflow: hidden !important; }
.mob-decor::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.55) 60%, #000 100%); }
.ww-desktop-nav .bricks-mobile-menu .brx-submenu-toggle button svg { transform: rotate(-90deg); transition: transform .35s ease; }
.ww-desktop-nav .bricks-mobile-menu .open > .brx-submenu-toggle button svg { transform: rotate(0deg); }
.ww-desktop-nav .bricks-mobile-menu > li > a, .ww-desktop-nav .bricks-mobile-menu .brx-submenu-toggle > a { position: relative; }

/* MEGA MENU « LE SYSTÈME WILSON » */
.mm-source { display: none; }
.mm { position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 50; display: grid; grid-template-columns: 280px minmax(0, 1fr); min-height: 410px; background: #fff; border-radius: 22px; box-shadow: 0 30px 80px -20px rgba(0, 0, 0, .45); overflow: hidden; visibility: hidden; opacity: 0; color: var(--color-text, #1D1D1B); font-family: "Montserrat", sans-serif; text-align: left; }
.mm.is-open { visibility: visible; opacity: 1; }
.mm-tabs { display: flex; flex-direction: column; gap: 2px; padding: 22px 16px; border-right: 1px solid #ececee; }
.mm-tab { position: relative; display: grid; grid-template-columns: 28px 30px minmax(0, 1fr) 12px; align-items: center; gap: 10px; padding: 12px 12px 12px 16px; border-radius: 10px; color: inherit; text-decoration: none; transition: background-color .25s ease; }
.mm-tab::before { content: ""; position: absolute; left: 0; top: 10px; bottom: 10px; width: 3px; border-radius: 3px; background: var(--color-accent, #E6253D); transform: scaleY(0); transition: transform .3s ease; }
.mm-tab::after { content: "›"; color: var(--color-text, #1D1D1B); font-size: 20px; line-height: 1; transition: transform .25s ease; }
.mm-tab.is-active { background: #f5f5f7; }
.mm-tab.is-active::before { transform: scaleY(1); }
.mm-tab.is-active::after, .mm-tab:focus-visible::after { transform: translateX(3px); }
.mm-tab:focus-visible { outline: 2px solid var(--color-accent, #E6253D); outline-offset: -2px; }
.mm-tab-num { color: #8a8a8a; font-size: 11px; font-style: italic; }
.mm-tab-icon { width: 30px; height: 34px; object-fit: contain; mix-blend-mode: multiply; }
.mm-tab-body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.mm-tab-name { color: var(--color-accent, #E6253D); font-size: 12px; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; }
.mm-tab-text { color: #555; font-size: 11px; line-height: 1.35; }
.mm-panels { position: relative; min-width: 0; }
.mm-panel { position: absolute; inset: 0; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 30px; padding: 38px 44px; visibility: hidden; opacity: 0; }
.mm-panel.is-active { position: relative; visibility: inherit; opacity: 1; }
.mm-panel-content { display: flex; flex-direction: column; align-items: flex-start; }
.mm-label { margin-bottom: 14px; color: var(--color-accent, #E6253D); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.mm-title { font-size: 30px; font-weight: 400; line-height: 1.1; letter-spacing: -.02em; }
.mm-title .mark { color: var(--color-accent, #E6253D); font-family: "Lora", serif; font-size: 1.25em; font-weight: 600; }
.mm-underline { width: 110px; height: auto; margin: 14px 0 20px; }
.mm-text { max-width: 380px; margin: 0 0 16px; font-size: 14px; line-height: 1.55; }
.mm-list ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 24px; margin: 0 0 26px; padding: 0; list-style: none; }
.mm-list li { position: relative; padding-left: 16px; font-size: 12.5px; line-height: 1.4; }
.mm-list li::before { content: "✓"; position: absolute; top: 0; left: 0; color: var(--color-accent, #E6253D); font-size: 11px; font-weight: 700; }
.mm-button { margin-top: auto; }
.mm-panel-aside { position: relative; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; min-height: 340px; }
.mm-cloud { position: absolute; top: -50px; right: -70px; width: 200px; height: auto; opacity: .45; pointer-events: none; }
.mm-mascot { position: relative; z-index: 1; width: auto; max-width: 200px; height: auto; max-height: 170px; margin: 0 0 16px; object-fit: contain; mix-blend-mode: multiply; }
/* halo de l'ampoule (mega-menu.js), caché pour les autres visuels */
.mm-glow { position: absolute; z-index: 0; width: 170px; height: 170px; margin: -85px 0 0 -85px; border-radius: 50%; background: radial-gradient(circle, rgb(255 200 70 / 55%) 0%, rgb(255 190 60 / 22%) 40%, transparent 70%); opacity: 0; pointer-events: none; }
.mm-quote { position: relative; z-index: 1; width: 100%; max-width: 280px; padding: 28px 24px 20px; background: #f5f5f7; border: 1px solid #e6e6e9; border-radius: 14px; }
.mm-quote::before { content: "“"; position: absolute; top: 4px; left: 20px; color: var(--color-accent, #E6253D); font-family: "Lora", serif; font-size: 42px; line-height: 1; }
.mm-quote-text { margin: 0; font-size: 12.5px; line-height: 1.6; }
@media (max-width: 991px) { .mm { display: none !important; } }
@media (min-width: 992px) { .ww-desktop-nav .has-mm > .sub-menu { display: none !important; } }




/* Navigation mobile */
.ww-desktop-nav .bricks-mobile-menu-wrapper {position:fixed!important;top:0!important;right:0!important;left:auto!important;width:100%!important;max-width:520px!important;height:100dvh!important;background:#000!important;transform:translateX(100%)!important;transition:transform .45s cubic-bezier(.77,0,.18,1)!important;z-index:9999!important;}
.ww-desktop-nav.show-mobile-menu .bricks-mobile-menu-wrapper {transform:translateX(0)!important;}
.ww-desktop-nav .bricks-mobile-menu {position:relative;z-index:1;width:100%!important;height:100%!important;background:transparent!important;}

.ww-desktop-nav .bricks-mobile-menu {display:flex!important;flex-direction:column!important;align-items:stretch!important;padding:170px 55px 50px!important;}
.ww-desktop-nav .bricks-mobile-menu > li {width:100%!important;text-align:right!important;}
.ww-desktop-nav .bricks-mobile-menu > li > a,.ww-desktop-nav .bricks-mobile-menu > li > .brx-submenu-toggle {justify-content:flex-end!important;color:#fff!important;}



/* Maintenance */
.maintenance-hero-eyebrow::after { content: ""; position: absolute; left: 0; top: 35px; width: 140px; height: 7px; background: url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/07/Vector.png") center / contain no-repeat; }
.hero-image-desktop { display:block; }
.hero-image-mobile { display:none; }


/* HERO — OFFRE */
.hero-offer { min-height: 680px; padding-block: clamp(10rem, 15vw, 15rem) clamp(5rem, 8vw, 8rem); background: #1c1c1b; color: #fff; overflow: hidden; }
.hero-offer__container { max-width: 900px; align-items: center; text-align: center; }
.hero-offer__title { display: flex; flex-direction: column; align-items: center; margin: 1.5rem 0; font-size: clamp(3rem, 5vw, 5.5rem); line-height: 1.05; }
.hero-offer__label { background-color: #FFF; padding: 0% 20px; border-top-left-radius: 10px; border-bottom-right-radius: 10px; }
.hero-offer__title .accent { color: #ef263f; font-family: var(--font-accent); font-size: 60px; }
.hero-offer__description { max-width: 720px; }
.hero-offer__certification { margin-top: 2rem; box-shadow: 0 2px 12px rgb(255 255 255 / 25%); }
.hero-offer__social-proof { margin-top: 2.5rem; }
/* HERO OFFRE — mobile : le contenu occupe le premier écran (titre centré, « Ils nous font confiance » + logos en bas sur branding),
   marges latérales, espace sous le fil d'Ariane, et place réservée sous le pli pour la photo de la section suivante
   (.aurore-visuel remonte de 150px) */
@media (max-width: 767px) {
  .hero-offer.brxe-section { min-height: 0 !important; padding-bottom: 190px !important; }
  .hero-offer .hero-offer__container { padding-inline: 20px; padding-bottom: 0 !important; min-height: calc(100vh - 130px); min-height: calc(100svh - 130px); justify-content: center; }
  .hero-offer .hero-offer__container > :first-child { margin-top: auto; }
  .hero-offer .hero-offer__container > :last-child { margin-bottom: auto; }
  .hero-offer + .constat-section .aurore-visuel > img { margin-top: 0 !important; }
  .hero-offer .hero-offer__breadcrumb + h1 { margin-top: 20px !important; }
  #brxe-qxefsq { margin-top: auto !important; padding-left: 0 !important; flex-direction: column !important; align-items: center !important; }
  #brxe-qcxzbw { margin-bottom: 0 !important; }
  #brxe-alxact { align-self: flex-start; margin-left: 30px; }
  #brxe-tadmdx { margin: 0 !important; width: 100%; text-align: center !important; }
}


/* CURSEUR PERSONNALISÉ */
.wilson-cursor-dot { position: fixed; top: 0; left: 0; width: 5px; height: 5px; background: #ff2b2b; border-radius: 50%; pointer-events: none; z-index: 1000000; will-change: transform, box-shadow; }
.wilson-cursor-ring-wrap { position: fixed; top: 0; left: 0; width: 44px; height: 44px; pointer-events: none; z-index: 999999; color: #111; will-change: transform; }
.wilson-cursor-ring { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: visible; will-change: transform; }
.wilson-cursor-ring path { fill: none; stroke: currentColor; stroke-width: 0.45; vector-effect: non-scaling-stroke; stroke-linecap: round; stroke-linejoin: round; transition: stroke-width .3s ease; }
/* sur les carrousels témoignages / équipe : grand cercle rouge + étiquette « Glisser » (cursor.js) */
.wilson-cursor-ring-wrap.is-drag { color: #E6253D; }
/* hero Branding (hero-micro.js) : la loupe remplace le curseur rond tant que la souris est dans le hero */
html.ww-cursor-off .wilson-cursor-dot, html.ww-cursor-off .wilson-cursor-ring-wrap { opacity: 0 !important; transition: opacity .2s ease; }
.wilson-cursor-dot, .wilson-cursor-ring-wrap { transition: opacity .2s ease; }
.wilson-cursor-ring-wrap.is-drag path { stroke-width: 2.5; }
.wilson-cursor-sparks { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; pointer-events: none; z-index: 999998; }

/* SECTION RÉUTILISABLE — VALEURS */
.values-section { padding: clamp(80px, 9vw, 140px) 24px; background: #f7f7f8; }
.values-container { max-width: 1280px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; text-align: center; }
.values-kicker { margin-bottom: 24px; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; }
.values-title { margin: 0; font-size: clamp(36px, 4vw, 64px); font-weight: 400; line-height: 1.1; }
.values-title span { color: #ed2338; font-family:var(--font-accent); font-size: clamp(36px, 4vw, 64px); font-weight: 500; }
.values-intro { margin-top: 24px; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.5; }
/* .values-grid { width: 100%; margin-top: 64px; display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(32px, 4vw, 72px); } */

.values-grid { display:grid !important; grid-template-columns:repeat(4, minmax(0, 1fr)); align-items:start; gap:clamp(30px, 4vw, 64px); width:100%; }

.values-grid > div { width:100%; min-width:0; }

.value-item { display: flex; flex-direction: column; align-items: center; text-align: center; }
.value-icon { width: 88px; height: 88px; margin-bottom: 24px; object-fit: contain; }
.value-title { margin: 0 0 16px; color: #ed2338; font-family:var(--font-accent); font-size: 20px; font-weight: 500; text-transform: uppercase; }
.value-text { max-width: 260px; margin: 0; font-size: 16px; line-height: 1.65; }
/* Pictos : même boîte pour les 4 (le crayon, plus bas, faisait remonter son titre) */
.values-grid:not(.kpi-row) .value-item { position: relative; }
.values-grid:not(.kpi-row) .value-item > img { position: relative; z-index: 1; width: 131px !important; max-width: 100%; height: 102px !important; object-fit: contain; }
/* « Nos valeurs » : le cœur (Sincérité) se remplit de noir au survol de sa colonne, en plus du battement (silhouette calculée par values.js) */
.values-grid:not(.kpi-row) .value-item { position: relative; }
.values-grid:not(.kpi-row) .value-item > img.value-fx-fill { position: absolute; z-index: 0; margin: 0; object-fit: contain; pointer-events: none; opacity: 0; transition: opacity .45s ease; filter: blur(.3px); }
.values-grid:not(.kpi-row) .value-item:hover > img.value-fx-fill { opacity: .9; }
.values-grid:not(.kpi-row) .value-item { cursor: default; }
/* Micro-interactions (values.js) */
.value-fx-stroke { display: block; width: 110px; height: 12px; margin: -10px auto -2px; overflow: visible; opacity: 0; pointer-events: none; }
.value-fx-stroke path { fill: none; stroke: #3a3a3a; stroke-width: 1.6; stroke-linecap: round; opacity: .75; }
.value-fx-glow { position: absolute; z-index: 0; width: 150px; height: 150px; margin: -75px 0 0 -75px; border-radius: 50%; background: radial-gradient(circle, rgb(255 200 70 / 55%) 0%, rgb(255 190 60 / 22%) 40%, transparent 70%); opacity: 0; transform: scale(.8); pointer-events: none; }

/* SECTION RÉUTILISABLE — BENEFITS */
.benefits-section { --benefits-accent: #f21d40; padding: 72px 24px; background: #f5f5f7; }
.benefits-container { display: flex; flex-direction: column; align-items: center; gap: 36px; width: 100%; max-width: 1100px; margin-inline: auto; }
.benefits-heading { margin: 0; text-align: center; font-size: clamp(28px, 3vw, 40px); line-height: 1.2; }
.benefits-heading span{font-size:50px;}
.benefits-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; width: 100%; }
.benefits-card { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0; padding: 28px; background: #fff; border-radius: 8px; box-shadow: 0 5px 10px rgb(0 0 0 / 12%); transition: translate 300ms ease-in-out, box-shadow 300ms ease-in-out; }
.benefits-card:hover { translate: 0 -8px; box-shadow: 0 14px 28px rgb(0 0 0 / 16%); }
.benefits-number { margin: 0; color: var(--benefits-accent); font-size: 15px; font-weight: 700; }
.benefits-title { margin: 0; font-size: 20px; line-height: 1.3; }
.benefits-description { margin: 0; font-size: 15px; line-height: 1.6; }
/* source en bas de carte : dans le flux (en absolute, un texte long passait dessous), poussée en bas par margin-top auto */
/* (seulement quand elle suit un texte : sur les cartes chiffre + description, la description reste en haut) */
.benefits-card > .benefits-description:last-child:not(:nth-child(2)) { position: static !important; margin-top: auto; padding-top: 8px; }
.benefits-bonus { display: flex; align-items: center; gap: 20px; width: 100%; max-width: 440px; }
.benefits-plus { flex-shrink: 0; color: var(--benefits-accent); font-size: 36px; font-weight: 700; line-height: 1; }
.benefits-bonus-text { margin: 0; font-size: 18px; line-height: 1.5; }
.benefits-bonus-text strong { color: var(--benefits-accent); }
.benefits-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 12px 32px; border-radius: 999px; background: var(--benefits-accent); color: #fff; font-size: 14px; font-weight: 700; text-align: center; text-decoration: none; }
.benefits-button:hover { filter: brightness(.9); }
.benefits-button:focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
/* BENEFITS BONUS — correctifs mobile (styles ID Bricks à largeur fixe) */
@media (max-width: 478px) {
  /* Bloc « + Site web, LinkedIn Start… » : mise en page générique dans le bloc max-width 767px (.benefits-bonus) */
  #brxe-1158bc, #brxe-c37eec { width: 60px !important; top: -42px !important; left: auto !important; right: 16px !important; }

  /* Bloc « + Votre expertise… » (employee-advocacy, ghostwriting) */
  #brxe-ed058a, #brxe-yveaiw { width: 100% !important; max-width: 100% !important; }
  #brxe-259dc7, #brxe-kyqxbh { width: 100% !important; max-width: 100% !important; padding-right: 10px; }
}

/* ACCUEIL — CONSTAT */
.constat-section { background: #ffffff; }
.constat-container { display: grid; grid-template-columns: 58% 42%; align-items: center; gap: clamp(48px, 6vw, 120px); max-width:1188px}
.constat-visual { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; min-width: 0; top: 0; height: 100vh; min-height: 750px; max-height: 980px !important; overflow: hidden; }
.constat-image { display: block; width: 100%; max-width: 100%; height: auto; object-fit: contain; }
.constat-visual img { position: absolute; display: block; pointer-events: none; user-select: none; }
.constat-ladder { left: 50%; bottom: 0; width: 500px; height: auto; object-fit: fill; transform: translateX(-50%); z-index: 2; }
.constat-person { left: 50%; bottom: 30px; width: 105px; transform: translateX(-50%); translate: 0 var(--person-y, 0px); z-index: 3; will-change: translate; transition: none !important; }
.constat-cloud { left: 50%; top: -200px; width: min(600px, 90%); transform: translateX(-50%); z-index: 4; }
/* Nous + LinkedIn Start : échelle, personnage (labyrinthe) et nuage sur la même toile (*-echelle*.webp, ladder-climb.js) :
   les calques débordent de 15% de chaque côté du bloc (la colonne est étroite, le nuage est large), le dessin y tient entier
   (contain) et centré en hauteur ; le bloc ne coupe plus ce qui dépasse. Sans transform : GSAP anime les calques */
.constat-visual:has(.constat-person[src*="-echelle"]) { overflow: visible; }
.constat-visual:has(.constat-person[src*="-echelle"]) img { top: 0; bottom: 0; left: -15%; right: auto; width: 130% !important; height: 100% !important; max-width: none; margin: 0; object-fit: contain; object-position: center center; transform: none; translate: none; }
/* ordre : échelle, personnage, labyrinthe, nuages (le personnage disparaît dedans), médaillon */
.constat-visual .constat-maze { z-index: 4; }
.constat-visual:has(.constat-maze) .constat-cloud { z-index: 5; }
/* médaillon « LinkedIn Start » au centre du labyrinthe (créé par ladder-climb.js) ; --u = 1% de la largeur du dessin */
/* sans fond : le logo flotte dans le trou du labyrinthe (un fond blanc débordait sur le premier anneau), halo blanc pour la lisibilité */
.constat-medal { position: absolute; z-index: 6; display: flex; align-items: center; gap: calc(var(--u, 6px) * .35); color: #1D1D1B; font: 700 calc(var(--u, 6px) * 1.6) / 1 "Montserrat", sans-serif; letter-spacing: -.02em; white-space: nowrap; pointer-events: none; --glow: 0;
  text-shadow: 0 0 calc(var(--u, 6px) * (.6 + var(--glow) * .6)) #fff, 0 0 calc(var(--u, 6px) * .3) #fff; transition: filter .6s ease; }
.constat-medal b { padding: .1em .2em; color: #fff; background: #E6253D; border-radius: .18em; font-weight: 700; text-shadow: none; }
/* arrivée du personnage en haut : lueur rouge */
.constat-medal.is-lit { filter: drop-shadow(0 0 calc(var(--u, 6px) * (1 + var(--glow))) rgb(230 37 61 / 55%)); }
.constat-content { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; width: 55%; max-width: 620px; min-width: 0; }
.constat-content h2 span.mark { font-size: 50px; }
.constat-content .btn-ww-red { float: right; }

/* CODE DÉSACTIVÉ
.constat-label { position: relative; display: inline-flex; align-items: center; justify-content: center; }

.constat-svg { position: absolute; inset: -20%; width: 140%; height: 140%; overflow: visible; pointer-events: none; }

.constat-ellipse { fill: none; stroke: #111; stroke-width: 1; vector-effect: non-scaling-stroke; stroke-linecap: round; stroke-linejoin: round; }
*/

/* ACCUEIL — SYSTÈME ET OFFRES */
.system-section { position: relative; padding: 110px 24px 120px; background: #f7f7f8; overflow: clip;}
.system-container { position: relative; z-index: 2; width: 100%; max-width: 1240px; height: auto; margin: 0 auto; background-color: transparent !important; }
body .system-container.brxe-container {height: auto !important;}
.system-header { display: flex; flex-direction: column; align-items: center; max-width: 900px; margin: 0 auto 56px; text-align: center; background-color: transparent !important; }
.system-eyebrow { position: relative; margin-bottom: 28px; font-size: 14px; font-weight: 700; line-height: 1.2; letter-spacing: .03em; text-transform: uppercase; }
.system-eyebrow::after { content: ""; position: absolute; left: 50%; bottom: -20px; transform: translateX(-50%); width: 180px; height: 10px; background: url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/07/Clip-path-group.png") center / contain no-repeat; clip-path: inset(0 var(--underline, 0%) 0 0); pointer-events: none; }
.system-title { max-width: 900px; margin: 0; font-size: clamp(38px, 4.2vw, 64px); font-weight: 400; line-height: 1.08; letter-spacing: -.035em; }
.system-title span:not(.wm-w, .wm-i) { color: #ed263d; font-family: 'Lora', serif; font-weight: 600; font-size: 50px; }
.system-intro { max-width: 850px; margin-top: 32px; font-size: clamp(18px, 1.6vw, 24px); line-height: 1.55; }
.system-intro strong { color: #ed263d; font-weight: 600; }
.system-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }

.offer-card { display: flex; flex-direction: column; min-height: 520px; padding: 36px 38px 34px; background: rgba(255, 255, 255, .72); border: 1px solid rgba(20, 20, 20, .14); border-radius: 28px; backdrop-filter: blur(12px); transition: translate 300ms ease-in-out, box-shadow 300ms ease-in-out; cursor: pointer; }
.offer-card:hover { translate: 0 -8px; box-shadow: 0 20px 45px rgba(20, 20, 20, .12); }
.offer-card .offer-button, .offer-card .offer-actions .bricks-button { transition: background-color 300ms ease-in-out, color 300ms ease-in-out; }

.offer-category { margin-bottom: 16px; color: #ed263d; font-size: 15px; font-weight: 700; text-transform: uppercase; }
.offer-separator { width: 100%; height: 1px; margin-bottom: 24px; background: rgba(20, 20, 20, .14); }
.offer-title { margin: 0 0 34px; font-size: clamp(28px, 2.2vw, 38px); font-weight: 400; line-height: 1.25 !important; }
.offer-title strong { display: block; color: #ed263d; font-family:var(--font-accent); font-weight: 600; }
.offer-list { display: flex; flex-direction: column; gap: 12px; margin: 0 0 32px; padding: 0; list-style: none; }
.offer-list li { position: relative; padding-left: 24px; font-size: 17px; line-height: 1.35; }
.offer-list li::before { content: "✓"; position: absolute; top: 0; left: 0; color: #ed263d; font-size: 13px; font-weight: 700; }
.offer-button { margin-top: auto; }
.offer-actions { display: flex; gap: 8px; margin-top: auto; }
.offer-actions .bricks-button { flex: 1; white-space: nowrap; }
.offer-card:hover .offer-button, .offer-card:hover .offer-actions .bricks-button { background-color: #1D1D1B !important; color: #fff !important; }

/* Accessibilité */
@media (prefers-reduced-motion: reduce) {
.offer-card { transition: none; }
.offer-card:hover { translate: none; }
.offer-card .offer-button, .offer-card .offer-actions .bricks-button { transition: none; }
}

.decor-cloud-left, .decor-balloon, .decor-cloud-right { position: absolute; z-index: 1; pointer-events: none; user-select: none; will-change: transform, opacity; }
.decor-cloud-left { top: -150px; left:-100px; width: 526px; height:auto;}
.decor-balloon { top: 50px; right: 80px; width: 150px;}
.decor-cloud-right {right: -240px; bottom: -340px; width: 882px;}

/* Nuages et montgolfière déplaçables (souris uniquement, classe ajoutée par system.js) */
.decor-cloud-left.wm-drag, .decor-balloon.wm-drag, .decor-cloud-right.wm-drag { pointer-events: auto; cursor: grab !important; touch-action: none; -webkit-user-drag: none; scale: var(--wm-s, 1); }
/* décors des autres pages (decor.js) */
img.wm-drag { pointer-events: auto !important; cursor: grab !important; touch-action: none; -webkit-user-drag: none; user-select: none; scale: var(--wm-s, 1); }
.wm-drag.is-dragging { cursor: grabbing !important; }
.wm-drag.is-front { z-index: 30 !important; }
/* Mascotte : paupière du clin d'œil (mascot-blink.js), fermée seulement pendant l'animation */
.wm-eyelid { position: absolute; display: block; pointer-events: none; border-radius: 50% 50% 45% 45%; background: radial-gradient(120% 90% at 50% 20%, #f4f0eb 0%, #e8e2db 70%, #ddd6ce 100%); border-bottom: 1px solid rgba(70, 62, 55, .75); clip-path: inset(0 0 100% 0); }
.wm-cursor-label { position: fixed; top: 0; left: 0; z-index: 1000000; pointer-events: none; font: 600 12px/1 "Montserrat", sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #fff; background: #E6253D; padding: 8px 12px; border-radius: 999px; opacity: 0; transform: scale(.6); }


/* OFFRE LINKEDIN */
.linkedin-container { position: relative; display: flex; flex-direction: column; width: 100%; max-width: 1240px; margin: 0 auto; background: #fff !important; }
body .linkedin-container .ww-container { background-color: transparent; }
.linkedin-section { position: relative;  overflow:visible; width: 100%; padding: 90px 24px 100px; background: #fff; }
.linkedin-kicker { position: relative; display: flex; flex-direction: column; align-items: flex-start; margin-bottom: 20px; }
.linkedin-kicker-arrow { position: absolute; top: -48px; left: -50px; width: 74px; height: auto; pointer-events: none; }
.linkedin-kicker-text { color: #171717; font-size: 18px; font-weight: 600; line-height: 1.2; }
.linkedin-header { display: flex; flex-direction: column; align-items: center; width: 100%; max-width: 800px; margin: 0 auto 46px; text-align: center; }
.linkedin-badge-wrap { position: relative; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 26px; }
.linkedin-badge { position: relative; z-index: 2; color: #ef263f; font-size: 14px; font-weight: 700; line-height: 1; text-transform: uppercase; }
.linkedin-badge-circle { position: absolute; top: 50%; left: 50%; z-index: 1; width: 210px; max-width: none; transform: translate(-50%, -50%); pointer-events: none; }
.linkedin-title { margin: 0; color: #171717; font-size: clamp(42px, 5vw, 68px); font-weight: 400; line-height: .95; letter-spacing: -.035em; text-align: center; }
.linkedin-title span:not(.wm-w, .wm-i) { color: #ef263f; font-family: 'Lora', serif; font-weight: 700; font-size: 64px; }
body .linkedin-product-name { display: inline-flex; align-items: center; justify-content: center; margin: 22px 0 20px; padding: 8px 16px; color: #fff; background: #1c1c1b; border-radius: 7px 0 7px 0; font-size: 15px; font-weight: 600; line-height: 1; }
.linkedin-intro { max-width: 760px; margin: 0; color: #292929; font-size: clamp(18px, 1.6vw, 22px); line-height: 1.5; text-align: center; }
.linkedin-intro strong { font-weight: 700; }
.linkedin-offers { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: stretch; }
.linkedin-card { position: relative; display: flex; flex-direction: column; min-height: 340px; padding: 34px 40px 32px; background: #f5f5f7; border: 1px solid rgba(20, 20, 20, .05); border-radius: 8px; box-shadow: 0 5px 8px rgba(0, 0, 0, .16);  transition: background-color 300ms ease-in-out, border-color 300ms ease-in-out; }
.linkedin-card:hover { background-color: #1D1D1B; border-color: #1D1D1B; }
.linkedin-card-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.linkedin-card h3 { margin: 0; color: #171717; font-size: 25px; font-weight: 600; line-height: 1.2; }
.linkedin-card h3, .linkedin-card-description, .linkedin-card-description strong { transition: color 300ms ease-in-out; }
.linkedin-card:hover h3, .linkedin-card:hover .linkedin-card-description, .linkedin-card:hover .linkedin-card-description strong { color: #FFFFFF !important; }
.linkedin-card-label { display: inline-flex; align-items: center; justify-content: center; padding: 7px 10px; color: #fff; background: #ef263f; border-radius: 5px; font-size: 12px; font-weight: 700; line-height: 1; white-space: nowrap;  transition: none;}
.linkedin-card-label.is-dark { background: #1c1c1b;  transition: none;}
.linkedin-card-description { margin: 0 0 26px; color: #333; font-size: 17px; line-height: 1.55; }
.linkedin-card-description strong { color: #171717; font-weight: 700; }
.linkedin-features { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 34px; }
.linkedin-feature { display: inline-flex; align-items: center; gap: 9px; padding: 12px 16px; color: #1d1d1d; background: #fff; border-radius: 7px; font-size: 15px; font-weight: 600; line-height: 1;  transition: background-color 300ms ease-in-out, color 300ms ease-in-out;}
.linkedin-feature i, .linkedin-feature svg { color: #ef263f; font-size: 17px; }
.linkedin-card:hover .linkedin-feature { background-color: #FFFFFF; color: #1D1D1B; }
.linkedin-card-button { align-self: flex-start; min-width: 210px; margin-top: auto; padding: 15px 30px; color: #fff; background: #ef263f; border: 0; border-radius: 999px; font-size: 14px; font-weight: 700; text-transform: uppercase; }
.linkedin-card-button.is-dark { background: #1c1c1b; }
.linkedin-card:hover .linkedin-card-button.is-dark { background-color: #E6253D !important; color: #FFFFFF !important; }
.linkedin-card:hover .linkedin-card-button:not(.is-dark) { background-color: #E6253D !important; color: #FFFFFF !important; }
.linkedin-card .linkedin-card-button { transition: background-color 300ms ease-in-out, color 300ms ease-in-out; }
.linkedin-character { position: absolute; top: -145px; right: 10px; z-index: 4; width: 125px; height: auto; pointer-events: none; }
.linkedin-qualiopi { position: relative; display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: 58px; }
.linkedin-qualiopi-arrow { position: absolute; top: -18px; left: calc(50% - 300px); width: 80px; pointer-events: none; animation: ww-arrow-blink 1.2s ease-in-out infinite; }

.linkedin-qualiopi-plus { color: #ef263f; font-size: 34px; font-weight: 700; line-height: 1; }
.linkedin-qualiopi-logo { width: 225px; max-width: 100%; height: auto; }
.linkedin-qualiopi-text { max-width: 245px; margin: 0; color: #1d1d1d; font-size: 15px; font-weight: 600; line-height: 1.3; }
.linkedin-qualiopi-text strong { color: #ef263f; }

@keyframes ww-arrow-blink {
  0%, 100% { opacity: 1; }
  50% { opacity: .3; }
}
@media (prefers-reduced-motion: reduce)
{
  .linkedin-card, .linkedin-card h3, .linkedin-card-description, .linkedin-card-description strong, .linkedin-feature { transition: none; }
  .linkedin-qualiopi-arrow { animation: none; opacity: 1; }
}

/* TÉMOIGNAGES */
.testimonials-section { position: relative; overflow: hidden; width: 100%; padding: 100px 24px 90px; color: #fff; background: var(--c-text); }
.testimonials-container { display: flex; flex-direction: column; width: 100%; max-width: 1240px; margin: 0 auto; background-color: transparent !important; background: var(--c-text) !important; }
.testimonials-top { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin-bottom: 38px; background: var(--c-text) !important; }
.testimonials-heading { display: flex; flex-direction: column; align-items: flex-start; }
.testimonials-eyebrow { position: relative; display: inline-flex; margin-bottom: 36px; color: #fff; font-size: 14px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.testimonials-eyebrow::after { content: ""; position: absolute; left: 50%; bottom: -20px; transform: translateX(-50%); width: 180px; height: 10px; background: url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/07/Vector.png") center / contain no-repeat; clip-path: inset(0 var(--underline, 0%) 0 0); pointer-events: none; }

@media (prefers-reduced-motion: reduce) {
.testimonials-eyebrow::after { animation: none; clip-path: none; }
}






.testimonials-title { margin: 0 0 14px; color: #fff; font-size: clamp(40px, 4vw, 58px); font-weight: 400; line-height: 1.05; letter-spacing: -.035em; }
.testimonials-title span:not(.wm-w, .wm-i) { color: #ef263f; font-family: 'Lora', serif; font-weight: 700; }
.testimonials-rate { margin: 0; color: #fff; font-size: 20px; line-height: 1.4; }
.testimonials-rate strong { font-weight: 700; }
.testimonials-slider .swiper-slide { position: relative; }
.testimonials-slider .testimonial-content-wrapper { order: 2; position: relative; width: calc(100% - 32px); max-width: 331px; margin-inline: auto; min-height: 250px; }
.testimonials-slider .testimonial-content-wrapper::before { content: ""; position: absolute; left: 17px; top: -38px; transform: translateX(-50%); width: 31px; height: 28px; background: url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/07/blockquote.svg") center / contain no-repeat; pointer-events: none; z-index: 999;}
.testimonials-slider .testimonial-meta-wrapper { order: 1; }
.testimonials-slider .testimonial-meta-data {position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: calc(100% - 32px); max-width: 331px; }
.testimonials-slider .swiper-pagination-bullet { border: 1px solid white; width: 8px; height: 8px; }
.testimonials-controls { display: flex; align-items: center; gap: 10px; }
.testimonial-slider .splide__pagination, body  .splide__pagination {bottom: -66px !important;}

.testimonial-prev, .testimonial-next { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; padding: 0; border-radius: 50%; font-size: 22px; line-height: 1; transition: transform .25s ease, background-color .25s ease; }
.testimonial-prev  { color: #fff; background: transparent; border: 1px solid rgba(255, 255, 255, .8); }
.testimonial-next { color: #ef263f; background: #fff; border: 1px solid #fff; right:60px; left:auto;}

/* BOUTONS — ÉTAT INITIAL */
.splide__arrows.custom .splide__arrow { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; padding: 0; background: #FFFFFF; border: none; border-radius: 50%; opacity: 1; cursor: pointer; transition: background-color 300ms cubic-bezier(0.4, 0, 0.2, 1); }
.splide__arrows.custom .splide__arrow svg { width: 28px; height: auto; transition: transform 300ms cubic-bezier(0.4, 0, 0.2, 1); }
.splide__arrows.custom .splide__arrow svg path { fill: #E6253D; transition: fill 300ms cubic-bezier(0.4, 0, 0.2, 1); }

/* FLÈCHE GAUCHE — ROUGE */
.splide__arrows.custom .splide__arrow--prev:hover { background: #E6253D; }
.splide__arrows.custom .splide__arrow--prev:hover svg path { fill: #FFFFFF; }
.splide__arrows.custom .splide__arrow--prev:hover svg { transform: translateX(-3px); }

/* FLÈCHE DROITE — NOIR */
.splide__arrows.custom .splide__arrow--next:hover { background: #E6253D; }
.splide__arrows.custom .splide__arrow--next:hover svg path { fill: #FFFFFF; }
.splide__arrows.custom .splide__arrow--next:hover svg { transform: translateX(3px); }



body .testimonials-slider.brxe-slider-nested .splide__arrow--prev { right:60px; left:auto;}
body .testimonials-slider.brxe-slider-nested .splide__arrow--next { right:0; left:auto;}

.testimonial-prev:hover, .testimonial-next:hover { transform: scale(1.06); }
.testimonial-card { display: flex; flex-direction: column; min-width: 0; }

.testimonial-photo-wrap {position: relative; overflow: hidden; width: 100%; isolation: isolate; aspect-ratio: 1 / 1; }
.testimonial-photo, .testimonial-photo-color { position: absolute; inset: 0; display: block; width: 100%; height: 100%; }
.testimonial-photo-wrap img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.testimonial-photo { z-index: 1; transform: scale(1); transition: transform 900ms cubic-bezier(.22, 1, .36, 1), filter 550ms ease-in-out; }
.testimonial-photo-color { z-index: 2; opacity: 0; transform: scale(1); filter: blur(3px); pointer-events: none; transition: opacity 550ms ease-in-out, transform 900ms cubic-bezier(.22, 1, .36, 1), filter 550ms ease-in-out; }

/* au survol : la photo couleur apparaît en fondu, sans zoom (la taille ne change pas) */
.testimonial-photo-wrap:hover .testimonial-photo { filter: blur(1.5px); }
.testimonial-photo-wrap:hover .testimonial-photo-color { opacity: 1; filter: blur(0); }

@media (prefers-reduced-motion: reduce) {
.testimonial-photo, .testimonial-photo-color { transition: none; }
}

.testimonial-visual { position: relative; display: flex; align-items: flex-end; width: 100%; height: 320px; overflow: hidden; }
.testimonial-image { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; filter: grayscale(1); z-index: 1;}
.testimonial-quote { margin-top: -12px; margin-bottom: 6px; color: #ef263f; font-family: 'Lora', serif; font-size: 72px; font-weight: 700; line-height: .6; z-index: 10;}
.testimonial-text { margin: 0 0 30px; color: rgba(255, 255, 255, .88); font-size: 15px; min-height: 9em; line-height: 1.5; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 6; overflow: hidden;}
.testimonial-author { display: flex; flex-direction: column; margin-top: auto; }
.testimonial-name { color: #ef263f; font-family: 'Lora', serif; font-size: 17px; font-weight: 700; line-height: 1.2; }
.testimonial-job { margin-top: 3px; color: rgba(255, 255, 255, .74); font-size: 10px; line-height: 1.2; }



/* CODE DÉSACTIVÉ
.testimonial-dot { width: 9px; height: 9px; padding: 0; border:1px solid white; border: 0; border-radius: 50%; }

.testimonial-dot.is-active { background: #fff; }
*/

/* SLOGAN */
.slogan h2 { font-size: 48px; }
.slogan .mark { font-size: 64px !important; }

/* ÉQUIPE */
.team-section { position: relative; overflow: hidden; width: 100%; padding: 95px 24px 85px; background: #fff; }
.team-container { position: relative; display: flex; flex-direction: column; width: 100%; max-width: 1240px; margin: 0 auto; background: #fff; }
.team-hand { position: absolute; top: -20px; left: -190px; z-index: 1; width: 340px; height: auto; pointer-events: none; user-select: none; will-change: transform, opacity; transform-origin: left center;}
.team-hand-2 { position: absolute; top: -20px; left: -190px; z-index: 1; width: 181px; height: auto; pointer-events: none; user-select: none; will-change: transform, opacity; transform-origin: left center;}
@media (prefers-reduced-motion: reduce) {
  .team-hand, .team-hand-2 { will-change: auto; }
}
.team-header { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; width: 100%; max-width: 930px; margin: 0 auto 48px; text-align: center; }
.team-badge-wrap { position: relative; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 24px; }
.team-badge { position: relative; z-index: 2; color: #191919; font-size: 14px; font-weight: 700; line-height: 1; letter-spacing: .03em; text-transform: uppercase; }
.team-badge-circle { position: absolute; top: 50%; left: 50%; z-index: 1; width: 205px; max-width: none; transform: translate(-50%, -50%); pointer-events: none; }
.team-title { margin: 0 0 24px; color: #202020; font-size: clamp(42px, 4vw, 62px); font-weight: 400; line-height: 1.04; letter-spacing: -.04em; text-align: center; }
.team-title span { color: #ef263f; font-family: 'Lora', "Times New Roman", serif; font-weight: 700; }
.team-intro { max-width: 920px; margin: 0; color: #303030; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.65; text-align: center; }
.team-intro strong { color: #ef263f; font-weight: 700; }
.team-carousel { position: relative; z-index: 2; width: 100%; padding-bottom: 54px; }
.team-card { display: flex; flex-direction: column; align-items: center; height: 100%; text-align: center; }
.team-photo { display: block; width: 100%; height: 330px; object-fit: contain; object-position: center bottom; filter: grayscale(1); }
.team-name { margin-top: 18px; color: #ef263f; font-family: 'Lora', "Times New Roman", serif; font-size: 17px; font-weight: 700; line-height: 1.2; }
.team-role { margin-top: 4px; color: #424242; font-size: 13px; line-height: 1.3; }
.team-extra { margin-top: 2px; color: #6a6a6a; font-size: 12px; line-height: 1.3; }
.team-linkedin { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; margin-top: 8px; color: #fff; background: #242424; border-radius: 3px; font-size: 14px; transition: transform .2s ease, background-color .2s ease; }
.team-linkedin:hover { background: #ef263f; transform: translateY(-2px); }
.team-carousel .splide__arrow { width: 54px; height: 54px; color: #191919; background: transparent; border: 0; border-radius: 50%; opacity: 1; }
.team-carousel .splide__arrow--prev { left: -84px; }
.team-carousel .splide__arrow--next { right: -84px; }
.team-carousel .splide__arrow svg { width: 26px; height: 26px; }
/* flèches crayonnées ajoutées par team.js, centrées sur la hauteur des photos (desktop uniquement) */
.team-arrow { display: none; }
@media (min-width: 992px) {
  .team-arrow { position: absolute; top: 36%; z-index: 5; display: flex; align-items: center; justify-content: center; width: 93px; height: 50px; padding: 0; background: none; border: 0; cursor: pointer; transform: translateY(-50%); transition: translate .3s cubic-bezier(.22, 1, .36, 1); }
  .team-arrow img { display: block; width: 93px; height: auto; }
  /* la section coupe ce qui dépasse : on réserve la place des flèches dans le carrousel */
  .team-carousel.brxe-slider-nested.has-arrows { padding-left: 110px !important; padding-right: 110px !important; }
  .team-arrow--prev { left: 0; }
  .team-arrow--prev img { transform: scaleX(-1); }
  .team-arrow--next { right: 0; }
  .team-arrow--prev:hover { translate: -6px 0; }
  .team-arrow--next:hover { translate: 6px 0; }
}
@media (min-width: 992px) and (max-width: 1399px) {
  .team-carousel.brxe-slider-nested.has-arrows { padding-left: 76px !important; padding-right: 76px !important; }
  .team-arrow { width: 64px; }
  .team-arrow img { width: 64px; }
}
.team-section .swiper-pagination-bullet { border: 1px solid var(--c-text); width: 8px; height: 8px; }
.team-carousel .splide__pagination { bottom: -48px; gap: 5px; }
.team-carousel .splide__pagination__page { width: 9px; height: 9px; margin: 0; background: #d2d2d2; border-radius: 50%; opacity: 1; transform: none; }
.team-carousel .splide__pagination__page.is-active { background: var(--c-text); transform: none; }

/* Équipe dynamique (composant « Team - Carrousel » : boucle sur le type membre)
   .team-card > .team-pic (photo N&B + photo couleur superposées) + .team-name + .team-role
   (pas .team-photo : ancienne classe avec hauteur fixe et filtre N&B) */
.team-pic { position: relative; isolation: isolate; overflow: hidden; width: 100%; aspect-ratio: 10 / 9; }
.team-pic .team-photo-bw, .team-pic .team-photo-color { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
/* contain (et non cover) : la photo entière tient dans le cadre, posée en bas, sans couper la tête ni les épaules */
.team-pic img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.team-pic .team-photo-bw { z-index: 1; }
/* trait rouge crayonné sous chaque photo (deux passages légèrement décalés, au-dessus des photos N&B et couleur) */
.team-pic::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; height: 8px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 12' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%23ef263f' stroke-linecap='round'%3E%3Cpath d='M2 7.5c40-1.6 85 .9 130-.6s92-2.2 140-.4 85 1.3 126-.5' stroke-width='3.4' opacity='.9'/%3E%3Cpath d='M8 5.6c55 .8 102-1.4 152 .2s88 1.6 138-.3 70-.9 96 .9' stroke-width='1.6' opacity='.55'/%3E%3Cpath d='M30 9.3c60-.9 120 .6 180-.4s110 .5 160-.7' stroke-width='1' opacity='.4'/%3E%3C/g%3E%3C/svg%3E") center / 100% 100% no-repeat; }
/* la couleur apparaît en fondu au survol, sans zoom */
.team-pic .team-photo-color { z-index: 2; opacity: 0; pointer-events: none; transition: opacity .75s cubic-bezier(.22, 1, .36, 1); }
@media (hover: hover) {
  .team-card:hover .team-pic .team-photo-color { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .team-pic .team-photo-color { transition: none; }
}
/* carrousel équipe (Bricks « Curseur imbriqué ») : hauteur au contenu, photos moins grandes et plus espacées, points proches */
.team-carousel.brxe-slider-nested { height: auto !important; padding-bottom: 0; }
.team-carousel .splide__track, .team-carousel .splide__list { height: auto !important; }
.team-carousel .splide__list { align-items: flex-start; }
.team-carousel .splide__slide.team-card { height: auto !important; min-height: 0 !important; justify-content: flex-start; padding: 0; }
/* cadre carré, moins large que la diapositive (photos plus petites et plus aérées, comme la maquette)
   overflow visible : le trait rouge dépasse un peu de la photo */
.team-card .team-pic { width: 82%; max-width: none; aspect-ratio: 1 / 1; margin: 0 auto; overflow: visible; }/* trait calé sur la largeur réelle de la photo (--team-line-w posée par team.js) + léger débord */
.team-card .team-pic::after { left: 50%; right: auto; bottom: -3px; width: calc(var(--team-line-w, 100%) + 30px); transform: translateX(-50%); }
.team-card .team-name { margin: 18px 0 0; font-size: 17px; line-height: 1.2; }
.team-card .team-role { margin-top: 4px; font-size: 13px; line-height: 1.3; }
.team-carousel .splide__pagination { position: relative; bottom: auto !important; margin-top: 36px; }
/* révélation au pinceau (team-reveal.js) : le canvas remplace le fondu */
.team-pic.has-reveal .team-photo-color { opacity: 0 !important; transition: none; }
/* témoignages : idem, et la photo N&B ne floute plus au survol (le pinceau fait le travail) */
.testimonial-photo-wrap.has-reveal .testimonial-photo-color { opacity: 0 !important; transition: none; }
.testimonial-photo-wrap.has-reveal:hover .testimonial-photo { filter: none; }
.team-reveal-canvas { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; pointer-events: none; }

.team-testimonials .testimonial-meta-wrapper { position: relative; }
.team-testimonials .testimonial-meta-wrapper > .image { position: relative; isolation: isolate; overflow: hidden; }
.team-testimonials .team-bw-layer { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; background-position: center bottom; background-size: cover; background-repeat: no-repeat; opacity: 1; transition: opacity .75s ease; pointer-events: none; }

@media (hover: hover) {
  .team-testimonials .testimonial-meta-wrapper > .image:hover .team-color-layer { opacity: 1; }
}

.team-testimonials .testimonial-meta-wrapper > .image::after { content: ""; position: absolute; inset: 0; z-index: 2; background-image: var(--team-color-image, none); background-position: center bottom; background-size: cover; background-repeat: no-repeat; opacity: 0; transform: scale(1.015); transform-origin: center bottom; transition: opacity .7s cubic-bezier(.22, 1, .36, 1), transform 1.1s cubic-bezier(.22, 1, .36, 1); pointer-events: none; }
.team-testimonials .testimonial-meta-wrapper > .image:hover::after { opacity: 1; transform: scale(1.055); }
.team-testimonials .team-color-layer { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; background-position: center bottom; background-size: cover; background-repeat: no-repeat; opacity: 0; transition: opacity .75s cubic-bezier(.22, 1, .36, 1); pointer-events: none; }


@media (prefers-reduced-motion: reduce) {
  .team-testimonials .testimonial-meta-wrapper > .image::after { transition: none; transform: none; }
  .team-testimonials .testimonial-meta-wrapper > .image:hover::after { transform: none; }
}






/************************************/
/********** LINKEDIN START **********/
/************************************/

.linkedin-start-section { --red: #fa2044; padding: 90px 24px; color: var(--c-text); }
.linkedin-start-container { display: flex; flex-direction: column; width: 100%; max-width: 1200px; margin-inline: auto; }
.linkedin-start-grid { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); align-items: start; gap: clamp(40px, 7vw, 110px); width: 100%; }
.linkedin-start-offer { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.linkedin-start-program { display: flex; flex-direction: column; gap: 44px; min-width: 0; }

/* TITRE ET OFFRE */
.linkedin-start-title { margin: 0; font-size: 40px; font-weight:500; line-height: 56px; }
.linkedin-start-title .semi-accent { color: var(--red); font-family: 'Lora', serif; font-size: 50px; font-weight: 700; }
.linkedin-start-intro { margin: 0; font-size: 20px; font-weight: 600; line-height: 1.6; }
.linkedin-start-card { display: flex; flex-direction: column; gap: 28px; padding: 40px 30px; background: var(--c-text); color: #fff; border-radius: 16px; box-shadow: 0 5px 10px rgb(0 0 0 / 20%); }
.linkedin-start-card .linkedin-start-list { font-size: 14px; line-height: 1.65; }
.linkedin-start-price { margin: 0; text-align: center; font-size: 24px; font-weight: 600; }
.linkedin-start-price small { font-size: 8px;}

/* PROGRAMME ET LISTES */
.linkedin-start-step { display: flex; flex-direction: column; gap: 18px; }
.linkedin-start-step-title { display: flex; align-items: center; gap: 18px; margin: 0; color: var(--red); font-family: 'Lora', serif; font-size: 20px; line-height: 1.35; }
.linkedin-start-step-title::after { content: ""; flex: 1; min-width: 24px; height: 1px; background: currentColor; }
.linkedin-start-list { margin: 0; font-size: 18px; font-weight:600; line-height: 1.55; }
.linkedin-start-list ul { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 0; list-style: none; }
.linkedin-start-list li { position: relative; margin: 0; padding-left: 22px; }
/* .linkedin-start-list li::before { content: "✓"; position: absolute; top: 0; left: 0; color: var(--red); } */
.linkedin-start-list li p { margin: 0; text-align: left; font-size:18px; }
/* l'accroche seulement : .texte-scroll entoure aussi chaque mot d'un span.wm-word */
.linkedin-start-list li .content span.title > span:not(.wm-word){color: var(--red); font-weight:600;}

/* TRANSITION ET BONUS */
.linkedin-start-transition { display: flex; flex-direction: column; align-items: center; gap: 16px; padding-block: 36px 48px; text-align: center; }
.linkedin-start-bonus { position: relative; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: stretch; width: 100%; background: #fff; border: 1px solid #dedede; border-radius: 16px; box-shadow: 0 12px 30px rgb(0 0 0 / 18%); }
.linkedin-start-bonus-content { display: flex; flex-direction: column; gap: 20px; min-width: 0; padding: 56px 0 56px 56px; }
.linkedin-start-bonus-title { margin: 0; font-size: 36px; font-weight: 400; line-height: 1.2; }
.linkedin-start-bonus-content .linkedin-start-list strong { color: var(--red); }
.linkedin-start-bonus-visual { display: flex; align-items: flex-end; justify-content: center; min-width: 0; overflow: hidden; border-bottom-right-radius: 16px; }
.linkedin-start-bonus-image { display: block; width: 100%; height: auto; }
.linkedin-start-bonus-mascot { position: absolute; top: -90px; right: 28px; width: 100px; height: auto; z-index: 1; }
.linkedin-start-cta { display: flex; justify-content: center; width: 100%; padding-top: 48px; }
/* Chronomètre (chrono.js) : 3 images 600×600 empilées + jauge et graduations rouges créées par le JS
   centre du cadran : 50% / 48.67% ; rayon de la jauge : 33% (198 px sur 600) ; pivot de l'aiguille : 50% / 53.67% */
.chrono { position: relative; display: grid; }
.chrono > img { grid-area: 1 / 1; display: block; width: 100% !important; height: auto !important; margin: 0; }
.chrono .chrono-bg { position: relative; z-index: 2; }
/* taille et hauteur de la montre + aiguille : réglées dans chrono.js (WATCH), GSAP écrase les propriétés CSS scale / translate */
.chrono .chrono-watch { position: relative; z-index: 4; transform-origin: 50% 53.67%; }
.chrono .chrono-hand { position: relative; z-index: 5; transform-origin: 50% 53.67%; }
/* jauge crayonnée : canvas dessiné par chrono.js */
.chrono-gauge { position: absolute; z-index: 1; left: 17%; top: 15.67%; width: 66%; height: auto; aspect-ratio: 1; pointer-events: none; }
.chrono-ticks { position: absolute; inset: 0; z-index: 3; background: #e6253d; pointer-events: none;
  -webkit-mask-image: conic-gradient(from 0deg at 50% 48.67%, #000 calc(var(--p, 0) * 1deg), transparent 0), var(--chrono-bg); mask-image: conic-gradient(from 0deg at 50% 48.67%, #000 calc(var(--p, 0) * 1deg), transparent 0), var(--chrono-bg);
  -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-composite: source-in; mask-composite: intersect; }

/* Mascotte qui pointe (mascot-point.js) : corps + bras sur deux images 300×300
   bras réduit et posé sur l'épaule ; pivot = base de l'avant-bras dans l'image du bras (27% 63%) */
.mascot-point { width: 150px; z-index: 2; }
@media (min-width: 992px) {
  .mascot-point.brxe-div { right: -45px !important; }
  /* Employee Advocacy : texte d'intro plus long, qui descend jusqu'à la carte → mascotte remontée (lu par mascot-point.js) */
  .page-id-1666 .mascot-point { --mascot-lift: 115px; }
  /* … et sur écran moins large le titre passe sous elle : on la cale à hauteur de « Vous aussi, » (ligne courte) */
  .page-id-1666 .mascot-point { --mascot-anchor: title; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .page-id-1666 .mascot-point.brxe-div { width: 125px; }
}
.mascot-point img { display: block; width: 100% !important; height: auto !important; margin: 0; }
.mascot-point .mascot-point-body { position: relative; z-index: 2; }
/* bras derrière le corps, base de l'avant-bras rentrée dans le flanc : il reste attaché quelle que soit la rotation */
.mascot-point .mascot-point-arm, .mascot-point .mascot-point-hand { position: absolute; z-index: 1; left: 45%; top: 27%; width: 38% !important; transform-origin: 27% 63%; }
/* bras regroupé avec la boule par le JS : c'est le conteneur qui est placé et qui tourne */
.mascot-point .mascot-point-hand { display: block; }
.mascot-point .mascot-point-hand > .mascot-point-arm { position: relative; left: 0; top: 0; width: 100% !important; }
/* boule rouge lumineuse juste après le bout du doigt (doigt à ~90% / 32% de l'image du bras) */
/* même boule pour les mascottes d'une seule image (mascot-orb.js), placée en px par le JS */
.wm-orb { position: absolute; left: 0; top: 0; width: 5px; height: 5px; border-radius: 50%; background: radial-gradient(circle at 40% 40%, #fff 0, #ff6b7d 30%, #ef263f 65%); box-shadow: 0 0 6px 2px rgb(239 38 63 / 55%), 0 0 14px 5px rgb(239 38 63 / 22%); pointer-events: none; }
.mascot-point-orb { position: absolute; left: 112%; top: 26%; z-index: 3; width: 6px; height: 6px; border-radius: 50%; background: radial-gradient(circle at 40% 40%, #fff 0, #ff6b7d 30%, #ef263f 65%); box-shadow: 0 0 7px 3px rgb(239 38 63 / 55%), 0 0 16px 6px rgb(239 38 63 / 22%); pointer-events: none; }

/* FAQ — ACCORDÉON */
.faq-accordion { width: 100%; }
.faq-item { margin-bottom: 16px; background: #fff; border: 1px solid #ededee; border-radius: 8px; box-shadow: 0 3px 3px rgb(0 0 0 / 20%); }
.faq-item:last-child { margin-bottom: 0; }
.faq-trigger { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 72px; padding: 20px 24px; background: transparent; cursor: pointer; }
.faq-question { flex: 1; min-width: 0; margin: 0; color: var(--c-text); font-family: var(--font-text); font-size: 18px; font-weight: 600; line-height: 27px; }
.faq-icon { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 36px; height: 36px; padding: 10px; border-radius: 50%; background: #f5f5f7; color: #fa2044; font-size: 16px; }
.faq-answer { padding: 0 24px 24px; color: var(--c-text); font-family: var(--font-text); font-size: 16px; font-weight: 400; line-height: 26px; }
.faq-answer p:last-child { margin-bottom: 0; }

/************************************/
/********** OFFRE SITE WEB **********/
/************************************/

.site-web-linkedin-section li p { margin: 0; text-align: left; font-size:18px; }
.site-web-linkedin-arrow{width:90px; height: 100%;}

.ww-service-card{position:relative;width:100%;max-width:560px;margin-top:34px;background:#F5F5F7;border-radius:8px;box-shadow:0 7px 12px rgba(0,0,0,.22);isolation:isolate;}
.ww-service-card::before{content:"";position:absolute;z-index:-1;top:-10px;left:18px;right:18px;height:15px;background:var(--red);border-radius:8px 8px 0 0;}
.ww-service-card__content{display:flex;flex-direction:column;align-items:flex-start;padding:34px 38px 30px;}
.ww-service-card__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:10px;background:var(--red);border-radius:6px;overflow:hidden;}
.ww-service-card__title{margin:14px 0 14px;font-size:20px;font-weight:600;line-height:1.15;color:var(--c-text);}
.ww-service-card__text{max-width:490px;margin:0;font-size:14px;line-height:1.55;color:var(--c-text);}

.logos-carousel {width:100%;overflow:hidden;}
.logos-carousel .swiper-slide {width:180px!important;height:75px;display:flex;align-items:center;justify-content:center;}
.logos-carousel .swiper-slide img {width:auto!important;height:auto!important;max-width:150px!important;max-height:42px!important;object-fit:contain;}

.ww-cards-scroll {position:relative;}
.ww-scroll-card {position:relative;width:100%;transform-origin:center top;will-change:transform;}
.ww-card-visual {display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:0;}
.ww-card-visual img {display:block;position:static;width:auto;height:auto;max-width:90%;max-height:90%;object-fit:contain;}

/******************************/
/********** BRANDING **********/
/******************************/

.choice-section {position:relative;width:100%;padding:80px 20px 90px;overflow:hidden;background:#fff;}
.choice-container {position:relative;width:100%;max-width:1200px;margin:0 auto;}
.choice-heading {display:flex;flex-direction:column;align-items:center;text-align:center;margin:0 auto 80px;}
.choice-heading__title {margin:0;color:var(--red);font-size:40px;font-weight:700;line-height:1.1;}
.choice-heading__subtitle {margin:10px 0 24px;color:#191919;font-size:38px;font-weight:400;line-height:1.15;}
.choice-heading__text {max-width:660px;margin:0;color:#242424;font-size:18px;line-height:1.4;}
.choice-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch;}
.choice-card {position:relative;display:flex;flex-direction:column;min-width:0;min-height:390px;padding:38px 36px;border:1px solid #ddd;border-radius:28px;background:#f7f7f8;box-shadow:0 12px 20px rgba(0,0,0,.15);}
.choice-card--featured {border:2px solid var(--red);}
.choice-card__eyebrow {margin:0 0 14px;color:var(--red);font-size:14px;font-weight:600;text-transform:uppercase;}
.choice-card__divider {width:100%;height:1px;margin:0 0 20px;background:#d7d7d7;}
.choice-card__title {margin:0 0 32px;color:#222;font-size:24px;font-weight:400;line-height:1.15;}
.choice-card__title strong {color:var(--red);font-family:var(--font-accent);font-size:32px;font-weight:600;}
.choice-card__features {display:flex;flex-direction:column;gap:12px;margin-top:0;}
.choice-card__features p {position:relative;margin:0;padding-left:20px;font-size:15px;line-height:1.35;}
.choice-card__features p::before {content:"✓";position:absolute;left:0;top:0;color:var(--red);font-size:12px;}
.choice-card__badge {position:absolute;display:flex;align-items:center;gap:10px;left:50%;top:-48px;transform:translateX(-50%);white-space:nowrap;font-size:17px;font-weight:700;}
.choice-footer {position:relative;width:390px;max-width:100%;margin:55px auto 0;}
.choice-footer__text {margin:0 0 24px;padding-left:32px;font-size:17px;line-height:1.4;}
.choice-footer__arrow {position:absolute;width:65px;left:-70px;top:-15px;}
.choice-footer__button {display:flex;width:max-content;margin:0 auto;padding:14px 25px;border-radius:100px;background:var(--red);color:#fff;font-size:13px;font-weight:700;text-transform:uppercase;}
.choice-mascot {position:absolute;z-index:2;width:auto;height:auto;pointer-events:none;}
.choice-mascot--top {width:100px;left:40px;top:125px;}
.choice-mascot--bottom {width:80px;right:-80px;bottom:-50px;}
/* Poussin « je ne sais pas » en calques (mascot-shrug.js) : même place et même taille que l'ancienne image
   (.choice-mascot--top + ses réglages Bricks : 140px de large, top 90px sous 992px)
   4 toiles 140×140 empilées ; pivots : épaules et cou mesurés sur les calques, pattes pour le corps */
.mascot-shrug.brxe-div { position: absolute; z-index: 2; left: 40px; top: 125px; display: grid; width: 140px; }
.mascot-shrug > img { grid-area: 1 / 1; display: block; width: 100% !important; height: auto !important; margin: 0; }
.mascot-shrug .mascot-shrug-wing-l { transform-origin: 34% 54%; }
.mascot-shrug .mascot-shrug-wing-r { transform-origin: 60% 54%; }
.mascot-shrug .mascot-shrug-body { transform-origin: 50% 95%; }
.mascot-shrug .mascot-shrug-head { transform-origin: 50% 52%; }


/******************************/
/********** EMPLOYEE **********/
/******************************/

.option-section {position:relative;width:100%;overflow:hidden;background:#1c1c1b;}
.option-section__container {position:relative;display:flex;align-items:center;justify-content:center;max-width:1400px;min-height:390px;margin:0 auto;padding:70px 30px;}
.option-section__content {position:relative;z-index:2;width:100%;max-width:600px;}
.option-section__label {margin-bottom:14px;color:#fff;font-size:18px;font-weight:600;}
.option-section__label strong {color:#ed263b;font-size:40px;font-family:var(--font-text);font-weight:600;}
.option-section__text {margin:0;color:#fff;font-size:34px;font-weight:300;line-height:1.35;}
.option-section__text strong {color:#ed263b;font-family:var(--font-accent);font-size:1.12em;font-weight:600;}
.option-section__hand {position:absolute;z-index:1;width:340px;height:auto;pointer-events:none;}
.option-section__hand--left {left:-55px;top:50%;transform:translateY(-50%);}
.option-section__hand--right {right:-45px;top:50%;transform:translateY(-50%);}



/******************************/
/********* COMMUNAUTE *********/
/******************************/

.community-hero {position:relative;min-height:730px;background:#080808;overflow:hidden;}
.community-hero__container {position:relative;width:100%;max-width:1180px;min-height:730px;margin:0 auto;}
.community-hero__content {position:absolute;z-index:3;left:70px;top:50%;width:40%;max-width:480px;transform:translateY(-50%);}
.community-hero__eyebrow {margin-bottom:28px;color:#fff;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;}
.community-hero__title {margin:0;color:#fff;font-size:58px;font-weight:300;line-height:1.05;}
.community-hero__title strong {color:#ed263b;font-family:Georgia,serif;font-weight:700;}
.community-hero__visual {position:absolute;z-index:1;inset:0;overflow:hidden;}
.community-hero__image {position:absolute;right:0;bottom:0;width:100%;height:auto;max-width:none;}
/* grand écran : la photo (ratio 1024/519) ne dépasse jamais la hauteur du hero, sinon les têtes passent sous le menu ;
   elle reste calée en bas à droite */
@media (min-width: 1200px) {
  .community-hero__image {width:auto;height:min(100%, 50.68vw);}
}

.community-cta {position:relative;width:100%;min-height:500px;background:#1c1c1b;overflow:hidden;}
.community-cta__container {position:relative;width:100%;max-width:1440px;min-height:500px;margin:0 auto;}
.community-cta__content {position:absolute;z-index:2;top:50%;left:7%;width:36%;max-width:430px;transform:translateY(-50%);}
.community-cta__content .ww-h2 {color:#fff;}
.community-cta__title {margin:0 0 32px;color:#fff;font-size:38px;font-weight:300;line-height:1.22;}
.community-cta__button {display:inline-flex;align-items:center;justify-content:center;min-width:185px;height:38px;padding:0 28px;border-radius:999px;background:#ed263b;color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;}
.community-cta__button:hover {transform:translateY(-2px);}
.community-cta__visual {position:absolute;z-index:1;right:0;bottom:0;width:58%;height:100%;pointer-events:none;}
.community-cta__image {position:absolute;right:4%;bottom:0;width:auto;height:92%;max-width:none;object-fit:contain;object-position:right bottom;}


/************************************/
/********** CREATIONS ***************/
/************************************/

/* HERO CRÉATIONS */
.creations-hero { position: relative; isolation: isolate; overflow: hidden; width: 100%; min-height: 730px; padding:150px 24px 80px; background: #050505; color: #fff; }
.creations-hero-container { position: relative; z-index: 2; display: flex; justify-content: center; flex-direction: column; width: 100%; max-width: 1180px; min-height: 500px; margin-inline: auto; }
.creations-hero-content { display: flex; flex-direction: column; align-items: flex-start; gap: 30px; width: 58%; }
.creations-hero-eyebrow { position: relative; margin: 0 0 8px; font-family: var(--font-text); font-size: 14px; font-weight: 700; line-height: 20px; letter-spacing: .04em; }
.creations-hero-eyebrow::after { content: ""; position: absolute; left: 0; bottom: -12px; width: 115px; height: 7px; background: url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/07/Vector.png") center / contain no-repeat; }
.creations-hero-title { margin: 0; color: #fff; font-family: var(--font-text); font-size: 50px; font-weight: 400; line-height: 64px; letter-spacing: -.035em; }
.creations-hero-title span { color: #ef263f; font-family: 'Lora', serif; font-size: 60px; font-weight: 600; }
.creations-hero-description { max-width: 610px; margin: 0; color: #e5e5e5; font-family: var(--font-text); font-size: 20px; line-height: 36px; }
.creations-hero-image { position: absolute; top: 0; right: 0; z-index: 0; display: block; width: 50%; height: 100%; object-fit: cover; object-position: center; }
.creations-hero::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, #050505 0%, #050505 43%, transparent 65%); pointer-events: none; }

:root { interpolate-size: allow-keywords; }

/* FAQ en attente de contenu (bloc construit dans functions.php autour de #brxe-zoxcoa) */
.ww-soon { display:flex; flex-direction:column; align-items:center; max-width:640px; margin:0 auto; padding:160px 24px; text-align:center; animation:wwSoonIn 1s cubic-bezier(.22, 1, .36, 1) both; }
.ww-soon__eyebrow { position:relative; margin:0 0 34px; color:var(--c-text); font-family:var(--font-text); font-size:13px; font-weight:700; line-height:1; letter-spacing:.04em; text-transform:uppercase; }
.ww-soon__eyebrow::after { content:""; position:absolute; left:50%; bottom:-14px; width:115px; height:7px; transform:translateX(-50%); background:url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/07/Vector.png") center / contain no-repeat; }
.ww-soon__status { display:inline-flex; align-items:center; gap:5px; margin:0 0 26px; padding:8px 16px 8px 14px; border:1px solid #ededee; border-radius:999px; background:#fff; box-shadow:0 3px 10px rgb(0 0 0 / 8%); color:#55524f; font-family:var(--font-text); font-size:12px; font-weight:600; line-height:1; }
.ww-soon__status span { width:5px; height:5px; border-radius:50%; background:var(--red); animation:wwSoonDot 1.2s ease-in-out infinite; }
.ww-soon__status span:nth-child(2) { animation-delay:.15s; }
.ww-soon__status span:nth-child(3) { margin-right:6px; animation-delay:.3s; }
/* les marges posées sur le titre dans Bricks passent sur le bloc (.ww-soon) */
/* #brxe-zoxcoa est un conteneur Bricks (flex, aligné à gauche) : repassé en bloc pour que le centrage s'applique */
body .ww-soon__title, body #brxe-zoxcoa.ww-soon__title { display:block !important; width:100%; max-width:none; margin:0 !important; text-align:center !important; color:var(--c-text); font-size:46px; font-weight:400; line-height:1.15; letter-spacing:-.035em; }
.ww-soon__title span { color:var(--red); font-family:'Lora', serif; font-size:1.2em; font-weight:600; }
.ww-soon__text { max-width:520px; margin:24px 0 34px; color:#46433f; font-family:var(--font-text); font-size:17px; line-height:1.6; }
.ww-soon__button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:14px 38px; border-radius:999px; background:var(--red); color:#fff; font-family:var(--font-text); font-size:12px; font-weight:700; line-height:1; letter-spacing:.03em; text-transform:uppercase; text-decoration:none; transition:transform 200ms ease, box-shadow 200ms ease; }
.ww-soon__button:hover { color:#fff; transform:translateY(-2px); box-shadow:0 8px 18px rgba(230, 30, 60, .35); }
@keyframes wwSoonIn { from { opacity:0; transform:translateY(24px); } to { opacity:1; transform:none; } }
@keyframes wwSoonDot { 0%, 100% { opacity:.25; transform:translateY(0); } 50% { opacity:1; transform:translateY(-3px); } }
@media (max-width: 767px) {
  body .ww-soon__title { font-size:32px; }
  .ww-soon__text { font-size:15px; }
}
@media (prefers-reduced-motion: reduce) {
  .ww-soon, .ww-soon__status span { animation:none; }
}
/* fond de particules (pages/particles.js) : toile derrière le contenu de la section */
.has-particles { position:relative; isolation:isolate; }
.ww-particles { position:absolute; inset:0; z-index:-1; width:100%; height:100%; pointer-events:none; }
.creations-projects-grid { display:grid; align-content:start; gap:28px; width:100%; margin-top:48px; }

.projects-filter{display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:wrap!important;width:100%;gap:12px 30px!important;margin:25px 0 60px;}
.projects-filter ul,.projects-filter fieldset,.projects-filter .bricks-filter-options{display:contents!important;}
.projects-filter li{margin:0!important;padding:0!important;list-style:none!important;}
.projects-filter label{position:relative;display:inline-flex!important;align-items:center!important;isolation:isolate;margin:0!important;padding:8px 2px;font-size:17px;font-weight:600;line-height:1;color:#181818;white-space:nowrap;cursor:pointer;}
.projects-filter label:has(input:checked)::before{content:"";position:absolute;z-index:-1;top:2px;right:-15px;bottom:2px;left:-4px;background:url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/09/circle-red-responsive.svg") center/100% 100% no-repeat;pointer-events:none;}
.projects-filter label:has(input:checked)::after{content:none;}
.projects-filter input[type="radio"]{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;opacity:0!important;pointer-events:none!important;}
.projects-filter [class*="indicator"]{display:none!important;}

.creation-card { position:relative; display:flex; flex-direction:column; justify-content:flex-end; width:100%; min-width:0; min-height:350px; overflow:hidden; isolation:isolate; border-radius:12px; background:var(--c-text) center/cover no-repeat; color:#fff; }
.creation-card::before { content:""; position:absolute; right:0; bottom:0; left:0; z-index:1; width:100%; height:62%; pointer-events:none; background:linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.75) 100%); }
.creation-card .creation-card-image { position:absolute; inset:0; z-index:0; display:block; width:100%; height:100%; margin:0; object-fit:cover; object-position:center; transition:transform 850ms cubic-bezier(.22, .61, .36, 1); }
.creation-card .creation-card-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.creation-card .creation-card-content { position:relative; z-index:2; display:flex; flex-direction:column; justify-content:flex-end; width:100%; min-width:0; }
.creation-card .creation-card-tags { display:flex; flex-direction:column; align-items:flex-start; gap:16px; width:100%; min-width:0; }
.creation-card .creation-card-client { margin-top:-10px; color:#fff; font-size:16px; font-weight:400; line-height:24px; letter-spacing:-0.04em; }
.creation-card .creation-card-title { width:100%; margin:0; color:var(--red); font-size:26px; font-weight:500; line-height:1.15; letter-spacing:-0.025em; }
.creation-card .creation-card-details { display:block; max-height:0; gap:0; overflow:hidden; opacity:0; visibility:hidden; transform:translateY(10px); transition:max-height 750ms cubic-bezier(.22, .61, .36, 1), opacity 220ms ease, transform 420ms cubic-bezier(.22, 1, .36, 1), visibility 0s linear 750ms; }
.creation-card:hover .creation-card-details, .creation-card:focus-within .creation-card-details { max-height:180px; opacity:1; visibility:visible; transform:translateY(0); transition-delay:0s, 220ms, 220ms, 0s; }
.creation-card .creation-card-description { display:block; height:auto !important; max-height:none; overflow:visible; }
.creation-card .creation-card-button { position:relative; display:inline-flex; margin-top:14px; }

.creation-card .creation-card-details:empty { display:none; }
.creation-card .creation-card-image { transition:transform 800ms ease-in-out; }
.creation-card:hover .creation-card-image, .creation-card:focus-within .creation-card-image { transform:scale(1.04); }


/*** Animations à affiner... *****/

.creation-card .creation-card-description { box-sizing:border-box; display:-webkit-box; flex:0 0 auto; width:100%; max-width:46ch; max-height:82px; margin:0; padding:4px 0 4px 12px; overflow:hidden; border-left:1px solid #fff; color:#fff; font-size:15px; font-weight:400; line-height:1.65; overflow-wrap:anywhere; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.creation-card .creation-card-button { position:relative; z-index:1; display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; gap:12px; max-width:100%; min-height:27px; margin:0; padding:8px 35px; border:1px solid transparent; border-radius:999px; background:var(--red);  color:#fff; font-size:8px; font-weight:600; line-height:1.4; text-align:center; text-decoration:none; white-space:normal; transition:background-color 200ms ease, transform 200ms ease; }
.creation-card .creation-card-description:empty, .creation-card .creation-card-button:empty { display:none; }
/* survol « premium » des cartes (creations.js) : inclinaison 3D, reflet qui suit la souris, ombre profonde + liseré rouge ;
   l'image est animée par GSAP (parallaxe + zoom) : sa transition CSS est coupée pour ne pas freiner le mouvement */
@media (hover: hover) and (pointer: fine) {
  .creation-card { transition: box-shadow 500ms ease; will-change: transform; }
  .creation-card.is-tilt { box-shadow: 0 40px 70px -30px rgba(0, 0, 0, .75), 0 0 0 2px rgba(230, 37, 61, .85); }
  .creation-card .creation-card-image { transition: none; }
}
.creation-card-sheen { position: absolute; inset: 0; z-index: 3; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity 400ms ease; mix-blend-mode: overlay; background: radial-gradient(circle at var(--mx, 50%) var(--my, 50%), rgba(255, 255, 255, .45) 0%, rgba(255, 255, 255, .12) 30%, rgba(255, 255, 255, 0) 60%); }
.creation-card.is-tilt .creation-card-sheen { opacity: 1; }
/* au survol, seul le bouton « Voir le site » apparaît : la description n'est plus affichée */
.creation-card .creation-card-description { display:none !important; }
/* bouton plus proche du nom (16px de gap des tags + 14px de marge → ~8px) et apparition plus vivante :
   le bloc s'ouvre vite (max-height ajusté au bouton), puis le bouton monte avec rebond et un reflet le traverse */
/* même marge en bas qu'à gauche, avec ou sans bouton : pas d'écart (gap Bricks) devant le bloc bouton replié,
   l'espace au-dessus du bouton est dans le bloc (caché tant qu'il est replié) ; texte coupé à sa ligne de base en bas */
.creation-card .creation-card-content { gap:0 !important; }
.creation-card .creation-card-tags { --tags-gap:16px; gap:var(--tags-gap) !important; }
/* dernier texte avant le bloc bouton (titre, ou client s'il n'y a pas de titre) */
.creation-card .creation-card-tags > :nth-last-child(1 of :not(.creation-card-details)) { text-box:trim-end alphabetic; }
/* le bloc bouton est dans .creation-card-tags : on annule l'écart (gap) posé devant lui */
.creation-card .creation-card-details { margin-top:calc(-1 * var(--tags-gap, 16px)) !important; max-height:0; transition:max-height 700ms cubic-bezier(.4, 0, .2, 1), opacity 400ms ease, transform 450ms cubic-bezier(.22, 1, .36, 1), visibility 0s linear 700ms !important; }
.creation-card:hover .creation-card-details, .creation-card:focus-within .creation-card-details { max-height:80px; transition-delay:0s, 0s, 0s, 0s !important; }
/* le bloc s'ouvre doucement, le bouton apparaît en fondu pendant l'ouverture (le bloc ne monte plus) */
.creation-card .creation-card-details { transform:none !important; }
.creation-card .creation-card-details .creation-card-button { margin-top:18px !important; overflow:hidden; opacity:0; transform:none; transition:opacity 650ms ease, transform 200ms ease, background-color 200ms ease !important; }
.creation-card:hover .creation-card-details .creation-card-button, .creation-card:focus-within .creation-card-details .creation-card-button { opacity:1; transform:none; transition-delay:180ms, 0s, 0s !important; }
.creation-card .creation-card-details .creation-card-button::after { content:""; position:absolute; top:0; bottom:0; left:-60%; width:40%; pointer-events:none; background:linear-gradient(100deg, transparent, rgba(255, 255, 255, .22), transparent); transform:skewX(-20deg); }
.creation-card:hover .creation-card-details .creation-card-button::after, .creation-card:focus-within .creation-card-details .creation-card-button::after { animation:wwBtnShine 900ms ease 350ms both; }
/* survol du bouton : pas de déplacement ni d'ombre (coupés par le bloc), seulement le reflet qui repasse */
.creation-card .creation-card-button, .creation-card .creation-card-button:hover, .creation-card .creation-card-button:focus, .creation-card .creation-card-button:active { transform:none !important; translate:none !important; top:auto !important; bottom:auto !important; box-shadow:none !important; filter:none !important; }
.creation-card .creation-card-details .creation-card-button:hover::after { animation:wwBtnShineAgain 900ms ease both; }
@keyframes wwBtnShine { from { left:-60%; } to { left:130%; } }
@keyframes wwBtnShineAgain { from { left:-60%; } to { left:130%; } }
@media (prefers-reduced-motion: reduce) {
  .creation-card .creation-card-details .creation-card-button { transform:none; }
  .creation-card:hover .creation-card-details .creation-card-button::after, .creation-card .creation-card-details .creation-card-button:hover::after { animation:none; }
}
.creation-card .creation-card-button:focus-visible { outline:3px solid #fff; outline-offset:4px; }
.creation-card:hover .creation-card-image, .creation-card:focus-within .creation-card-image { transform:scale(1.04); }

.creation-card .creation-card-details { display:block; gap:0; }
.creation-card .creation-card-description { display:block; height:auto !important; max-height:none; overflow:visible; }
.creation-card .creation-card-button { position:relative; display:inline-flex; margin-top:14px; }

.creation-card .creation-card-categories { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; width: 100%; margin: 0; pointer-events: none;}
.creation-card .creation-card-categories .bricks-button { display: inline-flex; align-items: center; justify-content: center; min-height: 26px; margin: 0; padding: 6px 12px; border: 1px solid #e2e2e2; border-radius: 14px 0 14px 0; background: #fff; color: #111; font-size: 10px; font-weight: 500; line-height: 1.2; letter-spacing: -0.01em; text-align: center; text-transform: none; text-decoration: none; }
.creation-card .creation-card-categories a[href*="/site-web/"] { background: #252422; color: #fff; }
.creation-card .creation-card-categories a[href*="/logo/"] { background: #fff; color: #111; }
.creation-card .creation-card-categories a[href*="/linkstart/"] { background: #fff; color: #111; }
.creation-card .creation-card-categories a[href*="/identite-visuelle/"] { background: var(--red);  color: #fff; }
.creation-card .creation-card-categories a[href*="/banniere-linkedin/"] { background: var(--red);  color: #fff; }
.creation-card .creation-card-categories a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }


/************************************/
/************ CONTACT ***************/
/************************************/

.contact-hero { position:relative; min-height:calc(100svh - 80px); max-height: 800px; overflow:hidden; background-color:#000; background-position:center; background-repeat:no-repeat; background-size:cover; }
.contact-hero::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; background:linear-gradient(90deg, rgba(0,0,0,0) 20%, rgba(0,0,0,.15) 42%, rgba(0,0,0,.88) 64%, #000 100%); }
.contact-hero-inner { position:relative; z-index:1; display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); align-items:center; width:100%; max-width:1200px; min-height:inherit; margin:0 auto; padding:0; }
.contact-hero-title { grid-column:2; width:100%; max-width:600px; margin:0; color:#fff; font-size:50px; font-weight:400; line-height:64px; letter-spacing:-0.035em; text-wrap:balance; }
.contact-hero-title span { color:#ed1c3b !important;  font-family: 'Lora', serif; font-size: 60px; font-weight: 600; }

.parcours-section { padding:clamp(50px, 9vw, 140px) 32px; background:#fff; color:var(--c-text); }
.parcours-container { display:flex; flex-direction:column; align-items:center; width:100%; max-width:1188px; margin:0 auto; }
.parcours-label { margin:0 0 28px; padding:10px 20px; border:1px solid var(--c-text); border-radius:50%; font-size:12px; font-weight:600; line-height:1; letter-spacing:.04em; text-transform:uppercase; transform:rotate(-2deg); }
.parcours-title { max-width:600px; margin:0; color:var(--c-text); font-size:40px; font-weight:400; line-height:1.08; letter-spacing:-.035em; text-align:center; text-wrap:balance; }
.parcours-title span { color:var(--red);   font-family: 'Lora', serif; font-size: 50px; font-weight: 600;  }
.parcours-intro { max-width:650px; margin:24px auto 56px; color:#64615e; font-size:17px; line-height:1.65; text-align:center; }

.faq-accordion.faq-accordion--white { width:100%; }
.faq-accordion--white .faq-item { margin-bottom:16px; overflow:hidden; border:0; border-radius:8px; background:#f5f5f7; box-shadow:none; transition:background-color 250ms ease; }
.faq-accordion--white .faq-item:last-child { margin-bottom:0; }
.faq-accordion--white .faq-item:hover { background:#efeff1; }
.faq-accordion--white .faq-trigger { min-height:72px; padding:18px 18px 18px 26px; background:transparent; }
.faq-accordion--white .faq-question { display:flex; align-items:center; gap:10px; color:var(--c-text); font-family:var(--font-text); font-size:18px; font-weight:600; line-height:27px; }
.faq-accordion--white .faq-question::before { content:""; display:block; flex:0 0 auto; width:16px; height:16px; background-color:var(--c-text); -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18M8 14h.01M12 14h.01M16 14h.01M8 18h.01M12 18h.01M16 18h.01'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18M8 14h.01M12 14h.01M16 14h.01M8 18h.01M12 18h.01M16 18h.01'/%3E%3C/svg%3E") center/contain no-repeat; }
.faq-accordion--white .faq-icon { width:40px; height:40px; padding:10px; background:#fff; color:#fa2044; font-size:18px; box-shadow:none; }
.faq-accordion--white .faq-answer { padding:0 26px 26px 52px; background:transparent; color:#55524f; font-size:16px; line-height:26px; }


.skills-section { position:relative; overflow:hidden; padding:100px 0 110px;}
.skills-container { position:relative; z-index:2; display:flex; flex-direction:column; align-items:center; width:100%; max-width:100%; margin:0 auto; }
.skills-label { margin:0 0 26px; color:var(--c-text); font-family:var(--font-text); font-size:13px; font-weight:700; line-height:1; letter-spacing:.04em; text-align:center; text-transform:uppercase; }
.skills-title { max-width:760px; margin:0; color:var(--c-text); font-size:40px; font-weight:400; line-height:1.08; letter-spacing:-.035em; text-align:center; text-wrap:balance; }
.skills-title span { color:var(--red);   font-family: 'Lora', serif;  font-weight:600; font-size:50px;}
.skills-intro { max-width:680px; margin:26px auto 60px; color:#46433f; font-family:var(--font-text); font-size:17px; font-weight:400; line-height:1.5; text-align:center; }

.skills-slider { width:100%; }
.skills-slider .splide__track { padding-top:12px !important; padding-bottom:18px !important; }
.skills-slider .splide, #brxe-ellpek, .brxe-slider-nested{background-color: transparent !important;}
/* quand toutes les cartes tiennent à l'écran (Splide ne pose pas .is-overflow), la liste est centrée au lieu d'être collée à gauche */
.skills-section .splide:not(.is-overflow) .splide__list { justify-content:center; }

.skills-card { display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; width:100%; height: 440px !important; padding:28px; overflow:hidden; border:1px solid #e7e7e7; border-radius:22px; background:#fff; box-shadow:0 8px 16px rgb(0 0 0 / 25%); text-align:left; }
.skills-card-category { margin:0 0 14px; color:var(--red);  font-family:var(--font-text); font-size:13px; font-weight:700; line-height:1.2; text-transform:uppercase; }
.skills-card-separator { width:100%; height:1px; margin-bottom:20px; background:#dedede; }

.skills-card-title { margin:0 0 26px; color:var(--c-text); font-size:25px; font-weight:400; line-height:1.08; letter-spacing:-.025em; }
.skills-card-title span { color:var(--red);  font-family: 'Lora', serif; font-size:30px; font-weight:600; }
.skills-card-list { display:flex; flex-direction:column; gap:9px; margin:0 0 30px; padding:0; list-style:none; width:100%;}
.skills-card-list li { position:relative; margin:0; padding-left:18px; color:#55524f; font-family:var(--font-text); font-size:14px; line-height:1.35; }
.skills-card-list li::before { content:"✓"; position:absolute; top:0; left:0; color:var(--red);  font-size:11px; font-weight:700; }
.skills-card-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:auto; }
.skills-card-button { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:10px 34px; border-radius:999px; background:var(--red);  color:#fff; font-family:var(--font-text); font-size:11px; font-weight:700; line-height:1; text-decoration:none; }
.skills-card-badge { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:10px 20px; border-radius:999px; background:var(--c-text); color:#fff; font-family:var(--font-text); font-size:11px; font-weight:700; line-height:1; text-transform:uppercase; }
.skills-card-badge:empty { display:none; }

.skills-card-list ul { display:flex; flex-direction:column; gap:9px; margin:0 !important; padding:0 !important; list-style:none !important; }
.skills-card-list li { position:relative; margin:0; padding-left:18px; list-style:none !important; }
.skills-card-list li::marker { content:""; font-size:0; }
.skills-card-list li::before { content:"✓"; position:absolute; top:0; left:0; color:var(--red);  font-size:11px; font-weight:700; }

.experiences-section {width:100%;padding:0 0 70px;}
.experiences-section__container {width:100%;max-width:1188px;margin:0 auto;}
.experiences-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%;}

.experiences-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%;}
.experience-card {display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:198px;padding:24px 28px 20px;background:#fff;border:1px solid #e2e2e2;border-radius:18px;box-shadow:0 8px 10px rgba(0,0,0,.18);text-align:center;text-decoration:none;transition:translate .25s ease,box-shadow .25s ease;}
.experience-card:hover {translate:0 -4px;box-shadow:0 12px 20px rgba(0,0,0,.2);}
.experience-card__image {width:auto;height:64px;margin-bottom:12px;object-fit:contain;}
.experience-card__title {margin:0 0 6px;color:var(--red); font-family: var(--font-accent); font-size:24px;font-weight:600;line-height:1.2;}
.experience-card__text {margin:0;color:var(--c-text); font-family: var(--font-text); font-size:20px;line-height:1.35;}



.newsletter-section {position:relative;display:flex;align-items:center;min-height:430px;padding:70px 24px;background-color:var(--c-text);background-repeat:no-repeat;background-position:right center;background-size:auto 100%;overflow:hidden;}
.newsletter-section__container  {display:flex;flex-direction:column;justify-content:center;width:100%;max-width:1188px;min-height:430px;margin:0 auto;}
.newsletter-section__content {display:flex;flex-direction:column;align-items:flex-start;width:46%;max-width:520px;}
.newsletter-section__title {margin:0 0 24px;color:#fff;font-size:40px;font-weight:400;line-height:1.5;letter-spacing:-.5px;}
.newsletter-section__title strong {font-weight:700;}
.newsletter-section__text {margin:0 0 28px;color:#fff;font-size:20px;font-weight:400;line-height:1.45;}
.newsletter-section__button {display:inline-flex;align-items:center;justify-content:center;padding:15px 30px;background:#ee1f3b;border-radius:999px;color:#fff;font-size:14px;font-weight:700;line-height:1;text-decoration:none;text-transform:uppercase;transition:background-color .25s ease,transform .25s ease;}
.newsletter-section__button:hover {background:#d91530;transform:translateY(-2px);}


.reviews-wall-section {position:relative;width:100%;padding:90px 20px 0;background:#fff;overflow:hidden;}
.reviews-wall-container {width:100%;max-width:1320px;margin:0 auto;}
.reviews-wall-heading {display:flex;flex-direction:column;align-items:center;margin:0 0 58px;text-align:left;}
.reviews-wall-preview {position:relative;width:100%;max-height:1120px;overflow:hidden;transition:max-height .7s ease;}
.reviews-wall-preview::after {content:"";position:absolute;right:0;bottom:0;left:0;z-index:5;height:170px;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff);pointer-events:none;transition:opacity .3s ease;}
.reviews-wall-grid {display:block;width:100%;column-count:3;column-gap:24px;}
.reviews-wall-card {display:inline-block;width:100%;margin:0 0 24px;padding:28px 30px 30px;background:#f5f5f7;border-radius:8px;box-shadow:0 7px 12px rgba(22,22,30,.17);vertical-align:top;break-inside:avoid;page-break-inside:avoid;}
.reviews-wall-author {display:flex!important;width:100%;flex-direction:row!important;align-items:center!important;justify-content:flex-start;gap:17px;margin:0 0 20px;}
.reviews-wall-avatar {display:block;width:55px!important;height:55px!important;min-width:55px!important;min-height:55px!important;flex:0 0 55px;background:#d9d9d9;border-radius:50%;overflow:hidden;}
.reviews-wall-avatar img {display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center;}
.reviews-wall-name {width:auto!important;min-width:0;flex:1;margin:0!important;color:var(--c-text);font-size:20px;font-weight:600;line-height:1.2;overflow-wrap:anywhere;}
.reviews-wall-rating {width:100%;margin:0 0 23px!important;color:#ffb316;font-size:30px;font-weight:400;line-height:1;letter-spacing:1px;text-align:left;white-space:nowrap;}


.reviews-wall-text {position:relative;width:100%;margin:0;color:var(--c-text);font-size:16px;font-weight:400;line-height:1.45;overflow:visible;}
.reviews-wall-text.is-collapsible {overflow:hidden!important;}
.reviews-wall-text.is-collapsible::after {content:"";position:absolute;right:0;bottom:0;left:0;height:38px;background:linear-gradient(to bottom,rgba(245,245,247,0),#f5f5f7);pointer-events:none;}
.reviews-wall-text.is-expanded::after {display:none;}
.reviews-wall-text p {margin:0 0 18px;}
.reviews-wall-text p:last-child {margin-bottom:0;}
.reviews-wall-card .reviews-wall-more {display:none!important;align-items:center!important;width:max-content!important;min-width:0!important;min-height:0!important;margin:16px 0 0!important;padding:8px 14px!important;color:#68686f!important;background:white!important;border:none!important;border-radius:999px!important;box-shadow:0 3px 10px rgba(30,30,40,.07)!important;font-size:13px!important;font-weight:600!important;line-height:1.2!important;text-decoration:none!important;cursor:pointer;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease,transform .2s ease!important;}
.reviews-wall-card .reviews-wall-more.is-visible {display:inline-flex!important;}
.reviews-wall-card .reviews-wall-more::after {content:"→";margin-left:7px;color:var(--red);font-size:15px;line-height:1;transition:transform .2s ease;}
.reviews-wall-card .reviews-wall-more:hover {color:#fff!important;background:var(--red)!important;box-shadow:0 6px 16px rgba(244,38,67,.22)!important;transform:translateY(-1px);}
.reviews-wall-card .reviews-wall-more:hover::after {color:#fff;transform:translateX(3px);}
.reviews-wall-card .reviews-wall-more:focus-visible {outline:3px solid rgba(244,38,67,.22);outline-offset:3px;}

/* BLOG — LISTE D'ARTICLES (image / texte en alternance) */
.blog-list {display:flex;flex-direction:column;gap:80px;}
.blog-card {display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));align-items:center;gap:64px;width:100%;}
.blog-card__image {display:block;width:100%;aspect-ratio:4 / 3;overflow:hidden;border-radius:0;}
.blog-card__image img, img.blog-card__image {width:100%;height:100%;object-fit:cover;border-radius:0;}
.blog-card__image figcaption {display:none;}
.blog-card__content > .brxe-text-basic:first-child {position:relative;display:table;margin:0 auto 10px;padding:14px 26px;color:#191919;font-size:14px;font-weight:700;line-height:1;letter-spacing:.03em;text-transform:uppercase;}
.blog-card__content > .brxe-text-basic:first-child a {position:relative;z-index:2;color:inherit;text-decoration:none;}
.blog-card:nth-child(even) > .blog-card__image {grid-column:2;grid-row:1;}
.blog-card:nth-child(even) > .blog-card__content {grid-column:1;grid-row:1;}
.blog-card__content .brxe-text-link {display:inline-block;margin-top:30px;font-size:0;}
.blog-card__content .brxe-text-link a {position:relative;display:inline-block;color:var(--c-text);font-size:13px;font-weight:700;line-height:1.4;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;}
.blog-card__content .brxe-text-link a:hover {color:var(--red);}
.blog-card__content .brxe-text-link a::after {content:"";display:inline-block;width:34px;height:14px;margin-left:12px;vertical-align:middle;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-1 0 36 14'%3E%3Cg fill='none' stroke='%23E6253D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 7.4C9 6.6 20 7.2 31.5 6.9'/%3E%3Cpath d='M25.5 1.6C27.9 3.6 30 5.4 32.6 7 30 8.4 27.6 10.4 25.8 12.6'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat;transition:transform .5s cubic-bezier(.22,1,.36,1);}
.blog-card__content .brxe-text-link a:hover::after, .blog-card__content .brxe-text-link a:focus-visible::after {transform:translateX(8px);}
.blog-card__title-link {color:inherit;text-decoration:none;background:linear-gradient(var(--red), var(--red)) 0 100% / 0 2px no-repeat;transition:background-size .6s cubic-bezier(.22,1,.36,1);}
.blog-card__title-link:hover, .blog-card__title-link:focus-visible {background-size:100% 2px;}
.blog-card__content .brxe-text-link .ww-nav-mark--pencil path, .wb-card__more .ww-nav-mark--pencil path {stroke:var(--c-text);stroke-width:1.6;}
.blog-card__content .brxe-text-link .ww-nav-mark--pencil path + path, .wb-card__more .ww-nav-mark--pencil path + path {stroke-width:.9;opacity:.45;}

/* BLOG — PAGE CATÉGORIE ET FICHE ARTICLE (category.php, template-parts/post.php, inc/blog.php, blog.js) */
.wb-page {background:#fff;}
/* overflow-x:hidden (BASE) empêche position:sticky (sommaire) ; clip coupe pareil sans casser le sticky */
html:has(.wb-page), html:has(.wb-page) body {overflow-x:clip;}
.wb-hero .creations-hero-eyebrow {text-transform:uppercase;}
.wb-hero .creations-hero-eyebrow a {color:inherit;text-decoration:none;}
.wb-hero .creations-hero-eyebrow a:hover {color:var(--red);}
.wb-archive {padding:90px 24px 130px;}
.wb-archive__inner {width:100%;max-width:1180px;margin-inline:auto;}

/* Filtres de catégories */
.wb-filters {margin:0 0 80px;}
.wb-filters ul {display:flex;flex-wrap:wrap;justify-content:center;gap:14px 34px;margin:0;padding:0;list-style:none;}
.wb-filters a {position:relative;display:inline-block;padding:10px 4px;color:var(--c-text);font-size:13px;font-weight:700;line-height:1;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;transition:color .3s ease;}
.wb-filters a:hover, .wb-filters a.is-current {color:var(--red);}
.wb-filters sup {margin-left:4px;color:#a3a3a8;font-size:10px;font-weight:600;}
.wb-filters .wm-scribble--rect path {stroke:var(--red);}

/* Grille et cartes */
.wb-grid {display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:80px 44px;}
.wb-card {display:flex;flex-direction:column;min-width:0;}
.wb-card__media {position:relative;display:block;aspect-ratio:4 / 3;overflow:hidden;background:#f5f5f7;}
.wb-card__media::after {content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.22,1,.36,1);}
.wb-card__img {display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.22,1,.36,1), filter .6s ease;}
.wb-card:hover .wb-card__img {transform:scale(1.06);}
.wb-card:hover .wb-card__media::after {transform:scaleX(1);}
.wb-card__body {display:flex;flex:1;flex-direction:column;align-items:flex-start;padding-top:26px;}
.wb-card__meta {display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:16px;}
.wb-card__cat {color:var(--red);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;}
.wb-card__info {color:#8a8a90;font-size:13px;}
.wb-card__title {margin:0 0 14px;font-family:var(--font-text);font-size:23px;font-weight:500;line-height:1.35;letter-spacing:-.01em;}
.wb-card__title a {color:var(--c-text);text-decoration:none;background:linear-gradient(var(--red), var(--red)) 0 100% / 0 2px no-repeat;transition:background-size .6s cubic-bezier(.22,1,.36,1), color .3s ease;}
.wb-card:hover .wb-card__title a {background-size:100% 2px;}
.wb-card__excerpt {margin:0 0 26px;color:#5d5d63;font-size:15.5px;line-height:1.7;}
.wb-card__more {position:relative;display:inline-flex;align-items:center;gap:12px;margin-top:auto;color:var(--c-text);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;}
.wb-arrow {width:34px;height:14px;overflow:visible;fill:none;stroke:var(--red);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .5s cubic-bezier(.22,1,.36,1);}
.wb-card:hover .wb-arrow, .wb-card__more:focus-visible .wb-arrow {transform:translateX(8px);}

/* Article à la une */
.wb-card--featured {grid-column:1 / -1;display:grid;grid-template-columns:minmax(0, 1.2fr) minmax(0, 1fr);align-items:center;gap:70px;padding-bottom:80px;border-bottom:1px solid #ebebee;}
.wb-card--featured .wb-card__media {aspect-ratio:16 / 11;}
.wb-card--featured .wb-card__body {padding-top:0;}
.wb-card--featured .wb-card__title {font-size:40px;font-weight:400;line-height:1.25;letter-spacing:-.03em;}
.wb-card--featured .wb-card__excerpt {font-size:17px;}

/* Pagination */
.wb-pagination {margin-top:90px;}
.wb-pagination ul {display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:0;padding:0;list-style:none;}
.wb-pagination .page-numbers {display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:46px;padding:0 16px;border:1px solid #dcdce0;border-radius:999px;color:var(--c-text);font-size:14px;font-weight:600;text-decoration:none;transition:background-color .3s ease, color .3s ease, border-color .3s ease;}
.wb-pagination a.page-numbers:hover {border-color:var(--red);color:var(--red);}
.wb-pagination .page-numbers.current {background:var(--c-text);border-color:var(--c-text);color:#fff;}
.wb-pagination .page-numbers.dots {border:0;}
.wb-empty {text-align:center;font-size:18px;}

/* Fiche article : progression, hero */
.wb-progress {position:fixed;top:0;left:0;right:0;z-index:100000;height:3px;pointer-events:none;}
.wb-progress span {display:block;height:100%;background:var(--red);transform:scaleX(0);transform-origin:left;}
.wb-hero--post .creations-hero-title {font-size:46px;line-height:1.22;}
.wb-hero__meta {display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;color:#d4d4d8;font-size:15px;line-height:1.4;}
.wb-hero__meta strong {color:#fff;font-weight:600;}
.wb-hero__avatar {width:44px;height:44px;border:2px solid var(--red);border-radius:50%;object-fit:cover;}
.wb-dot {width:4px;height:4px;border-radius:50%;background:var(--red);}

/* Fiche article : mise en page, sommaire, partage */
.wb-post {padding:110px 24px 90px;}
.wb-post__layout {display:grid;grid-template-columns:240px minmax(0, 740px);align-items:stretch;justify-content:center;gap:90px;max-width:1180px;margin-inline:auto;}
.wb-post__aside {position:relative;height:100%;}
.wb-post__sticky {position:sticky;top:130px;display:flex;flex-direction:column;gap:44px;max-height:calc(100vh - 160px);overflow-y:auto;scrollbar-width:none;}
.wb-post__sticky::-webkit-scrollbar {display:none;}
.wb-toc__title {margin:0 0 18px;color:#9a9aa0;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.wb-toc__list {margin:0;padding:0;list-style:none;counter-reset:wbtoc;}
.wb-toc__list li {counter-increment:wbtoc;}
.wb-toc__list a {position:relative;display:grid;grid-template-columns:30px 1fr;padding:9px 0 9px 16px;color:#8a8a90;font-size:14px;line-height:1.45;text-decoration:none;box-shadow:inset 2px 0 0 #ececef;transition:color .35s ease, box-shadow .35s ease;}
.wb-toc__list a::before {content:counter(wbtoc, decimal-leading-zero);color:#c4c4c8;font-family:var(--font-accent);font-size:13px;font-weight:600;transition:color .35s ease;}
.wb-toc__list a:hover {color:var(--c-text);}
.wb-toc__list a.is-active {color:var(--c-text);font-weight:600;box-shadow:inset 2px 0 0 var(--red);}
.wb-toc__list a.is-active::before {color:var(--red);}
.wb-terms ul {display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;}
.wb-terms__cats a {display:inline-flex;align-items:center;gap:10px;color:var(--c-text);font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;transition:color .3s ease;}
.wb-terms__cats a::before {content:"";width:16px;height:2px;background:var(--red);transition:width .4s cubic-bezier(.22,1,.36,1);}
.wb-terms__cats a:hover {color:var(--red);}
.wb-terms__cats a:hover::before {width:26px;}
.wb-terms__cats {flex-direction:column;}
.wb-terms__tags a {display:inline-block;padding:7px 13px;border:1px solid #dcdce0;border-radius:999px;color:#5d5d63;font-size:12.5px;line-height:1;text-decoration:none;transition:background-color .3s ease, border-color .3s ease, color .3s ease;}
.wb-terms__tags a::before {content:"#";margin-right:2px;color:var(--red);transition:color .3s ease;}
.wb-terms__tags a:hover {background:var(--red);border-color:var(--red);color:#fff;}
.wb-terms__tags a:hover::before {color:#fff;}
.wb-share__links {display:flex;gap:10px;}
.wb-share__btn {position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #dcdce0;border-radius:50%;background:#fff;color:var(--c-text);cursor:pointer;transition:background-color .3s ease, border-color .3s ease, color .3s ease, transform .3s ease;}
.wb-share__btn svg {width:17px;height:17px;fill:currentColor;stroke:currentColor;}
.wb-share__copy svg {fill:none;}
.wb-share__btn:hover, .wb-share__btn.is-done {background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-2px);}
.wb-share__done {position:absolute;left:52px;white-space:nowrap;color:var(--red);font-size:12px;font-weight:600;opacity:0;transition:opacity .3s ease;}
.wb-share__btn.is-done .wb-share__done {opacity:1;}
.wb-back {color:var(--c-text);font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;transition:color .3s ease;}
.wb-back:hover {color:var(--red);}

/* Fiche article : contenu */
.wb-post__content {min-width:0;color:#2c2c30;font-size:18px;line-height:1.85;}
.wb-post__content > * {margin-top:0;}
.wb-post__content p {margin:0 0 1.4em;}
.wb-post__content > h1, .wb-post__content > h2 {margin:2.4em 0 .9em;color:var(--c-text);font-family:var(--font-text);font-size:34px;font-weight:500;line-height:1.28;letter-spacing:-.02em;scroll-margin-top:120px;}
.wb-post__content > h1::before, .wb-post__content > h2::before {content:"";display:block;width:90px;height:8px;margin-bottom:22px;background:url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/07/Vector.png") left center / contain no-repeat;}
.wb-post__content > h1:first-child, .wb-post__content > h2:first-child {margin-top:0;}
.wb-post__content > h3 {margin:2em 0 .7em;color:var(--c-text);font-size:23px;font-weight:600;line-height:1.35;}
.wb-post__content strong {color:var(--c-text);font-weight:700;background:linear-gradient(transparent 62%, rgba(230,37,61,.16) 62%);}
.wb-post__content a {color:var(--red);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;}
.wb-post__content ul, .wb-post__content ol {margin:0 0 1.6em;padding:0;list-style:none;}
.wb-post__content li {position:relative;margin:0 0 .8em;padding-left:36px;}
.wb-post__content ul > li::before {content:"";position:absolute;left:2px;top:.55em;width:17px;height:13px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 13'%3E%3Cpath d='M1.5 7.2c1.6 1.2 3 2.6 4.4 4.3C8.6 7.4 11.9 3.9 15.8 1.2' fill='none' stroke='%23E6253D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;}
.wb-post__content ol {counter-reset:wbol;}
.wb-post__content ol > li {counter-increment:wbol;}
.wb-post__content ol > li::before {content:counter(wbol) ".";position:absolute;left:0;top:0;color:var(--red);font-family:var(--font-accent);font-weight:600;}
.wb-post__content blockquote {position:relative;margin:2.2em 0;padding:8px 0 8px 46px;border:0;color:var(--c-text);font-family:var(--font-accent);font-size:25px;font-style:italic;line-height:1.55;}
.wb-post__content blockquote::before {content:"“";position:absolute;left:-4px;top:-22px;color:var(--red);font-size:90px;font-style:normal;line-height:1;}
.wb-post__content blockquote p:last-child {margin-bottom:0;}
.wb-post__content img {display:block;width:100%;height:auto;margin:.6em 0;}
.wb-post__content figure {margin:2em 0;}
.wb-post__content figcaption {margin-top:10px;color:#8a8a90;font-size:13px;text-align:center;}

/* Fiche article : à lire aussi */
.wb-related {padding:110px 24px 130px;background:#f5f5f7;}
.wb-related__title {margin:0 0 70px;text-align:center;}
.wb-related .wb-card__media {background:#e9e9ec;}

/* SCROLLBAR */
@supports not selector(::-webkit-scrollbar) { html {scrollbar-width:thin;scrollbar-color:#bdbdc2 #f5f5f7;} }
html::-webkit-scrollbar {width:10px;}
html::-webkit-scrollbar-track {background:#f5f5f7;}
html::-webkit-scrollbar-thumb {background:#bdbdc2;border:3px solid #f5f5f7;border-radius:10px;}
html::-webkit-scrollbar-thumb:hover, html::-webkit-scrollbar-thumb:active {background:var(--color-accent, #E6253D);}

/* ANIMATIONS */
.wm-anim .hero-title, .wm-anim .hero-image, .wm-anim .about-hero-title, .wm-anim .hero-offer__container, .wm-anim section.hero > .brxe-container, .wm-anim .community-hero__content, .wm-anim .community-hero__visual, .wm-anim .creations-hero, .wm-anim .contact-hero {visibility:hidden;}
.hero-sweep {position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.22) 50%,transparent 65%) 130% 0 / 250% 100% no-repeat;mix-blend-mode:overlay;}
.hero-light {position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;mix-blend-mode:soft-light;background:radial-gradient(circle 340px at var(--light-x,50%) var(--light-y,70%),rgba(255,236,214,.75) 0%,rgba(255,236,214,.25) 45%,transparent 75%);}
.hero-dim {position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;background:rgba(1,2,1,.38);-webkit-mask-image:radial-gradient(circle 420px at var(--light-x,50%) var(--light-y,70%),transparent 0%,transparent 40%,#000 85%);mask-image:radial-gradient(circle 420px at var(--light-x,50%) var(--light-y,70%),transparent 0%,transparent 40%,#000 85%);}
@media (max-width:767px) {.hero-light {background:radial-gradient(circle 180px at var(--light-x,50%) var(--light-y,70%),rgba(255,236,214,.75) 0%,rgba(255,236,214,.25) 45%,transparent 75%);} .hero-dim {background:rgba(1,2,1,.28);-webkit-mask-image:radial-gradient(circle 230px at var(--light-x,50%) var(--light-y,70%),transparent 0%,transparent 40%,#000 85%);mask-image:radial-gradient(circle 230px at var(--light-x,50%) var(--light-y,70%),transparent 0%,transparent 40%,#000 85%);}}
.hero-experts .mark {cursor:default;}
/* Nous : contre-jour rouge derrière le groupe (nous.js) */
.hero-flare {position:absolute;left:50%;bottom:-35%;z-index:1;width:min(1300px,130%);aspect-ratio:2/1;margin-left:calc(min(1300px,130%) / -2);pointer-events:none;opacity:0;mix-blend-mode:screen;background:radial-gradient(ellipse at center,rgba(230,37,61,.6) 0%,rgba(230,37,61,.22) 35%,transparent 68%);}
/* micro-interactions des heros (hero-micro.js) */
.hero-micro {position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;}
.hero-offer {position:relative;}
.hero-offer > .hero-offer__container {position:relative;z-index:1;}
/* badge « Wilson Web est certifié Qualiopi » des heros d'offre : le halo apparaît et disparaît doucement, en continu */
@keyframes ww-certif-glow { from {box-shadow:0 2px 12px 0 rgba(255,255,255,0);} to {box-shadow:0 2px 20px 2px rgba(255,255,255,.42);} }
/* désactivé le 03/11/2026 (garder pour réactiver) : @media (prefers-reduced-motion: no-preference) { .hero-offer__certification {animation:ww-certif-glow 3.5s ease-in-out infinite alternate;} } */
.hero-micro--trail {z-index:1;mix-blend-mode:screen;}
.hero-micro--standout {z-index:1;}
.hero-micro--planche {background:radial-gradient(62% 62% at 50% 46%,rgba(230,37,61,.13) 0%,rgba(230,37,61,0) 70%),radial-gradient(90% 90% at 50% 50%,#1b1b1a 0%,#0e0e0d 100%);}
.hero-micro--reach {background:radial-gradient(70% 62% at 50% 108%,rgba(230,37,61,.26) 0%,rgba(230,37,61,0) 72%),linear-gradient(180deg,#141413,#1D1D1B 60%);}
.hero-micro--rise {z-index:2;}
.hero-micro--growth {background:radial-gradient(60% 70% at 88% 92%,rgba(230,37,61,.42) 0%,rgba(230,37,61,0) 72%),linear-gradient(180deg,#0e0e0d,#1D1D1B 70%);}
.hero-micro--horizon {background:radial-gradient(90% 62% at 50% 108%,rgba(230,37,61,.5) 0%,rgba(230,37,61,.1) 48%,rgba(230,37,61,0) 72%),linear-gradient(180deg,#0a0a0a 0%,#171716 45%,#1D1D1B 100%);}
.hero-micro--duel {z-index:1;background:rgba(0,0,0,.75);-webkit-mask-image:radial-gradient(circle calc(var(--duel-r,320px) * 1.5) at var(--duel-x,80%) var(--duel-y,50%),transparent 0%,transparent 35%,#000 100%);mask-image:radial-gradient(circle calc(var(--duel-r,320px) * 1.5) at var(--duel-x,80%) var(--duel-y,50%),transparent 0%,transparent 35%,#000 100%);}
.hero-micro--halo {z-index:1;overflow:hidden;mix-blend-mode:screen;}
.hero-micro--halo::before {content:"";position:absolute;left:var(--halo-x,50%);top:var(--halo-y,55%);width:90vmin;height:90vmin;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(230,37,61,.18) 0%,rgba(230,37,61,.06) 40%,transparent 70%);filter:blur(30px);}
.hero-micro--dust {z-index:1;}
.hero-micro--depth {z-index:1;mix-blend-mode:screen;}
/* Créations : vignettes des réalisations (hero-micro.js) au-dessus du dégradé noir, sous le texte, estompées avant la photo */
.hero-micro--gallery {z-index:2;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 46%,transparent 62%);mask-image:linear-gradient(90deg,#000 0%,#000 46%,transparent 62%);}
@media (max-width:767px) {.hero-micro--gallery {-webkit-mask-image:none;mask-image:none;opacity:.6 !important;}}
/* halo léger (Communauté) : plus large et plus doux */
.hero-micro--halo-soft::before {width:95vmin;height:95vmin;background:radial-gradient(circle,rgba(230,37,61,.42) 0%,rgba(230,37,61,.16) 42%,transparent 70%);filter:blur(36px);}
/* version détourée de la photo du hero Site web : source du masque du halo rouge, jamais affichée (1px pour qu'elle se charge) */
.hero-cutout, .hero-cutout img {position:absolute !important;top:0;left:0;width:1px !important;height:1px !important;opacity:0 !important;pointer-events:none;}
/* Communauté : halo rouge à peine perceptible + lumière de face plus douce */
.hero-micro--halo-faint::before {background:radial-gradient(circle,rgba(230,37,61,.08) 0%,rgba(230,37,61,.03) 42%,transparent 70%);}
/* Site web (calque « duel ») : halo rouge beaucoup plus discret, large et très diffus (03/11/2026, avant : .18 / .06) */
.hero-micro--duel ~ .hero-micro--halo::before {width:110vmin;height:110vmin;background:radial-gradient(circle,rgba(230,37,61,.07) 0%,rgba(230,37,61,.025) 45%,transparent 72%);filter:blur(60px);}
.hero-micro--halo-front {z-index:1;overflow:hidden;mix-blend-mode:soft-light;}
.hero-micro--halo-front::before {content:"";position:absolute;left:var(--halo-x,50%);top:var(--halo-y,55%);width:60vmin;height:60vmin;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,240,228,.9) 0%,rgba(255,240,228,.35) 45%,transparent 70%);filter:blur(20px);}
.hero-micro--halo-front-soft::before {width:50vmin;height:50vmin;background:radial-gradient(circle,rgba(255,240,228,.7) 0%,rgba(255,240,228,.25) 45%,transparent 70%);}
/* Nous : dessin de la soirée, les lampes s'allument (pages/nous.js, 03/11/2026) */
.communaute-soiree {position:relative;overflow:hidden;}
/* pas de z-index ni d'opacité sur le calque : ses enfants doivent se fondre avec le dessin (fond de .communaute-soiree) */
.soiree-light {position:absolute;inset:0;pointer-events:none;}
/* lumière neutre (pas de teinte jaune) : pénombre grise, les lampes éclaircissent le trait de crayon */
.soiree-light__dim {position:absolute;inset:0;background:rgba(18,18,20,.48);mix-blend-mode:multiply;}
.soiree-light__room {position:absolute;inset:0;mix-blend-mode:screen;background:radial-gradient(ellipse 80% 55% at var(--rx,75%) var(--ry,40%),rgba(255,251,244,.3) 0%,rgba(255,251,244,.1) 50%,transparent 80%);}
.soiree-light__glow {position:absolute;transform:translate(-50%,-50%) scale(1.6);border-radius:50%;mix-blend-mode:screen;background:radial-gradient(circle,rgba(255,250,240,calc(var(--a,1) * .95)) 0%,rgba(255,250,240,calc(var(--a,1) * .55)) 22%,rgba(255,250,240,calc(var(--a,1) * .18)) 45%,transparent 70%);filter:blur(6px);}
.hero-micro--duel-light {z-index:1;mix-blend-mode:soft-light;background:radial-gradient(circle var(--duel-r,320px) at var(--duel-x,80%) var(--duel-y,50%),rgba(255,236,214,.95) 0%,rgba(255,236,214,.3) 50%,transparent 100%);}
.hero-caret {display:inline-block;width:.06em;height:.85em;margin-left:.1em;vertical-align:-.05em;background:#e6253d;opacity:0;animation:wm-caret 1.05s steps(1) 2.8s infinite;}
@keyframes wm-caret {0%,49% {opacity:1;} 50%,100% {opacity:0;}}
.hero-fx-halo {position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.7;}
.hero-fx-halo::before {content:"";position:absolute;left:var(--halo-x,50%);top:var(--halo-y,45%);width:110vmin;height:110vmin;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(230,37,61,.6) 0%,rgba(230,37,61,.22) 40%,transparent 70%);filter:blur(36px);}
.hero-fx-dust {position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;}
.hero-fx-fibres {position:absolute;inset:0;z-index:2;width:100%;height:100%;pointer-events:none;}
.hero-fx-shade {position:absolute;inset:0;z-index:2;pointer-events:none;background:rgba(1,2,1,.84);-webkit-mask-image:radial-gradient(circle var(--spot-r,0px) at var(--spot-x,50%) var(--spot-y,40%),transparent 0%,rgba(0,0,0,.15) 35%,#000 72%);mask-image:radial-gradient(circle var(--spot-r,0px) at var(--spot-x,50%) var(--spot-y,40%),transparent 0%,rgba(0,0,0,.15) 35%,#000 72%);}
/* masque des mots : overflow:clip (et non hidden) garde la vraie ligne de base du mot -> alignement sur la ligne de base ;
   avec hidden + vertical-align:top, les mots plus gros (.mark) tombaient plus bas que le reste de la ligne */
.wm-w {display:inline-block;overflow:clip;vertical-align:baseline;padding-bottom:.12em;margin-bottom:-.12em;}
.wm-i, .wm-c {display:inline-block;will-change:transform;}
.wm-fade {display:inline-block;}
.hero-title .wm-w {padding-bottom:.18em;margin-bottom:-.18em;}
.wm-scribble {position:absolute;overflow:visible;pointer-events:none;z-index:0;}
.wm-scribble path {fill:none;stroke:var(--color-accent, #E6253D);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.animated-circle-text .wm-scribble path, .team-badge .wm-scribble path {stroke:var(--color-text, #1D1D1B);}
/* .mark au survol (scribble.js) : cercle resserré plus fin, ou soulignement */
.wm-scribble--mark path {stroke-width:1.2;}
/* accents dans les textes (pages/accents.js) : soulignement sinusoïdal, chiffres entourés, surligneur */
.wm-scribble .ww-wave-path {stroke-width:1.8;}
.ww-highlight {background:linear-gradient(rgba(230,37,61,.17),rgba(230,37,61,.17)) no-repeat 0 72%;background-size:0% 66%;}
.ww-highlight.is-on {background-size:100% 66%;}
.wm-scribble--underline path {stroke-width:2;}
.animated-rectangle-text {position:relative;display:inline-block;}
.wm-scribble--rect path {stroke:currentColor;stroke-width:1.6;}
.wm-scribble--rect path + path {stroke-width:1;opacity:.5;}
.blog-card__content .wm-scribble path {stroke:var(--color-accent, #E6253D);}







/* REPÈRE VISUEL DES BREAKPOINTS */
body:before { width: 100%; height: 5px; background: transparent; content: ''; display:none; position: fixed; z-index: 99999; bottom: 0; }

/* MEDIA QUERIES */
@media (max-width: 1350px)
{
  body:before { background: grey !important; }

  .team-carousel .splide__arrow--prev { left: 8px; }
  .team-carousel .splide__arrow--next { right: 8px; }

  .creations-hero-content { margin:0 0 0 50px;}

  body .contact-hero { background-position: -570px center; }
}


@media (max-width: 1024px)
{
  body .ww-h1 {font-size:40px;line-height:52px;}
  body .ww-h1 .mark {font-size:48px;}
 body  .ww-h2 {font-size:32px;line-height:46px;}
  body .ww-h2 .mark {font-size:40px;}
  body .ww-h3 {font-size:22px;line-height:28px;}
 body  .ww-text {font-size:18px;line-height:26px;}
  body .ww-preheading {font-size:13px;line-height:13px;}
  body .ww-kpi {font-size:22px;line-height:22px;}

  .linkedin-section { padding: 64px 24px; }
  .linkedin-grid { gap: 36px; }
  .linkedin-card { padding: 30px 22px; }
  .linkedin-step-title { font-size: 18px; }
  .linkedin-bonus-content { padding: 36px 0 36px 32px; }
  .linkedin-bonus-title { font-size: 30px; }

  .faq-section { padding: 64px 24px; }
  .faq-heading { font-size: 32px; line-height: 46px; }
  .faq-container { gap: 36px; }

  .creations-hero { min-height: 650px; padding: 150px 24px 70px; }
  .creations-hero-container { min-height: 430px;}
  .creations-hero-content { width: 62%; gap: 24px; margin:0 0 0 50px;}
  .creations-hero-title { font-size: 40px; line-height: 52px; }
  .creations-hero-title span { font-size: 48px; }
  .creations-hero-description { font-size: 18px; line-height: 30px; }

  /* Blog : catégorie et article */
  .wb-grid {grid-template-columns:repeat(2, minmax(0, 1fr));gap:70px 36px;}
  .wb-card--featured {gap:44px;}
  .wb-card--featured .wb-card__title {font-size:32px;}
  .wb-hero--post .creations-hero-title {font-size:38px;}
  .wb-post__layout {grid-template-columns:200px minmax(0, 1fr);gap:56px;}
}

@media (max-width: 991px)
{
  body:before { background: orange !important; }

  /* ACCUEIL */
  .team-section { padding: 80px 24px; }
  .team-hand { left: -190px; width: 300px; opacity: .65; }
  .team-photo { height: 310px; }

  .lora-50{font-size:36px; }

  body.home h1 span.mark { font-size: 48px !important; }
  body.home h2 span.mark { font-size: 36px !important; }

  body.home h2.slogan{ font-size: 34px !important; }
  body.home h2.slogan .mark{ font-size: 46px !important; }

  body .slogan, body .hero-title { font-size: 36px !important; }
  body .slogan .mark, body .hero-title .mark{ font-size: 48px !important; }

  body .hero-title { font-size: 36px !important; }

  .hero-experts h1 { font-size: 35px; }
  .hero-experts h1 .mark { font-size: 40px; }
  .constat-content h2 span.mark { font-size:35px; }
  .constat-cloud {top: 30px;}

  body .ww-container { width: calc(100% - (var(--ww-gutter-tablet) * 2)); }
  .system-section { padding: 90px 24px; }
  .system-grid { grid-template-columns: 1fr; max-width: 680px; margin: 0 auto; }

  .offer-card { min-height: auto; }
  .offer-title strong{font-size:20px;}
  .offer-list li {font-size: 12px;	line-height: 1.35;}


  .decor-balloon { right: 20px; width: 110px; }
  .values-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px 40px; }

  body.home .hero .hero-image{width: 150%;  min-width: 150%; }

  body .benefits-heading span span{font-size:35px;}
  body .benefits-title { font-size: 18px; line-height: 1.2;}

  .linkedin-title .mark{font-size:46px;}
  .linkedin-section { padding: 80px 24px; }
  .linkedin-offers { grid-template-columns: 1fr; max-width:100%; margin: 0 auto; }
  .linkedin-card { min-height: 320px; }
  .linkedin-character { top: 315px; right: 0; width: 105px; }
  .linkedin-kicker-arrow { left: 0; }

  .testimonials-section { padding: 80px 24px; }
  .testimonials-slider { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
  .testimonial-card:nth-child(3) { display: none; }
  .testimonials-slider .swiper-button{opacity:0; display:none; cursor:none;}

  .creations-projects-grid { gap: 20px; margin-top: 36px; }
  .creation-card { min-height: 420px; border-radius: 16px; }
  .creation-card .creation-card-content { padding: 26px; }
  .creation-card .creation-card-title { font-size: 28px; }

  .reviews-wall-section {padding:70px 20px 0;}
  .reviews-wall-heading {margin-bottom:45px;}
  .reviews-wall-title {font-size:44px;}
  .reviews-wall-preview {max-height:1050px;}
  .reviews-wall-preview::after {height:150px;}
  .reviews-wall-grid {column-count:2;column-gap:20px;}
  .reviews-wall-card {margin-bottom:20px;padding:25px;}
  .reviews-wall-avatar {width:52px;height:52px;min-width:52px;min-height:52px;}
  .reviews-wall-name {font-size:21px;}
  .reviews-wall-rating {font-size:34px;}
  .reviews-wall-text {font-size:17px;}

  .choice-section {padding:70px 24px 80px;}
  .choice-heading {margin-bottom:65px;}
  .choice-heading__title {font-size:42px;}
  .choice-heading__subtitle {font-size:32px;}
  .choice-grid {gap:16px;}
  .choice-card {min-height:370px;padding:30px 22px;border-radius:24px;}
  .choice-card__title {font-size:22px;}
  .choice-card__title strong {font-size:27px;}
  .choice-card__features p {font-size:14px;}
  .choice-mascot--top {width:80px;left:0;top:135px;}
  .mascot-shrug.brxe-div {width:140px;left:0;top:90px;}

  .option-section__container {min-height:330px;padding:60px 30px;}
  .option-section__content {max-width:540px;}
  .option-section__text {font-size:29px;}
  .option-section__hand {width:260px;opacity:.65;}
  .option-section__hand--left {left:-110px;}
  .option-section__hand--right {right:-110px;}


  .community-hero {min-height:680px;}
  .community-hero__container {min-height:680px;}
  .community-hero__content {left:40px;top:34%;width:52%;max-width:440px;transform:translateY(-50%);}
  .community-hero__eyebrow {margin-bottom:22px;font-size:13px;}
  .community-hero__title {font-size:48px;line-height:1.05;}
  .community-hero__image {right:-5%;bottom:0;width:105%;}
  


  body footer h3.footer-slogan {display:inline!important;width:auto!important;max-width:none!important;flex:none!important; text-align: center; font-size:34px !important;}

  /* Blog : article sur une colonne, sommaire masqué (la barre de progression reste) */
  .wb-post__layout {grid-template-columns:minmax(0, 1fr);max-width:740px;}
  .wb-post__aside {order:2;height:auto;}
  .wb-post__sticky {position:static;max-height:none;overflow:visible;}
  .wb-toc {display:none;}
  .wb-card--featured {grid-template-columns:1fr;gap:32px;}





}
@media (max-width: 767px) 
{
  body:before { background: red !important; }

  .desktop { display: none; }
  .mobile {display: block;}

  /* Badges stats (constat) : même largeur, icône à gauche, texte aligné à gauche */
  .constat-content > .texte-scroll + .brxe-div { flex-direction: column !important; flex-wrap: nowrap !important; align-items: stretch !important; align-self: center !important; width: 100%; max-width: 340px; margin-left: auto; margin-right: auto; }
  .constat-content > .texte-scroll + .brxe-div > .brxe-div { width: 100%; margin-right: 0 !important; justify-content: flex-start !important; align-items: center !important; align-self: stretch !important; text-align: left; }
  .constat-content > .texte-scroll + .brxe-div > .brxe-div > img { flex-shrink: 0; margin-right: 12px !important; }
  .constat-content > .texte-scroll + .brxe-div > .brxe-div > .brxe-text,
  .constat-content > .texte-scroll + .brxe-div > .brxe-div > .brxe-text p { text-align: left !important; margin: 0; }

  /* Bloc bonus "+ Site web, LinkedIn Start..." : plus de largeur fixe, "+" à gauche du texte */
  body .benefits-bonus { position: relative !important; display: block !important; right: auto !important; left: auto !important; width: 100% !important; max-width: 400px !important; margin: 40px auto 0 !important; padding: 50px 0 0 !important; box-sizing: border-box; text-align: left !important; }
  body .benefits-bonus > img { position: absolute !important; top: 0 !important; left: -10px !important; width: 60px !important; height: auto !important; margin: 0 !important; }
  body .benefits-bonus > .benefits-plus { position: absolute !important; top: 47px !important; left: 0 !important; margin: 0 !important; font-size: 32px; }
  body .benefits-bonus > .brxe-div { width: 100% !important; margin: 0 !important; padding: 0 0 0 36px !important; box-sizing: border-box; text-align: left !important; }
  body .benefits-bonus .benefits-bonus-text { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; font-size: 19px !important; text-align: left !important; }
  body .benefits-bonus .benefits-bonus-text + .brxe-div { padding-top: 16px !important; text-align: left !important; }

  /* Bloc Qualiopi : le texte (marge 40px Bricks) débordait à droite */
  body .linkedin-qualiopi .linkedin-qualiopi-text { margin-left: 25px !important; width: calc(100% - 25px) !important; max-width: none !important; box-sizing: border-box; }

  /* Nos valeurs : padding 100px Bricks sur la grille => colonne de texte trop étroite */
  body .values-grid { padding-left: 0 !important; padding-right: 0 !important; }
  body .values-grid .value-item { width: 100%; max-width: 340px; margin-left: auto; margin-right: auto; }

  /* Titre "La première communauté" (page Nous) : text-align justify => gros trou entre les mots */
  body #brxe-a1d972 { text-align: center !important; align-self: center; width: 100%; }

  /* Boutons rouges : libellé sur une seule ligne ("Je prends rendez-vous" passait sur 2 lignes) */
  body .btn-ww-red, body .benefits-button { white-space: nowrap !important; max-width: calc(100vw - 40px); }

  /* Flèches animées à gauche des boutons : masquées sur mobile (elles passaient au-dessus du bouton) */
  body .arrow-swing { display: none !important; }

  /* Accueil, offres LinkedIn : le bloc Qualiopi (marge 50px Bricks) débordait et décalait toute la section à droite */
  body .linkedin-container > .brxe-div:has(> .linkedin-qualiopi) { width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }
  body.home .linkedin-container .linkedin-qualiopi { margin-left: 62px !important; width: calc(100% - 62px) !important; }
  /* flèche, « + » et logo resserrés */
  body.home .linkedin-container .linkedin-qualiopi > .brxe-div:first-of-type { display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: 12px !important; }
  body.home .linkedin-container .linkedin-qualiopi-plus { padding: 0 !important; margin: 0 !important; width: auto !important; }
  body.home .linkedin-container .linkedin-qualiopi-logo { width: 190px !important; margin: 0 !important; }
  body.home .linkedin-container .linkedin-qualiopi-arrow { left: -66px !important; top: 6px !important; width: 62px !important; }

  /* Accueil, offres : la mascotte s'assoit sur le bord de la première carte (elle flottait au-dessus) */
  body .linkedin-header { margin-bottom: 76px !important; }
  body .linkedin-header .linkedin-perso { top: auto !important; bottom: -138px !important; right: 8px !important; width: 130px !important; z-index: 3; }

  /* Main des sections équipe (« Notre équipe », « Les talents ») : petite, dans la marge haute, ne recouvre plus le titre */
  body .team-section .team-hand-2 { top: 6px !important; left: 0 !important; width: 92px !important; }
  body .team-section .team-hand { top: 50px !important; left: 0 !important; width: 84px !important; }
  /* « Notre équipe » : badge remonté (padding Bricks 150px), la main à sa hauteur pointe vers lui sans toucher les mots */
  body .team-section:has(.team-badge-wrap) { padding-top: 64px !important; }
  /* texte d'intro en marge -50px (Bricks) : il dépassait de l'en-tête et le visage du carrousel passait dessous */
  body .team-section .team-header { margin-bottom: 36px !important; height: auto !important; min-height: 0 !important; }
  body .team-section .team-header > .brxe-text { margin-top: 20px !important; top: 0 !important; }

  /* Canard de l'offre LinkedIn Start : posé au-dessus du titre au lieu de le recouvrir */
  body .linkedin-start-offer > .brxe-image { position: relative !important; top: auto !important; left: auto !important; align-self: center; order: -1; width: 64px !important; margin: 0 0 -10px !important; }

  /* Canard du bloc bonus : en haut à droite du bloc (en face de la flèche), plus sur le bouton */
  body .benefits-bonus .benefits-bonus-text + .brxe-div { position: static !important; }
  body .benefits-bonus .benefits-bonus-text + .brxe-div > img { position: absolute !important; top: -4px !important; right: 0 !important; left: auto !important; width: 58px !important; }

  /* « Mais ce n'est pas tout ! » : marge négative Bricks, le texte sortait à gauche */
  body .linkedin-start-transition > * { margin-left: 0 !important; margin-right: 0 !important; max-width: 100%; }

  /* « Vos employés sont vos meilleurs ambassadeurs ! » (Ghostwriting) : marge -25px Bricks, le texte sortait à gauche */
  body .benefits-bonus > .brxe-text-basic { margin-left: 0 !important; margin-right: 0 !important; max-width: 100%; }

  /* Offre site web : cartes empilées sur une colonne (grille 2 colonnes et largeurs fixes Bricks => débordement) */
  body .ww-scroll-card { display: flex !important; flex-direction: column !important; }
  body .ww-scroll-card > div, body .ww-scroll-card .linkedin-start-bonus-content, body .ww-scroll-card .ww-card-visual, body .ww-scroll-card .linkedin-start-cta { width: 100% !important; max-width: 100% !important; box-sizing: border-box; }
  body .ww-scroll-card .linkedin-start-bonus-content { padding: 30px 20px 0 !important; }
  body .ww-scroll-card .ww-h2 { font-size: 26px; line-height: 1.25; }
  body .ww-scroll-card .ww-h2 .mark { font-size: 32px; }
  body .ww-scroll-card .ww-service-card { width: 100% !important; margin: 30px 0 0 !important; }
  body .ww-scroll-card .linkedin-start-cta { justify-content: center; margin: 0 !important; }
  body .ww-scroll-card .linkedin-start-cta > .brxe-div { width: auto !important; margin: 24px 0 0 !important; }
  body .ww-scroll-card .ww-card-visual { height: 200px !important; margin-top: 20px; }

  .hero-image-desktop { display:none; }
  .hero-image-mobile { display:block; }

   .lora-50{font-size:28px; }

  body .ww-h1, body h1.ww-h1 {font-size:32px !important;line-height:1.2 !important;}
  body .ww-h1 .mark, body .ww-h1 span {font-size:38px !important;}
  body .ww-h2 {font-size:26px !important;line-height:1.2 !important;}
  body .ww-h2 .mark, body .ww-h2 span {font-size:32px !important;}
  body .ww-h3 {font-size:20px !important;line-height:1.2 !important;}
  body .ww-text {font-size:14px !important;line-height:1.6 !important;}
  body .ww-preheading {font-size:12px !important;line-height:1.2 !important;}
  body .ww-kpi {font-size:20px !important;line-height:1.2 !important;}

  /* MENU MOBILE */
  body .bricks-mobile-menu-toggle span {background-color: white;}
  :where(.brxe-nav-menu) .bricks-mobile-menu-toggle span {background-color: white;}
  .ww-desktop-nav .bricks-mobile-menu-wrapper {width:100vw!important;max-width:none!important;}
  .ww-desktop-nav .bricks-mobile-menu-overlay {display:none!important;}
  .ww-desktop-nav .bricks-mobile-menu {padding:150px 40px 40px!important;}
  
.ww-desktop-nav.show-mobile-menu .bricks-mobile-menu-toggle {position:fixed!important;top:40px!important;left:35px!important;right:auto!important;width:42px!important;height:30px!important;z-index:10002!important;}
.ww-desktop-nav.show-mobile-menu .bricks-mobile-menu-toggle span {display:none!important;}
.ww-desktop-nav.show-mobile-menu .bricks-mobile-menu-toggle::before {content:"←";display:block;color:#fff;font-size:34px;font-weight:300;line-height:1;}

  /* Accueil */
  body .constat-section{height: auto !important;}
  body .constat-visual{ display:none; }
  body .constat-content{width:100% !important; padding:0 20px; max-width:767px;}
  /* marges latérales mobiles harmonisées à 20px (Bricks : 20/30, ou marge 20 + padding 20 sur Nous) */
  body .constat-section .constat-content { padding-left: 20px !important; padding-right: 20px !important; margin-left: 0 !important; margin-right: 0 !important; }
  body .parcours-section { padding-left: 20px !important; padding-right: 20px !important; }
  /* Constat : contenu centré verticalement dans une section plus haute => ~75px vides en haut ; titre en letter-spacing -2px => mots collés */
  body .constat-section .constat-container { min-height: 0 !important; height: auto !important; align-items: start !important; padding-top: 50px !important; padding-bottom: 78px !important; }
  body .constat-section .constat-content { padding-top: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; }
  body .constat-content h2 { letter-spacing: -.02em !important; }

  body .decor-cloud-left { opacity:1; width:250px; top: -50px; left: -100px;}
  body .decor-cloud-right { opacity:1; width:386px; right: -120px; bottom: -107px;}
  body .decor-balloon {  opacity:1; width:56px; right: 25px;}

  body.home h2.slogan, body .hero-title{ font-size: 28px !important; }
  body.home h2.slogan .mark, body .hero-title .mark, body.home h1.hero-title span.mark { font-size: 36px !important; }

  body .slogan{ font-size: 28px !important; }
  body .slogan .mark{ font-size: 36px !important; }

  

  .team-section { padding: 68px 18px 72px; }
  .team-hand { top: -10px; left: -150px; width: 240px; opacity: .35; }
  .team-header { margin-bottom: 36px; }
  .team-title { font-size: 42px; }
  .team-intro { font-size: 20px; line-height: 28px; }
  body .team-section h2 .mark { font-size: 26px !important; }
  .team-photo { height: 300px; }
  .team-carousel .splide__arrow { width: 44px; height: 44px; }
  .team-carousel .splide__arrow--prev { left: 0; }
  .team-carousel .splide__arrow--next { right: 0; }

  .hero-experts h1 { font-size: 24px; }
  .hero-experts h1 .mark { font-size: 30px !important; }
  .hero-offer__title .accent { font-size: 60px; }
  body .ww-container { width: calc(100% - (var(--ww-gutter-mobile) * 2)); }
  .system-section { padding: 72px 18px; }
  .system-header { margin-bottom: 40px; }
  .system-title { font-size: 38px; }
  .system-intro { font-size: 18px; }
  .offer-card { padding: 30px 24px; border-radius: 22px; }
  .offer-actions { flex-direction: column; }



  .values-section { padding: 72px 20px; }
  .values-grid { margin-top: 48px; grid-template-columns: 1fr; gap: 48px; }
  .value-text { max-width: 320px; }

  .linkedin-section { padding: 64px 18px 72px; }
  .linkedin-kicker { margin-bottom: 36px; }
  .linkedin-kicker-text { font-size: 15px; }
  /* flèche à gauche du texte (et non au-dessus) */
  body .linkedin-kicker { left: 0 !important; padding-left: 62px; box-sizing: border-box; }
  body .linkedin-kicker-arrow { top: -4px !important; left: 0 !important; width: 52px !important; }
  body .linkedin-kicker-text { top: 0 !important; }
  .linkedin-header { margin-bottom: 34px; }
  .linkedin-title { font-size: 44px; } .linkedin-title .mark { font-size: 50px; }
  .linkedin-intro { font-size: 18px; }
  .linkedin-card { min-height: auto; padding: 28px 22px 26px; }
  .linkedin-card-head { align-items: flex-start; }
  .linkedin-card h3 { font-size: 23px; }
  .linkedin-card-label { font-size: 10px; }
  .linkedin-features { gap: 10px; }
  .linkedin-feature { padding: 11px 12px; font-size: 14px; }
  .linkedin-character { display: none; }
  .linkedin-qualiopi { flex-wrap: wrap; gap: 12px; margin-top: 42px; text-align: center; }
  .linkedin-qualiopi-text { width: 100%; max-width: 300px; }

  body .linkedin-start-title{ font-size: 28px !important; line-height: 1.25;}
  body .linkedin-start-title .mark{ font-size: 36px !important; }
  body .linkedin-start-intro{ font-size:18px !important; }

  .testimonials-section { padding: 64px 18px 70px; }
  .testimonials-top { align-items: flex-end; gap: 18px; }
  .testimonials-title { font-size: 40px; }
  .testimonials-rate { font-size: 17px; }
  .testimonial-prev, .testimonial-next { width: 44px; height: 44px; }
  .testimonials-slider { grid-template-columns: 1fr; }
  .testimonial-card:nth-child(2), .testimonial-card:nth-child(3) { display: none; }
  .testimonial-visual { height: 300px; }
  .testimonials-slider .testimonial-content-wrapper { width: 100%; max-width: 331px; margin-inline: auto; }
  .testimonials-slider .testimonial-meta-data { left: 50%; transform: translateX(-50%); width: 100%; max-width: 331px; }

  .faq-section { padding: 48px 18px; }
  .faq-heading { font-size: 26px; line-height: 36px; }
  .faq-container { gap: 28px; }
  .faq-trigger { gap: 14px; min-height: 64px; padding: 16px; }
  .faq-question { font-size: 16px; line-height: 24px; }
  .faq-icon { width: 32px; height: 32px; padding: 9px; font-size: 14px; }
  .faq-answer { padding: 0 16px 20px; font-size: 15px; line-height: 24px; }

  .creations-hero { min-height: 0; padding: 130px 20px 0; }
  .creations-hero-container { min-height: 0; }
  .creations-hero-content { width: 100%; gap: 24px; }
  .creations-hero-title { font-size: 32px; line-height: 42px; }
  .creations-hero-title span { font-size: 38px; }
  .creations-hero-description { font-size: 16px; line-height: 27px; }
  .creations-hero-image { position: relative; width: calc(100% + 40px); max-width: none; height: auto; margin: 32px -20px 0; }
  .creations-hero::after { display: none; }

  .creations-projects-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; margin-top: 30px; }
  .creation-card { min-height: 430px; }
  .creation-card .creation-card-content { padding: 26px; }

  .faq-accordion--white .faq-item { margin-bottom:10px; }
  .faq-accordion--white .faq-trigger { min-height:64px; padding:14px 14px 14px 18px; }
  .faq-accordion--white .faq-question { gap:8px; font-size:16px; line-height:24px; }
  .faq-accordion--white .faq-question::before { width:15px; height:15px; }
  .faq-accordion--white .faq-icon { width:36px; height:36px; }
  .faq-accordion--white .faq-answer { padding:0 18px 22px 41px; font-size:15px; line-height:24px; }

  .experiences-section {padding:45px 20px;}
  .experiences-grid {grid-template-columns:1fr;gap:16px;}
  .experiences-grid {grid-template-columns:1fr;gap:16px;}
  .experience-card {min-height:180px;padding:22px 20px;}

  body .newsletter-section {min-height:560px;padding:48px 24px 300px;background-position:87% bottom;background-size:auto !important;}
  body .newsletter-section::before {position:absolute;inset:0;background:linear-gradient(180deg,var(--c-text) 0%,var(--c-text) 48%,rgba(29,29,27,.2) 72%,rgba(29,29,27,0) 100%);content:""; height:200px;}
  body .newsletter-section__content {width:100%;max-width:480px;}
  body .newsletter-section__title {margin-bottom:18px;font-size:28px;}
  body .newsletter-section__text {margin-bottom:24px;font-size:14px;}

  .reviews-wall-section {padding:55px 16px 0;}
  .reviews-wall-heading {margin-bottom:36px;}
  .reviews-wall-kicker {margin-bottom:24px;font-size:13px;}
  .reviews-wall-kicker::after {bottom:-11px;width:115px;height:4px;}
  .reviews-wall-title {font-size:34px;line-height:1.15;}
  .reviews-wall-preview {max-height:1050px;}
  .reviews-wall-preview::after {height:120px;}
  .reviews-wall-grid {column-count:1;column-gap:0;}
  .reviews-wall-card {margin-bottom:18px;padding:23px 21px;}
  .reviews-wall-author {gap:14px;margin-bottom:18px;}
  .reviews-wall-avatar {width:52px;height:52px;min-width:52px;min-height:52px;}
  .reviews-wall-name {font-size:20px;}
  .reviews-wall-company {font-size:14px;}
  .reviews-wall-rating {margin-bottom:19px;font-size:31px;}
  .reviews-wall-text {font-size:16px;line-height:1.5;}
  .reviews-wall-text p {margin-bottom:18px;}
  .reviews-wall-toggle {margin:24px auto 55px;padding:13px 22px;font-size:15px;}

  .ww-service-card{margin-top:28px;border-radius:9px;}
  .ww-service-card::before{top:-11px;left:14px;right:14px;height:20px;}
  .ww-service-card__content{padding:25px 22px 23px;}
  .ww-service-card__icon{width:44px;height:44px;margin-bottom:15px;}
  .ww-service-card__title{margin-bottom:11px;font-size:21px;}
  .ww-service-card__text{font-size:15px;line-height:1.5;}

  .choice-section {padding:55px 18px 65px;}
  .choice-heading {margin-bottom:65px;}
  .choice-heading__title {font-size:34px;}
  .choice-heading__subtitle {margin-top:8px;font-size:26px;}
  .choice-heading__text {font-size:16px;}
  .choice-grid {grid-template-columns:1fr;gap:22px;}
  .choice-card {min-height:0;padding:30px 25px;border-radius:22px;}
  .choice-card--featured {order:-1;margin-top:25px;}
  .choice-card__badge {top:-38px;font-size:15px;}
  .choice-card__title {margin-bottom:25px;}
  .choice-footer {width:100%;margin-top:40px;}
  .choice-footer__text {padding-left:0;text-align:center;}
  .choice-footer__arrow {display:none;}
  .choice-mascot--top {display:none;}
  .mascot-shrug.brxe-div {display:none;}
  .choice-mascot--bottom {display:none;}

  .option-section__container {min-height:340px;padding:55px 25px;}
  .option-section__content {max-width:100%;}
  .option-section__label {font-size:16px;}
  .option-section__text {font-size:25px;line-height:1.3;}
  .option-section__hand {width:180px;opacity:.25;}
  .option-section__hand--left {left:-120px;top:35%;}
  .option-section__hand--right {right:-120px;top:70%;}


.community-hero {min-height:900px;}
.community-hero__container {min-height:800px;}
.community-hero__content {left:50%;top:auto;width:90%;max-width:none;transform:translateX(-50%);text-align:center; bottom:150px;}
.community-hero__eyebrow {margin-bottom:36px;font-size:13px;}
.community-hero__title {font-size:46px;line-height:1.08;}
.community-hero__visual {inset:0;}
.community-hero__image {right:50%;bottom:0;width:900px;height:auto;max-width:none;transform:translateX(50%);}


.community-cta {min-height:0;height:auto;padding:70px 0 0;}
.community-cta__container {display:flex;flex-direction:column;align-items:center;min-height:0;}
.community-cta__content {position:relative;top:auto;left:0; right:0;width:100%;max-width:900px;transform:none;text-align:center;}
.community-cta__title {margin:0 auto 32px;font-size:38px;line-height:1.2;}
.community-cta__button {min-width:230px;height:50px;padding:0 32px;font-size:13px;}
.community-cta__visual {position:relative;right:auto;bottom:auto;width:100%;height:auto;margin-top:70px;}
.community-cta__image {position:relative;right:auto;bottom:auto;display:block;width:100%;height:auto;max-width:100%;transform:none;}

  .ww-scroll-card > div {display:flex!important;flex-direction:column!important;height:auto!important;}
  .linkedin-start-bonus-content {width:100%!important;}
  .ww-card-visual {width:100%!important;height:240px!important;display:flex!important;align-items:center!important;justify-content:center!important;order:2;}
  .ww-card-visual img {width:auto!important;height:100%!important;max-width:100%!important;max-height:240px!important;object-fit:contain!important;}

  body .contact-hero { background-image: url("https://preprod.wilsonweb.fr/wp-content/uploads/2026/10/ww-contacter-aurore-petrus-mobile.webp") !important; background-position: bottom center !important; min-height: 870px;}

  /* Blog : image au-dessus, texte en dessous */
  .blog-section {padding-top:48px;padding-bottom:48px;}
  .blog-list {gap:48px;}
  .blog-card {grid-template-columns:1fr;gap:24px;}
  .blog-card__content {padding:0 20px;}
  .blog-card:nth-child(n) > .blog-card__image, .blog-card:nth-child(n) > .blog-card__content {grid-column:auto;grid-row:auto;}
  .blog-card__content .brxe-text-link {margin-top:22px;}

  /* Hero Créations / Blog : hauteur 700px + flex-wrap (Bricks) => le texte partait dans une 2e colonne hors écran */
  body .creations-hero { flex-wrap: nowrap !important; height: auto !important; }
  body .creations-hero-container { visibility: visible !important; }
  body .creations-hero-title { line-height: 1.3 !important; }
  body .creations-hero-description { margin-top: 0 !important; }
  body .creations-hero-content { margin: 0 !important; }

  /* Hero Offre site web : titre 350px + marges 50px (Bricks) => débordement, tout le hero décalé à droite */
  body section.hero h1.brxe-heading { width: auto !important; max-width: 100% !important; margin-left: 20px !important; margin-right: 20px !important; }

  /* Blog : catégorie et article */
  .wb-hero .creations-hero-content {margin:0;}
  .wb-archive {padding:56px 20px 90px;}
  .wb-filters {margin-bottom:50px;}
  .wb-filters ul {justify-content:flex-start;flex-wrap:nowrap;gap:22px;margin:0 -20px;padding:0 20px;overflow-x:auto;scrollbar-width:none;}
  .wb-filters ul::-webkit-scrollbar {display:none;}
  .wb-filters li {flex-shrink:0;}
  .wb-grid {grid-template-columns:1fr;gap:60px;}
  .wb-card--featured {padding-bottom:60px;}
  .wb-card--featured .wb-card__title {font-size:28px;}
  .wb-card__title {font-size:21px;}
  .wb-pagination {margin-top:60px;}
  .wb-pagination .prev, .wb-pagination .next {display:none !important;}
  .wb-hero--post .creations-hero-title {font-size:30px;line-height:1.25;}
  .wb-hero__meta {font-size:14px;}
  .wb-hero__meta .wb-dot:last-of-type {display:none;}
  .wb-post {padding:64px 20px 60px;}
  .wb-post__content {font-size:17px;line-height:1.8;}
  .wb-post__content > h1, .wb-post__content > h2 {font-size:26px;}
  .wb-post__content > h3 {font-size:20px;}
  .wb-post__content blockquote {padding-left:34px;font-size:21px;}
  .wb-related {padding:80px 20px 90px;}
  .wb-related__title {margin-bottom:50px;}
}

@media (max-width: 479px)
{
   body:before { background:cyan !important; }

  body.home h1 span.mark { font-size: 30px; }
  body.home h2 span.mark { font-size: 24px; }

  body.home .decor-cloud-left{left: -161px !important;}

  body .linkedin-title { font-size: 30px !important; } 
  body .linkedin-title .mark  { font-size: 34px !important; }

  body.home .linkedin-qualiopi{margin-left: 0 !important; margin-top: 73px !important;}
  body.home .linkedin-qualiopi-arrow {left: -80px !important;}
  body.home .linkedin-feature{height: 44px;}

  body.home h2.slogan{ font-size: 24px !important; }
  body.home h2.slogan .mark{ font-size: 34px !important; }

  body .linkedin-start-title{ font-size: 24px !important; line-height: 1.25;}
  body .linkedin-start-title .mark{ font-size: 34px !important; }
  body .linkedin-start-intro{ font-size:18px !important; }

  .testimonials-section { padding: 64px 10px 70px; }
  body .testimonials-slider.brxe-slider-nested .splide__arrow--prev { display: none;}
  body .testimonials-slider.brxe-slider-nested .splide__arrow--next { display: none;}

  .creation-card { min-height: 390px; border-radius: 14px; }
  .creation-card .creation-card-content { padding: 22px; }
  .creation-card .creation-card-tags { --tags-gap: 14px; }
  .creation-card .creation-card-client { font-size: 11px; }
  .creation-card .creation-card-title { font-size: 26px; }
  .creation-card .creation-card-details { gap: 18px; }
  .creation-card .creation-card-description { font-size: 14px; }

  .community-hero {min-height:760px;}
  .community-hero__container {min-height:760px;}
  .community-hero__content {bottom:56px;width:calc(100% - 40px);}
  .community-hero__eyebrow {margin-bottom:28px;font-size:12px;}
  .community-hero__title {font-size:38px;line-height:1.08;}
  .community-hero__image {width:720px; height: auto !important;}

.community-cta {padding-top:50px;}
.community-cta__content {width:calc(100% - 40px);}
.community-cta__title {margin-bottom:28px;font-size:32px;line-height:1.18;}
.community-cta__button {min-width:200px;height:46px;padding:0 26px;font-size:12px;}
.community-cta__visual {margin-top:55px;}
.community-cta__image {width:100%;height:auto;}
}

@media (prefers-reduced-motion: reduce)
{
  .creation-card .creation-card-image { transition: none; }
  .creation-card .creation-card-button { transition: none; }
  .creation-card:hover .creation-card-image { transform: none; }
  .creation-card .creation-card-button:hover { transform: none; }
}


@media (hover: none), (pointer: coarse) {
  .wilson-cursor-dot, .wilson-cursor-ring-wrap { display: none; }
}


/* ==========================================================================
   PASSE MOBILE (≤ 767px) — tailles, espacements, emplacements, toutes pages
   en fin de fichier pour passer après les règles Bricks et les règles mobiles précédentes
   ========================================================================== */
@media (max-width: 767px) {

  /* --- Commun --- */
  /* pied de page : adresse et copyright en 10px, illisibles */
  body #brxe-swrpqt, body #brxe-bmmljw { font-size: 12px !important; line-height: 1.6 !important; }
  /* fil d'Ariane des en-têtes de page en 10px */
  body .hero-offer__breadcrumb { font-size: 12px !important; }
  /* boutons « Je prends rendez-vous » : décalés de 50px à gauche (compensation de la flèche, masquée sur mobile) */
  body .brxe-umbgqi { margin-left: 0 !important; margin-right: 0 !important; justify-content: center !important; align-items: center !important; }
  body .brxe-umbgqi > .bricks-button { margin-left: auto !important; margin-right: auto !important; }
  body .linkedin-start-cta.brxe-div { width: 100% !important; }
  /* retours à la ligne prévus pour le desktop */
  br.desktop-only { display: none; }
  /* titres d'étapes / ateliers sur 2 lignes : le trait à droite était écrasé à 24px */
  .linkedin-start-step-title::after { display: none; }
  /* FAQ : titre remonté de 100px (collé au haut de la section, trou dessous) */
  body .brxe-uskbvy { margin-top: 0 !important; margin-bottom: 30px !important; }
  body .brxe-macgqy { padding-top: 56px !important; }
  body .brxe-drjubf { padding-top: 0 !important; margin-top: 0 !important; }
  body #brxe-jiboue { margin-bottom: 28px !important; }
  /* points des carrousels de témoignages : sur une seule ligne */
  .testimonials-slider .splide__pagination, .testimonials-slider .swiper-pagination { flex-wrap: nowrap !important; gap: 4px !important; }
  .testimonials-slider .splide__pagination__page, .testimonials-slider .swiper-pagination-bullet { width: 7px !important; height: 7px !important; margin: 0 !important; }
  /* mur d'avis : les étoiles recouvraient la 1re ligne de l'avis */
  .reviews-wall-rating { display: block; height: auto !important; min-height: 0 !important; font-size: 24px !important; line-height: 1.3 !important; margin-bottom: 14px !important; }

  /* --- Accueil --- */
  /* « Voici comment on inverse la donne » : lettres serrées, mot en accent trop gros, bord droit atteint */
  body #brxe-swkjww { letter-spacing: -.5px !important; font-size: 26px !important; line-height: 1.3 !important; }
  body .system-title span:not(.wm-w, .wm-i) { font-size: 34px !important; }
  body .testimonials-title { font-size: 30px !important; }

  /* --- En-têtes d'offre suivis de la photo d'Aurore (LinkedIn Start…) --- */
  /* hauteur mini de 714px + 190px en bas : ~240px de vide entre « +150 personnes accompagnées » et la photo */
  body .hero-offer:has(+ section .aurore-visuel) { padding-bottom: 100px !important; }
  body .hero-offer:has(+ section .aurore-visuel) .hero-offer__container { min-height: 0 !important; }

  /* --- Sections « benefits » (LinkedIn Start, Branding…) --- */
  /* « LinkedIn Start c'est : » : « Start » restait à 50px alors que « LinkedIn » passe à 35px */
  body .benefits-heading span { font-size: 35px !important; }
  /* bloc « + Un environnement motivant… » : trop de vide au-dessus de la flèche */
  body .benefits-bonus { margin-top: 0 !important; }
  /* sauf s'il porte la mascotte (Branding, Ghostwriting) : elle se pose au-dessus du bloc, il lui faut sa place sous la carte précédente */
  body .benefits-bonus:has(img[src*="perso-ww-look"]) { margin-top: 44px !important; }
  body #brxe-1158bc, body #brxe-c37eec { width: 80px !important; top: -34px !important; }

  /* --- Sections équipe (« Les talents », « Notre équipe ») --- */
  /* trop de vide sous les points du carrousel (130px de padding Bricks) */
  body .team-section { padding-bottom: 50px !important; }
  /* la main pointait dans le vide : inclinée vers le titre (propriété rotate : se cumule avec le balancement GSAP) */
  /* !important : GSAP écrit rotate: none en style inline */
  /* décalée de 24px hors écran : inclinée, le bord coupé du poignet (bord gauche de l'image) devenait visible */
  body .team-section .team-hand-2, body .team-section .team-hand { rotate: 28deg !important; transform-origin: 0% 50% !important; margin-left: -24px !important; }
  /* section avec badge « Notre équipe » : la main reste à l'horizontale, à hauteur du badge, et le pointe */
  body .team-section:has(.team-badge-wrap) .team-hand { rotate: 0deg !important; top: 26px !important; width: 140px !important; margin-top: 0 !important; }

  /* --- LinkedIn Start / Employee Advocacy : mascotte qui pointe --- */
  /* elle se pose sur la carte noire et recouvrait la fin du texte d'intro : place réservée sous le texte */
  /* placée à gauche, au-dessus du coin de la carte : elle pointe vers le contenu */
  .mascot-point.brxe-div { width: 100px; left: 16px !important; right: auto !important; }
  .linkedin-start-offer .linkedin-start-intro { margin-right: 0 !important; }
  .linkedin-start-offer:has(.mascot-point) .linkedin-start-intro { margin-bottom: 90px !important; }
  /* image du bloc « Offert dans le pack » qui dépassait de la carte */
  body #brxe-wephee { max-width: 100% !important; }
  /* Employee Advocacy : « Mais ce n'est pas tout ! » et sa flèche décentrés ; montgolfière qui dépasse ; texte du constat aligné sur le titre */
  body #brxe-4a9d1d { align-self: center !important; }
  body #brxe-c64302 { padding-left: 0 !important; }
  body #brxe-e317f8 { margin-left: 0 !important; }
  body #brxe-31d44b { display: none !important; }
  body #brxe-3794d0 { text-align: center !important; }

  /* --- Branding --- */
  /* le chronomètre remontait de 125px sur le texte */
  body #brxe-2ba629 { margin-top: 30px !important; margin-bottom: 40px !important; max-width: 300px; margin-left: auto !important; margin-right: auto !important; }
  /* cartes d'offre décalées de 25px à gauche */
  body #brxe-splojx, body #brxe-491a7a, body #brxe-zlempd { margin-left: 0 !important; margin-right: 0 !important; }
  /* « Un branding mémorable… » collé au bord gauche */
  body #brxe-ntpauo { margin-left: 0 !important; padding-left: 20px !important; padding-right: 20px !important; }
  body #brxe-violaj { margin-left: 20px !important; }
  /* « Pourquoi nous choisir ? » : texte aligné sur le titre centré */
  body #brxe-d644f0 { text-align: center !important; }

  /* --- Ghostwriting --- */
  /* lune décorative coupée, sur le titre « Le process » */
  body #brxe-gvfxzi { display: none !important; }

  /* --- FAQ --- */
  /* 300px de marge au-dessus et au-dessous de « Prochainement disponible » */
  body #brxe-zoxcoa { margin-top: 80px !important; margin-bottom: 80px !important; }
  body .ww-soon { padding-top: 80px; padding-bottom: 80px; }

  /* --- Nous --- */
  .team-header .ww-text { text-align: center !important; }

  /* --- Communauté --- */
  /* en-tête : l'image mobile (360×572) a un aplat noir pur sur sa moitié haute (#010101) puis le fond de la photo (#080808,
     = fond de la section) => bandes visibles et 140px vides sous le logo. Titre dans le flux sous l'en-tête, puis
     seulement la partie photo de l'image (les 297px du bas), recadrée par aspect-ratio */
  body .community-hero, body .community-hero__container { min-height: 0 !important; height: auto !important; }
  body .community-hero__container { display: flex !important; flex-direction: column; }
  body .community-hero__content { position: relative !important; top: auto !important; bottom: auto !important; left: auto !important; transform: none !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box; padding: 120px 20px 8px !important; align-items: center !important; text-align: center !important; }
  body .community-hero__visual { position: relative !important; inset: auto !important; }
  body .community-hero__image.mobile { position: static !important; transform: none !important; width: 100% !important; height: auto !important; aspect-ratio: 360 / 297; object-fit: cover; object-position: center bottom; }

  /* photo d'Aurore : 50px de padding + 50px de marge sous l'en-tête */
  body #brxe-c2e667 { padding-top: 30px !important; }
  body #brxe-a91834 { margin-top: 0 !important; }

  /* section Aurore : bouton centré comme le titre */
  body #brxe-363007 { align-items: center !important; }
  body #brxe-363007 .btn-ww-red, body #brxe-363007 .brxe-umbgqi { float: none !important; align-self: center !important; margin-left: auto !important; margin-right: auto !important; }
  /* « Vous êtes à une décision… » : bloc et bouton recentrés */
  body #brxe-9dea35 { padding-right: 0 !important; }
  body #brxe-b7bab0 { margin-left: auto !important; margin-right: auto !important; }
  /* nuages qui débordaient (morceau visible en haut à gauche) */
  body #brxe-ghlobv, body #brxe-qonlrd { display: none !important; }
  /* « Prêt à rejoindre » : image du groupe centrée (personnes coupées à gauche, vide à droite) */
  /* texte et bouton posés en absolu par Bricks sur une boîte de 600px : selon la largeur, le bouton tombait sur les têtes
     et une bande noire restait sous l'image. Texte dans le flux, puis l'image remontée sous le bouton :
     le haut de l'image mobile (360×502) est vide sur ~62% de la largeur, d'où la marge en vw */
  body #brxe-mgliov { display: flex !important; flex-direction: column; height: auto !important; min-height: 0 !important; }
  body .community-cta { min-height: 0 !important; height: auto !important; padding: 0 !important; }
  body #brxe-nirvrq { position: relative !important; top: auto !important; margin: 0 !important; padding: 40px 20px 0 !important; order: 0; transform: none !important; }
  body #brxe-jzalmj { order: 1; position: relative !important; height: auto !important; margin-top: calc(24px - 62vw) !important; text-align: center !important; z-index: 0; }
  body #brxe-nirvrq { z-index: 1; }
  body #brxe-sfgzvl { display: block; width: 100% !important; max-width: none; height: auto !important; margin: 0 auto !important; }
  /* titre du mur d'avis : centré comme son surtitre, moins grand */
  body .reviews-wall-heading .section-title { text-align: center !important; font-size: 34px !important; line-height: 1.15 !important; }

  /* cartes « Soirées privées / Ateliers / Dîners privés » : même règle Bricks globale .ww-text (-50px), le texte passait sous le titre */
  body .experience-card .experience-card__text, body .experience-card .ww-text { margin-top: 0 !important; text-align: center !important; line-height: 1.4 !important; font-size: 16px !important; }

  /* --- Blog --- */
  /* le texte des cartes remontait de 50px sous le titre (règle Bricks globale .ww-text à 478px) */
  body .blog-card__content .ww-text.brxe-text-basic { margin-top: 14px !important; }
  /* titre et extrait alignés à gauche ensemble */
  body .blog-card__content .brxe-heading, body .brxe-a244f5 { text-align: left !important; }
  body #brxe-d5592c { padding-top: 40px !important; }

  /* --- Créations / Offre site web --- */
  /* titre « Des projets qui donnent de la hauteur » sans marge latérale */
  body #brxe-pudyub, body #brxe-yyeoxm { padding-left: 20px !important; padding-right: 20px !important; }
  /* visuels portrait recadrés au centre : le logo en haut était coupé */
  .creation-card .creation-card-image, .creation-card .creation-card-image img { object-position: center top !important; }
  .creation-card-categories .bricks-button { font-size: 12px !important; }
  .creation-card-client { font-size: 13px !important; }
  /* éléphant « Révélez votre identité » : Bricks le force en 500×500 (image 3:4) => étiré ; taille naturelle, proportions gardées */
  body #brxe-7492e7 { width: 100% !important; max-width: 340px; height: auto !important; object-fit: contain; }
  /* vide sous l'éléphant : 78px de padding du conteneur + 75px de la section suivante */
  body #brxe-2ad1fb { padding-bottom: 10px !important; }
  /* Branding, même photo d'équipe : Bricks la force à 970px de haut en object-fit: none (image recadrée « déformée » au
     chargement, puis grande bande vide dessous) ; hauteur naturelle, plus de marges négatives */
  body #brxe-0bb156 { height: auto !important; object-fit: contain !important; margin-top: 0 !important; margin-bottom: 0 !important; }
  body #brxe-0bb156 img { object-fit: contain !important; }
  body #brxe-de8404 { margin-top: 0 !important; margin-bottom: 0 !important; }
  body #brxe-48c10c { padding-bottom: 0 !important; }
  /* « Pourquoi nous choisir ? » : bande grise sous la photo d'équipe (marges Bricks 170px / -173px + 78px de padding) ;
     la photo touche directement la section anthracite des témoignages */
  body #brxe-d2ed1b { margin-bottom: 0 !important; }
  body #brxe-d2d868 { margin-bottom: 0 !important; }
  body #brxe-c0ac4e { padding-bottom: 0 !important; }
  /* « Vous aimez les détails ? » et texte d'intro alignés au centre comme le titre */
  body #brxe-4279a9 { text-align: center !important; }

  /* --- Pages légales --- */
  /* Mentions légales : intertitres h4 en 24px collés au texte (les autres pages légales sont en 15px) */
  body #brxe-a49166 h4 { font-size: 18px !important; line-height: 1.3 !important; margin: 28px 0 10px !important; }

  /* --- Page « Aurore Petrus » (URL /ecrivez-nous/) --- */
  /* section bloquée à 1500px de haut : 300px de vide sous « Voir l'article » */
  body #brxe-34ab3a { height: auto !important; max-height: none !important; }
  /* photo d'Aurore posée en absolu à 632px sous le haut de son bloc : grand vide sous « Voir l'article » */
  body #brxe-f3b803 { height: auto !important; justify-content: center; }
  body #brxe-edb0bd { position: relative !important; top: auto !important; bottom: auto !important; left: auto !important; right: auto !important; margin: 30px auto -78px !important; }
  /* « Mes compétences » : cartes au ras des bords (largeur fixée par le carrousel) => marge latérale de 20px */
  body #brxe-ellpek .splide__slide { width: auto !important; margin-left: 20px !important; margin-right: 20px !important; box-sizing: border-box; }
  /* main de la section équipe sur le titre */
  body #brxe-efc3de { top: 8px !important; width: 70px !important; }
}
