/* Global HR Mali (GHRM) — Production Design System v3.0 */
/* Charte conservée : orange var(--gcid-primary-color, #ff6600), marine var(--gcid-34vfmsqm6d, #1f2937), vert var(--gcid-ehmvch2ecq, #10b981), violet var(--gcid-68f58d6566, #6c5ce7), bleu var(--gcid-ygoingqpt8, #3b82f6). */
:root {
  --ghrm-brand-primary: var(--gcid-primary-color, #ff6600);
  --ghrm-brand-secondary: var(--gcid-34vfmsqm6d, #1f2937);
  --ghrm-brand-accent: var(--gcid-ehmvch2ecq, #10b981);
  --ghrm-brand-violet: var(--gcid-68f58d6566, #6c5ce7);
  --ghrm-brand-info: var(--gcid-ygoingqpt8, #3b82f6);
  --ghrm-primary-tint-1: #FF781F;
  --ghrm-primary-tint-2: #FF9147;
  --ghrm-primary-tint-3: #FFB685;
  --ghrm-primary-tint-4: #FFE3D1;
  --ghrm-primary-shade-1: #DB5800;
  --ghrm-primary-shade-2: #A84300;
  --ghrm-primary-shade-3: #6B2B00;
  --ghrm-primary-shade-4: #3D1800;
  --ghrm-secondary-tint-1: #3A434F;
  --ghrm-secondary-tint-2: #5E656F;
  --ghrm-secondary-tint-3: #93989F;
  --ghrm-secondary-tint-4: #D7D8DB;
  --ghrm-secondary-shade-1: #1B2430;
  --ghrm-secondary-shade-2: #161E28;
  --ghrm-secondary-shade-3: #11161E;
  --ghrm-secondary-shade-4: #0B0E13;
  --ghrm-neutral-50: var(--gcid-tv5tcxu1zz, #fafafa);
  --ghrm-neutral-100: #F4F5F5;
  --ghrm-neutral-200: var(--gcid-vq3zzqk4fo, #e5e7eb);
  --ghrm-neutral-300: var(--gcid-f113d87155, #d1d5db);
  --ghrm-neutral-400: var(--gcid-5mysgk2uzb, #9ca3af);
  --ghrm-neutral-500: var(--gcid-dp8pcx2z7q, #6b7280);
  --ghrm-neutral-600: var(--gcid-f36aa5ed14, #4b5563);
  --ghrm-neutral-700: var(--gcid-ed36ee6f38, #374151);
  --ghrm-neutral-800: var(--gcid-34vfmsqm6d, #1f2937);
  --ghrm-neutral-900: var(--gcid-heading-color, #111827);
  --ghrm-neutral-950: #080C14;
  --ghrm-text-primary: var(--gcid-heading-color, #111827);
  --ghrm-text-secondary: var(--gcid-ed36ee6f38, #374151);
  --ghrm-text-muted: var(--gcid-dp8pcx2z7q, #6b7280);
  --ghrm-text-subtle: var(--gcid-5mysgk2uzb, #9ca3af);
  --ghrm-text-inverse: var(--gcid-13609f7b8446, #ffffff);
  --ghrm-text-link: var(--gcid-primary-color, #ff6600);
  --ghrm-text-link-hover: var(--gcid-ghrmhoverdark, #cc5200);
  --ghrm-heading: var(--gcid-heading-color, #111827);
  --ghrm-heading-inverse: var(--gcid-13609f7b8446, #ffffff);
  --ghrm-bg-default: var(--gcid-13609f7b8446, #ffffff);
  --ghrm-bg-subtle: var(--gcid-tv5tcxu1zz, #fafafa);
  --ghrm-bg-muted: #F4F5F5;
  --ghrm-bg-inverse: var(--gcid-heading-color, #111827);
  --ghrm-bg-inverse-subtle: var(--gcid-34vfmsqm6d, #1f2937);
  --ghrm-bg-primary-subtle: #FFF7F0;
  --ghrm-bg-accent-subtle: #ECFDF5;
  --ghrm-border-subtle: #F4F5F5;
  --ghrm-border-default: var(--gcid-vq3zzqk4fo, #e5e7eb);
  --ghrm-border-strong: var(--gcid-f113d87155, #d1d5db);
  --ghrm-border-inverse: var(--gcid-ed36ee6f38, #374151);
  --ghrm-focus-ring: var(--gcid-9e3b34ebdf, #ffb27f);
  --ghrm-selection-bg: #FFD9BF;
  --ghrm-selection-text: #7A2F00;
  --ghrm-status-success-subtle: var(--gcid-r7mnjjckzh, #dcfce7);
  --ghrm-status-success: #16A34A;
  --ghrm-status-success-text: var(--gcid-g20yq95n26, #14532d);
  --ghrm-status-error-subtle: var(--gcid-hf8ofe35qr, #fee2e2);
  --ghrm-status-error: var(--gcid-ghrmdanger, #dc2626);
  --ghrm-status-error-text: var(--gcid-fbp2ja45df, #7f1d1d);
  --ghrm-status-warning-subtle: var(--gcid-t4bgswtwrl, #fef3c7);
  --ghrm-status-warning: #D97706;
  --ghrm-status-warning-text: var(--gcid-kvbv5rzriy, #78350f);
  --ghrm-status-info-subtle: var(--gcid-sfo768ie7h, #dbeafe);
  --ghrm-status-info: var(--gcid-8015a4fccc, #2563eb);
  --ghrm-status-info-text: var(--gcid-60k5qzfp3z, #1e3a8a);
  --ghrm-primary-alpha-08: rgba(255,102,0,.08);
  --ghrm-primary-alpha-12: rgba(255,102,0,.12);
  --ghrm-primary-alpha-20: rgba(255,102,0,.20);
  --ghrm-primary-alpha-50: rgba(255,102,0,.50);
  --ghrm-secondary-alpha-08: rgba(31,41,55,.08);
  --ghrm-secondary-alpha-12: rgba(31,41,55,.12);
  --ghrm-secondary-alpha-50: rgba(31,41,55,.50);
  --ghrm-overlay-light: rgba(255,255,255,.84);
  --ghrm-overlay-dark: rgba(17,24,39,.72);
  --ghrm-shadow-color: rgba(17,24,39,.12);
  --ghrm-shadow-color-strong: rgba(17,24,39,.20);
  --ghrm-font-heading: "Inter", Arial, sans-serif;
  --ghrm-font-body: "Inter", Arial, sans-serif;
  --ghrm-font-ui: "Inter", Arial, sans-serif;
  --ghrm-type-display-lg: clamp(4rem, calc(3rem + 4.4444vw), 7rem);
  --ghrm-type-display-md: clamp(3.25rem, calc(2.5rem + 3.3333vw), 5.5rem);
  --ghrm-type-display-sm: clamp(2.75rem, calc(2.25rem + 2.2222vw), 4.25rem);
  --ghrm-type-h1: clamp(2.25rem, calc(1.9167rem + 1.4815vw), 3.25rem);
  --ghrm-type-h2: clamp(1.875rem, calc(1.625rem + 1.1111vw), 2.625rem);
  --ghrm-type-h3: clamp(1.5rem, calc(1.3333rem + 0.7407vw), 2rem);
  --ghrm-type-h4: clamp(1.25rem, calc(1.125rem + 0.5556vw), 1.625rem);
  --ghrm-type-h5: clamp(1.0625rem, calc(0.9792rem + 0.3704vw), 1.3125rem);
  --ghrm-type-h6: clamp(1rem, calc(0.9583rem + 0.1852vw), 1.125rem);
  --ghrm-type-body-xl: clamp(1.375rem, calc(1.2917rem + 0.3704vw), 1.625rem);
  --ghrm-type-body-lg: clamp(1.125rem, calc(1.0417rem + 0.3704vw), 1.375rem);
  --ghrm-type-body: clamp(1rem, calc(0.9583rem + 0.1852vw), 1.125rem);
  --ghrm-type-body-sm: clamp(0.875rem, calc(0.8333rem + 0.1852vw), 1rem);
  --ghrm-type-text-xs: clamp(0.75rem, calc(0.7083rem + 0.1852vw), 0.875rem);
  --ghrm-type-nav-text: clamp(0.875rem, calc(0.8333rem + 0.1852vw), 1rem);
  --ghrm-type-button-text: clamp(0.875rem, calc(0.8333rem + 0.1852vw), 1rem);
  --ghrm-type-label-text: clamp(0.75rem, calc(0.7083rem + 0.1852vw), 0.875rem);
  --ghrm-type-stat-number: clamp(2.25rem, calc(1.6667rem + 2.5926vw), 4rem);
  /* Interlignes : miroir strict des variables globales Divi 5 (source de verite).
     Toute modification doit etre faite d'abord dans Divi, puis reportee ici. */
  --ghrm-leading-none: 1;          /* GHRM - LH None      gvid-ghrmlhnone  */
  --ghrm-leading-tight: 1.1;       /* GHRM - LH Display   gvid-rmmprlt0pb  */
  --ghrm-leading-h12: 1.15;        /* GHRM - LH H1-H2     gvid-ghrmlhh12   */
  --ghrm-leading-snug: 1.2;        /* GHRM - LH UI        gvid-ghrmlhui    */
  --ghrm-leading-h34: 1.25;        /* GHRM - LH H3-H4     gvid-ghrmlhh34   */
  --ghrm-leading-h56: 1.35;        /* GHRM - LH H5-H6     gvid-ghrmlhh56   */
  --ghrm-leading-caption: 1.4;     /* GHRM - LH Caption   gvid-ghrmlhcap   */
  --ghrm-leading-compact: 1.5;     /* GHRM - LH Compact   gvid-ghrmlhcomp  */
  --ghrm-leading-lead: 1.55;       /* GHRM - LH Lead      gvid-ghrmlhlead  */
  --ghrm-leading-normal: 1.6;     /* GHRM - LH Body      gvid-ghrmlhbody  */
  --ghrm-leading-relaxed: 1.7;     /* GHRM - LH Article   gvid-ghrmlhart   */
  --ghrm-tracking-tight: -0.02em;
  --ghrm-tracking-normal: 0em;
  --ghrm-tracking-wide: 0.05em;
  --ghrm-tracking-wider: 0.1em;
  --ghrm-weight-regular: 400;
  --ghrm-weight-medium: 500;
  --ghrm-weight-semibold: 600;
  --ghrm-weight-bold: 700;
  --ghrm-weight-extrabold: 800;
  --ghrm-space-0: 0px;
  --ghrm-space-xs: clamp(0.5rem, calc(0.4167rem + 0.3704vw), 0.75rem);
  --ghrm-space-s: clamp(0.75rem, calc(0.6667rem + 0.3704vw), 1rem);
  --ghrm-space-m: clamp(1rem, calc(0.8333rem + 0.7407vw), 1.5rem);
  --ghrm-space-l: clamp(1.5rem, calc(1.1667rem + 1.4815vw), 2.5rem);
  --ghrm-space-xl: clamp(2rem, calc(1.3333rem + 2.963vw), 4rem);
  --ghrm-space-2xl: clamp(3rem, calc(2rem + 4.4444vw), 6rem);
  --ghrm-space-3xl: clamp(4rem, calc(2.6667rem + 5.9259vw), 8rem);
  --ghrm-gap-0: 0px;
  --ghrm-gap-xs: clamp(0.5rem, calc(0.4167rem + 0.3704vw), 0.75rem);
  --ghrm-gap-s: clamp(0.75rem, calc(0.5833rem + 0.7407vw), 1.25rem);
  --ghrm-gap-m: clamp(1rem, calc(0.75rem + 1.1111vw), 1.75rem);
  --ghrm-gap-l: clamp(1.5rem, calc(1.1667rem + 1.4815vw), 2.5rem);
  --ghrm-gap-xl: clamp(2rem, calc(1.5rem + 2.2222vw), 3.5rem);
  --ghrm-gap-2xl: clamp(2.5rem, calc(1.6667rem + 3.7037vw), 5rem);
  --ghrm-gap-3xl: clamp(3.5rem, calc(2.3333rem + 5.1852vw), 7rem);
  --ghrm-viewport-min: 360px;
  --ghrm-viewport-max: 1440px;
  --ghrm-site-max: 1440px;
  --ghrm-container-wide: 1280px;
  --ghrm-container-main: 1180px;
  --ghrm-container-narrow: 960px;
  --ghrm-container-prose: 760px;
  --ghrm-container-copy: 680px;
  --ghrm-sidebar-width: 320px;
  --ghrm-page-gutter: clamp(1rem, calc(0.5rem + 2.2222vw), 2.5rem);
  --ghrm-page-gutter-double: clamp(2rem, calc(1rem + 4.4444vw), 5rem);
  --ghrm-row-fluid: min(calc(100% - clamp(2rem, calc(1rem + 2.2222vw), 5rem)), 73.75rem);
  --ghrm-row-wide-fluid: min(calc(100% - clamp(2rem, calc(1rem + 2.2222vw), 5rem)), 80rem);
  --ghrm-prose-fluid: min(calc(100% - 2rem), 47.5rem);
  --ghrm-header-height: clamp(4.5rem, calc(4rem + 2.2222vw), 6rem);
  --ghrm-header-height-compact: clamp(3.75rem, calc(3.5rem + 1.1111vw), 4.5rem);
  --ghrm-hero-min-height: min(820px, calc(100svh - 72px));
  --ghrm-touch-target: 44px;
  --ghrm-icon-xs: 16px;
  --ghrm-icon-s: 20px;
  --ghrm-icon-m: 24px;
  --ghrm-icon-l: 32px;
  --ghrm-icon-xl: 48px;
  --ghrm-icon-2xl: 64px;
  --ghrm-control-height-s: 40px;
  --ghrm-control-height: 48px;
  --ghrm-control-height-l: 56px;
  --ghrm-textarea-min-height: 144px;
  --ghrm-logo-height: clamp(2.25rem, calc(1.9167rem + 1.4815vw), 3.25rem);
  --ghrm-avatar-s: 40px;
  --ghrm-avatar-m: 56px;
  --ghrm-avatar-l: 88px;
  --ghrm-aspect-landscape: 1.7777778;
  --ghrm-aspect-card: 1.3333333;
  --ghrm-aspect-portrait: .75;
  --ghrm-aspect-square: 1;
  --ghrm-radius-none: 0px;
  --ghrm-radius-xs: 4px;
  --ghrm-radius-s: 6px;
  --ghrm-radius-m: 10px;
  --ghrm-radius-l: 16px;
  --ghrm-radius-xl: 24px;
  --ghrm-radius-full: 999px;
  --ghrm-border-none: 0px;
  --ghrm-border-xs: 1px;
  --ghrm-border-s: 2px;
  --ghrm-border-m: 3px;
  --ghrm-border-l: 4px;
  --ghrm-border-xl: 6px;
  --ghrm-duration-instant: 80ms;
  --ghrm-duration-fast: 150ms;
  --ghrm-duration-base: 250ms;
  --ghrm-duration-slow: 400ms;
  --ghrm-duration-slower: 650ms;
  --ghrm-translate-hover: -4px;
  --ghrm-scale-hover: 1.02;
  --ghrm-z-base: 0;
  --ghrm-z-raised: 10;
  --ghrm-z-sticky: 100;
  --ghrm-z-dropdown: 200;
  --ghrm-z-overlay: 500;
  --ghrm-z-modal: 1000;
  --ghrm-z-toast: 1200;
  --ghrm-focus-width: 2px;
  --ghrm-focus-offset: 3px;
  --ghrm-grid-min-card: 280px;
  --ghrm-grid-min-service: 300px;
  --ghrm-grid-min-content: 340px;
  --ghrm-section-compact: clamp(2.5rem, calc(2rem + 2.2222vw), 4rem);
  --ghrm-section-standard: clamp(4rem, calc(3rem + 4.4444vw), 7rem);
  --ghrm-section-spacious: clamp(5rem, calc(3.6667rem + 5.9259vw), 9rem);
  --ghrm-reading-width: 68ch;
  --ghrm-button-min-width: 144px;
  --ghrm-shadow-none: 0 0 0 rgba(0,0,0,0);
  --ghrm-shadow-xs: 0 1px 2px rgba(17,24,39,.06);
  --ghrm-shadow-s: 0 4px 12px rgba(17,24,39,.08);
  --ghrm-shadow-m: 0 10px 30px rgba(17,24,39,.10);
  --ghrm-shadow-l: 0 20px 48px rgba(17,24,39,.14);
  --ghrm-shadow-hover: 0 24px 56px rgba(17,24,39,.18);
  --ghrm-shadow-focus: 0 0 0 4px rgba(255,102,0,.20);
  --ghrm-ease-standard: cubic-bezier(.2,.8,.2,1);
  --ghrm-ease-in: cubic-bezier(.4,0,1,1);
  --ghrm-ease-out: cubic-bezier(0,0,.2,1);
  --ghrm-ease-in-out: cubic-bezier(.4,0,.2,1);
  --ghrm-gradient-primary: linear-gradient(135deg,var(--gcid-primary-color, #ff6600) 0%,var(--gcid-91d6ac3867, #ff8533) 100%);
  --ghrm-gradient-hero: linear-gradient(135deg,var(--gcid-heading-color, #111827) 0%,var(--gcid-34vfmsqm6d, #1f2937) 62%,#3A2518 100%);
  --ghrm-gradient-soft: linear-gradient(135deg,#FFF7F0 0%,var(--gcid-13609f7b8446, #ffffff) 100%);
  --ghrm-gradient-people: linear-gradient(120deg,var(--gcid-primary-color, #ff6600) 0%,var(--gcid-68f58d6566, #6c5ce7) 50%,var(--gcid-ygoingqpt8, #3b82f6) 100%);
  --ghrm-gradient-success: linear-gradient(135deg,var(--gcid-ehmvch2ecq, #10b981) 0%,var(--gcid-ghrmsuccesfonce, #059669) 100%);
  --ghrm-gradient-overlay: linear-gradient(180deg,rgba(17,24,39,.20) 0%,rgba(17,24,39,.84) 100%);
}

html { scroll-behavior: smooth; }
body { color: var(--ghrm-text-secondary); background: var(--ghrm-bg-default); font-family: var(--ghrm-font-body); font-size: 1rem; line-height: var(--ghrm-leading-normal); /* GHRM - Text Body 1rem + LH Body 1.60 */ }
/* Interligne global sans unite : specificite (0,0,2) pour passer devant la declaration
   inline de Divi `body{line-height:var(--et_global_body_font_height)}` qui vaut 1.6em.
   Un line-height en em fige l'heritage en valeur absolue ; l'unitless se recalcule
   sur la taille de chaque descendant. Pas de !important : la specificite suffit. */
html body { line-height: var(--ghrm-leading-normal); }
::selection { background: var(--ghrm-selection-bg); color: var(--ghrm-selection-text); }
:where(a,button,input,select,textarea,[tabindex]):focus-visible { outline: var(--ghrm-focus-width) solid var(--ghrm-brand-primary); outline-offset: var(--ghrm-focus-offset); box-shadow: var(--ghrm-shadow-focus); }

/* Layout */
.ghrm-container { width: var(--ghrm-row-fluid); max-width: var(--ghrm-container-main); margin-inline:auto; }
.ghrm-container-wide { width: var(--ghrm-row-wide-fluid); max-width: var(--ghrm-container-wide); margin-inline:auto; }
.ghrm-prose { width:min(100%,var(--ghrm-reading-width)); }
.ghrm-section-compact { padding-block:var(--ghrm-section-compact); }
.ghrm-section { padding-block:var(--ghrm-section-standard); }
.ghrm-section-spacious { padding-block:var(--ghrm-section-spacious); }
.ghrm-grid-auto-card { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--ghrm-grid-min-card)),1fr)); gap:var(--ghrm-gap-m); }
.ghrm-grid-auto-service { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--ghrm-grid-min-service)),1fr)); gap:var(--ghrm-gap-l); }
.ghrm-stack { display:flex; flex-direction:column; gap:var(--ghrm-gap-m); }
.ghrm-cluster { display:flex; flex-wrap:wrap; align-items:center; gap:var(--ghrm-gap-s); }

/* Components */
.ghrm-card { background:var(--ghrm-bg-default); border:var(--ghrm-border-xs) solid var(--ghrm-border-default); border-radius:var(--ghrm-radius-l); padding:var(--ghrm-space-l); box-shadow:var(--ghrm-shadow-s); transition:transform var(--ghrm-duration-base) var(--ghrm-ease-standard),box-shadow var(--ghrm-duration-base) var(--ghrm-ease-standard),border-color var(--ghrm-duration-fast) var(--ghrm-ease-standard); }
.ghrm-card:hover { transform:translateY(var(--ghrm-translate-hover)); box-shadow:var(--ghrm-shadow-hover); border-color:var(--ghrm-primary-tint-2); }
.ghrm-card-featured { border-inline-start:var(--ghrm-border-l) solid var(--ghrm-brand-primary); }
.ghrm-button { min-block-size:var(--ghrm-touch-target); min-inline-size:var(--ghrm-button-min-width); display:inline-flex; align-items:center; justify-content:center; gap:var(--ghrm-gap-xs); padding:var(--ghrm-space-s) var(--ghrm-space-m); border-radius:var(--ghrm-radius-m); font:var(--ghrm-weight-semibold) var(--ghrm-type-button-text)/1 var(--ghrm-font-ui); text-decoration:none; transition:transform var(--ghrm-duration-fast) var(--ghrm-ease-standard),background-color var(--ghrm-duration-fast) var(--ghrm-ease-standard),border-color var(--ghrm-duration-fast) var(--ghrm-ease-standard); }
.ghrm-button-primary { color:var(--ghrm-text-inverse); background:var(--ghrm-brand-primary); border:var(--ghrm-border-s) solid var(--ghrm-brand-primary); }
.ghrm-button-primary:hover { background:var(--ghrm-primary-shade-1); border-color:var(--ghrm-primary-shade-1); transform:translateY(-2px); }
.ghrm-button-outline { color:var(--ghrm-brand-primary); background:transparent; border:var(--ghrm-border-s) solid var(--ghrm-brand-primary); }
.ghrm-gradient-primary { background-image:var(--ghrm-gradient-primary); }
.ghrm-gradient-hero { background-image:var(--ghrm-gradient-hero); }
.ghrm-gradient-soft { background-image:var(--ghrm-gradient-soft); }
.ghrm-gradient-people { background-image:var(--ghrm-gradient-people); }

@media (max-width: 980px) { .ghrm-split { flex-direction:column; align-items:stretch; } }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } .ghrm-card:hover,.ghrm-button:hover { transform:none; } }


/* --- Preset colonne "autogrid" -------------------------------------------
   Divi 5.11 n'emet pas le CSS personnalise porte par un preset de module.
   On applique ici la grille fluide definie dans le preset puzjwmi6hz :
   les cartes se reorganisent seules a tous les breakpoints, sans media query. */
.preset--module--divi-column--puzjwmi6hz{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--ghrm-grid-min-card,280px)),1fr));
  gap:var(--ghrm-gap-m);
  align-items:stretch;
}
.preset--module--divi-column--puzjwmi6hz > .et_pb_module{margin:0}
/* Les enfants de grille ont min-width:auto par defaut : ils refusent de
   retrecir sous la largeur de leur contenu, ce qui fait deborder la carte. */
.preset--module--divi-column--puzjwmi6hz > *{min-width:0;max-width:100%}

/* --- Visuel des cartes formation ----------------------------------------
   Le module Image porte width:100% et alignSelf:stretch, mais Divi 5.11
   n emet pas ces reglages de conteneur. On etire donc l enveloppe ; la
   regle .ghrm-card-img img existante gere deja le recadrage en couverture. */
.ghrm-formation-card .et_pb_image{width:100%;max-width:none;display:block;margin:0}
.ghrm-formation-card .et_pb_image .et_pb_image_wrap{width:100%;display:block}
.ghrm-formation-card .et_pb_image img{width:100%;height:190px;object-fit:cover;display:block}

/* --- Fiche offre : colonne laterale collante ----------------------------
   Desktop uniquement : la colonne suit le defilement, avec un decalage
   haut tenant compte de l en-tete fixe. Desactive sous 981px, ou la
   colonne passe en pleine largeur et le sticky n aurait pas de sens.    */
@media(min-width:981px){
  .ghrm-article-aside{position:sticky;top:110px;align-self:flex-start}
}


/* =========================================================================
   Correctifs responsive mobile
   Objectif : aucun debordement horizontal sous 768px.
   Trois causes traitees : pistes de grille trop larges, enfants de
   grille/flex qui refusent de retrecir, medias et mots longs.
   ========================================================================= */

/* 1. Grilles fluides : plancher borne a la largeur disponible ------------- */
.ghrm-grid-auto-card,
.ghrm-grid-auto-service,
.preset--module--divi-column--puzjwmi6hz{
  max-width:100%;
}

/* 2. Enfants de grille et de flex : autoriser la compression -------------- */
.ghrm-grid-auto-card > *,
.ghrm-grid-auto-service > *,
.ghrm-split > *,
.et_pb_column,
.et_pb_row{
  min-width:0;
}

/* 3. Medias et contenus longs -------------------------------------------- */
img,svg,video,iframe,canvas,table{max-width:100%}
img,svg,video,canvas{height:auto}
pre,code,table{overflow-x:auto;max-width:100%}

@media (max-width:767px){
  /* Cartes et modules : jamais plus larges que leur conteneur */
  .ghrm-card,
  .et_pb_blurb,
  .et_pb_module{max-width:100%}

  /* Mots, URL et emails non secables : forcer le retour a la ligne */
  .ghrm-card,
  .et_pb_blurb,
  .et_pb_text,
  .et_pb_heading{overflow-wrap:anywhere}

  /* Le menu mobile en 100vw deborde des que la barre de defilement existe */
  .et_pb_menu .et_mobile_menu{width:100%;max-width:100%}

  /* Photos d equipe : ne pas imposer une largeur fixe sur petit ecran */
  .ghrm-member-photo img{width:clamp(96px,32vw,150px);height:auto}
}

/* 4. Filet de securite : pas de defilement horizontal du document -------- */
html,body{max-width:100%;overflow-x:clip}

/* 5. Ligne meta des offres d emploi ------------------------------------- */
/* Le contenu de boucle impose un module Texte : l icone ETmodules y est   */
/* inseree en ligne. Taille et alignement pilotes ici, couleur heritee.    */
.ghrm-meta-icon .et-pb-icon{
  font-family:ETmodules;
  font-weight:400;
  font-size:var(--gvid-jlxtneael6);
  line-height:1;
  vertical-align:-2px;
  color:inherit;
}


/* 6. Libelles de metadonnees : icone ETmodules en ligne ---------------- */
.ghrm-meta-k .et-pb-icon,
.ghrm-btn-solid .et-pb-icon,
.ghrm-deadline-k .et-pb-icon{
  font-family:ETmodules;
  font-weight:400;
  font-size:var(--gvid-jlxtneael6);
  line-height:1;
  vertical-align:-2px;
  margin-right:6px;
  color:inherit;
}
/* L echeance garde l accent de marque */
.ghrm-deadline-k .et-pb-icon{color:var(--gcid-primary-color)}
